WCF-SQL アダプターを使用してストアド プロシージャでポーリングを行っている受信場所があります。
受信場所はカスタム パイプラインを使用しています。
そのストアド プロシージャは、いくつかの行で「UPDATE」アクションを実行しています。
後の段階でパイプラインが失敗した場合に備えて、BizTalk がトランザクションで ROLLBACK を実行する必要があります。
どうすればいいですか?
既定では、WCF-SQL アダプターは、分散 DTC トランザクションでストアド プロシージャを呼び出します。
この設定 ( UseAmbientTransaction
) は、[受信場所] プロパティの [バインディング] タブの [トランザクション] にあります。
(未テスト!) これは、proc またはパイプラインが失敗した場合、接続が自動的にロールバックされることを意味するはずです。
これは、同様にオーケストレーションのアトミック スコープのスコープで使用される場合、アダプタに 2 フェーズ コミット / ACID を適用する必要があります。