コラム詳細

Salesforceのフローとは?作成方法やプロセスビルダーとの違いも

2023年09月01日

  • Salesforce
  • 設定・管理

はじめに

セラクCCCのSalesforce推進部のNです。Salesforceフローの活用で、レコードの取得や更新の自動化が可能なため、作業時間を節約できます。続けて実行することが決まっている業務や、定期的に繰り返し実行する業務を自動化することで効率化に役立つ、「Salesforceフロー」の基礎知識からフロー作成例までを解説します。
 

※営業の効率化についてご興味がある方は、こちらの「営業効率化×Salesforce】Salesforceを活用したデータドリブン営業」もご視聴ください。

 

Salesforceフローとは

Salesforceフロー
<Salesforceフロー>

 

Salesforceにおいて、独自のプロセス処理がノーコードで実現できる、フロービルダーやプロセスビルダーといった自動化ツールの総称です。中でもフロービルダーは、フローチャートの構造を用いてデータを収集し、そのデータを活用して処理を行います。Salesforceに標準搭載されている機能であり、うまく活用することで業務効率化に大きく寄与します。

 

Spring’23での変更点

Salesforceでは、年3回バージョンアップが行われています。以下で、Spring’23におけるフローの変更点を解説します。

 

フロービルダー
これまで、ルックアップコンポーネントを使用して参照項目の設定をしなければなりませんでしたが、フローの動的フォームの使用で、参照項目のドラッグ&ドロップで簡単にフロー画面に追加できるようになりました。また、フローキャンバスにおける要素説明の確認がより簡単になりました。

 

フローランタイム
フロー画面のテーブルから、複数のレコードを選択することが可能です。また、1フロー内の実行要素数上限2,000の制限が撤廃されました。

 

フロー管理
プロセスをフローに移行できるツールが提供されています。これまではワークフロールールだけでしたが、プロセスも対象となりました。

 

※ほかにも、Summer’23での変更点についても気になる方はこちらの資料「SUCCESS UPDATE 2023SUMMER6つのポイント」をご活用ください。

 

Salesforceのフロービルダー(Flow Builder)とプロセスビルダーの違いとは?

次に、Salesforceフローの中でもよく使用されている 、「プロセスビルダー」と「フロービルダー」という2つの自動化ツールの特徴について解説します。

 

プロセスビルダーの特徴

プロセスビルダーは、if-then(もしこうなったら、こうする)に基づいたビジネスプロセスを自動化するツールです。「レコードの作成または更新」「他のプロセスやフローからの呼び出し」「事前に設定したイベントが発火したとき」という、3種類の起動条件とアクションを組み合わせた簡単な操作で業務を自動化できます。

 

フロービルダーの特徴

フロービルダーは、レコードの更新や特定の日時などをトリガとした自動化のほかに、対話形式のウィザードを作成できるのが特徴のツールです。フロービルダーの起動条件は、プロセスビルダーの3種類に比べ、5種類と多くなっています。この起動条件と13種類の要素、6種類のコネクタを組み合わせることで、より多様なシチュエーションに対応できます。フロービルダーの起動条件に関しては、次の項で詳しく解説します。なお、「フロー」と言った場合は、フロービルダーで作成されたものを指します。

 

これからSalesforceの自動化機能を活用したいという方向けに、汎用性の高いフロービルダーの基礎知識と作成手順、フローの作成例について解説します。

 

Salesforceのフロービルダー(Flow Builder)の起動条件

Salesforceのフロービルダーを利用するためには、どのタイミングでフローを起動させるかという条件を設定しなければなりません。この起動条件を「フロー種別」と呼称します。5つのフロー種別の特徴をそれぞれ簡単にご紹介します。

 

画面フロー

ユーザがLightningページ、コミュニティ、クイックアクションなどの操作をトリガとしてフローを開始する場合に起動します。ユーザの入力にあわせて、動的に画面の出し分けが可能です。そのため、オンライン申請用のウィザードなど、ユーザの記入によって次の質問画面を変更したい場合などに使用されています。

 

レコードトリガフロー

レコードを作成、更新、または削除したときに起動します。リードの住所を変更時に、担当者を自動的に変更したい場合などに使用されています。

 

スケジュールトリガフロー

指定した時間および頻度で起動します。ただし、24時間あたりに処理できるレコードの数に上限があるため、この上限に達しないよう、レコード条件を設定する必要があります。これは、バッチ処理の実行時などに使用されています。

 

プラットフォームイベントトリガフロー

Salesforceと外部システムを連携させるため、事前に設定したプラットフォームイベントが発火したときに起動します。フロー外部のシステム(SalesforceもしくはAPIを経由した外部アプリ)と連携可能なため、外部の注文アプリから注文イベントを受け取り、担当者のToDoを自動作成するといった場合に使用されています。

 

自動起動フロー(トリガなし)

Apex(プログラミング言語)、プロセス(プロセスビルダーで作成されたもの)、REST API(Salesforceデータにアクセス可能なWebインターフェイス)など、フローの外部で起動条件を設定し、外部から呼び出された際にフローが自動起動します。

 

Salesforceのフロー作成に便利なリソース

フロー作成は、「レコードの取得」や「レコードの削除」、「フローの分岐」などの要素を用いてプロセスの処理を行います。その際に活用できるのがリソースです。リソースは、フローをより柔軟に構築するために欠かせません。ここでは、「変数」「テンプレート」「数式」といった、フロー作成に便利に活用できる代表的なリソースを解説します。

 

変数

変数は、数式および文字列などを一時的に保管するためのものであり、フロービルダーでも同じ目的で活用します。さらに、ひとつの値だけでなく複数の値を保管することが可能です。そのため、レコードの取得における保管用途として便利に利用できます。

 

一方、フロービルダーでは要素自体がレコードの取得結果をもつことが可能です。そのため、取得したレコード値を保存するために変数を使用する場合、「すべての項目を自動的に保存」といった選択をすることで、管理がより簡単にできます。

 

そういったことから、変数は保管に利用するよりも、計算結果の取得などに利用することが多いという特徴があります。

 

テンプレート

テンプレートは、リッチテキストおよびプレーンテキストを作れるリソースであり、レコード項目の差し込み機能も利用できます。具体的には、処理を行った内容をテンプレートに差し込んで、結果をChatterに投稿する、レコードの内容をテンプレートに差し込んで、メールの本文を組み立てて送信するなどの手法です。このテキストテンプレートの差し込み機能を活用することで、効率的に文章を作成できます。

 

数式

数式は、項目値を利用した計算式の作成や取得した項目のデータ形式の変更、さらにURLを作成したい場合などに利用できます。Salesforceで使用可能な数式は、一部を除きフローでも使用できるため、困りごとには数式が適用できるか検討してみましょう。

 

一方、フロービルダーにおける数式の記述方法は、さまざまなWebサイトにある数式のサンプルとは異なります。また、フロービルダーでは、空文字とnullは異なる値として表現されているのも特徴です。「空文字」は文字が設定されていないことを指しており、「null」はnullが設定されていることを指します。フロービルダーでは、はっきりと分けられた扱いがされているため、把握せずに使用すると、思うように動作しないことがあるので注意が必要です。

 

※数式についてもっと知りたいという方はこちらの資料「システム管理者必見!数式項目の留意点 よくある数式の活用例」もご活用ください。

 

Salesforceでフロービルダー(Flow Builder)でのフローの作成方法

それでは、画面フローを例に簡単な作成手順をご紹介します。

 

新規フローの作成
<新規フローの作成>

 

まず、フロービルダー内の[設定]からクイック検索で[フロー]と入力します。
[新規フロー]より新しいフローを作成します。

 

画面フローの選択
<画面フローの選択>

 

フロー種別の選択画面で、今回は[画面フロー]を選択します。
その後、作成開始方法を[自由形式]とします。

 

要素をコネクタでつなぐ
<要素をコネクタでつなぐ>

 

キャンパスが立ち上がりましたら、要素とコネクタをつなぎ合わせる作業に入ります。
まず、ツールボックスから要素をキャンパス内にドラッグし、コネクタで要素同士を接続します。
この際、開始要素を別の要素へ接続することを忘れないようにしましょう。
すべての要素とコネクタの挿入が完了したらフローを保存します。
フローの作成手順は以上となります。

 

Salesforceでフロービルダー(Flow Builder)でのフローの設定方法

それでは、実際にフロービルダーを使ってフローを設定してみましょう。今回は、ある指定の日にちや時間に対して、レコードを自動で一括更新するフローを作成します。フローの要件は、[取引先オブジェクト]の[解約日]を過ぎた該当するすべての[レコード]の[状況]を[解約]に更新する、になります。

 

1.フロー種別を選択する

まず、前述のとおり、フロービルダーより新規作成を選択します。そしてフローの種別で[スケジュールトリガフロー]を選択し、自由形式でフローを作成します。
次にキャンパス画面でスケジュールを選択します。毎朝レコードの更新を行いたい場合は、 [開始日]に本日の日付を入力し、更新させたい時間を[開始時刻]に記載します。そして頻度を[毎日]に設定します。
※1週間おきや1か月おきなどに更新をかけたい場合は、頻度を変更します。

 

2.更新日が昨日に当てはまるレコードを取得する

日付が昨日に当てはまるレコードを取得する変数設定
<日付が昨日に当てはまるレコードを取得する変数設定>

 

使用する変数の設定を行います。
今回は更新日が昨日に当てはまるレコードを取得するための変数設定となります。ツールボックス内の[マネージャー]より[新規リソース]を開きます。まず、昨日の日付をもった変数を設定します。[リソース種別]で[数式]を選択し、API参照名をYesterdayとします。[データ型]を日付とし、[数式]に[TODAY()-1]という昨日を示す数式を入力します。

 

3.一括更新のための変数を設定する

一括更新したいオブジェクトの設定
<一括更新したいオブジェクトの設定>

 

一括更新のための変数の設定を行います。
再び[新規リソース]を開きます、[リソース種別]を[変数]とし、API参照名をupdateAccount_Listとし、データ型を[レコード]とします。[オブジェクト]には[取引先]を入力しましょう。
これで変数の設定は完了となります。

 

4.レコード条件を設定する

レコード条件の設定
<レコード条件の設定>

 

再度要素とトリガの設定に戻ります。
まずは、更新に該当するレコードを取得します。ツールボックス、データ内にある[レコードを取得]を選択します。そして、取得するレコードのオブジェクト名である[取引先]を[オブジェクト]の箇所に入力します。次に、項目で更新の際に参照する値を入力します。今回は要件に沿って解約日(CancellationDate__c)をカスタム項目で作成して入力します。最後の[値]に先程作成した変数(Yesterday)を入力し、今回は一括更新を行うため、保存するレコード数を[すべてのレコード]とし、完了します。

 

5.複数更新のためのループを設定する

ループの設定
<ループの設定>

 

複数のレコードの更新を行うため、現在設定した要素とトリガのループを設定します。
ツールボックスから、[要素]内のロジック要素[ループ]を挿入します。ループの[コレクション変数]は先程設定した、ループを行う対象の要素の変数を入れ込みます。

 

6.レコードの割り当てを行う

レコードの割り当て
<レコードの割り当て>

 

レコードの割り当てを行います。
現在、ループ機能で複数のレコードを更新している状態となるため、それぞれのレコードの割当先を指定するためです。ツールボックスから[要素]内のロジック要素[割り当て]を挿入します。変数はループの値を入力します。
これで割り当ては完了です。

 

7.一括更新の変数を組み込む

一括更新のための変数の組み込み
<一括更新のための変数の組み込み>

 

一括更新のために設定した変数を、これまで設定した要素に組み込みます。
再度割り当てを挿入し、一括更新のために設定した変数に変更します。今回の値は先程作成した割り当ての変数を設定します(ループ変数)。
最後にレコードの一括更新を行うため、ツールボックスから[要素]内のデータ要素[レコードを更新]を挿入します。更新するレコードに一括更新のために設定した変数を入れます。
以上で設定は完了です。

 

Salesforceフローによって、あらゆる業務の自動化が可能となり、効率化につながります。その一方、活用により高い効果を得るには、Salesforceフローの基礎的な知識やスキルが必要です。Salesforceフローをより理解し、効果的に活用しましょう。

 

まとめ

フローを活用することで、レコードの更新だけでなく、メールの送信、Chatterへの投稿といったアクションの自動化も可能になります。フロービルダーはローコードであり、入門の敷居は低めです。しかし、拡張性が高く、作成済みのプロセスや他のフロー、Salesforceの機能拡張に使用されるApexというプログラミング言語などと組み合わせることも可能なため、多彩な業務の自動化が可能になります。

 

セラクCCCには、セールスフォース社認定のコンサルティングパートナーとして300名(23年5月時点)を超える経験豊富なコンサルタントが在籍しています。標準機能の活用などの基礎講習から、社内でSalesforceの活用を推進するインフルエンサーの育成まで、Salesforceフローに関するさまざまな支援が可能です。「フローを活用すれば業務を自動化・効率化できる気がしているけれど、具体的な使い方が分からない」「プログラミングの知識はないけれど、フローをさらに活用していきたいので、プロの力を借りたい」といった場合には、ぜひセラクCCCの無料相談からお問い合わせください。

Salesforceでお悩みなら、
まずはお気軽に
お問い合わせください

  • TOP
  • コラム一覧
  • Salesforceのフローとは?作成方法やプロセスビルダーとの違いも