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

【FlowBuilder基礎】Salesforceのフローで設定する各項目を徹底解説!

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

Salesforceの標準機能の中で、高度な自動化プロセスをノーコードで実装できる Flow Builder(フロービルダー)という機能があります。

これは、オブジェクトのデータ更新や、画面フローなど、様々な要件に対応できる柔軟なツールとして定着しています。

フローを作成する際、画面の配置や要素の接続といった主要なロジック設計に集中しがちですが、安定した運用とセキュリティの確保において等しく重要なのが、フロー全体の挙動を制御する詳細設定(プロパティ)項目です。

ここを適切に設定できていないと、意図しない権限エラーが発生したり、逆に本来見せてはならないデータが一般ユーザーに公開されてしまうリスクが生じます。

本記事では、Flow Builderの詳細設定画面に並ぶ各項目について、テーマごとに整理し、どのような意味があり、実務においてどのように選択すべきかを客観的な事実に基づいて詳しく解説します。

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

Salesforce支援サービス

フロー詳細設定の各項目の設定方法について

詳細設定には設定可能な項目がいくつかありますのでそれぞれ解説していきます。

まずはSalesforceフローのプロパティモーダル画面の「詳細を表示」をクリックします。

様々な詳細情報が出てきましたね。

それぞれ解説しますので必要に応じて設定してください。

  • フローの実行方法
  • 種別
  • ソーステンプレート
  • テンプレート
  • 元のフロー
  • 上書き可能
  • フローを実行するためのAPIバージョン
  • インタビュー表示ラベル

    フローの実行方法

    以下に記載する【A】が一番弱く、【C】が一番強い実行方法です。

    詳細設定の中で、セキュリティ設計に最も直結する重要な項目が「フローの実行方法(コンテキスト)」です。

    これは、フローが動作する際に「誰の権限」と「どの共有ルール」を適用してデータベースにアクセスするかを決定するものです。

    設定を誤ると重大なガバナンス違反や権限不足のエラーに繋がるので注意しましょう。

    【A】ユーザまたはシステムコンテキスト(デフォルト)

    フローの起動方法に依存します。

    つまりフローの起動方法によってフロー要素へのアクセス権が異なります

    実行元 必要権限
    Apex コードによって異なる
    Experience Cloud サイト ユーザ
    カスタム Aura コンポーネント内の視覚化されたコンポーネントとして埋め込まれている ユーザ
    Visualforce ページ内の視覚化されたコンポーネントとして埋め込まれている ユーザ
    カスタムボタン ユーザ
    カスタムリンク ユーザ
    直接リンク ユーザ
    フローアクション ユーザ
    Lightning ページ ユーザ
    プロセスビルダーで作成されたプロセス 共有なしのシステムコンテキスト
    レコードトリガ 共有なしのシステムコンテキスト
    REST API ユーザ
    カスタム Aura コンポーネントコントローラの Apex メソッドから実行 コードによって異なる
    Visualforce コントローラの Apex メソッドから実行 コードによって異なる
    スケジュールトリガ 共有なしのシステムコンテキスト
    Web タブ ユーザ

    例えばカスタムボタンからフローを起動した場合、デフォルトではユーザコンテキストによりアクセス権が決定されます。

    ユーザAに商談オブジェクトのフェーズ項目に更新権限が与えられていないのにも関わらず、ユーザAがそのフェーズ項目を更新するフローを実行するとエラーが出ます。

    フローの起動方法によるコンテキストの違いに関する詳細はSalesforceヘルプをご覧ください。

    Salesforce

    【B】システムコンテキスト共有あり

    【A】のユーザコンテキストにはアクセス権は左右されませんがシステムコンテキストで実行され、レコードの共有に関する制限を受けます。

    つまり組織の共有設定や、ロール階層、共有ルール、共有の手動直接設定、チーム、テリトリーによってアクセス権が異なります

    例えば組織の共有設定で商談が非公開であり、とある商談AがユーザBにどの方法でも共有されていないとします。

    商談Aを参照するフローをユーザBが実行するとエラーが出ます。

    【C】システムコンテキスト共有なし

    コンテキストによる一切のアクセス制限を受けません

    セキュリティ面を考慮すると様々なパターンの慎重なテストが必要ですがフロー内で多くのオブジェクトを使用している場合で、フロー内でユーザによる条件分岐をしっかり行っている場合はこの設定にすることをオススメします。

    大切なことなのでもう一度改めて記載しますが、この設定にする場合は漏れなく被りないMECEを意識したテストをすることを徹底してください。

    フローの種別をレコードトリガーフローにしている場合は常に「システムコンテキスト共有なし」で実行されます。

    *MECE:Mutually Exclusive and Collectively Exhaustive。互いに重複せず全体として漏れがない状態という意味。

    関連記事

    こんにちは、DX攻略部のヘナトンです。 Salesforceの自動化ツールであるフローは、ビジネスプロセスを自動化するための強力なツールであり近年注目が集まっています。 今回はそのフローの詳細設定について解説します。 そも[…]

    フローの特性や互換性を制御する詳細プロパティ項目

    コンテキストの設定以外にも、詳細設定画面にはフローの管理やバージョン互換性、運用保守の効率を左右する重要なプロパティ項目が並んでいます。

    それぞれの定義と実務における役割を解説します。

    種別

    作成中のフローが、どのような種類の自動化ロジックであるかを表示する読み取り専用、または一部選択可能な項目です。

    「画面フロー」「レコードトリガーフロー」「スケジュールトリガーフロー」「自動起動フロー(トリガーなし)」などの大分類がここに明記されます。

    種別によって、キャンバス内で利用できる要素(コンポーネント)や起動条件の仕様がシステム的に制限されます。

    初めにフローを作成する際に選んでいるはずですので基本的には編集不要です。

    ソーステンプレート

    現在開いているフローが、他のベースとなるフローやAppExchangeパッケージ等に含まれる「型(テンプレート)」から作成されたものである場合、その起源となった元のテンプレートの名称がここに表示されます。

    自社でフローを一から自作した場合は空白となります。

    何か別のフローをテンプレートとしてフローを作成する場合に使用します。

    テンプレート

    このチェックボックスを有効にすると、作成したフローを組織内で「ソーステンプレート(ひな形)」として登録することができます

    複数の部門で似たようなデータ更新フローを量産する際、共通の土台をテンプレート化しておくことで、他の管理者がその設定をコピーしてカスタマイズを始めることができるようになり、構築の標準化と効率化に寄与します。

    元のフロー

    上書き可能なパッケージ化されたフローを選択します。

    管理パッケージからインストールされるフローの中で上書き可能なものがあればそのフローをカスタマイズできます。

    有効化すると元のインストールされたフローではなくカスタマイズ後のこのフローが実行されます。

    上書き可能

    パッケージ化するにあたって上書き可能にする場合はチェックを入れます。

    開発者が管理パッケージを作成するにあたってその管理パッケージを使用するそれぞれの組織がカスタマイズするであろうフローの場合に使用します。

    フローを実行するためのAPIバージョン

    基本的には最新のバージョンにしておきましょう。

    数字が大きい方が新しいバージョンです。

    過去に作成したフローに最新のフロー機能を付与したい場合などは新しいバージョンに設定するとよいです。

    インタビュー表示ラベル

    このラベルによってフローの実行中の各インスタンスを識別します。

    この表示ラベルはフローでエラーが発生した場合のメールまたは一時停止中のインタビューリストに表示されます。

    例えば商談項目を更新するフローでエラーが発生した場合、どの商談でそのエラーが発生したかを素早く知りたい場合に商談のIDやName項目をここに入れておくとエラーメールにIDとName項目が表示されるようになります。

    関連記事

    こんにちは、DX攻略部のヘナトンです。 Salesforceで画面フローを使った業務自動化を進めていると、必ずと言っていいほど「このレコードの情報をフロー内で使いたい」という場面にぶつかります。 「商談レコードのページに配置したフローで[…]

    まとめ

    Salesforceフローの詳細設定の具体的な設定項目の解説は以上です。

    普段は意識することのない設定内容だと思いますが、「フローの実行方法」など設定することが絶対に必要なシーンは出てくると思います。

    フローの挙動がうまくいかない時に、この詳細設定を見直すと解決策が見えてくることも多々あります。

    すでに運用しているフローの詳細設定をむやみに変更するのは危険極まりないですが、Sandbox環境にて詳細設定変更テストしてみると、今までうまくいかずにApexプログラムで時間をかけて開発していたものがフローで実現できるかもしれません。

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

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

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

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