7.6. 複数のソースフィールドを 1 つのターゲットフィールドに組み合わせる
データマッパーステップでは、複数のソースフィールドを 1 つの複合ターゲットフィールドに組み合わせることができます。たとえば、FirstName
および LastName
フィールドを CustomerName
にマップできます。
前提条件
ターゲットフィールドでは、この複合フィールドの各パーツのコンテンツタイプ、コンテンツの各パーツの順番およびインデックス、および空白やコンマなどのパーツの区切り文字を知っている必要があります。フィールドを組み合わせまたは分割する場合の不足または不必要なデータの例 を参照してください。
手順
- Target パネルで、複数のソースフィールドをマップするフィールドをクリックし、 をクリックします。Mapping Details パネルが表示されます。
Mapping Details パネルの Source ドロップダウンリストから、マップ先となる 1 つ以上のデータフィールドを選択します。
作業が完了したら、各ソースフィールドからターゲットフィールドへの線が表示されるはずです。
Mapping Details パネルの Sources の上に、デフォルトの多重変換である Concatenate が表示されます。これは、マッピングの実行により、Concatenate 変換が指定のソースフィールドの値に適用され、連結された値を指定のターゲットフィールドにマップすることを意味します。
注記複数のソース値に適用できるその他の変換に関する情報は、以下を参照してください。
Mapping Details パネルで、以下のようにマッピングを設定します。
- Sources の Delimiter フィールドで、異なるソースフィールドからのコンテンツの間に挿入される文字を指定または選択します。デフォルトは空白文字です。
- 必要であれば、ソースフィールドエントリーごとに をクリックすると、ソースフィールドがターゲットフィールドにマップされる前に変換をソースフィールド値に適用することができます。
Sources で、選択したソースフィールドのエントリーの順番を確認します。エントリーの順番は、複合ターゲットフィールドの対応するコンテンツと同じである必要があります。
エントリーの順番が正しくない場合は、フィールドエントリーのインデックス番号を変更し、同じ順番になるようにします。
ソースフィールドを複合ターゲットフィールドの各パーツにマップした場合は、次のステップを省略します。
ソースフィールドエントリーのインデックスが、ターゲットフィールドの対応データと同じでない場合、インデックスが同じになるように編集します。各ソースフィールドエントリーのインデックスは、ターゲットフィールドの対応データと同じである必要があります。データマッパーは、不足しているデータを示すために、必要に応じてパディングフィールドを自動的に追加します。
誤って余分なパディングフィールドを作成した場合は、削除する余分なパディングフィールドごとに、 をクリックします。
- オプションで、Targets で をクリックし、ソースまたはターゲットデータの変換 で説明されているようにコンテンツをターゲット フィールドにマップし、変換を適用します。
必要に応じて、データマッピングの結果をプレビューします。
- をクリックし、現在選択されているマッピングの各ソースフィールドにテキスト入力フィールドを表示し、現在選択されているマッピングのターゲットフィールドに読み取り専用結果フィールドを表示します。
ソースデータ入力フィールドに、サンプル値を入力します。
ソースフィールドの順序を変更したり、マッピングに変換を追加すると、ターゲットフィールドの結果フィールドにこれが反映されます。データマッパーがエラーを検出すると、Mapping Details パネルの上部に情報メッセージが表示されます。
を再度クリックして、プレビューフィールドを非表示にします。
プレビューフィールドを再表示すると、入力したデータはデータマッパーが終了するまでそのまま存在します。
マッピングが適切に定義されていることを確認するには、 をクリックし、このステップで定義されたマッピングを表示 (表形式) します。複数のソースフィールドの値を 1 つのターゲットフィールドに組み合わせるマッピングは次のようになります。
このビューでは、マッピングの結果をプレビューすることもできます。 をクリックし、前のステップの説明どおりにテキストを入力します。プレビューフィールドは選択したマッピングのみに表示されます。表の別のマッピングをクリックして、そのプレビューフィールドを表示します。
その他のリソース
パディングフィールドの追加例:1 つのソースフィールドを複数のターゲットフィールドに分割
この例は 1 対多のマッピング例ではありませんが、原理は同じです。