Create XML in AX



static void testWriteXML(Args _args)
{
    XmlNode            docNode,
                       activityIdNode,
                       languageNode;

    XmlDocument        doc;
    XmlElement         messageNode;
    XmlNode            dataNode;
    XmlNode            activityNode;
    str                xmlFileName;

    VKXMLDataContract  dataContract = new VKXMLDataContract();

    // XML Version information
    doc = new XmlDocument();
    docNode = doc.createXmlDeclaration("1.0", 'UTF-8', "");
    doc.appendChild(docNode);

    // Message
    messageNode = doc.appendChild(doc.createElement('Message'));
    messageNode.setAttribute('Id', '1');

    // Message.Activity
    activityNode    = doc.createElement('Activity');
    messageNode.appendChild(activityNode);

    // Message.Activity.Id
    activityIdNode  = doc.createElement('Id');
    activityIdNode.appendChild(doc.createTextNode(enum2Symbol(enumNum(ABC), ABC::B)));
    activityNode.appendChild(activityIdNode);

    // Message.Activity.Language
    languageNode = doc.createElement('Language');
    languageNode.appendChild(doc.createTextNode('EN-US'));
    activityNode.appendChild(languageNode);

    // Message.Data
    dataNode = doc.createElement('Data');
    messageNode.appendChild(dataNode);

    info(doc.outerXml());
    
    // write XML to file
    //xmlFileName = @'C:\testXml.xml';
    //new FileIoPermission(xmlFileName, 'rw').assert();
    //doc.save(xmlFileName);
    //CodeAccessPermission::revertAssert();
}


 

Search

About

DaxOnline.org is free platform that allows you to quickly store and reuse snippets, notes, articles related to Dynamics AX.

Authors are allowed to set their own AdSense units and "buy me a coffee" link.
Join us.

Blog Tags