Importing from an XML file

The exporting to an XML file recipe has already explained the importance of XML in Dynamics
AX, and how XML documents could be used for exporting data from the system.
In this recipe, we will continue about XML. We will create a piece of code that reads XML files.
As a source file, we will use the previously created accounts.xml file.
How to do it…

1. Open AOT, and create a new class called ReadXmlFile with the following code.
Replace <documents> with your own path (use double backslashes for folder
separation, i.e. \\):
class ReadXmlFile
{
}
public static void main(Args _args)
{
XmlDocument doc;
XmlNodeList data;
XmlElement nodeTable;
XmlElement nodeAccount;
XmlElement nodeName;
#define.filename(‘<documents>\\accounts.xml’)
;
doc = XmlDocument::newFile(#filename);
data = doc.selectNodes(‘//’+tablestr(LedgerTable));
nodeTable = data.nextNode();
while (nodeTable)
{
nodeAccount = nodeTable.selectSingleNode(
fieldstr(LedgerTable, AccountNum));
nodeName = nodeTable.selectSingleNode(
fieldstr(LedgerTable, AccountName));
info(strfmt(
“%1 – %2”,
nodeAccount.text(),
nodeName.text()));
nodeTable = data.nextNode();
}
}
2. Run the class. Infolog should display the contents of the accounts.xml file on
the screen:
How it works…
In this recipe, we first create a new XmlDocument. We create it from the file and hence we
have to use newFile(). Then we get all the document nodes of the table as XmlNodeList.
We also get its first element by calling nextNode().
Next, we loop through all the list elements and do the following:
ff Get an account number node as an XmlElement.
ff Get an account name node as an XmlElement.
ff Display the text of both nodes in Infolog. Normally, this should be replaced with more
sensible code to process the data.
ff Get the next list element.
In this way, we retrieve the data from the XML file. A similar approach could be used to read
any other XML file.

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Dijital Dönüşümünüzü AI İle Hızlandırın

Dynamics 365 ve AI destekli çözümlerle iş süreçlerinizi optimize edin, verinizi anlamlı içgörülere dönüştürün ve büyümenizi sürdürülebilir hale getirin.

AI-Ready Enterprise Partner

Microsoft Dynamics 365 ve yapay zekâ çözümleriyle kurumsal sistemlerinizi güçlendirir, operasyonel karmaşıklığı azaltır ve geleceğe hazır bir mimari tasarlarız.

DMR Göztepe Merkez Ofis

Eğitim Mah. Hızırbey Cad. No:118/5 D:1 Kadıköy İstanbul

Marmara Üniversitesi Göztepe Kampüsü Teknopark

Tel: +90 216 470 79 49

E-posta: info@dmrbt.com

DMR Başıbüyük Ofis

Başıbüyük Mahallesi Süreyyapaşa Başıbüyük Yolu Sk. No: 4/7 Maltepe İstanbul

Marmara Üniversitesi Başıbüyük Kampüsü Teknopark

Tel: +90 216 470 79 49

E-posta: info@dmrbt.com