<?xml version="1.0" encoding="utf-8"?>
<rss xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:pingback="http://madskills.com/public/xml/rss/module/pingback/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:dc="http://purl.org/dc/elements/1.1/" version="2.0">
  <channel>
    <title>MicroTalk - BizTalk</title>
    <link>http://www.microtalk.net/</link>
    <description>Tomasso Groenendijk talks about developing with Microsoft technology</description>
    <language>en-us</language>
    <copyright>Tomasso Groenendijk</copyright>
    <lastBuildDate>Thu, 23 Apr 2009 12:21:33 GMT</lastBuildDate>
    <generator>newtelligence dasBlog 2.2.8279.16125</generator>
    <managingEditor>mail@microtalk.net</managingEditor>
    <webMaster>mail@microtalk.net</webMaster>
    <item>
      <trackback:ping>http://www.microtalk.net/Trackback.aspx?guid=1cdc3d34-867b-446c-a0da-dc9199547e72</trackback:ping>
      <pingback:server>http://www.microtalk.net/pingback.aspx</pingback:server>
      <pingback:target>http://www.microtalk.net/PermaLink,guid,1cdc3d34-867b-446c-a0da-dc9199547e72.aspx</pingback:target>
      <dc:creator>Tomasso Groenendijk</dc:creator>
      <wfw:commentRss>http://www.microtalk.net/SyndicationService.asmx/GetEntryCommentsRss?guid=1cdc3d34-867b-446c-a0da-dc9199547e72</wfw:commentRss>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p>
In this example I'm going to assign a value in the Header section of an AIF message
with BizTalk. An AIF message is defined by two XSD schemas. You have an envelope and
a document that defines which tables are mutated in Dynamics. The elements in the
Header are part of the Envelope. 
<br /><br /><img border="0" src="http://www.microtalk.net/content/binary/XmlExample.jpg" /><br /><font size="1">XML example of an AIF message. </font></p>
        <p>
The example above is a Dynamics AX 4 message. There are some small differences with
Dynamics AX 2009 but the principle is the same. The XML documents have for example
other namespaces and in action element are other values allowed. 
</p>
        <p>
          <br />
There are more elements in the Header section but in this example I'm only going to
set the value in the action element. This element contains information that uniquely
identifies the service operation to the system and is a required element. To set the
Action value I'm going to use Promoted Properties.
</p>
        <p>
First you have to create a property schema with the elements you want to set.<br /><img border="0" src="http://www.microtalk.net/content/binary/PropertySchema.jpg" /><br /><font size="1">property schema</font></p>
        <p>
After that you import in your BizTalk project the Envelope schema and the schema that
defines the Dynamics table that you want to mutate.<br /><img border="0" src="http://www.microtalk.net/content/binary/EnvelopeSchema.jpg" /><br /><font size="1">envelope schema</font></p>
        <p>
Then you have to promote the elements in the envelope schema.<br /><br /><img border="0" src="http://www.microtalk.net/content/binary/PromoteProperty.jpg" /><br /><font size="1">promote Action property</font></p>
        <p>
In an Orchestration you can set the value of the promoted field with the "Message
Assignment" component.<br /><img border="0" src="http://www.microtalk.net/content/binary/MessageAssignmentComponent.jpg" /><br /><font size="1">Assign the value</font></p>
        <p>
In the example code beneath you see how the Action property of the "msgSalesOrder"
message is set
</p>
        <p>
          <font color="#000080" face="Courier New">//Assign Header values<br />
msgSalesOrder(AIFExample.Action)= "createSalesOrder";</font>
        </p>
        <p>
Notice that in the orchestration you work with the document that defines the table
that you want to mutate. You don't have to worry about the envelope. The Dynamics
AX adapter in BizTalk puts the document in the envelope and sends the envelope to
Dynamics.<br />
  
</p>
        <p>
For more information about AIF Messages go to MSDN
</p>
        <p>
Microsoft Dynamics AX<br />
AIF Messages 
<br /><a href="http://msdn.microsoft.com/en-us/library/aa627117(AX.10)..aspx">http://msdn.microsoft.com/en-us/library/aa627117(AX.10)..aspx</a><br /></p>
        <img width="0" height="0" src="http://www.microtalk.net/aggbug.ashx?id=1cdc3d34-867b-446c-a0da-dc9199547e72" />
      </body>
      <title>Assign a Header value in an AIF (Dynamics AX) message with BizTalk</title>
      <guid isPermaLink="false">http://www.microtalk.net/PermaLink,guid,1cdc3d34-867b-446c-a0da-dc9199547e72.aspx</guid>
      <link>http://www.microtalk.net/2009/04/23/AssignAHeaderValueInAnAIFDynamicsAXMessageWithBizTalk.aspx</link>
      <pubDate>Thu, 23 Apr 2009 12:21:33 GMT</pubDate>
      <description>&lt;p&gt;
In this example I'm going to assign a value in the Header section of an AIF message
with BizTalk. An AIF message is defined by two XSD schemas. You have an envelope and
a document that defines which tables are mutated in Dynamics. The elements in the
Header are part of the Envelope. 
&lt;br&gt;
&lt;br&gt;
&lt;img border=0 src="http://www.microtalk.net/content/binary/XmlExample.jpg"&gt;
&lt;br&gt;
&lt;font size=1&gt;XML example of an AIF message. &lt;/font&gt;
&lt;/p&gt;
&lt;p&gt;
The example above is a Dynamics AX 4 message. There are some small differences with
Dynamics AX 2009 but the principle is the same. The XML documents have for example
other namespaces and in action element are other values allowed. 
&lt;/p&gt;
&lt;p&gt;
&lt;br&gt;
There are more elements in the Header section but in this example I'm only going to
set the value in the action element. This element contains information that uniquely
identifies the service operation to the system and is a required element. To set the
Action value I'm going to use Promoted Properties.
&lt;/p&gt;
&lt;p&gt;
First you have to create a property schema with the elements you want to set.&lt;br&gt;
&lt;img border=0 src="http://www.microtalk.net/content/binary/PropertySchema.jpg"&gt;
&lt;br&gt;
&lt;font size=1&gt;property schema&lt;/font&gt; 
&lt;/p&gt;
&lt;p&gt;
After that you import in your BizTalk project the Envelope schema and the schema that
defines the Dynamics table that you want to mutate.&lt;br&gt;
&lt;img border=0 src="http://www.microtalk.net/content/binary/EnvelopeSchema.jpg"&gt;
&lt;br&gt;
&lt;font size=1&gt;envelope schema&lt;/font&gt;
&lt;/p&gt;
&lt;p&gt;
Then you have to promote the elements in the envelope schema.&lt;br&gt;
&lt;br&gt;
&lt;img border=0 src="http://www.microtalk.net/content/binary/PromoteProperty.jpg"&gt;
&lt;br&gt;
&lt;font size=1&gt;promote Action property&lt;/font&gt;
&lt;/p&gt;
&lt;p&gt;
In an Orchestration you can set the value of the promoted field with the "Message
Assignment" component.&lt;br&gt;
&lt;img border=0 src="http://www.microtalk.net/content/binary/MessageAssignmentComponent.jpg"&gt;
&lt;br&gt;
&lt;font size=1&gt;Assign the value&lt;/font&gt;
&lt;/p&gt;
&lt;p&gt;
In the example code beneath you see how the Action property of the "msgSalesOrder"
message is set
&lt;/p&gt;
&lt;p&gt;
&lt;font color=#000080 face="Courier New"&gt;//Assign Header values&lt;br&gt;
msgSalesOrder(AIFExample.Action)= "createSalesOrder";&lt;/font&gt;
&lt;/p&gt;
&lt;p&gt;
Notice that in the orchestration you work with the document that defines the table
that you want to mutate. You don't have to worry about the envelope. The Dynamics
AX adapter in BizTalk puts the document in the envelope and sends the envelope to
Dynamics.&lt;br&gt;
&amp;nbsp; 
&lt;/p&gt;
&lt;p&gt;
For more information about AIF Messages go to MSDN
&lt;/p&gt;
&lt;p&gt;
Microsoft Dynamics AX&lt;br&gt;
AIF Messages 
&lt;br&gt;
&lt;a href="http://msdn.microsoft.com/en-us/library/aa627117(AX.10)..aspx"&gt;http://msdn.microsoft.com/en-us/library/aa627117(AX.10)..aspx&lt;/a&gt;
&lt;br&gt;
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.microtalk.net/aggbug.ashx?id=1cdc3d34-867b-446c-a0da-dc9199547e72" /&gt;</description>
      <comments>http://www.microtalk.net/CommentView,guid,1cdc3d34-867b-446c-a0da-dc9199547e72.aspx</comments>
      <category>AIF</category>
      <category>BizTalk</category>
    </item>
    <item>
      <trackback:ping>http://www.microtalk.net/Trackback.aspx?guid=3ee2d027-faa7-46e5-96d0-d1daf9846750</trackback:ping>
      <pingback:server>http://www.microtalk.net/pingback.aspx</pingback:server>
      <pingback:target>http://www.microtalk.net/PermaLink,guid,3ee2d027-faa7-46e5-96d0-d1daf9846750.aspx</pingback:target>
      <dc:creator>Tomasso Groenendijk</dc:creator>
      <wfw:commentRss>http://www.microtalk.net/SyndicationService.asmx/GetEntryCommentsRss?guid=3ee2d027-faa7-46e5-96d0-d1daf9846750</wfw:commentRss>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p>
In this example I'm going to use the File system adapter to exchange data between
BizTalk and Microsoft Dynamics AX. The best practice is to use the AIF BizTalk Adapter
but for testing purposes it's easier (and faster) to use the File system or the Message
Queuing adapter. You have to do some extra steps however because the Application Integration
Framework (AIF) expects an envelope around every document. The AIF BizTalk Adapter
does this automatically but when you use the File system or the Message Queuing adapter,
you have to use an custom Pipeline.
</p>
        <p>
First you have to import in Visual Studio the .XSD schemas of the AIF documents that
you are going to work with.(In this example: SalesOrder schema and the envelope schema)
</p>
        <p>
          <img border="0" src="http://www.microtalk.net/content/binary/SalesOrder.jpg" />
          <br />
          <font size="1">SalesOrder schema</font>
        </p>
        <p>
 
</p>
        <p>
Notice that in an orchestration you work with the AIF document that alters the Dynamics
table. You don’t have to worry about the AIF envelope. In the Port Binding property
you must select “specify later”. Now it’s possible to change the adapter at run time
and select between the AIF BizTalk Adapter and the File system or the Message Queuing
adapter.<br /></p>
        <p>
          <img border="0" src="http://www.microtalk.net/content/binary/PortProperties.jpg" />
        </p>
        <p>
          <font size="1">Port properties</font>
        </p>
        <p>
 
</p>
        <p>
Create a send pipeline and drag a “XML assembler component on the “Assemble” shape.
Next configure the “Envelope schemas” Property. Select here the AIF envelope schema.
Select at the “Document schemas” Property the schema of the AIF document (in this
case the SalesOrder schema)
</p>
        <p>
          <img border="0" src="http://www.microtalk.net/content/binary/PipelineProperties.jpg" />
        </p>
        <p>
          <font size="1">Pipeline properties</font>
        </p>
        <p>
 
</p>
        <p>
Finally you have to configure the Send Port in the BizTalk Administration Console.
Select “Properties” when you right click the Send Port. Subsequently configure the
Send Pipeline property and select here the custom pipeline you just have created.
</p>
        <p>
          <img border="0" src="http://www.microtalk.net/content/binary/SendPortProperties.jpg" />
        </p>
        <p>
          <font size="1">SendPort properties</font>
        </p>
        <p>
 
</p>
        <img width="0" height="0" src="http://www.microtalk.net/aggbug.ashx?id=3ee2d027-faa7-46e5-96d0-d1daf9846750" />
      </body>
      <title>Exchange data between BizTalk and Microsoft Dynamics AX without the AIF BizTalk Adapter</title>
      <guid isPermaLink="false">http://www.microtalk.net/PermaLink,guid,3ee2d027-faa7-46e5-96d0-d1daf9846750.aspx</guid>
      <link>http://www.microtalk.net/2009/04/08/ExchangeDataBetweenBizTalkAndMicrosoftDynamicsAXWithoutTheAIFBizTalkAdapter.aspx</link>
      <pubDate>Wed, 08 Apr 2009 15:23:15 GMT</pubDate>
      <description>&lt;p&gt;
In this example I'm going to use the File system adapter to exchange data between
BizTalk and Microsoft Dynamics AX. The best practice is to use the AIF BizTalk Adapter
but for testing purposes it's easier (and faster) to use the File system or the Message
Queuing adapter. You have to do some extra steps however because the Application Integration
Framework (AIF) expects an envelope around every document. The AIF BizTalk Adapter
does this automatically but when you use the File system or the Message Queuing adapter,
you have to use an custom Pipeline.
&lt;/p&gt;
&lt;p&gt;
First you have to import in Visual Studio the .XSD schemas of the AIF documents that
you are going to work with.(In this example: SalesOrder schema and the envelope schema)
&lt;/p&gt;
&lt;p&gt;
&lt;img border=0 src="http://www.microtalk.net/content/binary/SalesOrder.jpg"&gt;
&lt;br&gt;
&lt;font size=1&gt;SalesOrder schema&lt;/font&gt; 
&lt;/p&gt;
&lt;p&gt;
&amp;nbsp;
&lt;/p&gt;
&lt;p&gt;
Notice that in an orchestration you work with the AIF document that alters the Dynamics
table. You don’t have to worry about the AIF envelope. In the Port Binding property
you must select “specify later”. Now it’s possible to change the adapter at run time
and select between the AIF BizTalk Adapter and the File system or the Message Queuing
adapter.&lt;br&gt;
&lt;/p&gt;
&lt;p&gt;
&lt;img border=0 src="http://www.microtalk.net/content/binary/PortProperties.jpg"&gt;
&lt;/p&gt;
&lt;p&gt;
&lt;font size=1&gt;Port properties&lt;/font&gt;
&lt;/p&gt;
&lt;p&gt;
&amp;nbsp;
&lt;/p&gt;
&lt;p&gt;
Create a send pipeline and drag a “XML assembler component on the “Assemble” shape.
Next configure the “Envelope schemas” Property. Select here the AIF envelope schema.
Select at the “Document schemas” Property the schema of the AIF document (in this
case the SalesOrder schema)
&lt;/p&gt;
&lt;p&gt;
&lt;img border=0 src="http://www.microtalk.net/content/binary/PipelineProperties.jpg"&gt;
&lt;/p&gt;
&lt;p&gt;
&lt;font size=1&gt;Pipeline properties&lt;/font&gt;
&lt;/p&gt;
&lt;p&gt;
&amp;nbsp;
&lt;/p&gt;
&lt;p&gt;
Finally you have to configure the Send Port in the BizTalk Administration Console.
Select “Properties” when you right click the Send Port. Subsequently configure the
Send Pipeline property and select here the custom pipeline you just have created.
&lt;/p&gt;
&lt;p&gt;
&lt;img border=0 src="http://www.microtalk.net/content/binary/SendPortProperties.jpg"&gt;
&lt;/p&gt;
&lt;p&gt;
&lt;font size=1&gt;SendPort properties&lt;/font&gt;
&lt;/p&gt;
&lt;p&gt;
&amp;nbsp;
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.microtalk.net/aggbug.ashx?id=3ee2d027-faa7-46e5-96d0-d1daf9846750" /&gt;</description>
      <comments>http://www.microtalk.net/CommentView,guid,3ee2d027-faa7-46e5-96d0-d1daf9846750.aspx</comments>
      <category>AIF</category>
      <category>BizTalk</category>
    </item>
  </channel>
</rss>