powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / [игнор отключен] [закрыт для гостей] / 64-битная платформа и ODBC
23 сообщений из 23, страница 1 из 1
64-битная платформа и ODBC
    #39532224
Фотография Flying-home
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Встала задача перейти на 64-битную платформу 1С с сохранением функционала обработки, которая читает каталог семерки используя ODBC драйвер dBASE.

Во-первых, надо знать, что 64-битные драйвера управляются тулзой, расположенной по пути %SystemRoot%\system32\odbcad32.exe
32-битные, соответственно, - C:\WINDOWS\SysWOW64\odbcad32.exe

Я установил AccessDatabaseEngine_X64.exe, скачав ее с этой страницы.

Убедился, что в системе появился 64-битный драйвер Microsoft Access dBASE Driver (*.dbf, *.ndx, *.mdx)

Нашел в реестре ID этого драйвера, 533.

Составил строку подключения:
connection stringDriver={Microsoft Access dBASE Driver (*.dbf, *.ndx, *.mdx)}; DriverID=533; Dbq=%ПутьКБазе%; MaxBufferSize=8192;PageTimeout=20

Подсунул обработке, она заработала, но читала данные не в той кодировке.
Кодировка исправилась в реестре:
registryHKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\14.0\Access Connectivity Engine\Engines\Xbase
Ключу DataCodePage надо поставить значение "ANSI".

Написал здесь, потому что в интернетах говорят, что проблема вообще не решаемая.
...
Рейтинг: 0 / 0
64-битная платформа и ODBC
    #39535152
Emery
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Flying-homeВстала задача перейти на 64-битную платформу 1С с сохранением функционала обработки, которая читает каталог семерки используя ODBC драйвер dBASE.
Хорошее решение. Только неплохо было бы оформить это в виде более развернутой статьи, можно даже здесь, на этом форуме. Пример, см. http://www.sql.ru/forum/681845/mfc-04-mmf-chtenie-i-sozdanie-dbf-faylov-vmesto-serializacii-dlya-virtualnyh-spiskov .

А так интересно было бы узнать, почему не устроил 32-х битный драйвер, т.е., какие преимущества дают 64 бита для работы с 32-х разрядным приложением? Какую работу выполняет этот драйвер, то ли для простого линейного доступа к записям dbf-файлов, то ли для выполнения запросов? А если для запросов, то, как насчет индексов, используются родные 1С-овские или генерируются собственные?

Также интересно, возможно ли работа с этим драйвером в Qt (см. http://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1051354&msg=15340150 ), хотя в последних релизах Qt отключена поддержка odbc.

Если же задача состоит в том, чтобы из 64-х битной «восьмерки» тупо последовательно считывать данные из dbf-файлов «семерки», то можно поступить еще проще. Достаточно заметить, что dbf-файл это бинарный заголовок, описывающий поля, кодировку и размер данных, и обычный текст в sdf-формате (поля фиксированной ширины). Все это хозяйство завершается бинарным символом, демонстрирующим конец файла. Зная структуру полей, выделяем текстовые данные и работаем с ними как с обычным текстом.
...
Рейтинг: 0 / 0
64-битная платформа и ODBC
    #39538228
Фотография Flying-home
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
EmeryА так интересно было бы узнать, почему не устроил 32-х битный драйвер
Потому что 64-битные приложения не видят его.
...
Рейтинг: 0 / 0
64-битная платформа и ODBC
    #39541515
Фотография Владимир Лазурко
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Зачем нужна 64-битная платформа 1С 8?
Сервер 64-битный, клиент 32-битный.

При установке 64-битного клиента видели предупреждение от 1С, что это тестовая версия?
...
Рейтинг: 0 / 0
64-битная платформа и ODBC
    #39541528
Пришелец-прораб
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Владимир ЛазуркоЗачем нужна 64-битная платформа 1С 8?

когда очередной монстр типа erp сломается на обновлении или ТиИ - наступит понимание... 640 кб должно хватить всем?
...
Рейтинг: 0 / 0
64-битная платформа и ODBC
    #39542405
Dorosh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Владимир ЛазуркоЗачем нужна 64-битная платформа 1С 8?

У меня есть клиент. Некогда франч написал им с нуля самописку на 8.0 еще под их бизнес. "Киллерфичей" разработки была возможность на лету писать и исправлять много обработчиков на каждый чих, код которых был запихнут в справочник. Побочным эффектом массового использования оператора Выполнить стало исполнение кода на клиенте. За много лет работы данных накопилось много, без 63-битного клиента отчеты порой падают упираясь в предел адресации памяти.
...
Рейтинг: 0 / 0
64-битная платформа и ODBC
    #39542435
sWinTyz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Насколько я помню 7-ка имела особенность .
Она писала в файл ДБФ своим собственным способом.
Т.е. нулевой байт "03" . "29" пустой. А кодировка 1251.
Т.е. имеем следующие . Когда обычный человек через ОДБС или другим способом открывал файлик, то видел очень неприглядную картину. Любой ОДБС воспринимает этот ДБФ как дос файл со всеми вытекающими.
Можно открыть как текст и переписать или в 0-м или в 29-м.

Тоже решение. Перед открытием. Потом вернуть и сказать что так и было.
...
Рейтинг: 0 / 0
64-битная платформа и ODBC
    #39542437
sWinTyz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
В dbf файле за кодовую страницу отвечает 29-й байт. Например, значение 101 означает кодовую страницу DOS-866, 201 - Windows-1251, а значение 0 указывает, что нужно использовать системные настройки.

Но про это уже не все знают.
...
Рейтинг: 0 / 0
64-битная платформа и ODBC
    #39542438
sWinTyz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Можно еще "30" в нулевой байт пробить.
...
Рейтинг: 0 / 0
64-битная платформа и ODBC
    #39542441
sWinTyz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Зачем Вам драйвер? Читайте так.
Структура примитивная.

Код: plaintext
"Проблема нерешаемая"
= глупости какие ...
...
Рейтинг: 0 / 0
64-битная платформа и ODBC
    #39542444
sWinTyz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
- дай ключ на 10.
- нет у меня.
- а как ты?
- я до 16 руками выкручиваю.

шутка юмора.
...
Рейтинг: 0 / 0
64-битная платформа и ODBC
    #39545210
Фотография Владимир Лазурко
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторПришелец-прорабВладимир ЛазуркоЗачем нужна 64-битная платформа 1С 8?

когда очередной монстр типа erp сломается на обновлении или ТиИ - наступит понимание... 640 кб должно хватить всем?
DoroshЗа много лет работы данных накопилось много, без 63-битного клиента отчеты порой падают упираясь в предел адресации памяти.А вы не читали ридми при установке клиента?
ну то понятно, "ВЫПОЛНИТЬ" на клиенте... переписывайте свои выполнить на сервер.
...
Рейтинг: 0 / 0
64-битная платформа и ODBC
    #39545212
Фотография Владимир Лазурко
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
640 кб должно хватать всем. А то понапридумали, понимаешь.
...
Рейтинг: 0 / 0
64-битная платформа и ODBC
    #39545311
Пришелец-прораб
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Владимир Лазуркоавторпропущено...

пропущено...
А вы не читали ридми при установке клиента?
ну то понятно, "ВЫПОЛНИТЬ" на клиенте... переписывайте свои выполнить на сервер.

это не нам советовать надо.

1. а пейсателям типовых
2. сервер 64-битный стоит денег. так что иногда банальнее дешевле вынести все на клиента с этой точки зрения
...
Рейтинг: 0 / 0
64-битная платформа и ODBC
    #39546862
Фотография Владимир Лазурко
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пришелец-прораб2. сервер 64-битный стоит денег. так что иногда банальнее дешевле вынести все на клиента с этой точки зрениянищеброды, переходите на бесплатные посгри и май-эс-кю-элы, пишите всё на пхп, это теперь стильно, модно, молодёжно.
Пришелец-прорабэто не нам советовать надо.это был совет владельцам уникальной конфы от франча.
...
Рейтинг: 0 / 0
64-битная платформа и ODBC
    #39546898
Dorosh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[/quote]А вы не читали ридми при установке клиента?
ну то понятно, "ВЫПОЛНИТЬ" на клиенте... переписывайте свои выполнить на сервер.[/quote]

"Скоты-с, не поймут-с"(с)анек. Владельцам бизнеса сложно объяснить, что туеву хучу денег франю они отдали напрасно, и надо еще нехило заплатить за переписывание всего и вся.
...
Рейтинг: 0 / 0
64-битная платформа и ODBC
    #39555757
MKZM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DoroshВладимир ЛазуркоЗачем нужна 64-битная платформа 1С 8?

У меня есть клиент. Некогда франч написал им с нуля самописку на 8.0 еще под их бизнес. "Киллерфичей" разработки была возможность на лету писать и исправлять много обработчиков на каждый чих, код которых был запихнут в справочник. Побочным эффектом массового использования оператора Выполнить стало исполнение кода на клиенте. За много лет работы данных накопилось много, без 63-битного клиента отчеты порой падают упираясь в предел адресации памяти.
Пиздешь.
...
Рейтинг: 0 / 0
64-битная платформа и ODBC
    #39628553
Фотография Flying-home
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
При переходе на сервер 1С возникла следующая проблема.
При попытке подключение к базе 77 с прежней строкой подключения возникает следующая ошибка:
Несмотря на то, что в строке подключения явно указано
Код: plaintext
Driver={Microsoft Access dBASE Driver (*.dbf, *.ndx, *.mdx)}; DriverID=533
1С-ка говорит о проблемах с совсем другим драйвером.
...
Рейтинг: 0 / 0
64-битная платформа и ODBC
    #39628555
Фотография Flying-home
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
При попытке использовать 32-битный драйвер, говорит, что не нашла его. Что, в общем-то, ожидаемо.
...
Рейтинг: 0 / 0
64-битная платформа и ODBC
    #39628558
Фотография Flying-home
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Куда копать?
...
Рейтинг: 0 / 0
64-битная платформа и ODBC
    #39628580
Фотография Flying-home
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А ведь в восьмерке есть встроенные инструменты для перехода с семерки на восьмерку. Можно ведь их задействовать? Где посмотреть, как оно работает?
...
Рейтинг: 0 / 0
64-битная платформа и ODBC
    #39628586
Фотография Flying-home
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Flying-homeА ведь в восьмерке есть встроенные инструменты для перехода с семерки на восьмерку. Можно ведь их задействовать? Где посмотреть, как оно работает?
Пардон. Там выгрузка через промежуточный файл.
...
Рейтинг: 0 / 0
64-битная платформа и ODBC
    #39629136
Фотография Flying-home
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Все заработало. Надо было дать права на каталог с семерочной базой пользователю, под которым запускается сервер 1С.
...
Рейтинг: 0 / 0
23 сообщений из 23, страница 1 из 1
Форумы / [игнор отключен] [закрыт для гостей] / 64-битная платформа и ODBC
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]