
Salesforce: 取引先に関連する商談レコードを作成不可にする方法
はじめに
こんにちは。
今回は、「取引先」に関連する「商談」レコードを作成不可にする方法についてご紹介します。
具体的には「取引先」に積み上げ集計項目を作成し、その項目に対して入力規則を設定することで実現可能となります。
では設定方法をご紹介していきます。
取引先に関連する商談レコードを作成不可にする
1. 事前準備
設定方法をご紹介していくにあたって、今回は「取引先」に以下のチェックボックス項目があるとし、「取引先」レコードの項目にチェックが入っている場合(= True である場合)に関連する「商談」レコードを作成不可とするように設定を行なっていくこととします。
オブジェクト:「取引先」項目:「商談レコード作成不可」(API参照名:Ban_CreateOppRecord__c)データ型:「チェックボックス」
2. 取引先に積み上げ集計項目を作成する
最初に「取引先」に関連する「商談」レコードの件数を表示する積み上げ集計項目を作成していきます。
積み上げ集計項目とはSalesforce内の関連するレコードからデータを集計しその結果を表示する項目で、関連するレコードの数を集計したり、レコード中の項目の合計、最小値、または最大値を計算したりすることが可能となります。
[設定] > [オブジェクトマネージャー] > [取引先] を選択し、画像①の画面のように[項目とリレーション]を選択、画面右上にある[新規]をクリックします。

① データ型の選択
クリックすると、データ型の選択画面に移動するので、画像②のように[積み上げ集計]を選択し[次へ]をクリックします。

② 詳細を入力
次の詳細を入力する画面では、画像③のように任意の[項目の表示ラベル]と[項目名]を入力し[次へ]をクリックします。

③ 集計の定義
ここでは集計項目の集計対象や方法を定義します。画像④のように[集計対象オブジェクト]は「商談」を選択し、[積み上げ種別]は「件数」、[検索条件]は「すべてのレコードを計算に含める」として[次へ]をクリックします。

④ 項目レベルセキュリティの設定 ・ページレイアウトへの追加
画像⑤のステップ4については特に設定を行わず[次へ]をクリックし、画像⑥のステップ5も同様に[保存]をクリックします。


以上で積み上げ集計項目の作成は完了です。次に作成する入力規則で使用するので、項目のAPI参照名をメモしておきます。
なお、項目について画像⑦のレコードで確認すると以下の画像⑧のように表示されます。


3. 取引先に入力規則を作成する
次に「取引先」に入力規則を作成していきます。作成したい入力規則は、1. でお伝えした「商談レコード作成不可」項目にチェックが入っている場合に関連する「商談」レコードを作成しようとした時、エラーになる入力規則です。以下で作成手順をご紹介していきます。
[設定] > [オブジェクトマネージャー] > [取引先] を選択し、画像①の画面のように[入力規則]を選択、画面右上にある[新規]をクリックします。

① ルール名を入力
入力規則の編集画面が表示されたら、画像②のように任意の[ルール名]を英数字のみで入力し、[有効]にチェックがついていることを確認します。

② エラー条件数式の入力
次に[エラー条件数式]の入力欄へ以下の数式を入力します。入力後、画像③のように入力欄の下の[構文を確認]ボタンを押してエラーがないことを確認します。
数式:
AND( Ban_CreateOppRecord__c = TRUE, ISCHANGED(Number_OppRecords__c) )
数式の解説:
Ban_CreateOppRecord__c は 「商談レコード作成不可」のAPI参照名、Number_OppRecords__c は 2.で作成した積み上げ集計項目のAPI参照名です。 この数式はチェックボックス項目である「商談レコード作成不可」にチェックが入っている(= True である)場合、かつ、積み上げ集計項目の値が変更された場合に True となり、エラーとなります。 つまり、「商談レコード作成不可」にチェックが入っている時に、関連する「商談」レコードの件数を表示する積み上げ集計項目の値を変更(= 「商談」レコードを新規作成)しようとすると、エラーとなり「商談」レコードが作成できなくなるように設定されます。

③ エラーメッセージの入力
②で入力した数式の結果がTrueになり、「商談」レコードの作成に失敗した場合のエラーメッセージを[エラーメッセージ]へ入力します。今回は画像④のように設定しました。次に、[エラー表示場所]については表示場所の設定は行えないのでデフォルトのままとしておきます。エラーメッセージは「取引先」上ではなく「商談」レコードの作成画面で画像⑤の赤枠内のように表示されるためです。


ここまでの設定を終えたら[保存]をクリックし、以上で取引先に関連する商談レコードを作成不可にする入力規則の作成は完了です。
まとめ
今回は積み上げ集計項目と入力規則を活用し、取引先に関連する商談レコードを作成不可にする方法をご紹介しました。
積み上げ集計項目を使用する際にはSalesforceのHelpにあるように様々な制限事項が存在するので作成には考慮が必要ですが、今回ご紹介したような入力規則にも利用可能な便利な項目となります。
Salesforceに関するお悩みはありませんか?
今回ご紹介した入力規則をはじめとするSalesforceの機能活用について、
「調べるのに時間がかかる...」
「作ったはいいがバグが起こらないか心配...」
「Salesforceを活用したいけどそこまで手が回らない...」
などお悩み事はありませんか?
Air合同会社ではSalesforceエンジニアを一人雇うほどの業務は無いが、業務を任せたいというお客様へ月 数時間~40時間で柔軟にご利用頂けるSalesforce活用支援サービスを提供しています。
機能の実装や改善のご提案、社内での内製化支援まで、貴社のSalesforceのお悩みを解決いたします。Salesforceをより活用し課題解決を行なっていくための手段としてぜひご検討ください。
Salesforce業務を他社に外注するイメージがわかない…という方に向け、外注する際のメリット・デメリットやSalesforce開発の流れを以下の記事で解説しています。ぜひご覧ください。(自社サイトへ移動します。)
Salesforce運用保守を外注するメリット・デメリットとは?
Salesforceのノーコード・ローコード開発の流れを解説!
また、弊社では「サービスについて簡単に知りたい」「Salesforceの使い方について相談したい」などSalesforceに関する無料相談会も随時実施しています。まずはお気軽にお問い合わせください。
↓関連記事
↓サービスの資料請求はこちらからお申し込みいただけます。
↓無料相談はこちらからお申し込みいただけます。
この記事を書いた人
Suzuki
Salesforceの認定資格「Salesforce認定アドミニストレーター」を保有しています。 IT業務経験ゼロからSalesforceに関する実務に携わってきた経験をもとに、初心者の目線に立って各種機能の活用方法や設定手順をステップバイステップでわかりやすくご紹介します。