Salesforceの導入サポート、開発・連携を行う(株)FDCのエンジニアチームが、Salesforce フロー 開発について基礎から丁寧に解説します。
Salesforceのフロー(Flow Builder)は、コードをほとんど書かずにレコード操作やメール送信・承認フローなどの業務プロセスを自動化できる強力な機能です。
2025年12月31日にはワークフロールールとプロセスビルダーのサポートが廃止され、自動化ツールの主役はフローへと完全移行しており、さらにフロー開発の重要度が増しました。
本記事では、そんなフローの基本概念・種類・作成手順・最適化・2026年Spring ’26の最新機能まで、初心者の方でもわかりやすく網羅的に解説します。

Salesforceのフローとは?Flow Builderの基本
Salesforceのフローとは、Flow Builder(フロービルダー)というポイント&クリックツールを使って、業務プロセスを視覚的に自動化できる機能です。Salesforce公式のサクセスナビでは「フローは、Salesforce組織や外部システムでの情報の収集、更新、編集、作成といったプロセスを自動化する機能」と定義されています。
従来、業務自動化にはワークフロールールやプロセスビルダーが使われていましたが、Salesforceはこれらのサポートを2025年12月31日をもって廃止しました(Salesforce公式ヘルプ)。既存のルールは引き続き動作しますが、新規作成はできなくなっており、今後の自動化はすべてフローに統一されています。まだワークフロールールやプロセスビルダーを使用している組織は、早期のフロー移行を検討してください。
フロー(Flow Builder)でできること
- レコードの作成・更新・削除の自動化
- 条件分岐による柔軟なプロセス制御
- メール送信・承認申請・ToDoの自動作成
- ユーザーへのガイド付き入力画面の提供
- 外部システムとのAPI連携アクション
- スケジュールに基づく定期バッチ処理
フロービルダーでは、要素と呼ばれるブロックをドラッグ&ドロップでキャンバス上に配置し、コネクタで繋ぐことで業務フローを設計します。Apexなどのプログラミング知識がなくても直感的に操作できる点が、初心者にとっての大きなメリットです。
フローとApexの使い分け
Salesforceでは「Flow First(まずフローで実現できないか検討する)」という方針が公式に推奨されています。シンプルな条件分岐やレコード操作であればフローで十分対応でき、開発スピード・メンテナンス性ともに優れています。一方で、以下のようなケースではApex(コード開発)が必要になります。
- 外部システムへのAPIコールアウトを伴う複雑な双方向連携
- 数十万件以上の大量データをBatch処理で順次処理する場合
- 高度なエラーハンドリングやトランザクション制御が必要な場合
- 独自のREST/SOAP APIエンドポイントを外部に公開する場合
実際の現場では、フローで基本処理を組みつつ、一部の複雑なロジックだけをApexの「Invocable Action」として呼び出す「ハイブリッド構成」も広く使われています。
Salesforceフローの種類と使い分け
Salesforceのフローには5つの種類があり、自動化したい業務の「開始条件」によって使い分けます。それぞれの特徴と代表的なユースケースを以下の表で確認しましょう。
| フローの種類 | 起動条件 | 代表的なユースケース |
|---|---|---|
| 画面フロー | ユーザーがボタン・コンポーネントを操作したとき | 取引先と商談をまとめて作成する入力画面、レコードコピーボタン |
| レコードトリガフロー | レコードが作成・更新・削除されたとき | 商談フェーズが受注に更新された際にToDoを自動作成 |
| スケジュールトリガフロー | 指定した時間・頻度(日次・週次など) | 未着手リードへのToDoを毎日自動生成、商談フェーズの週次自動更新 |
| プラットフォームイベントトリガフロー | プラットフォームイベントが発行されたとき | 商談成立時に契約書作成・出荷準備・配送手配を並行処理 |
| 自動起動フロー(トリガなし) | 他のフロー・Apex・オーケストレータから呼び出されたとき | 共通処理のサブフロー化、Apexからの単純処理の委譲 |
画面フロー
画面フローは、フローを実行したユーザーに画面を表示し、入力情報をもとにレコード操作などの処理を実行するフローです。ホームページやレコードページへのコンポーネント配置、またはアクション(ボタン)として提供する方法などでユーザーに届けることができます。ウィザード形式で複数画面を順番に表示させることもでき、複雑な入力業務のガイド役として特に効果的です。
レコードトリガフロー
レコードトリガフローは、Salesforce上で最も多く使われるフローの一つで、レコードの作成・更新・削除を起点として処理を実行します。「保存前(Before Save)」と「保存後(After Save)」のタイミングを選択でき、保存前は同一レコードの値変更に、保存後は関連レコードの作成・外部処理などに適しています。
保存前フローは追加のDMLを発行しないため、保存後フローと比べてパフォーマンス面で有利です。値の検証・デフォルト値の設定・項目の自動計算など、トリガーレコード自身の操作には保存前フローを優先的に使いましょう。さらに指定時間経過後に処理を遅延実行する「スケジュールパス」の設定も可能で、「商談作成から3日後にフォローアップToDoを自動作成」といった時間ベースのアクションにも対応できます。
スケジュールトリガフロー
スケジュールトリガフローは、設定した日時・頻度(毎日・毎週など)で、検索条件に合致する複数レコードを一括処理するフローです。夜間バッチ処理や日次データ集計の自動化に活用されます。Apexの「Schedule + Batch」に相当する処理をノーコードで実現できる手段として、定型的なデータメンテナンス業務に最適です。
プラットフォームイベントトリガフロー
プラットフォームイベントトリガフローは、Salesforceのイベントバス上でプラットフォームイベントが発行されたタイミングで起動します。イベント駆動型のアーキテクチャを採用する場合に使用し、メインのトランザクションとは非同期に処理を実行できます。外部システムからのイベント受信や、複数の後続処理を疎結合で連携させたいケースに適しています。
自動起動フロー(トリガなし)
自動起動フローは、単独では起動せず、他のフローやApex、オーケストレータなどから明示的に呼び出されて実行されます。共通する処理ロジックをサブフローとして部品化するのが最も一般的な使い方です。たとえば「メール通知+ToDo作成」のような処理を自動起動フローにまとめておけば、複数のレコードトリガフローから再利用できます。
Flow Builderの主要要素を理解しよう
フロービルダーでは「要素(Element)」と呼ばれるブロックを組み合わせてフローを設計します。各要素の役割を理解することが、フロー開発の第一歩です。
データ操作系の要素
| 要素名 | 役割 |
|---|---|
| レコードを取得 | 条件に合致するSalesforceのレコードデータをフローに読み込む |
| レコードを作成 | 指定したオブジェクトに新規レコードを作成する |
| レコードを更新 | 取得済みレコードまたは条件指定でレコードの値を更新する |
| レコードを削除 | 条件に合致するレコードを削除する |
ロジック系の要素
- 決定(Decision):条件に基づいてフローの経路を分岐させる。「商談金額が100万円以上か否か」などの条件評価に使用します。
- 割り当て(Assignment):変数やコレクション変数に値を設定・加算・追加するための要素です。ループ処理と組み合わせて集計ロジックに活用します。
- ループ(Loop):コレクション変数内の複数レコードを一件ずつ取り出して繰り返し処理を行います。「次の項目へ」と「ループの終了後」の2つのパスを持ちます。
- コレクション検索条件(Collection Filter):コレクション変数の中から条件に合致する項目だけを絞り込む要素です。ループと「決定」要素を組み合わせるよりもシンプルに記述でき、フローの可読性が向上します。
アクション・画面系の要素
- アクション(Action):メール送信・承認申請・外部API呼び出し・サブフローの実行などを行います。ApexのInvocable Actionを呼び出す際にもこの要素を使用します。
- 画面(Screen):画面フローでユーザーに表示するUIを設計します。テキスト入力・選択リスト・データテーブルなど多様なコンポーネントを配置できます。
- 一時停止(Pause):指定条件が満たされるまでフローの実行を一時停止し、後で再開します。承認待ちや外部からの応答待ちなどのシナリオに使用します。
変数とリソース
フロー内でデータを保持・操作するために「変数(Variable)」を使用します。主な変数の種類は以下のとおりです。
- テキスト変数・数値変数・日付変数:単一の値を保持するシンプルな変数
- レコード変数:Salesforceの1件のレコードを保持する変数
- コレクション変数:同じデータ型の値を複数保持するリスト形式の変数
- レコードコレクション変数:複数のレコードを保持する変数。「レコードを取得」で複数件取得した際に使用し、ループで1件ずつ処理するのが典型的なパターン
フロー開発の作成手順:ステップバイステップ
ここでは、フローの基本的な作成の流れをステップ形式で解説します。例として「商談のフェーズが『受注』に更新されたらToDoを自動作成する」レコードトリガフローを作成するケースで説明します。
- 設定画面からフロービルダーを開く:Salesforceの「設定」メニューから「クイック検索」に「フロー」と入力し、「フロー」を選択します。「新規フロー」ボタンをクリックしてフロービルダーを起動します。
- フローの種類を選択する:作成するフローに合わせて種類を選択します。今回の例では「レコードトリガフロー」を選択します。
- 開始要素を設定する:トリガーの起動タイミング(作成時・更新時・削除時)、対象オブジェクト(商談)、起動条件(フェーズが「受注」に変更されたとき)を設定します。今回は「レコードが更新された」を選択し、エントリ条件にフェーズ=受注を指定します。
- 要素を追加してロジックを構築する:「+」ボタンをクリックして要素を追加します。「レコードを作成」要素を追加し、ToDo(Task)レコードの作成内容(件名・期限・担当者など)を設定します。
- コネクタで要素を繋ぐ:各要素をコネクタ(矢印)で繋ぎ、処理の流れを完成させます。
- デバッグで動作確認する:フロービルダー上部の「デバッグ」ボタンをクリックし、テストデータを入力して動作を確認します。エラーがあれば修正します。
- 保存して有効化する:フローを保存し、「有効化」ボタンをクリックして本番環境に適用します。有効化前はSandbox(テスト環境)での検証を推奨します。
フローのデバッグと監視
フロービルダーのデバッグ機能では、各要素の実行結果・変数の値・エラー内容をステップごとに確認できます。また、「設定」→「フロー」→「一時停止中のフローインタビュー」や、「自動化アプリケーション」からフローの実行状況を監視することも可能です。
本番環境で問題が発生した場合は、「設定」→「Apexデバッグログ」でフローの実行ログを詳細に確認できます。デバッグログでは各要素の実行順序やDML回数、変数の中間値が記録されるため、ガバナ制限への抵触やロジックの誤りを特定する際に活用してください。
フロー開発のベストプラクティスと注意点
フロー開発では、動作するフローを作るだけでなく、パフォーマンスと保守性を意識した設計が非常に重要です。以下のベストプラクティスを参考にしてください。
ガバナ制限を意識した設計
Salesforceでは「ガバナ制限(Governor Limits)」が設けられており、フローもこの制限に従います。主な制限値は以下のとおりです。
| 制限の種類 | 上限値 | 注意点 |
|---|---|---|
| DMLステートメント数 | 1トランザクションあたり150回 | ループ内でレコード操作を繰り返すと上限に達しやすい |
| DMLで処理するレコード数 | 1トランザクションあたり10,000件 | 大量データ処理はApexバッチや「バルク処理」設定を検討 |
| SOQLクエリ数 | 1トランザクションあたり100回 | ループ内でレコード取得を繰り返さないよう設計する |
ループ内でDMLやSOQLを繰り返すことは最も典型的なアンチパターンです。正しい設計パターンは次の通りです。「レコードを取得」はループの外でまとめて実行し、取得したコレクションをループで処理しながら「割り当て」要素で更新用のコレクション変数にレコードを追加、ループ終了後にまとめて「レコードを更新」します。この「取得→ループ→一括更新」のパターンを徹底することで、ガバナ制限に抵触するリスクを大幅に減らせます。
その他のベストプラクティス
- 1オブジェクトにつき1フローを基本とする:同一オブジェクトに複数のレコードトリガフローが存在すると、DMLの重複や実行順序の制御が難しくなります。可能な限り1つのフローに集約し、内部で「決定」要素を使って処理を分岐させましょう。
- サブフローで処理を部品化する:共通する処理ロジックは「自動起動フロー」として独立させ、サブフローとして呼び出すことで再利用性と保守性が向上します。
- 命名規則を統一する:フロー名・API参照名・要素名に明確な命名規則を設けると、複数人での開発や後からのメンテナンスがスムーズになります。例えば「[オブジェクト名]_[トリガタイミング]_[処理概要]」(Opportunity_AfterUpdate_CreateToDo)のような形式が実用的です。
- Sandboxで検証してから有効化する:本番環境で直接開発・有効化することは避け、必ずSandbox環境でテストを行ってから本番へ移行しましょう。
- エラーハンドリングを組み込む:「障害パス」を設定してエラー発生時の挙動を明示的にコントロールし、管理者へのメール通知やカスタムオブジェクトへのエラーログ記録でエラーを検知できる仕組みを設けましょう。
- フローバージョン管理を活用する:変更前のフローはバージョンとして保存しておき、問題が発生した際に旧バージョンへ切り戻しができるようにしておきましょう。Spring ’26からはバージョン比較機能が画面フローでも利用可能になっています。
Spring ’26のフロー新機能(2026年最新情報)
2026年2月22日(日本時間)にリリースされたSalesforce Spring ’26では、フローに関する多くの機能強化が行われました。ここでは特に注目すべき新機能を紹介します。
AIによるフロー作成支援(Agentforce連携)
Spring ’26では、自然言語の指示からAIがフローのドラフトを自動生成する機能が強化されました。フロービルダー上でやりたい処理をテキストで入力すると、AIが対応するフローのたたき台を作成します。複雑なフローをゼロから設計する工数を削減でき、特に「フローの書き方は知っているが設計に時間がかかる」という中級者にとって生産性向上の効果が大きい機能です。また、Agentforceを活用した「設定支援(ベータ)」によって、フロー管理や設定変更を会話形式でAIに相談できるようになっています。
レコードトリガフロー:ファイルオブジェクトのトリガが可能に
これまでコードでしかトリガに指定できなかったコンテンツドキュメント・コンテンツバージョン(ファイル系オブジェクト)が、レコードトリガフローの開始オブジェクトとして利用できるようになりました。ファイルのアップロードや更新を起点とした自動化がノーコードで実現できます。たとえば「契約書PDFがアップロードされたら承認フローを自動起動する」といったシナリオが、コードなしで構築可能になりました。
画面フローの新コンポーネント
- Messageコンポーネント:Info・Success・Warning・Errorの4種類のトースト表示スタイルで、ユーザーへのアラートやインフォメーション表示が可能になりました。バリデーションエラーや操作完了の通知などに活用できます。
- File Previewコンポーネント:PDFや画像などのファイルを画面フロー内でプレビュー表示できます。Content Document IDで表示ファイルを指定します。
- Kanban Boardコンポーネント(ベータ):画面フロー上でカンバンボード形式の表示が可能になりました(現在は読み取り専用)。
画面要素のスタイル設定が可能に
画面要素の「スタイル」タブで、背景色・ボーダー色・角丸・テキスト色・フォントサイズなどのCSSスタイルをノーコードで設定できるようになりました。従来はLWC(Lightning Web Component)開発が必要だったデザインのカスタマイズが、管理者レベルで実現できます。ブランドカラーに合わせたフォーム画面の作成や、エラー時の視覚的な強調表示などに活用できます。
ループ要素・決定要素の折りたたみ表示
フロービルダーのキャンバス上でスペースを占有しがちだったループ要素と決定要素が、折りたたんでコンパクトに表示できるようになりました。複雑なフローの全体像を把握しやすくなり、メンテナンス時の作業効率が向上します。折りたたみ状態はブラウザごとに保存されるため、他のユーザーへの影響もありません。
フローの関連性の可視化
Spring ’26からはフローの関連性(どのフローがどのフローを呼び出しているか)を自動化アプリケーションの「使用状況」タブで視覚的に確認できるようになりました。サブフローを多用する組織ではフロー同士の依存関係が複雑になりがちですが、この機能により影響範囲の把握や変更時のリスク評価が容易になります。
画面フローでもバージョン比較が可能に
Winter ’26でレコードトリガフローなどに導入されたバージョン比較機能が、Spring ’26から画面フローでも利用できるようになりました。2つのバージョン間で変更・削除された要素やコネクタが視覚的に確認でき、変更管理の精度が向上します。
まとめ:フロー開発の次のステップ
Salesforceフローは、ワークフロールールとプロセスビルダーの廃止により、今やSalesforce自動化の唯一の標準ツールとなりました。まだフロー開発に触れたことがない方は、まずTrailheadの「フローの基礎」モジュールでFlow Builderの操作に慣れることから始めてみてください。「レコードが更新されたらToDoを作成する」といったシンプルなレコードトリガフローを1つ作るだけで、フローの基本的な設計サイクルが体感として理解できるはずです。
ワークフロールールやプロセスビルダーからの移行がまだ完了していない組織は、Salesforceが提供する「フロー移行ツール」を活用して、既存の自動化ルールをフローへ変換することを検討してみてください。
Salesforceフロー開発でお困りなら「SFsolution」へご相談ください
「フローで業務を自動化したいけれど設計が難しい」「ガバナ制限エラーが出てしまった」「ワークフロールールからの移行を進めたい」——そんな課題をお持ちの方におすすめなのが、弊社(株)エフ・ディー・シーが提供するSalesforce導入・活用のトータルサポートサービス「SFsolution」です。
フロー開発・設計から外部システムとの連携、既存のワークフロールールやプロセスビルダーからの移行支援まで、Salesforceコンサルティングパートナーとして数多くの企業様の課題解決を行ってきました。フロー開発に関するご相談はもちろん、自社内での運用・保守が難しいと感じている方も、ぜひお気軽にお問い合わせいただくか、資料ダウンロードをご活用ください。

