Create XML in AX



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

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

    K3XMLDataContract  dataContract = new K3XMLDataContract();

    // 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.
Join us.

Blog Tags