Форум: "Базы";
Текущий архив: 2005.08.07;
Скачать: [xml.tar.bz2];
ВнизПодлючение к 1С с помощью ADO Найти похожие ветки
← →
Iova © (2005-05-30 19:49) [0]Какие драйверы можно использовать для подключения 1С через АДО?
← →
Anatoly Podgoretsky © (2005-05-30 19:56) [1]А причем тут АДО?
← →
Iova © (2005-05-30 20:03) [2]Я делаю прогу для работы с различными базами данных. У меня уже сделано для Accessа и InterBasа и чтобы ничего сильно не менять хотелось бы работу с 1С сделать через ADO. Мне нужно подключиться к справочникам 1С но я не знаю какие дрова использовать.
Мне говорили что можно обращаться с помощью SQL запросов.
← →
Anatoly Podgoretsky © (2005-05-30 20:08) [3]1C это приложение, а не база. Вот ее базами можешь общаться как хочешь. Но вроде бы 1С является сервером автоматизации.
← →
Fay © (2005-05-30 21:14) [4]Iova © (30.05.05 19:49)
Документация фирменная есть?
← →
Danilka © (2005-05-31 08:09) [5][2] Iova © (30.05.05 20:03)
> Мне нужно подключиться к справочникам 1С но я не знаю какие
> дрова использовать.
Для начала, какая 1с-ка? Если самая распостраненная на сегодняшний день, версия 7.7, то у нее база лежит либо в MS-SQL либо в DBF.
Если база 1с-ки лежит в МС-Сиквеле, то можно подключится к нему через АДО.
Если база лежит в ДБФ-ках, то, скорее всего, никак - если он ошибаюсь, они там нахимичили с заголовками ДБФ, в результате кодировка любыми движками определяется неправильно.
В любом случае, если у каких-то справочников есть периодические реквизиты, то геморой будет еще тот - они все для всех справочников лежат в одной таблице, вместе с константами и разобрацца где что и почем будет очень тяжело.
Самый простой вариант - подключаться к самой 1с-ке через ОЛЕ и работать с ней на ее языке.
← →
Iova © (2005-06-01 10:04) [6]>Danilka
Версия у меня 7.7 и справочники храняться в DBF формате.
Значит их нельзя рассматривать как файлы DBase с драйверомMicrosoft OLE DB provider for ODBC Drivers
.
Через OLE работать будет сложно т.к. язык 1С я сам толком незнаю(например как получить список справочников БД 1С и передать их в ListBox).
Кстати я читал хелп по 1С и там вроде как утверждали что 1С поддерживает язык SQL, но если поддерживает, то как его использовать.
PS: Что за вариант баз данных в МС-Сиквел. Я пока про такой еще ничего не слышал.
← →
Тучудище (2005-06-01 10:10) [7]Очень даже просто можно работать со справочниками в 1С Базе данных через OLE сам неоднократно делал, файлы там Dbase IV и проблем с кодировкой у меня не было никогда, единственное но значения т.н. перечислений получить не удасться ибо зашиты в MD и с реквезитами неопределенного типа тоже гимора полнейшая
← →
sniknik © (2005-06-01 10:30) [8]> Если база лежит в ДБФ-ках, то, скорее всего, никак - если он ошибаюсь, они там нахимичили с заголовками ДБФ, в результате кодировка
> любыми движками определяется неправильно.
ошибаешся, ничего не нахимичили, стандартный foxpro. подключится можно через ODBC Visual Foxpro Driver (или OLEBD VFP, но его чаще доставлять нужно)
← →
Danilka © (2005-06-01 10:34) [9][6] Iova © (01.06.05 10:04)
> Через OLE работать будет сложно т.к. язык 1С я сам толком
> незнаю
Придецца разбирацца, иначе - никак.
>(например как получить список справочников БД 1С и
> передать их в ListBox).
Очень просто, я тебе еще в прошлой ветке привел пример на 2 строчки :)
> Кстати я читал хелп по 1С и там вроде как утверждали что
> 1С поддерживает язык SQL, но если поддерживает, то как его
> использовать.
У них не SQL, а собственный язык запросов.
> PS: Что за вариант баз данных в МС-Сиквел. Я пока про такой
> еще ничего не слышал.
МС-Сиквел - MS SQL. Слово SQL буржуи произносят как "сиквел". :))
[7] Тучудище (01.06.05 10:10)
> файлы там Dbase IV и проблем с кодировкой у меня не было
Ну, значит я ошибался. :) Однако, на счет гемороя - присоединяюсь.
← →
sniknik © (2005-06-01 10:37) [10]> файлы там Dbase IV и проблем с кодировкой у меня не было
возможно (возможно вообще все) и есть разные модификации 1С(вернее баз), какието и с Dbase IV, но я пока встречал только две - Foxpro и MSSQL.
← →
Danilka © (2005-06-01 10:38) [11][8] sniknik © (01.06.05 10:30)
Если честно, последний раз когда пробовал напрямую к дбф-кам 1С цепляться - это было года 2-2.5 назад, ихний КЛАДР (тогда налоговая раздавала его в кодировке 866, а в 1С-ке использовали свой - сконвертированый в 1251), вероятно из-за этого и были проблемы. Но где-то и еще читал про такую проблему.
Да я, вобщем-то, честно написал: "если не ошибаюсь". :))
← →
Тучудище (2005-06-01 11:39) [12]>sniknik
ядро не ниже 18 файлы 100% dbase4 это для DBF
>Danilka
языковые установки бд выбираются в момент конфигурирования системы
← →
Danilka © (2005-06-01 11:42) [13][12] Тучудище (01.06.05 11:39)
> языковые установки бд выбираются в момент конфигурирования
> системы
ты о чем? :)
← →
sniknik © (2005-06-01 11:48) [14]> ядро не ниже 18 файлы 100% dbase4 это для DBF
т.е. и индексные файлы у тебя в 1С имеют расширение .mdx (на крайний случай .mdx)? ;)
← →
sniknik © (2005-06-01 11:51) [15]> (на крайний случай .mdx)
$о))
читать - (на крайний случай .ndx)
← →
jiny (2005-06-02 13:15) [16]Все верно, работать c 1C нужно через OLE Automation Server на ее родном языке, и уже не важно какая она SQL или DBF версия, и к тому и к этому есть способы подключения .
если хочешь могу скинуть на мыло статьи по подключению к 1С и работе со справочниками и выражениями.Скинь адрес мне на мыло
zhas-trz@tarazinfo.kz
← →
VadimX (2005-06-29 10:55) [17]И все-таки.
Как быть, если нужен прямой доступ к DBF(без использования OLE Automation Server)
При стандартном подключении через ADO ADBC Driver
Таблицы видятся, но кодировка другая.
Причем таблицы Win-1251 а DELPHI их зачем-то перекодирует.
Есть ли стандартное решение?
← →
size=20 (2005-06-29 11:03) [18]мдя... а почему не к текстовым файлам например?
я делал интеграцию наоборот с 1С к своей СУБД. Все получилось через ADO
← →
VadimX (2005-06-29 11:17) [19]Ну тогда, плиз, по шагам как ты это делал.
Может я где-то что-то упустил.
← →
Anatoly Podgoretsky © (2005-06-29 11:26) [20]Iova © (01.06.05 10:04) [6]
Никаких дополнительных средств для подключения а таблицам не надо (хотя и можно), тот же самый провайдер, что и для Акцесс.
Но как многократно сказано так делать не надо, смерть наступит весьма быстро, хорошо если только базы.
Для работы с 1С надо использовать ОЛЕ автоматизацию.
← →
sniknik © (2005-06-29 11:28) [21]> При стандартном подключении через ADO ADBC Driver
в ADO вообще не стандартов..., какого провайдера подключиш тот и стандарт (на данный момент).
> Ну тогда, плиз, по шагам как ты это делал.
> Может я где-то что-то упустил.
что тебе непонятно в шаге №1
> ... подключится можно через ODBC Visual Foxpro Driver (или OLEBD VFP, но его чаще доставлять нужно)
???
← →
sniknik © (2005-06-29 11:37) [22]> ...тот же самый провайдер, что и для Акцесс.
настройку xBase.DataCodePage тогда надо сменить на ANSI с OEM которая по умолчанию. (в реестре у jet-овского isam-а).
← →
VadimX (2005-06-29 11:40) [23]>> ...тот же самый провайдер, что и для Акцесс.
>настройку xBase.DataCodePage тогда надо сменить на ANSI с OEM >которая по умолчанию. (в реестре у jet-овского isam-а).
Какая ветвь реестра?
← →
sniknik © (2005-06-29 11:55) [24]> Какая ветвь реестра?
поиск не работает?
а вот не скажу. тем более, что это не нужно, для фоксовых таблиц всетаки более подходит фоксовый же драйвер.
поддержка jet-ом фокса прекратилась с версии 3.5 по какимто видимо политическим мотивам, и если оно еще работает то только изза небрежности тамошних программистов... забыли вынуть, или это трудно сделать изза завязки с dbase, или изза поддержки совместимости уже написанного... т.д.
← →
VadimX (2005-06-29 12:37) [25]>> Какая ветвь реестра?
>поиск не работает?
работает. у меня такой нет.
Так все-таки.
Какой драйвер использовать?
Пожалуйста укажите название полностью, а то у меня
от Фокса 2-3 штуки и не понятно с каким именно разбираться.
← →
Anatoly Podgoretsky © (2005-06-29 12:40) [26]sniknik © (29.06.05 11:37) [22]
А точнее в соответствии с исходной таблице. Тут некоторые утверждают, что там мол dBase IV, но я этому не верю, по моим сведеньяс вроде бы все таки ФоксПро, а для него естественно лучше использовать другого провайдера, чем Jet.OleDb
← →
VadimX (2005-06-29 12:45) [27]А какой LANGDRIVER
выставлять?
← →
sniknik © (2005-06-29 13:40) [28]Anatoly Podgoretsky © (29.06.05 12:40) [26]
> по моим сведеньяс вроде бы все таки ФоксПро
естественно. если только за последнее время в dBase не переняли индексы *.cdx. ;о))
VadimX (29.06.05 12:37) [25]
> от Фокса 2-3 штуки и не понятно с каким именно разбираться.
а у меня он один... и то только тот что я сам поставил... (винда XP SP2/MADK 2.7 по умолчанию, с 2.6 fox в него не включается.)
вот DSN-ов фокса 2, не вижу чем их описание тебе поможет, у тебя их нет, оба мной были руками прописаны...
VadimX (29.06.05 12:45) [27]
> А какой LANGDRIVER
> выставлять?
где? вроде про ADO разговор (см. [0]), а LANGDRIVER принадлежность BDE.
p.s. разговор какойто неконкретный получается... (как всегда. заметил, незарегистрированные ники часто "недогоняют" что это от них описание деталей требуется а не наоборот, проблема то у них, а они наивно уверены, у всех то же самое "по дефолту", и ничего обьяснять не надо. "какие же вы мастера если не понимаете что, и почему у меня тут не работает!" ;о)), а все просто, ваше ТУТ для нас ТАМ. ;)
← →
Anatoly Podgoretsky © (2005-06-29 13:45) [29]sniknik © (29.06.05 13:40) [28]
Я знал, знал что они обманывают, но не до такой же степени, и за кого они нас держут.
← →
sniknik © (2005-06-29 13:55) [30]мало того, что обманывают, они еще и игнорируют когда пытаешся обьяснить. ;( ведь с самого начала говорил,
и кстати точное имя драйвера говорил, не игнорировали бы, не понадобилось бы переспрашивать.
← →
Anatoly Podgoretsky © (2005-06-29 14:10) [31]sniknik © (29.06.05 13:55) [30]
А может это диверсанты?
← →
sniknik © (2005-06-29 14:17) [32]точно диверсанты, диверсии по отниманию рабочего времени... они и вопросы составляют именно так чтобы отвечающий побольше этого самого времени "убил" на него. ;)
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2005.08.07;
Скачать: [xml.tar.bz2];
Память: 0.53 MB
Время: 0.036 c