via pixabay.com
はじめに
「承認プロセスが大量にありすぎて、保守がすごい大変…」
そんな悩みをお持ちの開発者へ。実はSalesforceの標準機能だけで、柔軟な承認プロセスを実現できます!
そんな悩みをお持ちの開発者へ。実はSalesforceの標準機能だけで、柔軟な承認プロセスを実現できます!
先日、社内でこんな会話がありました。
「今承認プロセスの実装がすごい大変で... 特に営業部の承認プロセスは金額によって各支店毎に承認者が変わるんです。少額ならチームの課長、高額なら支店の営業管理部、さらに特別な案件なら役員… これをSalesforceで自動化したいんですが、承認プロセスを大量に用意することになってしまいそうで…」
「今承認プロセスの実装がすごい大変で... 特に営業部の承認プロセスは金額によって各支店毎に承認者が変わるんです。少額ならチームの課長、高額なら支店の営業管理部、さらに特別な案件なら役員… これをSalesforceで自動化したいんですが、承認プロセスを大量に用意することになってしまいそうで…」
条件に応じて承認先が変化する機能を標準機能だけで作ろうとすると難しく、結局全支店分作成してしまったり、承認ステップを増やしたりすることがあるかと思います。
そういった悩みを聞くことがよくあります。
そこで私は、標準の承認プロセスとフロー、そして公開グループを組み合わせた、Salesforce標準機能で実現する、夢の動的承認プロセスがあることを伝えたく今回はペンを握りました!
実装方法をステップ別で記載しているので、ぜひ参考にしてください。
そういった悩みを聞くことがよくあります。
そこで私は、標準の承認プロセスとフロー、そして公開グループを組み合わせた、Salesforce標準機能で実現する、夢の動的承認プロセスがあることを伝えたく今回はペンを握りました!
実装方法をステップ別で記載しているので、ぜひ参考にしてください。
実装のステップ
ステップ1:承認プロセスの土台を作る
まずは、標準の承認プロセスで基本的な流れを定義します。ここでは、承認者となる割り当て先を「手動で選択」といったように、役割ベースで設定しておきます。
まずは、標準の承認プロセスで基本的な流れを定義します。ここでは、承認者となる割り当て先を「手動で選択」といったように、役割ベースで設定しておきます。
ステップ2:公開グループで承認者をさらにスマートに
承認者といっても1ユーザーや1グループといったさまざまな承認プロセスがあるかと思います。
「でも、承認者の所属している支店の営業管理グループのメンバーって、どうやって特定するの?」
そんな疑問も、公開グループで解決!
部署ごとに公開グループを作成し、ユーザーを登録しておけば、申請者の情報から承認者となるグループを特定することもできます!
承認者といっても1ユーザーや1グループといったさまざまな承認プロセスがあるかと思います。
「でも、承認者の所属している支店の営業管理グループのメンバーって、どうやって特定するの?」
そんな疑問も、公開グループで解決!
部署ごとに公開グループを作成し、ユーザーを登録しておけば、申請者の情報から承認者となるグループを特定することもできます!
ステップ3:フローで承認者を動的に変える
次に、フローの登場です!申請金額や案件種別などの条件に応じて、承認者を動的に変更するロジックを組み込みます。
次に、フローの登場です!申請金額や案件種別などの条件に応じて、承認者を動的に変更するロジックを組み込みます。
ステップ3-1:変数の準備
フローの中で、申請金額や案件種別を格納する変数を用意します。
重要なのがコレクション変数(テキスト)で、後で承認者を決定する際に使用します。
フローの中で、申請金額や案件種別を格納する変数を用意します。
重要なのがコレクション変数(テキスト)で、後で承認者を決定する際に使用します。
ステップ3-2:フローで承認者を動的に変える
申請金額や案件種別などの条件に応じて、承認者を動的に変更するロジックを組み込みます。
処理条件は以下になります。
申請金額が1000円以上 かつ 報告対象が「True」なら、承認者は「役員」グループ
申請金額が500円以上なら、承認者は「営業管理部」グループ
上記に当てはまらない場合は、承認者が「課長」(マネージャー項目)の承認ステップを追加
申請金額や案件種別などの条件に応じて、承認者を動的に変更するロジックを組み込みます。
処理条件は以下になります。
申請金額が1000円以上 かつ 報告対象が「True」なら、承認者は「役員」グループ
申請金額が500円以上なら、承認者は「営業管理部」グループ
上記に当てはまらない場合は、承認者が「課長」(マネージャー項目)の承認ステップを追加
ステップ3-3:公開グループの割り当て
事前に作成した各部署に対応する公開グループの情報を取得します。
フローの中で、申請者の所属部署に基づいて、適切な公開グループを変数に割り当てるような処理がイメージできます。
事前に作成した各部署に対応する公開グループの情報を取得します。
フローの中で、申請者の所属部署に基づいて、適切な公開グループを変数に割り当てるような処理がイメージできます。
ステップ3-4:承認申請アクションの作成
承認プロセスが起動するようにアクションコンポーネントを配置します。
今回使用する承認プロセスは承認者を手動で割り当てる設定のため、フローでも変数を使用して直接承認者を設定します。
使用する変数は序盤に定義したテキストのコレクション変数です。
複数のIdが登録されている場合でも、全員を承認者とした公開グループを承認者として設定することができます。
承認プロセスが起動するようにアクションコンポーネントを配置します。
今回使用する承認プロセスは承認者を手動で割り当てる設定のため、フローでも変数を使用して直接承認者を設定します。
使用する変数は序盤に定義したテキストのコレクション変数です。
複数のIdが登録されている場合でも、全員を承認者とした公開グループを承認者として設定することができます。
ステップ4:実際の動き
実際にデータを準備して動きを見てみましょう。
各項目に応じて承認先が変わっているのが確認できますね!
実際にデータを準備して動きを見てみましょう。
各項目に応じて承認先が変わっているのが確認できますね!
ポイントは、すべて標準機能で実現できること!
Apexコードを書かなくても、クリック操作だけで、こんなにも柔軟な承認プロセスを構築できるなんて、驚きませんか?
各支店別で承認プロセスを作成するとなると、今後簡単な通知処理をいれてほしいとなっても非常にコストがかかりますが、この実装例のように承認プロセスを最低限で済むため簡単な処理の追加依頼も期間やコストをかけずに実装ができます!
「Salesforceって、こんなことできるんだ!」
そう実感した瞬間でした。
あなたも、標準機能の組み合わせを駆使して、夢の動的承認プロセスを実現してみませんか?
各支店別で承認プロセスを作成するとなると、今後簡単な通知処理をいれてほしいとなっても非常にコストがかかりますが、この実装例のように承認プロセスを最低限で済むため簡単な処理の追加依頼も期間やコストをかけずに実装ができます!
「Salesforceって、こんなことできるんだ!」
そう実感した瞬間でした。
あなたも、標準機能の組み合わせを駆使して、夢の動的承認プロセスを実現してみませんか?
28 件