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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 18.10.2012, 08:15   #1  
Player1 is offline
Player1
Участник
Самостоятельные клиенты AX
 
306 / 137 (5) +++++
Регистрация: 21.04.2008
XML Export
Ax 3.0 при выгрузке таблицы в xml, если в данных поля таблицы имеются русские буквы вылазит ошибка, как быть?
Цитата:
Метод 'save' в COM-объекте класса 'microsoft.xmldom' возвратил код ошибки 0x80004005 (E_FAIL), который означает: Не удается сохранить знак в кодировке "iso-8859-1".
Старый 18.10.2012, 09:58   #2  
kaw is offline
kaw
Участник
 
122 / 35 (2) +++
Регистрация: 23.03.2004
Адрес: Новосибирск
Нужен Ваш код.

Посмотрите:
XML
Проблема с сохранением XML
За это сообщение автора поблагодарили: Player1 (1).
Старый 18.10.2012, 10:31   #3  
Player1 is offline
Player1
Участник
Самостоятельные клиенты AX
 
306 / 137 (5) +++++
Регистрация: 21.04.2008
вот код
X++:
    XmlDocument doc = new XMLDocument();
    XmlElement  nodeXml;
    XmlElement  nodeTable;
    XmlElement  nodeItem;
    XmlElement  nodeExtItem;
    XmlElement  nodeName;
    XmlElement  nodeItemName;
    XmlElement  nodeModelGroup;
    XmlElement  nodeDimGroup;

    InventTable inventTable;

    #define.filename("d:\\xml\\test.xml")
    ;

    doc     = XmlDocument::newBlank();
    nodeXml = doc.createElement("xml");
    doc.appendChild(nodeXml);

    while select inventTable
    {
        nodeTable = doc.createElement(tablestr(InventTable));
        nodeTable.setAttribute( fieldstr(InventTable, RecId), int2str(inventTable.RecId) );

        nodeXml.appendChild(nodeTable);
        //
        nodeExtItem = doc.createElement( fieldstr(InventTable, ExternalItemId) );
        nodeExtItem.appendChild( doc.createTextNode(inventTable.ExternalItemId) );

        nodeTable.appendChild(nodeExtItem);
        //
        nodeItem = doc.createElement( fieldstr(InventTable, ItemId) );
        nodeItem.appendChild( doc.createTextNode(inventTable.ItemId) );

        nodeTable.appendChild(nodeItem);
    }
    doc.save(#filename);
Старый 18.10.2012, 11:31   #4  
kaw is offline
kaw
Участник
 
122 / 35 (2) +++
Регистрация: 23.03.2004
Адрес: Новосибирск
т.е. ссылки не помогли решить проблему ?!

А если упростить код:
X++:
select inventTable
{
        nodeTable = doc.createElement(tablestr(InventTable));
        nodeTable.setAttribute( fieldstr(InventTable, RecId), int2str(inventTable.RecId) );

        nodeXml.appendChild(nodeTable);
        //
        nodeExtItem = doc.createElement( fieldstr(InventTable, ExternalItemId) );
        //nodeExtItem.appendChild( doc.createTextNode(inventTable.ExternalItemId) );
        nodeExtItem.appendChild( doc.createTextNode('00001'));

        nodeTable.appendChild(nodeExtItem);
        //
        nodeItem = doc.createElement( fieldstr(InventTable, ItemId) );
        //nodeItem.appendChild( doc.createTextNode(inventTable.ItemId) );
        nodeItem.appendChild( doc.createTextNode('00001'));

        nodeTable.appendChild(nodeItem);
    }
работает ?
следующим шагом вместо while select, попробовать выгрузить одну карточку select inventTable.
Старый 18.10.2012, 11:41   #5  
Player1 is offline
Player1
Участник
Самостоятельные клиенты AX
 
306 / 137 (5) +++++
Регистрация: 21.04.2008
Код я выслал не рабочий, с ошибкой из первого сообщения. Сейчас смотрю ваши ссылки где советуют менять encoding.

Если закоментировать заполнение из поля ItemId (в котором есть русские символы), то всё отработает. В ExternalItemId только цифровые значения или пустоты.
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Create XML-Export with AIF ideveloper DAX in English 8 05.03.2012 10:18
Dynamics AX FAQ: How to import and export data in XML format using AIF framework? Blog bot DAX Blogs 0 19.10.2008 18:05
Dynamics AX FAQ: How to import and export data in XML format using Axd classes? Blog bot DAX Blogs 0 18.06.2008 20:05
Dynamics AX FAQ: How to import and export data in XML format using AIF framework? Blog bot DAX Blogs 0 25.03.2008 03:58
Dynamics AX FAQ: How to import and export data in XML format using Axd classes? Blog bot DAX Blogs 0 04.03.2008 06:13

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

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

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