Skip to main content

List Action を試す

学習の目的

この単元を完了すると、次のことができるようになります。

  • List Action を使用してデータをマージする方法を説明する。
  • マージリストを並べるための List Action を構成する。
  • 高度なマージ機能の使用方法を説明する。

はじめに

ClearLight は Robert に新しい要件を送信しました。マーケティングチームは、同じ AccountId を持つ 2 つの異なる顧客リードのリストをカスタマーケアセンターから受け取っています。チームはこれらのリストを、値が特定の順序になった 1 つのリストにマージする必要があります。

席に座って同僚と List Action について話し合う Robert。

Robert はこのソリューションをぜひ作成したいと考えていますが、まず既存の製品で試してみる必要があります。空き時間枠の例を再度使用し、今回はリストマージ要件に取り組みます。  

Tom Johnson が担当のかかりつけ医で、5 つの予約時間枠が空いています。 

医療サービス提供者とそれぞれの空き時間枠

Robert は Integration Procedure で使用できる Action を調べ、List Action を使用して実験できることを確認しました。List Action の詳細を見ながら、Robert がうまく顧客の要件を実現できることを確認しましょう。

対応する情報のフロー図

Robert にはまた疑問が湧いています。「List Action とは何か? どう構成するのか?」

List Action

List Action は指定されたリスト項目 JSON ノードの値をマッチングして、複数のリストをマージします。プロジェクト要件に応じて、基本的なマージと高度なマージのいずれかを使用できます。 

  • 基本的なマージでは、ノード名を正確にマッチングします。
  • 高度なマージでは、受け取るリストにある異なる名前のノードや、異なるレベルのノードをマッチングします。

名前やレベルが異なるノードをマッチングするには、[Advanced Merge (高度なマージ)] をクリックします。 

[List Key (リストキー)] と [Matching Path (マッチングパス)] を使用する [Merge Map (マージマップ)]

ノードをマッチングするための設定を次のように指定します。

  1. List Key (リストキー): マッチングするデータが含まれる JSON リストノードの名前を入力します。
  2. Matching Path (マッチングパス): マッチングするデータへのパスを入力します。
  3. Matching Group (マッチンググループ): マッチングするすべての値に同じ番号を指定します。

List Action のプロパティを設定する

この単元で後ほど List Action の構成に使用する主要なプロパティを見てみましょう。 

List Action のプロパティ

List Action はリスト項目 JSON ノードの値をマッチングして、複数のリストをマージします。List Actionを使用してリストの並び替え、絞り込み、値の追加もできます。[List Merge (リストマージ)] セクションの構成オプションを確認しましょう。

プロパティ 説明

Merge Lists Order (リストのマージ順序) (1)

リストがマージされる順序。リストに以前のリストで入力されたキーの値が含まれる場合、後のエントリで以前のエントリが上書きされます。

Advanced Merge (高度なマージ) (2)

受け取るリスト内の名前やレベルが異なるノードをマッチングします。

Merge Fields (マージ項目) (3)

エントリをマージするためにマッチする必要がある JSON ノードの名前。 

JSON 構造の最上位より下にあるノードを指定するには、コロン区切りのパスを使用します。 

デフォルトでは、両方のリストのノードは同じ名前で同じレベルにあると想定されています。 

マージ項目を指定しないと、リストは 1 つのリストにマージされますが、キーがマッチしていてもノードはマージされません。 

NULL をマージ時の有効なマッチング値にする (4)

マージ項目が null の場合、マッチした項目として扱うかどうかを指定します。

Has Primary (主リストあり) (5)

アウトプット内のリスト要素を指定します。主リストの要素とマッチしない他のリストの要素は無視されます。 

List Action を構成する

Robert は意欲満々でプロジェクトを先に進めようとしています。Robert が正しい方向に進めるように、List Action を使用する Integration Procedure の例を見ていきましょう。

List Action を使用する Integration Procedure の構造

Robert が強固な Integration Procedure を作成するために必要なビルディングブロックは何でしょうか? 医療サービス提供者に関連するデータを取得するための HTTP Action (1) と空き時間枠データを取得するためにもう 1 つ他の HTTP Action (2) が必要です。さらに、複数のリストをマージするための List Action (3) と JSON データを切り取るための Response Action (4) が必要です。 

医療サービス提供者データを取得するための HTTP Action

最初の HTTP Action (1) は [HTTP Path (HTTP パス)] から医療サービス提供者に関するデータを取得します。目的の URL を [HTTP Path (HTTP パス)] (2) に入力し、[HTTP Method (HTTP メソッド)] (3) に「GET」を設定します。 

空き時間枠データを取得するための HTTP Action

空き時間枠データを取得する次の HTTP Action (1) では、[HTTP Path (HTTP パス)] (2) に外部システムの URL、[HTTP Method (HTTP メソッド)] (3) に目的のアクションを入力します。

次は List Action の詳細を構成します。

データをマージするための List Action

List Action はノード値をマッチングして複数のリストをマージするのに適しています。[List Action (リストアクション)] (1) を [Structure (構造)] パネルにドラッグします。[Merge Lists Order (リストのマージ順序)] (2) を構成します。医療サービス提供者の値を「HTTPActionGetCareProviders:careProviders」に設定します。各医療サービス提供者の空き時間枠リストを作成するには、値「HTTPActionGetTimeSlotsArray:slots」を追加します。[Merge Fields (マージ項目)] (3) に JSON ノードの名前を入力します。ノードの名前はマージするエントリとマッチする必要があります。

データを絞り込むための Response Action

最後に Response Action (1) を [Structure (構造)] パネルにドラッグします。Response Action の [Response Format (レスポンスフォーマット)] 項目 (2) に目的のフォーマットを入力します。この場合、目的のフォーマットは「JSON」です。次に、構成した List Action をプレビューし、[Response (レスポンス)] セクションで結果を確認します。

レスポンスが表示されている [Preview (プレビュー)] タブ

[Input Parameters (インプットパラメーター)] (1) ペインで、[Execute (実行)] (2) をクリックします。[Response (レスポンス)] ペイン (3) にリストフォーマットで並んだデータと医療サービス提供者 ID が表示されます。 

これで Robert は自信を持って List Action を使用してリストをマージできます。次は、Integration Procedure の高度な機能について詳細を学習します。 

リソース

無料で学習を続けましょう!
続けるにはアカウントにサインアップしてください。
サインアップすると次のような機能が利用できるようになります。
  • 各自のキャリア目標に合わせてパーソナライズされたおすすめが表示される
  • ハンズオン Challenge やテストでスキルを練習できる
  • 進捗状況を追跡して上司と共有できる
  • メンターやキャリアチャンスと繋がることができる