レコードトリガーフローを作成したのに、期待通りに動作しない、あるいは一部のユーザーだけが失敗するという経験はありませんか。フローのロジック自体に問題がない場合、原因はユーザーの権限やレコードの共有設定にあることが多いです。Salesforceでは、フローがレコードを更新・作成する際に、実行ユーザーのオブジェクト権限や項目レベルセキュリティ、さらに共有ルールが影響します。本記事では、レコードトリガーフローが正常に動作しない原因を権限セットと共有設定の観点から切り分け、具体的な確認手順を解説します。
【要点】この記事で確認すること
- 最初に見る場所: フローのエラーメッセージ(障害メールやデバッグログのERROR行)、フローが更新しようとしているレコードのアクセス権
- 切り分けの軸: フローの実行ユーザー(自動実行なのか、ユーザー操作によるのか)と、そのユーザーが持つオブジェクト権限・共有アクセス
- 注意点: 会社PCで勝手にプロファイルを変更しない。権限セットの割り当てや共有ルールの修正はシステム管理者に依頼する必要があります
ADVERTISEMENT
目次
1. レコードトリガーフローの動作に影響する権限と共有設定とは
Salesforceのレコードトリガーフローは、レコードの作成・更新・削除をきっかけに自動的に実行されます。フローが参照・更新するオブジェクトに対する権限が不足していると、フロー全体が失敗したり、一部の処理がスキップされたりします。特に注意すべきは以下の3点です。
オブジェクト権限(CRUD)と項目レベルセキュリティ
フローがレコードを取得するためには、そのオブジェクトに対する「参照」権限が必要です。また、更新・作成する場合は「編集」「作成」権限も必要です。権限はプロファイルまたは権限セットで付与されます。さらに、項目レベルセキュリティで特定の項目が参照不可になっていると、フロー内でその項目を読み取れず、エラーになることがあります。
共有設定によるレコードアクセス
オブジェクト権限があっても、組織の共有設定によってレコード単位のアクセスが制限されている場合があります。例えば、非公開の共有モデルでは、所有者または共有ルールでアクセス権が与えられたユーザーだけがレコードを参照できます。フローが所有者以外のユーザーで実行される場合、更新対象のレコードに対する「編集」共有アクセスがないとフローは失敗します。
フローの実行ユーザー
レコードトリガーフローは、デフォルトでは「レコードを変更したユーザー」として実行されます。ただし、「フローを自動化する」ユーザー(システム管理者など)として実行する設定も可能です。実行ユーザーによって必要な権限が変わるため、まずは自分が想定している実行ユーザーを確認しましょう。
2. 権限セットの不足が原因でフローが失敗するケース
権限セットはプロファイルに追加して細かい権限を付与できる仕組みです。レコードトリガーフローに関連する典型的な権限セット不足の例を挙げます。
フローで使用するオブジェクトの権限が足りない
例えば、商談が作成されたことをトリガーに、関連する取引先の「説明」項目を更新するフローを作成したとします。このフローが成功するには、実行ユーザーに商談の参照権限と取引先の編集権限が必要です。もし権限セットで取引先の編集権限を付与していなければ、フローはエラーになります。
フローそのものに対する権限がない
レコードトリガーフローは有効化されていれば、すべてのユーザーがトリガーできますが、フロー内で使用する「フロー参照」や「フローリソース」へのアクセス権が必要な場合があります。特に、フローがApexアクションや別のフローを呼び出すときは、その権限セットも確認が必要です。
項目レベルセキュリティの制限
フローでレコードの項目を読み取ったり書き込んだりする場合、その項目に対して実行ユーザーが参照・編集権限を持っている必要があります。権限セットでオブジェクト全体の権限は与えていても、特定の項目がプロファイルまたは権限セットで「参照不可」になっていると、フローではその項目を取得できず、エラーになります。
3. 共有設定によるアクセス制御とその確認方法
共有設定は、オブジェクト権限とは別にレコードレベルでアクセスを制御します。組織の共有モデルが「公開・読み取り専用」や「非公開」の場合、フローが更新しようとするレコードにアクセスできない可能性があります。
組織の共有モデルを確認する
「設定」→「共有設定」から、対象オブジェクトのデフォルトアクセスを確認します。例えば、取引先が「公開・読み取り専用」で、商談が「非公開」になっている場合、商談レコードには所有者と共有ルールで指定されたユーザーしかアクセスできません。フローが商談レコードを更新するには、実行ユーザーがその商談の所有者であるか、共有ルールで編集権限が与えられている必要があります。
手動共有とApex共有の影響
手動共有やApexによる共有が設定されているレコードも、フローからアクセスできるかどうかは実行ユーザーの共有アクセスに依存します。フローがシステム管理者以外の一般ユーザーで実行される場合、そのユーザーに明示的に共有されていないレコードは参照・編集できません。
共有ルールの設定をチェックする
共有ルールで特定のグループやロールにレコードアクセスを与えている場合、そのルールが正しく適用されているかを確認します。共有ルールの評価は非同期で行われるため、ルール作成直後は反映に時間がかかることもあります。
4. トラブルシューティングの具体的な手順
以下の手順で、権限セットと共有設定の問題を切り分けてください。
- エラーメッセージを確認する: フローの障害メールまたは「監査」→「デバッグログ」でERRORレベルのログを開きます。エラーに「INSUFFICIENT_ACCESS_ON_CROSS_REFERENCE_ENTITY」「MISSING_PERMISSION」などの文字列があれば権限または共有が原因です。
- 実行ユーザーを特定する: フローの設定で「実行ユーザー」が「レコードを変更したユーザー」か「指定のユーザー」かを確認します。自動化ユーザー(例:システム管理者)で実行されている場合は、そのユーザーの権限を確認します。
- 権限セットの割り当てを確認する: 実行ユーザーが対象オブジェクトの参照・編集権限を持っているか、「設定」→「ユーザー」→「権限セットの割り当て」で確認。不足している場合は、適切な権限セットを割り当てます。
- 共有設定を確認する: フローが更新しようとしている特定のレコードに対して、実行ユーザーが「編集」アクセスを持っているかを「レコードの共有」画面で確認します。アクセスがない場合は、共有ルールの追加やレコード所有者の変更を検討します。
- 項目レベルセキュリティをチェックする: フローで使用している項目が実行ユーザーのプロファイルまたは権限セットで「参照可能」「編集可能」になっているかを確認します。
- フローをデバッグモードでテストする: 開発者コンソールからフローをデバッグ実行し、各要素の結果を確認します。権限不足の場合はエラー要素が表示されます。
5. 管理者に確認すべきポイント
問題が権限や共有設定にある場合、通常のユーザーでは修正できません。以下の情報をまとめて管理者に依頼しましょう。
| 確認項目 | 依頼に必要な情報 |
|---|---|
| フローの名前とID | 設定>フローから該当フローのAPI参照名を伝える |
| 失敗するユーザーのユーザー名 | どのユーザーで再現するのか |
| エラーログのスクリーンショット | デバッグログのERROR行をキャプチャ |
| 対象オブジェクトと項目 | フローが参照・更新するオブジェクトと項目 |
| 実行ユーザーの設定 | フローの「実行ユーザー」オプション |
6. よくある質問(FAQ)
Q. フローが一部のユーザーでのみ失敗します。何を確認すればよいですか?
A. まず、失敗するユーザーと成功するユーザーの権限セットと共有アクセスを比較してください。特にプロファイルの違いや権限セットの割り当て漏れが原因です。また、レコードの所有者が異なる場合は共有設定の影響も考えられます。
Q. フローが「レコードが見つかりません」というエラーを出します。
A. 原因は2つ考えられます。1つは、フローが参照するレコードが削除された、または条件に合致しないこと。もう1つは、実行ユーザーにそのレコードの参照権限がないことです。後者の場合、エラーメッセージに「INSUFFICIENT_ACCESS」が含まれます。
Q. フローをシステム管理者として実行する設定に変更すれば解決しますか?
A. 権限問題の一時的な回避策にはなりますが、システム管理者の権限が強すぎるため、意図しないレコード更新やセキュリティリスクが発生する可能性があります。根本的には、必要な権限セットを適切に割り当てることをお勧めします。
7. まとめ
レコードトリガーフローが期待通りに動作しない場合、まずは権限セットと共有設定に注目しましょう。実行ユーザーが必要なオブジェクト権限とレコードアクセスを持っているか、デバッグログと共有設定画面で確認することが重要です。権限セットの割り当てや共有ルールの変更は管理者権限が必要なため、適切な情報を添えて管理者に依頼してください。定期的にフローの実行ログを監視し、権限の見直しを行うことで、トラブルを未然に防ぐことができます。
超解決 第一編集部
疑問解決ポータル「超解決」の編集チーム。正確な検証と、現場視点での伝わりやすい解説を心がけています。
Office・仕事術の人気記事ランキング
- 【神技】保存せずに閉じたExcel・Wordファイルを復元する!消えたデータを復活させる4つの救出法
- 【Outlook】添付ファイルが「Winmail.dat」に化ける!受信側が困らない送信設定
- 【Word】差し込み印刷で数字の桁を整える!金額にカンマ(桁区切り)を入れる設定
- 【Teams】メッセージを「保存済み」にして後で読む!重要なチャットをブックマークして整理する技
- 【Word】校閲機能の基本!赤字(変更履歴)とコメントで修正を見える化する
- 【PDF】PDFに入力した文字の「フォント・サイズ・色」を変更するプロパティ設定
- 【Excel】文字が入っているセルの「個数」を数える!COUNTA関数の簡単な使い方
- 【Copilot】「サービスに接続できません」エラーの原因切り分けと対処法
- 【PDF】結合するPDFの「用紙サイズ」がバラバラな時、すべてを「A4サイズ」に強制リサイズしてから結合する
- 【Excel】矢印キーで「セルが動かず画面がスクロールする」!ScrollLockの解除方法(ノートPC対応)
