承認プロセスはSalesforceに古くから存在する、ある意味完成された機能です。
Salesforceの中で簡易的なワークフローを実現できるので、非常に強力なのですが、古くからあるがゆえに設定画面のUIや、設定と挙動のつながりがイマイチわかりづらいのがネックです。
この記事では、承認プロセスの利用イメージから、設定画面全体の手順のイメージを図で示しながら、実際の設定方法も詳しく解説します。
これから承認プロセスを初めて使う方にも、これまでなんとなく使っていた方にもスッキリとご理解いただけるよう徹底解説していきますので、ぜひお楽しみください。
承認プロセスとは
承認プロセスとは、「承認申請」を「承認する」というプロセスをSalesforce上で表現することで、社内の手続きを自動化できる機能です。
つまり、課長にハンコをもらって、部長にハンコをもらって、最後に法務にハンコをもらって…というプロセスをSalesforce上で実現します。
ユーザーがシステム内で申請を行うと、設定された承認ルートに従って自動的に適切な承認者に通知が送られます。
申請の承認状況はリアルタイムで追跡でき、承認や却下の際に特定のアクションを自動で実行する機能も備えています。
これにより、申請プロセスが可視化され、迅速な対応が可能となり、企業のガバナンス強化にも寄与します。
以下は承認プロセスの全体の流れを示した図です。
図について補足します。レコードロックとは、承認申請した後でレコードが編集されてしまっては、承認の意味をなさなくなりますので、承認申請中はレコードを編集できないようにロックする機能です。
申請者がおこなった承認依頼は、メールやスラック、chatterで承認者に通知され、各ツール上から(メールだったらメール上から)承認できます。
承認プロセスは複数段階の承認や条件分岐が可能で、課長の次は部長、であったり、値引きの金額が100万円以上だったら社長決裁、などのシナリオが実現できます。
実画面上での承認プロセス
それでは実際の画面で承認プロセスがどのように表現されているのかを確認し、さらにイメージを深めていきます。
以下は承認申請ボタンです。
申請後は未承認申請というコンポーネントがあるので、承認者が未承認の申請を一元管理できます。
以下は承認者が承認or却下をおこなう固有の画面です。
承認や却下時にコメントを戻すことも可能です。特に却下時に却下理由を書いて戻す使い方をします。
承認プロセスの設定方法
承認プロセスの設定画面は、大きく2つの要素に分類することが出来ます。下図①の承認プロセス自体を定義する設定と、②の承認ステップやアクションなど、具体的なカスタマイズ設定の2つです。この2つの要素をセットで両方設定することで、承認プロセスを実際に使うことが出来ます。
承認プロセスの設定画面はかなり細かく、UIがわかりづらいため、何かを変えたいときにこの図をイメージして頂けると、考えを整理しやすいと思います。
設定方法①:承認プロセス自体を定義する
設定画面左サイドメニューの上部検索窓に「承認」と入力し、サイドメニューから承認プロセスを選択します。
下図の画面が開きますので、まずは「承認プロセスを管理するオブジェクト」から、承認申請に使用したいオブジェクトを選びます。
レコードを編集して、その状態が承認してもらえるかどうかを承認プロセスで申請するわけですから、確認してもらいたいレコードが属するオブジェクトが「承認プロセスを管理するオブジェクト」に入るということです。
下図では、私が独自に作成したカスタムオブジェクトである値引申請オブジェクトを例として使用していますが、実際には商談や見積オブジェクトなど、必要に応じて選択します。
次に「承認プロセスの新規作成」ボタンを押し、「標準ウィザードを使用」を選択します。
まず、プロセスの名称と、一意の名前を入れます。
ステップ2は承認プロセスの開始条件です。開始要件を満たしていない状態で承認申請ボタンを押すとエラー⽂が表⽰されます。これにより、申請者側の初歩的なミスを承認者が差し戻す、という無駄な確認作業を軽減できます。
サンプルとして、以下のように条件設定しました。入力条件の設定は、下図の「条件が一致する」と表示されているプルダウンを変更して、数式を条件にすることも可能です。
ステップ3は、自動的に承認者を割り当てるための「自動承認ルートに使用する項目の選択」と、レコードロック中にだれがレコードの編集を出来るのかを定義する「編集権限のプロパティ」を設定します。
「自動承認ルートに使用する項目の選択」がわかりづらいので補足します。ユーザーオブジェクトには、下図のように、マネージャーを設定しておく項目(下段の赤枠)があります。
そのほかに、下図の上段の赤枠のように、カスタム項目で承認プロセス上の上位のユーザーを設定しておくことが出来ます。
この設定をしておくことで、後から承認ステップやアクションを定義する時に、自動的に承認者を割り当てることが出来るようになります。この機能がなぜ存在するのかというと、もしユーザーレコードのマネージャー項目が空欄だったとしたら、「この申請者の承認者はこの人ですよ」というロジックを表現するときに、個別のパターン分設定が必要になってしまうからです。
※事前にマネージャー項目にデータを入れておく必要はあります。
ステップ4では、承認申請が割り当てられたことを承認者に通知する場合に使用するメールテンプレートを選択します。このテンプレートは、このプロセスのすべてのステップで使用されます。
ステップ5は、承認ページのレイアウトなどの設定になります。
承認者が承認可否を検討するために必要な情報を提供するために、冒頭で選択したオブジェクトの項目を選択します。
仮に何度も却下が発生するようなプロセスの場合は、承認履歴情報を表示するかどうかもオプションで選択できます。
ここで選択した項目は、承認者が承認or却下ボタンを押す、下図の画面に表示されます。
ステップ6は、承認申請を上げられる人を選択します。通常はレコードの所有者が申請します。承認申請の取り下げを許可するかどうかもここから選択できます。設定出来たら、保存ボタンを押します。
保存ボタンを押すと、以下の画面が表示されます。そのまま続けて承認ステップやアクションの設定にも入ることが出来ますが、ここまでの設定だけでも結構ボリュームがあったので、休憩を入れるためにも「後で作成します。このオブジェクトの承認プロセス一覧に戻ります。」を選択し、「GO!」します。
設定方法②:承認ステップやアクションを定義する
下図は承認プロセスのTOP画面です。これから、具体的に承認ステップやアクションを設定していく段階に入ります。
先ほど作成した承認プロセスの「承認プロセス名」を押します。
以下の通り、画面上部には先ほど設定した承認プロセス自体の定義内容が表示されます。プロセス名や開始条件、承認の割当先として使うユーザー項目などがきちんと表示されていることが確認できます。
これから、承認プロセス自体の定義内容より下の領域の、「申請時のアクション」以降の部分を設定します。「新規承認ステップ」を押します。
ステップ1では、承認ステップの名称と、一意の名前をつけます。
ステップ2では、どんなレコードがこの承認ステップに入るのかを定義します。ここでは「すべてのレコードがこのステップに入ります。」を選択します。
なおもう一つの選択肢として、「次の場合にこのステップに入り、それ以外の場合にレコードを承認か却下」を選ぶことが出来ます。特定の条件だったら自動で承認か却下、という設定が出来るということになります。
ステップ3では、承認申請が誰に飛ぶのかを定義します。ここでは先ほど「設定方法①:承認プロセス自体を定義する」側で設定したユーザーオブジェクトのマネージャー項目を使用することを選択します。こうすることで、承認設定上でいちいち設定しなくても、ユーザーオブジェクト側で持っているマネージャーに自動的に承認申請が飛ぶ形になります。
なお、ここではユーザーオブジェクトの参照項目を使用しなくても「自動的に承認者に割り当てる」を選んで個別に承認者を割り当てることも可能です。その場合は直接ユーザーを指定する形になり、一人でも複数人でも下図のページから指定できます。
複数人を指名で指定する場合には以下のように行を追加して設定します。このとき、だれか一人でも承認したら承認とみなすのか、全員の承認が必要なのかを選択することも可能です。保存すれば、承認ステップの完成です。
二段階承認したい場合
もし二段階の承認にしたい場合は、もう一つ承認ステップを追加します。
順番を2にすれば、先ほど作成した承認ステップが承認されたら、次にこのステップに入ることになります。
「すべてのレコードがこのステップに入ります」を選択すると、1人目の承認者が承認した後に確実にこのプロセスに入ります。「次の場合に、このステップに入ります」を選択して、このステップに入らなかったら、1人目の承認が最終承認として扱われます。
1つ目の承認ステップはマネージャーにして、二段階目は必ず契約担当者や社長など特定の人にしたい、という場合には、ユーザーオブジェクトのマネージャー項目を更新しなくても、下図の「自動的に承認者を割り当てる」で直接設定できます。
まとめ
承認プロセス機能について詳しく解説しました。承認プロセス自体は長らく機能の更新が無いのですが、フローで起動したり、Slackで承認できるなど、周辺の機能が進化していることで、Salesforceの主要な機能であり続けています。ぜひ使いこなしていきましょう。