<?xml version="1.0" encoding="utf-8"?>
<rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
  version="2.0">
  <channel>
    <title>The corner store</title>
    <atom:link
      href="https://docs.microsoft.com/archive/blogs/vtyagi/feed.xml"
      rel="self"
      type="application/rss+xml" />
    <link>https://docs.microsoft.com/archive/blogs/vtyagi/feed.xml</link>
    <description>Hi and welcome! I used to contribute to BizTalk Server 2006 and BTS 2006 R2, however, I am no longer affliated with that product. The current blog content is directed towards AppFabric Windows Server. Thanks - Vikas</description>
    <lastBuildDate>Wed, 17 Apr 2019 03:28:42 GMT</lastBuildDate>
    <language>en-US</language>
    <sy:updatePeriod>hourly</sy:updatePeriod>
    <sy:updateFrequency>1</sy:updateFrequency>
    <item>
      <title>Using Visual Studio to create a Windows Azure Node.js cloud app</title>
      <link>https://docs.microsoft.com/archive/blogs/vtyagi/using-visual-studio-to-create-a-windows-azure-node-js-cloud-app</link>
      <pubDate>Wed, 11 Jan 2012 11:55:36 GMT</pubDate>
      <dc:creator><![CDATA[vtyagi]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/vtyagi/2012/01/11/using-visual-studio-to-create-a-windows-azure-node-js-cloud-app/</guid>
      <description><![CDATA[I wanted to create a Node.js cloud application for Windows Azure platform. Current support is...]]></description>
      <content:encoded><![CDATA[<p><font face="Calibri"><font size="2"></font></font></p>  <p><font face="Calibri"><font size="2">I wanted to create a Node.js cloud application for Windows Azure platform. Current support is limited to PowerShell based user experience for creating and publishing a Node.js cloud app to Windows Azure. See the <a href="http://www.windowsazure.com/en-us/develop/nodejs/tutorials/web-app-with-express/" target="_blank">Node.js application creation tutorial</a>. </font></font></p>  <p><font face="Calibri"><font size="2">I ran into the issue where the publish PowerShell command-let, Get-AzureSettings, failed. I already had 10 management certificates for my Windows Azure subscription and it appears that the command-let tries to create a new certificate for generating the publishsettings file. This is weird since I already have a management certificate for uploading packages via Visual Studio.&#160; </font></font></p>  <p><font face="Calibri"><font size="2">I didn’t have any unneeded certificates that I could delete. So, this was clearly a blocker for me and pushed me to look for a Visual Studio based solution. Visual Studio already supports cloud apps creation and publishing (without requiring creation of additional certificates). It seemed that there should be an easy hookup for supporting Node.js. Apparently, it was not super easy and straightforward, however after jumping through a few hoops, I managed to get Visual Studio create the Node.js application package. I was able to test the application package in DevFabric as well as publish the app to the Cloud. I hope you find this information useful.</font></font></p>  <br clear="all" />  <h2>Issues addressed</h2>  <br clear="all" />  <ol>   <li><font size="2" face="Calibri">Get-AzurePublishSettings creates 1 management certificate for each of my subscriptions, even though I may deploy the application to the first subscription only. It probably does that to provide support for deploying the package to any of the subscriptions. It is a crappy assumption since all my subscriptions now have a certificate that is essentially useless for reuse elsewhere (Visual Studio).</font> </li>    <li><font size="2" face="Calibri">Get-AzurePublishSettings command-let fails if I already have 10 certificates in my subscription. The error is:</font>       <ol>       <li><font size="2" face="Calibri">“You have reached your quota of 10 management certificates and cannot add any more. Visit the Management Portal to delete any unneeded certificates.”</font> </li>        <li><font size="2" face="Calibri">What do I do if I don’t have any unneeded certificates to delete!!</font> </li>     </ol>   </li>    <li><font size="2" face="Calibri">There is no way for me to use an existing management certificate with Publish-AzureService command-let. </font></li> </ol>  <br clear="all" />  <h2>Pre-requisites</h2>  <br clear="all" />  <p><font size="2" face="Calibri">Ensure that you have the following prerequisites installed on the computer:</font></p>  <ol>   <li><font size="2" face="Calibri">Windows Azure SDK for .NET – </font><a href="http://www.windowsazure.com/en-us/develop/net/" target="_blank"><font size="2" face="Calibri">download link</font></a><font size="2" face="Calibri"> </font></li>    <li><font size="2" face="Calibri">Windows Azure SDK for Node.js – </font><a href="http://www.windowsazure.com/en-us/develop/nodejs/" target="_blank"><font size="2" face="Calibri">download link</font></a><font size="2" face="Calibri"> </font></li> </ol>  <br clear="all" />  <h2>Environment </h2>  <br clear="all" />  <p><font size="2" face="Calibri">I used the following development environment:</font></p>  <ol>   <li><font size="2" face="Calibri">Windows Server 2008 R2 SP1</font> </li>    <li><font size="2" face="Calibri">Visual Studio 2010 Professional SP1</font> </li> </ol>  <br clear="all" />  <h2>Initial setup<font size="2" face="Calibri"> </font></h2>  <br clear="all" />  <ol>   <li><font size="2" face="Calibri">Open a Node.js PowerShell command prompt via start &gt; All Programs &gt; Windows Azure SDK for Node.js – November 2011 &gt; Windows Azure PowerShell for Node.js &gt; Right click &gt; Run as Administrator</font> </li>    <li><font size="2" face="Calibri">Start Visual Studio. File &gt; New Project … .New Project dialog box pops up</font> </li>    <li><font size="2" face="Calibri">Select Visual C # &gt; Cloud in Recent Templates pane on the left. Select Windows Azure Project template in the middle pane, click OK.</font> </li>    <li><font size="2" face="Calibri">New Windows Azure Project dialog box pops up. </font></li>    <li><font size="2" face="Calibri">Select ASP.NET Web Role and click on right arrow button. Click OK.</font> </li>    <li><font size="2" face="Calibri">Visual Studio may prompt to install Visual Studio extension NuGet. Click OK to install the extension.</font> </li>    <li><font size="2" face="Calibri">Delete Account, App_Data, Scripts, Styles, *.aspx, Global.asax, Site.Master, Web.config (Web.Debug.config, Web.Release.config), WebRole.cs files and folders from WebRole1 project. What you have is an empty webrole to which we will add Node.js capabilities in the next section.</font> </li>    <li><font size="2" face="Calibri">Assume that the project name is WindowsAzureProject1, WebRole name is WebRole1 [Replace these names with the actual names from your project].</font> </li> </ol>  <br clear="all" />  <h2>The conversion</h2>  <br clear="all" />  <ol>   <li><font size="2" face="Calibri">In the Node.js PowerShell command prompt, run commands </font>      <ol>       <li><font size="2" face="Calibri">cd c:\temp </font></li>        <li><font size="2" face="Calibri">New-AzureService tempService </font></li>        <li><font size="2" face="Calibri">Copy tempService\*.* &lt;project folder&gt;\WindowsAzureProject1\WebRole1 </font></li>        <li><font size="2" face="Calibri">Add-AzureNodeWebRole WebRole1 </font></li>        <li><font size="2" face="Calibri">npm install azure </font></li>        <li><font size="2" face="Calibri">xcopy /chedi .\WebRole1\. &lt;project folder\WindowsAzureProject1\WebRole1\. </font></li>     </ol>   </li>    <li><font size="2" face="Calibri">In Visual Studio, add server.js, Web.cloud.config, Web.config files to the WebRole1 project </font></li>    <li><font size="2" face="Calibri">Add a reference to c:\windows\assembly\GAC_64\1.6.0.0__31bf3856ad364e35\msshrtmi.dll. Set Copy local property to True. </font></li>    <li><font size="2" face="Calibri">Manually add the following to &lt;project folder&gt;\WindowsAzureProject\WebRole1\WebRole1.csproj file. For all these binaries, set Copy Local to False. </font>      <p><font size="2" face="Calibri">&lt;ItemGroup&gt;          <br />&#160; &lt;Content Include=&quot;bin\node.exe&quot; /&gt;           <br />&#160; &lt;Content Include=&quot;bin\vcredist_x64.exe&quot; /&gt;           <br />&#160; &lt;Content Include=&quot;bin\iisnode.msi&quot; /&gt;           <br />&#160; &lt;Content Include=&quot;bin\setup_web.cmd&quot; /&gt;           <br />&lt;/ItemGroup&gt;</font></p>   </li>    <li><font size="2" face="Calibri">Now you are ready to build, package, deploy, debug the &lt;project folder&gt;\WindowsAzureProject1 as a regular cloud app in Visual Studio.&#160; </font></li>    <li><font size="2" face="Calibri">And did I mention that you won’t be required to create a new management certificate for all your subscriptions for packaging and publishing the application to Windows Azure<img style="border-bottom-style: none; border-left-style: none; border-top-style: none; border-right-style: none" class="wlEmoticon wlEmoticon-smile" alt="Smile" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/60/81/metablogapi/7418.wlEmoticon-smile_29C7E73B.png" original-url="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-81-metablogapi/7418.wlEmoticon_2D00_smile_5F00_29C7E73B.png" />. You can use the existing management certificate that you have imported for use with Visual Studio publishing.</font> </li> </ol>  <br clear="all" />  <hr /><font size="2" face="Calibri">THIS CODE AND INFORMATION ARE PROVIDED &quot;AS IS&quot; WITHOUT WARRANTY OF ANY KIND, WHETHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE.    <br clear="all" /></font>  <p><font size="2" face="Calibri">Copyright (C) 2011 Vikas Tyagi. All rights reserved.</font></p>  <div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:b22e3ff4-660a-4889-a3c6-d7cf4c9c1619" class="wlWriterEditableSmartContent">Technorati Tags: <a href="http://technorati.com/tags/Windows+Azure" rel="tag">Windows Azure</a>,<a href="http://technorati.com/tags/Visual+Studio" rel="tag">Visual Studio</a>,<a href="http://technorati.com/tags/Node.js" rel="tag">Node.js</a>,<a href="http://technorati.com/tags/Cloud+App" rel="tag">Cloud App</a></div>]]></content:encoded>
    </item>
    <item>
      <title>Windows Server AppFabric Beta2 Setup: Common issues and resolutions</title>
      <link>https://docs.microsoft.com/archive/blogs/vtyagi/windows-server-appfabric-beta2-setup-common-issues-and-resolutions</link>
      <pubDate>Wed, 03 Mar 2010 09:13:00 GMT</pubDate>
      <dc:creator><![CDATA[vtyagi]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/vtyagi/2010/03/03/windows-server-appfabric-beta2-setup-common-issues-and-resolutions/</guid>
      <description><![CDATA[Note: This information applies to Windows Server AppFabric Beta2
Issue/symptoms: 1. An unhandled...]]></description>
      <content:encoded><![CDATA[<P><EM>Note: This information applies to Windows Server AppFabric Beta2</EM></P>
<P>Issue/symptoms: <BR>1. An unhandled exception ('System.Runtime.InteropServices.COMException') occurred in setup.exe [3668] <BR>2. Setup.exe crashes and watson dump shows the following: System.Runtime.InteropServices.COMException (0x800B0100): No signature was present in the subject. (Exception from HRESULT: 0x800B0100</P>
<P>Potential resolution: The registry entries under HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Component Based Servicing\Packages\ may be corrupt. The System Update Readiness Tool (KB947821) would fix some of these corrupt package entries but not all. However, it would list all entries which it could not fix, in CheckSUR.log. Manually remove those entries from registry as per this article: <A href="http://www.raymond.cc/blog/archives/2009/03/06/fix-blank-or-empty-list-in-vista-turn-windows-features-on-or-off-optionalfeaturesexe/" mce_href="http://www.raymond.cc/blog/archives/2009/03/06/fix-blank-or-empty-list-in-vista-turn-windows-features-on-or-off-optionalfeaturesexe/">http://www.raymond.cc/blog/archives/2009/03/06/fix-blank-or-empty-list-in-vista-turn-windows-features-on-or-off-optionalfeaturesexe/</A></P>
<P><FONT face="Courier New, Courier, Monospace>THIS CODE AND INFORMATION ARE PROVIDED " FONT PURPOSE.< PARTICULAR A FOR FITNESS OR AND MERCHANTABILITY OF WARRANTIES IMPLIED THE TO LIMITED NOT BUT INCLUDING IMPLIED, EXPRESSED WHETHER KIND, ANY WARRANTY WITHOUT IS? AS>Issue/Symptoms:</FONT></P>
<P><FONT face="Courier New, Courier, Monospace>THIS CODE AND INFORMATION ARE PROVIDED " FONT PURPOSE.< PARTICULAR A FOR FITNESS OR AND MERCHANTABILITY OF WARRANTIES IMPLIED THE TO LIMITED NOT BUT INCLUDING IMPLIED, EXPRESSED WHETHER KIND, ANY WARRANTY WITHOUT IS? AS>Setup is disabled or is not enabled devices associated with service failed to start <BR>Setup Microsoft.ApplicationServer.Setup.Core.SetupException: it is disabled or is not enabled devices associated with service failed to start <BR>Microsoft.ApplicationServer.Setup.Installer.WusaProxy.GenerateAndThrowSetupException (Int32 exitCode, LogEventSource logEventSource) <BR>Microsoft.ApplicationServer.Setup.Installer.WusaProxy.Invoke (LogEventSource logEventSource, String packageName) <BR>Microsoft.ApplicationServer.Setup.Installer.CbsInstaller.InvokeWusa (InstallMode installMode) <BR>Microsoft.ApplicationServer.Setup.Installer.CbsInstaller.Install () <BR>Microsoft.ApplicationServer.Setup.Client.SetupWorkflow.StartActionPhase () <BR>Microsoft.ApplicationServer.Setup.Client.ProgressPage.StartAction () <BR></FONT></P>
<P><FONT face="Courier New, Courier, Monospace>THIS CODE AND INFORMATION ARE PROVIDED " FONT PURPOSE.< PARTICULAR A FOR FITNESS OR AND MERCHANTABILITY OF WARRANTIES IMPLIED THE TO LIMITED NOT BUT INCLUDING IMPLIED, EXPRESSED WHETHER KIND, ANY WARRANTY WITHOUT IS? AS>Potential resolution: Check if the Windows Update server is stopped/disabled. This service needs to be running to install Windows Server AppFabric.</P></FONT>]]></content:encoded>
    </item>
    <item>
      <title>Bam Best Practices</title>
      <link>https://docs.microsoft.com/archive/blogs/vtyagi/bam-best-practices</link>
      <pubDate>Fri, 04 May 2007 19:27:00 GMT</pubDate>
      <dc:creator><![CDATA[vtyagi]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/vtyagi/2007/05/04/bam-best-practices/</guid>
      <description><![CDATA[See Darren's blog on bam best practices]]></description>
      <content:encoded><![CDATA[See <A class="" href="http://blogs.msdn.com/darrenj/archive/2007/04/30/bam-best-practice-starter-for-10.aspx" mce_href="http://blogs.msdn.com/darrenj/archive/2007/04/30/bam-best-practice-starter-for-10.aspx">Darren's blog on bam best practices</A>]]></content:encoded>
    </item>
    <item>
      <title>TPE case files</title>
      <link>https://docs.microsoft.com/archive/blogs/vtyagi/tpe-case-files</link>
      <pubDate>Tue, 07 Nov 2006 19:01:00 GMT</pubDate>
      <dc:creator><![CDATA[vtyagi]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/vtyagi/2006/11/07/tpe-case-files/</guid>
      <description><![CDATA[Note: This information applies to Tracking Profile Editor in BizTalk Server 2006
There are...]]></description>
      <content:encoded><![CDATA[<P><EM>Note: This information applies to Tracking Profile Editor in BizTalk Server 2006</EM></P>
<P>There are situations where TPE doesn't behave as expected. The product documentation provides all factual details but does little justice to resolving common issues. This post is directed at resolving common&nbsp;BAM cases that center around TPE.<STRONG>&nbsp;</STRONG>The cases listed are the ones that customers run into most often. If there is one that you are battling with and would like see the same appear here, let me know.</P>
<P><STRONG>The case of multiple rows in the activity table with holes/null for values when a single message is processed by BTS solution. </STRONG></P>
<P>Presence of multiple rows in the activity table when you expect a single row containing all the BAM data suggests that you have mapped the business data of interest correctly, however, your continuations are setup incorrectly. If you track BAM data from multiple BizTalk schedules, e.g., ports and orchestrations, then you would need to setup continuations between these schedules. See <A class="" href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/BTS06CoreDocs/html/31d6fc24-676e-418c-8e78-1a46b045905d.asp" mce_href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/BTS06CoreDocs/html/31d6fc24-676e-418c-8e78-1a46b045905d.asp">product documentation</A> on how to do this. See my blog post&nbsp;on <A class="" href="http://blogs.msdn.com/vtyagi/archive/2006/10/06/TPE-and-multiple-continuations.aspx" mce_href="http://blogs.msdn.com/vtyagi/archive/2006/10/06/TPE-and-multiple-continuations.aspx">TPE and multiple continuations</A>.</P>
<P mce_keep="true"><STRONG>The case of orphaned Tracking profiles</STRONG></P>
<P mce_keep="true">Tracking profiles are associated with an activity. If an activity is undeployed, the associated tracking profiles can become orphaned, which means they are no longer associated with an activity. In such a situation, if you pump a message through your solution, you will notice an error in the event log saying that TDDS ran into some problem (or something to that effect). So, the tracking profile exists but there is no associated activity definition deployed. There is no way to persist the BAM data. This is a well documented scenario. See <A class="" href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/BTS06CoreDocs/html/e8923dab-5d02-41a3-840b-104b20624e6c.asp" mce_href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/BTS06CoreDocs/html/e8923dab-5d02-41a3-840b-104b20624e6c.asp">product documentation </A>on how to remedy this common ill. </P>
<P mce_keep="true">The error message are</P>
<P mce_keep="true">&lt;Event log entry&gt;</P>
<P mce_keep="true">Event Type:&nbsp;Error<BR>Event Source:&nbsp;BAM EventBus Service<BR>Event Category:&nbsp;None<BR>Event ID:&nbsp;6<BR>Date:&nbsp;&nbsp;**/**/****<BR>Time:&nbsp;&nbsp;*:**:** **<BR>User:&nbsp;&nbsp;N/A<BR>Computer:&nbsp;**********<BR>Description:<BR>Execute event error. Error(s) occurred while executing events, see TDDS_FailedTrackingData table for more details.&nbsp; SQLServer: **********, Database: BAMPrimaryImport.</P>
<P mce_keep="true">For more information, see Help and Support Center at <A href="http://go.microsoft.com/fwlink/events.asp">http://go.microsoft.com/fwlink/events.asp</A>.</P>
<P mce_keep="true">&lt;/Event log entry&gt;</P>
<P mce_keep="true">&lt;TDDS_FailedTrackingData table entries&gt;</P>
<P mce_keep="true">Could not find stored procedure 'dbo.bam_********_PrimaryImport'.<BR>TDDS failed to execute event. Could not find stored procedure 'dbo.bam_********_AddRelationship'.<BR>TDDS failed to execute event. Could not find stored procedure 'dbo.bam_********_EnableContinuation'.<BR>TDDS failed to execute event. Could not find stored procedure 'dbo.bam_********_PrimaryImport'.<BR>TDDS failed to execute event. Parameter is not valid.</P>
<P mce_keep="true">&lt;/TDDS_FailedTrackingData table entries&gt;</P>
<P mce_keep="true"><STRONG>The case of dangling records and uncompleted activity when interchangeID is used for continuations</STRONG></P>
<P mce_keep="true">InterchangeID is available from two sources. One is the message context property bag and other is the system context property bag. You work with the first one through "select event source"-&gt;"select messaging property" menu and the other via "select event source"-&gt;"select context property" menu-&gt;BTS.InterchangeID. Although the values that you will get from either source is the same, the way they are extracted are different.</P>
<P mce_keep="true">Regardless of which one you use, you must be consistent in your usage. Stick to one source only.</P>]]></content:encoded>
    </item>
    <item>
      <title>TPE and multiple continuations</title>
      <link>https://docs.microsoft.com/archive/blogs/vtyagi/tpe-and-multiple-continuations</link>
      <pubDate>Fri, 06 Oct 2006 17:30:00 GMT</pubDate>
      <dc:creator><![CDATA[vtyagi]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/vtyagi/2006/10/06/tpe-and-multiple-continuations/</guid>
      <description><![CDATA[Note: This information applies to Tracking Profile Editor in BizTalk Server 2006
For most part now,...]]></description>
      <content:encoded><![CDATA[<P><EM>Note: This information applies to Tracking Profile Editor in BizTalk Server 2006</EM></P>
<P>For most part now, it seems that creating single continuation [say, between two orchestrations] is a breeze for most developers. The part where TPE is not explicitly clear is the case of multiple continuations. The situation is typical as a BAM activity spans multiple receive ports, orchestrations and send ports. In order to collect the Business Activity Monitoring (BAM) data in one record, one has to setup continuations between all the BizTalk schedules. This turns out to be non trivial through the TPE UI, hence this posting to illustrate the case of multiple continuations. </P>
<P>Let's discuss some special cases. Let me lay out the general terms first. The case of one port OR one orchestration is a special case of many port and many orchestrations scenario. Lets deal with the ramifications of many port and many orchestration scenario. The different ways in which a message can be received and processed by orchestrations presents some interesting challenges and solutions. The scenario consists of a number of receive ports (R), orchestrations (O) and send ports (S). We use interchangeID context property as the glue to bind the continuations. You can, of course, use any other context property, activityID or anything else in place of interchangeID. The choice is immaterial to the problem at hand. I exclude the discussion on the data item/milestone/context-property-value being tracked from these ports and orchestrations. You would do that part of the mapping as per your business logic. Our target is to capture all BAM data from all the ports and orchestrations in a single row in the completed activity table .</P>
<P>A message arrives at exactly one of the R receive ports and gets processed by exactly one of O orchestrations. In this case, you will create a continuation folder on the Left Hand Side (LHS) activity tree view&nbsp;and map the interchangeID context property from the context property schema via "select event source"-&gt;"select context property" menu item. Next you will right click on the newly created interchangeID node on the LHS and select the ports to map from. In the select ports dialog box that comes up, select all N receive ports. Next you will create a continuationID folder on the LHS. You will open all O orchestrations, one at a time, and map the interchangeID context property from a shape in the orchestration. The mapping will look something like this:</P>
<P>- OrderProcess<BR>&nbsp;&nbsp;&nbsp; |- start_milestone<BR>&nbsp;&nbsp;&nbsp; |- end_milestone<BR>&nbsp;&nbsp;&nbsp; |- order_amount<BR>&nbsp;&nbsp;&nbsp; |- order_number<BR>&nbsp;&nbsp;&nbsp; |- order_item_number<BR>&nbsp;&nbsp;&nbsp; |- continuationR2O&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [the continuation folder]<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |- interchangeID&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [port mapping includes all R receive ports]<BR>&nbsp;&nbsp;&nbsp; |- continuationR2O&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [the continuationID folder]<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |- interchangeID&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [from O1]<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |- interchangeID&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [from O2]<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; .&nbsp;&nbsp;&nbsp; .<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; .&nbsp;&nbsp;&nbsp; .<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |- interchangeID&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [from Oo]<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </P>
<P>A message arrives at exactly one of the R receive ports and gets processed by each and every one of O orchestrations. This happens as the message is simultaneously and parallely sent to each of the O orchestrations. In this case, we would need O continuations. The mapping will look something like this:</P>
<P>- OrderProcess<BR>&nbsp;&nbsp;&nbsp; |- start_milestone<BR>&nbsp;&nbsp;&nbsp; |- end_milestone<BR>&nbsp;&nbsp;&nbsp; |- order_amount<BR>&nbsp;&nbsp;&nbsp; |- order_number<BR>&nbsp;&nbsp;&nbsp; |- order_item_number<BR>&nbsp;&nbsp;&nbsp; |- continuationR2O1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [the continuation folder]<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |- interchangeID&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [port mapping includes all R receive ports]<BR>&nbsp;&nbsp;&nbsp; |- continuationR2O1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [the continuationID folder]<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |- interchangeID&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [from O1]<BR>&nbsp;&nbsp;&nbsp; |- continuationR2O2&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [the continuation folder]<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |- interchangeID&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [port mapping includes all R receive ports]<BR>&nbsp;&nbsp;&nbsp; |- continuationR2O2&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [the continuationID folder]<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |- interchangeID&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [from O2]<BR>&nbsp;&nbsp;&nbsp; .&nbsp;&nbsp; .&nbsp;&nbsp;&nbsp;&nbsp; .<BR>&nbsp;&nbsp;&nbsp; .&nbsp;&nbsp; .&nbsp;&nbsp;&nbsp;&nbsp; .<BR>&nbsp;&nbsp;&nbsp; |- continuationR2Oo&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [the continuation folder]<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |- interchangeID&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [port mapping includes all R receive ports]<BR>&nbsp;&nbsp;&nbsp; |- continuationR2Oo&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [the continuationID folder]<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |- interchangeID&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [from Oo]</P>
<P><BR>Now, let's discuss a CBR scenario. A message arrives at exactly one of the R receive ports and gets sent to exactly one of S send ports. This routing happens based on a context property value in the message. In this case, we would need one continuation. The mapping will look something like this:</P>
<P>- OrderProcess<BR>&nbsp;&nbsp;&nbsp; |- start_milestone<BR>&nbsp;&nbsp;&nbsp; |- end_milestone<BR>&nbsp;&nbsp;&nbsp; |- order_amount<BR>&nbsp;&nbsp;&nbsp; |- order_number<BR>&nbsp;&nbsp;&nbsp; |- order_item_number<BR>&nbsp;&nbsp;&nbsp; |- continuationR2S&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [the continuation folder]<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |- interchangeID&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [port mapping includes all R receive ports]<BR>&nbsp;&nbsp;&nbsp; |- continuationR2S&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [the continuationID folder]<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |- interchangeID&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [port mapping includes all S send ports]</P>
<P>The above mapping will also hold true in the following case. A message arrives at exactly one of the R receive ports and gets sent to all of the S send ports. </P>
<P>A message is processed by exactly one of O orchestrations (we don't know which one will execute at runtime) and is then sent by that orchestration to all the S send ports. In this case, we would need one continuation. The mapping will look something like this: </P>
<P>- OrderProcess<BR>&nbsp;&nbsp;&nbsp; |- start_milestone<BR>&nbsp;&nbsp;&nbsp; |- end_milestone<BR>&nbsp;&nbsp;&nbsp; |- order_amount<BR>&nbsp;&nbsp;&nbsp; |- order_number<BR>&nbsp;&nbsp;&nbsp; |- order_item_number<BR>&nbsp;&nbsp;&nbsp; |- continuationO1S&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [the continuation folder]<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |- interchangeID&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [from O1]<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |- interchangeID&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [from O2]<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; .&nbsp;&nbsp;&nbsp; .<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; .&nbsp;&nbsp;&nbsp; .<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |- interchangeID&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [from Oo]<BR>&nbsp;&nbsp;&nbsp; |- continuationO1S&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [the continuationID folder]<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |- interchangeID&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [port mapping includes all S receive ports]</P>
<P><BR>A message gets processed by all O orchestrations in sequence, one by one. The mapping will look something like this: </P>
<P>- OrderProcess<BR>&nbsp;&nbsp;&nbsp; |- start_milestone<BR>&nbsp;&nbsp;&nbsp; |- end_milestone<BR>&nbsp;&nbsp;&nbsp; |- order_amount<BR>&nbsp;&nbsp;&nbsp; |- order_number<BR>&nbsp;&nbsp;&nbsp; |- order_item_number<BR>&nbsp;&nbsp;&nbsp; |- continuationO12&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [the continuation folder]<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |- interchangeID&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [from O1]<BR>&nbsp;&nbsp;&nbsp; |- continuationO12&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [the continuationID folder]<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |- interchangeID&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [from O2]<BR>&nbsp;&nbsp;&nbsp; |- continuationO23&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [the continuation folder]<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |- interchangeID&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [from O2]<BR>&nbsp;&nbsp;&nbsp; |- continuationO23&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [the continuationID folder]<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |- interchangeID&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [from O3]<BR>&nbsp;&nbsp;&nbsp; .&nbsp;&nbsp; .&nbsp;&nbsp;&nbsp;&nbsp; .<BR>&nbsp;&nbsp;&nbsp; .&nbsp;&nbsp; .&nbsp;&nbsp;&nbsp;&nbsp; .<BR>&nbsp;&nbsp;&nbsp; |- continuationOxO&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [the continuation folder]<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |- interchangeID&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [from On]<BR>&nbsp;&nbsp;&nbsp; |- continuationOxO&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [the continuationID folder]<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |- interchangeID&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [from Oo]</P>
<P mce_keep="true">&nbsp;</P>]]></content:encoded>
    </item>
    <item>
      <title>Tracking interchange versus tracking interchange messages</title>
      <link>https://docs.microsoft.com/archive/blogs/vtyagi/tracking-interchange-versus-tracking-interchange-messages</link>
      <pubDate>Wed, 15 Mar 2006 13:40:00 GMT</pubDate>
      <dc:creator><![CDATA[vtyagi]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/vtyagi/2006/03/15/tracking-interchange-versus-tracking-interchange-messages/</guid>
      <description><![CDATA[Note: This information applies to Business Activity Monitoring in BizTalk Server 2006
There are a...]]></description>
      <content:encoded><![CDATA[<P><FONT face=Arial color=#000000 size=2><EM>Note: This information applies to Business Activity Monitoring in BizTalk Server 2006<BR></EM></FONT></P>
<P><FONT face=Arial color=#000000>There are a few tracking scenarios that need explaination as far as tracking options for messages that arrive wrapped in an interchange or batch are concerned.&nbsp; The choice is completely up to the user on how to construct the tracking profile for each of these scenarios.&nbsp; The reasons are:<BR></P></FONT>
<OL>
<LI><FONT face=Arial color=#000000>Different activities for different port-schema pairs (or just port-no schema) scenario. Multiple activities are configured for the same port but for different schemas.<BR></FONT>
<LI><FONT face=Arial color=#000000>A single activity scenario. For different milestones and data items in the activity, map different XPaths from different schemas. Furthermore:<BR></FONT>
<UL>
<LI><FONT face=Arial color=#000000>If you choose the activity start point as the port start point and you want to track meta-data from the interchange and some payload data from the other created messages, then you will end up using change history table if the change history is turned on for the activity.<BR></FONT>
<LI><FONT face=Arial color=#000000>If you choose the activity start after the port start, then, as the interchange is broken up into individual messages, you are will have multiple rows in the activity table. Each row will correspond to one message.<BR></FONT></LI></UL>
<LI><FONT face=Arial color=#000000>A single activity scenario. For different milestones and data items in the activity, map different XPaths from the same schema. In this case, there will be one row in the activity table. If a schema use is repeated and if change history is turned on for this activity, the change history tables will be populated.<BR></FONT></LI></OL>
<P><FONT face="Courier New" color=#000000 size=1>Copyright (C) 2006 Vikas Tyagi. All rights reserved. </FONT></P>
<P><FONT face=Arial color=#000000><BR><FONT face="Courier New" size=1>THIS CODE AND INFORMATION ARE PROVIDED "AS IS" WITHOUT&nbsp; <BR>WARRANTY OF ANY KIND, WHETHER EXPRESSED OR IMPLIED, <BR>INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF <BR>MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE.</FONT></P></FONT>]]></content:encoded>
    </item>
    <item>
      <title>Tracking Profile Editor: Use Case</title>
      <link>https://docs.microsoft.com/archive/blogs/vtyagi/tracking-profile-editor-use-case</link>
      <pubDate>Tue, 14 Mar 2006 20:10:00 GMT</pubDate>
      <dc:creator><![CDATA[vtyagi]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/vtyagi/2006/03/14/tracking-profile-editor-use-case/</guid>
      <description><![CDATA[Note: This information applies to Business Activity Monitoring in BizTalk Server 2006
TPE is the...]]></description>
      <content:encoded><![CDATA[<P><FONT face=Arial size=2><EM>Note: This information applies to Business Activity Monitoring in BizTalk Server 2006</EM><BR></FONT></P>
<P>TPE is the provisioning tool for BAM instrumentation of hte runtime. As such, it is intended for use by someone expert in the implementation of the BizTalk solution. This would typically be the developer, Eddie, himself.</P>
<P>&nbsp;</P>
<P>Eddie has been given a BAM Activity Definition file and is asked to develop a tracking profile to provision it. Eddie, given his understanding of the details of the solution, analyzes the BAM Activity Definition and makes a list of assemblies (contents: orchestrations, schemas/context properties, etc.) that he will need to configure in order to complete this task. He then</P>
<OL>
<LI>Launches TPE to edit existing or create new tracking profile. 
<LI>Selects a management database source pointing to 
<UL>
<LI>Directly - assemblies and their constituent parts which are the event sources. 
<LI>Indirectly - the BAM primary import table database and any deployed BAM Activity Definitions, which are the mapping targets.</LI></UL>
<LI>Selects any artifact, in some cases by assembly (messaging properties being the exception) from which to map (orchestrations/ports). 
<LI>Imports the BAM Activity Definition. 
<LI>Drags and drops shapes or message-payload/context-property data items from RHS to the milestones and data items on the LHS. 
<UL>
<LI>Orchestrations 
<LI>Schemas: payload-message/context-properties</LI></UL>
<LI>Deploys and tests the tracking profile. 
<LI>Saves the tracking profile and checks it into source safe with his notes.</LI></OL>
<P><FONT face="Courier New" size=1>Copyright (C) 2006 Vikas Tyagi. All rights reserved. </FONT></P>
<P><FONT face="Courier New" size=1>THIS CODE AND INFORMATION ARE PROVIDED "AS IS" WITHOUT&nbsp; <BR>WARRANTY OF ANY KIND, WHETHER EXPRESSED OR IMPLIED, <BR>INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF <BR>MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE.</FONT></P>]]></content:encoded>
    </item>
    <item>
      <title>BAM Acronyms</title>
      <link>https://docs.microsoft.com/archive/blogs/vtyagi/bam-acronyms</link>
      <pubDate>Thu, 23 Feb 2006 18:55:00 GMT</pubDate>
      <dc:creator><![CDATA[vtyagi]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/vtyagi/2006/02/23/bam-acronyms/</guid>
      <description><![CDATA[Note: This information applies to&nbsp;Business Activity Monitoring in BizTalk...]]></description>
      <content:encoded><![CDATA[<TABLE class="fixedTable blogpost" cellSpacing=0 width="100%" border=0>
<TBODY>
<TR>
<TD class=ellipse><SPAN class=bvTitle id=subjcns!C2CAEFB782A26800!153><STRONG><FONT size=2></FONT></STRONG></SPAN></TD></TR>
<TR>
<TD class=bvh8><STRONG><FONT size=2></FONT></STRONG></TD></TR>
<TR>
<TD id=msgcns!C2CAEFB782A26800!153>
<DIV>
<P><EM>Note: This information applies to&nbsp;Business Activity Monitoring in BizTalk Server 2006</EM></P>
<P>&nbsp;</P>
<P>There comes a time when even the experts get lost in the maze of technical acronyms. Almost everything can be, and will be, expressed in three letter acronyms. I am familiar with most of BizTalk Server Acronyms but find myself looking at the index for some long forgotten acronym or abbreviation. I started off with a list of BAM specific list and time is ripe now to publish it to the world. </P>
<P><STRONG></STRONG>&nbsp;</P>
<P><STRONG>BAM </STRONG>Business Activity Monitoring</P>
<P><STRONG>BAS </STRONG>Business Activity Services</P>
<P><STRONG>DTS </STRONG>Data Transformation Service</P>
<P><STRONG>HAT </STRONG>Health and Activity Tracking</P>
<P><STRONG>KPI </STRONG>Key Performance Indicators</P>
<P><STRONG>RTA </STRONG>Real Time Aggregations</P>
<P><STRONG>TDDS </STRONG>Tracking Data Decoding Service [Also known as BAM Event Bus Service]</P>
<P><STRONG>TPE </STRONG>Tracking Profile Editor</P>
<P>&nbsp;</P></DIV>
<DIV><FONT face="Courier New, Courier, Monospace">
<P>
<HR>

<P></P>
<P>Copyright (C) 2006 Vikas Tyagi. All rights reserved.</FONT> </P>
<P></P>
<P><FONT face="Courier New, Courier, Monospace">THIS CODE AND INFORMATION ARE PROVIDED "AS IS" WITHOUT&nbsp; <BR>WARRANTY OF ANY KIND, WHETHER EXPRESSED OR IMPLIED, <BR>INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF <BR>MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE.</FONT></P></DIV></TD></TR></TBODY></TABLE>]]></content:encoded>
    </item>
    <item>
      <title>Considerations when working with Tracking Profile Editor</title>
      <link>https://docs.microsoft.com/archive/blogs/vtyagi/considerations-when-working-with-tracking-profile-editor</link>
      <pubDate>Thu, 23 Feb 2006 18:53:00 GMT</pubDate>
      <dc:creator><![CDATA[vtyagi]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/vtyagi/2006/02/23/considerations-when-working-with-tracking-profile-editor/</guid>
      <description><![CDATA[Note: This information applies to Tracking Profile Editor in BizTalk Server 2006
You may...]]></description>
      <content:encoded><![CDATA[<TABLE class="fixedTable blogpost" cellSpacing=0 width="100%" border=0 class="fixedTable blogpost">
<TBODY>
<TR>
<TD class="" id=msgcns!C2CAEFB782A26800!134>
<P><EM><FONT size=2>Note: This information applies to Tracking Profile Editor in BizTalk Server 2006</FONT></EM></P>
<P>You may face situations where Tracking Profile Editor does not work as expected or behaves in unknown ways. The help that&nbsp;ships with TPE is at times not descriptive enough to list each and every quirk associated with TPE. As I played around and experimented with TPE, I found it useful to list all the helpful hints that proved immensely useful to me later on. They are all listed here in no particular order of importance.</P>
<UL>
<LI>Multiple instances of TPE can exist simultaneously. You can work on the same tracking profile in two different instances of TPE. While saving the tracking profile, the TPE instance that save the profile last will overwrite the previous changes, if any. Same is true while applying a tracking profile. It is recommended to work with one tracking profile in one instance of TPE to prevent accidental data loss. 
<LI>The management database setting specified via TPE is retained across sessions. 
<LI>While specifying the management database server, do not leave any spaces around the comma port separator when specifying a SQL port. For example, "foo,1234" (quotes not included) &nbsp;is correct while "foo , 1234" (quotes not included) is not. Specifically, any connection string format that is acceptable to SQL server can be specified here. So, a . (dot) will be equivalent to localhost and will be perfectly acceptable to TPE. 
<LI>Original activity items, except for related activity names, can't be deleted in TPE. 
<LI>Mapping a data item to ActivityID folder is not mandatory. If nothing is mapped to ActivityID, then a GUID is generated and assigned to ActivityID by default. Interpreting GUIDs with a human eye is always a challenge. If the messages that are tracked by TPE contain a field that has a unique value, SSN in our case, then it becomes meaningful and convenient to map such unique valued fields (SSN) to ActivityID folder. 
<LI>Document Reference URLs folders can be used to track almost anything and not just document URLs. The only advantage that these folders offer that they appear on the BAM Portal. A single click on the BAM Portal link will take you to the document. Mapping anything other than the document URL is not very useful as, although visible as a link, it will take you nowhere in BAM Portal. The intent is to allow custom user interface developers to gain access to associated document information so that they can present it to the end user. 
<LI>If a continuation doesn't have a matching continuationID or vice-versa, TPE will warn you but not prevent you from applying the tracking profile. This is due to the fact that continuations can be established and populated using BAM APIs as well. In fact, one can mix TPE with BAM APIs freely. This is recommended for special situations where TPE alone can't fulfil the purpose. The whole purpose for using TPE is to avoid writing code as much as possible. 
<LI>You may define and map to any related activity but only those related activities will be visible on the BAM Portal that are under the same view. The same view restriction is forced by BAM Portal and not TPE. 
<LI>When you import an activity definition to start work on a brand new tracking profile, TPE shows the activities in the same view as related activity folders by default. TPE doesn't enforce this. You can add any activity as a related activity and map to it. TPE will allow this. 
<LI>If a tracking profile is modified and then re-applied, BizTalk will store the new version of the tracking profile along with the older versions. Older versions are not deleted or overwritten. This is because a long running orchestration might be using the older version. Any new instance of an orchestration will pick up the latest version of the tracking profile. A removal, results in the removal of all the versions of the tracking profile for that particular activity. 
<LI>There is no direct way to get a list of tracking profiles currently applied. The list of tracking profiles is stored in the BizTalkMgmtDb database in the bam_TrackingProfiles table. You can create a custom query to get that information. 
<LI>When tracking orchestration shapes, the end time for the shape's execution is reported by the engine as the milestone value. 
<LI>TPE lets you map multiple sources to the same item in an activity. In such a situation, the last artifact that was encountered during the BAM processing is the one whose value persists in the database and is viewable in the BAM portal. 
<LI>Not all message properties are available at design time. An example of this is when the listen shape is the first shape in a orchestration. When message properties are mapped from this shape, only the following properties have values: InstanceID, ServiceID and ServiceClassID. (MessageID is not in scope at this point and has a null value). MessageID will be guaranteed available for a send/receive shape. If your orchestration doesn't have a send/receive shape, you may not be able to track its value. 
<LI>Properties and message payload data items can be mapped to milestones. The value is evaluated at run time only. The date time values must be in a format that is acceptable to SQL server. Any casting problems will show up as an event log error. 
<LI>Message payload data, context properties and message properties can be tracked from both orchestrations and ports. The menu items and the final presentation is quite similar for both and is cause for confusion. The differentiating factor is the place from where they are chosen. For orchestrations, right click on an orchestration shape and select from the appropriate menu items. Stuff tracked there after will be in the orchestration context and there is no need to specify any ports. For ports, always go through the "Select Event Source" button menu items. The following sub menus: Select Messaging Payload, Select Context Property and Select Messaging Property track data from ports and would require a port mapping specified after creating a mapping. After mapping the item, right click the mapped node on LHS and you will see "Set Port Mappings" menu item. Choose this menu item to select the ports from which to track the data. If this menu item is disabled/unavailable, then you most likely ended up here from an orchestration shape and that may not be your intention. If you see this context menu item disabled, and would like to see this to be enabled so as to specify the port, delete this mapping and load your event sources via the "Select Event Source" button menu items. 
<LI>Pass through pipelines present a special challenge with respect to continuations. This is because pass through pipelines, by definition, are not aware of any XML message schema. Consequently, no data is tracked by engine including system properties like SessionID. The alternatives are to either remove all message payload tracking from a pass through pipeline or use an XML pipeline. 
<LI>Mime pipelines are not supported on 64 bit platforms and consequently can't be tracked by TPE. The workaround is to run a host instance in 32 bit mode and run the application on this 32 bit host. 
<LI>Removing a tracking profile removes all versions of it. 
<LI>Port start/end tracked time are the times when the pipeline finishes up. This means that if there is a an error in the pipeline and the message is suspended then the port start/end time will not be tracked. In the case of pipelines, it is not explicitly clear when the sampling of data occurs. The answer to that is, at the end of the pipeline. The easiest example to understand this is the case of sending data to a sharepoint document library. Well behaved transport adapters will populate a new property that will contain the target address (URL) of the data delivered by the adapter. In order for this to work, obviously, the tracking must occur after the transport completes, which implies "at the end of the pipeline."&nbsp;&nbsp;&nbsp;&nbsp; </LI></UL>
<BLOCKQUOTE dir=ltr style="MARGIN-RIGHT: 0px">
<P>On the receive side, there is a slight nuance to be aware of. Specifically, because of the statement that tracking will occur at the pipeline's end, it might seem that properties like "ReceiveTime" or "PortStartTime" will not be available. However, it is in fact the case that the maximum amount of data (in the form of properties) is available at the end of the pipeline. Therefore, the statement that tracking occurs at the end of the pipeline does NOT mean that properties like "ReceiveTime" or "PortStartTime" will not be available. It simply means that this property value would not be tracked until the end of the pipeline, even though the value of this data source would have been set at the time the message was actually received (typically the lag here would be seconds or less, but it is conceivable that some stateful pipeline components could take significant portions of an hour or longer).</P></BLOCKQUOTE>
<UL>
<LI>TPE figures out the begin and end of an orchestration. This is fine and dandy except when TPE is faced with a parallel shape at the beginning/end. Then it is impossible for TPE to figure out the begin/end of the activity. In such a case you will see an error if you map from an orchestration shape on the parallel branch to the ActivityID folder. The only recourse in such a case is to not map to ActivityID at all. This will result in a GUID being assigned to the ActivityID. 
<LI>The following shapes can't be mapped and thus can't be tracked: group, message assignment, loop, suspend, terminate, throw exception, transform. These shapes are invalid shapes. Consequently, you can't map from an orchestration if it starts/ends with an invalid shape. TPE will provide GUI hint in the form of a blocked cursor if you try to map from one of these shapes. 
<LI>The MessageID can only be tracked from a send/receive shape. 
<LI>TPE touches upon a few databases. It stores tracking profiles themselves in the management database, interceptor configurations in the Primary Import Table database and the orchestration xsyms in the DTA database. 
<LI>The milestone information captures by TPE is in UTC.&nbsp;You can <A href="http://blogs.msdn.com/derektan/archive/2005/06/10/428165.aspx" mce_href="http://blogs.msdn.com/derektan/archive/2005/06/10/428165.aspx"><U><FONT color=#0000ff>track the time in local time.</FONT></U></A> 
<LI>BizTalk Server 2004&nbsp;custom pipelines can't be tracked using TPE once they are upgraded to BizTalk Server 2006. This is due to the fact that pipeline tracking is a new feature of BizTalk Server 2006 that never existed in BizTalk Server 2004. Of course, the default xml and pass through and other pipelines are trackable after upgrade. The restriction applies only to custom pipelines. 
<LI>Orchestration variables are not exposed and thus can't be tracked using TPE. 
<LI>TPE does not allow mapping from adapters and web services. The only support is for tracking system/context properties that are populated by the adapters/web-services/code. An alternative is to use BAM APIs which require no TPE involvement. 
<LI>TPE can be used to map and track data from BizTalk artifacts only. This means that if you have a 3rd party custom component/code then there is no alternative but to use BAM APIs to track BAM data. However, what you could do is try to extend your 3rd party custom component to implement the tracking interface which BizTalk uses behind the scenes on every shape which is used by TPE to track and change BAM calls. 
<LI>Tracking profiles cannot be added to the BTS application package until sometime after the solution is first deployed to a live BTS management environment. There is no mitigation provided. It is assumed that tracking profiles are easily applied as a finishing act of the overall solution deployment by the IT professional. It is assumed that the BTS application package would include the tracking profiles in subsequent staging of the solution to other environments. 
<LI>Storing a tracking profile in the database is no longer referred to as a "deploy" action.&nbsp; This is due to possible confusion with the more formal BizTalk server deployment feature set, as well as to make it clear that tracking profiles are more "in addition to..." as opposed to some item which is required for the BizTalk application to actually function.&nbsp; This is a terminology change from BizTalk Server 2004, which called this action "Deploy."&nbsp; It is now called "Apply."&nbsp; Un-deploy, which is a new feature for BizTalk Server 2006, is now called "Remove."</LI></UL>
<P mce_keep="true">&nbsp;</P><FONT face="Courier New">
<HR>
<FONT size=1>Copyright (C) 2006 Vikas Tyagi. All rights reserved.</FONT><FONT size=1> </FONT></FONT>
<P mce_keep="true">&nbsp;</P>
<P><FONT face="Courier New" size=1>THIS CODE AND INFORMATION ARE PROVIDED "AS IS" WITHOUT&nbsp; <BR>WARRANTY OF ANY KIND, WHETHER EXPRESSED OR IMPLIED, <BR>INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF <BR>MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE.</FONT></P></TD></TR></TBODY></TABLE>]]></content:encoded>
    </item>
    <item>
      <title>Tracking Profile Editor Error Messages</title>
      <link>https://docs.microsoft.com/archive/blogs/vtyagi/tracking-profile-editor-error-messages</link>
      <pubDate>Thu, 23 Feb 2006 18:43:00 GMT</pubDate>
      <dc:creator><![CDATA[vtyagi]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/vtyagi/2006/02/23/tracking-profile-editor-error-messages/</guid>
      <description><![CDATA[Note: This information applies to Tracking Profile Editor in BizTalk Server 2006...]]></description>
      <content:encoded><![CDATA[<TABLE class="fixedTable blogpost" cellSpacing=0 width="100%" border=0 class="fixedTable blogpost">
<TBODY>
<TR>
<TD class=ellipse class="ellipse"><SPAN class=bvTitle id=subjcns!C2CAEFB782A26800!121><STRONG></STRONG></SPAN></TD></TR>
<TR>
<TD class=bvh8 class="bvh8"><STRONG></STRONG></TD></TR>
<TR>
<TD class="" id=msgcns!C2CAEFB782A26800!121>
<DIV><EM>Note: This information applies to Tracking Profile Editor in BizTalk Server 2006 R2</EM></DIV>
<DIV>&nbsp;</DIV>
<DIV>BttDeploy.exe is the command line cousin of Tracking Profile Editor. It provides a subset of functionality that TPE provides. Nevertheless, it provides a very vital subset of TPE functionality. BttDeploy.exe error messages are also explained in this section.&nbsp; The two tools share plenty of common code. BttDeploy is just a thin wrapper over TPE functionality. There are no screen shots of error messages provided here. This is due to the fact that developers will search the error text and not the error dialog box. To make things straightforward, only the core of the error messages is listed here and only the important error messages are listed.</DIV>
<DIV>&nbsp;</DIV>
<DIV><STRONG>Failed to apply the tracking profile.</STRONG> </DIV>
<DIV><STRONG></STRONG>&nbsp;</DIV>
<DIV>Unless you see some additional information along with this error message, it is extremely hard to say why tracking profile could not be applied. Error messages that appear as additional information are explained elsewhere in this document.</DIV>
<DIV>&nbsp;</DIV>
<DIV>If you see the following error string under the main error, "Error HRESULT E_FAIL has been returned from a call to a COM component." on a 64-bit&nbsp;box, then you need to follow the solutions in the following KB article and/or apply the QFE. The error comes up because of an issue with MSDTC. This error has nothing to do with BizTalk or TPE.</DIV>
<DIV>&nbsp;</DIV>
<DIV><A href="http://support.microsoft.com/default.aspx?scid=kb;EN-US;919216">Read the KB article on this issue</A></DIV>
<DIV><A href="http://support.microsoft.com/kb/910907/" mce_href="http://support.microsoft.com/kb/910907/">Download the QFE</A></DIV>
<DIV>&nbsp;</DIV><STRONG>
<DIV><STRONG>Error retrieving activities from Primary Import Table Database.<BR></DIV>
<DIV></STRONG>&nbsp;</DIV>
<DIV>Error retrieving tracking profile from Primary Import Table Database.</DIV>
<DIV>&nbsp;</DIV>
<DIV>Failed to connect to the Primary Import Table Database.</DIV>
<DIV>&nbsp;</DIV></STRONG>
<DIV><STRONG>Failed to enumerate assemblies in the BizTalk Management Database.<BR></STRONG></DIV>
<DIV><STRONG></STRONG>&nbsp;</DIV>
<DIV><STRONG>Failed to enumerate databases on the {0} server.</STRONG></DIV>
<DIV><STRONG></STRONG>&nbsp;</DIV>
<DIV><STRONG>Failed to enumerate ports in the BizTalk Management Database.</STRONG></DIV>
<DIV>&nbsp;</DIV>
<DIV><STRONG>Failed to enumerate schemas in the BizTalk Management Database.</STRONG></DIV>
<DIV>&nbsp;</DIV>
<DIV><STRONG>Failed to open the messaging property schema.</STRONG></DIV>
<DIV>&nbsp;</DIV>
<DIV>
<DIV><STRONG>Unable to connect to the BAM Primary Import Table Database to enumerate BAM Activity Definitions.&nbsp; Use Set Management Database from the Tools menu to point to a different location or contact your administrator if the problem persists.</STRONG></DIV>
<DIV><STRONG><BR></DIV></STRONG>There could be many reasons why these errors can crop up. The server is unreachable, is off the network, SQL server is not running on the server, remote connections might be disabled, etc. Fire up a SQL client utility and ensure that the SQL server foo can be pinged and the management database you select can be opened.</DIV>
<DIV>&nbsp;</DIV>
<DIV><STRONG>Failed to read server and database names from the registry.</STRONG></DIV>
<DIV>&nbsp;</DIV>
<DIV>The registry keys that contain the management server and database names are either missing or blank. This usually happens when BizTalk is installed but not configured. Or you have configured everything in BizTalk but not BAM. You might have manually whacked the registry keys. Either way, it is necessary to populate the registry keys with correct information. This can be accomplished by ignoring the error and setting the management server and database via tools-&gt;set management database menu item. Fill in the SQL server name on the set management database dialog box. Press {tab} key to automatically populate the database name combo box. Select the correct management database name and click OK. This will fix the problem.</DIV>
<DIV>&nbsp;</DIV>
<DIV><STRONG>Failed to remove the tracking profile.</STRONG></DIV>
<DIV>&nbsp;</DIV>
<DIV>Hmm... Can't think of a valid reason why this would happen in normal course of events. Check SQL connectivity?! Is there any additional information in the error message that sheds light on the precise problem that led to this error?</DIV>
<P mce_keep="true">&nbsp;</P>
<DIV><STRONG>Failed to launch BizTalk Server Online.</STRONG></DIV>
<DIV>&nbsp;</DIV>
<DIV>I can't think of a solid reason why this error will ever show up. Are you able to launch Internet Explorer successfully and connect to a website?</DIV>
<DIV>&nbsp;</DIV>
<DIV><STRONG>Failed to launch help.</STRONG></DIV>
<DIV>&nbsp;</DIV>
<DIV>There are couple of reason why TPE can run into this error. The most simple and straightforward reason is that BizTalk documentation is not installed on the computer where you are trying to launch BizTalk help. Ensure that you have documentation installed and retry launching help. If you go kill the process, dexplore.exe, behind the scenes when the help is on display, then closing help and re-launching help from TPE will lead you to this error. Simply restart TPE and re-launch help. </DIV>
<DIV>&nbsp;</DIV>
<DIV><STRONG>Failed to load the WSDL for {0}.</STRONG></DIV>
<DIV><STRONG>&nbsp;</DIV></STRONG>
<DIV><STRONG>Failed to load the current WSDL.&nbsp; Refer to HELP for information on possible causes and how to correct this issue.</STRONG> </DIV>
<DIV>&nbsp;</DIV>
<DIV>The keyword here is WSDL. It seems that you are trying to track something from HTTP/SOAP ports or request-response ports associated with a web service. It is possible that while you were creating the tracking profile, the service was running fine. When time came to apply the tracking profile, the service became unavailable, for whatever reasons. Please ensure that the scenario that you are working with is still working. Check your web service URLs, etc.</DIV>
<DIV><BR><STRONG>Failed to save {0}.</STRONG> 
<DIV>&nbsp;</DIV>
<DIV>Are you running out of disk space? Are you saving over a UNC path and your remote server is experiencing difficulties? </DIV>
<DIV>&nbsp;</DIV>
<DIV><STRONG>Failed to open {0}.</STRONG></DIV>
<DIV>&nbsp;</DIV>
<DIV>The tracking profile file either does not exist or you do not have security permissions to read the file.</DIV>
<DIV>&nbsp;</DIV>
<DIV><STRONG>This tracking profile does not contain some actions to which milestones or data items are mapped or contains invalid or missing port mappings.</STRONG></DIV>
<DIV>&nbsp;</DIV>
<DIV>There is a data item that you track from ports but you have not specified any ports to track this data item from. Go through all your mappings and see that there is a port specified for all mappings that track data from ports.</DIV>
<DIV>&nbsp;</DIV></DIV>
<DIV><STRONG>There is no active tracking profile for this activity definition. Would you like to import this activity definition instead?</STRONG></DIV>
<DIV>&nbsp;</DIV>
<DIV>As the warning message amply states, there is no tracking profile applied for the activity definition you are trying to import. This is just a warning message and you can choose to ignore it and go ahead and create a fresh tracking profile for this activity definition. If this message comes up as a surprise, then you probably forgot to apply the tracking profile last time when you worked with the tracking profile. Remember, creating a tracking profile and applying it are two different tasks. First one is necessary but does not imply the second.</DIV>
<DIV>&nbsp;</DIV>
<DIV>In a multi-box scenario where there are two BizTalk Groups with two BizTalk Management Databases BUT with only one Primary Import Table database, this message may pop up. Say, on box one, you create and apply a tracking profile. Now, sitting on box one, you point TPE to the second management database (via set management dialog box). Next, you&nbsp;try to import the tracking profile for your activity definition. The second management database has no information on the tracking profile and TPE will tell you so. Of course, if you now create and apply a fresh tracking profile for the same activity definition, it will overwrite the first one. Tracking profile information is stored in the Primary Import Table database.</DIV>
<DIV>&nbsp;</DIV>
<DIV><STRONG>There are no ports associated with {0}.</STRONG></DIV>
<DIV>&nbsp;</DIV>
<DIV>TPE will talk about ports if the tracking profile tracks something from ports. This could be in the form of message payload in pipelines or messaging properties. Either way, TPE needs to know the port on which to track these payload data or properties. The name of the payload is mentioned in the error. Locate that node in the BAM activity definition view [the LHS view] of TPE and right click on it. Choose "Set Port Mappings" menu option and select the port from which you want the data to be tracked. Click OK on the "Select Ports" dialog box and save the tracking profile. The error will go away and you will be able to apply the tracking profile successfully.</DIV>
<DIV>&nbsp;</DIV>
<DIV><STRONG>The selected help topic is not available. This message typically appears when a custom installation of the product was performed and the documentation was not installed. To install the documentation, on the Start menu, click Control Panel, double-click Add or Remove Programs, and then click the Change/Remove button for the Microsoft BizTalk 2006 program in order to review and update the list of installed components.</STRONG></DIV>
<DIV>&nbsp;</DIV>
<DIV>This error message comes up as additional information to the error message, "Failed to launch help." This error message is the ideal error message. It tells you what the problem is and how to remedy the same.</DIV>
<DIV><STRONG></STRONG>&nbsp;</DIV>
<DIV><STRONG>The ContinuationID {0} does not have a matching Continuation.&nbsp; The activity will not complete if there is no corresponding Continuation defined elsewhere.</STRONG></DIV>
<DIV><STRONG><BR></STRONG><STRONG>The Continuation {0} does not have a matching ContinuationID.&nbsp; The activity will not complete if there is no corresponding ContinuationID defined elsewhere.<BR></DIV></STRONG>
<DIV>&nbsp;</DIV>
<DIV>This is a warning message only. TPE will not prevent you from applying the tracking profile. You have to ensure that the matching Continuation or ContinuationID is supplied via BAM APIs in your code somewhere.</DIV>
<DIV>&nbsp;</DIV>
<DIV><STRONG>The tracking profile for Activity Definition {0} is not applied.</STRONG><BR></DIV>
<DIV>&nbsp;</DIV>
<DIV>This error will come up if you try to remove a tracking profile that has not been applied.</DIV>
<DIV><STRONG></STRONG>&nbsp;</DIV>
<DIV><STRONG>The Tracking Profile Editor cannot start the activity from the location from which you have selected the ActivityID or ContinuationID because of scope constraints.&nbsp; Please check your tracking profile.</STRONG></DIV>
<DIV><STRONG></STRONG>&nbsp;</DIV>
<DIV>Are you tracking data from an invalid shape? Invalid shapes being those that can't be mapped/tracked. They are group, message assignment, loop, suspend, terminate, throw exception, transform. OR you might be tring to map a shape from an orchestration that contains such a shape. For example, you might be trying to track from a loop shape and from a shape outside the loop shape. You might be trying to map something from one branch of a parallel shape to ActivityID and the parallel shape happens to be the first/last shape in the orchestration. This error will pop up in all these situations and many more. </DIV>
<DIV>&nbsp;</DIV>
<DIV>This essentially means that TPE has found your mappings/orchestrations to be so convoluted that it can't figure out the Begin/End of the activity.&nbsp;There are multiple solutions, none&nbsp;of them particularly pretty. Rewriting orchestrations is one. Writing custom code in orchestrations using BAM APIs is another.&nbsp;</DIV>
<DIV>&nbsp;</DIV>
<DIV>Example:</DIV>
<DIV>&nbsp;&nbsp;&nbsp;Orchestration1</DIV>
<DIV>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Receive Shape</DIV>
<DIV>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ShapeA</DIV>
<DIV>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ShapeB</DIV>
<DIV>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;TaskShape</DIV>
<DIV>&nbsp;&nbsp;&nbsp;</DIV>
<DIV>&nbsp;&nbsp;&nbsp;Mapping</DIV>
<DIV>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Message Payload data from Receive Shape is mapped to ContinuationID</DIV>
<DIV>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ShapeA, ShapeB mapped to activity milestones</DIV>
<DIV>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;A shape within TaskShape mapped to milestone</DIV>
<DIV>&nbsp;</DIV>
<DIV>Now, the task shape can't be tracked and occurs at the end of the orchestration. This is well known and documented that you can't track from this orchestration using TPE. Alternative is to use BAM APIs. Another alternative is to split up the origional orchestration into multiple orchestrations, one calling the next. For the current example the two orchestrations will look like this:</DIV>
<DIV>&nbsp;</DIV>
<DIV>
<DIV>&nbsp;&nbsp;&nbsp;Orchestration1</DIV>
<DIV>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Receive Shape</DIV>
<DIV>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ShapeA</DIV>
<DIV>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ShapeB</DIV>
<DIV>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Call orchestration2</DIV>
<DIV>&nbsp;</DIV>
<DIV>Orchestration2</DIV>
<DIV>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;TaskShape</DIV></DIV>
<DIV>&nbsp;</DIV>
<DIV>Now you can map your activity items to the two orchestrations as usual. On another note, you may still run into this error even if you have only valid shapes in the orchestration. &nbsp;In such a case, one way to "fix" this error&nbsp;is to map to the ActivityID/continuationID from a shape as far up in the orchestration as possible. </DIV>
<DIV>&nbsp;</DIV>
<DIV><STRONG>The "{0}" database is not a valid BizTalk Management Database.</STRONG> </DIV>
<DIV>&nbsp;</DIV>
<DIV>This is straightforward. As the error says, the database selected on the set management database dialog box is not a valid BizTalk management database. Select the correct database and you should be good to go.</DIV>
<DIV>&nbsp;</DIV>
<DIV>This error can also come up in a distributed environment where the server with the management database is no longer reachable. </DIV>
<DIV>&nbsp;</DIV>
<DIV><STRONG>There is no activity in the database {0} that matches the activity {1} in the tracking profile.</STRONG></DIV>
<DIV><STRONG></STRONG>&nbsp;</DIV>
<DIV><STRONG>The {0} schema cannot be found in the BizTalk Management Database.</STRONG></DIV>
<DIV><STRONG>&nbsp;</DIV></STRONG>
<DIV><STRONG>The {0} assembly cannot be found in the BizTalk Management Database.<BR></STRONG></DIV>
<DIV>The tracking profile and the BTS&nbsp;solution are out of sync. Either your solution has changed or the tracking profile has changed. In either case, rebuild the tracking profile and re apply.</DIV>
<DIV>&nbsp;</DIV>
<DIV><STRONG>{0} contains invalid character(s).</STRONG></DIV>
<DIV>&nbsp;</DIV>
<DIV>Tracking profile folder names must derive from a valid character set. The invalid characters are, apostrophy, open parentheses, close parenthesis, colon, comma and quote. Be extra careful of the characters if you are working on a non en-us language platform.</DIV>
<DIV>&nbsp;</DIV>
<DIV><STRONG>{0} is not a unique name.</STRONG><BR></DIV>
<DIV>&nbsp;</DIV>
<DIV>The names of relationship and document reference URL folders must have unique names.</DIV>
<DIV>&nbsp;</DIV>
<DIV><STRONG>{0} is not a valid tracking profile.</STRONG></DIV>
<DIV><STRONG></STRONG>&nbsp;</DIV>
<DIV><STRONG>The specified tracking profile is not valid.</STRONG></DIV>
<DIV>&nbsp;</DIV>
<DIV>The tracking profile has failed the schema check. Are you sure you are dealing with a valid, properly formed, xml looking tracking profile? Open the tracking profile in notepad or TPE and see that it looks like a tracking profile. It should be a valid XML file at least.</DIV>
<DIV>&nbsp;</DIV>
<DIV>Tracking profiles are utf-16 encoded. This is to support unicode characters. Some text editors may save the file as ANSI or utf-8 and then you are likely to run into the above error. So, edit tracking profiles using TPE only. If TPE can open and display a tracking profile, then it is a correct tracking profile. If not, either the xml validation or the character encoding has screwed the tracking profile up.</DIV>
<DIV><BR>&nbsp;</DIV>
<DIV><STRONG>{0} is too long for a Continuation or ContinuationId.&nbsp; Continuation or ContinuationId names cannot be longer than {1} characters.</STRONG></DIV>
<DIV>&nbsp;</DIV>
<DIV><STRONG>{0} is too long for a Relationship.&nbsp; Relationship names cannot be longer than {1} characters.<BR></STRONG></DIV>
<DIV>&nbsp;</DIV>
<DIV><STRONG>{0} is too long.&nbsp; Names cannot be longer than {1} characters.<BR></STRONG></DIV>
<DIV><STRONG>&nbsp;</DIV></STRONG>
<DIV>Continuation, ContinuationID, relationship and document reference URL folders may become column names in temporary tables. Or, they may appear as temporary data in some temporary tables. It is necessary that TPE abides by the length limitations imposed on column names, data lengths, etc., by SQL server. Ensure that the names are well below the limits imposed by TPE.</DIV>
<DIV>&nbsp;</DIV>
<DIV><STRONG>Tracking profiles can only have exactly one Trace ID dimension.</STRONG></DIV>
<DIV>&nbsp;</DIV>
<DIV>There should be exactly one&nbsp;"ActivityID" folder node. Your tracking profile is either missing one or has more than one. Tracking profiles created via TPE will not face this problem. Is this a hand crafted tracking profile? Hand crafted tracking profiles are not supported. Compare your hand crafted tracking profile with the one created by TPE and ensure that there is exactly one ActivityID node.</DIV>
<DIV>&nbsp;</DIV>
<DIV><STRONG>Error message in the TDDS_FailedTrackingData table: TDDS failed to deserialize streams. The annotation information for version xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx, track point 0 cannot be loaded from the database due to a database error.</STRONG></DIV>
<DIV>&nbsp;</DIV>
<DIV>This error may crop up in many situations. One such situation is when correct permissions are not setup in the database (something that should never happen in the first place if BAM configuration completed successfully). In SQL enterprise manager, go to bam primary import table &gt; stored procedures &gt;&nbsp; bam_metadata_getannotation &gt; right click &gt; select properties &gt; select permissions tab on left frame &gt; add execute permission to BAM_EVENT_WRITER role &gt; click ok</DIV>
<DIV>&nbsp;</DIV>
<DIV>
<HR>
</DIV>
<DIV><FONT face="Courier New, Courier, Monospace" size=1>Copyright (C) 2006 Vikas Tyagi. All rights reserved.</FONT></DIV>
<DIV><FONT face="Courier New, Courier, Monospace" size=1>THIS CODE AND INFORMATION ARE PROVIDED "AS IS" WITHOUT&nbsp; <BR>WARRANTY OF ANY KIND, WHETHER EXPRESSED OR IMPLIED, <BR>INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF <BR>MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE.</FONT></DIV></TD></TR></TBODY></TABLE>]]></content:encoded>
    </item>
  </channel>
</rss>