AXForum  
Вернуться   AXForum > Microsoft Dynamics NAV > NAV: Администрирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 25.03.2005, 13:56   #1  
DimCorso is offline
DimCorso
Участник
 
2 / 10 (1) +
Регистрация: 22.02.2005
Добрый день!

Пытаюсь через ADO из-под 1С подключиться к Навижновской базе. Создал udl-файл. Подключился, структуру таблиц базы увидел. А все запросы выдают ошибку...

Например:
SELECT *
FROM Currency;
Результат:
Microsoft OLE DB Provider for ODBC Drivers: [Navision Software a/s][Navision Financials ODBC Driver]Table does not exists

Не подскажете, в чем может быть проблема?
Старый 25.03.2005, 17:06   #2  
DimCorso is offline
DimCorso
Участник
 
2 / 10 (1) +
Регистрация: 22.02.2005
Причем подключаясь к навижну через аксесс все запросы работают...
Старый 25.07.2005, 15:23   #3  
Glazz is offline
Glazz
Участник
 
12 / 10 (1) +
Регистрация: 25.07.2005
Цитата:
Сообщение от DimCorso
Добрый день!

Пытаюсь через ADO из-под 1С подключиться к Навижновской базе. Создал udl-файл. Подключился, структуру таблиц базы увидел. А все запросы выдают ошибку...

Например:
SELECT *
FROM Currency;
Результат:
Microsoft OLE DB Provider for ODBC Drivers: [Navision Software a/s][Navision Financials ODBC Driver]Table does not exists

Не подскажете, в чем может быть проблема?

зачем udl файл?
<div class='v7top'>1Cv7</div><div class='v7'>
Соединение=СоздатьОбъект&#40;"ADODB.Connection"&#41;;
СтрокаКоннекта="driver={SQL Server};server=sql;uid=sa;pwd=пароль;Database=navision";
Соединение.ConnectionTimeOut=200;
Соединение.CursorLocation=3;
Попытка
&nbsp;Соединение.Open&#40;СтрокаКоннекта&#41;;
Исключение
&nbsp;Предупреждение&#40;"Невозможно установить соединение с базой данных!"&#41;;
&nbsp;Возврат 0;
КонецПопытки;</div>

Да и Navision дает имена таблицам по шаблону ИмяФирмы$ИмяТаблицыИзДизайнера.
Кусок из 1С ки:
<div class='v7top'>1Cv7</div><div class='v7'>
Функция ТипПараметра&#40;SQLStrType &#41; &nbsp;Экспорт
&nbsp;Тип = НРег&#40;SQLStrType&#41;;
&nbsp;Если Тип = "empty" тогда Возврат 0;
&nbsp;иначеесли Тип = "boolean" тогда Возврат 11;
&nbsp;иначеесли Тип = "integer" тогда Возврат 3;
&nbsp;иначеесли Тип = "int" тогда Возврат 3;
&nbsp;иначеесли Тип = "tinyint" тогда Возврат 16;
&nbsp;иначеесли Тип = "smallint" тогда Возврат 2;
&nbsp;иначеесли Тип = "bigint" тогда Возврат 20;
&nbsp;иначеесли Тип = "numeric" тогда Возврат 131; &nbsp; &nbsp;
&nbsp;иначеесли Тип = "double" тогда Возврат 5; &nbsp; &nbsp;
&nbsp;иначеесли Тип = "date" тогда Возврат 7; &nbsp; &nbsp;
&nbsp;иначеесли Тип = "char" тогда Возврат 129;
&nbsp;иначеесли Тип = "varchar" тогда Возврат 200; &nbsp; &nbsp;
&nbsp;иначеесли Тип = "unsignedtinyint" тогда Возврат &nbsp; 17;
&nbsp;иначеесли Тип = "unsignedsmallint" тогда Возврат &nbsp;18;
&nbsp;иначеесли Тип = "unsignedint" тогда Возврат 19;
&nbsp;иначеесли Тип = "unsignedbigint" тогда Возврат &nbsp; 21;
&nbsp;иначеесли Тип = "single" тогда Возврат 4;
&nbsp;иначеесли Тип = "currency" тогда Возврат 6;
&nbsp;иначеесли Тип = "decimal" тогда Возврат 14;
&nbsp;иначеесли Тип = "error" тогда Возврат 10;
&nbsp;иначеесли Тип = "userdefined" тогда Возврат 132;
&nbsp;иначеесли Тип = "variant" тогда Возврат 12;
&nbsp;иначеесли Тип = "idispatch" тогда Возврат 9;
&nbsp;иначеесли Тип = "iunknown" тогда Возврат 13;
&nbsp;иначеесли Тип = "guid" тогда Возврат 72;
&nbsp;иначеесли Тип = "dbdate" тогда Возврат 133;
&nbsp;иначеесли Тип = "dbtime" тогда Возврат 134;
&nbsp;иначеесли Тип = "dbtimestamp" тогда Возврат 135;
&nbsp;иначеесли Тип = "bstr" тогда Возврат 8;
&nbsp;иначеесли Тип = "longvarchar" тогда Возврат 201;
&nbsp;иначеесли Тип = "wchar" тогда Возврат 130;
&nbsp;иначеесли Тип = "varwchar" тогда Возврат 202;
&nbsp;иначеесли Тип = "longvarwchar" тогда Возврат 203;
&nbsp;иначеесли Тип = "binary" тогда Возврат 128;
&nbsp;иначеесли Тип = "varbinary" тогда Возврат 204;
&nbsp;иначеесли Тип = "longvarbinary" тогда Возврат &nbsp; 205;
&nbsp;иначе возврат 0;
&nbsp;конецесли;
КонецФункции


Процедура ДалаемСклоненияВЕбижене&#40;&#41; &nbsp; &nbsp;
ИмяТаблицы="KadrTabSklon"; &nbsp; &nbsp;
ТекстЗапроса="SELECT Tip,Name,Flzap FROM ["+ИмяБазы+ИмяТаблицы+"] "; &nbsp; &nbsp;
Запрос=СкомпилироватьЗапрос&#40;Соединение,ТекстЗапроса&#41;; &nbsp; &nbsp;
&nbsp;
ТекстОбновления="UPDATE ["+ИмяБазы+ИмяТаблицы+"] SET NameD=?, NameV=?, NameT=?, Flzap=0 WHERE Tip=? AND Name=?"; &nbsp; &nbsp;
ЗапросОбновления=СкомпилироватьЗапрос&#40;Соединение,ТекстОбновления&#41;; &nbsp; &nbsp;
&nbsp;
NameD=ЗапросОбновления.CreateParameter&#40;"P1", ТипПараметра&#40;"Char"&#41;, input,240&#41;; &nbsp; &nbsp;
NameV=ЗапросОбновления.CreateParameter&#40;"P2", ТипПараметра&#40;"Char"&#41;, input,240&#41;; &nbsp; &nbsp;
NameT=ЗапросОбновления.CreateParameter&#40;"P3", ТипПараметра&#40;"Char"&#41;, input,240&#41;; &nbsp; &nbsp;
Tip=ЗапросОбновления.CreateParameter&#40;"P4", ТипПараметра&#40;"Integer"&#41;, input,&#41;; &nbsp; &nbsp;
Name=ЗапросОбновления.CreateParameter&#40;"P5", ТипПараметра&#40;"Char"&#41;, input,240&#41;; &nbsp; &nbsp;
&nbsp; &nbsp;
ЗапросОбновления.Parameters.Append&#40;NameD&#41;; &nbsp; &nbsp;
ЗапросОбновления.Parameters.Append&#40;NameV&#41;; &nbsp; &nbsp;
ЗапросОбновления.Parameters.Append&#40;NameT&#41;; &nbsp; &nbsp;
ЗапросОбновления.Parameters.Append&#40;Tip&#41;; &nbsp; &nbsp;
ЗапросОбновления.Parameters.Append&#40;Name&#41;; &nbsp; &nbsp;
&nbsp;
НаборЗаписей=Запрос.Execute&#40;&#41;; &nbsp; &nbsp; &nbsp;
Если НаборЗаписей.EOF&#40;&#41; = 0 Тогда &nbsp; &nbsp;
&nbsp; НаборЗаписей.MoveFirst&#40;&#41;; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; Пока НаборЗаписей.EOF&#40;&#41; = 0 Цикл &nbsp; &nbsp;
&nbsp; &nbsp;Тип=Число&#40;НаборЗаписей.Fields&#40;0&#41;.Value&#41;; &nbsp; &nbsp;
&nbsp; &nbsp;Стр=СокрЛП&#40;НаборЗаписей.Fields&#40;1&#41;.Value&#41;; &nbsp; &nbsp;
&nbsp;ФлагЗаполнения=НаборЗаписей.Fields&#40;2&#41;.Value;

&nbsp; ... &nbsp;и т.д.
&nbsp; Если ..
&nbsp; &nbsp;ЗапросОбновления.Execute&#40;&#41;;
&nbsp; КонецЕсли; &nbsp; &nbsp;

&nbsp;НаборЗаписей.MoveNext&#40;&#41;; &nbsp; &nbsp; &nbsp;
КонецЦикла; &nbsp; &nbsp;</div>
и т.п.
Старый 25.07.2005, 15:36   #4  
SVG is offline
SVG
Участник
 
201 / 10 (1) +
Регистрация: 15.11.2004
Glazz
что за "Ебижен" ? наезд или повод для драки?
Старый 25.07.2005, 16:07   #5  
Yoil is offline
Yoil
NavAx
NavAx Club
Лучший по профессии 2017
Лучший по профессии 2009
 
1,574 / 70 (6) ++++
Регистрация: 20.11.2002
Адрес: Msk
Па-любому наезд пацаны!
__________________
"Моей лошадке ядрышком полмордочки снесло..."
А.В.Суворов, письма к дочери
Старый 25.07.2005, 16:09   #6  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Спокойствие, только спокойствие.
Не надо религиозных войн...
__________________
полезное на axForum, github, vk, coub.
Старый 05.08.2005, 11:21   #7  
semensemenich is offline
semensemenich
Участник
 
15 / 10 (1) +
Регистрация: 12.04.2011
Есть AddOn к Navision - XML-DEM, с помощью его можно организовывать выгрузку и загрузку в XML формате. Для него созданы шаблоны обмена с разными программами, в том числе есть и для 1С. В отличии от работы напрямую с базой в XML-DEM при импорте можно выполнять триггеры OnInsert, Validate тем самым поддерживая целостность данных без особых затрат. Настраивается все легко.
Пдробнее http://www.pbiz.ru/DEM/navision_1s/navision_1s.htm
Старый 25.08.2005, 18:09   #8  
Che_imported is offline
Che_imported
Участник
 
2 / 10 (1) +
Регистрация: 25.08.2005
Thumbs up
У нас есть задача по ежедневному обмену торговыми документами между Navision и 1С Бухгалтерия. С помощью ADO реализовать это очень сложно. Какие еще есть варианты интеграции? Кто-нибудь уже работал с XML-DEM, насколько сложно самостоятельно его настроить?
Старый 26.08.2005, 12:05   #9  
Dzemon is offline
Dzemon
Moderator
 
1,247 / 12 (3) ++
Регистрация: 09.09.2004
Обмен XML-файлами сделать очень просто, но трудоемко (разные варианты обработки документов). Производительность хорошая.
Старый 26.08.2005, 13:30   #10  
Sharky is offline
Sharky
Участник
 
118 / 10 (1) +
Регистрация: 10.12.2002
Я делал на одном из проектов (розница)
передачу данных из Navision в 1С

Передавали документы закупки и реализации.

Выгрузка - тектовый файл
загрузка в 1С - обработчик текстового файла, вроде нормально работает, да в принципе и разработка то не сложная совсем
Старый 29.08.2005, 15:36   #11  
Che_imported is offline
Che_imported
Участник
 
2 / 10 (1) +
Регистрация: 25.08.2005
Нам надо в процессе обмена, при создании нового документа в 1с, автоматически создавать как новых контрагентов, так и новые товары, если их еще нет в системе, соответственно данные по ним надо выгружать из Navision. Причем всех контрагентов и товары не надо, а только тех, которые есть в передаваемых документах. Если настраивать это через текстовые файлы, мне кажется, очень сложно будет. Для каждого элемента в файлах обмена надо будет писать свой код сохранения, поиска и выборки данных. XML в этом случае выглядит более удобным форматом.

To Dzemon:
Что значит «сделать очень просто, но трудоемко»? Можно поподробнее? Поделитесь опытом, пожалуйста.
Старый 29.08.2005, 16:51   #12  
Dzemon is offline
Dzemon
Moderator
 
1,247 / 12 (3) ++
Регистрация: 09.09.2004
Это значит, что логика процесса довольно простая, но нужно обработать критические ситуации, проверку/поиск документов и справочников. Много кода получается.
Старый 30.08.2005, 10:57   #13  
semensemenich is offline
semensemenich
Участник
 
15 / 10 (1) +
Регистрация: 12.04.2011
**** Удалено на основании пункта 4.7 правил ****
Старый 30.08.2005, 11:01   #14  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
SergH, реклама допустима ТОЛЬКО в разделе Коммерческие предложения!
Если есть желание расскажите здесь о вашем решении.
Расскажите какие принципы заложены, какие функции есть.
Но коммерческая реклама только в соответствующем разделе.
__________________
полезное на axForum, github, vk, coub.
Старый 02.09.2005, 18:24   #15  
semensemenich is offline
semensemenich
Участник
 
15 / 10 (1) +
Регистрация: 12.04.2011
To Mazzy:
В разделе коммерческие предложения размещено описание универсального решения по обмену данными. Коммерческие предложения

To Che:
Задача о которой Вы пишете, может быть решена достаточно легко с помощью инструмента XML-DEM для Navision и Менеджера Обмена Данными (МОД) для программы 1С. Оба этих инструмента поддерживают выгрузку и загрузку связанных данных, т.е., например, заказа продажи в виде шапки и табличной части и всех необходимых данных из таблиц, на которые есть ссылки: Клиент, Адреса Доставки, Товары, Единицы измерения и пр. При этом предусматривается синхронизация уже имеющихся данных по уникальным реквизитам, т.е. запись добавляется только в том случае, если она отсутствует в системе, если запись уже есть, то обновляются данные в этой записи. Все это настраивается легко, не прибегая к программированию.
В XML-DEM уже есть готовый шаблон для выгрузки из Navision Заказа Продажи и загрузки его в 1С в виде Расходной Накладной. Его можно использовать для дальнейшей настройки применительно к Вашим условиям.
 


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 21:15.