※Salesforceのプロセスビルダーは廃止される予定であり、Summer’23(2023年6月)のリリースにてプロセスビルダーの新規作成不可となっています。(本記事は2021年5月25日掲載)
Salesforceで自社のビジネスプロセスを自動化したいとお考えのシステム管理者の方は多いのではないでしょうか。
今回は、そんなプロセスビルダーについて、Flow Builderとの違いやプロセスの作成方法について解説します。
プロセスビルダーとは?
プロセスビルダーは、条件に基づくビジネスプロセスを簡単に自動化できるツールです。
Apexを使った複雑なプログラミングを行う必要がなく、画面上でフローを確認しながらプロセスを作成できるので、非常に便利なツールとなっています。
プロセスビルダーは、「プロセストリガ」「プロセス条件」「アクション」の3つの要素で構成されます。
プロセストリガ
トリガは、以下のようなプロセスを実行するタイミングを特定します。レコード変更をトリガにする場合、どのオブジェクトのどのような変更に対応すべきかを定義します。
- レコードを作成したときのみ
- レコードを作成または編集したとき
プロセス条件
条件は、関連付けたアクションを実行するかどうかを制御します。条件に一致する場合(TRUE)、アクションが実行され、レコードが条件に一致しない場合(FALSE)、そのアクションはスキップされ、プロセスの次の条件ノードに進みます。
条件では、以下のことができます。
- 絞り込み条件の設定
- カスタム数式の入力(数式はTRUEまたはFALSEに解決されなければなりません)
- 条件を無視し、関連付けられたアクションを常に実行
条件に関しては、1つのプロセスにいくつでも追加できます。
アクション
アクションは、ルール適用時もしくは特定の時間に実行されるようにスケジューリングできます。
条件に一致する場合(TRUE)、関連付けたアクションを即実行するか、スケジューリングした時間まで実行を待機させられます。
プロセスビルダーでは以下のような操作をアクションとして実行できます。
アクション | 説明 |
レコードの作成 | 手動で値を入力するか、関連レコードの値を使用してレコードを作成します。 |
プロセスの呼び出し | プロセスを別のプロセスから呼び出します。 |
Chatter投稿の作成 | ユーザ、Chatter グループ、またはプロセスを開始したレコードのフィードに投稿します。 |
クイックアクションの使用 | 組織でユーザまたは他のシステム管理者が作成したクイックアクションを使用して、レコードの作成、レコードの更新、活動の記録を行います。 |
Quipの操作 | 重要なイベントが発生したら文書、チャットルーム、およびフォルダを作成します。 |
フローの起動 | プロセスから自動起動フローを開始して、複雑なビジネスプロセスを自動化します。 |
メールの送信 | メールアラートを使用して、プロセスからメールを簡単に送信します。 |
カスタム通知の送信 | 重要なイベントが発生したときに、カスタマイズした通知を送信します。 |
アンケートへの招待の送信 | 特定のアンケートの質問へのリンク、またはアンケートを開始するためのリンクを含む招待メールを送信します。 |
レコードの承認申請 | プロセスを開始したレコードを承認申請します。 |
レコードの更新 | 値を手動で入力するか、関連レコードの値を使用して、プロセスを開始したレコードに関係する1つ以上のレコードを更新します。 |
Apexコードのコール | プロセスからApexをコールして、カスタマイズされた機能をプロセスに追加します。 |
参照:ビジネスプロセスの自動化「プロセスへのアクションの追加」
プロセスビルダーとFlow Builderの違い
プロセスビルダーに似たツールとして「Flow Builder」が存在します。両ツールとも「Salesforce フロー※」というフロー自動化を行う製品の中に含まれています。
※Salesforce Spring ’21 リリースより「Lightning フロー」の名称が「Salesforce フロー」に変更されました。
参照:Salesforce Spring ’21 リリースノート「Salesforce フロー」
ツール名の言葉尻だけを捉えると、単純にプロセスを作成する場合はプロセスビルダーを、フローを作成する場合はFlow Builderを使用すると言えます。
しかし、実際にはほとんどのシナリオにおいてFlow Builderのみを使用して具現化できることが多く、厳密には以下で説明するような開始時期によってプロセスビルダーと使い分けがされています。
以下のようなバックグラウンドのビジネスプロセスを自動的に開始する必要がある場合は、プロセスビルダーを使用します。
- レコードが変更されたとき
- 別のプロセスから呼び出されたとき
- プラットフォームイベントメッセージを受信したとき
一方で、Flow Builder は以下のような開始時期の場合に使用します。
- ユーザがボタンまたはリンクをクリックしたとき
- ユーザが Lightning ページ、Experience Cloud サイトページ、Visualforce ページ、またはカスタムタブにアクセスしたとき
- ユーザがユーティリティバーの項目にアクセスしたとき
- プロセスが開始したとき
- Apex がコールされたとき
参照:ビジネスプロセスの自動化「使用する自動化ツール」
システム管理者や開発者が自動化を構築する上で頭を悩ませるポイントは、どのツールを使って具現化するかということです。
まずはプロセスビルダーやFlow Builderを検討し、より複雑なプロセスやフローの場合は「Apex」という使い分けになるかと思われます。
プロセスビルダーでのプロセス作成方法
プロセスの作成方法について、順を追って見ていきましょう。
本記事では、オブジェクトのレコードが更新・作成された際に特定の項目を更新するプロセスを作成してみます。
【シナリオ例】
取引先が作成または更新された際、その取引先レコードの年間売上が¥50,000,000以上であれば、「優先度」の項目※に「高」を設定する
※あらかじめ優先度を示すカスタム項目を取引先オブジェクトに追加しておく必要があります。
プロセスを新規作成
[設定]から、[クイック検索]ボックスに「プロセスビルダー」と入力し、[プロセスビルダー]をクリックします。
画面右上の[新規]ボタンをクリックします。
表示された新規プロセスのポップアップ画面にて、[プロセス名]と[API参照名]の名前を付けます。ここではそれぞれ「sample process」「sample_process」と名前を付けます。
[説明]項目は必須ではありませんが、分かりやすくプロセスを管理するためにどのような処理を行っているか詳細を説明として記載しておくと良いでしょう。
そして、[プロセスを開始するタイミング]を設定します。ここでは選択リストから「レコードが変更されたとき」を選びます。
最後に[Save]ボタンをクリックします。
プロセスビルダー画面
プロセスを設定するための画面に移ります。
前述した通り、プロセスは以下の3つで構成されています。
①トリガ
②条件
③アクション(ルール適用時・スケジュール済み)
トリガを定義
まずは、トリガから定義するため[オブジェクトを追加]をクリックします。
画面右に詳細を設定するウィンドウが表示されるので、[オブジェクト]に「取引先」と入力してオプションのリストを絞り込み、取引先オブジェクトを選択します。
続いて[レコードを作成または編集したとき] を選択し、[保存]ボタンをクリックしてトリガの定義を終わらせます。
条件を定義
次に、条件を定義しましょう。本記事でのシナリオでは「年間売上」が¥50,000,000より多いことが条件とされます。
[条件を追加]をクリックします。
再び画面右に詳細を設定する画面が表示されるので、任意の[条件名]を付けます。
ここでは、「sampleCriteria」 という名前を付けます。
アクションの[条件を満たしている]はオンのままにします。
次に、取引先の年間売上が条件に成立するかどうかを判定します。
[項目]① で、[取引先]|[年間売上]を選択して、[選択] をクリックします。
[演算子]② で、[>]を選択します。
[種別]③ は、[通貨]が選択されたままにします。
[値]④ に、[¥50,000,00]と入力します。
[すべての条件に一致]が選択されていることを確認します。
[保存]ボタンをクリックして条件の定義を終わらせます。
アクションを定義
次に、条件が一致すると実行されるアクションを定義しましょう。アクションにはルール適用時のアクションと、スケジュール済みアクションを定義できますが、ここではルール適用時のアクションのみ定義します。
ルール適用時のアクション以下の[すべての条件に一致]をクリックします。
再び画面右に詳細を設定するウィンドウが表示されるので、[アクション種別]の選択リストから「レコードを更新」を選択します。
任意の[アクション名]を付けます。ここでは、「sampleAction」 という名前を付けます。
更新するレコードを選択するポップアップが表示されるので、[プロセスを開始した Account レコードを選択]をオンにした状態にて、[Choose]ボタンをクリックします。
ポップアップが閉じられると[レコードの更新条件]と[更新するレコードの新しい項目値]を設定できるようになります。
[レコードの更新条件]は、「レコードを更新する条件がない」をオンにします。
続いて[更新するレコードの新しい項目値]を設定します。
[項目]① で、[優先度※] を選択して、[選択] をクリックします。
[種別]② は、[選択リスト]が選択されたままにします。
[値]③ は、[通貨]を選択します。
有効化する
最後にプロセスを有効化します。
画面右上の[有効化]ボタンをクリックすると有効化できます。
ちなみに、有効化を行った後はプロセスの編集ができません。プロセスはバージョン管理されているため、編集を行う場合は現バージョンをコピーし、新しいバージョンを作成してから編集することになります。
最後に
いかがでしたでしょうか。本記事ではプロセスビルダーについて、Flow Builderとの違いやプロセスの作成方法について解説しました。
プロセスビルダーは設定する項目が多く、慣れない内は難しいと感じられる方も多いかと思われます。しかし、プロセスビルダーは、Apexコードを書く必要がなくビジネスプロセスを自動化できるため、非常に便利で強力なツールと言えます。
本記事がプロセスビルダーをマスターする足がかりになれば幸いです。
Salesforceの開発・カスタマイズを検討中の方はサンブリッジにご相談ください
サンブリッジは、長年Salesforceの導入や開発に取り組み、貴社の業務に合わせたクラウドサービスを提供するSalesforceコンサルティングパートナーです。Salesforce導入時の設計・設定から導入後の定着化支援まで、安定した運用を実現できるよう、幅広く支援しています。
Salesforceの開発・カスタマイズを検討中の方は、ぜひ一度、サンブリッジまでご相談ください。
~Salesforce活用に不可欠な顧客情報の
登録・更新・活用をワンストップで簡単に~
『SmartVisca(スマートビスカ)』サービス紹介資料
紙名刺の高速かつ正確なデジタル化はもちろん、オンライン名刺や電話帳機能も標準搭載。取り込んだデータはSalesforce内で一元管理できるので、時間と場所にとらわれず顧客データを活用した営業活動を実現します。