<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:copyright="http://blogs.law.harvard.edu/tech/rss" xmlns:image="http://purl.org/rss/1.0/modules/image/">
    <channel>
        <title>T-SQL</title>
        <link>http://geekswithblogs.net/LifeLongTechie/category/10647.aspx</link>
        <description>T-SQL</description>
        <language>en-US</language>
        <copyright>Kevin Shyr</copyright>
        <managingEditor>kevinshyr@gmail.com</managingEditor>
        <generator>Subtext Version 0.0.0.0</generator>
        <item>
            <title>Monitoring BizTalk Server Without SCCM, using SQL query</title>
            <link>http://geekswithblogs.net/LifeLongTechie/archive/2011/09/14/monitoring-biztalk-server-without-sccm-using-sql-query.aspx</link>
            <description>&lt;p&gt;For the environment that does not have SCCM to monitor BizTalk server health, the following SQL query can be incorporate into a SQL job and have BizTalk server at least on a "constant" check.&lt;/p&gt;
&lt;p&gt;Note: be aware that the following was tested only against a single suspended instance with a send port.  Since BizTalk SQL server does not allow select against the ServiceClass table, I couldn't use a single table join.  With the data I currently have, I am not 100% sure the Receive Port, Pipeline, Orchestration parts work.&lt;/p&gt;
&lt;div style="margin-bottom:0in;margin-bottom:.0001pt;line-height:&amp;#xD;&amp;#xA;normal;text-autospace:none"&gt; &lt;/div&gt;
&lt;div style="margin-bottom:0in;margin-bottom:.0001pt;line-height:&amp;#xD;&amp;#xA;normal;text-autospace:none"&gt;&lt;span style="font-size:&amp;#xD;&amp;#xA;10.0pt;Courier New&amp;quot;;color:blue;"&gt;SELECT&lt;/span&gt;&lt;span style="font-size:10.0pt;Courier New&amp;quot;;"&gt; &lt;span style="color:blue"&gt;TOP&lt;/span&gt; 1000 &lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom:0in;margin-bottom:.0001pt;line-height:&amp;#xD;&amp;#xA;normal;text-autospace:none"&gt;&lt;span style="font-size:&amp;#xD;&amp;#xA;10.0pt;Courier New&amp;quot;;"&gt;      _M&lt;span style="color:gray"&gt;.&lt;/span&gt;nvcName &lt;span style="color:blue"&gt;AS&lt;/span&gt; ApplicationName&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom:0in;margin-bottom:.0001pt;line-height:&amp;#xD;&amp;#xA;normal;text-autospace:none"&gt;&lt;span style="font-size:&amp;#xD;&amp;#xA;10.0pt;Courier New&amp;quot;;"&gt;      &lt;span style="color:gray"&gt;,&lt;/span&gt; &lt;span style="color:blue"&gt;CASE&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom:0in;margin-bottom:.0001pt;line-height:&amp;#xD;&amp;#xA;normal;text-autospace:none"&gt;&lt;span style="font-size:&amp;#xD;&amp;#xA;10.0pt;Courier New&amp;quot;;"&gt;            &lt;span style="color:blue"&gt;WHEN&lt;/span&gt; _BSP&lt;span style="color:gray"&gt;.&lt;/span&gt;nvcName &lt;span style="color:gray"&gt;IS&lt;/span&gt; &lt;span style="color:gray"&gt;NOT&lt;/span&gt; &lt;span style="color:gray"&gt;NULL&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom:0in;margin-bottom:.0001pt;line-height:&amp;#xD;&amp;#xA;normal;text-autospace:none"&gt;&lt;span style="font-size:&amp;#xD;&amp;#xA;10.0pt;Courier New&amp;quot;;"&gt;                  &lt;span style="color:blue"&gt;THEN&lt;/span&gt; &lt;span style="color:red"&gt;'Send Port: '&lt;/span&gt; &lt;span style="color:gray"&gt;+&lt;/span&gt; _BSP&lt;span style="color:gray"&gt;.&lt;/span&gt;nvcName&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom:0in;margin-bottom:.0001pt;line-height:&amp;#xD;&amp;#xA;normal;text-autospace:none"&gt;&lt;span style="font-size:&amp;#xD;&amp;#xA;10.0pt;Courier New&amp;quot;;"&gt;            &lt;span style="color:blue"&gt;WHEN&lt;/span&gt; _BSP&lt;span style="color:gray"&gt;.&lt;/span&gt;nvcName &lt;span style="color:gray"&gt;IS&lt;/span&gt; &lt;span style="color:gray"&gt;NOT&lt;/span&gt; &lt;span style="color:gray"&gt;NULL&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom:0in;margin-bottom:.0001pt;line-height:&amp;#xD;&amp;#xA;normal;text-autospace:none"&gt;&lt;span style="font-size:&amp;#xD;&amp;#xA;10.0pt;Courier New&amp;quot;;"&gt;                  &lt;span style="color:blue"&gt;THEN&lt;/span&gt; &lt;span style="color:red"&gt;'Receive Port: '&lt;/span&gt; &lt;span style="color:gray"&gt;+&lt;/span&gt; _BSP&lt;span style="color:gray"&gt;.&lt;/span&gt;nvcName&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom:0in;margin-bottom:.0001pt;line-height:&amp;#xD;&amp;#xA;normal;text-autospace:none"&gt;&lt;span style="font-size:&amp;#xD;&amp;#xA;10.0pt;Courier New&amp;quot;;"&gt;            &lt;span style="color:blue"&gt;WHEN&lt;/span&gt; _BPL&lt;span style="color:gray"&gt;.&lt;/span&gt;Name &lt;span style="color:gray"&gt;IS&lt;/span&gt; &lt;span style="color:gray"&gt;NOT&lt;/span&gt; &lt;span style="color:gray"&gt;NULL&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom:0in;margin-bottom:.0001pt;line-height:&amp;#xD;&amp;#xA;normal;text-autospace:none"&gt;&lt;span style="font-size:&amp;#xD;&amp;#xA;10.0pt;Courier New&amp;quot;;"&gt;                  &lt;span style="color:blue"&gt;THEN&lt;/span&gt; &lt;span style="color:red"&gt;'Pipeline: '&lt;/span&gt; &lt;span style="color:gray"&gt;+&lt;/span&gt; _BPL&lt;span style="color:gray"&gt;.&lt;/span&gt;Name&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom:0in;margin-bottom:.0001pt;line-height:&amp;#xD;&amp;#xA;normal;text-autospace:none"&gt;&lt;span style="font-size:&amp;#xD;&amp;#xA;10.0pt;Courier New&amp;quot;;"&gt;            &lt;span style="color:blue"&gt;WHEN&lt;/span&gt; _BO&lt;span style="color:gray"&gt;.&lt;/span&gt;nvcName &lt;span style="color:gray"&gt;IS&lt;/span&gt; &lt;span style="color:gray"&gt;NOT&lt;/span&gt; &lt;span style="color:gray"&gt;NULL&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom:0in;margin-bottom:.0001pt;line-height:&amp;#xD;&amp;#xA;normal;text-autospace:none"&gt;&lt;span style="font-size:&amp;#xD;&amp;#xA;10.0pt;Courier New&amp;quot;;"&gt;                  &lt;span style="color:blue"&gt;THEN&lt;/span&gt; &lt;span style="color:red"&gt;'Orchestration: '&lt;/span&gt; &lt;span style="color:gray"&gt;+&lt;/span&gt; _BO&lt;span style="color:gray"&gt;.&lt;/span&gt;nvcName&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom:0in;margin-bottom:.0001pt;line-height:&amp;#xD;&amp;#xA;normal;text-autospace:none"&gt;&lt;span style="font-size:&amp;#xD;&amp;#xA;10.0pt;Courier New&amp;quot;;"&gt;            &lt;span style="color:blue"&gt;ELSE&lt;/span&gt; &lt;span style="color:red"&gt;'Unknown'&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom:0in;margin-bottom:.0001pt;line-height:&amp;#xD;&amp;#xA;normal;text-autospace:none"&gt;&lt;span style="font-size:&amp;#xD;&amp;#xA;10.0pt;Courier New&amp;quot;;"&gt;      &lt;span style="color:blue"&gt;END&lt;/span&gt; &lt;span style="color:blue"&gt;AS&lt;/span&gt; ServiceName&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom:0in;margin-bottom:.0001pt;line-height:&amp;#xD;&amp;#xA;normal;text-autospace:none"&gt;&lt;span style="font-size:&amp;#xD;&amp;#xA;10.0pt;Courier New&amp;quot;;"&gt;      &lt;span style="color:gray"&gt;,&lt;/span&gt; _IS&lt;span style="color:gray"&gt;.&lt;/span&gt;dtCreated&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom:0in;margin-bottom:.0001pt;line-height:&amp;#xD;&amp;#xA;normal;text-autospace:none"&gt;&lt;span style="font-size:&amp;#xD;&amp;#xA;10.0pt;Courier New&amp;quot;;"&gt;      &lt;span style="color:gray"&gt;,&lt;/span&gt; _IS&lt;span style="color:gray"&gt;.&lt;/span&gt;dtSuspendTimeStamp&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom:0in;margin-bottom:.0001pt;line-height:&amp;#xD;&amp;#xA;normal;text-autospace:none"&gt;&lt;span style="font-size:&amp;#xD;&amp;#xA;10.0pt;Courier New&amp;quot;;"&gt;      &lt;span style="color:gray"&gt;,&lt;/span&gt; _IS&lt;span style="color:gray"&gt;.&lt;/span&gt;nvcAdapter&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom:0in;margin-bottom:.0001pt;line-height:&amp;#xD;&amp;#xA;normal;text-autospace:none"&gt;&lt;span style="font-size:&amp;#xD;&amp;#xA;10.0pt;Courier New&amp;quot;;"&gt;      &lt;span style="color:gray"&gt;,&lt;/span&gt; _IS&lt;span style="color:gray"&gt;.&lt;/span&gt;nvcURI&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom:0in;margin-bottom:.0001pt;line-height:&amp;#xD;&amp;#xA;normal;text-autospace:none"&gt;&lt;span style="font-size:&amp;#xD;&amp;#xA;10.0pt;Courier New&amp;quot;;"&gt;      &lt;span style="color:gray"&gt;,&lt;/span&gt; _IS&lt;span style="color:gray"&gt;.&lt;/span&gt;nvcErrorDescription&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom:0in;margin-bottom:.0001pt;line-height:&amp;#xD;&amp;#xA;normal;text-autospace:none"&gt;&lt;span style="font-size:&amp;#xD;&amp;#xA;10.0pt;Courier New&amp;quot;;"&gt;      &lt;span style="color:gray"&gt;,&lt;/span&gt; _IS&lt;span style="color:gray"&gt;.&lt;/span&gt;nvcErrorProcessingServer&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom:0in;margin-bottom:.0001pt;line-height:&amp;#xD;&amp;#xA;normal;text-autospace:none"&gt;&lt;span style="font-size:&amp;#xD;&amp;#xA;10.0pt;Courier New&amp;quot;;color:blue;"&gt;FROM&lt;/span&gt;&lt;span style="font-size:10.0pt;Courier New&amp;quot;;"&gt; [BizTalkMsgBoxDb]&lt;span style="color:gray"&gt;.&lt;/span&gt;[dbo]&lt;span style="color:gray"&gt;.&lt;/span&gt;[InstancesSuspended] &lt;span style="color:blue"&gt;AS&lt;/span&gt; _IS &lt;span style="color:blue"&gt;WITH&lt;/span&gt;&lt;span style="color:gray"&gt;(&lt;/span&gt;&lt;span style="color:blue"&gt;READPAST&lt;/span&gt;&lt;span style="color:gray"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom:0in;margin-bottom:.0001pt;line-height:&amp;#xD;&amp;#xA;normal;text-autospace:none"&gt;&lt;span style="font-size:&amp;#xD;&amp;#xA;10.0pt;Courier New&amp;quot;;"&gt;      &lt;span style="color:gray"&gt;INNER&lt;/span&gt; &lt;span style="color:gray"&gt;JOIN&lt;/span&gt; [BizTalkMsgBoxDb]&lt;span style="color:gray"&gt;.&lt;/span&gt;[dbo]&lt;span style="color:gray"&gt;.&lt;/span&gt;[Services] &lt;span style="color:blue"&gt;AS&lt;/span&gt; _S &lt;span style="color:blue"&gt;WITH&lt;/span&gt;&lt;span style="color:gray"&gt;(&lt;/span&gt;&lt;span style="color:blue"&gt;READPAST&lt;/span&gt;&lt;span style="color:gray"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom:0in;margin-bottom:.0001pt;line-height:&amp;#xD;&amp;#xA;normal;text-autospace:none"&gt;&lt;span style="font-size:&amp;#xD;&amp;#xA;10.0pt;Courier New&amp;quot;;"&gt;            &lt;span style="color:blue"&gt;ON&lt;/span&gt; _IS&lt;span style="color:gray"&gt;.&lt;/span&gt;[uidServiceID] &lt;span style="color:gray"&gt;=&lt;/span&gt; _S&lt;span style="color:gray"&gt;.&lt;/span&gt;uidServiceID&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom:0in;margin-bottom:.0001pt;line-height:&amp;#xD;&amp;#xA;normal;text-autospace:none"&gt;&lt;span style="font-size:&amp;#xD;&amp;#xA;10.0pt;Courier New&amp;quot;;"&gt;      &lt;span style="color:gray"&gt;INNER&lt;/span&gt; &lt;span style="color:gray"&gt;JOIN&lt;/span&gt; [BizTalkMsgBoxDb]&lt;span style="color:gray"&gt;.&lt;/span&gt;[dbo]&lt;span style="color:gray"&gt;.&lt;/span&gt;[Modules] &lt;span style="color:blue"&gt;AS&lt;/span&gt; _M &lt;span style="color:blue"&gt;WITH&lt;/span&gt;&lt;span style="color:gray"&gt;(&lt;/span&gt;&lt;span style="color:blue"&gt;READPAST&lt;/span&gt;&lt;span style="color:gray"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom:0in;margin-bottom:.0001pt;line-height:&amp;#xD;&amp;#xA;normal;text-autospace:none"&gt;&lt;span style="font-size:&amp;#xD;&amp;#xA;10.0pt;Courier New&amp;quot;;"&gt;            &lt;span style="color:blue"&gt;ON&lt;/span&gt; _S&lt;span style="color:gray"&gt;.&lt;/span&gt;nModuleID &lt;span style="color:gray"&gt;=&lt;/span&gt; _M&lt;span style="color:gray"&gt;.&lt;/span&gt;nModuleID&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom:0in;margin-bottom:.0001pt;line-height:&amp;#xD;&amp;#xA;normal;text-autospace:none"&gt;&lt;span style="font-size:&amp;#xD;&amp;#xA;10.0pt;Courier New&amp;quot;;"&gt;      &lt;span style="color:gray"&gt;LEFT&lt;/span&gt; &lt;span style="color:gray"&gt;OUTER&lt;/span&gt; &lt;span style="color:gray"&gt;JOIN&lt;/span&gt; [BizTalkMgmtDb]&lt;span style="color:gray"&gt;.&lt;/span&gt;[dbo]&lt;span style="color:gray"&gt;.&lt;/span&gt;[bts_sendport] &lt;span style="color:blue"&gt;AS&lt;/span&gt; _BSP &lt;span style="color:blue"&gt;WITH&lt;/span&gt;&lt;span style="color:gray"&gt;(&lt;/span&gt;&lt;span style="color:blue"&gt;READPAST&lt;/span&gt;&lt;span style="color:gray"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom:0in;margin-bottom:.0001pt;line-height:&amp;#xD;&amp;#xA;normal;text-autospace:none"&gt;&lt;span style="font-size:&amp;#xD;&amp;#xA;10.0pt;Courier New&amp;quot;;"&gt;            &lt;span style="color:blue"&gt;ON&lt;/span&gt; _IS&lt;span style="color:gray"&gt;.&lt;/span&gt;uidServiceID &lt;span style="color:gray"&gt;=&lt;/span&gt; _BSP&lt;span style="color:gray"&gt;.&lt;/span&gt;uidGUID&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom:0in;margin-bottom:.0001pt;line-height:&amp;#xD;&amp;#xA;normal;text-autospace:none"&gt;&lt;span style="font-size:&amp;#xD;&amp;#xA;10.0pt;Courier New&amp;quot;;"&gt;      &lt;span style="color:gray"&gt;LEFT&lt;/span&gt; &lt;span style="color:gray"&gt;OUTER&lt;/span&gt; &lt;span style="color:gray"&gt;JOIN&lt;/span&gt; [BizTalkMgmtDb]&lt;span style="color:gray"&gt;.&lt;/span&gt;[dbo]&lt;span style="color:gray"&gt;.&lt;/span&gt;[bts_receiveport] &lt;span style="color:blue"&gt;AS&lt;/span&gt; _BRP &lt;span style="color:blue"&gt;WITH&lt;/span&gt;&lt;span style="color:gray"&gt;(&lt;/span&gt;&lt;span style="color:blue"&gt;READPAST&lt;/span&gt;&lt;span style="color:gray"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom:0in;margin-bottom:.0001pt;line-height:&amp;#xD;&amp;#xA;normal;text-autospace:none"&gt;&lt;span style="font-size:&amp;#xD;&amp;#xA;10.0pt;Courier New&amp;quot;;"&gt;            &lt;span style="color:blue"&gt;ON&lt;/span&gt; _IS&lt;span style="color:gray"&gt;.&lt;/span&gt;uidServiceID &lt;span style="color:gray"&gt;=&lt;/span&gt; _BRP&lt;span style="color:gray"&gt;.&lt;/span&gt;uidGUID&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom:0in;margin-bottom:.0001pt;line-height:&amp;#xD;&amp;#xA;normal;text-autospace:none"&gt;&lt;span style="font-size:&amp;#xD;&amp;#xA;10.0pt;Courier New&amp;quot;;"&gt;      &lt;span style="color:gray"&gt;LEFT&lt;/span&gt; &lt;span style="color:gray"&gt;OUTER&lt;/span&gt; &lt;span style="color:gray"&gt;JOIN&lt;/span&gt; [BizTalkMgmtDb]&lt;span style="color:gray"&gt;.&lt;/span&gt;[dbo]&lt;span style="color:gray"&gt;.&lt;/span&gt;[bts_pipeline] &lt;span style="color:blue"&gt;AS&lt;/span&gt; _BPL &lt;span style="color:blue"&gt;WITH&lt;/span&gt;&lt;span style="color:gray"&gt;(&lt;/span&gt;&lt;span style="color:blue"&gt;READPAST&lt;/span&gt;&lt;span style="color:gray"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom:0in;margin-bottom:.0001pt;line-height:&amp;#xD;&amp;#xA;normal;text-autospace:none"&gt;&lt;span style="font-size:&amp;#xD;&amp;#xA;10.0pt;Courier New&amp;quot;;"&gt;            &lt;span style="color:blue"&gt;ON&lt;/span&gt; _IS&lt;span style="color:gray"&gt;.&lt;/span&gt;uidServiceID &lt;span style="color:gray"&gt;=&lt;/span&gt; _BPL&lt;span style="color:gray"&gt;.&lt;/span&gt;PipelineID&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom:0in;margin-bottom:.0001pt;line-height:&amp;#xD;&amp;#xA;normal;text-autospace:none"&gt;&lt;span style="font-size:&amp;#xD;&amp;#xA;10.0pt;Courier New&amp;quot;;"&gt;      &lt;span style="color:gray"&gt;LEFT&lt;/span&gt; &lt;span style="color:gray"&gt;OUTER&lt;/span&gt; &lt;span style="color:gray"&gt;JOIN&lt;/span&gt; [BizTalkMgmtDb]&lt;span style="color:gray"&gt;.&lt;/span&gt;[dbo]&lt;span style="color:gray"&gt;.&lt;/span&gt;[bts_orchestration] &lt;span style="color:blue"&gt;AS&lt;/span&gt; _BO &lt;span style="color:blue"&gt;WITH&lt;/span&gt;&lt;span style="color:gray"&gt;(&lt;/span&gt;&lt;span style="color:blue"&gt;READPAST&lt;/span&gt;&lt;span style="color:gray"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom:0in;margin-bottom:.0001pt;line-height:&amp;#xD;&amp;#xA;normal;text-autospace:none"&gt;&lt;span style="font-size:&amp;#xD;&amp;#xA;10.0pt;Courier New&amp;quot;;"&gt;            &lt;span style="color:blue"&gt;ON&lt;/span&gt; _IS&lt;span style="color:gray"&gt;.&lt;/span&gt;uidServiceID &lt;span style="color:gray"&gt;=&lt;/span&gt; _BO&lt;span style="color:gray"&gt;.&lt;/span&gt;uidGUID&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom:0in;margin-bottom:.0001pt;line-height:&amp;#xD;&amp;#xA;normal;text-autospace:none"&gt;&lt;span style="font-size:&amp;#xD;&amp;#xA;10.0pt;Courier New&amp;quot;;color:blue;"&gt;WHERE&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom:0in;margin-bottom:.0001pt;line-height:&amp;#xD;&amp;#xA;normal;text-autospace:none"&gt;&lt;span style="font-size:&amp;#xD;&amp;#xA;10.0pt;Courier New&amp;quot;;"&gt;      _M&lt;span style="color:gray"&gt;.&lt;/span&gt;nvcName &lt;span style="color:gray"&gt;=&lt;/span&gt; &lt;span style="color:red"&gt;'Your application name'&lt;/span&gt; &lt;span style="color:green"&gt;-- change application name here to monitor different applications&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt; &lt;/div&gt;
&lt;p&gt; &lt;/p&gt; &lt;img src="http://geekswithblogs.net/LifeLongTechie/aggbug/146891.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Kevin Shyr</dc:creator>
            <guid>http://geekswithblogs.net/LifeLongTechie/archive/2011/09/14/monitoring-biztalk-server-without-sccm-using-sql-query.aspx</guid>
            <pubDate>Thu, 15 Sep 2011 03:37:04 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/LifeLongTechie/comments/146891.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/LifeLongTechie/archive/2011/09/14/monitoring-biztalk-server-without-sccm-using-sql-query.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/LifeLongTechie/comments/commentRss/146891.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/LifeLongTechie/services/trackbacks/146891.aspx</trackback:ping>
        </item>
        <item>
            <title>Do NOT trust CHECKSUM or BINARY_CHECKSUM in SQL, use HASHBYTES instead</title>
            <link>http://geekswithblogs.net/LifeLongTechie/archive/2011/05/20/do-not-trust-checksum-or-binary_checksum-in-sql-use-hashbytes.aspx</link>
            <description>&lt;p&gt;We had a process ot using BizTalk to take in a reference file, then send data in via a table_type parameter in a stored procedure.  The stored procedure uses a MERGE statement to insert and update; the update part of which does a CHECKSUM first to determine whether an update is even necessary.&lt;/p&gt;
&lt;p&gt;Then it happened, we had a reference row that should have been updated by the latest file, but it wasn't done.  We checked the incoming and outgoing BizTalk Message in and out of the pipeline; everything looked normal.  Then we decided to take out the CHECKSUM part and the update succeeded.&lt;/p&gt;
&lt;p&gt;In reading over the Microsoft documentation, I was absolutely shocked when I read this in the remarks section:&lt;/p&gt;
&lt;p style="margin-left: 40px;"&gt;&lt;em&gt;However, there is a small chance that the checksum will not change. For this reason, we do not recommend using CHECKSUM to detect whether values have changed, unless your application can tolerate occasionally missing a change&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/ms189788%28v=SQL.100%29.aspx"&gt;http://msdn.microsoft.com/en-us/library/ms189788%28v=SQL.100%29.aspx&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Then I checked the page for BINARY_CHECKSUM, a similar remark exists.  &lt;a href="http://msdn.microsoft.com/en-us/library/ms173784%28v=SQL.100%29.aspx"&gt;http://msdn.microsoft.com/en-us/library/ms173784%28v=SQL.100%29.aspx&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;According to these 2 articles, we should be using HASHBYTES().  &lt;a href="http://msdn.microsoft.com/en-us/library/ms174415%28v=SQL.100%29.aspx"&gt;http://msdn.microsoft.com/en-us/library/ms174415%28v=SQL.100%29.aspx&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Personally, I was really shocked to find a function in any database that "most of the time" does its job.  I really do not know any system that tolerates "occasional" mistakes, or maybe it's that I haven't worked in enough industries.  I equate this to getting a notice on your bank statement saying "we might not have all your transaction listed, and we don't know for sure whether we have them all".&lt;/p&gt;
&lt;p&gt;I love quantum physics, but not in my computer systems.&lt;/p&gt; &lt;img src="http://geekswithblogs.net/LifeLongTechie/aggbug/145470.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Kevin Shyr</dc:creator>
            <guid>http://geekswithblogs.net/LifeLongTechie/archive/2011/05/20/do-not-trust-checksum-or-binary_checksum-in-sql-use-hashbytes.aspx</guid>
            <pubDate>Sat, 21 May 2011 01:50:01 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/LifeLongTechie/comments/145470.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/LifeLongTechie/archive/2011/05/20/do-not-trust-checksum-or-binary_checksum-in-sql-use-hashbytes.aspx#feedback</comments>
            <slash:comments>1</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/LifeLongTechie/comments/commentRss/145470.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/LifeLongTechie/services/trackbacks/145470.aspx</trackback:ping>
        </item>
        <item>
            <title>Frustration and rewards on using SSIS Pivot and Unpivot</title>
            <link>http://geekswithblogs.net/LifeLongTechie/archive/2011/05/20/frustration-and-rewards-on-using-ssis-pivot-and-unpivot.aspx</link>
            <description>&lt;p&gt;Granted, if you are just transforming data in the same SQL server, why would you do it in SSIS instead of just using Pivot and Unpivot in T-SQL query?  But what about in the case where data comes from various sources?&lt;/p&gt;
&lt;p&gt;What I had fun doing was the ability to skip using Linked server, pull in data from different sources, like XML over web service.  Another point that made me happy was the ability to simulate ROW_NUMBER() function with the merged data by using a Script Component.&lt;/p&gt;
&lt;p&gt;Anyway, I highly recommend everyone to try this out.  It's very frustrating throughout the process, but the result is very rewarding.  &lt;img alt="" src="http://geekswithblogs.net/Providers/BlogEntryEditor/FCKeditor/editor/images/smiley/msn/regular_smile.gif" /&gt;&lt;/p&gt;
&lt;p&gt;Pivot:  &lt;a href="http://msdn.microsoft.com/en-us/library/ms140308.aspx"&gt;http://msdn.microsoft.com/en-us/library/ms140308.aspx&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;Unpivot:  &lt;a href="http://msdn.microsoft.com/en-us/library/ms141723.aspx"&gt;http://msdn.microsoft.com/en-us/library/ms141723.aspx&lt;/a&gt;&lt;/p&gt; &lt;img src="http://geekswithblogs.net/LifeLongTechie/aggbug/145464.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Kevin Shyr</dc:creator>
            <guid>http://geekswithblogs.net/LifeLongTechie/archive/2011/05/20/frustration-and-rewards-on-using-ssis-pivot-and-unpivot.aspx</guid>
            <pubDate>Fri, 20 May 2011 20:36:30 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/LifeLongTechie/comments/145464.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/LifeLongTechie/archive/2011/05/20/frustration-and-rewards-on-using-ssis-pivot-and-unpivot.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/LifeLongTechie/comments/commentRss/145464.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/LifeLongTechie/services/trackbacks/145464.aspx</trackback:ping>
        </item>
        <item>
            <title>Instead of alter table column to turn IDENTITY on and off, turn IDENTITY_INSERT on and off</title>
            <link>http://geekswithblogs.net/LifeLongTechie/archive/2011/03/02/instead-of-alter-table-column-to-turn-identity-on-and.aspx</link>
            <description>&lt;p&gt;First of all, I don't know which version of SQL this post (http://www.techonthenet.com/sql/tables/alter_table.php) is based on, but at least for Microsoft SQL Server 2008, the syntax is not:&lt;/p&gt;
&lt;p&gt;ALTER TABLE [table_name]&lt;br /&gt;
MODIFY [column_name] [data_type] NOT NULL;&lt;/p&gt;
&lt;p&gt;Instead, it should be:&lt;/p&gt;
&lt;p&gt;ALTER TABLE [table_name]&lt;br /&gt;
ALTER COLUMN [column_name] [data_type] NOT NULL;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Then, as several posts point out, you can't use T-SQL to run an existing column into an IDENTITY column.  Instead, use the IDENTITY_INSERT to copy data from other tables.  http://msdn.microsoft.com/en-us/library/ms188059.aspx&lt;/p&gt;
&lt;pre&gt;
SET IDENTITY_INSERT [table_name] ON
INSERT ....
SET IDENTITY_INSERT [table_name] OFF&lt;/pre&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;http://www.sqlservercentral.com/Forums/Topic126147-8-1.aspx&lt;/p&gt;
&lt;p&gt;http://www.sqlteam.com/forums/topic.asp?TOPIC_ID=65257&lt;/p&gt; &lt;img src="http://geekswithblogs.net/LifeLongTechie/aggbug/144162.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Kevin Shyr</dc:creator>
            <guid>http://geekswithblogs.net/LifeLongTechie/archive/2011/03/02/instead-of-alter-table-column-to-turn-identity-on-and.aspx</guid>
            <pubDate>Thu, 03 Mar 2011 05:24:34 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/LifeLongTechie/comments/144162.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/LifeLongTechie/archive/2011/03/02/instead-of-alter-table-column-to-turn-identity-on-and.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/LifeLongTechie/comments/commentRss/144162.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/LifeLongTechie/services/trackbacks/144162.aspx</trackback:ping>
        </item>
        <item>
            <title>Change Data Capture to get a paricular set of change within a time span</title>
            <link>http://geekswithblogs.net/LifeLongTechie/archive/2010/11/10/change-data-capture-to-get-a-paricular-set-of-change.aspx</link>
            <description>&lt;p&gt;The "fn_cdc_map_time_to_lsn" is especially useful&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;DECLARE @begin_time datetime, @end_time datetime, @from_lsn binary(10), @to_lsn binary(10)&lt;/p&gt;
&lt;br /&gt;
&lt;p&gt;SET @begin_time = '11/10/2010 10:00 AM'&lt;/p&gt;
&lt;br /&gt;
&lt;p&gt;SET @end_time = '11/10/2010 8:00 PM'&lt;/p&gt;
&lt;br /&gt;
&lt;p&gt;SET @from_lsn = sys.fn_cdc_map_time_to_lsn('smallest greater than or equal', @begin_time);&lt;/p&gt;
&lt;br /&gt;
&lt;p&gt;SET @to_lsn = sys.fn_cdc_map_time_to_lsn('largest less than or equal', @end_time);&lt;/p&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;p&gt;SELECT&lt;/p&gt;
&lt;br /&gt;
&lt;p&gt;    _OU.unit_natural_id AS Order_Id&lt;/p&gt;
&lt;br /&gt;
&lt;p&gt;    , CONVERT(DATETIME, LEFT(CONVERT(VARCHAR(80), _OR.return_body.query('&lt;/p&gt;
&lt;br /&gt;
&lt;p&gt;     declare default element namespace ''urn:com:maritz:research:caf:returns:BIE:1:0'';&lt;/p&gt;
&lt;br /&gt;
&lt;p&gt;        /Return/ReturnHeader/ReturnDate/text()&lt;/p&gt;
&lt;br /&gt;
&lt;p&gt;    ')), 10), 126) AS ReturnReceivedDate&lt;/p&gt;
&lt;br /&gt;
&lt;p&gt;FROM ODS.Unit AS _OU&lt;/p&gt;
&lt;br /&gt;
&lt;p&gt;    LEFT OUTER JOIN ODS.[Return] AS _OR&lt;/p&gt;
&lt;br /&gt;
&lt;p&gt;        ON _OU.unit_key = _OR.unit_key&lt;/p&gt;
&lt;br /&gt;
&lt;p&gt;WHERE&lt;/p&gt;
&lt;br /&gt;
&lt;p&gt;    _OU.unit_guid IN (SELECT population_guid FROM cdc.fn_cdc_get_all_changes_Clean_Collection(@from_lsn, @to_lsn, 'all'))&lt;/p&gt;
&lt;br /&gt;
&lt;p&gt;ORDER BY&lt;/p&gt;
&lt;br /&gt;
&lt;p&gt;    CONVERT(DATETIME, LEFT(CONVERT(VARCHAR(80), _OR.return_body.query('&lt;/p&gt;
&lt;br /&gt;
&lt;p&gt;     declare default element namespace ''urn:com:maritz:research:caf:returns:BIE:1:0'';&lt;/p&gt;
&lt;br /&gt;
&lt;p&gt;        /Return/ReturnHeader/ReturnDate/text()&lt;/p&gt;
&lt;br /&gt;
&lt;p&gt;    ')), 10), 126)&lt;/p&gt;
&lt;br /&gt;
&lt;p&gt;GO&lt;/p&gt; &lt;img src="http://geekswithblogs.net/LifeLongTechie/aggbug/142670.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Kevin Shyr</dc:creator>
            <guid>http://geekswithblogs.net/LifeLongTechie/archive/2010/11/10/change-data-capture-to-get-a-paricular-set-of-change.aspx</guid>
            <pubDate>Wed, 10 Nov 2010 23:38:49 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/LifeLongTechie/comments/142670.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/LifeLongTechie/archive/2010/11/10/change-data-capture-to-get-a-paricular-set-of-change.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/LifeLongTechie/comments/commentRss/142670.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/LifeLongTechie/services/trackbacks/142670.aspx</trackback:ping>
        </item>
        <item>
            <title>Execute SQL Job synchronously for BizTalk via a Stored Procedure call</title>
            <link>http://geekswithblogs.net/LifeLongTechie/archive/2010/11/01/execute-sql-job-synchronously-for-biztalk-via-a-stored-procedure.aspx</link>
            <description>&lt;p&gt;The async one was very easy to do.  However, in the process automation task I was given, there was a need to execute SQL Job and waiting for the execution result.  I couldn't find anything on the web to do what I wanted, so I make the following stored procedure.&lt;/p&gt;
&lt;p&gt;In addition, this stored procedure is quasi-synchronous.  I start the job and then check the status.  You can change the timing of the status check, but for the example below, it is "synchronous within 30 seconds."  I wish there is a better way to do this, but at my current knowledge base I only came up with this:&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;CREATE PROCEDURE [SQLJobExecSyncByName]&lt;br /&gt;
    @SQLJobName AS [varchar](128),&lt;br /&gt;
    @SQLJobStepName AS [varchar](128),&lt;br /&gt;
    @MinutesToWait AS [int],&lt;br /&gt;
    @JobExecStatus AS [bit] output&lt;br /&gt;
AS&lt;br /&gt;
BEGIN&lt;br /&gt;
    -- SET NOCOUNT ON added to prevent extra result sets from&lt;br /&gt;
    -- interfering with SELECT statements.&lt;br /&gt;
    SET NOCOUNT ON;&lt;br /&gt;
    &lt;br /&gt;
    DECLARE @JobStartDateTime AS DATETIME&lt;br /&gt;
    DECLARE @SPQuitDateTime AS DATETIME&lt;br /&gt;
    DECLARE @JobStartDateAsString AS VARCHAR(8)&lt;br /&gt;
    DECLARE @JobStartTimeAsString AS VARCHAR(6)&lt;br /&gt;
    DECLARE @SPOutcome AS BIT&lt;br /&gt;
    SET @JobStartDateTime = DATEADD(mi, -1, GETDATE())&lt;br /&gt;
    SET @SPQuitDateTime = DATEADD(mi, @MinutesToWait, GETDATE())&lt;br /&gt;
    SET @SPOutcome = 0&lt;br /&gt;
    SELECT @JobStartDateAsString = CONVERT(VARCHAR(8), @JobStartDateTime, 112)&lt;br /&gt;
    SELECT @JobStartTimeAsString = REPLACE(CONVERT(VARCHAR(8), @JobStartDateTime, 108), ':', '')&lt;br /&gt;
&lt;br /&gt;
    -- Create a temp table to store result&lt;br /&gt;
    CREATE TABLE #Result_sp_help_jobhistory&lt;br /&gt;
    (&lt;br /&gt;
        instance_id [int]&lt;br /&gt;
        , job_id [uniqueidentifier]&lt;br /&gt;
        , job_name [sysname]&lt;br /&gt;
        , step_id [int]&lt;br /&gt;
        , step_name [sysname]&lt;br /&gt;
        , sql_message_id [int]&lt;br /&gt;
        , sql_severity [int]&lt;br /&gt;
        , [message] [nvarchar](1024)&lt;br /&gt;
        , run_status [int]&lt;br /&gt;
        , run_date [int]&lt;br /&gt;
        , run_time [int]&lt;br /&gt;
        , run_duration [int]&lt;br /&gt;
        , operator_emailed [nvarchar](20)&lt;br /&gt;
        , operator_netsent [nvarchar](20)&lt;br /&gt;
        , operator_paged [nvarchar](20)&lt;br /&gt;
        , retries_attempted [int]&lt;br /&gt;
        , [server] [nvarchar](30)&lt;br /&gt;
    )&lt;br /&gt;
&lt;br /&gt;
    -- Start the job @SQLJobName at step @SQLJobStepName&lt;br /&gt;
    EXEC msdb.dbo.sp_start_job &lt;br /&gt;
        @job_name = @SQLJobName, &lt;br /&gt;
        @server_name = @@SERVERNAME,&lt;br /&gt;
        @step_name = @SQLJobStepName;&lt;br /&gt;
    &lt;br /&gt;
    WHILE (GETDATE() &amp;lt; @SPQuitDateTime) -- not time to quit yet&lt;br /&gt;
    BEGIN&lt;br /&gt;
        -- Check to see if the job has finished successfully&lt;br /&gt;
        INSERT INTO #Result_sp_help_jobhistory&lt;br /&gt;
            (instance_id&lt;br /&gt;
                , job_id&lt;br /&gt;
                , job_name&lt;br /&gt;
                , step_id&lt;br /&gt;
                , step_name&lt;br /&gt;
                , sql_message_id&lt;br /&gt;
                , sql_severity&lt;br /&gt;
                , [message]&lt;br /&gt;
                , run_status&lt;br /&gt;
                , run_date&lt;br /&gt;
                , run_time&lt;br /&gt;
                , run_duration&lt;br /&gt;
                , operator_emailed&lt;br /&gt;
                , operator_netsent&lt;br /&gt;
                , operator_paged&lt;br /&gt;
                , retries_attempted&lt;br /&gt;
                , [server]&lt;br /&gt;
            )&lt;br /&gt;
        EXEC msdb.dbo.sp_help_jobhistory&lt;br /&gt;
            @job_name = @SQLJobName, &lt;br /&gt;
            @start_run_date = @JobStartDateAsString, &lt;br /&gt;
            @start_run_time = @JobStartTimeAsString,&lt;br /&gt;
            --@run_status = 1, -- Success&lt;br /&gt;
            @mode = 'FULL'&lt;br /&gt;
&lt;br /&gt;
        IF(EXISTS(SELECT * &lt;br /&gt;
                    FROM #Result_sp_help_jobhistory&lt;br /&gt;
                    WHERE job_name = @SQLJobName&lt;br /&gt;
                        AND step_name = '(Job outcome)'&lt;br /&gt;
                        AND run_status = 1&lt;br /&gt;
                        AND @JobStartDateTime &amp;lt; CONVERT(DATETIME, CONVERT(VARCHAR(8), run_date) + ' ' + SUBSTRING(CONVERT(VARCHAR(6), run_time), 1, 2) + ':' + SUBSTRING(CONVERT(VARCHAR(6), run_time), 3, 2) + ':' + SUBSTRING(CONVERT(VARCHAR(6), run_time), 5, 2), 112)&lt;br /&gt;
                )&lt;br /&gt;
            )&lt;br /&gt;
        BEGIN&lt;br /&gt;
            -- The job has succceeded at least once after it was called&lt;br /&gt;
            SET @SPOutcome = 1&lt;br /&gt;
            GOTO FinishingStoredProcedureCall;&lt;br /&gt;
        END&lt;br /&gt;
        &lt;br /&gt;
        IF(EXISTS(SELECT * &lt;br /&gt;
                    FROM #Result_sp_help_jobhistory&lt;br /&gt;
                    WHERE job_name = @SQLJobName&lt;br /&gt;
                        AND step_name = '(Job outcome)'&lt;br /&gt;
                        AND run_status = 0&lt;br /&gt;
                        AND @JobStartDateTime &amp;lt; CONVERT(DATETIME, CONVERT(VARCHAR(8), run_date) + ' ' + SUBSTRING(CONVERT(VARCHAR(6), run_time), 1, 2) + ':' + SUBSTRING(CONVERT(VARCHAR(6), run_time), 3, 2) + ':' + SUBSTRING(CONVERT(VARCHAR(6), run_time), 5, 2), 112)&lt;br /&gt;
                )&lt;br /&gt;
            )&lt;br /&gt;
        BEGIN&lt;br /&gt;
            -- The job has failed after it was called&lt;br /&gt;
            GOTO FinishingStoredProcedureCall;&lt;br /&gt;
        END&lt;br /&gt;
        &lt;br /&gt;
        -- Clean up for the next run&lt;br /&gt;
        TRUNCATE TABLE #Result_sp_help_jobhistory&lt;br /&gt;
        &lt;br /&gt;
        -- check every 30 seconds&lt;br /&gt;
        WAITFOR DELAY '00:00:30';&lt;br /&gt;
    END&lt;br /&gt;
    &lt;br /&gt;
    FinishingStoredProcedureCall:&lt;br /&gt;
        SET @JobExecStatus = @SPOutcome&lt;br /&gt;
        DROP TABLE #Result_sp_help_jobhistory;&lt;br /&gt;
    &lt;br /&gt;
END&lt;br /&gt;
&lt;br /&gt;
 &lt;/p&gt;
&lt;p&gt;This SP was made to return an output parameter as result as to maximize reusability of the logic.  In order to use this from BizTalk, it was hooked into the following SP:&lt;/p&gt;
&lt;p&gt;CREATE PROCEDURE [SQLJobExecSyncByNameForBizTalk]&lt;br /&gt;
    @SQLJobName AS [varchar](128),&lt;br /&gt;
    @SQLJobStepName AS [varchar](128),&lt;br /&gt;
    @MinutesToWait AS [int]&lt;br /&gt;
AS&lt;br /&gt;
BEGIN&lt;br /&gt;
    -- SET NOCOUNT ON added to prevent extra result sets from&lt;br /&gt;
    -- interfering with SELECT statements.&lt;br /&gt;
    SET NOCOUNT ON;&lt;br /&gt;
    &lt;br /&gt;
    DECLARE @JobExecStatus AS BIT&lt;br /&gt;
&lt;br /&gt;
    EXEC [ODS].[SQLJobExecSyncByName] &lt;br /&gt;
        @SQLJobName = @SQLJobName,&lt;br /&gt;
        @SQLJobStepName = @SQLJobStepName,&lt;br /&gt;
        @MinutesToWait = @MinutesToWait,&lt;br /&gt;
        @JobExecStatus = @JobExecStatus OUTPUT;&lt;br /&gt;
        &lt;br /&gt;
    SELECT CONVERT(VARCHAR(8), @JobExecStatus)&lt;br /&gt;
         FOR XML PATH(N''), ROOT(N'JobExecStatus');&lt;br /&gt;
        &lt;br /&gt;
END&lt;/p&gt; &lt;img src="http://geekswithblogs.net/LifeLongTechie/aggbug/142555.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Kevin Shyr</dc:creator>
            <guid>http://geekswithblogs.net/LifeLongTechie/archive/2010/11/01/execute-sql-job-synchronously-for-biztalk-via-a-stored-procedure.aspx</guid>
            <pubDate>Mon, 01 Nov 2010 20:18:30 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/LifeLongTechie/comments/142555.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/LifeLongTechie/archive/2010/11/01/execute-sql-job-synchronously-for-biztalk-via-a-stored-procedure.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/LifeLongTechie/comments/commentRss/142555.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/LifeLongTechie/services/trackbacks/142555.aspx</trackback:ping>
        </item>
        <item>
            <title>BizTalk UseAmbientTransaction and System.ObjectDisposedException</title>
            <link>http://geekswithblogs.net/LifeLongTechie/archive/2010/08/25/biztalk-useambienttransaction-and-system.objectdisposedexception.aspx</link>
            <description>&lt;p&gt;[UPDATE:  2010-10-15]&lt;/p&gt;
&lt;p&gt;This update is long overdue.  Once we implemented all the changes, we were still getting that error from time to time.  The sympton was that we would not get that error for hours, even days, but once we get it, the error keeps coming.  After fiddling with some settings, we found that setting the "PollWhileDataFound" to False did the trick.  We have not seen the error since.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;[UPDATE:  2010-08-26]&lt;/p&gt;
&lt;p&gt;We were able to fix our problem by setting the WCF-SQL receive location transaction isolation level.  Go to your BizTalk WCF-SQL receive location --&amp;gt; Click Configure --&amp;gt; Go to Behavior tab --&amp;gt; Set sqlAdapterInboundTransactionBehavior to "ReadCommitted".  We have now set the "UseAmbientTransaction" property to True and have not had any problems for 2 days.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;[Original Post]&lt;/p&gt;
&lt;p&gt;We are continuing to experience the "System.ObjectDisposedException" error with &lt;em&gt;UseAmbientTransaction  set to True&lt;/em&gt; in our receive ports on our production server, and have not found a solution.  For now we will try to separate the polling and the update statement into different steps.&lt;/p&gt;
&lt;p&gt;Background:  &lt;a href="http://social.msdn.microsoft.com/Forums/en-US/biztalkr2adapters/thread/8c043def-6c43-4892-93a4-6201a10a89bc" target="_blank"&gt;http://social.msdn.microsoft.com/Forums/en-US/biztalkr2adapters/thread/8c043def-6c43-4892-93a4-6201a10a89bc&lt;/a&gt;&lt;/p&gt; &lt;img src="http://geekswithblogs.net/LifeLongTechie/aggbug/141475.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Kevin Shyr</dc:creator>
            <guid>http://geekswithblogs.net/LifeLongTechie/archive/2010/08/25/biztalk-useambienttransaction-and-system.objectdisposedexception.aspx</guid>
            <pubDate>Wed, 25 Aug 2010 15:46:05 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/LifeLongTechie/comments/141475.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/LifeLongTechie/archive/2010/08/25/biztalk-useambienttransaction-and-system.objectdisposedexception.aspx#feedback</comments>
            <slash:comments>2</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/LifeLongTechie/comments/commentRss/141475.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/LifeLongTechie/services/trackbacks/141475.aspx</trackback:ping>
        </item>
        <item>
            <title>Comparing ways to get rowcount from a database table.</title>
            <link>http://geekswithblogs.net/LifeLongTechie/archive/2010/02/25/comparing-ways-to-get-rowcount-from-a-database-table.aspx</link>
            <description>&lt;p&gt;&lt;span style="font-family: Tahoma"&gt;Just read this and found it very interesting.  The following are 2 queries to get rowcount on a database table:&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family: Tahoma"&gt;Query 1 (the one everyone knows):&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin: 0in 0in 0pt 40px; mso-layout-grid-align: none"&gt;&lt;span style="font-family: 'Courier New'; color: blue; font-size: 10pt; mso-no-proof: yes"&gt;SELECT&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: 10pt; mso-no-proof: yes"&gt; &lt;span style="color: fuchsia"&gt;COUNT&lt;/span&gt;&lt;span style="color: gray"&gt;(&lt;/span&gt;RowID&lt;span style="color: gray"&gt;)&lt;/span&gt; &lt;span style="color: blue"&gt;AS&lt;/span&gt; [RowCount]&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin: 0in 0in 0pt 40px"&gt;&lt;span style="font-family: 'Courier New'; color: blue; font-size: 10pt; mso-no-proof: yes"&gt;FROM&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: 10pt; mso-no-proof: yes"&gt; elig_Inbox&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt; mso-no-proof: yes"&gt;&lt;font face="Arial"&gt;
&lt;p class="MsoNormal" style="margin: 0in 0in 0pt; mso-layout-grid-align: none"&gt; &lt;/p&gt;
&lt;p class="MsoNormal" style="margin: 0in 0in 0pt; mso-layout-grid-align: none"&gt;&lt;span style="font-family: Tahoma"&gt;&lt;span style="color: #000000"&gt;&lt;span style="font-size: 10pt; mso-no-proof: yes"&gt;Query 2 (the interesting one):&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin: 0in 0in 0pt; mso-layout-grid-align: none"&gt; &lt;/p&gt;
&lt;p class="MsoNormal" style="margin: 0in 0in 0pt 40px; mso-layout-grid-align: none"&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;; color: blue; font-size: 10pt; mso-no-proof: yes"&gt;SELECT&lt;/span&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt; mso-no-proof: yes"&gt; st&lt;span style="color: gray"&gt;.&lt;/span&gt;row_count &lt;span style="color: blue"&gt;AS&lt;/span&gt; [RowCount]&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin: 0in 0in 0pt 40px; mso-layout-grid-align: none"&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;; color: blue; font-size: 10pt; mso-no-proof: yes"&gt;FROM&lt;/span&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt; mso-no-proof: yes"&gt; &lt;span style="color: green"&gt;sys.dm_db_partition_stats&lt;/span&gt; st&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin: 0in 0in 0pt 40px; mso-layout-grid-align: none"&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;; color: blue; font-size: 10pt; mso-no-proof: yes"&gt;WHERE&lt;/span&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt; mso-no-proof: yes"&gt; index_id &lt;span style="color: gray"&gt;&amp;lt;&lt;/span&gt; 2&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin: 0in 0in 0pt 40px; mso-layout-grid-align: none"&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;; color: gray; font-size: 10pt; mso-no-proof: yes"&gt;and&lt;/span&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt; mso-no-proof: yes"&gt; &lt;span style="color: fuchsia"&gt;OBJECT_NAME&lt;/span&gt;&lt;span style="color: gray"&gt;(&lt;/span&gt;&lt;span style="color: fuchsia"&gt;OBJECT_ID&lt;/span&gt;&lt;span style="color: gray"&gt;)=&lt;/span&gt;&lt;span style="color: red"&gt;'elig_Inbox'&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin: 0in 0in 0pt; mso-layout-grid-align: none"&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;; color: red; font-size: 10pt; mso-no-proof: yes"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin: 0in 0in 0pt"&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt; mso-no-proof: yes"&gt;What's really interesting to me is that once you look at the execution plan of the 2 queries, you'd find the improvement in performance.&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin: 0in 0in 0pt"&gt; &lt;/p&gt;
&lt;p class="MsoNormal" style="margin: 0in 0in 0pt"&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt; mso-no-proof: yes"&gt;&lt;img width="1063" height="940" alt="" src="/images/geekswithblogs_net/LifeLongTechie/10637/o_RowCount%20Query%20Execution%20Plan.JPG" /&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin: 0in 0in 0pt"&gt; &lt;/p&gt;
&lt;p class="MsoNormal" style="margin: 0in 0in 0pt"&gt; &lt;/p&gt;
&lt;p class="MsoNormal" style="margin: 0in 0in 0pt"&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt; mso-no-proof: yes"&gt;In real life, we probably don't care about it as often as we should.  For example, both queries, executed against a table of 260k + rows, returned result within a second.&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin: 0in 0in 0pt"&gt; &lt;/p&gt;
&lt;p class="MsoNormal" style="margin: 0in 0in 0pt"&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt; mso-no-proof: yes"&gt;However, one drawback I can think of immediately, is that Query 2 does not have the Table Hints option.  Most of the time we do RowCount because we need some logic done and we need to lock the table while we do the count.  I guess the way around that would be to manually initiate a lock before Query 2, then release it after.  It will be interesting to see whether that puts the 2 query performance back on par.&lt;/span&gt;&lt;/p&gt;
&lt;/font&gt;&lt;/span&gt;&lt;/p&gt; &lt;img src="http://geekswithblogs.net/LifeLongTechie/aggbug/138172.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Kevin Shyr</dc:creator>
            <guid>http://geekswithblogs.net/LifeLongTechie/archive/2010/02/25/comparing-ways-to-get-rowcount-from-a-database-table.aspx</guid>
            <pubDate>Thu, 25 Feb 2010 16:07:06 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/LifeLongTechie/comments/138172.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/LifeLongTechie/archive/2010/02/25/comparing-ways-to-get-rowcount-from-a-database-table.aspx#feedback</comments>
            <slash:comments>1</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/LifeLongTechie/comments/commentRss/138172.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/LifeLongTechie/services/trackbacks/138172.aspx</trackback:ping>
        </item>
        <item>
            <title>Stop a SQL job in the first 5 days of the month, but report success</title>
            <link>http://geekswithblogs.net/LifeLongTechie/archive/2010/02/02/stop-a-sql-job-in-the-first-5-days-of.aspx</link>
            <description>&lt;p&gt;It is actually quite simple when I think this through:&lt;/p&gt;
&lt;ol&gt;
    &lt;li&gt;Make the first job step with this T-SQL query:&lt;br /&gt;
    &lt;span style="color: #0000ff"&gt;IF &lt;/span&gt;((&lt;span style="color: #0000ff"&gt;SELECT &lt;/span&gt;&lt;span style="color: #ff99cc"&gt;DAY&lt;/span&gt;(&lt;span style="color: #ff99cc"&gt;GETDATE&lt;/span&gt;())) &amp;lt; 6) &lt;span style="color: #0000ff"&gt;BEGIN&lt;/span&gt;&lt;br /&gt;
      &lt;span style="color: #0000ff"&gt;SELECT &lt;/span&gt;1/0&lt;br /&gt;
    &lt;span style="color: #0000ff"&gt;END&lt;/span&gt;&lt;br /&gt;
     &lt;/li&gt;
    &lt;li&gt;Go to the Advanced Tab of the Job Step property page.  Select "Quit the job reporting sucess" on the "On Failure Action" drop down.&lt;br /&gt;
    &lt;img width="693" height="200" alt="" src="/images/geekswithblogs_net/LifeLongTechie/10637/o_failure%20action.JPG" /&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Note:  You can use RAISERROR, but the Severity has to be set to greater than 10.  To avoid future maintenance confusion, I decided to go with the basic fatal error generation.&lt;/p&gt; &lt;img src="http://geekswithblogs.net/LifeLongTechie/aggbug/137756.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Kevin Shyr</dc:creator>
            <guid>http://geekswithblogs.net/LifeLongTechie/archive/2010/02/02/stop-a-sql-job-in-the-first-5-days-of.aspx</guid>
            <pubDate>Tue, 02 Feb 2010 19:12:58 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/LifeLongTechie/comments/137756.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/LifeLongTechie/archive/2010/02/02/stop-a-sql-job-in-the-first-5-days-of.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/LifeLongTechie/comments/commentRss/137756.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/LifeLongTechie/services/trackbacks/137756.aspx</trackback:ping>
        </item>
        <item>
            <title>Useful T-SQL queries on BizTalk Filter, Send Port, Receive Location, etc.</title>
            <link>http://geekswithblogs.net/LifeLongTechie/archive/2010/01/20/useful-biztalk-queries-on-send-port-receive-locations-filter.aspx</link>
            <description>&lt;p&gt;[2011-02-17]&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size: large;"&gt;&lt;strong&gt;Disable all receive locations of Schedule adapter if the system has any suspended messages&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;
&lt;div style="margin-bottom: 0.0001pt; line-height: normal;"&gt;&lt;span style="font-size: 10pt;"&gt;UPDATE&lt;/span&gt;&lt;span style="font-size: 10pt;"&gt; RL&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: 0.0001pt; line-height: normal;"&gt;&lt;span style="font-size: 10pt;"&gt;SET&lt;/span&gt;&lt;span style="font-size: 10pt;"&gt; RL&lt;span style="color: gray;"&gt;.&lt;/span&gt;[Disabled] &lt;span style="color: gray;"&gt;=&lt;/span&gt; &lt;span style="color: gray;"&gt;-&lt;/span&gt;1&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: 0.0001pt; line-height: normal;"&gt;&lt;span style="font-size: 10pt;"&gt;FROM&lt;/span&gt;&lt;span style="font-size: 10pt;"&gt; BizTalkMgmtDb&lt;span style="color: gray;"&gt;.&lt;/span&gt;dbo&lt;span style="color: gray;"&gt;.&lt;/span&gt;adm_ReceiveLocation &lt;span style="color: blue;"&gt;AS&lt;/span&gt; RL &lt;span style="color: blue;"&gt;WITH&lt;/span&gt;&lt;span style="color: gray;"&gt;(&lt;/span&gt;&lt;span style="color: blue;"&gt;READPAST&lt;/span&gt;&lt;span style="color: gray;"&gt;,&lt;/span&gt; &lt;span style="color: blue;"&gt;ROWLOCK&lt;/span&gt;&lt;span style="color: gray;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: 0.0001pt; line-height: normal;"&gt;&lt;span style="font-size: 10pt;"&gt;      &lt;span style="color: gray;"&gt;INNER&lt;/span&gt; &lt;span style="color: gray;"&gt;JOIN&lt;/span&gt; BizTalkMgmtDb&lt;span style="color: gray;"&gt;.&lt;/span&gt;dbo&lt;span style="color: gray;"&gt;.&lt;/span&gt;bts_receiveport &lt;span style="color: blue;"&gt;AS&lt;/span&gt; RP &lt;span style="color: blue;"&gt;WITH&lt;/span&gt;&lt;span style="color: gray;"&gt;(&lt;/span&gt;&lt;span style="color: blue;"&gt;READPAST&lt;/span&gt;&lt;span style="color: gray;"&gt;,&lt;/span&gt; &lt;span style="color: blue;"&gt;ROWLOCK&lt;/span&gt;&lt;span style="color: gray;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: 0.0001pt; line-height: normal;"&gt;&lt;span style="font-size: 10pt;"&gt;            &lt;span style="color: blue;"&gt;ON&lt;/span&gt; RL&lt;span style="color: gray;"&gt;.&lt;/span&gt;ReceivePortId &lt;span style="color: gray;"&gt;=&lt;/span&gt; RP&lt;span style="color: gray;"&gt;.&lt;/span&gt;nID&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: 0.0001pt; line-height: normal;"&gt;&lt;span style="font-size: 10pt;"&gt;      &lt;span style="color: gray;"&gt;INNER&lt;/span&gt; &lt;span style="color: gray;"&gt;JOIN&lt;/span&gt; BizTalkMgmtDb&lt;span style="color: gray;"&gt;.&lt;/span&gt;dbo&lt;span style="color: gray;"&gt;.&lt;/span&gt;bts_application &lt;span style="color: blue;"&gt;AS&lt;/span&gt; APP &lt;span style="color: blue;"&gt;WITH&lt;/span&gt;&lt;span style="color: gray;"&gt;(&lt;/span&gt;&lt;span style="color: blue;"&gt;READPAST&lt;/span&gt;&lt;span style="color: gray;"&gt;,&lt;/span&gt; &lt;span style="color: blue;"&gt;ROWLOCK&lt;/span&gt;&lt;span style="color: gray;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: 0.0001pt; line-height: normal;"&gt;&lt;span style="font-size: 10pt;"&gt;            &lt;span style="color: blue;"&gt;ON&lt;/span&gt; RP&lt;span style="color: gray;"&gt;.&lt;/span&gt;nApplicationID &lt;span style="color: gray;"&gt;=&lt;/span&gt; APP&lt;span style="color: gray;"&gt;.&lt;/span&gt;nID&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: 0.0001pt; line-height: normal;"&gt;&lt;span style="font-size: 10pt;"&gt;      &lt;span style="color: gray;"&gt;INNER&lt;/span&gt; &lt;span style="color: gray;"&gt;JOIN&lt;/span&gt; BizTalkMgmtDb&lt;span style="color: gray;"&gt;.&lt;/span&gt;dbo&lt;span style="color: gray;"&gt;.&lt;/span&gt;adm_Adapter &lt;span style="color: blue;"&gt;AS&lt;/span&gt; AD &lt;span style="color: blue;"&gt;WITH&lt;/span&gt;&lt;span style="color: gray;"&gt;(&lt;/span&gt;&lt;span style="color: blue;"&gt;READPAST&lt;/span&gt;&lt;span style="color: gray;"&gt;,&lt;/span&gt; &lt;span style="color: blue;"&gt;ROWLOCK&lt;/span&gt;&lt;span style="color: gray;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: 0.0001pt; line-height: normal;"&gt;&lt;span style="font-size: 10pt;"&gt;            &lt;span style="color: blue;"&gt;ON&lt;/span&gt; RL&lt;span style="color: gray;"&gt;.&lt;/span&gt;AdapterId &lt;span style="color: gray;"&gt;=&lt;/span&gt; AD&lt;span style="color: gray;"&gt;.&lt;/span&gt;Id&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: 0.0001pt; line-height: normal;"&gt;&lt;span style="font-size: 10pt;"&gt;WHERE&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: 0.0001pt; line-height: normal;"&gt;&lt;span style="font-size: 10pt;"&gt;      APP&lt;span style="color: gray;"&gt;.&lt;/span&gt;nvcName &lt;span style="color: gray;"&gt;=&lt;/span&gt; &lt;span style="color: red;"&gt;'?'&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: 0.0001pt; line-height: normal;"&gt;&lt;span style="font-size: 10pt;"&gt;      &lt;span style="color: gray;"&gt;AND&lt;/span&gt; AD&lt;span style="color: gray;"&gt;.&lt;/span&gt;[Name] &lt;span style="color: gray;"&gt;=&lt;/span&gt; &lt;span style="color: red;"&gt;'Schedule'&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: 0.0001pt; line-height: normal;"&gt;&lt;span style="font-size: 10pt;"&gt;      &lt;span style="color: gray;"&gt;AND&lt;/span&gt; RL&lt;span style="color: gray;"&gt;.&lt;/span&gt;Name &lt;span style="color: gray;"&gt;NOT&lt;/span&gt; &lt;span style="color: gray;"&gt;LIKE&lt;/span&gt; &lt;span style="color: red;"&gt;'%Disabled%'&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: 0.0001pt; line-height: normal;"&gt;&lt;span style="font-size: 10pt;"&gt;      &lt;span style="color: gray;"&gt;AND&lt;/span&gt; RL&lt;span style="color: gray;"&gt;.&lt;/span&gt;[Disabled] &lt;span style="color: gray;"&gt;=&lt;/span&gt; 0&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="font-size: 10pt; line-height: 115%;"&gt;      &lt;span style="color: gray;"&gt;AND&lt;/span&gt; &lt;span style="color: gray;"&gt;EXISTS(&lt;/span&gt;&lt;span style="color: blue;"&gt;SELECT&lt;/span&gt; &lt;span style="color: gray;"&gt;*&lt;/span&gt; &lt;span style="color: blue;"&gt;FROM&lt;/span&gt; BizTalkMsgBoxDb&lt;span style="color: gray;"&gt;.&lt;/span&gt;dbo&lt;span style="color: gray;"&gt;.&lt;/span&gt;InstancesSuspended &lt;span style="color: blue;"&gt;WITH&lt;/span&gt;&lt;span style="color: gray;"&gt;(&lt;/span&gt;&lt;span style="color: blue;"&gt;READPAST&lt;/span&gt;&lt;span style="color: gray;"&gt;,&lt;/span&gt; &lt;span style="color: blue;"&gt;ROWLOCK&lt;/span&gt;&lt;span style="color: gray;"&gt;))&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;&lt;span style="font-size: large;"&gt;&lt;strong&gt;Looking for down Receive Locations and send ports&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;
&lt;div style="margin-bottom: 0.0001pt; line-height: normal;"&gt;&lt;span style="font-size: 10pt;"&gt;SELECT&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: 0.0001pt; line-height: normal;"&gt;&lt;span style="font-size: 10pt;"&gt;    SPTP&lt;span style="color: gray;"&gt;.&lt;/span&gt;nvcAddress &lt;span style="color: blue;"&gt;AS&lt;/span&gt; SendingURI&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: 0.0001pt; line-height: normal;"&gt;&lt;span style="font-size: 10pt;"&gt;    &lt;span style="color: gray;"&gt;,&lt;/span&gt; SP&lt;span style="color: gray;"&gt;.&lt;/span&gt;nvcName &lt;span style="color: blue;"&gt;AS&lt;/span&gt; SendPortName&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: 0.0001pt; line-height: normal;"&gt;&lt;span style="font-size: 10pt;"&gt;FROM&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: 0.0001pt; line-height: normal;"&gt;&lt;span style="font-size: 10pt;"&gt;    BizTalkMgmtDb&lt;span style="color: gray;"&gt;.&lt;/span&gt;dbo&lt;span style="color: gray;"&gt;.&lt;/span&gt;bts_sendport_transport &lt;span style="color: blue;"&gt;AS&lt;/span&gt; SPTP &lt;span style="color: blue;"&gt;WITH&lt;/span&gt;&lt;span style="color: gray;"&gt;(&lt;/span&gt;&lt;span style="color: blue;"&gt;READPAST&lt;/span&gt;&lt;span style="color: gray;"&gt;,&lt;/span&gt; &lt;span style="color: blue;"&gt;ROWLOCK&lt;/span&gt;&lt;span style="color: gray;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: 0.0001pt; line-height: normal;"&gt;&lt;span style="font-size: 10pt;"&gt;    &lt;span style="color: gray;"&gt;INNER&lt;/span&gt; &lt;span style="color: gray;"&gt;JOIN&lt;/span&gt; BizTalkMgmtDb&lt;span style="color: gray;"&gt;.&lt;/span&gt;dbo&lt;span style="color: gray;"&gt;.&lt;/span&gt;bts_sendport &lt;span style="color: blue;"&gt;AS&lt;/span&gt; SP &lt;span style="color: blue;"&gt;WITH&lt;/span&gt;&lt;span style="color: gray;"&gt;(&lt;/span&gt;&lt;span style="color: blue;"&gt;READPAST&lt;/span&gt;&lt;span style="color: gray;"&gt;,&lt;/span&gt; &lt;span style="color: blue;"&gt;ROWLOCK&lt;/span&gt;&lt;span style="color: gray;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: 0.0001pt; line-height: normal;"&gt;&lt;span style="font-size: 10pt;"&gt;        &lt;span style="color: blue;"&gt;ON&lt;/span&gt; SPTP&lt;span style="color: gray;"&gt;.&lt;/span&gt;nSendPortID &lt;span style="color: gray;"&gt;=&lt;/span&gt; SP&lt;span style="color: gray;"&gt;.&lt;/span&gt;nID&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: 0.0001pt; line-height: normal;"&gt;&lt;span style="font-size: 10pt;"&gt;    &lt;span style="color: gray;"&gt;INNER&lt;/span&gt; &lt;span style="color: gray;"&gt;JOIN&lt;/span&gt; BizTalkMgmtDb&lt;span style="color: gray;"&gt;.&lt;/span&gt;dbo&lt;span style="color: gray;"&gt;.&lt;/span&gt;bts_application &lt;span style="color: blue;"&gt;AS&lt;/span&gt; APP &lt;span style="color: blue;"&gt;WITH&lt;/span&gt;&lt;span style="color: gray;"&gt;(&lt;/span&gt;&lt;span style="color: blue;"&gt;READPAST&lt;/span&gt;&lt;span style="color: gray;"&gt;,&lt;/span&gt; &lt;span style="color: blue;"&gt;ROWLOCK&lt;/span&gt;&lt;span style="color: gray;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: 0.0001pt; line-height: normal;"&gt;&lt;span style="font-size: 10pt;"&gt;        &lt;span style="color: blue;"&gt;ON&lt;/span&gt; SP&lt;span style="color: gray;"&gt;.&lt;/span&gt;nApplicationID &lt;span style="color: gray;"&gt;=&lt;/span&gt; APP&lt;span style="color: gray;"&gt;.&lt;/span&gt;nID&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: 0.0001pt; line-height: normal;"&gt;&lt;span style="font-size: 10pt;"&gt;WHERE&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: 0.0001pt; line-height: normal;"&gt;&lt;span style="font-size: 10pt;"&gt;    APP&lt;span style="color: gray;"&gt;.&lt;/span&gt;nvcName &lt;span style="color: gray;"&gt;=&lt;/span&gt; &lt;/span&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;&lt;span style="background-color: rgb(255, 255, 255);"&gt;&lt;span style="font-size: 10pt;"&gt;'?'&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: 0.0001pt; line-height: normal;"&gt;&lt;span style="font-size: 10pt;"&gt;    &lt;span style="color: gray;"&gt;AND&lt;/span&gt; SP&lt;span style="color: gray;"&gt;.&lt;/span&gt;nPortStatus &lt;span style="color: gray;"&gt;&amp;lt;&amp;gt;&lt;/span&gt; 3&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: 0.0001pt; line-height: normal;"&gt;&lt;span style="font-size: 10pt;"&gt;    &lt;span style="color: gray;"&gt;AND&lt;/span&gt; SP&lt;span style="color: gray;"&gt;.&lt;/span&gt;nvcName &lt;span style="color: gray;"&gt;NOT&lt;/span&gt; &lt;span style="color: gray;"&gt;LIKE&lt;/span&gt; &lt;span style="color: red;"&gt;'%unenlisted%'&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="font-size: 10pt; line-height: 115%;"&gt;    &lt;span style="color: gray;"&gt;AND&lt;/span&gt; SPTP&lt;span style="color: gray;"&gt;.&lt;/span&gt;nTransportTypeId &lt;span style="color: gray;"&gt;IS&lt;/span&gt; &lt;span style="color: gray;"&gt;NOT&lt;/span&gt; &lt;span style="color: gray;"&gt;NULL&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;div style="margin-bottom: 0.0001pt; line-height: normal;"&gt;&lt;span style="font-size: 10pt;"&gt;SELECT&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: 0.0001pt; line-height: normal;"&gt;&lt;span style="font-size: 10pt;"&gt;    RL&lt;span style="color: gray;"&gt;.&lt;/span&gt;Name &lt;span style="color: blue;"&gt;AS&lt;/span&gt; ReceiveLocationName&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: 0.0001pt; line-height: normal;"&gt;&lt;span style="font-size: 10pt;"&gt;    &lt;span style="color: gray;"&gt;,&lt;/span&gt; RL&lt;span style="color: gray;"&gt;.&lt;/span&gt;InboundTransportURL &lt;span style="color: blue;"&gt;AS&lt;/span&gt; InboundTransportURL&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: 0.0001pt; line-height: normal;"&gt;&lt;span style="font-size: 10pt;"&gt;    &lt;span style="color: gray;"&gt;,&lt;/span&gt; RP&lt;span style="color: gray;"&gt;.&lt;/span&gt;nvcName &lt;span style="color: blue;"&gt;AS&lt;/span&gt; ReceivePortName&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: 0.0001pt; line-height: normal;"&gt;&lt;span style="font-size: 10pt;"&gt;FROM&lt;/span&gt;&lt;span style="font-size: 10pt;"&gt; BizTalkMgmtDb&lt;span style="color: gray;"&gt;.&lt;/span&gt;dbo&lt;span style="color: gray;"&gt;.&lt;/span&gt;adm_ReceiveLocation &lt;span style="color: blue;"&gt;AS&lt;/span&gt; RL &lt;span style="color: blue;"&gt;WITH&lt;/span&gt;&lt;span style="color: gray;"&gt;(&lt;/span&gt;&lt;span style="color: blue;"&gt;READPAST&lt;/span&gt;&lt;span style="color: gray;"&gt;,&lt;/span&gt; &lt;span style="color: blue;"&gt;ROWLOCK&lt;/span&gt;&lt;span style="color: gray;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: 0.0001pt; line-height: normal;"&gt;&lt;span style="font-size: 10pt;"&gt;    &lt;span style="color: gray;"&gt;INNER&lt;/span&gt; &lt;span style="color: gray;"&gt;JOIN&lt;/span&gt; BizTalkMgmtDb&lt;span style="color: gray;"&gt;.&lt;/span&gt;dbo&lt;span style="color: gray;"&gt;.&lt;/span&gt;bts_receiveport &lt;span style="color: blue;"&gt;AS&lt;/span&gt; RP &lt;span style="color: blue;"&gt;WITH&lt;/span&gt;&lt;span style="color: gray;"&gt;(&lt;/span&gt;&lt;span style="color: blue;"&gt;READPAST&lt;/span&gt;&lt;span style="color: gray;"&gt;,&lt;/span&gt; &lt;span style="color: blue;"&gt;ROWLOCK&lt;/span&gt;&lt;span style="color: gray;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: 0.0001pt; line-height: normal;"&gt;&lt;span style="font-size: 10pt;"&gt;        &lt;span style="color: blue;"&gt;ON&lt;/span&gt; RL&lt;span style="color: gray;"&gt;.&lt;/span&gt;ReceivePortId &lt;span style="color: gray;"&gt;=&lt;/span&gt; RP&lt;span style="color: gray;"&gt;.&lt;/span&gt;nID&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: 0.0001pt; line-height: normal;"&gt;&lt;span style="font-size: 10pt;"&gt;    &lt;span style="color: gray;"&gt;INNER&lt;/span&gt; &lt;span style="color: gray;"&gt;JOIN&lt;/span&gt; BizTalkMgmtDb&lt;span style="color: gray;"&gt;.&lt;/span&gt;dbo&lt;span style="color: gray;"&gt;.&lt;/span&gt;bts_application &lt;span style="color: blue;"&gt;AS&lt;/span&gt; APP &lt;span style="color: blue;"&gt;WITH&lt;/span&gt;&lt;span style="color: gray;"&gt;(&lt;/span&gt;&lt;span style="color: blue;"&gt;READPAST&lt;/span&gt;&lt;span style="color: gray;"&gt;,&lt;/span&gt; &lt;span style="color: blue;"&gt;ROWLOCK&lt;/span&gt;&lt;span style="color: gray;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: 0.0001pt; line-height: normal;"&gt;&lt;span style="font-size: 10pt;"&gt;        &lt;span style="color: blue;"&gt;ON&lt;/span&gt; RP&lt;span style="color: gray;"&gt;.&lt;/span&gt;nApplicationID &lt;span style="color: gray;"&gt;=&lt;/span&gt; APP&lt;span style="color: gray;"&gt;.&lt;/span&gt;nID&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: 0.0001pt; line-height: normal;"&gt;&lt;span style="font-size: 10pt;"&gt;WHERE&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: 0.0001pt; line-height: normal;"&gt;&lt;span style="font-size: 10pt;"&gt;    APP&lt;span style="color: gray;"&gt;.&lt;/span&gt;nvcName &lt;span style="color: gray;"&gt;=&lt;/span&gt; &lt;span style="color: red;"&gt;'?'&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="margin-bottom: 0.0001pt; line-height: normal;"&gt;&lt;span style="font-size: 10pt;"&gt;    &lt;span style="color: gray;"&gt;AND&lt;/span&gt; RL&lt;span style="color: gray;"&gt;.&lt;/span&gt;[Disabled] &lt;span style="color: gray;"&gt;=&lt;/span&gt; &lt;span style="color: gray;"&gt;-&lt;/span&gt;1&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="font-size: 10pt; line-height: 115%;"&gt;    &lt;span style="color: gray;"&gt;AND&lt;/span&gt; RL&lt;span style="color: gray;"&gt;.&lt;/span&gt;Name &lt;span style="color: gray;"&gt;NOT&lt;/span&gt; &lt;span style="color: gray;"&gt;LIKE&lt;/span&gt; &lt;span style="color: red;"&gt;'%Disabled%'&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;[2010-01-21]&lt;br /&gt;
&lt;span style="font-size: large;"&gt;Looking for all send ports and their applications that subscribe to a receive port's messages&lt;/span&gt;&lt;br /&gt;
 &lt;/p&gt;
&lt;p&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;WITH&lt;br /&gt;
&lt;/span&gt;&lt;font size="2"&gt;TmpXMLNode&lt;br /&gt;
&lt;/font&gt;&lt;font size="2" color="#808080"&gt;&lt;font size="2" color="#808080"&gt;  (&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; SendPortName&lt;br /&gt;
&lt;/font&gt;&lt;font size="2" color="#808080"&gt;&lt;font size="2" color="#808080"&gt;    ,&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; ApplicationName&lt;br /&gt;
&lt;/font&gt;&lt;font size="2" color="#808080"&gt;&lt;font size="2" color="#808080"&gt;    ,&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; tmpcol&lt;br /&gt;
&lt;/font&gt;&lt;font size="2" color="#808080"&gt;&lt;font size="2" color="#808080"&gt;  )&lt;br /&gt;
&lt;/font&gt;&lt;/font&gt;&lt;font size="2" color="#0000ff"&gt;&lt;font size="2" color="#0000ff"&gt;AS&lt;br /&gt;
&lt;/font&gt;&lt;/font&gt;&lt;font size="2" color="#808080"&gt;&lt;font size="2" color="#808080"&gt;  (&lt;/font&gt;&lt;/font&gt;&lt;font size="2" color="#0000ff"&gt;&lt;font size="2" color="#0000ff"&gt;SELECT&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; &lt;br /&gt;
    SP&lt;/font&gt;&lt;font size="2" color="#808080"&gt;&lt;font size="2" color="#808080"&gt;.&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt;nvcName &lt;/font&gt;&lt;font size="2" color="#0000ff"&gt;&lt;font size="2" color="#0000ff"&gt;AS&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; SendPortName&lt;br /&gt;
&lt;/font&gt;&lt;font size="2" color="#808080"&gt;&lt;font size="2" color="#808080"&gt;    ,&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; APP&lt;/font&gt;&lt;font size="2" color="#808080"&gt;&lt;font size="2" color="#808080"&gt;.&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt;nvcName &lt;/font&gt;&lt;font size="2" color="#0000ff"&gt;&lt;font size="2" color="#0000ff"&gt;AS&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; ApplicationName&lt;br /&gt;
&lt;/font&gt;&lt;font size="2" color="#808080"&gt;&lt;font size="2" color="#808080"&gt;    ,&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; &lt;/font&gt;&lt;font size="2" color="#ff00ff"&gt;&lt;font size="2" color="#ff00ff"&gt;CAST&lt;/font&gt;&lt;/font&gt;&lt;font size="2" color="#808080"&gt;&lt;font size="2" color="#808080"&gt;(&lt;/font&gt;&lt;/font&gt;&lt;font size="2" color="#ff00ff"&gt;&lt;font size="2" color="#ff00ff"&gt;REPLACE&lt;/font&gt;&lt;/font&gt;&lt;font size="2" color="#808080"&gt;&lt;font size="2" color="#808080"&gt;(&lt;/font&gt;&lt;/font&gt;&lt;font size="2" color="#ff00ff"&gt;&lt;font size="2" color="#ff00ff"&gt;REPLACE&lt;/font&gt;&lt;/font&gt;&lt;font size="2" color="#808080"&gt;&lt;font size="2" color="#808080"&gt;(&lt;/font&gt;&lt;/font&gt;&lt;font size="2" color="#ff00ff"&gt;&lt;font size="2" color="#ff00ff"&gt;REPLACE&lt;/font&gt;&lt;/font&gt;&lt;font size="2" color="#808080"&gt;&lt;font size="2" color="#808080"&gt;(&lt;/font&gt;&lt;/font&gt;&lt;font size="2" color="#ff00ff"&gt;&lt;font size="2" color="#ff00ff"&gt;CONVERT&lt;/font&gt;&lt;/font&gt;&lt;font size="2" color="#808080"&gt;&lt;font size="2" color="#808080"&gt;(&lt;/font&gt;&lt;/font&gt;&lt;font size="2" color="#0000ff"&gt;&lt;font size="2" color="#0000ff"&gt;NVARCHAR&lt;/font&gt;&lt;/font&gt;&lt;font size="2" color="#808080"&gt;&lt;font size="2" color="#808080"&gt;(&lt;/font&gt;&lt;/font&gt;&lt;font size="2" color="#ff00ff"&gt;&lt;font size="2" color="#ff00ff"&gt;MAX&lt;/font&gt;&lt;/font&gt;&lt;font size="2" color="#808080"&gt;&lt;font size="2" color="#808080"&gt;),&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; SP&lt;/font&gt;&lt;font size="2" color="#808080"&gt;&lt;font size="2" color="#808080"&gt;.&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt;nvcFilter&lt;/font&gt;&lt;font size="2" color="#808080"&gt;&lt;font size="2" color="#808080"&gt;),&lt;/font&gt;&lt;/font&gt;&lt;font size="2" color="#ff0000"&gt;&lt;font size="2" color="#ff0000"&gt;'&amp;amp;gt;'&lt;/font&gt;&lt;/font&gt;&lt;font size="2" color="#808080"&gt;&lt;font size="2" color="#808080"&gt;,&lt;/font&gt;&lt;/font&gt;&lt;font size="2" color="#ff0000"&gt;&lt;font size="2" color="#ff0000"&gt;'&amp;gt;'&lt;/font&gt;&lt;/font&gt;&lt;font size="2" color="#808080"&gt;&lt;font size="2" color="#808080"&gt;),&lt;/font&gt;&lt;/font&gt;&lt;font size="2" color="#ff0000"&gt;&lt;font size="2" color="#ff0000"&gt;'&amp;amp;lt;'&lt;/font&gt;&lt;/font&gt;&lt;font size="2" color="#808080"&gt;&lt;font size="2" color="#808080"&gt;,&lt;/font&gt;&lt;/font&gt;&lt;font size="2" color="#ff0000"&gt;&lt;font size="2" color="#ff0000"&gt;'&amp;lt;'&lt;/font&gt;&lt;/font&gt;&lt;font size="2" color="#808080"&gt;&lt;font size="2" color="#808080"&gt;),&lt;br /&gt;
&lt;/font&gt;&lt;/font&gt;&lt;font size="2" color="#ff0000"&gt;&lt;font size="2" color="#ff0000"&gt;      'xmlns="http://www.w3.org/2001/XMLSchema-instance"'&lt;/font&gt;&lt;/font&gt;&lt;font size="2" color="#808080"&gt;&lt;font size="2" color="#808080"&gt;,&lt;/font&gt;&lt;/font&gt;&lt;font size="2" color="#ff0000"&gt;&lt;font size="2" color="#ff0000"&gt;''&lt;/font&gt;&lt;/font&gt;&lt;font size="2" color="#808080"&gt;&lt;font size="2" color="#808080"&gt;)&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; &lt;/font&gt;&lt;font size="2" color="#0000ff"&gt;&lt;font size="2" color="#0000ff"&gt;AS&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; &lt;/font&gt;&lt;font size="2" color="#0000ff"&gt;&lt;font size="2" color="#0000ff"&gt;XML&lt;/font&gt;&lt;/font&gt;&lt;font size="2" color="#808080"&gt;&lt;font size="2" color="#808080"&gt;)&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; &lt;/font&gt;&lt;font size="2" color="#0000ff"&gt;&lt;font size="2" color="#0000ff"&gt;AS&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; tmpcol&lt;br /&gt;
&lt;/font&gt;&lt;font size="2" color="#0000ff"&gt;&lt;font size="2" color="#0000ff"&gt;  FROM&lt;br /&gt;
&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt;    bts_sendport &lt;/font&gt;&lt;font size="2" color="#0000ff"&gt;&lt;font size="2" color="#0000ff"&gt;AS&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; SP&lt;br /&gt;
&lt;/font&gt;&lt;font size="2" color="#808080"&gt;&lt;font size="2" color="#808080"&gt;    INNER&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; &lt;/font&gt;&lt;font size="2" color="#808080"&gt;&lt;font size="2" color="#808080"&gt;JOIN&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; bts_application &lt;/font&gt;&lt;font size="2" color="#0000ff"&gt;&lt;font size="2" color="#0000ff"&gt;AS&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; APP&lt;br /&gt;
&lt;/font&gt;&lt;font size="2" color="#0000ff"&gt;&lt;font size="2" color="#0000ff"&gt;      ON&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; SP&lt;/font&gt;&lt;font size="2" color="#808080"&gt;&lt;font size="2" color="#808080"&gt;.&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt;nApplicationID &lt;/font&gt;&lt;font size="2" color="#808080"&gt;&lt;font size="2" color="#808080"&gt;=&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; APP&lt;/font&gt;&lt;font size="2" color="#808080"&gt;&lt;font size="2" color="#808080"&gt;.&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt;nID&lt;br /&gt;
&lt;/font&gt;&lt;font size="2" color="#0000ff"&gt;&lt;font size="2" color="#0000ff"&gt;  WHERE&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; &lt;br /&gt;
&lt;/font&gt;&lt;font size="2" color="#ff00ff"&gt;&lt;font size="2" color="#ff00ff"&gt;    CONVERT&lt;/font&gt;&lt;/font&gt;&lt;font size="2" color="#808080"&gt;&lt;font size="2" color="#808080"&gt;(&lt;/font&gt;&lt;/font&gt;&lt;font size="2" color="#0000ff"&gt;&lt;font size="2" color="#0000ff"&gt;VARCHAR&lt;/font&gt;&lt;/font&gt;&lt;font size="2" color="#808080"&gt;&lt;font size="2" color="#808080"&gt;(&lt;/font&gt;&lt;/font&gt;&lt;font size="2" color="#ff00ff"&gt;&lt;font size="2" color="#ff00ff"&gt;MAX&lt;/font&gt;&lt;/font&gt;&lt;font size="2" color="#808080"&gt;&lt;font size="2" color="#808080"&gt;),&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; nvcFilter&lt;/font&gt;&lt;font size="2" color="#808080"&gt;&lt;font size="2" color="#808080"&gt;)&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; &lt;/font&gt;&lt;font size="2" color="#808080"&gt;&lt;font size="2" color="#808080"&gt;&amp;lt;&amp;gt;&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; &lt;/font&gt;&lt;font size="2" color="#ff0000"&gt;&lt;font size="2" color="#ff0000"&gt;''&lt;br /&gt;
&lt;/font&gt;&lt;/font&gt;&lt;font size="2" color="#808080"&gt;&lt;font size="2" color="#808080"&gt;  )&lt;br /&gt;
&lt;br /&gt;
&lt;/font&gt;&lt;/font&gt;&lt;font size="2" color="#0000ff"&gt;&lt;font size="2" color="#0000ff"&gt;SELECT&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; &lt;br /&gt;
  SendPortName&lt;br /&gt;
&lt;/font&gt;&lt;font size="2" color="#808080"&gt;&lt;font size="2" color="#808080"&gt;  ,&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; ApplicationName&lt;br /&gt;
&lt;/font&gt;&lt;font size="2" color="#808080"&gt;&lt;font size="2" color="#808080"&gt;  ,&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; &lt;/font&gt;&lt;font size="2" color="#ff00ff"&gt;&lt;font size="2" color="#ff00ff"&gt;CONVERT&lt;/font&gt;&lt;/font&gt;&lt;font size="2" color="#808080"&gt;&lt;font size="2" color="#808080"&gt;(&lt;/font&gt;&lt;/font&gt;&lt;font size="2" color="#0000ff"&gt;&lt;font size="2" color="#0000ff"&gt;VARCHAR&lt;/font&gt;&lt;/font&gt;&lt;font size="2" color="#808080"&gt;&lt;font size="2" color="#808080"&gt;(&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt;255&lt;/font&gt;&lt;font size="2" color="#808080"&gt;&lt;font size="2" color="#808080"&gt;),&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; nref&lt;/font&gt;&lt;font size="2" color="#808080"&gt;&lt;font size="2" color="#808080"&gt;.&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt;query&lt;/font&gt;&lt;font size="2" color="#808080"&gt;&lt;font size="2" color="#808080"&gt;(&lt;/font&gt;&lt;/font&gt;&lt;font size="2" color="#ff0000"&gt;&lt;font size="2" color="#ff0000"&gt;'data(@Value)'&lt;/font&gt;&lt;/font&gt;&lt;font size="2" color="#808080"&gt;&lt;font size="2" color="#808080"&gt;))&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; &lt;/font&gt;&lt;font size="2" color="#0000ff"&gt;&lt;font size="2" color="#0000ff"&gt;AS&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; FilterValue&lt;br /&gt;
&lt;/font&gt;&lt;font size="2" color="#808080"&gt;&lt;font size="2" color="#808080"&gt;  ,&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; &lt;/font&gt;&lt;font size="2" color="#ff00ff"&gt;&lt;font size="2" color="#ff00ff"&gt;CONVERT&lt;/font&gt;&lt;/font&gt;&lt;font size="2" color="#808080"&gt;&lt;font size="2" color="#808080"&gt;(&lt;/font&gt;&lt;/font&gt;&lt;font size="2" color="#0000ff"&gt;&lt;font size="2" color="#0000ff"&gt;VARCHAR&lt;/font&gt;&lt;/font&gt;&lt;font size="2" color="#808080"&gt;&lt;font size="2" color="#808080"&gt;(&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt;255&lt;/font&gt;&lt;font size="2" color="#808080"&gt;&lt;font size="2" color="#808080"&gt;),&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; nref&lt;/font&gt;&lt;font size="2" color="#808080"&gt;&lt;font size="2" color="#808080"&gt;.&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt;query&lt;/font&gt;&lt;font size="2" color="#808080"&gt;&lt;font size="2" color="#808080"&gt;(&lt;/font&gt;&lt;/font&gt;&lt;font size="2" color="#ff0000"&gt;&lt;font size="2" color="#ff0000"&gt;'data(@Property)'&lt;/font&gt;&lt;/font&gt;&lt;font size="2" color="#808080"&gt;&lt;font size="2" color="#808080"&gt;))&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; &lt;/font&gt;&lt;font size="2" color="#0000ff"&gt;&lt;font size="2" color="#0000ff"&gt;AS&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; FilterProperty&lt;br /&gt;
&lt;/font&gt;&lt;font size="2" color="#0000ff"&gt;&lt;font size="2" color="#0000ff"&gt;FROM&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; &lt;br /&gt;
  TmpXMLNode&lt;br /&gt;
&lt;/font&gt;&lt;font size="2" color="#808080"&gt;&lt;font size="2" color="#808080"&gt;  CROSS&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; &lt;/font&gt;&lt;font size="2" color="#808080"&gt;&lt;font size="2" color="#808080"&gt;APPLY&lt;br /&gt;
&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt;    TmpXMLNode&lt;/font&gt;&lt;font size="2" color="#808080"&gt;&lt;font size="2" color="#808080"&gt;.&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt;tmpcol&lt;/font&gt;&lt;font size="2" color="#808080"&gt;&lt;font size="2" color="#808080"&gt;.&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt;nodes&lt;/font&gt;&lt;font size="2" color="#808080"&gt;&lt;font size="2" color="#808080"&gt;(&lt;/font&gt;&lt;/font&gt;&lt;font size="2" color="#ff0000"&gt;&lt;font size="2" color="#ff0000"&gt;'/Filter/Group/Statement'&lt;/font&gt;&lt;/font&gt;&lt;font size="2" color="#808080"&gt;&lt;font size="2" color="#808080"&gt;)&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; &lt;/font&gt;&lt;font size="2" color="#0000ff"&gt;&lt;font size="2" color="#0000ff"&gt;AS&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; R&lt;/font&gt;&lt;font size="2" color="#808080"&gt;&lt;font size="2" color="#808080"&gt;(&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt;nref&lt;/font&gt;&lt;font size="2" color="#808080"&gt;&lt;font size="2" color="#808080"&gt;)&lt;br /&gt;
&lt;/font&gt;&lt;/font&gt;&lt;font size="2" color="#0000ff"&gt;&lt;font size="2" color="#0000ff"&gt;WHERE&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; &lt;br /&gt;
&lt;/font&gt;&lt;font size="2" color="#ff00ff"&gt;&lt;font size="2" color="#ff00ff"&gt;  CONVERT&lt;/font&gt;&lt;/font&gt;&lt;font size="2" color="#808080"&gt;&lt;font size="2" color="#808080"&gt;(&lt;/font&gt;&lt;/font&gt;&lt;font size="2" color="#0000ff"&gt;&lt;font size="2" color="#0000ff"&gt;VARCHAR&lt;/font&gt;&lt;/font&gt;&lt;font size="2" color="#808080"&gt;&lt;font size="2" color="#808080"&gt;(&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt;255&lt;/font&gt;&lt;font size="2" color="#808080"&gt;&lt;font size="2" color="#808080"&gt;),&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; nref&lt;/font&gt;&lt;font size="2" color="#808080"&gt;&lt;font size="2" color="#808080"&gt;.&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt;query&lt;/font&gt;&lt;font size="2" color="#808080"&gt;&lt;font size="2" color="#808080"&gt;(&lt;/font&gt;&lt;/font&gt;&lt;font size="2" color="#ff0000"&gt;&lt;font size="2" color="#ff0000"&gt;'data(@Property)'&lt;/font&gt;&lt;/font&gt;&lt;font size="2" color="#808080"&gt;&lt;font size="2" color="#808080"&gt;))&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; &lt;/font&gt;&lt;font size="2" color="#808080"&gt;&lt;font size="2" color="#808080"&gt;=&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; &lt;/font&gt;&lt;font size="2" color="#ff0000"&gt;&lt;font size="2" color="#ff0000"&gt;'BTS.ReceivePortName'&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; &lt;/font&gt;&lt;font size="2" color="#008000"&gt;&lt;font size="2" color="#008000"&gt;-- filter type&lt;br /&gt;
&lt;/font&gt;&lt;/font&gt;&lt;font size="2" color="#808080"&gt;&lt;font size="2" color="#808080"&gt;  AND&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; &lt;/font&gt;&lt;font size="2" color="#ff00ff"&gt;&lt;font size="2" color="#ff00ff"&gt;CONVERT&lt;/font&gt;&lt;/font&gt;&lt;font size="2" color="#808080"&gt;&lt;font size="2" color="#808080"&gt;(&lt;/font&gt;&lt;/font&gt;&lt;font size="2" color="#0000ff"&gt;&lt;font size="2" color="#0000ff"&gt;VARCHAR&lt;/font&gt;&lt;/font&gt;&lt;font size="2" color="#808080"&gt;&lt;font size="2" color="#808080"&gt;(&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt;255&lt;/font&gt;&lt;font size="2" color="#808080"&gt;&lt;font size="2" color="#808080"&gt;),&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; nref&lt;/font&gt;&lt;font size="2" color="#808080"&gt;&lt;font size="2" color="#808080"&gt;.&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt;query&lt;/font&gt;&lt;font size="2" color="#808080"&gt;&lt;font size="2" color="#808080"&gt;(&lt;/font&gt;&lt;/font&gt;&lt;font size="2" color="#ff0000"&gt;&lt;font size="2" color="#ff0000"&gt;'data(@Value)'&lt;/font&gt;&lt;/font&gt;&lt;font size="2" color="#808080"&gt;&lt;font size="2" color="#808080"&gt;))&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; &lt;/font&gt;&lt;font size="2" color="#808080"&gt;&lt;font size="2" color="#808080"&gt;=&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; &lt;/font&gt;&lt;font size="2" color="#ff0000"&gt;&lt;font size="2" color="#ff0000"&gt;'[Receive port name]'&lt;/font&gt;&lt;/font&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;[2010-01-20]&lt;br /&gt;
&lt;span style="font-size: large;"&gt;Looking for all the send ports that send to a specific location:&lt;/span&gt;&lt;/p&gt;
&lt;div&gt;&lt;span style="color: blue; font-size: 10pt;"&gt;
&lt;div&gt;&lt;span style="font-family: 'Courier New'; color: blue; font-size: 10pt;"&gt;SELECT&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;      &lt;span style="color: rgb(0, 0, 0);"&gt;SPTP.nvcAddress&lt;/span&gt; &lt;span style="color: blue;"&gt;AS&lt;/span&gt; &lt;/span&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;SendingURI&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;      &lt;span style="color: rgb(0, 0, 0);"&gt;, SP.nvcName&lt;/span&gt; AS &lt;/span&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;SendPortName&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;      &lt;span style="color: rgb(0, 0, 0);"&gt;, SP.nPortStatus&lt;/span&gt; &lt;span style="color: blue;"&gt;AS&lt;/span&gt; &lt;/span&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;SendPortStatus&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;      &lt;span style="color: rgb(0, 0, 0);"&gt;, APP.nvcName&lt;/span&gt; &lt;span style="color: blue;"&gt;AS&lt;/span&gt; &lt;/span&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;ApplicationName&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;      &lt;span style="color: rgb(0, 0, 0);"&gt;, APP.DateModified&lt;/span&gt; &lt;span style="color: blue;"&gt;AS&lt;/span&gt; &lt;/span&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;ApplicationDateModified&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="font-family: 'Courier New'; color: blue; font-size: 10pt;"&gt;FROM&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;      &lt;span style="color: rgb(0, 0, 0);"&gt;bts_sendport_transport &lt;/span&gt;&lt;span style="color: blue;"&gt;AS&lt;/span&gt; &lt;/span&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;SPTP&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;      &lt;span style="color: gray;"&gt;INNER&lt;/span&gt; &lt;span style="color: gray;"&gt;JOIN&lt;/span&gt; &lt;span style="color: rgb(0, 0, 0);"&gt;bts_sendport &lt;/span&gt;&lt;span style="color: blue;"&gt;AS&lt;/span&gt; &lt;/span&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;SP&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;            &lt;span style="color: blue;"&gt;ON&lt;/span&gt; &lt;/span&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;SPTP.nSendPortID = SP.nID&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;      &lt;span style="color: gray;"&gt;INNER&lt;/span&gt; &lt;span style="color: gray;"&gt;JOIN&lt;/span&gt; &lt;span style="color: rgb(0, 0, 0);"&gt;bts_application&lt;/span&gt; &lt;span style="color: blue;"&gt;AS&lt;/span&gt; &lt;/span&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;APP&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;            &lt;span style="color: blue;"&gt;ON&lt;/span&gt; &lt;/span&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;SP.nApplicationID = APP.nID&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="font-family: 'Courier New'; color: blue; font-size: 10pt;"&gt;WHERE&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="font-family: 'Courier New'; font-size: 10pt;"&gt;      &lt;span style="color: rgb(0, 0, 0);"&gt;SPTP.nvcAddress &lt;/span&gt;&lt;span style="color: gray;"&gt;like&lt;/span&gt; &lt;span style="color: red;"&gt;'ftp://ftp.[some company].com%'&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/span&gt;&lt;/div&gt;
&lt;p&gt; &lt;/p&gt; &lt;img src="http://geekswithblogs.net/LifeLongTechie/aggbug/137559.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Kevin Shyr</dc:creator>
            <guid>http://geekswithblogs.net/LifeLongTechie/archive/2010/01/20/useful-biztalk-queries-on-send-port-receive-locations-filter.aspx</guid>
            <pubDate>Wed, 20 Jan 2010 17:33:10 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/LifeLongTechie/comments/137559.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/LifeLongTechie/archive/2010/01/20/useful-biztalk-queries-on-send-port-receive-locations-filter.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/LifeLongTechie/comments/commentRss/137559.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/LifeLongTechie/services/trackbacks/137559.aspx</trackback:ping>
        </item>
    </channel>
</rss>
