英語で読む

次の方法で共有


ループ パス

Max Occurs プロパティが 1 より大きい場合、スキーマ内の要素はループしています。 ループ パスは、ソース スキーマのループ要素と宛先スキーマのループ要素の間にリンクを描画するときに発生します。

ループ パスの構成

ループ パスを作成すると、BizTalk マッパーによってループ レコードが自動的に処理されます。

ループ パスは、送信元スキーマのループ レコードのフィールドを、送信先スキーマのループ レコードのフィールドにリンクさせることによって構成できます。 次の図に、食品調査レコードのみをマスター住所リストにコピーするマップを示します。

ループ パスの使用を示すマップ。
ループ パス マップ

ループ パスが複数あります

複数のループ レコードに含まれるフィールドと、単一のループ レコードに含まれるフィールドとをリンクさせた場合、マップ内に複数のループ パスが形成されます。 次の図は、2 つの異なるアンケートから収集された住所を 1 つのマスター アドレス一覧に結合する試みを示しています。

複数のループ パスを使用
複数のループ パスが含まれたマップ (正しくない)

このマップでは、予想どおりの結果にはなりません。 コンパイル時にマッパーにより複数のループ パスが検出されると、警告が生成され、既定では最初のループ パスが選択されます。 2 つの異なるアドレスを 1 つのマスター アドレス一覧に結合するには、次のマップに示すように Looping Functoid を使用します。

ループ Functoid の使用を示すマップ。
ループ Functoid マップ (正しい)

シナリオでは、ループ Functoid を複数のループ パスの代わりに使用する必要があります。

  1. 複数のループ パス シナリオで、マッパーによって必要な出力が生成されない場合。

  2. 入力インスタンス メッセージ内の複数の繰り返し構造を、出力インスタンス メッセージ内の単一の繰り返し構造に結合する場合。

  3. 単一のレコードを複数のレコードにマッピングすることにより、フラット スキーマを階層構造のスキーマに変換する場合。 これは、フラット スキーマを Microsoft Commerce Server カタログに変換する場合の一般的な操作です。

参照

マップにループ Functoid を追加する方法
ループ Functoid