孤立したメッセージまたは重複メッセージを処理する送信ポートの作成
ここでは、孤立したメッセージや重複メッセージの削除に使用できる送信ポートの設定方法について説明します。
パブリック プロセス オーケストレーションがメッセージの最初のコピーの処理を完了した後に、Microsoft® BizTalk Accelerator for RosettaNet (BTARN) がメッセージの追加コピーを受信した場合、孤立メッセージまたは重複メッセージが問題になる可能性があります。 BTARN は、これらのメッセージを重複としてマークし、中断します。 これらのメッセージは BizTalk 管理コンソールに表示できます。 BizTalk 管理コンソールの詳細については、BizTalk Serverヘルプの「BizTalk 管理コンソールの使用」を参照してください。
孤立したメッセージまたは重複メッセージは、それらを再表示または削除するまで BizTalk 管理コンソールに残ります。 これらのメッセージを削除する最も効果的な方法は、孤立したメッセージまたは重複メッセージのフィルターを設定した送信ポートを設定することです。 BizTalk Serverで利用可能な任意の輸送手段を使用して移動できます。 たとえば、ファイル トランスポートを使用して移動できます。 BTARN は、孤立したメッセージまたは重複するメッセージをファイルとしてハード ディスク上の場所に送信します。 これにより、それらを簡単に削除できます。 ポートは、参加している状態の場合も停止状態の場合もありますが、停止状態では、そのポートに送信されたすべてのメッセージは、その送信ポートの下に保留メッセージとして表示されます。
Note
重複/孤立したメッセージを処理する送信ポートを作成する代わりに、特別なパイプライン コンポーネントを作成して、MessageBox データベースからそれらのメッセージを削除できます。 BizTalk Server SDK の FixMsg コンポーネントをテンプレートとして使用できます。 null を返すように メソッドを IComponent.Execute
変更する必要があります。 これにより、BizTalk Serverは、コンポーネントを含むパイプラインに送信されたすべてのメッセージを破棄します。 このパイプライン コンポーネントは、コンパイルして送信パイプラインに追加し、その後、シンク ポートの送信パイプラインをコンパイルし、展開し、選択します。 詳細については、BizTalk Server ヘルプの「CustomComponent (BizTalk Server サンプル)」を参照してください。
孤立したメッセージまたは重複メッセージを処理する送信ポートを作成するには
Visual Studio の [表示] メニューの [BizTalk エクスプローラー] をクリックします。
BizTalk エクスプローラーで、[BizTalk 管理データベース] を展開し、[送信ポート] を展開します。
[ 送信ポート] を右クリックし、[ 送信ポートの追加] をクリックします。
[新しい送信ポートの作成] ウィンドウで、[ 静的 One-Way ポート] を選択し、[ OK] をクリックします。
[静的 One-Way 送信ポート] プロパティ ウィンドウの [名前] ボックスに、送信ポートの名前を入力します。
左側のウィンドウで、[ トランスポート] をクリックします。 右側のウィンドウで、[トランスポートの種類] をクリックし、 トランスポートの種類として [ ファイル ] を選択します。 [ アドレス (URI)] の横にある省略記号ボタン (...) をクリックし、ハード ディスク上の場所を入力して、[ OK] をクリックします。
左側のウィンドウで [ 送信] をクリックし、[ パイプラインの送信] をクリックし、[ Microsoft.BizTalk.DefaultPipelines.PassThruTransmit] を選択します。
左側のウィンドウで、[ フィルターとマップ] をクリックし、[ フィルター] をクリックします。
右側のウィンドウの最初の行の [プロパティ] で、ドロップダウン リストから [Microsoft.Solutions.BTARN.GlobalSchemas.IsDuplicateMessage] を選択し、[演算子] をそのまま==にして、[値] に「True」と入力し、[グループ] のドロップダウン リストから [または] を選択します。
右側のウィンドウの 2 行目の [プロパティ] で、ドロップダウン リストから [Microsoft.Solutions.BTARN.GlobalSchemas.IsOrphanMessage] を選択し、[演算子==] をそのままにして、[値] に「True」と入力します。
[OK] をクリックします。
BizTalk エクスプローラーで、送信ポートの名前を右クリックし、[参加] をクリックします。 送信ポートが登録されたら、送信ポートを右クリックし、[ 開始] をクリックします。