|
Проблема: Provider VFPOLEDB.1 и x64 | ☑ | ||
---|---|---|---|---|
0
Rounder
15.02.17
✎
10:50
|
Текущая ситуация: Windows Server 2003 x32, MS SQL Server 2005 Standard Edition x32, 1С 8.2 x32.
Обмен данными с внешними файлами (Dbf) осуществляем через Provider VFPOLEDB.1 (что-то вроде Соединение.Open("Provider=VFPOLEDB.1;Data Source=" + ПутьСпр + ";Collating Sequence=MACHINE;EXCLUSIVE=NO")) Грядущая ситуация: Windows Server 2008 R2 x64, MS SQL Server 2005 Standard Edition x64, 1С 8.2 x64. Уже готовы были мигрировать, оставалось только проверить обмен данными с DBF. И вот тут и вылезла проблема. Драйвера на x64 нету. Соответственно обмен отказывается работать. Прошу помощи в поисках решения. Наверняка кто-нибудь с подобным сталкивался. |
|||
1
Кирпич
15.02.17
✎
10:53
|
ну перепишите свои 20 строчек с VFP на чо нибудь другое
|
|||
2
Rounder
15.02.17
✎
10:55
|
+ (0) Обмен данными происходит в реальном времени и в режиме совместного доступа к DBF.
Может есть какие другие провайдеры для подобных задач под x64? |
|||
3
Кирпич
15.02.17
✎
10:57
|
может advantage database поможет. они вроде извращались по dbf
|
|||
4
Кирпич
15.02.17
✎
11:01
|
но на счет совместного доступа конечно гарантий нету, если у вас система на фокспре работает, а 1с не через VFP
|
|||
5
Кирпич
15.02.17
✎
11:03
|
http://devzone.advantagedatabase.com/dz/content.aspx?key=20&Release=16&Product=15&Platform=14
может и dbf поддерживает. глянь. |
|||
6
Кирпич
15.02.17
✎
11:03
|
||||
7
Rounder
15.02.17
✎
11:07
|
(5) (6) Спасибо. Посмотрю.
Но вопрос остается открытым. |
|||
8
Кирпич
15.02.17
✎
11:11
|
вроде поддерживает
Specifies the desired table type. Valid values include ADS_ADT, ADS_CDX, ADS_VFP, and ADS_NTX. The default is ADS_ADT. |
|||
9
Кирпич
15.02.17
✎
11:12
|
(7) чуда ждешь? :)
|
|||
10
Rounder
15.02.17
✎
11:14
|
(9) Нет.
Пока буду разбираться с подсказанным, чтобы другие не считали что тема закрыта. Может еще идеи будут :) |
|||
11
Кирпич
15.02.17
✎
11:16
|
(10) вот тебе help, чтобы два раза на мисту не бегать
http://devzone.advantagedatabase.com/dz/webhelp/Advantage11.1/index.html |
|||
12
Rounder
15.02.17
✎
11:18
|
(11) Спасибо.
|
|||
13
Кирпич
15.02.17
✎
12:11
|
Проверил. У меня работает. Подключился, создал таблицу. Так что можно пользовать.
connection := CreateOleObject('ADODB.Connection'); connection.Open('Provider=Advantage OLE DB Provider; Data Source=c:\temp\data\tables; ServerType=ADS_LOCAL_SERVER; TableType=ADS_VFP;'); connection.Execute('create table table1 (f1 char(20),f2 char(20))'); |
|||
14
Rounder
15.02.17
✎
13:09
|
(13) Спасибо за помощь.
Но есть нестыковки. Или я не разобрался. У ADODB.Connection Execution возвращает количество затронутых запросом записей. В случае провайдера Advantage OLE DB Provider у меня возвращается всегда 0. При этом количество записей в результате запроса показывает общее, независимо от того поставил я ShowDeleted в Истина или Ложь. |
|||
15
Rounder
15.02.17
✎
13:10
|
Хотя при обработке в цикле - затрагивает только не помеченные на удаление если ShowDeleted установлено в Ложь.
|
|||
16
Кирпич
15.02.17
✎
13:51
|
(15) ну вы там держитесь :)
в конце концов можно тупо запилить web-сервис, который будет работать с VFPOLEDB.1 |
|||
17
Rounder
15.02.17
✎
14:02
|
(16) :)
|
|||
18
Torquader
15.02.17
✎
14:38
|
Как вариант, можно написать отдельное приложение в 32-битах, и вызывать его из командной строки, складывая задание в файл.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |