Beruflich Dokumente
Kultur Dokumente
CHAPTER 2: ARCHITECTURE
Objectives
The objectives are:
Introduction
Application Integration Framework (AIF) helps companies integrate Microsoft
Dynamics AX with external business processes and partners through the
exchange of XML over various transport media.
As mentioned in the "Architecture lesson" of Chapter 1: Introduction to Services
and Application Integration Framework all services are WCF based and hosted
on AOS. When intranet communication is needed for services that are using IIS,
the requests are routed to AOS for processing. Inbound and outbound messages
can take advantage of message transforms or value substitutions when they are
configured to do this.
2-1
2-2
Service types
Chapter 2: Architecture
Service operations
Service groups
You can customize service and data contracts by selecting the set of
service operations that are exposed when you create the data policies.
2-3
2-4
Chapter 2: Architecture
Parallelism
To improve performance for data exchange by using asynchronous adapters, AIF
supports parallelism. Parallelism specifies that inbound messages are processed
by one or more AOSs without regard to the order in which they are received or
produced. This helps you scale out message processing by adding multiple
AOSs. Note that you can enable parallelism only for inbound channels.
Parallel processing in AIF is implemented on a channel-by-channel basis. Follow
these steps to implement parallel processing.
1. Click System Administration > Setup > Services and Application
Integration Framework > Inbound Port or System
Administration > Setup > Services and Application Integration
Framework > Outbound Port.
2. Select a channel and select the Process requests in parallel check
box.
Conversational parallelismalso known as ordered parallelismmeans that you
can specify certain messages to be processed sequentially in a channel, even
when parallelism is enabled for that channel. This is done by including a special
XML element called <ConversationId> in the messages that require sequential
processing. All messages with the same ConversationId will then be processed
sequentially.
NOTE: If you do not select the Parallel processing field in the Channels form,
all inbound messages for a particular endpoint will be processed sequentially
and the <ConversationId> element in a message is ignored.
2-5
2-6
Chapter 2: Architecture
Service Groups
Developers can group services and service operations that are managed and
consumed together into a service group. All the services in a service group are
published through a basic port, in a single WSDL file. The WSDL contains all
service and data contracts for the service operations of the service group, which
simplifies developing the code that consumes services.
NOTE: A Web Service Description Language (WSDL) file defines the operations
that are available for a service.
Developers can create a service group in the Application Object Tree (AOT).
Developers can use the AutoDeploy property to specify whether the service
groups that they create are automatically deployed and activated when they are
created. Developers must manually deploy and activate any service groups that
are not automatically activated.
NOTE: Service groups are associated only with basic integration ports.
Topology
There are certain factors to consider when you plan the topology of services and
Application Integration Framework (AIF).
Adapters
In Microsoft Dynamics AX 2012 services and Application Integration
Framework (AIF), integration ports use adapters. These adapters enable
Microsoft Dynamics AX to communicate by using various transport protocols.
Microsoft Dynamics AX 2012 provides the following four adapters that represent
predefined bindings:
NOTE: Web Services should in general never be deployed by using basic HTTP
binding. HTTPS bindings or similar, should be selected even for internal use.
When you use the HTTP binding, all data will travel unencrypted and can be
read by anyone on the same segment on the network.
2-7
Performance Improvements
The following list describes enhancements in services and AIF that result in
improved performance:
2-8
Chapter 2: Architecture
Usability
New usability features of services and Application Integration Framework (AIF)
are added to Microsoft Dynamics AX 2012. The following are components of the
new features.
Office Add-ins
The new add-in for Microsoft Excel and Microsoft Word help users to view,
analyze, and update information in Microsoft Dynamics AX. The Microsoft
Excel add-in has built-in support for consuming document services for updating
data.
BudgetTransaction
EMSMeterReading
EMSSubstanceFlow
GeneralJournal
ProductionPickingList
ProjectHourJournalS
SysImportBusSector
VendGroup
VendRequestSignup
Additional services can be constructed to extend the scenarios in which Excel can
be used to update, create, and delete business data in Microsoft Dynamics AX.
NOTE: The configuration of integration ports for Excel import is a specific
example of the procedures that are used to configure any integration port.
2-9
2-10
For file-based integrations, the account for the AOS must have
read/write permissions for the file share. The file share must not be
an administrative share, such as shares that contain a dollar sign ($).
All ports must be activated and tested. For ports that are based on
NetTCP and HTTP, the Web Service Description Language (WSDL)
files must be published. Additionally, a client must be able to start
the service through service calls. For ports that are based on the file
system adapter or the MSMQ adapter, the corresponding scenario
must be tested.
Chapter 2: Architecture
Procedure: Export the Integration Port Configuration Data
Use the following procedure to export the integration port configuration data.
1. Create a new definition group for exports. Click System
administration > Common > Data export/import > Definition
groups.
a. Click New.
b. Enter a unique name for the group into the Definition group
field.
c. Optionally enter a description.
d. Click the Options tab and clear all the check boxes.
e. Click the Include table groups tab and clear all the check boxes.
f. Click OK.
2. Select tables for the definition group by clicking Select tables.
a. Click Add, and then for inbound ports, select AifInboundPort
in the Name of table field.
b. Select Include document references and Specify related tables
check boxes.
c. Click the Select related tables button. On the Select related
tables form, select the desired related tables to include and then
click Close.
d. Optionally, add export criteria by selecting the Apply criteria
check box, and then click Export criteria. Enter the desired
filter criteria and then click OK.
e. Close the Select tables form.
3. Export the data to a local or network file share by clicking Export to
on the Definition groups form. Select the file name and path, and
then select the file type. Click OK to export the data to the specified
file.
4. Close the Definition group form.
5. Repeat steps 1 through 4, using AifOutboundPort in the Name of
table field in step 2.a instead of AifInboundPort.
NOTE: During export, you might receive the following message:
"TableDirPartyCollection was not found." If you receive this message, add
export criteria, which is described in Step 3 of the "Export the Integration Port
Data" procedure, to export only new and customized ports.
2-11
Change Tracking
In Microsoft Dynamics AX 2012, you can configure the database to keep track of
when changes happen at the table level. When so configured, you can use the
getChangedKeys service operation to retrieve entity keys for only those
documents that have changed based on certain criteria, such as a specified date
and time.
Change tracking must be enabled in the database for the database tables that are
used by the document service. To do this, you will need to configure change
tracking. To retrieve the entity keys for documents that were changed, you must
publish the getChangedKeys service operation through an integration port.
Additionally, you will need to create a document filter and add filtering criteria.
NOTE: You can use change tracking only if the document service is exposed
through an inbound enhanced integration port.
IMPORTANT: You must create at least one document filter. Otherwise, no entity
keys are returned from the getChangedKeys service operation.
2-12
Chapter 2: Architecture
Once enabled, you can use change tracking in two ways:
2-13
Replacing a surrogate foreign key with the natural key for a specific
table relationship so that the final service contract has user-friendly
readable fields instead of Surrogate Foreign Keys (SFK).
The create and update document service wizards have been updated to generate
code that includes the previous changes.
2-14
Chapter 2: Architecture
Summary
Application Integration Framework (AIF) helps companies integrate Microsoft
Dynamics AX and communicate with external business processes and other
enterprise applications within and outside the boundaries of the business through
the exchange of XML over various transport media.
2-15
2-16
Chapter 2: Architecture
2.
3.
2-17
Solutions
Test Your Knowledge
1. Which of the following can not be a basic port?
() Outbound
( ) Inbound
( ) Endpoint
( ) Startpoint
2. Which of the following Axd document service operations are available in
AIF? (Select all that apply)
() Create
() Read
() Update
() keysFind
3. Which of the following is not a service type?
( ) Custom services
( ) Document services
() NetTCP services
( ) System services
4. Which of the following best describes synchronous and asynchronous
transports? (Select all that apply)
() Requests are tightly coupled to responses.
() Requests are placed into a queue, called the gateway queue.
( ) Invoke business logic by using preprocessing options.
( ) Requests develop new file links by using post-processing.
2-18