Имя: Пароль:
1C
 
Доступ через ADO к парадоксовским файлам. Как указать кодовую таблицу?
0 Mikeware
 
04.03.09
07:15
Цепляюсь строкой "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="+Path+";Extended Properties=Paradox 5.x;"
- кракозябры,
строкой "Driver={Microsoft Paradox Driver (*.db )};DriverID=538;Fil=Paradox 5.X;DefaultDir="+Path+";Dbq="+Path+";CollatingSequence=ASCII;" - то же самое
1 Sadovnikov
 
04.03.09
07:23
(0) Добавляй сразу, что изыскания показали, что ADO выдает кракозябры, дельфевый "Database Desktop" - кракозябры, BDE - нормальные русские буквы...
2 Mikeware
 
04.03.09
07:27
(1) Грустно. Пользоваться этим будут все начальники отделов. Ставить каждому BDE (хотя и не я ставить буду :-)) - как-то неправильно....
3 Vippi
 
04.03.09
07:27
(0) DataCodePage=ANSI ?
4 Sadovnikov
 
04.03.09
07:28
(3) Не проканало...
5 Vippi
 
04.03.09
07:32
6 Mikeware
 
04.03.09
07:42
(5) Тоже не проканало. Скорее всего потому, что у меня BDE уже стоит...
7 Vippi
 
04.03.09
07:45
(6) Скорее всего. Цитирую:
> DataCodePage    Этот параметр используется, только если на компьютере не установлено ядро BDE.
Снеси BDE и попробуй.
8 Sadovnikov
 
04.03.09
07:50
(6) А ты можешь выложить этот файлик куда-нибудь, что бы народ попробовал? Так как файлик какой-то хитрый. Из других русские буковки прекрасно читаются.
9 Андрюха
 
04.03.09
07:52
(0) Может экспортнуть таблицу с "нормальной" кодировкой из-под БДЕ в Excel и потом всем показывать?
10 dk
 
04.03.09
08:08
где-то подобная проблема решилась правкой в реестре
cp1250
cp1251
cp1252
11 Mikeware
 
04.03.09
09:04
(9) "экпортнуть" - не проблема. Тем более, что есть штатные экспорты и в текст, и в Excel. Просто не хочется лишнего...
Это, в общем-то, система "Орион" - охранка+пропускная...
(8) http://slil.ru/27019838
12 Mikeware
 
04.03.09
09:58
Снес BDE, теперь выдает
Microsoft OLE DB Provider for ODBC Drivers: [Microsoft][Драйвер ODBC Paradox] Внешняя таблица не имеет предполагаемый формат.
или
Microsoft JET Database Engine: Внешняя таблица не имеет предполагаемый формат.
в зависимости от строки подключеня...
13 Sadovnikov
 
04.03.09
09:59
(12) Скопируй исходный файлик, а оригинал грохни. Парадоксовский глюк...
14 Mikeware
 
04.03.09
10:03
(13) Авотхрен!©
15 ProxyInspector
 
04.03.09
10:08
Перед каждым запросом на выборку/обновление/добавление выполняй
Процедура УстановитьКодовуюСтраницу()
   Запрос = "SET NAMES cp1251";    
   БазаПортала.Execute(Запрос);
КонецПроцедуры
16 Sadovnikov
 
04.03.09
10:08
(14) Блин, дятел я. Не увидел "Снес BDE" :(
Ставь BDE обратно...
17 ProxyInspector
 
04.03.09
10:11
Примерно так:

  УстановитьКодовуюСтраницу();
  strSQL_sel = "Select * From Users"
  +" Where (IsActive = "+"'1') ;";
  Набор=БазаПортала.Execute(strSQL_sel);
18 ProxyInspector
 
04.03.09
10:45
(15) и (17) Конечно не для paradox файлов но может поможет. Лично я боролся с MySQL и там это используется. Может поможет:
http://209.85.129.132/search?q=cache:IvbR9R6TZz8J:scalny.southriver.name/index.php/2008/06/27/1c-mysql+http://scalny.southriver.name/index.php/2008/06/27/1c-mysql&hl=ru&ct=clnk&cd=1&gl=ru&client=firefox-a
http://www.script-coding.info/ADO.html

  в параметрах соединения указывать кодовую страницу: “…STMT=SET CHARACTER SET cp1251?
19 Mikeware
 
05.03.09
08:28
(15) Не срабатывает - Microsoft JET Database Engine: Ошибочная инструкция SQL; предполагалось 'DELETE', 'INSERT', 'PROCEDURE', 'SELECT' или 'UPDATE'.
20 mrkorn
 
05.03.09
09:53
(0) не видел н одной нормальной реализации просмотровщика Paradox'a без BDE, толко старый DOS'ный bdedit или как-то-так
21 Mikeware
 
05.03.09
10:02
(20) Так мне не "просмотрщик" нужен...
Ну да ладно, буду пока данные через промежуточное файло тянуть...
22 vde69
 
05.03.09
10:17
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Jet\4.0\Engines\Xbase]
"DataCodePage"="ANSI"
"BDE"=dword:00000002
23 vde69
 
05.03.09
10:18
(22)+ перезагрузка
24 vde69
 
05.03.09
10:19
ну и конечно

[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Nls\CodePage]
"1250"="c_1251.nls"
"1251"="c_1251.nls"
"1252"="c_1251.nls"
25 Mikeware
 
05.03.09
10:38
(22) Спасибо! Заработало!!!!!
26 Sadovnikov
 
05.03.09
10:40
(25) А тебя, разве, такой вариант устроит? Это, ведь, на каждой клиентской машинке придется делать.
27 Mikeware
 
05.03.09
10:42
(26) Ну ведь это можно и не руками? :-) Да и админы на что?
28 Sadovnikov
 
05.03.09
10:43
(27) Тогда поздравляю с нахождением решения проблемы :)
Во как завернул...
29 Mikeware
 
05.03.09
10:44
(28) Не с нахождением, а с решением :-) Подсказка... :-(
30 Sadovnikov
 
05.03.09
10:46
(29) А все равно поздравляю :)
31 vde69
 
05.03.09
10:50
кстати с этим патчем можно этим-же драйвером к файлам 1с цепляться и нормально работать.

кстати выравнивание по двухбайтовому слову почему-то не отражено в документации, я в свое время долго искал решение...