見出し画像

Salesforce: リードに紐づく活動の内、初めて作成した活動のみレポートで表示する方法



はじめに

こんにちは。
今回は、「リード」に紐づく「活動」の内、初めて作成した「活動」レコードのみレポートで表示する方法についてご紹介します。
具体的には「活動」にチェックボックス項目を作成し、初めて作成した「活動」レコードのその項目へフローによってチェックを付ける処理を行うことでレポートへの表示が可能となります。

では設定方法をご紹介していきます。

リードに紐づく活動の内、初めて作成した活動のみレポートで表示する

設定方法をご紹介していくにあたって、今回は「リード」に紐づく「活動」の内、初めて作成した「ToDo」レコードのみレポートで表示する設定を行っていくこととします。

1. 活動にチェックボックス項目を作成する

「活動」に以下のチェックボックス項目を作成します。「活動」に項目を作成する事で「ToDo」でその項目を使用する事が可能です。

オブジェクト: 「活動」
項目: 「初作成」  (FirstCreation__c)
データ型: 「チェックボックス」

2. フローを作成する

初めて作成した「ToDo」レコードの 1. で作成した「初作成」項目へチェックを付ける(= True に更新する)フローを作成していきます。

① レコードトリガーフローの作成を開始する

レコードトリガーフローでフローを作成していきます。[設定] > [フロー] > [新規フロー] を選択し、画像①の画面で[レコードトリガーフロー]を選択し[作成]をクリックします。

画像①

② フローの開始要素を設定する

[作成]をクリックすると、フローの開始要素の設定画面が画像②のように画面右側に表示されます。ここでは、「リード」に紐づく「ToDo」が作成された時にフローが起動されるように以下の設定を行います。

オブジェクト: ToDo
フローをトリガーする条件: レコードが作成された
条件の要件
すべての条件に一致(AND) ⇨ これによって、「リード」に紐づく「ToDo」が作成された時のみフローが起動します。
 [項目] WhoId [演算子] null  [値] {!$GlobalConstant.False}
 [項目] WhoId [演算子] 次の文字列で始まる  [値] 00Q
更新されたレコードでフローを実行するタイミング: 条件の要件に一致するようにレコードを更新したときのみ
フローを最適化: アクションと関連レコード

* "WhoId" について
"WhoId" は「ToDo」の「名前ID」項目のAPI参照名であり、「ToDo」に関連付けられている「取引先責任者」または「リード」のIDが含まれます。

* 設定した条件について
上記の1行目の条件によって、「名前」項目が入力されている場合にフローが起動しますが、「取引先責任者」が入力されている場合もフローが起動してしまいます。そこで、上記の2行目の条件によって「リード」が入力されている場合のみ、フローが起動されるように設定しています。

Salesforceでは各オブジェクトのレコードIDの最初の3文字は固定されており(「リード」の場合は"00Q")、その事を利用して条件を作成しています。なお、各オブジェクトのレコードIDの最初の3文字の一覧は、Salesforceによって推奨されているこちらのサイトから確認する事が可能です。

画像②

③ トリガーレコードと名前IDが一致するToDoレコードを取得する

トリガーレコードが「リード」に紐づく初めての「ToDo」レコードなのかを今後のフローで判断するために、トリガーレコードと「名前ID」項目が一致する「ToDo」レコードの取得を行います。

②で設定した開始要素の下にある[ + ]をクリックし、画像③のように[レコードの取得]を選択します。

画像③

その後表示される画像④の設定画面では以下の設定を行います。

オブジェクト: ToDo
表示ラベル: 名前IDが一致するToDoレコード取得 (任意)
API参照名: Get_ToDoRecords_WhoIdMatch (任意)
ToDoレコードを絞り込み
すべての条件に一致(AND)
[項目]Id [演算子]次の文字列と一致しない [値]{!$Record.Id} 
⇨ トリガーレコード以外の「ToDo」レコードを取得します
[項目]WhoId [演算子]次の文字列と一致する [値]{!$Record.WhoId}
⇨ トリガーレコードと「名前ID」項目が一致する「ToDo」レコードの取得を行います
ToDoレコードを並び替え: 並び替えなし
保存するレコード数: すべてのレコード
レコードデータの保存方法: すべての項目を自動的に保存

画像④

④ 取得したレコードの件数を変数に割り当てる

③で取得したレコードの件数を変数に割り当てます。③で設定した[レコードを取得]要素の下にある[ + ]をクリックし、画像⑤のように[割り当て]を選択します。

画像⑤

画面が表示されたら[変数値を設定]の[変数を検索...]ボックスをクリックし、表示される[ + 新規リソース]をクリックし変数を作成します。画像⑥の画面が表示されるので、以下のように入力を行い[完了]をクリックします。

リソース種別: 変数
API参照名: Var_RecordCount (任意)
データ型: 数値
小数点の位置: 0
デフォルト値: 0

画像⑥

変数を作成したら、[割り当て]の設定画面では画像⑦のように以下の設定を行います。

表示ラベル: 取得したレコード件数を変数に割り当て (任意)
API参照名: SetVar_RecordCount (任意)
変数値を設定
[変数] {!Var_RecordCount} [演算子] 次の数と一致する 
[値] {!Get_ToDoRecords_WhoIdMatch}
(③の[レコードを取得]で作成されたレコードコレクション変数)
⇨ 先ほど作成した変数{!Var_RecordCount}に③で取得したレコードの件数を保存します。

⑤ 取得したレコードの件数によって処理を分岐する

④の設定によって、変数には③で取得したレコードの件数が保存されました。

この変数が0の場合(トリガーレコードが「リード」に紐づく初めての「ToDo」レコードである場合)に「初作成」項目をTrueとしたいので、その場合と変数が1以上の場合(トリガーレコードが「リード」に紐づく初めての「ToDo」レコードでない場合)に分けて処理を行えるように設定していきます。これには、[決定]というフロー要素を使用します。

④で設定した[割り当て]要素の下にある[ + ]をクリックし、画像⑦のように[決定]を選択します。

画像⑦

その後表示される画像⑧の設定画面では、初めに任意の[表示ラベル]と[API参照名]を入力します。

画像⑧

次にトリガーレコードが「リード」に紐づく初めての「ToDo」レコードである場合の設定を行います。画像⑨のように[結果]の[新しい結果]タブで以下のように設定を行います。

表示ラベル: レコード件数が0の場合 (任意)
API参照名: RecordCount_0 (任意)
結果を実行する条件の要件
すべての条件に一致(AND)
[リソース]{!Var_RecordCount} [演算子]次の文字列と一致する [値]0

画像⑨

次にトリガーレコードが「リード」に紐づく初めての「ToDo」レコードでない場合の設定を行います。画像⑩のように[結果]の[デフォルトの結果]タブで表示ラベルを分かりやすい名前とし、[完了]をクリックします。

画像⑩

⑥ チェックボックス項目をTrueに更新する

⑤で設定したレコード件数が0の場合の分岐にて、1. で作成したチェックボックス項目「初作成」をTrueに更新します。⑤で設定した[決定]要素の結果「レコード件数が0の場合」の下にある[ + ]をクリックし、画像⑪のように[レコードを更新]を選択します。

画像⑪

その後表示される画像⑫の画面では、以下のように値を入力します。

表示ラベル: チェックボックス項目をTrueに更新する (任意)
API参照名: UpdateCheckbox_True (任意)
更新するレコードを検索してその値を設定する方法
フローをトリガーした ToDo レコードを使用
レコード を更新する条件の要件: なし ー 常にレコードを更新
ToDo の項目値を レコード に設定(項目 ← 値):
FirstCreation__c ← {!$GlobalConstant.True}

画像⑫

以上でトリガーレコードが「リード」に紐づく初めての「ToDo」レコードである場合に、1. で作成したチェックボックス項目「初作成」をTrueに更新するフローの作成は完了です。[保存] をクリックして、[有効化] をクリックします。

3. 作成したフローを確認する

作成したフローによって、トリガーレコードが「リード」に紐づく初めての「ToDo」レコードである場合に、1. で作成したチェックボックス項目「初作成」がTrueに更新されるかを確認していきます。

確認のため、画像①の「リード」レコードを使用します。

画像①

画像①の「リード」レコードに関連する「ToDo」レコードを画像②のように作成します。[保存]ボタンを押し、レコードを見ると画像③のように「初作成」項目がTrueに更新されていることが確認できました。

画像②
画像③

4. レポートを作成する

最後に、「リード」に紐づく初めて作成した「ToDo」レコードのみレポートで表示する設定を行っていきます。

画像①のように[レポート]へ移動し[新規レポート]をクリックすると画像②の画面が表示されます。[カテゴリ]の「活動」を選択後、「ToDoと行動」レポートタイプを選択し、[レポートの開始]をクリックします。

画像①
画像②

[レポートの開始]をクリックすると新規レポートが作成され、画像③のようにレポートの編集画面へ移動します。
「リード」に紐づく初めて作成した「ToDo」レコードのみを表示するために、レポートの列に「初作成」項目を追加していきます。画面左側の[アウトライン]タブの[列]にて[列を追加...]と表示されている検索窓をクリックし、「初作成」項目を選択すると画像④のように列に項目が追加されます。

画像③
画像④

次に画面左側のタブを画像⑤のように[検索条件]タブに切り替え、「リード」に紐づく初めて作成した「ToDo」レコードのみ表示するよう以下のように設定を行います。

表示:すべての活動(任意)
日付:常時(任意)
表示:活動予定(任意)
表示:「ToDo」
初作成
[項目] 初作成 [初作成] True

画像⑤

以上で「初作成」項目がTrueであるレコードのみがレポートに表示され、関連する「活動」のレコード件数が0件である「リード」レコードを表示するレポートが作成できました。画面右上の[保存 & 実行]をクリックします。

まとめ

今回はフローとレポートを使用して、リードに紐づく活動の内、初めて作成した活動のみレポートで表示する方法をご紹介しました。
初めて作成された活動レコードを追跡することで、リードが最初にどのようにして生成されたか(例えば、特定のマーケティングキャンペーンやイベントを通じて)など、事業活動に役立つ情報を得ることが期待できます。

Salesforceに関するお悩みはありませんか?

今回ご紹介したフローやレポートをはじめとするSalesforceの機能活用について、

「調べるのに時間がかかる...」
「作ったはいいがバグが起こらないか心配...」
「Salesforceを活用したいけどそこまで手が回らない...」

などお悩み事はありませんか?

Air合同会社ではSalesforceエンジニアを一人雇うほどの業務は無いが、業務を任せたいというお客様へ月 数時間~40時間で柔軟にご利用頂けるSalesforce活用支援サービスを提供しています。
機能の実装や改善のご提案、社内での内製化支援まで、貴社のSalesforceのお悩みを解決いたします。Salesforceをより活用し課題解決を行なっていくための手段としてぜひご検討ください。

Salesforce業務を他社に外注するイメージがわかない…という方に向け、外注する際のメリット・デメリットやSalesforce開発の流れを以下の記事で解説しています。ぜひご覧ください。(自社サイトへ移動します。)
Salesforce運用保守を外注するメリット・デメリットとは?
Salesforceのノーコード・ローコード開発の流れを解説!

また、弊社では「サービスについて簡単に知りたい」「Salesforceの使い方について相談したい」などSalesforceに関する無料相談会も随時実施しています。まずはお気軽にお問い合わせください。

↓関連記事

↓サービスの資料請求はこちらからお申し込みいただけます。

↓無料相談はこちらからお申し込みいただけます。


この記事を書いた人
Suzuki

Salesforceの認定資格「Salesforce認定アドミニストレーター」を保有しています。 IT業務経験ゼロからSalesforceに関する実務に携わってきた経験をもとに、初心者の目線に立って各種機能の活用方法や設定手順をステップバイステップでわかりやすくご紹介します。

この記事が気に入ったらサポートをしてみませんか?