ループ パス
Max Occurs プロパティが 1 より大きい場合、スキーマ内の要素はループしています。 ループ パスは、ソース スキーマのループ要素と宛先スキーマのループ要素の間にリンクを描画するときに発生します。
ループ パスを作成すると、BizTalk マッパーによってループ レコードが自動的に処理されます。
ループ パスは、送信元スキーマのループ レコードのフィールドを、送信先スキーマのループ レコードのフィールドにリンクさせることによって構成できます。 次の図に、食品調査レコードのみをマスター住所リストにコピーするマップを示します。
ループ パス マップ
複数のループ レコードに含まれるフィールドと、単一のループ レコードに含まれるフィールドとをリンクさせた場合、マップ内に複数のループ パスが形成されます。 次の図は、2 つの異なるアンケートから収集された住所を 1 つのマスター アドレス一覧に結合する試みを示しています。
複数のループ パスが含まれたマップ (正しくない)
このマップでは、予想どおりの結果にはなりません。 コンパイル時にマッパーにより複数のループ パスが検出されると、警告が生成され、既定では最初のループ パスが選択されます。 2 つの異なるアドレスを 1 つのマスター アドレス一覧に結合するには、次のマップに示すように Looping Functoid を使用します。
ループ Functoid マップ (正しい)
次 の シナリオでは、ループ Functoid を複数のループ パスの代わりに使用する必要があります。
複数のループ パス シナリオで、マッパーによって必要な出力が生成されない場合。
入力インスタンス メッセージ内の複数の繰り返し構造を、出力インスタンス メッセージ内の単一の繰り返し構造に結合する場合。
単一のレコードを複数のレコードにマッピングすることにより、フラット スキーマを階層構造のスキーマに変換する場合。 これは、フラット スキーマを Microsoft Commerce Server カタログに変換する場合の一般的な操作です。