DX攻略部がリニューアルしました!

【FlowBuilder基礎】Salesforceフローでコレクション変数の要素数を取得しよう!

こんにちは、DX攻略部のヘナトンです。

Salesforceフローでコレクション変数を使用していますか?

コレクション変数の中身の数をカウントしたいなぁと思っていませんか?

数をカウントするためだけにループ要素を使用していませんか?

コレクション変数としてリスト化された変数を使用することは多いと思います。

リストの中に要素がいくつあるのかを確認したいシーンに便利な要素数を取得する方法を事例を用いて解説していきます。

そもそもフローとは?という方はこちらの記事で概要解説していますのでご覧ください。

関連記事

こんにちは、DX攻略部のヘナトンです。 Salesforceの自動化ツールであるフローは、ビジネスプロセスを自動化するための強力なツールです。 Salesforceの自動化ツールとしてワークフロールールやプロセスビルダーもありま[…]

DX攻略部では、『Salesforce支援サービス』というサービスも提供しておりますので、こちら興味を持った方は、ぜひご相談ください。

Salesforce支援サービス

商談数を確認!(目標確認)

まずは、今回フローで実現したい「ビジネス上のゴール(目標)」を明確にしましょう。

目標確認の画面

今回は事例として取引先に紐づいた商談数を確認する画面フローを作成しますが、まずは目標確認します。

取引先レコード詳細ページに配置された画面フローコンポーネントに「AAA株式会社の商談数は3です。」と表示されていますね。

AAA株式会社と行われた商談の件数が「3」と取得に成功しています。

  1. 取引先情報の取得
  2. 取得した取引先に紐づいた商談レコードをリストで取得
  3. 取得した商談の数をカウントし数値型変数に格納
  4. 画面に数値型変数の表示

この1〜4の処理がそれぞれの取引先レコード詳細ページが開かれるたびに行われています。

昔のSalesforceを知っているベテランの管理者であれば、レコードの件数を数えるために「ループ要素」を配置し、コレクション内のレコードを1件ずつ取り出しながら、数値変数にプラス1を繰り返すという「カウンタ処理」を実装していたかもしれません。

しかし、2026年現在のFlow Builderにおいて、件数を数えるだけの目的でループを回すのは完全に時代遅れであり、非推奨の手法です。

なぜなら、ループ処理はフローのステップ数を無駄に消費し、Salesforceの「ガバナ制限(処理能力の上限制限)」に引っかかりやすくなる原因になるためです。

そういったことも把握しながら作業を進めていきましょう。

関連記事

こんにちは、DX攻略部のヘナトンです。 さっそく質問ですが商談商品をうまく理解できていますか? Salesforceを利用する上で、商談は分かる、商品も分かる、でも商談商品がよく分からずうまく使いこなせていないケースも多いのでは[…]

商談数を確認!(設定方法)

次に商談数の設定方法を紹介します。

画面フローの設定は?

取引先に紐づいた商談数を確認する画面フローの設定方法を解説します。

*当記事の本題となる要素数を取得する部分だけ詳しく解説いたします。

フロー前半で取得した商談レコードコレクション変数の要素数を格納する変数OppsNumを作成します。

データ型が「数値」であることと、複数の値を許可にチェックが入っていないことに注意してください。

割り当て要素を作成します。

左側に先ほど作成した数値型の変数を選択します。

演算子に「次の数と一致する」を選択します。

右側に要素数を取得したいコレクション変数を選択します。

これだけで数値型変数OppsNumにコレクション変数getOppsの要素数を格納することができました。

ちなみにApexで表現するとこのような感じになります。

List<Opportunity> getOpps = [SELECT Id FROM Opportunity WHERE AccountId =: input_record.id];

Integer OppsNum = getOpps.size();

/* OppsNumを使用した処理... */

つまりListクラス等のsizeメソッドをフローで実現できるのです。

簡単ですね。

あとはOppsNumを使用したい箇所に配置するだけです。

ちなみに今回のフローの全体像は以下のようになります。

関連記事

こんにちは、DX攻略部のヘナトンです。 Salesforceの標準機能の中で、高度な自動化プロセスをノーコードで実装できる Flow Builder(フロービルダー)という機能があります。 これは、オブジェクトのデータ更新や、画[…]

まとめ

コレクション変数の要素数を取得する方法の解説は以上となります。

割り当て1行でカウントできましたね。

今回は非常にシンプルな事例を紹介しましたが、コレクション変数をカウントする手法は様々なフローで活用できると思います。

ぜひ参考になればと思います。

このようにSalesforceフローはどんどん機能が強化されています。

Apexの方でしか開発できないとすぐ判断せず、フローで開発することも検討してみてはいかがでしょうか。

最後までお読みいただきありがとうございました。

DX攻略部のSalesforce支援サービスでは、初期導入から開発・カスタマイズ、運用、教育まで一気通貫で対応しています。

フロービルダーを含むノーコード開発はもちろん、Apex言語やAPIを活用したプログラム開発も対応可能です。

「まずは相談だけ」でも歓迎していますので、Salesforceの活用に課題を感じている方はぜひ詳細をご確認ください

DX攻略部へのお問い合わせはこちら