詳細情報:
フロー実行時エラーのトラブルシューティング
有効化後に発生するフローのエラーや予期しない動作をトラブルシューティングして解決する方法について説明します。エラーメールを解釈し、ベストプラクティスを使用して問題をすばやく特定して解決します。
フローエラーメールについて
フローの実行に失敗した場合、Salesforce は、関連付けられたフローを最後に変更した管理者または Apex 例外メールの受信者にメールを送信します。このメールには、エラーメッセージ、フローで実行された各フロー要素の詳細、失敗したフローを Flow Builder で表示するためのリンクが含まれます。
- エラーメッセージ: 問題の原因を説明します。「未対応の例外」、「要素に失敗しました」、または特定の検証エラーなどのキーワードを探します。
- フロー名とバージョン: 失敗したフローとバージョンを示します。
- 要素の詳細: フローのどの要素がエラーの原因かを示します。通常、要素の API 参照名または表示ラベルが含まれます。
- Stack Trace: 高度なトラブルシューティングでは、スタックトレースを使用してエラーの原因を特定できます。特に、複雑なフローや Apex アクションに役立ちます。
エラー: Send_Email_to_Contact 要素でエラーが発生しました。必須入力パラメーター: RecipientId がありません。
意味: [受信者 ID] 項目に値がないため、フローは Send_Email_to_Contact 要素で設定されたメールを送信できませんでした。
フローエラーのトラブルシューティングのヒント
- まず、エラーメールを注意深く読みます。問題要素とエラーメッセージを特定します。
- Flow Builder でフローを開き、メールに記載されている要素を見つけます。
- Flow Builder のデバッグ機能を使用して、サンプルデータでフローを実行し、リアルタイムで失敗を監視します。フローエラーのメールで、[Flow Error: Click here to debug the error in Flow Builder (フローエラー: Flow Builder でエラーをデバッグするにはこちらをクリックしてください)] をクリックします。デバッガについての詳細は、「Flow Builder デバッガを使用したフローのテストまたはトラブルシューティング」を参照してください。
- 特に必須項目や変数の入力値に欠落や誤りがないか確認します。
- 障害コネクタとエラー処理パスが正しく設定されていることを確認します。
- 異なるユーザーとしてフローをテストし、権限またはアクセスの問題を確認します。
- レコードトリガーフローの場合、トリガーレコードがすべてのエントリ条件を満たしていることを確認します。
トラブルシューティングを容易にするベストプラクティス
- エラーメールを解釈しやすくするために、フロー要素とリソースに説明ラベルと API 参照名を追加します。たとえば、[レコードを取得 1] は、[関連取引先責任者を取得] ほどエラーメールでは役立ちません。
- 重要な要素で障害コネクタを使用して、わかりやすいエラーメッセージと代替パスを提供します。フローの実行でエラーが発生して障害パスが発生すると、フローは障害パスの要素を実行してエラーを処理します。場合によっては、エラーメールも送信される可能性があります。
- 通知を送信して追跡と解決を容易にします。
- 一般的なエラーとチームの解決策を文書化します。
- エラーを修正したら、Flow Builder デバッガーを使用してフローを再テストします。
- 詳細: エラーの詳細を表示するには、カスタムオブジェクトにエラーを記録します。
- フローでの REQUIRED_FIELD_MISSING エラーのトラブルシューティング
フローですべての必須項目が入力されていない状態でレコードを作成または更新しようとすると、REQUIRED_FIELD_MISSING エラーが表示されます。 - フローでの APEX_CPU_TIME_LIMIT_EXCEEDED エラーのトラブルシューティング
トランザクションで CPU 時間が過度に消費されると、Salesforce は Apex_CPU_TIME_LIMIT_EXCEEDED エラーをスローします。フローでは、この制限を同じトランザクションの他のすべての自動化 (Apex トリガーを含む) と共有します。 - フロー URL のトラブルシューティング
フローを配布しており、カスタムボタン、カスタムリンク、または直接フロー URL が期待どおりに機能していない場合は、参照されるフローを確認します。さらに、値を URL からフローに渡している場合は、その変数も確認します。 - フローの再試行のトラブルシューティング
フローが正常に終了しなかった場合にフローがどのように再度実行されるかについて説明します。フローの再試行とは、保存に失敗したレコードを処理するためにフローが再度実行されることです。
