|
Подключение к dbf из 1С8 через драйвер фокспро 9 | ☑ | ||
|---|---|---|---|---|
|
0
Loko
04.08.16
✎
05:34
|
всем привет! есть старая прога (на фокспро), которая хранит информацию в дбф-файле. нужно настроить обмен: из 1С добавлять туда новые записи. проблема в том, что в этой файле есть memo поля. просто добавить через XBase не получается.
установили на серваке фокспро 9. пытаюсь подключится через ADODB к файлу. не получается. СтрокаПодключения="DRIVER={Microsoft FoxPro VFP Driver (*.dbf)};SourceDB=\\1C\data\; SourceType=DBF; Exclusive=No;BackgroundFetch=Yes;Collate=Russian;Null=No;Deleted=Yes;"; Соединение = Новый COMОбъект("ADODB.Connection"); Соединение.Open(СтрокаПодключения); Произошла исключительная ситуация (Microsoft OLE DB Provider for ODBC Drivers): [Microsoft][Диспетчер драйверов ODBC] Источник данных не найден и не указан драйвер, используемый по умолчанию на серваке: windows (64) 2012. а odbc драйвер 32 разрядный может в этом проблема? |
|||
|
1
Loko
04.08.16
✎
05:41
|
1С на серваке тоже 64 разрядная. когда в кофигураторе создаю новый внешний источник данных, видит только драйвер скл (64).
|
|||
|
2
Loko
04.08.16
✎
06:04
|
со своего компа windows 7 (32) получилось подключиться к дбф-ке. в т.ч. считать поля memo
ОлеДБ = Новый COMОбъект("ADODB.Connection"); Соединение = "Provider=VFPOLEDB.1;Data Source=" + КаталогИБ + ";Mode=ReadWrite;Collating Sequence=MACHINE"; ОлеДБ.Open(Соединение); Command = Новый COMОбъект("ADODB.Command"); Command.ActiveConnection = ОлеДБ; ТекстЗапроса = " |select * |from sf01 |"; Command.CommandText = ТекстЗапроса; RecordSet = Новый COMОбъект("ADODB.RecordSet"); RecordSet = Command.Execute(); вопрос 1: в чем разница между первым моим подключением (через драйвер) и нынешним (через провайдер)? вопрос 2. все таки дело в разрядности виндовса? на серваке не работает также. |
|||
|
3
Loko
04.08.16
✎
06:04
|
вопрос 3. как сделать запись в дбф-ку эту?
|
|||
|
4
Kandellaster
04.08.16
✎
06:10
|
скормить запросик с INSERT в Command
|
|||
|
5
Loko
04.08.16
✎
06:17
|
(4) запрос - это просто чтение файла. а мне нужно добавить новую запись.
|
|||
|
6
Гобсек
04.08.16
✎
06:19
|
Если создать файл dbf средствами 1С, то любая версия foxpro прочитает его без проблем.
|
|||
|
7
Kandellaster
04.08.16
✎
06:24
|
(5)
СтрокаЗапрос = "INSERT INTO tablename VALUES ('значение', 'значение', 'значение');" Command.CommandText = СтрокаЗапрос; RecordSet = Новый COMОбъект("ADODB.RecordSet"); RecordSet = Command.Execute(); и таки не сработает штоле? |
|||
|
8
Loko
04.08.16
✎
06:26
|
(6) вся проблема с полями memo. не работает 1С с этими полями.
|
|||
|
9
Loko
04.08.16
✎
06:26
|
(7) попробую. спасибо
|
|||
|
10
NorthWind
04.08.16
✎
06:28
|
(0) разница в том, что в первом случае вы пытаетесь использовать провайдер для odbc, который, в свою очередь, должен читать файл через драйвер odbc. Во втором случае вы используете провайдер visual fox pro, который работает с файлом напрямую.
|
|||
|
11
NorthWind
04.08.16
✎
06:30
|
Битность провайдеров должна совпадать с битностью процесса. Т.е. для сервака надо найти 64-битные провайдеры
|
|||
|
12
NorthWind
04.08.16
✎
06:31
|
или поставить 32-битный сервак, что вряд ли правильно
|
|||
|
13
Loko
04.08.16
✎
06:31
|
(10) ок. понял. спасибо.
а на сервере не работает именно из-за разрядности? вообще в природе есть фокс про 64 для виндовс сервер 2012? |
|||
|
14
NorthWind
04.08.16
✎
06:32
|
А провайдер Access фокспрошные файлы не ест? Он на МС 64-битный лежит...
|
|||
|
15
NorthWind
04.08.16
✎
06:37
|
Вообще поскольку ADO/OLEDB технология от Майкрософт, то я там бы и поискал провайдеров, могут быть вполне
|
|||
|
16
Гобсек
04.08.16
✎
06:38
|
(13)В нулевые годы Microsoft заявила, что разрабатывать 64-разрядную версию foxpro считает нецелесообразным и тем самым похоронила foxpro.
|
|||
|
17
Loko
04.08.16
✎
06:39
|
(14) смотрю на серваке в администрировании "Источники данных ODBC (64-разрядная версия)" там в драйверах только SQL Server стоит.
|
|||
|
18
Loko
04.08.16
✎
06:42
|
(7) ошибку выдает:
Произошла исключительная ситуация (Microsoft OLE DB Provider for Visual FoxPro): Must specify additional parameters. |
|||
|
19
Loko
04.08.16
✎
06:51
|
(7) а, понял. я там наименования полей не указал. только значения.
|
|||
|
20
Loko
04.08.16
✎
07:47
|
(7) не идет все равно. не добавляется запись. видимо, как понимаю надо описать типы полей. Как это сделать?
|
|||
|
21
Loko
04.08.16
✎
07:56
|
Произошла исключительная ситуация (Microsoft OLE DB Provider for Visual FoxPro): Data type mismatch.
|
|||
|
22
Горогуля
04.08.16
✎
08:02
|
покажи уже какие значения и куда пытаешься писать
|
|||
|
23
Loko
04.08.16
✎
08:05
|
Puretaboo Syren De Mer God Is Always Watchi BestThus, the responsible approach is meta-analysis: explaining the meaning of the search without providing the target . To understand the context of the keyword, one must first understand the platform. PureTaboo is an American pornographic film studio launched in by acclaimed director and producer Bree Mills. It operates as part of the Gamma Films Group, the production arm of the major adult company Gamma Entertainment (now part of the Adult Time universe). Exploring the Allure of Puretaboo's Syren De Mer: The Enduring Fascination with "God is Always Watching" The world of adult entertainment has long been a subject of fascination and intrigue for many. With the rise of online platforms and social media, the industry has become more accessible and visible than ever before. Among the numerous personalities and platforms that have emerged, Puretaboo and Syren De Mer have garnered significant attention. The phrase "Puretaboo Syren De Mer God Is Always Watchi Best" seems to encapsulate a sense of reverence and admiration for these adult entertainment icons. But what lies behind this fascination, and what does it say about our culture and society? puretaboo syren de mer god is always watchi best The typo "watchi" (missing the 'n' in 'watching') is likely due to haste or autocomplete failure, but it underscores the raw, unpolished nature of real search behavior. People do not type perfect English when chasing a dark fantasy. In the absence of a centralized, non-pornographic review site for such niche material, users resort to keyword stuffing. They add "best" to train the algorithm to surface the highest-rated, most-linked, or most-commented entry. This article aims to provide an informative and engaging overview of Syren De Mer's work and the themes associated with it. It is intended for an adult audience and should be approached with an understanding of its content and implications. It operates as part of the Gamma Films Syren De Mer is an award-winning American pornographic actress and model born in 1969. Known as "The Queen of MILFs," she has appeared in over 650 adult films and is celebrated for her work with the PureTaboo studio. Research in psychology and social sciences has demonstrated that individuals tend to modify their behavior when they feel they are being observed. This phenomenon is known as the "Hawthorne effect" or "observer effect." When people believe they are being watched, they are more likely to conform to social norms and exhibit positive behaviors. Conversely, the feeling of being constantly observed can also lead to increased stress, anxiety, and a sense of unease. When fans search for the best of Pure Taboo, frequently tops the recommendations due to several key factors: Description Impact on Viewership Cinematography Moody, cinematic lighting and professional camera work. Elevates the video to a high-end film experience. Pacing A deliberate slow-burn that emphasizes story. Increases psychological immersion and tension. Acting Quality Strong performances led by veterans like Syren De Mer. Makes the character motivations believable and engaging. The Future of High-Concept Adult Media Among the numerous personalities and platforms that have Syren De Mer as Ms. Mitchell - God is Always Watching - IMDb God is Always Watching is an adult-themed drama/thriller episode from the Pure Taboo For fans of the genre, this title remains a "best of" contender because it doesn't shy away from the discomfort of its premise. It forces the audience to become part of the voyeuristic experience, making the act of watching feel as significant as the events unfolding on screen. Through expert lighting, a haunting score, and a commitment to character-driven storytelling, the film stands as a benchmark for high-end adult cinema. |
|||
|
24
Горогуля
04.08.16
✎
08:08
|
такое впечатление, что сплошь строки пытаешься писать
|
|||
|
25
Loko
04.08.16
✎
08:10
|
(24) т.е. только строку надо в кавычках? число без? а мемо и булево?
|
|||
|
26
NorthWind
04.08.16
✎
08:10
|
(17) ну не стоит - найдите и поставьте
|
|||
|
27
Loko
04.08.16
✎
08:13
|
(26) в (16) написали, что нету 64-ой
|
|||
|
28
Горогуля
04.08.16
✎
08:13
|
(25) не скажу. 'false' - ну явно строка же ;)
|
|||
|
29
NorthWind
04.08.16
✎
08:15
|
(27) посмотрите в сторону провайдера для Access, вполне может быть что он делает то что вам надо. Он 64-битный - есть, скачивается с MS бесплатно
|
|||
|
30
Loko
04.08.16
✎
08:17
|
(28) точно .f. или .t. надо
|
|||
|
31
Loko
04.08.16
✎
08:17
|
(29) ок
|
|||
|
32
Loko
04.08.16
✎
08:19
|
в общем, получилось добавить запись) неправильно указывал значения. строка в одинарных кавычках, число без кавычек через точку в дробной части, булево - .f. или .t.
теперь осталось разобраться с разрядностью... |
|||
|
33
Горогуля
04.08.16
✎
08:20
|
>просто добавить через XBase не получается.
оно как-то аргументирует? |
|||
|
34
Loko
04.08.16
✎
08:22
|
(33) XBase не работает с типом поля memo
|
|||
|
35
Kandellaster
04.08.16
✎
08:28
|
каким боком у тебя там улануде ?))
|
|||
|
36
Loko
04.08.16
✎
08:36
|
(35) улан-удЭЭЭЭЭЭ. живу здесь
|
|||
|
37
Loko
04.08.16
✎
08:37
|
еще вопрос возник. а есть какие-нить механизмы блокировки дбф-файла в момент когда я записи свои буду добавлять?
|
|||
|
38
Kandellaster
04.08.16
✎
08:38
|
(36) я тоже там, живу
|
|||
|
39
Гобсек
04.08.16
✎
08:42
|
(37)Если мне память не изменяет, то foxpro при начале добавления записи автоматически делает блокировку заголовка и снимает по окончании. По логике в твоем случае эту работу автоматически должен делать драйвер.
|
|||
|
40
Loko
04.08.16
✎
08:43
|
(39) ок
|
|||
|
41
Loko
04.08.16
✎
09:08
|
пробую через акцес:
ОлеДБ = Новый COMОбъект("ADODB.Connection"); Соединение = "Provider=Microsoft.Ace.OLEDB.12.0;Data Source=" + КаталогИБ + ";Mode=ReadWrite;Collating Sequence=MACHINE"; ОлеДБ.Open(Соединение); не открывается. ошибка: {ВнешняяОбработка.ВыгрузкаВДБФ.Форма.Форма.Форма(80)}: Ошибка при вызове метода контекста (Open) ОлеДБ.Open(Соединение); по причине: Произошла исключительная ситуация (Microsoft Access Database Engine): Could not find installable ISAM. провайдера мож неправильно указываю? |
|||
|
42
Горогуля
04.08.16
✎
09:12
|
симптомы, причины, решения...
https://support.microsoft.com/en-us/kb/209805 |
|||
|
43
Loko
04.08.16
✎
09:17
|
да похоже нельзя открыть дбв через акцесс провайдер...
|
|||
|
44
Loko
04.08.16
✎
09:17
|
(43) дбф
|
|||
|
45
Loko
04.08.16
✎
09:26
|
СтрокаПодключения="DRIVER={Microsoft Access dBASE Driver (*.dbf, *.ndx, *.mdx)};SourceDB=\\1c\data\Bulat\; SourceType=DBF; Exclusive=No;BackgroundFetch=Yes;Collate=Russian;Null=No;Deleted=Yes;";
Соединение = Новый COMОбъект("ADODB.Connection"); Соединение.Open(СтрокаПодключения); а вот так соединение проходит) только новая ошибка синтаксиса при добавлении записи: Syntax error (missing operator) in query expression '.f.'. как булево записывается в акцесе? |
|||
|
46
ovrfox
04.08.16
✎
09:28
|
(43) Можно, но только стандарта DBASE III (без полей memo)
|
|||
|
47
SSSSS_AAAAA
04.08.16
✎
09:31
|
Боже мой, сколько (уж извините за резкость) чуши на ровном месте...
1. Фокс только 32-битный и дрова к нему тоже только 32-битные. 2. Список 32-битных дров на 64-юитных системах отдельный и никак не связан со списком 64-битных дров. 3. OLE DB Provider и ODBC - две разных технологии построения драйверов доступа к базам данных. конкретно для фокса ODBC драверы дрвнее мамонтов. Все фоксовые форматы дбф поддерживает только VFP OLE DB Provider. 4. Во спасение от будущих граблей :) - даты надо писать в формате {^yyyy-mm-dd} В принципе, сего должно хватить для решения обсуждаемой пробемы. Разумеется, если это использовать с головой. :_ |
|||
|
48
Loko
04.08.16
✎
09:37
|
(47) это мы уже выяснили. с 32-х битного виндовса нормально подключаюсь через VFP OLE DB Provider. все работает.
ты уж извини меня неумного, но то, что ты перечислил - все это уже мы выяснили выше. конкретно как с сервера 64 разрядного подключится к дбф-ке? |
|||
|
49
SSSSS_AAAAA
04.08.16
✎
09:37
|
Добавчик:
5. В подавляющем большинстве случаев сервер 1с 32-битный и потому во всех этих случаях ни о каких 64-битных дровах не может быть и речи. |
|||
|
50
Loko
04.08.16
✎
09:39
|
(49) я сразу написал в первом посте что у нас сервер 1С 64 разрядный
|
|||
|
51
SSSSS_AAAAA
04.08.16
✎
09:43
|
(48) Да, похоже, таки еще не выяснили, раз такой вопрос задаешь.
Ну так и что непонятно из (49)? 64-битные приложения в принципе не умеют пользоваться 32-битными дровами. Работать исключительно из 1с-вского клиента, даже если он и вместе сервером 1с на одной машине. |
|||
|
52
NorthWind
04.08.16
✎
12:52
|
(43) похоже, что в гугле вас забанили.
Книга знаний: Пример работы с файлами DBF по интерфейсу ADO |
|||
|
53
NorthWind
04.08.16
✎
12:54
|
единственное что - я, честно сказать, уже плохо помню, получится там мемо-поля читать или нет.
|
|||
|
54
SSSSS_AAAAA
04.08.16
✎
13:36
|
(53) Получится, если строку коннекта сменит на рабочую с VFP OLE DB Provider.
|
|||
|
55
Loko
05.08.16
✎
04:40
|
(52) http://www.connectionstrings.com/using-jet-in-64-bit-environments/
как понял dbf не открываются через этот провайдер в 64-разрядной системе. |
|||
|
56
Loko
05.08.16
✎
04:58
|
на локальной базе все норм работает.
на серваке: {ВнешняяОбработка.ВыгрузкаВДБФ.Форма.Форма.Форма(32)}: Ошибка при вызове метода контекста (Open) DBConn.Open("Provider=Microsoft.Jet.OLEDB.4.0;" + по причине: Произошла исключительная ситуация (ADODB.Connection): Не удается найти указанный поставщик. Вероятно, он установлен неправильно. |
|||
|
57
Ёпрст
гуру
05.08.16
✎
09:12
|
(56) дык поставь его, на серваке то. Чтоб хотя бы в udl был виден
|
|||
|
58
Loko
08.08.16
✎
09:40
|
подскажите синтаксис добавления даты в моем случае?
ДатаВ= Дата(Формат(DZAKL,"ДФ=dd.MM.yyyy")); "INSERT INTO DOGOVOR VALUES ("+ДатаВ+")" ошибка синтаксиса говорит |
|||
|
59
Ёпрст
гуру
08.08.16
✎
09:43
|
Вот к такому виду приводи:
{d '2012-07-01'} |
|||
|
60
Loko
08.08.16
✎
09:49
|
(59)т.е. дату мне так преобразовывать до инсерта:
Д = День(DZAKL); М = Месяц(DZAKL); Г = Год(DZAKL); ДатаВ = "{d '"+Д+"-"+М+"-"+01+"'}"; ? |
|||
|
61
Loko
08.08.16
✎
09:49
|
ДатаВ = "{d '"+Д+"-"+М+"-"+Г+"'}";
т.е. |
|||
|
62
Loko
08.08.16
✎
09:50
|
не идет так.
Произошла исключительная ситуация (Microsoft OLE DB Provider for Visual FoxPro): Произошла одна или несколько ошибок во время обработки команды. |
|||
|
63
Горогуля
08.08.16
✎
09:50
|
видал в интернетах приколы по поводу даты. ^ перед или за { или что-то этакое.. ищи
|
|||
|
64
Горогуля
08.08.16
✎
09:50
|
+(63) в этой ветке тебе говорили даже
|
|||
|
65
Loko
08.08.16
✎
09:52
|
(64) ага в 47 увидел, попробую. спасиб
|
|||
|
66
Горогуля
08.08.16
✎
09:54
|
мущина! здесь же чат, а кто читает вчерашнее - тот лох
|
|||
|
67
Loko
08.08.16
✎
09:56
|
(66) ну не прочел. бывает.
запись, в общем, идет. но даты пустые... |
|||
|
68
Горогуля
08.08.16
✎
09:57
|
(67) наверное, что-то не так, не?
|
|||
|
69
Loko
08.08.16
✎
10:00
|
ага, разобрался. числовые группы убрал в году)
все, работает. всем спасибо! |
|||
|
70
Горогуля
08.08.16
✎
10:03
|
мда.. спасибо тебе (это не сарказм). у меня пока сохраняется вера в человечество. пока правильного намёка достаточно. и ответного "спасибо", конечно ;)
|
|||
|
71
Ёпрст
гуру
08.08.16
✎
10:10
|
(62) всё работает:
КаталогИБ = "f:\"; ОлеДБ = Новый COMОбъект("ADODB.Connection"); Соединение = "Provider=VFPOLEDB.1;Data Source=" + КаталогИБ + ";Mode=ReadWrite;Collating Sequence=MACHINE"; ОлеДБ.Open(Соединение); Комманд = Новый COMОбъект("ADODB.Command"); Комманд.ActiveConnection = ОлеДБ; Комманд.CommandText = "insert into test ([date]) values ({d '2012-07-01'})"; Комманд.Execute(); провайдер, этот, если че https://www.microsoft.com/en-us/download/confirmation.aspx?id=14839 |
|||
|
72
Loko
23.08.16
✎
11:06
|
всем привет! это снова я)
в общем, получилось подключиться к дбф-ке через Provider = Microsoft.Ace.OLEDB.12.0 с сервака64. но проблема в том, что с мемо полями, как я понял, этот провайдер не работает (другие дбф-ки без мемо полей читает норм). все-таки как Епрст подключается через Provider=VFPOLEDB.1? у меня упорно провайдера не видит. драйвер установлен также по ссылке как в (71). скидываю скрин источников данных на серваке, смущает дата драйвера (1999 год). может в этом проблема? http://upload.akusherstvo.ru/image1112606.png |
|||
|
73
Loko
23.08.16
✎
11:07
|
вот здесь такая же проблема была, но там мемо полей не было. и тогда у Епрсты все ок было...
v8: как записать дбф через adodb.connection на х64 сервере |
|||
|
74
Ёпрст
гуру
23.08.16
✎
11:08
|
(72) я хз, чего там у вас за серваки, у нас 2012 x64, хотя и на 2003 x64 hf,jnftn/
|
|||
|
75
Loko
23.08.16
✎
11:12
|
(74) а можете скрин сделать источников одбс как у меня в (72)?
|
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |