※こちらは過去に公開していたブログからの移行記事です。
やりたいこと商談金額を、フェーズが進行する段階ごとに積み上げて計算した結果をレポートで見たい。
例えば、次のフェーズ値で管理している場合、
見込み
評価
提案
契約締結中
商談成立金額をフェーズごとに足していった累計を表示したい。
見込み
見込み+評価
見込み+評価+提案
見込み+評価+提案+契約締結中
見込み+評価+提案+契約締結中+商談成立対処法
前の列または行の値を参照する関数「PREVGROUPVAL」を使用します。
◇ Salesforce >Trailblazer community > ヘルプ > PARENTGROUPVAL および PREVGROUPVALPREVGROUPVAL(summary_field, grouping_level [, increment])
summary_field にはグループ化された行または列の名前、grouping_level には以前のグルーピングの集計値が使用される同位レベルグループの API 参照名、increment には以前のグルーピングの数を指定します。
複数のグルーピングレベルを持つレポートでは、grouping_level を数式表示レベルと同じか上位のグループレベルに指定できます。
ちょっとわかりづらいですね。今回はこう考えていいと思います。
summary_field・・・参照したいグルーピング(行または列)
grouping_level ・・・積み上げていきたいグルーピング(行または列)
increment ・・・積み上げたいグルーピングの数
※incrementは、デフォルト(数値を指定しない状態で)で1つ前を参照します。
設定方法
1.新規レポートを作成します。
(レポートタイプ:商談)
2.画面左のアウトラインタブで「列」に[商談 所有者][フェーズ][金額]のみを残し、他は削除します。
3.[商談 所有者]で行を、[フェーズ]で列をグループ化します。
4.[金額]の合計値で集計します。
5.レコード件数の表示は不要なので、レポート下部の【行数】ボタンのチェックを外します。
6.集計項目「累計」を設定します。
画面左のアウトラインタブで「列」横の▼をクリックし、「集計項目を追加」を選択します。
7.「集計レベルの数式列を編集」画面が開きます。
「列の名前」と「説明」を入力します。
「数式出力種別」は「通貨」、「少数点」は「0」にしておきます。
8.「全般」のタブをクリックし、左の「項目」から「#金額(AMOUNT)」「フェーズ(STAGE_NAME)」を、「関数」から「IF」「PREVGROUPVAL」を挿入して、数式を入力します。
数式は以下の通りとなります。
AMOUNT:SUM
+IF (ISNULL (PREVGROUPVAL(AMOUNT:SUM, STAGE_NAME)), 0, PREVGROUPVAL(AMOUNT:SUM, STAGE_NAME))
+IF (ISNULL (PREVGROUPVAL(AMOUNT:SUM, STAGE_NAME, 2)), 0, PREVGROUPVAL(AMOUNT:SUM, STAGE_NAME, 2))
+IF (ISNULL (PREVGROUPVAL(AMOUNT:SUM, STAGE_NAME, 3)), 0, PREVGROUPVAL(AMOUNT:SUM, STAGE_NAME, 3))
+IF (ISNULL (PREVGROUPVAL(AMOUNT:SUM, STAGE_NAME, 4)), 0, PREVGROUPVAL(AMOUNT:SUM, STAGE_NAME, 4))引数はつぎのとおりです。
第1引数・・・集計項目(AMOUNT:SUM)
第2引数・・・グルーピングレベル(STAGE_NAME)
第3引数・・・増分値(,2,3,4 フェーズは5つあるので4つ前まで参照するよう設定)
なお、前のグルーピングがない場合は Null値が返されるため、IFを使い、戻り値が Nullになるときは 0にするようにしています。
9.「表示」のタブをクリックし、数式を適用するグループを指定します。今回は「特定のグループ」で行を「商談所有者」列を「フェーズ」と指定しています。
10.「全般」のタブに戻って、「検証」をクリックして「有効」となることを確認したら、画面右下の「適用」をクリックします。
11.「保存&実行」をクリックして、レポートを確認します。
できました!
※「詳細行」を非表示にしました。