0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Salesforce の承認プロセスでコメント フィールドを必須にする方法

Posted at

Salesforce では、承認プロセスのアクションを設定することは可能ですが、現時点では承認プロセスでフィールドを必須にすることはできません。これは、検証ルールを使用して解決できる簡単な問題であると考えることができます。残念ながら、現時点では、承認プロセスでフィールドを必須にするために検証ルールを使用することもできません。

ただし、 Flow を実装することで、このニーズを解決する回避策があります。

フローを構築する前に、フィールド更新アクションで「フィールド変更後にワークフロー ルールを再評価する」をマークします。これにより、承認プロセスが他の自動化 (この場合はフロー) をトリガーするようになります。

image.png

ここで、承認プロセスのコメントを必須にするフローを構築する必要があります。

まず、承認ステータスが「拒否」になったときに実行される、新しい (保存/高速フィールド更新の前) レコード トリガー フローを作成する必要があります。これは単なる例であり、任意のフィールドを使用できます。承認プロセスによって更新されるフィールドであることを確認してください。

image.png

その後、アカウントに関連する最後のプロセスインスタンスレコードを取得するために、レコードの取得要素を追加する必要があります。プロセスインスタンスとは、承認プロセスを意味します。TargetObjectId に関連するレコードを取得するための条件を設定し、CreatedDateで並べ替えるようにしてください。

image.png

その後、前のステップで見つかったプロセス インスタンスに関連する最後のプロセス インスタンス ステップレコードを取得するために、レコードの取得要素を追加する必要があります。拒否されたステップを取得するための条件を設定し、 CreatedDateで並べ替えるようにしてください。

image.png

ここで、見つかったプロセス インスタンス ステップにコメントがあるかどうかを確認するために、決定要素を追加する必要があります。

image.png

コメントフィールドが空白の場合は、エラー メッセージを表示します。そのため、エラー メッセージを表示するために、カスタム エラー要素を追加できます。

image.png

最終的に、フローは次のようになります。

image.png

ここで、コメントを入力せずにレコードを拒否しようとすると、エラー メッセージが表示されます。

重要!

フローが完全に期待どおりに機能しなかったというケースは、多くの人に起こる可能性があります。これは、フィールド更新を「最終拒否アクション」セクションではなく「拒否アクション」セクションに配置したことが原因です。

今では間違いなく動作します!

image.png

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?