Инструменты пользователя

Инструменты сайта


axapta:xml

Раздел:Программирование>ВзаимодействиеСОкружением


Здесь собираются сведения про работу с XML из DynamicsAx toc

[[Ax30 | ]]

XML в Axapta - это просто обёртка для MsXML 3.xx., который, в свою очередь - реализация DOM. Работа с MsXml происходит через ActiveX

есть классы для работы через SAX (они начианаются c букв SAX)

соответственно: http://msdn.microsoft.com/xml/ http://zergan.narod.ru/doc/XML_book_G_E_Berman/2.html

а также поискать в яндексе вводный материал по MSXML и DOM

см. также http://axapta.mazzy.ru/lib/xmlpublish/

[[Ax4 | ]]

В Ax4 XML – это обертка над .NET framework (namespace http://msdn2.microsoft.com/en-us/library/system.xml.aspx). Появилось много новых классов, начинающихся с XML, аожтому надо читать доку по Syetm.XML чтоб понять, как оно работает

примеры

Класс/InventJournalData_Loss_RU

Форма/Tutorial_XSL

AxForum: http://www.axforum.info/forums/showthread.php?s=&postid=59849

как сохранить в кодировке 1251

    XMLDocument doc=XMLDocument::newXML('<?xml version="1.0" encoding="windows-1251"?><BranchCompany/>');
    ;
    doc.documentElement().setAttribute("русский", "атрибут");
    doc.save(@'c:\test.xml');
    info("ok");

валидация XML в [[Ax4 | ]]

static void XMLValidate(Args _args)
{
    XMLTextReader               xmlReader = XMLTextReader::newFile(@"C:\somepath\file.xml");
    XMLSchema                   xmlSchema = XMLSchema::newFile(@'C:\1\somepath\schema.xsd');
    XmlSchemaValidationError    validationError;
    ;
 
    xmlReader.read();
    xmlSchema.compile();
 
    if (! xmlSchema.isCompiled())
        throw error(xmlSchema.validationError().message());
 
    validationError = xmlReader.validate(xmlSchema.writeToString());
 
    if (validationError)
        throw error(validationError.message());
}
axapta/xml.txt · Последнее изменение: 2018/04/13 22:43 (внешнее изменение)