7.10. コレクションと非コレクション間のマッピング


データマッパーの Source および Target パネルには以下があります。

  • Collection icon はコレクションを示します。コレクションにプリミティブタイプが含まれる場合は、コレクションをマップ元またはマップ先として直接マッピングできます。コレクションに 2 つ以上の異なるタイプが含まれる場合、データマッパーはコレクションの子フィールドを表示し、コレクションのフィールドをマップ元またはマップ先としてマッピングできます。
  • Folder icon は、コンプレックスタイプの拡張可能なコンテナーを示します。コンプレックスタイプには、異なるタイプの複数のフィールドが含まれます。コンプレックスタイプのフィールドは、アレイなどのコレクションのタイプにすることができます。コンプレックスタイプのコンテナー自体をマップすることはできません。コンプレックスタイプにあるフィールドのみをマップできます。

(COMPLEX)STRINGINTEGER などのデータタイプの表示を切り替えるには、 Show/hide types icon をクリックします。

コレクションから非コレクション (多対 1) へのマッピング

コレクションフィールドから非コレクションフィールドにマップする場合、多対 1 のマッピングがデータマッパーによって認識されます。デフォルトの動作では、データマッパーによって Concatenate 変換がソースコレクションまたはソースコレクションフィールドに適用されます。デフォルトの区切り文字は空白文字です。たとえば、以下のソースコレクションについて考えてみましょう。

  • 最初の要素では、city フィールドの値は Boston です。
  • 2 つ目の要素では、city フィールドの値は Paris です。
  • 3 つ目の要素では、city フィールドの値は Tokyo です。

実行中、ターゲットフィールドに以下が入力されます。

Boston Paris Tokyo

別の変換を適用すると、このデフォルトの動作を変更できます。たとえば、選択する要素からのみマップするには、Item At 変換をソースに適用し、インデックスを指定します。ソースコレクションの最初の要素にある値をマップするには、インデックスに 0 を指定します。

マップしないフィールドがソースコレクションに含まれている場合、これらのフィールドはフローにある後続のステップでも使用できます。

非コレクションからコレクション (1 対多) へのマッピング

非コレクションソースフィールドからターゲットコレクションやコレクション要素のターゲットフィールドにマップする場合、1 対多のマッピングがデータマッパーによって認識されます。デフォルトの動作では、空白を区切り文字として使用し、ソース値を複数の値に分割して Split 変換がデータマッパーによって適用されます。実行中、それぞれの分割値がターゲットコレクションの独自の要素に挿入されます。たとえば、ソースフィールドが 4 つの値に分割される場合、ターゲットコレクションには 4 つの要素が存在します。

本リリースでは、Split 変換のみを 1 対多マッピングに適用できます。

たとえば、以下が含まれるコレクションでない cities ソースフィールドについて考えてみましょう。

Boston Paris Tokyo

このソースフィールドをターゲットコレクションまたはコレクションのターゲットフィールドにマップできます。実行中、cities フィールドの値は区切り文字 (空白文字) で分割されます。結果として、3 つの要素が含まれる 1 つのコレクションが作成されます。最初の要素では、city フィールドの値は Boston です。2 つ目の要素では、city フィールドの値は Paris です。3 つ目の要素では、city フィールドの値は Tokyo です。

Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.