ピヨピヨ奮闘記

Salesforce系のがんばる記録

参照関係の積み上げ集計(標準機能で作成)

Salesforce Platform Advent Calendar 2017

 

初めてのアドベントカレンダーです。

ノンプログラミングのフローの紹介をしたいと思います。

 

社内にadminが1人でSalesforce(以下、SF)を管理しており

開発ができないという会社様はわりと多いのではないでしょうか?

 

標準機能でも十分便利に利用できるSFですが、

ここ自動でできたら便利なのに…なんてこともわりとありますよね。

「フロー」を使って、コードを書かずに便利機能を作成してみましょう!

 

 私がはじめて「フロー」を使い始めたきっかけは

主従関係ではないオブジェクトの積み上げ集計を行う必要があったからです。

 

なので、今回は「フロー」で行う積み上げ集計の方法を説明しようと思います。

 

要件は下記の通り

 ◆「グループ」という商談オブジェクトの上位オブジェクトが存在する。

 ◆「グループ」ごとに、対象グループと参照関係にあるすべての

   商談に紐づく商談商品の売り上げ金額を集計する。

 

流れは下記の通り

① フローの起動

  (プロセスビルダーや、リンク等で起動可能。

   今回はプロセスビルダーを利用する。)

② グループの紐づく商談をすべて検索する。

③ 取得した商談のレコード数分のループを回す。

④ ループの中で商談の金額を1つずつ積み上げ集計していく。

⑤ 集計結果を、グループのレコードに更新。

 

①はフローが完成してから作成するので、まず②から。

 

※Lightning環境でのみ検証をしています。

※ロジックを簡単にするために、例外対応を含んでいません。

 

②対象の商談を検索

★複数レコードを検索する場合は、「高速検索」を利用します★

f:id:piyohanasan:20171203202122p:plain

画像が「高速検索」一部です。

商談オブジェクトの中から、指定したグループをすべて抽出します。

抽出した結果は、作成した変数(リスト)「TargetOpp」に格納されます。

格納される、項目は上記の画像の場合「Id」と「Amount」です。

項目を指定しないと格納されないので注意です。

 

 

③ ループの作成

先ほどの高速検索で取得したリストを、「ループ」により

1つずつ「TargetOppSingle」に格納します。

f:id:piyohanasan:20171203202830p:plain

 

④ 「金額」の積み上げ。

★積み上げや、マイナス、文章をつなぐなどは「割り当て」を利用★

ループの間、商談の金額を作成した変数「SumAmount」に

足し続けてくれます。

f:id:piyohanasan:20171203203522p:plain

 

⑤集計結果の更新

★1レコードのみの更新の場合は、「レコードの更新」を利用★

IDを指定して、積み上げした変数更新する。

f:id:piyohanasan:20171203204928p:plain

 

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

f:id:piyohanasan:20171203222445p:plain

 

最後に、このフローを呼び出すプロセスビルダーを作成したら完成します。

グループと関連する商談の金額の合計が、

グループを更新することで、表示されるようになりました。

 

f:id:piyohanasan:20171203222938p:plain

 

 

今回は全体の流れをさらっと見ていく感じだったので、

別の記事で、変数の種類や設定方法、各ロジックの使い方など

細かく紹介していきたいと思います。

 

こんな機能フローで作ってみたいなど!!

アイディア募集中です^^

 

こちらのブログはSalesforce Platform Advent Calendar 2017 - Qiitaの4日目の投稿になります。

qiita.com