Export (0) Print
Expand All

Application Integration Framework Overview

Application Integration Framework (AIF) is the infrastructure within Microsoft Dynamics AX with which you can exchange data with other systems. AIF enables enterprise application integration scenarios with a variety of transports, including the following:

  • File system

  • Microsoft Message Queuing (MSMQ)

  • Microsoft BizTalk Server 2006

  • Web services

Data is transferred in and out of Microsoft Dynamics AX via XML.

Within the AIF architecture there are two primary areas of functionality—the transport components and the business logic components. Although transport functionality is separate from the business logic, the two are closely related.

Application Integration Framework architecture

Reproduced by permission from Greef, Pontoppidan, et al, Inside Microsoft Dynamics AX 4.0 (Redmond, WA: Microsoft Press, 2006)

The AIF architecture showing the transport layers above and the business logic layers below.

The transport components handle the transfer of business logic in the form of XML documents in and out of the system. The elements of the transport layer define how data is exchanged, including the source of the data, the destination of the data, and how it's transported. These elements include the following, which are in the order that they would be set up in an exchange:

  • Local endpoints

  • Transport adapters

  • Channels

  • Actions

  • Endpoints

  • Endpoint action policies

  • Endpoint action data policies

  • Queues

  • Global settings

  • Pipeline settings

  • Value mapping

The transport layer is implemented in Microsoft Dynamics AX through the forms that you use to configure AIF. To implement a document exchange, configure the transport functionality that ships with Microsoft Dynamics AX for your specific environment and document exchange. For more information about configuring AIF transport elements, see Configuring document exchanges.

The business logic component of document exchange consists of the data, its format, and the business rules that govern that data. This business logic is exposed by two sets of classes—the base classes and the classes in the XML Document Framework.

Base Classes

The AxdBase and AxdInternalBase base classes are the foundation of the Microsoft Dynamics AX business logic type hierarchy. They are described as follows:

  • AxdBase – The base class of all the Axd<Document> classes. All new documents inherit from this class. The AxdBase class enables you to serialize and deserialize XML to and from tables in Microsoft Dynamics AX. This class implements the AifServiceable interface. This interface enables any derived class to be externally available through Web services or through the AIF transport layer. The AxdSalesOrder class is an example of a class that inherits from the AxdBase class.

    The AxdBase class exposes a number of methods that support the ability to create and read XML. The create methods create records in the Microsoft Dynamics AX database from XML. The read methods retrieve data from the database and return it as XML. The read and create methods implement their functionality by calling the AxdBaseRead and AxdBaseCreate classes, respectively.

  • AxdInternalBase – This class provides a further level of abstraction for a table and contains all the functionality of a table. Classes that inherit from AxdInternalBase contain all the table methods, properties, and settings. The Microsoft Dynamics AX classes that are derived from AxdInternalBase typically implement validation, value substitution, and data defaulting.

The AxdBase instance classes read and write to database tables by using the AxdInternalBase instance classes. For example, the AxdSalesOrder class (which implements the AxdBase class) overrides the prepareForSave method and accesses the SalesTable table through the AxSalesTable class (which implements the AxdInternalBase class).

XML Document Framework

The XML Document Framework consists of the document classes that implement the business logic for individual documents in Microsoft Dynamics AX. This framework contains two types of classes—the Axd<Document> classes (also referred to as an Axd class) and the Ax<Table> classes. They are described as follows:

  • Axd <Document> – Presents XML data as an electronic document. As a group, these classes provide a layer of abstraction from the complexity of the underlying tables and enable developers to implement business logic and error handling at the document level. Each Axd<Document> class has an associated query and can represent data from multiple tables. The Axd<Document>class can also be used to generate an XML schema that describes the document based on its associated query.

    The Axd<Document> classes provide an external application object that represents data in Microsoft Dynamics AX. These classes eliminate the need for an external system that is exchanging data to be aware of the Microsoft Dynamics AX data model or business rules.


    The Axd<Document> class encapsulates the functionality of a document. The terms "Axd<Document> class" and "document" are therefore often used interchangeably.

  • Ax <Table> – Inherits from the AxInternalBase class and represents a single table in the AOT. As a group, these classes handle all interaction with the base tables and encapsulate any table-specific business logic. Therefore, the calling application doesn't require information about the Microsoft Dynamics AX table structures or database business rules. The Axd<Document>classes always use the Ax<Table> classes to read or write to the underlying tables.

Exchanging Data With AIF

Community Additions

© 2014 Microsoft