2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Qiita100万記事感謝祭!記事投稿キャンペーン開催のお知らせ

【Salesforce】フローで入力規則!?(カスタムエラー要素を使用してのフロー)

Last updated at Posted at 2025-01-16

こんにちは、ネコ田です。
自分自身の備忘録として、業務で使えそうな機能などを記載したいと思い、投稿を始めました。(3日坊主になりませんように( ゚Д゚))

不慣れなため、伝わりづらい部分がありましたらごめんなさい( ;∀;)

フローでなんか入力規則できないかな~と英語の記事をあさっていたところよさそうな記事を発見したので、備忘録として、日本語にアウトプットしていきます~。

↓↓参照サイト↓↓

概要(シナリオ)

新規商談を作成する際に、取引先に進行中(以下、オープン)な商談があった場合に入力規則のように保存することができないようにするフロー

フローの全体図

image.png

フロー詳細

✓作成ステップ

①レコードトリガーフローを使用
②決定要素を使用して、新規作成または更新判断
③レコードを取得要素で関連するオープンな商談レコードを取得
④決定要素にて、オープン商談の有無を判断
⑤カスタムエラー要素にてカスタムエラーメッセージを作成

✓作成ステップ図解

①レコードトリガーフローを使用

フロー新規作成時に、「レコードトリガーフロー」を選択
image.png

開始を設定は下記のように設定
オブジェクト:商談
トリガー設定:レコードが作成または更新された
エントリ条件:なし
フローを最適化:高速項目更新
image.png

②決定要素を使用して、新規作成または更新判断

決定要素を下記のように設定
表示ラベル:任意

結果の詳細
表示ラベル:新規作成(任意)
条件の要件:AND
リソース:{!$Record.Id}(トリガーOpportunity>商談ID)
演算子:null
値:{!$GlobalConstant.True}(True)
結果を実行するタイミング:条件を満たす場合

image.png

デフォルトの結果
表示ラベル:更新(任意)
image.png

③レコードを取得要素で関連するオープンな商談レコードを取得

※決定要素の決定ノード側に作成

レコードを取得要素は下記のように設定
表示ラベル:任意
オブジェクト:商談
条件の要件:AND
1行目の条件
項目:AccountId(取引先ID)
演算子:次の文字列と一致する
値:{!$Record.Account.Id}(Record>取引先ID)
2行目の条件
項目:Is Closed (完了フラグ)
演算子:次の文字列と一致する
値:{!$GlobalConstant.False}
並び替え:なし
保存するレコード数:すべてのレコード
レコードデータの保存方法:すべての項目を自動的に保存

image.png

④決定要素にて、オープン商談の有無を判断

決定要素は下記のように設定
表示ラベル:任意

結果の詳細
表示ラベル:有(任意)
条件の要件:AND
リソース:③の要素を選択
演算子:null
値:{!$GlobalConstant.False}(False)
結果を実行するタイミング:条件を満たす場合
image.png

デフォルトの結果
表示ラベル:無(任意)
image.png

⑤カスタムエラー要素にてカスタムエラーメッセージを作成

カスタムエラーメッセージ要素を下記のように設定
表示ラベル:エラーメッセージ
表示する場所:レコードのウィンドウで
エラーメッセージ:任意

image.png

以上がフローの詳細設定となります。

テスト

前提として...

すでに進行中の商談を作成している状態での検証

↓↓使用商談↓↓
image.png

無効化状態での検証

✓入力
image.png

✓保存してみた
image.png

作成可能!!!

有効化状態での検証

無効化時に作成した状態でフローを有効化している↓↓
image.png

この状態で作成してみると...
image.png

エラーになって保存ができなくなりました!!

「オープン商談」と「無効化状態での商談」を削除して作成してみると...※1

※1
データの削除はあんまりよろしくない行為ですので、
本番環境での削除には十分お気をつけを~

image.png

image.png

保存できました!!

作成後の所感

決定要素に決定要素を重ねて使うこと自体初めてで、面白かった。
実際商談で使うとなると、商談を複数の部署で使用してることもあるので条件の部分に特定のプロファイルを入れたりすれば使用はできそうかな。
完了フラグを用いているので、ここの辺をフェーズとかで絞ってもよさそう。
汎用性が高いと思うフローでした(^^)

2
1
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
2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?