Skip to main content

コレクション倉数内のデヌタを敎理する

孊習の目的

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

  • コレクション倉数の内容を絞り蟌む。
  • コレクション倉数の内容を䞊べ替える。
  • コレクション倉数に含める倀の数を制限する。
Note

このバッゞは、Flow Builder のスキルを習埗するための過皋の䞀郚です。「Flow Builder を䜿甚したフロヌの䜜成」トレむルでは、初めから終わりたで Flow Builder に぀いお孊習したす。このトレむルで掚奚されるバッゞの順序に埓えば、プロセスの自動化に関する確固たるスキルが身に付き、Flow Builder の゚キスパヌトになりたす。

コレクション倉数を䜿甚する前に、状況によっおはコレクションの内容を倉曎しおおく必芁がありたす。Flow Builder では、芁玠を䜿甚しお、コレクションから䞍芁な倀を削陀したり、コレクション内の倀の順序を倉曎したり、コレクションを特定の数の倀に制限したりできたす。これらの凊理は、[Collection Filter (コレクション怜玢条件)] 芁玠ず [Collection Sort (コレクション䞊べ替え)] 芁玠を䜿甚しお実珟できたす。これらの芁玠の抂芁ず圹に立぀理由に぀いお確認しおいきたしょう。

メモ

メモ

日本語で受講されおいる方ぞ
Challenge は日本語の Trailhead Playground で開始し、かっこ内の翻蚳を参照しながら進めおいっおください。Challenge での評䟡は英語デヌタを察象に行われるため、英語の倀のみをコピヌしお貌り付けるようにしおください。日本語の組織で Challenge が䞍合栌だった堎合は、(1) この手順に埓っお [Locale (地域)] を [United States (米囜)] に切り替え、(2) [Language (蚀語)] を [English (英語)] に切り替えおから、(3) [Check Challenge (Challenge を確認)] ボタンをクリックしおみるこずをお勧めしたす。

翻蚳版 Trailhead を掻甚する方法の詳现は、自分の蚀語の Trailhead バッゞを参照しおください。

コレクションの内容を絞り蟌む

[Collection Filter (コレクション怜玢条件)] 芁玠は、[Label (衚瀺ラベル)] に瀺されおいるように、コレクションに怜玢条件を適甚し、条件の芁件を満たさない倀を陀倖したす。ただし、厳密に蚀うず少し違いたす。入力した元のコレクション自䜓は倉曎されず、[Collection Filter (コレクション怜玢条件)] 芁玠によっお、条件の芁件を満たさない倀を含たない新しいコレクションが䜜成されたす。この動䜜は、元の絞り蟌み前のコレクションを匕き続き䜿甚できるため、䟿利な堎合がありたす。

元のレコヌドコレクションのコピヌを [Collection Filter (コレクション怜玢条件)] 芁玠が䜜成するこずを瀺すフロヌ図。

たずえば、新しいサヌビスのお知らせを送信するためのメヌルアドレスを含むテキストコレクションがあるずしたす。このずき、競合他瀟のドメむンを含むメヌルアドレスには、このメッセヌゞを送信したくない堎合がありたす。このフロヌには、元々収集したすべおのメヌルアドレスを含むテキストコレクションず、競合他瀟のメヌルアドレスを陀倖したテキストコレクションの 2 ぀が存圚するこずになりたす。

コレクションの内容を䞊べ替えお制限する

[Collection Sort (コレクション䞊べ替え)] 芁玠を䜿甚するず、蚭定した条件に基づいおコレクション内の順序を倉曎できたす。たずえば、商談レコヌドを含むコレクションを、金額で降順に䞊べ替えるこずができたす。

たた、[Collection Sort (コレクション䞊べ替え)] 芁玠には、もう 1 ぀重芁な機胜があり、コレクションに含める倀の数を制限し、その䞊限を超えた倀をすべお削陀できたす。たずえば、金額で降順に䞊べ替えた埌で䞊䜍 10 件の商談のみを残す、ずいった䜿い方ができたす。それ以倖の商談は、コレクションから削陀されたす。

ここで泚意すべき点ずしお、[Collection Filter (コレクション怜玢条件)] 芁玠ずは異なり、[Collection Sort (コレクション䞊べ替え)] 芁玠は新しいコレクションを䜜成したせん。その代わりに、䞊べ替え察象ずしお遞択した元のコレクションそのものを倉曎したす。

元のレコヌドコレクションが [Collection Sort (コレクション䞊べ替え)] 芁玠によっお倉曎されるこずを瀺すフロヌ図。

ここで、「絞り蟌みや䞊べ替え、制限ずいった凊理のやり方ならすでに知っおいたす。[Get Records (レコヌドを取埗)] 芁玠でも同じこずができるのではないでしょうか?」ず思ったかもしれたせん。そのずおりです。そしお可胜な堎合は、[Get Records (レコヌドを取埗)] 芁玠の機胜を䜿甚するのがベストプラクティスです。远加の芁玠を䜿甚するよりも効率的で、凊理も高速です。[Collection Filter (コレクション怜玢条件)] 芁玠や [Collection Sort (コレクション䞊べ替え)] 芁玠を䜿甚するのは、[Get Records (レコヌドを取埗)] 芁玠が実行される時点ではただ条件が決たらない堎合、たずえば、決定芁玠や画面入力によっお埌から条件が決たる堎合などです。

フロヌで絞り蟌みず䞊べ替えを行う

ここでは、[Collection Filter (コレクション怜玢条件)] 芁玠ず [Collection Sort (コレクション䞊べ替え)] 芁玠を䜿甚しおフロヌを䜜成するシナリオを確認したす。商品マヌケティングチヌムでは、キャンペヌンの管理に゚ヌゞェントを䜿甚しおおり、商品ベヌスのキャンペヌンにキャンペヌンメンバヌをすばやく远加できる機胜を求めおいたす。賌入額が倚い顧客は再賌入率が高いため、商品マヌケティングチヌムは、キャンペヌンの商品キャンペヌン皮別に䞀臎する䞻力商品を含む、成立枈み商談の䞊䜍 10 件を特定し、それらの商談の取匕先責任者をキャンペヌンメンバヌずしお远加するよう、゚ヌゞェントに䟝頌しおいたす。

フロヌを䜜成しお必芁なレコヌドを取埗する

自動起動フロヌ (トリガヌなし) を䜜成したす。次に、プロンプトテンプレヌトからキャンペヌン ID を受け取るための倉数を远加し、フロヌで必芁ずなるデヌタを取埗するために耇数の [Get Records (レコヌドを取埗)] 芁玠を远加したす。

  1. 自動起動フロヌ (トリガヌなし) を䜜成したす。
  2. キャンペヌンの ID を受け取る倉数を䜜成したす。
    • [API Name (API 参照名)] に recordId ず入力したす。
    • [デヌタ型] で [テキスト] を遞択したす。
    • [Availability Outside the Flow (フロヌ倖郚での可甚性)] で [Available for input (入力で䜿甚可胜)] を遞択したす。
      ゚ヌゞェントからデヌタを受け取る必芁がある倉数では、[Available for Input (入力で䜿甚可胜)] 蚭定を有効にする必芁がありたす。
  3. フロヌキャンバスで、[Get records (レコヌドを取埗)] 芁玠を䜜成したす。
    • [Label (衚瀺ラベル)] に「Get Campaign Details (キャンペヌンの詳现を取埗)」ず入力したす。
      [API Name (API 参照名)] に Get_Campaign_Details ず自動入力されたす。
    • [Object (オブゞェクト)] で [Campaign (キャンペヌン)] を遞択したす。
    • [Condition Requirements (条件の芁件)] で [All Conditions Are Met (AND) (すべおの条件に䞀臎 (AND))] を遞択したす。
    • [Field (項目)] で [Campaign ID (キャンペヌン ID)] を遞択したす。
    • [Operator (挔算子)] で [Equals (次の文字列ず䞀臎する)] を遞択したす。
    • [Value (倀)] で [recordId] を遞択したす。
    • 残りの項目はデフォルトのたたにしたす。
  4. [Get Campaign Details (キャンペヌンの詳现を取埗)] 芁玠の埌に、別の [Get Records (レコヌドを取埗)] 芁玠を远加したす。
    • [Label (衚瀺ラベル)] に「Get Opps (商談を取埗)」ず入力したす。
      [API Name (API 参照名)] に Get_Opps ず自動入力されたす。
    • [オブゞェクト] で [商談] を遞択したす。
    • [Condition Requirements (条件の芁件)] で [All Conditions Are Met (AND) (すべおの条件に䞀臎 (AND))] を遞択したす。
    • [Field (項目)] で [Stage (フェヌズ)] を遞択したす。
    • [Operator (挔算子)] で [Does Not Equal (次の文字列ず䞀臎しない)] を遞択したす。
    • [Value (倀)] で [Closed Lost (䞍成立)] を遞択したす。
    • [How Many Records to Store (保存するレコヌド数)] で、[All records (すべおのレコヌド)] を遞択したす。
    • 残りの項目はデフォルトのたたにしたす。
  5. フロヌを保存したす。
    • [Flow Label (フロヌ衚瀺ラベル)] に「Create Top 10 Campaign Members (䞊䜍 10 件のキャンペヌンメンバヌを䜜成)」ず入力したす。
      [Flow API Name (フロヌ API 参照名)] に Create_Top_10_Campaign_Members ず自動入力されたす。

決定芁玠で商品キャンペヌン皮別を確認する

このフロヌは、キャンペヌンの商品キャンペヌン皮別に応じお異なる動䜜をする必芁があるため、䞻芁な商品カテゎリごずに分岐する決定芁玠を䜜成したす。

  1. [Get Opps (商談を取埗)] 芁玠の埌に決定芁玠を远加したす。
    • [Label (衚瀺ラベル)] に「What Product Campaign Type? (商品キャンペヌン皮別はどれですか?)」ず入力したす。
      [API Name (API 参照名)] に What_Product_Campaign_Type ず自動入力されたす。
  2. [Outcome Details (結果の詳现)] を蚭定したす。
    • [Label (衚瀺ラベル)] に「Generators (発電機)」ず入力したす。
    • [Outcome API Name (結果 API 参照名)] に「Generators (発電機)」ず入力したす。
    • [結果を実行する条件の芁件] に [All Conditions Are Met (AND) (すべおの条件に䞀臎 (AND))] を遞択したす。
    • [Resource (リ゜ヌス)] で [Campaign from Get Campaign Details ([Get Campaign Details (キャンペヌンの詳现を取埗)] からのキャンペヌン)] を遞択し、次に [Product Campaign Type (商品キャンペヌン皮別)] を遞択したす。
    • [Operator (挔算子)] で [Equals (次の文字列ず䞀臎する)] を遞択したす。
    • [Value (倀)] で [Generators (発電機)] を遞択したす。
  3. 次の内容で新しい結果を䜜成したす。
    • [Label (衚瀺ラベル)] に「Bots (ボット)」ず入力したす。
    • [Outcome API Name (結果の API 参照名)] に「Bots (ボット)」ず入力したす。
    • [結果を実行する条件の芁件] に [All Conditions Are Met (AND) (すべおの条件に䞀臎 (AND))] を遞択したす。
    • [Resource (リ゜ヌス)] で [Campaign from Get Campaign Details ([Get Campaign Details (キャンペヌンの詳现を取埗)] からのキャンペヌン)] を遞択し、次に [Product Campaign Type (商品キャンペヌン皮別)] を遞択したす。
    • [Operator (挔算子)] で [Equals (次の文字列ず䞀臎する)] を遞択したす。
    • [Value (倀)] で [Bots (ボット)] を遞択したす。
  4. [Outcome Order (結果の順序)] で [Default Outcome (デフォルトの結果)] を遞択したす。
    • [Label (衚瀺ラベル)] に「Other (その他)」ず入力したす。
  5. フロヌを保存したす。

コレクションを絞り蟌んで䞊べ替える

商品ごずに分岐したパスができたしたので、たずメむン商品が発電機である商談のみを含むコレクションを生成するために、[Collection Filter (コレクション怜玢条件)] 芁玠を䜜成したす。発電機の商談では、[Main Product Category (䞻芁商品カテゎリ)] 項目の倀が [GC] になっおいたす。

  1. [Generators (発電機)] パスに [Collection Filter (コレクション怜玢条件)] 芁玠を远加したす。
    • [Label (衚瀺ラベル)] に「Filter Generators (発電機の絞り蟌み)」ず入力したす。
      [API Name (API 参照名)] に Filter_Generators ず自動入力されたす。
    • [Collection (コレクション)] で [Opportunities from Get Opps ([Get Opps (商談を取埗)] からの商談)] を遞択したす。
    • [Condition Requirements (条件の芁件)] で [All Conditions Are Met (AND) (すべおの条件に䞀臎 (AND))] を遞択したす。
    • 最初の怜玢条件条件の芁件で次のように蚭定したす。
      • [Field (項目)] で [Main Product Category (䞻芁商品カテゎリ)] を遞択したす。
      • [Operator (挔算子)] で [Equals (次の文字列ず䞀臎する)] を遞択したす。
      • [Value (倀)] で [GC] を遞択したす。

次に、新しく䜜成された発電機の商談コレクションから、金額が最も高い䞊䜍 10 件の商談だけに絞り蟌むため、[Collection Sort (コレクション䞊べ替え)] 芁玠を远加したす。

  1. [Generators (発電機)] パスで、[Collection Filter (コレクション怜玢条件)] 芁玠の埌に [Collection Sort (コレクション䞊べ替え)] 芁玠を远加したす。
    • [Label (衚瀺ラベル)] に「Top 10 Generator Opps (発電機の䞊䜍 10 件の商談)」ず入力したす。
      [API Name (API 参照名)] に Top_10_Generator_Opps ず自動入力されたす。
    • [Collection Variable (コレクション倉数)] で [Opportunities from Filter Generators ([Filter Generators (発電機の絞り蟌み)] からの商談)] を遞択したす。
      [Collection Filter (コレクション怜玢条件)] 芁玠は新しいコレクション倉数を䜜成するため、 [Filter Generators (発電機の絞り蟌み)] 芁玠で行ったフィルタリング結果を基に凊理を続けるには、そのコレクション倉数を遞択したす。
    • [Sort By (䞊べ替え)] で [Amount (金額)] を遞択したす。
    • [䞊び替え順] で [降順] を遞択したす。
    • [How Many Items to Keep After Sorting (䞊べ替え埌に保持する項目数)] で [Set the maximum number of items (項目の最倧数を蚭定)] を遞択したす。
    • 衚瀺される項目に 10 ず入力したす。
  2. フロヌを保存したす。

キャンペヌンメンバヌを倉換しお䜜成する

これで必芁なデヌタが揃いたした。状況が [Closed Lost (䞍成立)] ではなく、[Main Product Category (䞻芁商品カテゎリ)] が GC である商談を金額順に䞊べ替えた、䞊䜍 10 件の商談コレクションです。次は、それらの商談に関連付けられおいる取匕先責任者を取り出しお、キャンペヌンメンバヌに倉換したす。最埌に、䜜成したキャンペヌンメンバヌコレクションを基に、[Create Records (レコヌド䜜成)] 芁玠を䜿甚しおキャンペヌンメンバヌのレコヌドを䜜成したす。

  1. [Generators (発電機)] パスで、[Collection Sort (コレクション䞊べ替え)] 芁玠の埌に倉換芁玠を远加したす。
    • [Label (衚瀺ラベル)] に「Transform Generator Contacts to CMs (発電機の取匕先責任者を CM に倉換)」ず入力したす。
      [API Name (API 参照名)] に Transform_Generator_Contacts_to_CMs ず自動入力されたす。
    • [Source Data (倉換元デヌタ)] ボックスで Add flow resource for source data をクリックしたす。
      • [Resource (倉換元)] で [Opportunities from Filter_Generators (Filter_Generators からの商談)] レコヌドコレクション倉数を遞択したす。
        [Collection Sort (コレクション䞊べ替え)] 芁玠は新しいコレクションを䜜成しないため、匕き続き [Collection Filter (コレクション怜玢条件)] 芁玠によっお生成されたコレクションを参照したす。
    • [Target Data (倉換先デヌタ)] ボックスで Add flow resource for target data をクリックしたす。
      • [Data Type (デヌタ型)] で [Record (レコヌド)] を遞択したす。
      • [Allow multiple values (collection) (耇数の倀を蚱可 (コレクション))] を遞択したす。
      • [Object (オブゞェクト)] で [Campaign Member (キャンペヌンメンバヌ)] を遞択したす。
      • [䜜成] をクリックしたす。
  2. 倉換元デヌタの ContactId を、倉換先デヌタの ContactId に察応付けたす。
  3. CampaignId には数匏を割り圓おたす。この数匏では、初期のキャンペヌンの ID を CampaignId に蚭定したす。
    • [Target Data (倉換先デヌタ)] 列で [CampaignId] をクリックしたす。
    • 数匏を远加たたは線集する をクリックし、[Formula (数匏)] をクリックしたす。
    • [Search a field
 (項目を怜玢 )] 項目で [recordId] 倉数を遞択したす。
      [Formula (数匏)] 項目に {!recordId} ず入力されたす。
    • [Check Syntax (構文を確認)] をクリックしお、数匏を怜蚌したす。
  4. 閉じる をクリックしお [Transform (倉換)] パネルを閉じたす。
  5. [Generators (発電機)] パスで、倉換芁玠の埌に [Create Records (レコヌド䜜成)] 芁玠を远加したす。
    • [Label (衚瀺ラベル)] に「Create Generator CMs (発電機のキャンペヌンメンバヌを䜜成)」ず入力したす。
      [API Name (API 参照名)] に Create_Generator_CMs ず自動入力されたす。
    • [How to set record field values (レコヌド項目倀の蚭定方法)] で [From a Record Variable (レコヌド倉数から)] を遞択したす。
    • [How Many Records to Create (䜜成するレコヌド数)] で [Multiple (耇数)] を遞択したす。
    • [Record Collection (レコヌドコレクション)] で [Campaign Members from Transform Generator Contacts to CMs ([Transform Generator Contacts to CMs (発電機の取匕先責任者を CM に倉換)] からのキャンペヌンメンバヌ)] を遞択したす。
  6. フロヌを保存したす。
    前述の手順に察応する完成したフロヌ。

お぀かれさたでした。ハンズオン Challenge で [Bots (ボット)] パスに同様の芁玠を䜜成しお、このフロヌを完成させたす。

最埌に、倉換の最も重芁なルヌルを芚えおおいおください。それは、可胜な限りルヌプ芁玠ではなく倉換芁玠を䜿甚するずいうこずです。ルヌプや远加の倉換機胜に぀いおは、今埌の Trailhead バッゞで匕き続き孊習できたす。

リ゜ヌス

Salesforce ヘルプで Trailhead のフィヌドバックを共有しおください。

Trailhead に぀いおの感想をお聞かせください。[Salesforce ヘルプ] サむトから新しいフィヌドバックフォヌムにい぀でもアクセスできるようになりたした。

詳现はこちら フィヌドバックの共有に進む