Custom Services: Use to
expose very simple business entities as a service, or to expose custom logic
from Microsoft Dynamics AX.
This Service enables developers to expose any logic written in x++
through a service interface. The support for Custom Services was introduced in
Dynamics AX 2009, but it was limited to some specific data types. In Microsoft
Dynamics AX 2012 with the integration of Windows Communication Foundation
(WCF), attributes can be set on the Data Contract class to make them serialize
and De-serialize across the network connection.
·
To expose a custom x++ logic.
·
Say, you have a custom module and you want to expose some
logic/code to your custom application.
Document Services: - Use to
expose business entitles with varying degrees of complexity, or to support
medium-to-complex integration scenario involving business entities.
This was introduced in
Microsoft Dynamics AX 4.0. It enables the user to exchange data between
internal and external systems via XML documents. Document Services are
generated from a query that models the business entity. For example, a customer
query will run the Document Service Generation Wizard to create the Service
artifacts.
Document Services include
logic to handle the details of how a query will be serialized or De-serialized
from the XML that is sent across a network. For synchronization of Document
Services, there are two new entities introduced in Dynamics AX.
§ getKey
§ getChangedKey
Developers need to extend
these functions to enable their own scenario.
§ Document
services are services which expose a business entity. For example, Customer,
Vendor, Employee, Sales Order.
§ You
can Map the business entity using Query and run through Document Service Wizard
to build the web service and perform CRUD operations.
System Service: System services are Windows Communication Foundation (WCF) services that are included with Microsoft Dynamics AX. These services enable clients to interact with and retrieve system information.
This is a new Service category
introduced in Microsoft Dynamics AX 2012. This type of Service is not
customizable and not mapped to any X++ code. There are three types of Services
that come under System Services:
§ Query
Service
§ Metadata
Service
§ User
Session Service
All these Services have unique
functionality that will be discussed in my next post.
§ System
services are kind of utility services.
§ Up and
running when AOS starts.
§ Can be
used for interactive clients
§ Build
Ad-hoc query
System Service: Query Service: - Use
to implement read operations for any Microsoft Dynamics AX, ad-hoc, or existing
AOT query.
- Enables you to issue a query
for data without using an Application Integration Framework (AIF) document
service or creating a custom service. The query service returns data in a
dataset and implements a paging mechanism so that you can manage queries
that return large amounts of data.
When you call the
query service, you can specify the query to run in one of three different ways:
- Static query – A query that
is already defined in the AOT under the Queries node.
- User-defined query – A
query that is defined by using the QueryMetadata class which is found in
the metadata service.
- Dynamic query – A query
that is defined in an X++ class that extends the AifQueryBuilder class.
All query logic resides in the query builder class
System Service: Metadata Service: - Use to retrieve information about the structures in Microsoft
Dynamics AX for a client application. For example, if you want to return
information about a table such as what indexes exist on that table, you can use
the metadata service.
Enables you to retrieve information about elements in the AOT. You can retrieve metadata for labels, menus, menu items, tables, extended data types, data types, enums, queries, web menus, web menu items, info parts, cues, dimensions, form parts, web controls, service groups, and services. The metadata service should be used when you want to return information about the structures in Microsoft Dynamics AX to a client application. For example, if you want to return information about a table such as what indexes exist on that table, you can use the metadata service.
Enables you to retrieve information about elements in the AOT. You can retrieve metadata for labels, menus, menu items, tables, extended data types, data types, enums, queries, web menus, web menu items, info parts, cues, dimensions, form parts, web controls, service groups, and services. The metadata service should be used when you want to return information about the structures in Microsoft Dynamics AX to a client application. For example, if you want to return information about a table such as what indexes exist on that table, you can use the metadata service.
System Service: User Session Service: - Use to retrieve information about the user session.
Enables you to return information about the current Windows user. You can return information such as the user’s default language, Default Company, default company time zone, permissions to access-controlled items, and so on
Adapter:
HTTP adapter – This adapter provides for synchronous message exchanges by using an HTTP or HTTPs transport.
NetTCP adapter – This adapter provides for synchronous exchanges by using WS-* standards support over the Transmission Control Protocol (TCP) transport. This adapter corresponds to the WCF-NetTcp binding in Windows Communication Foundation (WCF).
MSMQ adapter – This adapter provides support for queuing by using Message Queuing as a transport. Message Queuing is also known as MSMQ. Message Queuing is a type of asynchronous communication. This adapter corresponds to the WCF-NetMsmq binding in WCF.
File system adapter – This adapter provides support for the asynchronous exchange of documents through file system directories.
Windows Azure Service Bus adapter – This adapter enables publishing AX 2012 services by using the Windows Azure Service Bus. The Service Bus provides the messaging channel for connecting your cloud applications to your on-premises applications, services and systems.
This adapter requires Internet Information Services (IIS) 7.5, authentication for inbound Service Bus messages, and registration of a Service Bus namespace. Cumulative update 6 or later for AX 2012 provides classes to
support the required authentication in addition to the infrastructure to register a Service Bus namespace from AX 2012.
http://axwonders.blogspot.com/2012/01/microsoft-dynamics-ax-2012-services-and.html
https://community.dynamics.com/ax/b/axwonders/archive/2012/01/24/microsoft-dynamics-ax-2012-services-and-application-integration-framework-aif-architecture
http://ax2012aifintegration.blogspot.in/2015/06/microsoft-dynamics-ax-2012-class.html
https://social.technet.microsoft.com/wiki/contents/articles/33257.biztalk-server-lob-integration-dynamics-ax.aspx
1. AIFGatewayReceiveService – this service communicates with the adapters, receives messages from their external source locations, and puts them into the gateway queue to wait for processing.
2. AIFInboundProcessingService – this service takes incoming messages from the gateway queue and then processes the documents according to the rules that are specified by the inbound port.
3. AIFOutboundProcessingService – this service processes an outbound document according to the rules that are specified by the integration port and then adds the envelope XML code to create a fully-formed AIF message. The service then places the message into
the gateway queue to send.
4. AIFGatewaySendService – this service sends the messages to the correct external destinations.
Enables you to return information about the current Windows user. You can return information such as the user’s default language, Default Company, default company time zone, permissions to access-controlled items, and so on
Adapter:
HTTP adapter – This adapter provides for synchronous message exchanges by using an HTTP or HTTPs transport.
NetTCP adapter – This adapter provides for synchronous exchanges by using WS-* standards support over the Transmission Control Protocol (TCP) transport. This adapter corresponds to the WCF-NetTcp binding in Windows Communication Foundation (WCF).
MSMQ adapter – This adapter provides support for queuing by using Message Queuing as a transport. Message Queuing is also known as MSMQ. Message Queuing is a type of asynchronous communication. This adapter corresponds to the WCF-NetMsmq binding in WCF.
File system adapter – This adapter provides support for the asynchronous exchange of documents through file system directories.
Windows Azure Service Bus adapter – This adapter enables publishing AX 2012 services by using the Windows Azure Service Bus. The Service Bus provides the messaging channel for connecting your cloud applications to your on-premises applications, services and systems.
This adapter requires Internet Information Services (IIS) 7.5, authentication for inbound Service Bus messages, and registration of a Service Bus namespace. Cumulative update 6 or later for AX 2012 provides classes to
support the required authentication in addition to the infrastructure to register a Service Bus namespace from AX 2012.
http://axwonders.blogspot.com/2012/01/microsoft-dynamics-ax-2012-services-and.html
https://community.dynamics.com/ax/b/axwonders/archive/2012/01/24/microsoft-dynamics-ax-2012-services-and-application-integration-framework-aif-architecture
http://ax2012aifintegration.blogspot.in/2015/06/microsoft-dynamics-ax-2012-class.html
https://social.technet.microsoft.com/wiki/contents/articles/33257.biztalk-server-lob-integration-dynamics-ax.aspx
1. AIFGatewayReceiveService – this service communicates with the adapters, receives messages from their external source locations, and puts them into the gateway queue to wait for processing.
2. AIFInboundProcessingService – this service takes incoming messages from the gateway queue and then processes the documents according to the rules that are specified by the inbound port.
3. AIFOutboundProcessingService – this service processes an outbound document according to the rules that are specified by the integration port and then adds the envelope XML code to create a fully-formed AIF message. The service then places the message into
the gateway queue to send.
4. AIFGatewaySendService – this service sends the messages to the correct external destinations.
How documents are exchanged
AIF provides an extensible framework for the exchange of XML documents with external systems. The framework supports both synchronous andasynchronous transports.
In synchronous mode, requests are tightly coupled to responses, which means that the submitter of the request must wait for a response from AIF before proceeding. In this case, AIF does process the request immediately and then sends a response.
In asynchronous mode, however, requests are placed into a queue, called thegateway queue. Queued messages are processed at a later time and AIF sends a response when processing is completed. In this case, responses are delayed, but note that large volumes of messages can be processed more efficiently, and message processing can be controlled by changing various configuration settings.
Service operation
Service operations are class methods that expose any business logic in a service. To define a service operation, add the SysEntryPointAttribute attribute at the top of a method. Any existing method can be converted to a service operation by adding this attribute at the beginning of the method.
&absp;
Note: The service operation name cannot include Create, Find, Update or Delete. These names are reserved to be used by AIF Document services. AX will make an exception when they are called from a client.SysEntryPointAttribute
SysEntryPointAttribute defines the authorization checks that will be performed when a method is called from the server. This attribute must be set on all the service operations. If the value is “true”, it means that authorization checks will be performed for all the tables accessed in the method and if set to “false”, no authorization checks will be performed.AifCollectionTypeAttribute
AifCollectionTypeAttribute is used when you want to use a collection as a return type or in a parameter of a service operation. This attribute defines the type of data a collection contains.
No comments:
Post a Comment