<?xml version="1.0" encoding="utf-8"?>
<rss xmlns:atom="https://www.w3.org/2005/Atom" xmlns:sy="https://purl.org/rss/1.0/modules/syndication/" xmlns:dc="https://purl.org/dc/elements/1.1/" xmlns:content="https://purl.org/rss/1.0/modules/content/" xmlns:wfw="https://wellformedweb.org/CommentAPI/" xmlns:slash="https://purl.org/rss/1.0/modules/slash/"
  version="2.0">
  <channel>
    <title>MABS</title>
    <atom:link
      href="https://docs.microsoft.com/archive/blogs/mabs/feed.xml"
      rel="self"
      type="application/rss+xml" />
    <link>https://docs.microsoft.com/archive/blogs/mabs/feed.xml</link>
    <description />
    <lastBuildDate>Wed, 17 Apr 2019 03:23:08 GMT</lastBuildDate>
    <language>en-US</language>
    <sy:updatePeriod>hourly</sy:updatePeriod>
    <sy:updateFrequency>1</sy:updateFrequency>
    <item>
      <title>Unable to delete BizTalk Services Artefacts from the portal</title>
      <link>https://docs.microsoft.com/archive/blogs/mabs/unable-to-delete-biztalk-services-artefacts-from-the-portal</link>
      <pubDate>Sat, 06 May 2017 04:39:22 GMT</pubDate>
      <dc:creator><![CDATA[Shailesh Agre]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/mabs/?p=125</guid>
      <description><![CDATA[Unable to delete BizTalk Services Artefacts from the portal

To resolve the issue, go to...]]></description>
      <content:encoded><![CDATA[Unable to delete BizTalk Services Artefacts from the portal

To resolve the issue, go to <a href="https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fresources.azure.com%2F&amp;data=02%7C01%7Cshailesh.agre%40microsoft.com%7Cffa7cf4bb72742f2d2f408d493dc0985%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636296020641969353&amp;sdata=TsRPe7905%2B5AnOlCgtniV2gme8eT8yOU3U%2FEDGu7KYM%3D&amp;reserved=0">https://resources.azure.com/</a> Go to particular subscription =&gt; resource group. Find the artefact and do the delete operation.

To delete Access Control Namespaces

Log in to the old portal

<a href="https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fmanage.windowsazure.com%2F&amp;data=02%7C01%7CJustin.Crosby%40Milliken.com%7C9135fd5bcd5b4576983708d493e8ccc8%7C326271270bbf472d9e35b0b67edbc59a%7C1%7C0%7C636296075481842507&amp;sdata=FIbGbjJIkbxP2woniofVsdI3vI%2FbPGTicbViBy8Bi%2Fc%3D&amp;reserved=0">https://manage.windowsazure.com/</a>

From the left navigation pane, select Active Directory

<a href="https://msdnshared.blob.core.windows.net/media/2017/05/ACS1.jpg"><img width="203" height="233" class="alignnone size-full wp-image-135" alt="acs1" src="https://msdnshared.blob.core.windows.net/media/2017/05/ACS1.jpg" /></a>

&nbsp;

On next page, go to Access Control Namespaces

<a href="https://msdnshared.blob.core.windows.net/media/2017/05/ACS2.jpg"><img width="300" height="39" class="alignnone size-medium wp-image-145" alt="acs2" src="https://msdnshared.blob.core.windows.net/media/2017/05/ACS2-300x39.jpg" /></a>

You should find your ACS namespaces over here and be able to delete those.]]></content:encoded>
    </item>
    <item>
      <title>Sending message to FTP Destination</title>
      <link>https://docs.microsoft.com/archive/blogs/mabs/sending-message-to-ftp-destination</link>
      <pubDate>Wed, 30 Sep 2015 06:25:56 GMT</pubDate>
      <dc:creator><![CDATA[Shailesh Agre]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/mabs/2015/09/30/sending-message-to-ftp-destination/</guid>
      <description><![CDATA[While sending message to FTP Destination, it is common to see the error     To fix it, you need to...]]></description>
      <content:encoded><![CDATA[<p>While sending message to FTP Destination, it is common to see the error</p>  <p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/8015.image_116188DE.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/8015.image_5F00_116188DE.png"><img title="image" style="border-top: 0px; border-right: 0px; border-bottom: 0px; border-left: 0px; display: inline" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/5126.image_thumb_0E4F2AE9.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/5126.image_5F00_thumb_5F00_0E4F2AE9.png" width="640" height="477" /></a> </p>  <p>To fix it, you need to promote the Filename property.</p>  <p>Assuming, you are using XML One-Way Bridge</p>  <p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/2555.image_7B308EED.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/2555.image_5F00_7B308EED.png"><img title="image" style="border-top: 0px; border-right: 0px; border-bottom: 0px; border-left: 0px; display: inline" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/2502.image_thumb_2AEE376D.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/2502.image_5F00_thumb_5F00_2AEE376D.png" width="640" height="136" /></a> </p>  <p>Edit Enrich stage by clicking on “Property Definitions - “Collections”</p>  <p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/5153.image_35AE1F73.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/5153.image_5F00_35AE1F73.png"><img title="image" style="border-top: 0px; border-right: 0px; border-bottom: 0px; border-left: 0px; display: inline" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/1300.image_thumb_5EB8BE6F.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/1300.image_5F00_thumb_5F00_5EB8BE6F.png" width="640" height="240" /></a> </p>  <p>Promote the property to “Filename”. Here I am simply promoting RequestId.</p>  <p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/4135.image_5C12936F.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/4135.image_5F00_5C12936F.png"><img title="image" style="border-top: 0px; border-right: 0px; border-bottom: 0px; border-left: 0px; display: inline" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/2330.image_thumb_0BD03BEF.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/2330.image_5F00_thumb_5F00_0BD03BEF.png" width="640" height="378" /></a> </p>  <blockquote>   <p>Then on the connector go to “Route Action – Collection” and add the Filename property to the Ftp destination.</p>    <p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/4527.image_56C63D6F.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/4527.image_5F00_56C63D6F.png"><img title="image" style="border-top: 0px; border-right: 0px; border-bottom: 0px; border-left: 0px; display: inline" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/1643.image_thumb_6668D931.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/1643.image_5F00_thumb_5F00_6668D931.png" width="640" height="377" /></a> </p> </blockquote>  <p>Now once you deploy the solution and test the message again, the message should be successfully routed to the FTP destination.</p>  <p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/0513.image_3C8864FC.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/0513.image_5F00_3C8864FC.png"><img title="image" style="border-top: 0px; border-right: 0px; border-bottom: 0px; border-left: 0px; display: inline" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/0488.image_thumb_39E239FC.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/0488.image_5F00_thumb_5F00_39E239FC.png" width="531" height="480" /></a></p>]]></content:encoded>
    </item>
    <item>
      <title>Unable to view Tracking records</title>
      <link>https://docs.microsoft.com/archive/blogs/mabs/unable-to-view-tracking-records</link>
      <pubDate>Fri, 27 Mar 2015 05:28:33 GMT</pubDate>
      <dc:creator><![CDATA[Shailesh Agre]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/mabs/2015/03/27/unable-to-view-tracking-records/</guid>
      <description><![CDATA[When attempting to query tracking data in the BizTalk Services Management Portal, I continually get...]]></description>
      <content:encoded><![CDATA[<p>When attempting to query tracking data in the BizTalk Services Management Portal, I continually get errors and cannot retrieve the data.    <br />The most common error returned says &quot;An error occurred while retrieving tracking data An error occurred while processing this request&quot;.</p>  <p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/7345.image_725959F6.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/7345.image_5F00_725959F6.png"><img title="image" style="border-top: 0px; border-right: 0px; border-bottom: 0px; border-left: 0px; display: inline" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/4666.image_thumb_2143BDEE.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/4666.image_5F00_thumb_5F00_2143BDEE.png" width="640" height="32" /></a> </p>  <p>The tracked data (storage and SQL) is not archived by default. Manual intervention is required to clean up the data.</p>  <p>If you are unable to get the tracking records on the Tracking portal, but the runtime environment is working fine, then most likely the tracking data has reached to a limit where it is causing the query performance issues.</p>  <p>The best way is to begin with purging the data as explained in the <a href="https://blogs.msdn.com/b/mabs/archive/2015/03/27/biztalk-services-tracking-and-tracing.aspx" target="_blank">previous blog section - How to Manage Tracked Records</a></p>  <p>Even after cleaning the reasonable data, if you still continue to get error on the portal, check if you are able to query the SQL database directly.</p>  <p>You can use SSMS to connect to SQL Azure. To get details of the SQL Azure being used, you will need to go to Azure portal/click BizTalk Services. On the dashboard tab, you will see the SQL Azure Database being used for tracking. If you click the database name, it will take you to the database page. Click Dashboard. On the left you will see ‘Show connection string’. Click this and it will show you the database name and the user ID for the database.</p>  <p>Once connected, try running a simple query like Select * from TrackRecordProperties2. If this query is taking long time or not completing, it indicates you need to clean some more data.</p>  <p>For some of the customers’ the retention policy may add burden to the Tracking database or because of business volume even small number of days may contain a large amount of data. If data sizing guideline don’t go well with retention period, other option is to backup data to some other SQL server before purging from the tracking store till Tracking query performance is optimized.</p>  <p>Other option is to upgrade the SQL Azure server to higher edition / performance level which will provide more processing power to handle large tracking environments. The article below helps you understand move the database from Web/Business edition to New Service tiers.</p>  <p><a href="https://azure.microsoft.com/en-us/documentation/articles/sql-database-upgrade-new-service-tiers/">https://azure.microsoft.com/en-us/documentation/articles/sql-database-upgrade-new-service-tiers/</a></p>  <p>Run the following query on the master database to retrieve the average DTU consumption for a database:</p>  <p>SELECT start_time, end_time    <br />,(SELECT Max(v)     <br />&#160;&#160;&#160;&#160; FROM (VALUES (avg_cpu_percent)     <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; , (avg_physical_data_read_percent)     <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; , (avg_log_write_percent)     <br />&#160;&#160;&#160;&#160;&#160;&#160; ) AS value(v)) AS [avg_DTU_percent]     <br />FROM sys.resource_stats     <br />WHERE database_name = '&lt;your db name&gt;'     <br />ORDER BY end_time DESC;</p>  <p>Here is a table that provides a mapping of the Web/Business resource consumption percentage to equivalent new tier performance levels: </p>  <p><img alt="Resource consumption" src="https://acomdpsstorage.blob.core.windows.net/dpsmedia-prod/azure.microsoft.com/en-us/documentation/articles/sql-database-upgrade-new-service-tiers/20150324125054/resource_consumption.png" /></p>]]></content:encoded>
    </item>
    <item>
      <title>BizTalk Services Tracking and Tracing</title>
      <link>https://docs.microsoft.com/archive/blogs/mabs/biztalk-services-tracking-and-tracing</link>
      <pubDate>Fri, 27 Mar 2015 04:58:51 GMT</pubDate>
      <dc:creator><![CDATA[Shailesh Agre]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/mabs/2015/03/27/biztalk-services-tracking-and-tracing/</guid>
      <description><![CDATA[In Windows Azure BizTalk Services, customers do not have access to the machines where their code is...]]></description>
      <content:encoded><![CDATA[<p>In Windows Azure BizTalk Services, customers do not have access to the machines where their code is running. Hence, great care is taken to show all your logs, different events that happen via the tracking and tracing logs.</p>  <h2><a name="_Toc366755613">Difference between Tracking and Tracing</a></h2>  <p>It’s important to understand the difference between tracing and tracking and what data is collected in each one of them. For most cases unless you are tracing from custom code, tracking should be sufficient. </p>  <table cellspacing="0" cellpadding="0" border="1"><tbody>     <tr>       <td valign="top" width="323">         <p><strong>Tracking</strong></p>       </td>        <td valign="top" width="457">         <p><strong>Tracing</strong></p>       </td>     </tr>      <tr>       <td valign="top" width="323">         <p>Tracking events are stored in Azure SQL Database</p>       </td>        <td valign="top" width="457">         <p>Tracing information is stored in Azure Blob and WADLogsTable Storage</p>       </td>     </tr>      <tr>       <td valign="top" width="323">         <p>Tracked events can be viewed via BizTalk Services Portal or BizTalk Services Explorer</p>       </td>        <td valign="top" width="457">         <p>Tracing data is stored in Blob and Table Storage. Hence we use the storage explorer.</p>       </td>     </tr>      <tr>       <td valign="top" width="323">         <p>You can turn tracking on/off as need be.</p>       </td>        <td valign="top" width="457">         <p>Tracing is always turned on. This is not Configurable</p>       </td>     </tr>      <tr>       <td valign="top" width="323">         <p>Tracking records includes</p>          <p>--Operational Events are tracked. (Example: The different stages that are executed) </p>          <p>--It tracks the errors that happened. </p>          <p>--Message Properties</p>          <p>--EDI Message body(this is stored in blob storage)</p>       </td>        <td valign="top" width="457">         <p>Tracing information includes </p>          <p>--Records Emitted by custom code context.Tracer.TraceEvent(TraceEventType.Warning, &quot;Value: {0}&quot;, propertyValue). This is stored in WADLogsTable. </p>          <p>--Perfmon </p>          <p>--ETL files</p>       </td>     </tr>      <tr>       <td valign="top" width="323">         <p>Can be deleted via PowerShell Clear-AzureBizTalkTrackingStore or SQL Stored Procedures PurgeBridgeTrackRecords and PurgeB2BTrackRecords</p>       </td>        <td valign="top" width="457">         <p>Tracing data is auto deleted every 60 days. However, everything newer than that needs to be manually deleted via the storage explorer.</p>       </td>     </tr>   </tbody></table>  <h2>   <br /><a name="_Toc366755614">Insight to Tracking Tables</a></h2>  <p>Tracked records are stored in the SQL database.</p>  <p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/1220.image_1A5DA98D.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/1220.image_5F00_1A5DA98D.png"><img title="image" style="border-left-width: 0px; border-right-width: 0px; border-bottom-width: 0px; display: inline; border-top-width: 0px" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/7041.image_thumb_5A4C3B67.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/7041.image_5F00_thumb_5F00_5A4C3B67.png" width="640" height="445" /></a> </p>  <p>The tracking database exposes a GetTrackRecords stored procedure that can be used for retrieving the track records as well as automation of failure notification. The main tables in the database are:    <table cellspacing="0" cellpadding="0" border="1"><tbody>       <tr>         <td valign="top" width="298">           <p>Table</p>         </td>          <td valign="top" width="481">           <p>Comments</p>         </td>       </tr>        <tr>         <td valign="top" width="298">           <p>EndpointAddressMap</p>         </td>          <td valign="top" width="481">           <p>Contains mapping of Bridge Endpoint Name to Endpoint Id which is used in the PipelineTrackRecords table.</p>         </td>       </tr>        <tr>         <td valign="top" width="298">           <p>PipelineTrackRecords</p>         </td>          <td valign="top" width="481">           <p>Contains the track records with names of stages, activities and the status of each.</p>         </td>       </tr>        <tr>         <td valign="top" width="298">           <p>TrackRecordRecordProperties</p>         </td>          <td valign="top" width="481">           <p>Contains detailed status for events with Parent Id corresponding to Id of PipelineTrackRecords record.</p>         </td>       </tr>        <tr>         <td valign="top" width="298">           <p>TrackRecordMessageProperties</p>         </td>          <td valign="top" width="481">           <p>Contains user defined and default promoted properties like X_PIPELINE_REQUESTMESSAGETYPE and X_PIPELINE_MESSAGETYPE</p>         </td>       </tr>     </tbody></table> </p>  <h4>&#160;</h4>  <h2><a name="_Toc366755615">What Gets Tracked?</a></h2>  <p>There is a very good blog from the BizTalk Services Product team that covers the details of tracking. I have copied the same content below.</p>  <p><a href="https://blogs.msdn.com/b/biztalk_server_team_blog/archive/2013/06/28/debugging-eai-bridges-with-tracking-and-tracing-i.aspx">https://blogs.msdn.com/b/biztalk_server_team_blog/archive/2013/06/28/debugging-eai-bridges-with-tracking-and-tracing-i.aspx</a></p>  <p>· Operational Events are tracked. (Example: The different stages that are executed) </p>  <p>· It tracks the errors that happened. </p>  <p>· Message Properties</p>  <p>· EDI Message body(this is stored in blob storage)</p>  <p>&#160;</p>  <h2>Pipeline and Source Track Records</h2>  <p>Track Records can be emitted by the Pipelines as well as FTP and SFTP Sources. Pipelines can emit below information and error events based on the configuration:</p>  <p>1. Pipeline started </p>  <p>2. Pipeline completed</p>  <p>3. Stage started – emitted for all the Enabled Stages like xmlvalidator, requestMessageExtractor, requestMessageTransform, transformedResponseEnrich, route, sendReply and others.</p>  <p>4. Stage completed</p>  <p>5. Artifact Retrieved - for artifacts like schemas and transforms</p>  <p>6. Custom – emitted from custom code inspectors when they are set.</p>  <p>7. Route – show the route status for the message ie faulted or success.</p>  <p>8. Faulted – when any error is thrown like lookup failed, validate failed</p>  <p>With &quot;Track All Message Processing Events&quot; option set to true all the above events get saved in the tracking database, but the BizTalk Portal Tracking section will only show last four events. For EAI scenarios, FTP and SFTP Sources emit below events to the tracking database. </p>  <p>1. TrackSubmitted – emitted when the message is submitted to the pipeline</p>  <p>2. TrackProcessed – emitted when the message is deleted from the source. Faulted when delete fails as in case of read only user.</p>  <p>3. TrackStatus – emitted on source start and stopped. Faulted when service cannot connect to the FTP server.</p>  <p>4. TrackRetrieved – error event is emitted when the file cannot be retrieved from the server in cases like it being a subfolder inside the FTP folder. Error looks like ‘The remote server returned an error: (550) File unavailable (e.g., file not found, no access)’.</p>  <p>5. Poll Error – emitted when one of the above errors happen. The poll interval in increased to 1.5 times on each poll error in order to give time to rectify the issue.</p>  <p>6. Listing error – emitted when the listing of the files fails eg when the configured FTP folder is deleted </p>  <p>The Tracking portal will only show error events for the sources.</p>  <h4>&#160;</h4>  <h2><a name="_Toc366755617">EDI Message Body Tracking</a></h2>  <p>The EDI message body tracking when turned on is tracked in the blob storage. A blob container gets created every day and it contains the message body. You can use the Azure Storage Explorer. </p>  <p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/0820.image_49D65B1D.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/0820.image_5F00_49D65B1D.png"><img title="image" style="border-left-width: 0px; border-right-width: 0px; border-bottom-width: 0px; display: inline; border-top-width: 0px" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/0572.image_thumb_1A6499F9.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/0572.image_5F00_thumb_5F00_1A6499F9.png" width="578" height="480" /></a> </p>  <h2>How to enable tracking</h2>  <p>Tracking can be enabled and disabled as needed. You can enable tracking at 2 places:</p>  <p>Pipeline. In VS, select your bridge. In Tracking Properties you can enable the tracking for the pipeline. </p>  <p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/7142.image_72C0AE7F.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/7142.image_5F00_72C0AE7F.png"><img title="image" style="border-left-width: 0px; border-right-width: 0px; border-bottom-width: 0px; display: inline; border-top-width: 0px" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/4380.image_thumb_3B5C6C5B.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/4380.image_5F00_thumb_5F00_3B5C6C5B.png" width="640" height="431" /></a> </p>  <p>The 2<sup>nd</sup> way to enable tracking is for B2B. Go to BizTalk Services Portal. Click respective EDI / AS2 bridge and check the tracking options. You will need to Deploy the bridge after making the changes.</p>  <h2><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/3678.image_07E4BD20.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/3678.image_5F00_07E4BD20.png"><img title="image" style="border-left-width: 0px; border-right-width: 0px; border-bottom-width: 0px; display: inline; border-top-width: 0px" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/1488.image_thumb_6BA2097F.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/1488.image_5F00_thumb_5F00_6BA2097F.png" width="640" height="444" /></a> </h2>  <p></p>  <p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/1106.image_58EFA079.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/1106.image_5F00_58EFA079.png"><img title="image" style="border-left-width: 0px; border-right-width: 0px; border-bottom-width: 0px; display: inline; border-top-width: 0px" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/2860.image_thumb_50B597D9.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/2860.image_5F00_thumb_5F00_50B597D9.png" width="640" height="437" /></a> </p>  <h2>How to View the tracked Records</h2>  <p>There are 3 ways to view the tracked records. The tracked records go to the SQL database. </p>  <p>1. The easiest way to view the tracked records is from BizTalk Services Portal. Click tracking on the left and you should be able to view the tracked records. To open and view each record in details, click the record and click details at the bottom.</p>  <p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/0285.image_1015DC1B.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/0285.image_5F00_1015DC1B.png"><img title="image" style="border-left-width: 0px; border-right-width: 0px; border-bottom-width: 0px; display: inline; border-top-width: 0px" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/0638.image_thumb_71CDB5D5.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/0638.image_5F00_thumb_5F00_71CDB5D5.png" width="581" height="480" /></a> </p>  <p>2. You can also view the tracked records from the BizTalk Services Explorer</p>  <p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/3480.image_0CE5C33D.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/3480.image_5F00_0CE5C33D.png"><img title="image" style="border-left-width: 0px; border-right-width: 0px; border-bottom-width: 0px; display: inline; border-top-width: 0px" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/0143.image_thumb_48851056.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/0143.image_5F00_thumb_5F00_48851056.png" width="602" height="480" /></a> </p>  <p>&#160;</p>  <p>3. The 3rd way is directly from SQL Azure Server. You can use SSMS to connect to SQL Azure. To get details of the SQL Azure being used, you will need to go to Azure portal/click BizTalk Services. On the dashboard tab, you will see the SQL Azure Database being used for tracking. If you click the database name, it will take you to the database page. Click Dashboard. On the left you will see ‘Show connection string’. Click this and it will show you the database name and the user ID for the database. Looking at the tracked records directly from SQL may not be very useful.</p>  <h4><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/0456.image_22E066C7.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/0456.image_5F00_22E066C7.png"><img title="image" style="border-top: 0px; border-right: 0px; border-bottom: 0px; border-left: 0px; display: inline" border="0" alt="image" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/6038.image_thumb_5EC4AACF.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/6038.image_5F00_thumb_5F00_5EC4AACF.png" width="555" height="480" /></a> </h4>  <h2>How to Manage Tracked Records</h2>  <p>We have seen how to enable and view the tracking records. The tracking database needs to be managed (delete older records) by the customers. Currently you can delete the tracking records in 2 ways    <br />1.&#160;&#160;&#160; Using the PowerShell cmdlet Clear-AzureBizTalkTrackingStore     <br /><a href="https://msdn.microsoft.com/en-us/library/windowsazure/dn232411.aspx">https://msdn.microsoft.com/en-us/library/windowsazure/dn232411.aspx</a>     <br /></p>  <p>•&#160;&#160;&#160; Run the following command to register the BizTalk PS cmdlet    <br />import-module &quot;C:\Program Files\Windows Azure BizTalk Services Tools\Microsoft.BizTalk.Services.Powershell.dll&quot;</p>  <p>•&#160;&#160;&#160; You may need to Gac&#160; the storageclient.dll manually - gacutil /i Microsoft.WindowsAzure.StorageClient.dll</p>  <p>•&#160;&#160;&#160; The following command clears the SQL Tracking data until the date/time specified. Before you run this command make sure that you have updated the sqlString.txt and AzureStore.txt files with your SQL Azure and Storage details.    <br /></p>  <p>Sample AzureStore.txt DefaultEndpointsProtocol=https;AccountName=mystorageaccount;AccountKey=accountkey</p>  <p>Sample SQLString.txt</p>  <p>Server=tcp:mydb.database.windows.net,1433;Database=mydb;User ID=user@mydb;Password=password;Trusted_Connection=False;Encrypt=True;Connection Timeout=30;</p>  <p>Clear-AzureBiztalkTrackingStore -Sql (Get-Content sqlString.txt) -AzureStore (Get-&#160;&#160;&#160; Content AzureStore.txt) -Ndays 2 true -NoPrompt </p>  <p>2.&#160;&#160;&#160; Using the truncate stored proc to clear SQL Tracking data only. You can run the following stored procedures to delete the tracking records older than the specified date    <br />&#160;&#160;&#160;&#160;&#160;&#160; PurgeBridgeTrackRecords '2013-09-12'     <br />&#160;&#160;&#160;&#160;&#160;&#160; PurgeB2BTrackRecords '2013-09-11'</p>  <h2>Tracing</h2>  <p>Tracing is enabled by default. This feature cannot be turned off. Tracing information is stored in Azure Table and Blob Storage. You can use any storage tool to view this information.    <br />A free tool that I like is Azure Storage Explorer. This can be downloaded from <a href="https://azurestorageexplorer.codeplex.com/">https://azurestorageexplorer.codeplex.com/</a>     <br />    <br />Tracing captures perfmon logs, ETL files and tracing information emitted by custom pipeline code. The ETL information is not much use to end customers because it needs formatting which in turn needs Manifest which is not available publicly.&#160; The ETL files are more for internal use by the support team.     <br />However the custom code tracing information emitted by custom pipeline is most useful to customers. This is stored in the WADLogsTable. You can use the following code to configure tracing from custom code. context.Tracer.TraceEvent(TraceEventType.Warning, &quot;Value: {0}&quot;, propertyValue). This is stored in WADLogsTable.     <br />The tracing information is automatically deleted after 60 days. Hence the most information you will have is worth of 60 days.&#160; You can manually delete some of the tracing information if you do not want to logs too large. You can delete the etl files from the container named similar to your BizTalk Services name. </p>]]></content:encoded>
    </item>
    <item>
      <title>Send messages from MABS to BizTalk Server On Premise</title>
      <link>https://docs.microsoft.com/archive/blogs/mabs/send-messages-from-mabs-to-biztalk-server-on-premise</link>
      <pubDate>Mon, 27 Oct 2014 06:11:49 GMT</pubDate>
      <dc:creator><![CDATA[Shailesh Agre]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/mabs/2014/10/27/send-messages-from-mabs-to-biztalk-server-on-premise/</guid>
      <description><![CDATA[In BizTalk Server you can use WCF-BasicHttpRelay or WCF-NetTcpRelay adapter to receive the messages....]]></description>
      <content:encoded><![CDATA[<p>In BizTalk Server you can use WCF-BasicHttpRelay or WCF-NetTcpRelay adapter to receive the messages.</p>  <p>In BizTalk Admin Console, create a new Receive Port “RPForMABSRelayTest”.</p>  <p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/4863.RPForMABSRelayTest_2B060106.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/4863.RPForMABSRelayTest_5F00_2B060106.png"><img title="RPForMABSRelayTest" style="border-left-width: 0px; border-right-width: 0px; border-bottom-width: 0px; display: inline; border-top-width: 0px" border="0" alt="RPForMABSRelayTest" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/3201.RPForMABSRelayTest_thumb_6D713703.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/3201.RPForMABSRelayTest_5F00_thumb_5F00_6D713703.png" width="594" height="480" /></a> </p>  <p>Add a new receive location “RL_HTTPTestRx” with type WCF-BasicHttpRelay</p>  <p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/8546.RL_HTTPTestRx_0E4B4E7D.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/8546.RL_5F00_HTTPTestRx_5F00_0E4B4E7D.png"><img title="RL_HTTPTestRx" style="border-left-width: 0px; border-right-width: 0px; border-bottom-width: 0px; display: inline; border-top-width: 0px" border="0" alt="RL_HTTPTestRx" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/6170.RL_HTTPTestRx_thumb_78F029C5.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/6170.RL_5F00_HTTPTestRx_5F00_thumb_5F00_78F029C5.png" width="590" height="480" /></a> </p>  <p>Click on “Configure” and provide the Service Bus Namespace URI + logical name with which this relay will be identified. Here I gave name “HTTPInbound”.</p>  <p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/4062.URI_5CE1FB8B.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/4062.URI_5F00_5CE1FB8B.png"><img title="URI" style="border-left-width: 0px; border-right-width: 0px; border-bottom-width: 0px; display: inline; border-top-width: 0px" border="0" alt="URI" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/4174.URI_thumb_6C186458.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/4174.URI_5F00_thumb_5F00_6C186458.png" width="345" height="480" /></a> </p>  <p>Click on Security tab and provide “Access control service” information. Note that this ACS information is for Service Bus and not the MABS connection information. You need to capture this information from <a href="https://go.microsoft.com/fwlink/p/?linkid=213885&amp;clcid=0x409" target="_blank">Azure Management Portal</a> by selecting Service Bus namespace of your interest. Complete the configuration of the port by clicking on OKs.</p>  <p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/3858.ACSCredentials_4E85C7B2.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/3858.ACSCredentials_5F00_4E85C7B2.png"><img title="ACSCredentials" style="border-left-width: 0px; border-right-width: 0px; border-bottom-width: 0px; display: inline; border-top-width: 0px" border="0" alt="ACSCredentials" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/0020.ACSCredentials_thumb_4E1C256E.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/0020.ACSCredentials_5F00_thumb_5F00_4E1C256E.png" width="640" height="456" /></a> </p>  <p>Enable the receive location. now if you go to the Relays section under the Service Bus Namespace on the <a href="https://go.microsoft.com/fwlink/p/?linkid=213885&amp;clcid=0x409" target="_blank">Azure Management Portal</a>, you will see a listener with the name HTTPInbound.</p>  <p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/4265.listner_4DB2832A.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/4265.listner_5F00_4DB2832A.png"><img title="listner" style="border-left-width: 0px; border-right-width: 0px; border-bottom-width: 0px; display: inline; border-top-width: 0px" border="0" alt="listner" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/7870.listner_thumb_4B0C582A.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/7870.listner_5F00_thumb_5F00_4B0C582A.png" width="640" height="153" /></a> </p>  <p>Create and sample send port to send the messages to a file location. Add the Filter to get messages from the receive port created above. Start the Send Port.</p>  <p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/7457.SendPort_3666BD12.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/7457.SendPort_5F00_3666BD12.png"><img title="SendPort" style="border-left-width: 0px; border-right-width: 0px; border-bottom-width: 0px; display: inline; border-top-width: 0px" border="0" alt="SendPort" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/6232.SendPort_thumb_63EA6D86.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/6232.SendPort_5F00_thumb_5F00_63EA6D86.png" width="597" height="480" /></a> </p>  <p>Now create a BizTalk Service project in VS.    <br />In the MessageFlowItinerary update the BizTalk Service URL property to use your BizTalk Service name.     <br />From “Bridges”, drag and drop Pass-Through Bridge on the itinerary designer. Name it as MABSRelayTest     <br />From “Destinations”, drag and drop One-Way Relay Endpoint on the itinerary designer.     <br />Double click on the One-Way Relay Endpoint to open the config file. Modify the address to use the URI that was used in the BizTalk Server Receive Location. </p>  <p>&lt;endpoint    <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160; name=&quot;OneWayRelayServiceReference1&quot;     <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160; address=<a href="https://sbnamespace.servicebus.windows.net/HTTPInbound">https://sbnamespace.servicebus.windows.net/HTTPInbound</a>     <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160; binding=&quot;basicHttpRelayBinding&quot;     <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160; bindingConfiguration=&quot;basicHttpRelayBinding1&quot;     <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160; behaviorConfiguration=&quot;serviceBusCredentialsBehavior&quot;     <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160; contract=&quot;System.ServiceModel.Routing.ISimplexDatagramRouter&quot;/&gt;</p>  <p>Modify the behaviour “serviceBusCredentialsBehavior&quot; to update Service bus namespace connection information (same way you configured “Access control service” for BizTalk Receive Location.</p>  <p>&lt;behavior name=&quot;serviceBusCredentialsBehavior&quot;&gt;    <br />&#160;&#160;&#160; &lt;!-- TODO: Uncomment the transportClientEndpointBehavior block below if RelayAccessToken --&gt;     <br />&#160;&#160;&#160; &lt;!-- security will be used. Also update the issuerName and issuerSecret values --&gt;     <br />&#160;&#160;&#160; &lt;transportClientEndpointBehavior&gt;     <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160; &lt;tokenProvider&gt;     <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; &lt;sharedSecret issuerName=&quot;owner&quot; issuerSecret=&quot;issuerSecretissuerSecretissuerSecretissuerS=&quot; /&gt;     <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160; &lt;/tokenProvider&gt;     <br />&#160;&#160;&#160; &lt;/transportClientEndpointBehavior&gt;     <br />&lt;/behavior&gt;</p>  <p>And lastly for basicHttpRelayBinding make sure the security mode is set to Transport.</p>  <p>&lt;security mode=&quot;Transport&quot; relayClientAuthenticationType=&quot;RelayAccessToken&quot; /&gt;</p>  <p>Save the config file and close it.</p>  <p>From “Bridges” use the connector to connect “MABSRelayTest” and “OneWayRelayServiceReference1”    <br />For the connector “One Way Route Connection” properties , set the Filter to “Match All”.     <br />Deploy the solution. (The steps are similar for the WCF-NetTcpRelay adapter.)</p>  <p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/3808.VSProject_399DC65C.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/3808.VSProject_5F00_399DC65C.png"><img title="VSProject" style="border-left-width: 0px; border-right-width: 0px; border-bottom-width: 0px; display: inline; border-top-width: 0px" border="0" alt="VSProject" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/7888.VSProject_thumb_5E38D4FD.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/7888.VSProject_5F00_thumb_5F00_5E38D4FD.png" width="640" height="320" /></a> </p>  <p>Go to Server Explorer and open “Windows Azure BizTalk Services”. Expand your BizTalk service and send test message to the bridge “MABSRelayTest”    <br />You may refer to <a href="https://blogs.msdn.com/b/mabs/archive/2014/10/14/test-the-bridges-post-messages-3-easy-tools-for-the-developers.aspx" target="_blank">Test the Bridges - Post messages – 3 easy tools for the developers</a></p>  <p></p>  <p></p>  <p></p>  <p></p>  <p>And I get the error message “FAILED. 500 Internal Server Error” : The one-way operation returned a non-null message with Action=''.</p>  <p>If I go to the BizTalk Service Portal and check the Tracking, it shows that the Routing was successful and Route Activity Showing the same error.</p>  <p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/1856.Tracking_4F90B9C9.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/1856.Tracking_5F00_4F90B9C9.png"><img title="Tracking" style="border-left-width: 0px; border-right-width: 0px; border-bottom-width: 0px; display: inline; border-top-width: 0px" border="0" alt="Tracking" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/7774.Tracking_thumb_124F435B.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/7774.Tracking_5F00_thumb_5F00_124F435B.png" width="640" height="299" /></a> </p>  <p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/8787.Error_3D2A381E.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/8787.Error_5F00_3D2A381E.png"><img title="Error" style="border-left-width: 0px; border-right-width: 0px; border-bottom-width: 0px; display: inline; border-top-width: 0px" border="0" alt="Error" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/6180.Error_thumb_45AD9768.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/6180.Error_5F00_thumb_5F00_45AD9768.png" width="609" height="480" /></a> </p>  <p>If you are using WCF-NetTcpRelay, then error looks like</p>  <p>&quot;The channel received an unexpected input message with Action '' while closing.&#160; You should only close your channel when you are not expecting any more input messages.&quot;</p>  <p>Now, when I go and check the Send Port’s destination folder, I see that the message is delivered successfully and no error on the BizTalk side.. </p>  <p>So why this error is coming in MABS? This is an issue with the BizTalk Server on premise – and its by design – WCF Adapter cannot handle one-way contracts so gracefully out of the box.    <br />To get around this error, you can send back a null message as explained in <a href="https://blogs.msdn.com/b/mdoctor/archive/2009/09/08/using-one-way-operations-with-the-wcf-adapter-in-biztalk.aspx" target="_blank">Using One-Way Operations with the WCF Adapter in BizTalk</a> by using the sample binding provided by Mustansir .    <br />NOTE mentioned in his blog: In order to use any of the workarounds above you need to use the <strong>WCF-Custom</strong> adapter, since that is the only adapter which allows you to add behaviors or configure the customBinding binding with user-specified binding elements.</p>]]></content:encoded>
    </item>
    <item>
      <title>Service Bus related issues</title>
      <link>https://docs.microsoft.com/archive/blogs/mabs/service-bus-related-issues</link>
      <pubDate>Mon, 27 Oct 2014 01:42:12 GMT</pubDate>
      <dc:creator><![CDATA[Shailesh Agre]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/mabs/2014/10/27/service-bus-related-issues/</guid>
      <description><![CDATA[&#160;  You may face errors while doing the tutorials that require Relays / Service Bus - where you...]]></description>
      <content:encoded><![CDATA[<p>&#160;</p>  <h3>You may face errors while doing the tutorials that require Relays / Service Bus - where you are supposed to Create LOB Relay and Target for the Operations.</h3>  <p>Message: 'Error occurred while trying to bring up the relay service. Error Message: 'The remote name could not be resolved: 'mysbname-sb.accesscontrol.windows.net'</p>  <p>The issue is because any Service Bus namespace created via portal after August 2014, will not have an accompanying ACS namespace and MABS relies on ACS for the authentication. We are working on SAS support within BizTalk Services. Till then, please use PowerShell command <a href="https://msdn.microsoft.com/en-us/library/dn495165.aspx" target="_blank">New-AzureSBNamespace</a> to create the Service Bus namespace which allows to create ACS namespace. For more details, have a look at <a href="https://blogs.msdn.com/b/cie/archive/2014/08/29/service-bus-namespace-creation-on-portal-no-longer-has-acs-connection-string.aspx" target="_blank">Service Bus namespace creation on portal no longer has ACS connection string</a></p>  <h3>&#160;</h3>  <h3>Trying to use newly created Service Bus Queue on the receive side. While deploying the VS project, getting an error.</h3>  <p>Error 1 QueueSource1 deployment failed at 'https://mymabs.biztalk.windows.net/default/passSB/sources/QueueSource1'. Failed to connect to the Service Bus using specified configuration.<strong></strong> </p>  <p>This issue is due to the service using an <strong>older version</strong> of Microsoft.ServiceBus.dll which does not support <strong>Partitioning entities. </strong>Partitioning entities is available in <strong>2.2&#160; onwards</strong> versions of Microsoft.ServiceBus.dll. </p>  <p>Check the blog for further details: <a href="https://blogs.msdn.com/b/biztalk_server_team_blog/archive/2014/08/13/enabling-biztalk-services-to-work-with-service-bus-2-2-sdk.aspx" target="_blank">Enabling BizTalk Services to work with Service Bus 2.2 SDK</a></p>  <p>The resolution mentioned is</p>  <p>1.&#160; You can use a queue created from <a href="https://code.msdn.microsoft.com/windowsapps/Service-Bus-Explorer-f2abca5a" target="_blank">Service Bus Explorer</a>. As of writing this blog, Queues created this way, do not have entity partitioning enabled by default.</p>  <p>2. Use custom create option while creating queues\topics. In the second page, user should <strong>DISABLE</strong> partitioning – UNCHECK THE CHECKBOX</p>  <p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/3823.ConfigureQueue_333E6E99.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/3823.ConfigureQueue_5F00_333E6E99.png"><img title="ConfigureQueue" style="border-top: 0px; border-right: 0px; border-bottom: 0px; border-left: 0px; display: inline" border="0" alt="ConfigureQueue" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/7181.ConfigureQueue_thumb_302C10A4.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/7181.ConfigureQueue_5F00_thumb_5F00_302C10A4.png" width="585" height="480" /></a></p>]]></content:encoded>
    </item>
    <item>
      <title>B2B (EDI / EDIFACT / AS2) (as of OCT-2014 release)</title>
      <link>https://docs.microsoft.com/archive/blogs/mabs/b2b-edi-edifact-as2-as-of-oct-2014-release</link>
      <pubDate>Tue, 21 Oct 2014 17:51:00 GMT</pubDate>
      <dc:creator><![CDATA[Shailesh Agre]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/mabs/2014/10/21/b2b-edi-edifact-as2-as-of-oct-2014-release/</guid>
      <description><![CDATA[BizTalk Services provides a BizTalk Services Portal on the cloud that enables you to manage your EDI...]]></description>
      <content:encoded><![CDATA[<p>BizTalk Services provides a <a href="https://portal.biztalk.windows.net/" target="_blank">BizTalk Services Portal</a> on the cloud that enables you to manage your EDI message transactions with trading partners.</p>  <p>Data received from partner organizations is often categorized as business-to-business (B2B) data transfer. One of the standard and most commonly used protocols for B2B and EDI is X12. Microsoft Azure BizTalk Services provides a BizTalk Services Portal that enables you to manage your trading partners and B2B messaging. The Microsoft Azure BizTalk Services Portal enables service providers to add trading partners and configure agreements that can be deployed to Microsoft Azure. The trading partners can then be send X12 messages using HTTP, AS2, FTP/S, and SFTP as transports. Once the message is received, it will be processed by the B2B pipeline deployed on Microsoft Azure and is routed to the destination configured as part of the agreement.</p>  <p>   <br />The general flow is like</p>  <ul>   <li>Create the Partners and Profiles </li>    <li>Create Agreements </li>    <li>Create bridges </li> </ul>  <h1><a href="https://msdn.microsoft.com/en-us/library/azure/hh689814.aspx" target="_blank">Create Partners and Profiles</a></h1>  <p>The Partners page displays the list of partners with their name, email, phone, and description. Using this page, you can add or delete partners and their profiles.</p>  <p>It is important to understand the concept of a <strong>Service Provider</strong> and a <strong>Partner</strong>. The <strong>Service Provider </strong>is you or your company. A <strong>Partner</strong> is whomever you receive or send EDI files, which can include another company, another department within your company, and so on. Pipelines are deployed for the <strong>Hosted Partner</strong> when the agreement is deployed. Receive and Send settings are oriented to the context of the <strong>Hosted Partner</strong>. For example, the receive settings in an agreement determine how the <strong>Hosted Partner</strong> receives messages sent from a <strong>Guest Partner</strong>. Likewise, the send settings on the agreement indicate how the <strong>Hosted Partner</strong> sends messages to the <strong>Guest Partner</strong>.</p>  <p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/5383.CreatePartner_6463456D.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/5383.CreatePartner_5F00_6463456D.png"><img title="CreatePartner" style="border-left-width: 0px; border-right-width: 0px; border-bottom-width: 0px; display: inline; border-top-width: 0px" border="0" alt="CreatePartner" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/8103.CreatePartner_thumb_4A256CFA.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/8103.CreatePartner_5F00_thumb_5F00_4A256CFA.png" width="640" height="308" /></a> </p>  <p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/4251.Partners_7BB36B40.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/4251.Partners_5F00_7BB36B40.png"><img title="Partners" style="border-left-width: 0px; border-right-width: 0px; border-bottom-width: 0px; display: inline; border-top-width: 0px" border="0" alt="Partners" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/6281.Partners_thumb_33F4730A.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/6281.Partners_5F00_thumb_5F00_33F4730A.png" width="640" height="304" /></a> </p>  <p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/8637.Profile1_682B2D01.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/8637.Profile1_5F00_682B2D01.png"><img title="Profile1" style="border-left-width: 0px; border-right-width: 0px; border-bottom-width: 0px; display: inline; border-top-width: 0px" border="0" alt="Profile1" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/5074.Profile1_thumb_60361B50.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/5074.Profile1_5F00_thumb_5F00_60361B50.png" width="640" height="469" /></a> </p>  <h1><a href="https://msdn.microsoft.com/en-us/library/azure/hh689908.aspx" target="_blank">Create Agreements</a></h1>  <p>An agreement is defined as a contract between two trading partners for transacting messages over B2B Protocols. An agreement contains the technical details of configuration between two partners for exchanging EDI transactions. The TPA defines the settings for both sending and receiving messages. A TPA involves defining the agreement settings including transport settings and the pipeline definitions (transform and route settings) between the partners.</p>  <p>Since <a href="https://social.msdn.microsoft.com/Forums/azure/en-US/e8187130-e52a-431c-8589-fc53f4683354/announcement-mabs-august-2014-update-is-now-live?forum=azurebiztalksvcs" target="_blank">AUG-2014 release</a>, Agreements and Bridges are decoupled. In a few tutorial you may still find old way of configuring agreements where you have to provide information which now is available in the bridge configuration. (e.g. Transport, Route etc.) Those tutorial will get updated. That specific information now will be available in EDI / AS2 bridges – so use bridges while configuring that information.</p>  <p>You can created X12, EDIFACT, AS2 agreements.</p>  <p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/8865.Agreements_086AE514.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/8865.Agreements_5F00_086AE514.png"><img title="Agreements" style="border-left-width: 0px; border-right-width: 0px; border-bottom-width: 0px; display: inline; border-top-width: 0px" border="0" alt="Agreements" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/6646.Agreements_thumb_5FF12461.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/6646.Agreements_5F00_thumb_5F00_5FF12461.png" width="640" height="305" /></a> </p>  <p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/6457.Agreement1_5F1DDFD9.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/6457.Agreement1_5F00_5F1DDFD9.png"><img title="Agreement1" style="border-left-width: 0px; border-right-width: 0px; border-bottom-width: 0px; display: inline; border-top-width: 0px" border="0" alt="Agreement1" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/2627.Agreement1_thumb_1!0F2.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/2627.Agreement1_5F00_thumb_5F00_121000F2.png" width="640" height="471" /></a> </p>  <p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/0410.Agreement2_68321D6D.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/0410.Agreement2_5F00_68321D6D.png"><img title="Agreement2" style="border-left-width: 0px; border-right-width: 0px; border-bottom-width: 0px; display: inline; border-top-width: 0px" border="0" alt="Agreement2" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/3343.Agreement2_thumb_3971862D.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/3343.Agreement2_5F00_thumb_5F00_3971862D.png" width="640" height="470" /></a> </p>  <p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/8535.Agreement3_334CCA43.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/8535.Agreement3_5F00_334CCA43.png"><img title="Agreement3" style="border-left-width: 0px; border-right-width: 0px; border-bottom-width: 0px; display: inline; border-top-width: 0px" border="0" alt="Agreement3" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/3644.Agreement3_thumb_226AB704.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/3644.Agreement3_5F00_thumb_5F00_226AB704.png" width="640" height="470" /></a> </p>  <p>&#160;</p>  <blockquote>   <p></p> </blockquote>  <h1><a href="https://msdn.microsoft.com/en-us/library/azure/dn793986.aspx" target="_blank">Create Bridges</a></h1>  <p>You can create bridges to process EDI / AS2 messages directly from the BizTalk Services Portal. Bridge configuration includes information such as which messaging transport to use, transforms (if required), and where the messages must be routed to. The bridges associate with the EDI / ASW2 agreements at runtime and use the EDI / AS2 protocol-related settings that are defined as part of the agreement. For more information, see <a href="https://msdn.microsoft.com/en-us/library/azure/dn794001.aspx">How do bridges resolve to agreements at runtime?</a></p>  <p></p>  <p></p>  <p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/2068.Bridge1_2A84740A.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/2068.Bridge1_5F00_2A84740A.png"><img title="Bridge1" style="border-left-width: 0px; border-right-width: 0px; border-bottom-width: 0px; display: inline; border-top-width: 0px" border="0" alt="Bridge1" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/0207.Bridge1_thumb_596C4750.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/0207.Bridge1_5F00_thumb_5F00_596C4750.png" width="640" height="472" /></a> </p>  <p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/5315.Bridge2_4D00B4D8.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/5315.Bridge2_5F00_4D00B4D8.png"><img title="Bridge2" style="border-left-width: 0px; border-right-width: 0px; border-bottom-width: 0px; display: inline; border-top-width: 0px" border="0" alt="Bridge2" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/2063.Bridge2_thumb_15508B59.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/2063.Bridge2_5F00_thumb_5F00_15508B59.png" width="640" height="469" /></a>&#160;</p>  <p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/4628.Bridge3_18F3C798.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/4628.Bridge3_5F00_18F3C798.png"><img title="Bridge3" style="border-left-width: 0px; border-right-width: 0px; border-bottom-width: 0px; display: inline; border-top-width: 0px" border="0" alt="Bridge3" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/6012.Bridge3_thumb_399D21EE.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/6012.Bridge3_5F00_thumb_5F00_399D21EE.png" width="640" height="468" /></a></p>]]></content:encoded>
    </item>
    <item>
      <title>EAI – Sources - Bridges – Destinations (as of OCT-2014 release)</title>
      <link>https://docs.microsoft.com/archive/blogs/mabs/eai-sources-bridges-destinations-as-of-oct-2014-release</link>
      <pubDate>Mon, 20 Oct 2014 06:03:34 GMT</pubDate>
      <dc:creator><![CDATA[Shailesh Agre]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/mabs/2014/10/20/eai-sources-bridges-destinations-as-of-oct-2014-release/</guid>
      <description><![CDATA[The EAI can be divided into Sources, Bridges and Destinations. BizTalk Adapter Service (BAS) – can...]]></description>
      <content:encoded><![CDATA[<p>The EAI can be divided into Sources, Bridges and Destinations. BizTalk Adapter Service (BAS) – can be considered as a special type of destination - relay end point.</p>  <p><strong><a href="https://msdn.microsoft.com/en-us/library/azure/hh689877.aspx" target="_blank">Source</a></strong> is from where you want to receive the message (equivalent to Receive Port in BizTalk on premise)</p>  <p><strong><a href="https://msdn.microsoft.com/en-us/library/azure/hh689877.aspx" target="_blank">Destination</a></strong> is where you want to send the message (equivalent to Send Port in BizTalk on premise)</p>  <p><strong><a href="https://msdn.microsoft.com/en-us/library/azure/hh689768.aspx" target="_blank">Bridge</a></strong> connects Source and Destination and provides various stages to modify, transform, enrich the message (equivalent to Pipeline in the BizTalk on premise)</p>  <h1>Sources-Bridges-Destinations</h1>  <p>Following type of sources, bridges and destinations are available. <a href="https://msdn.microsoft.com/en-us/library/azure/dn232391.aspx" target="_blank">Sources</a> and <a href="https://msdn.microsoft.com/en-us/library/azure/dn232388.aspx" target="_blank">Destinations</a> have typical properties to be set as part of their configuration.     <br />Note that currently only XML type bridge can be used for two way operations.     <br /></p>  <p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/3157.SourceBridgeDestination_4A3037D0.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/3157.SourceBridgeDestination_5F00_4A3037D0.png"><img title="Source-Bridge-Destination" style="border-left-width: 0px; border-right-width: 0px; border-bottom-width: 0px; display: inline; border-top-width: 0px" border="0" alt="Source-Bridge-Destination" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/1222.SourceBridgeDestination_thumb_1DAC294C.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/1222.SourceBridgeDestination_5F00_thumb_5F00_1DAC294C.png" width="644" height="266" /></a> </p>  <p>&#160;</p>  <p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/4722.BridgeExamples_77D89399.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/4722.BridgeExamples_5F00_77D89399.png"><img title="BridgeExamples" style="border-left-width: 0px; border-right-width: 0px; border-bottom-width: 0px; display: inline; border-top-width: 0px" border="0" alt="BridgeExamples" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/4237.BridgeExamples_thumb_5E06EE1B.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/4237.BridgeExamples_5F00_thumb_5F00_5E06EE1B.png" width="640" height="433" /></a> </p>  <p></p> A connector is used to connect Source and Bridge / Bridge and Destination. The properties set on the <a href="https://msdn.microsoft.com/en-us/library/azure/hh689887.aspx" target="_blank">connector</a> help in defining the <a href="https://msdn.microsoft.com/en-us/library/azure/498de1a4-3427-4314-a152-8d5a7f026cc0#BKMK_Filter" target="_blank">conditions</a> to route the message to <a href="https://msdn.microsoft.com/en-us/library/azure/498de1a4-3427-4314-a152-8d5a7f026cc0#BKMK_Connect" target="_blank">a correct destination</a> in case there are multiple destinations available.   <br />  <br />  <h1><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/0486.Routing_0AB238A6.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/0486.Routing_5F00_0AB238A6.png"><img title="Routing" style="border-left-width: 0px; border-right-width: 0px; border-bottom-width: 0px; display: inline; border-top-width: 0px" border="0" alt="Routing" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/3482.Routing_thumb_3E7CBFA8.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/3482.Routing_5F00_thumb_5F00_3E7CBFA8.png" width="636" height="1099" /></a> </h1>  <p>&#160;</p>  <h1>Configuring Bridges</h1>  <p>When you double click on the bridge in design mode, it shows the following respective configuration screen. You can configure those various stages to manipulate the message / properties as per your requirements.</p>  <p>&#160;</p>  <p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/4477.BridgeConfig_393069A8.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/4477.BridgeConfig_5F00_393069A8.png"><img title="BridgeConfig" style="border-left-width: 0px; border-right-width: 0px; border-bottom-width: 0px; display: inline; border-top-width: 0px" border="0" alt="BridgeConfig" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/6428.BridgeConfig_thumb_6CFAF0AA.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/6428.BridgeConfig_5F00_thumb_5F00_6CFAF0AA.png" width="588" height="480" /></a></p>  <h3><a href="https://msdn.microsoft.com/en-us/library/azure/hh689762.aspx" target="_blank">Message Types</a></h3>  <p>A single BizTalk Service project can have multiple bridges and multiple schemas. For ease of use and to save on processing time, you can associate schemas with bridges. In other words, you can require that a specific bridge can only process messages that conform to a specific schema or a set of schemas. </p>  <h3><a href="https://msdn.microsoft.com/en-us/library/azure/dn232406.aspx" target="_blank">Decode</a></h3>  <p>This stage applies to XML One-Way Bridge only. It does not apply to XML Request-Reply Bridges.</p>  <p>The <strong>Decode</strong> stage decodes an incoming text message to an XML message and passes it on the Validate stage in the XML One-Way Bridge bridge. Unlike other stages in the bridge, the <strong>Decode</strong> stage does not have an <strong>IsEnabled</strong> property. The <strong>IsEnabled</strong> property for a stage defines whether the stage processes the message passing through the bridge. The <strong>Decode</strong> stage does not include this property because whether the message is decoded or not depends on the content type of the incoming message. If a bridge receives a message of ‘text/plain’ content type, the decode stage decodes the message and converts it to an XML message. Rest of the processing at each stage within the bridge happens on the XML message and not the flat file message. However, if a message with the any of the other content types is received by the bridge, the decode stage is not activated and the message is simply passed over to the next stage.     <br />    <br /></p>  <h3><a href="https://msdn.microsoft.com/en-us/library/azure/dn232406.aspx" target="_blank">Validate</a></h3>  <p>As part of the <strong>Validate</strong> stage, you can specify whether the stage does any schema validation on the incoming request message and whether the validation warnings can be propagated back to the client as exceptions.</p>  <h3><a href="https://msdn.microsoft.com/en-us/library/azure/hh689876.aspx" target="_blank">Enrich</a></h3>  <p>As the name suggests, the <strong>Enrich</strong> stage enables message enrichment by defining properties, the values for which can be derived from the message header (standard or custom), through default properties promoted by BizTalk Services, from an external data source (only Microsoft Azure SQL Database tables supported in this release), or from an element within the message body. These properties can then be used to either route the message to a destination endpoint or for further processing by the message receiving entity.     <br />    <br /></p>  <h3><a href="https://msdn.microsoft.com/en-us/library/azure/hh689748.aspx" target="_blank">Transform</a></h3>  <p>As part of the <strong>Transform</strong> stage, you can specify the transforms to be used by the bridge. You can also specify whether you want to enable or disable the stage.     <br />    <br /></p>  <h3><a href="https://msdn.microsoft.com/en-us/library/azure/dn232371.aspx" target="_blank">Encode</a></h3>  <p>This stage applies to XML One-Way Bridge only. It does not apply to XML Request-Reply Bridges.</p>  <p>As part of the <strong>Encode</strong> stage, you can specify the flat-file schema to use for converting an XML message into a flat-file message. By the time a message reaches the <strong>Encode</strong> stage, it is already in the XML format. Depending on how the <strong>Encode</strong> stage is configured, the message is either encoded to a flat-file format or sent out as an XML message.     <br />    <br /></p>  <h3><a href="https://msdn.microsoft.com/en-us/library/azure/hh689880.aspx" target="_blank">Reply Action</a></h3>  <p>This stage applies to XML Request-Reply Bridge only. It does not apply to XML One-Way Bridges.</p>  <p>While <strong>Reply Action</strong> is technically not a ‘stage’ in an XML Request-Reply Bridge, it plays a key role in ensuring that any protocol mismatches between the message sender and message receiver are bridged right before the response message is finally sent back to the message sender. See <a href="https://msdn.microsoft.com/en-us/library/azure/2b28ccb0-dd88-4fbc-a5c4-c3b797a901e8#BKMK_Send">Reply Action</a>.</p>  <h3><a href="https://msdn.microsoft.com/en-us/library/azure/dn232377.aspx" target="_blank">Using Custom Code in Bridges</a></h3>  <p>While the fixed pattern of bridges (Validate, Enrich, Transform, and Enrich) provided with BizTalk Services serves the requirements of many integration scenarios, sometimes you need to include custom processing as part of your bridge configuration. For example, you might want to convert a message from a flat-file or an XML format to other popular formats, such as XLS or PDF before sending the message out. Similarly, at each stage of message processing, you might want to archive the message to a central data store. In such cases, the fixed pattern of the out-of-box bridges becomes insufficient. To enable such scenarios, bridges include the option of executing custom code at some key stages of the bridge.</p>]]></content:encoded>
    </item>
    <item>
      <title>What to do with MABS? (as of OCT-2014 release)</title>
      <link>https://docs.microsoft.com/archive/blogs/mabs/what-to-do-with-mabs-as-of-oct-2014-release</link>
      <pubDate>Wed, 15 Oct 2014 06:46:13 GMT</pubDate>
      <dc:creator><![CDATA[Shailesh Agre]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/mabs/2014/10/15/what-to-do-with-mabs-as-of-oct-2014-release/</guid>
      <description><![CDATA[The development of MABS applications is mainly divided into two parts - EAI and B2B (EDI / AS2)...]]></description>
      <content:encoded><![CDATA[<p>   <br />The development of MABS applications is mainly divided into two parts - <a href="https://blogs.msdn.com/b/mabs/archive/2014/10/20/eai-sources-bridges-destinations-as-of-oct-2014-release.aspx" target="_blank">EAI</a> and <a href="B2B (EDI / AS2)">B2B (EDI / AS2)</a>     <br />[I will update the links once I publish the detailed blogs for those]</p>  <h1>Enterprise Application Integration (EAI) </h1>  <p>All XML / Pass-through bridges – which can be used to connect two different types of systems – so it can be message transport protocols, structures, formats. With integration of WCF LOB adapter, you can connect to supported LOB systems on premise.&#160; <br />Visual Studio is used to develop and deploy such applications.</p>  <h1>B2B (EDI / AS2)</h1>  <p>Integrating commerce transactions between businesses over industry or vertical-specific standards, such as X12, etc.    <br />BizTalk Services Portal helps you to manage your EDI / AS2 message transactions with trading partners. If you need Transforms or other supporting artefacts, you may use Visual Studio to create a project of type “BizTalk Service Artifact” and deploy it. Then use the relevant references while configuring agreements / bridges.</p>  <p>Read more at <a href="https://msdn.microsoft.com/en-in/library/azure/hh689835.aspx" target="_blank">About Azure BizTalk Services</a></p>  <h1>Comparing with BizTalk Server on premise</h1>  <p>With name “BizTalk” in MABS, it is inevitable that we start comparing MABS and BizTalk Server on premise. Quite obvious – nothing wrong. But when we do that, lets keep in mind that MABS is in its infancy stage - yet to complete 1 year since it went live (GA) - and BizTalk Server on premise is a veteran - 14+ years. MABS also has a different form factor and scale factor. However the biggest advantage for MABS is that all the learning experience of BizTalk Server on premise product creation comes to an aid while developing MABS. So the ramp up for MABS will be very fast. The product group is diligently working&#160; on the new releases with some awesome features. Stay tuned for the announcements.</p>  <p>A very commonly asked question – BizTalk on premise server has no future? Is it dying? Presented this question in front of the product team.    <br />Here is what PMs from the product team are saying - The future of BizTalk looks like an integration solution branded under a single product name which includes seamless integration of BizTalk Server on premise, IAAS (BizTalk Server on Azure VM) and PAAS (MABS) – that's the vision product group is looking forward to– offering a “solution” to the end user’s requirement who does not have to worry about the underlying platform or the implementation details.     <br />So if you have queries like – This is how it is done in BTS why not in MABS? – This is not the same in MABS? – Can we have same feature from MABS to BTS? – etc. - keep them on hold at least for a while.</p>  <table cellspacing="0" cellpadding="0" border="1"><tbody>     <tr>       <td valign="top" width="313">         <h4 align="center"><b>BizTalk Server on premise</b></h4>       </td>        <td valign="top" width="316">         <h4 align="center"><b>MABS</b></h4>       </td>     </tr>      <tr>       <td valign="top" width="313">         <p>Receive Adapters</p>       </td>        <td valign="top" width="316">         <p>Sources (new sources keep on adding)</p>       </td>     </tr>      <tr>       <td valign="top" width="313">         <p>Send Adapters</p>       </td>        <td valign="top" width="316">         <p>Destinations (new destinations keep on adding)</p>       </td>     </tr>      <tr>       <td valign="top" width="313">         <p>Pipelines</p>       </td>        <td valign="top" width="316">         <p>Bridge</p>       </td>     </tr>      <tr>       <td valign="top" width="313">         <p>Custom pipeline components</p>       </td>        <td valign="top" width="316">         <p>Message Inspectors and Enrich in Bridge</p>       </td>     </tr>      <tr>       <td valign="top" width="313">         <p>Two way ports</p>       </td>        <td valign="top" width="316">         <p>Request-Reply Bridge – only for XML (keeps on enhancing)</p>       </td>     </tr>      <tr>       <td valign="top" width="313">         <p>Orchestrations</p>       </td>        <td valign="top" width="316">         <p>Not present as of today</p>       </td>     </tr>      <tr>       <td valign="top" width="313">         <p>Maps</p>       </td>        <td valign="top" width="316">         <p>Transforms – updated engine – keeps on enhancing</p>       </td>     </tr>      <tr>       <td valign="top" width="313">         <p>EDI / AS2</p>       </td>        <td valign="top" width="316">         <p>EDI / AS2 – full-fledged functionality</p>       </td>     </tr>      <tr>       <td valign="top" width="313">         <p>Tracking – DTA – includes message body tracking</p>       </td>        <td valign="top" width="316">         <p>Generic Tracking for message properties – not the entire message.            <br />NRR feature to store the messages is available only for EDI / AS2 scenarios (available in Developer and Premium edition)</p>       </td>     </tr>      <tr>       <td valign="top" width="313">         <p>BAM – with BAM Portal</p>       </td>        <td valign="top" width="316">         <p>In custom components you can implement own trace line statements. No equivalent of BAM portal available OOB. User has to write his own queries to fetch data from the tracking database / store.</p>       </td>     </tr>      <tr>       <td valign="top" width="313">         <p>BRE</p>       </td>        <td valign="top" width="316">         <p>Not present as of today</p>       </td>     </tr>      <tr>       <td valign="top" width="313">         <p>WCF LOB Adapter Pack</p>       </td>        <td valign="top" width="316">         <p>BizTalk Adapter Service implemented using WCF LOB Adapter Pack integration which helps to connect with on premise LOB systems</p>       </td>     </tr>      <tr>       <td valign="top" width="313">         <p>Scaling across</p>       </td>        <td valign="top" width="316">         <p>Scale using Units (not available for Developer edition)</p>       </td>     </tr>      <tr>       <td valign="top" width="313">         <p>BizTalk Admin Console</p>       </td>        <td valign="top" width="316">         <p><a href="https://go.microsoft.com/fwlink/p/?linkid=213885&amp;clcid=0x409" target="_blank">Azure Management Portal</a>             <br /><a href="https://portal.biztalk.windows.net/" target="_blank">BizTalk Management Portal</a>             <br />Visual Studio             <br />PowerShell / REST API</p>       </td>     </tr>      <tr>       <td valign="top" width="313">         <p>Development platform – Visual Studio</p>       </td>        <td valign="top" width="316">         <p>Development Platform – Visual Studio and <a href="https://portal.biztalk.windows.net/" target="_blank">BizTalk Management Portal</a> (mainly for EDI / AS2)</p>       </td>     </tr>   </tbody></table>  <p>Not so bad - ah? At least in terms of features? Some apprehension? Oh yes, do I need to mention that - the detailed functionality to make the life more easier will evolve over the time, definitely</p>  <p>BizTalk on premise is recognized for its features like guaranteed message delivery, no message loss and no duplicates for transactional adapters&#160; once BizTalk has received the message and more importantly the pub / sub model.    <br />With the architecture of MABS, there is no Message Box like store (and logic) available. So when you configure bridges, the destination needs to be known beforehand.     <br />Also, you can route the message only to a single destination. (Though you can connect multiple destinations to a single bridge and make on the fly choice of the destination based on the message properties / connector precedence.)     <br />As MABS does not store the received messages, if the message delivery fails (for what-so-ever issues at the destination end point or issues in between stages), an error is returned back to the source client&#160; as well as tracked in Tracking database and WADLogsTable. If the source was a store like FTP then the message will sit in that store only. In such cases, manual intervention may be required - like to stop the bridge, to troubleshoot and resolve the issue (assuming it is not just end point down situation). If the source was some external service / application, then the posting client has to handle this error and put a retry logic or alert mechanism as appropriate. The client may have to inform to the MABS owner / administrator if issue continues to happen. It is better to implement some kind of alerting mechanism (which is not present today out of the box) based on the error coming up in the tracking database / store. </p>  <p>I hope that the product team implements the much needed crucial functionality and we see more matured product down the line – at the earliest. Till then, you may overcome some of the shortcomings by taking care while designing your MABS solution – e.g. whenever you receive a message, first send it to blob store as the first destination and then chain it forward for real processing. This was just an example –there are architects who have devised very nice and practical business solutions (which are in production) with bright and innovative ideas. A new branch for MABS solution architecture patterns is developing.</p>  <p>So, if you have already used the BizTalk Server on premise, then I suppose you got a fair idea about what MABS can / cannot do. For readers, who have never used the BizTalk on premise, hope that the following blogs - <a href="https://blogs.msdn.com/b/mabs/archive/2014/10/20/eai-sources-bridges-destinations-as-of-oct-2014-release.aspx" target="_blank">EAI</a> and <a href="B2B (EDI / AS2)">B2B (EDI / AS2)</a> - will help you to get some better picture.     <br />[I will update the links once I publish the detailed blogs for those]</p>]]></content:encoded>
    </item>
    <item>
      <title>Test the Bridges - Post messages – 3 easy tools for the developers</title>
      <link>https://docs.microsoft.com/archive/blogs/mabs/test-the-bridges-post-messages-3-easy-tools-for-the-developers</link>
      <pubDate>Tue, 14 Oct 2014 07:23:18 GMT</pubDate>
      <dc:creator><![CDATA[Shailesh Agre]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/mabs/2014/10/14/test-the-bridges-post-messages-3-easy-tools-for-the-developers/</guid>
      <description><![CDATA[1. BizTalk Service Explorer  This is easy to use yet very powerful tool (VS Server Explorer Plug-in)...]]></description>
      <content:encoded><![CDATA[<h1>1. BizTalk Service Explorer</h1>  <p>This is easy to use yet very powerful tool (VS Server Explorer Plug-in) especially for the developers. If you don't have it installed yet, right now download it from <a href="https://visualstudiogallery.msdn.microsoft.com/1f75a6a6-a54e-44eb-8b11-1b5ea8928754" target="_blank">here</a> or follow <a href="https://social.technet.microsoft.com/wiki/contents/articles/22075.azure-biztalk-service-explorer.aspx" target="_blank">this TechNet Wiki &quot;Azure BizTalk Service Explorer&quot;</a> to add it from Visual Studio Gallery within VS. </p>  <p>Though this tool has lot of other useful features (which we will explore in other respective topics) here we are looking at how to post the message.    <br />For that, from <a href="https://social.technet.microsoft.com/wiki/contents/articles/22075.azure-biztalk-service-explorer.aspx" target="_blank">this TechNet Wiki &quot;Azure BizTalk Service Explorer&quot;</a>, see the section “Test and Debug bridges”     <br /></p>  <h1>2. Message Sender</h1>  <p></p>  <p>This tool came as a part of Windows Azure BizTalk Services SDK Samples - <a href="https://code.msdn.microsoft.com/windowsazure/Windows-Azure-BizTalk-EAI-af9bc99f" target="_blank">Windows Azure BizTalk Services EAI Sample Tools - Message Sender</a>.     <br />This is stand-alone executable – after downloading the sample you can compile the project and use the following command line syntax to push messages.</p>  <p>MessageSender.exe &lt;ACSNamespace&gt; &lt;IssuerName&gt; &lt;Issuerkey&gt; &lt;RuntimeAddress&gt; &lt;MessageFilepath&gt; &lt;ContentType&gt;</p>  <p>Note that there are no “-“ for the parameters. The exe recognizes parameters based on the position. For MessageFilePath, if sample message is in the same folder as the exe, then you can simply provide the file name – otherwise provide the entire file path. If file path contains spaces, put quotes around it.</p>  <p>The first three parameters you can get from the <a href="https://go.microsoft.com/fwlink/p/?linkid=213885&amp;clcid=0x409" target="_blank">Azure Management Portal</a> by selecting your BizTalk Service and then clicking on “Connection Information”.     <br />All the parameters are explained on the tool’s download page.</p>  <p>You can extend this tool and develop your own applications as per the business requirements to work with the MABS.</p>  <h1></h1>  <h1>3. Using on premise BizTalk Server</h1>  <p>I agree, this is not the “most common” tool, but still there are a lot of users who work simultaneously on the BizTalk Server. Following information will help to test as well as integrate the on premise BizTalk Server with MABS.</p>  <p>Open BizTalk Admin Console and under the “Send Ports” section create a new WCF-WebHttp Send Port.</p>  <p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/1667.SendPort_734FBEAD.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/1667.SendPort_5F00_734FBEAD.png"><img title="SendPort" style="border-left-width: 0px; border-right-width: 0px; border-bottom-width: 0px; display: inline; border-top-width: 0px" border="0" alt="SendPort" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/2548.SendPort_thumb_2A75FA4F.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/2548.SendPort_5F00_thumb_5F00_2A75FA4F.png" width="601" height="484" /></a> </p>  <p>Click on Configure. On General tab, provide the bridge URI.</p>  <p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/0211.BridgeEndPoint_28CCE08E.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/0211.BridgeEndPoint_5F00_28CCE08E.png"><img title="BridgeEndPoint" style="border-left-width: 0px; border-right-width: 0px; border-bottom-width: 0px; display: inline; border-top-width: 0px" border="0" alt="BridgeEndPoint" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/0647.BridgeEndPoint_thumb_52D20018.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/0647.BridgeEndPoint_5F00_thumb_5F00_52D20018.png" width="351" height="484" /></a> </p>  <p></p>  <p>On the Security tab, check the check box “Use ACS service identity” and click on Edit and then provide ACS information.</p>  <p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/7853.Security_365A2F9A.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/7853.Security_5F00_365A2F9A.png"><img title="Security" style="border-left-width: 0px; border-right-width: 0px; border-bottom-width: 0px; display: inline; border-top-width: 0px" border="0" alt="Security" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/3036.Security_thumb_4A09A9DF.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/3036.Security_5F00_thumb_5F00_4A09A9DF.png" width="349" height="484" /></a>&#160;<a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/5141.ACS_3D9E1767.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/5141.ACS_5F00_3D9E1767.png"><img title="ACS" style="border-left-width: 0px; border-right-width: 0px; border-bottom-width: 0px; display: inline; border-top-width: 0px" border="0" alt="ACS" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/2451.ACS_thumb_4CD48034.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/2451.ACS_5F00_thumb_5F00_4CD48034.png" width="410" height="246" /></a> </p>  <p>Click on “OK”s to complete the send port configuration. Now either use content based routing or orchestration to send the message using this send port.</p>  <h3>Note:</h3>  <p>If you get error like   <br />System.IdentityModel.Tokens.SecurityTokenException: The token provider was unable to provide a security token while accessing 'https://servicename3900-bts.accesscontrol.windows.net/WRAPv0.9/'. Token provider returned message: 'Error:Code:401:SubCode:T0:Detail:ACS50009: SWT token is invalid.:TraceID:b6a7b26c-b490-46a4-91c9-0764f98dd860:TimeStamp:2014-10-17 05:24:12Z'. ---&gt; System.Net.WebException: The remote server returned an error: (401) Unauthorized. at System.Net.HttpWebRequest.GetResponse() at Microsoft.BizTalk.Adapter.Wcf.Config.SharedSecretTokenHelper.GetAccessTokenCore(Uri requestUri, String appliesTo, String requestToken, String simpleAuthAssertionFormat, TimeSpan timeout) --- End of inner exception stack trace ---</p>  <p>and you are sure that the ACS credentials are correct, then try using Symmetric Key instead of the password in the “Issuer Key” Field.    <br />For this, go to the main <a href="https://go.microsoft.com/fwlink/p/?linkid=213885&amp;clcid=0x409" target="_blank">Azure Management Portal</a> and go to the ACTIVE DIRECTORY – ACCESS CONTROL NAMESPACES and then select respective ACS Namespace.- click on Manage.    <br />On the left side select Service Settings – Service identities. Then select the identity – owner – Symmetric Key    <br /></p>  <h1></h1>  <h1></h1>  <p></p>  <p></p>  <h1>Considerations for the EDI / AS2 Bridges</h1>  <p>You may use above methods to send messages to EDI / AS2 bridges as well. However, post Aug 2014 release, Agreements and bridges are decoupled. If you have not redeployed the agreement after the Aug 2014 release, then still old EDI / AS2 bridges will work as they were working before. With the new agreements (or if you have redeployed the agreement), when sending the message to EDI / AS2 bridge, the agreement resolution happens based on Agreement ID / Combination of agreement name and partners / The identities in the agreement / AS2-To and AS2-From values. For more information see the article <a href="https://msdn.microsoft.com/en-us/library/azure/dn794001.aspx" target="_blank">How do bridges resolve to agreements at runtime?</a></p>  <h2></h2>  <h2></h2>  <h2></h2>  <h4>For Message Sender</h4>  <p>You can modify the below code to add appropriate HTTP headers as per your requirements.</p>  <p>private static string SendMessageToBridge(string address, byte[] messageBytes, string token, string contentType)    <br />&#160;&#160;&#160;&#160;&#160;&#160; {     <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; string response;     <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; WebClient webClient = new WebClient();     <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; webClient.Headers[HttpRequestHeader.Authorization] = &quot;WRAP access_token=\&quot;&quot; + HttpUtility.UrlDecode(token) + &quot;\&quot;&quot;;     <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; webClient.Headers[&quot;Content-Type&quot;] = contentType;     <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; byte[] uploadData = webClient.UploadData(address, &quot;POST&quot;, messageBytes);     <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; LogTrackingId(webClient.ResponseHeaders);     <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; response = Encoding.UTF8.GetString(uploadData);     <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; return response;     <br />&#160;&#160;&#160;&#160;&#160;&#160; }</p>  <h4>For on premise BizTalk Server Send Port</h4>  <p>For the previous send port, click on configure and go the Message Tab. Here add appropriate HTTP headers as per your requirements.</p>  <p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/6153.HTTPHeader_5EB3A4B2.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/6153.HTTPHeader_5F00_5EB3A4B2.png"><img title="HTTPHeader" style="border-left-width: 0px; border-right-width: 0px; border-bottom-width: 0px; display: inline; border-top-width: 0px" border="0" alt="HTTPHeader" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/67/69/metablogapi/5327.HTTPHeader_thumb_288EDA0B.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-67-69-metablogapi/5327.HTTPHeader_5F00_thumb_5F00_288EDA0B.png" width="349" height="484" /></a> </p>  <h4>Note:</h4>  <p>The “colon” + “space” is the separator for “Header Name” and “Header Value”. If you need multiple headers, make sure to have carriage return after at the end of the previous header value – as shown here.</p>  <h4></h4>  <h3>EDI Receive and Send bridge</h3>  <p>The names Receive and Send are w.r.t. MABS. So when you want to post the message on <strong>EDI Receive Bridge</strong>, make sure that you are posting <strong>EDI message </strong>– that is <strong>text message</strong>. The EDI Receive Bridge will disassemble it to <strong>XML message</strong> and send it to the destination.     <br />Similarly, when you are posting the message on <strong>EDI Send Bridge</strong>, make sure you are posting <strong>XML message</strong>. The EDI Send Bridge will assemble it to <strong>EDI message</strong> and send it to the destination.</p>  <h1>Make sure to put proper Content Type</h1>  <p>If proper content type is not provided, the messages delivery can fail. Here are a few forum posts that will help to make a choice of the correct Content Type based on the method that you use to post the message.</p>  <ul>   <li><a href="https://social.msdn.microsoft.com/Forums/azure/en-US/4e7214a4-941a-423c-9986-98fb2ae8e18c/textplain-in-passthrough-bridge-using-sb-source?forum=azurebiztalksvcs" target="_blank">text/plain in Pass-Through Bridge using SB Source</a> </li>    <li><a href="https://social.msdn.microsoft.com/Forums/azure/en-US/130344be-5eef-4fed-9d09-11f73c530976/filter-condition-on-message-content-type?forum=azurebiztalksvcs" target="_blank">Filter condition on message content type</a> </li>    <li><a href="https://social.msdn.microsoft.com/Forums/azure/en-US/35c321ae-b648-4e3b-8e9c-0889c5616271/passthroughbridge-does-not-pass-any-messages-through?forum=azurebiztalksvcs" target="_blank">PassthroughBridge does not pass any messages through</a> </li> </ul>]]></content:encoded>
    </item>
  </channel>
</rss>