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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 27.01.2015, 16:28   #1  
Varik is offline
Varik
Участник
 
9 / 10 (1) +
Регистрация: 15.02.2011
Dynamics Nav 2013R2.

Создаю при помощи дотнета XML-файл.
Используя функцию AddAttribute кодюнита XML DOM Management для добавления атрибута по типу xsi:noNamespaceSchemaLocation в результирующем файле получаю только noNamespaceSchemaLocation, без xsi:. Такое происходит для любого атрибута, содержащего xsi:.
Ктото знает как это побороть? Подскажите, плиз.
Старый 27.01.2015, 17:16   #2  
Smart is offline
Smart
Участник
 
51 / 13 (1) ++
Регистрация: 09.06.2005
Могу предложить без CU

XMLAttributeNode := XMLDoc.createAttribute('xmlns:xsi');
XMLAttributeNode.value := 'http://www.w3.org/2001/XMLSchema-instance';

Name DataType Subtype Length
XMLAttributeNode Automation 'Microsoft XML, v6.0'.IXMLDOMAttribute
XMLDoc Automation 'Microsoft XML, v6.0'.DOMDocument60
Старый 27.01.2015, 17:56   #3  
Varik is offline
Varik
Участник
 
9 / 10 (1) +
Регистрация: 15.02.2011
Цитата:
Сообщение от Smart Посмотреть сообщение
Могу предложить без CU

XMLAttributeNode := XMLDoc.createAttribute('xmlns:xsi');
XMLAttributeNode.value := 'http://www.w3.org/2001/XMLSchema-instance';

Name DataType Subtype Length
XMLAttributeNode Automation 'Microsoft XML, v6.0'.IXMLDOMAttribute
XMLDoc Automation 'Microsoft XML, v6.0'.DOMDocument60

В 2013 навике нужно использовать DotNet вместо Automation.
В Automation раньше все отрабатывало нормально. В дотнэте видимо чтото нужно еще сделать, а что, пока не знаю.
Старый 27.01.2015, 18:07   #4  
Smart is offline
Smart
Участник
 
51 / 13 (1) ++
Регистрация: 09.06.2005
Сорри, не заметил про 2013R2
Старый 04.02.2015, 12:18   #5  
Васыо is offline
Васыо
Участник
 
316 / 12 (1) ++
Регистрация: 15.11.2006
Подскажите, как получить префикс пространства имен?
делаю так:
Код:
CREATE(exportDoc);         //<- export.xml
xmlMgt.SetNormalCase;
xmlProcessingInst:=exportDoc.createProcessingInstruction('xml','version="1.0" encoding="UTF-8"');
RootNode := exportDoc.appendChild(xmlProcessingInst);
RootNode := exportDoc.createElement('V8Exch:_1CV8DtUD');
RootNode := exportDoc.appendChild(RootNode);
xmlMgt.AddAttribute(RootNode,'xmlns:V8Exch','http://www.1c.ru/V8/1CV8DtUD/');
xmlMgt.AddAttribute(RootNode,'xmlns:core','http://v8.1c.ru/data"');
xmlMgt.AddAttribute(RootNode,'xmlns:v8','http://v8.1c.ru/8.1/data/enterprise/current-config');
xmlMgt.AddAttribute(RootNode,'xmlns:xs','http://www.w3.org/2001/XMLSchema');
xmlMgt.AddAttribute(RootNode,'xmlns:xsi','http://www.w3.org/2001/XMLSchema-instance');
  xmlMgt.AddElement(RootNode,'Data','','V8Exch',NewChild);
  Node_Data:=NewChild;
получаю <Data xmlns="V8Exch"/>, а надо <V8Exchata/>
Старый 05.02.2015, 17:44   #6  
Васыо is offline
Васыо
Участник
 
316 / 12 (1) ++
Регистрация: 15.11.2006
Код:
  xmlMgt.AddElement(RootNode,'V8Exch:Data','','V8Exch',NewChild);
  Node_Data:=NewChild;
дает в итоге <V8Exchata xmlns:V8Exch="V8Exch">, что тоже не то, надо просто <V8Exchata>
 

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

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

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

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