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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 25.01.2006, 09:59   #1  
Greggy_imported is offline
Greggy_imported
Участник
Аватар для Greggy_imported
 
291 / 10 (1) +
Регистрация: 24.09.2004
Здравствуйте! На данный момент изучаю эту область. Насколько я понял большинство не пользуется XML портами а пользуются XML DOM. Если возможно подскажите как к нему достучаться из Навижн, и если можно рускоязычную документацию. Заранее извиняюсь м/б за глупые вопросы, и заранее благодарен
Старый 25.01.2006, 12:23   #2  
Dzemon is offline
Dzemon
Moderator
 
1,247 / 12 (3) ++
Регистрация: 09.09.2004
Ну все как обычно, создаете переменную Automation со ссылкой на Microsoft XML, v3.0, а дальше по вкусу. Изучайте MSDN.
Старый 25.01.2006, 12:53   #3  
rmv is offline
rmv
Участник
 
481 / 11 (1) +
Регистрация: 15.02.2005
Вот пример кода:

IF ISCLEAR(gXMLDoc) THEN CREATE(gXMLDoc);
//Загрузка файла
gXMLDoc.load(FileName);
lRecr.OPEN(TableNo);
IF ClearTable THEN lRecr.DELETEALL(FALSE);

//корневой элемент
currElem := gXMLDoc.selectSingleNode('root');

//Выборка узлов
tableNodes := currElem.selectNodes('./t[@n='''+ FORMAT(TableNo) + ''']');

//обход дерева
FOR k:=0 TO tableNodes.length -1 DO BEGIN...
Старый 26.01.2006, 18:54   #4  
semensemenich is offline
semensemenich
Участник
 
15 / 10 (1) +
Регистрация: 12.04.2011
Посмотрите addon XML-Data Exchange Manager (XML-DEM), может будет полезен.
Старый 11.01.2007, 18:45   #5  
art06 is offline
art06
Участник
Аватар для art06
 
192 / 10 (1) +
Регистрация: 11.08.2006
Нужна помощь по Импорту из Xml в Nav.


Мне не понятны строчки
lRecr.OPEN(TableNo); // lRecr - тип переменной ? TableNo - ???

'./t[@n='''+ FORMAT(TableNo) + ''']' - что это за строчка ?
Старый 11.01.2007, 20:00   #6  
Dzemon is offline
Dzemon
Moderator
 
1,247 / 12 (3) ++
Регистрация: 09.09.2004
1 - открытие Record Reference на указанную таблицу
2 - а черт его знает ;-) выводит в строку номер таблицы
Старый 12.01.2007, 10:43   #7  
satir is offline
satir
Участник
Аватар для satir
 
77 / 10 (1) +
Регистрация: 09.06.2006
Пример работы с xml dom можно посмотреть в CU 6217,6224-6226 для четверки, в тройке есть аналогичные юниты
Старый 12.01.2007, 13:16   #8  
art06 is offline
art06
Участник
Аватар для art06
 
192 / 10 (1) +
Регистрация: 11.08.2006
пример моего xml

- <XML-12.01.07 Заголовок="Navision LOG">
<Record Polzov="artem" Type_obj="REPORT" ID="50048" Data="12.01.07" Time="12:12:03" />
<Record Polzov="artem" Type_obj="REPORT" ID="50044" Data="12.01.07" Time="12:12:03" />
<Record Polzov="artem" Type_obj="REPORT" ID="50042" Data="12.01.07" Time="12:12:03" />
</XML-12.01.07>

мне необходимо вытянуть эти данные с мою таблицу.

код для получения данных

IF ISCLEAR(XML_Doc_Out) THEN
CREATE(XML_Doc_Out);

XML_Doc_Out.load('C:\test.xml');

XMLCurrNode_Out := XML_Doc_Out.documentElement;

XMLNodeList := XML_Doc_Out.getElementsByTagName(XMLCurrNode_Out.nodeName);

XMLCurrNode_Out2 := XMLNodeList.item(0);

Znach := XMLCurrNode_Out2.attributes.getNamedItem('Polzov').text;
MESSAGE(Znach);

на строчке Znach := XMLCurrNode_Out2.attributes.getNamedItem('Polzov').text - выдает ошибку - что переменная Automation не инициализирована. Почему ????
Старый 12.01.2007, 14:10   #9  
art06 is offline
art06
Участник
Аватар для art06
 
192 / 10 (1) +
Регистрация: 11.08.2006
Вопрос снимается !!! Все уже получилось
 


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

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

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