Buscar en este blog

lunes, 23 de marzo de 2015

Escribir XML desde Microsoft Dynamics Ax 2012

Una forma rápida de crear un xml desde Ax 2012 en un job.

static void CreaXML(Args _args)
{
    XMLDocument xmlDoc;
    XMLNode nodeRoot, commentNode;

    XMLNode RespuestaOVNodo;
    XMLNode OrdenVentaNodo;
    XMLNode RemisionNodo;
    XmlNode ProcesoCompletoNodo;
    XmlNode MensajeError;
    boolean _procesoCompleto;

    FileName xmlFileName;
    ;

    xmlDoc = XMLDocument::newBlank();
    nodeRoot = xmlDoc.documentElement();
    _procesoCompleto = false ;

    RespuestaOVNodo = xmlDoc.appendChild(xmlDoc.createElement( 'RespuestaOV' ));
    ProcesoCompletoNodo = RespuestaOVNodo.appendChild(xmlDoc.createElement( 'ProcesoCompleto' ));

    if (_procesoCompleto)
    {
        ProcesoCompletoNodo.text( "1" );
        OrdenVentaNodo = RespuestaOVNodo.appendChild(xmlDoc.createElement( 'NoOrdenVenta' ));
        OrdenVentaNodo.text( "ORV_000000094" );
        RemisionNodo = RespuestaOVNodo.appendChild(xmlDoc.createElement( 'NoRemision' ));
        RemisionNodo.text( "REM_000000055" );
    }
    else
    {
        ProcesoCompletoNodo.text( "0" );
        MensajeError = RespuestaOVNodo.appendChild(xmlDoc.createElement( "Error" ));
        MensajeError.text( "El cliente no existe" );
    }
    //info(strfmt("cadena xml: %1", xmlDoc.toString()));   // para usarlo como cadena


    // escribir el xml sobre un archivo
    xmlFileName= @'C:\TEMP\MyXML.XML' ;
    new FileIoPermission(xmlFileName, 'rw' ).assert();
    xmlDoc.save(xmlFileName);
    CodeAccessPermission::revertAssert();
}

Este código genera dos tipos de respuestas, cuando es correcta o incorrecta cierta información. El Xml resultante se ve de la siguiente forma:

  


Y por cierto, acuerdate de darle click a algún anuncio si el post te sirvio de algo.


No olvides que te puedes unir a la página en Facebook Aprendiendo Dynamics Ax donde únicamente se tratan temas de desarrollo y se busca crear una comunidad de desarrollador@s de Ax en nuestro idioma. 



No hay comentarios.:

Publicar un comentario