Quip終了に伴うデータエクスポートでお困りの方へ

フローの中で選択リストの値を使用する方法

入力値を制限できる選択リストはSalesforceの便利な機能の1つですが、フローの中で使用する際はPicklistValueInfoというオブジェクトから取得する必要があります。

本記事では、選択リストの情報がどのように格納されているか、フローの中でどのように使用するかご紹介します。

目次

フローの中で選択リスト項目を変数に割り当てるとどうなるのか?

フローの中で「割り当て」要素で、選択リスト型の項目を変数値に設定すると、どうなるかご存じですか?

結論、該当項目で選択したリストの値ではなく、選択したリストのAPIが変数に設定されます。

以下の場合、選択リストの値ではなくAPIが割当てられる

そのため、レコードの選択リスト項目で指定した値をフローの中で使う場合は、選択リスト値の情報が格納されているPicklistValueInfoを活用する必要があります。

PicklistValueInfoとは

次にPicklistValueInfoについてご説明します。

PicklistValueInfoは、直訳すると「選択リスト値情報」ですね。その名の通り、Salesforce内で選択リストの情報を格納しているオブジェクトです。

例えば、取引先オブジェクトに「業界」という選択リスト型の項目があり、そのリスト値の1つに「IT」という値があるとします。この場合、「IT」という1つの選択リスト値に対して1つのレコードが存在します。

そのためフローの中で選択リストの値を取得する際は、どのオブジェクトのどの項目のどの値なのか指定する必要があります。

続いてPicklistValueInfoのレコードを取得するために必要なデータを2つご紹介します。

  1. エンティティパーティクル
    エンティティパーティクルは項目の定義に関するメタデータを格納しているオブジェクトです。
    1つの項目につき1レコードが保存されているので、エンティティパーティクルから全オブジェクトにおける項目特有のID値を取得できます。フローでは、PicklistValueInfoのレコードを絞り込むために使います。
  2. エンティティ定義
    エンティティ定義はオブジェクトなどの定義に関するメタデータが格納されているオブジェクトです。
    1つのオブジェクトに対し、1レコードが保存されています。エンティティ定義からオブジェクト特有のID値を取得することで、エンティティパーティクルのレコードをオブジェクトごとに絞り込むことができます。

実際にフローを作ってみた

ここまで記載した内容を踏まえてフローを作りました。

取引先オブジェクトの選択リスト型の項目Aで選択した値を、他の項目に割り当てます。

(通常は数式項目の方が適していますが、今回はフローで実装します。)

全体の流れは以下のようになります。(検索条件が複数ある場合はすべてANDです)

  1. レコードで選択した選択リスト型項目Aの値を変数Pに設定(選択リスト値のAPIが選択リストに格納される)
  2. エンティティ定義から、取引先オブジェクトを示すレコードを取得
    1. 検索条件①:QualifiedApiName = “取引先オブジェクトのAPI”
  3. エンティティパーティクルから、項目Aを示すレコードを取得
    1. 検索条件①:QualifiedApiName = “項目AのAPI”
    2.  検索条件②:EntityDefinitionId = Get.エンティティ定義.DurableId
  4. PicklistValueInfoから、項目Aで選択した選択リスト値を取得
    1. 検索条件①:EntityParticleId = Get.エンティティパーティクル..DurableId
    2. 検索条件②:Value = “変数P”
  5. テキスト項目Bに“Get.PicklistValueInfo.Label”を割り当てる

 

以下が実際に作成した画面です。

最後に

いかがだったでしょうか。本記事では、選択リストの値をフローで使用する方法をご紹介しました。

Salesforceの開発は、選択リストのようにユーザーには見えない裏側のデータ構造への理解が必要な場合があります。

Salesforceの開発で悩んだときは、インターネットで他の方が既に質問していることが多いので、どんどん検索するようにしましょう。

本記事が、Salesforceの開発業務をしている方々の参考になれば幸いです。

サービス・ソリューションに関するお問い合わせ

Salesforce・AWSなど、ご支援に関してご不明な点やご相談はこちらからお問い合わせください。

貴社のビジネス課題を発見し、解決にむけてコンサルタントがご提案いたします。

この記事を書いた人

Salesforce認定コンサルタントのアバター Salesforce認定コンサルタント 認定Service Cloudコンサルタント/認定Sales Cloudコンサルタント

SaaS・SFA/CRMやMAツールの黎明期から業界の変遷を見つめてきたSalesforce活用のプロフェッショナル。

これまでに数多くの企業でシステム導入・定着化を成功させ、現場の業務改善から売上拡大まで伴走支援してきた実績を持つ。

本ブログでは、豊富な実務経験に基づく「現場で本当に役立つSalesforce活用ノウハウ」や最新トレンドを分かりやすく発信中。

<保有資格>
認定Service Cloudコンサルタント
認定Sales Cloudコンサルタント

目次