フロー実例:イベントごとの定型タスクをカンタンに管理する「todoセット」
業務標準化が大好きなカミムラです。Salesforceの「フロー」機能はコードが書けない僕にとっては超便利。うちの業務はフローで自動化された処理が随所にあります。今日はその1つをご紹介。
イベントごとの定型タスク群を管理する
このフローの用途は、マーケティング部署でのセミナー・イベント運営。うちではセミナー・イベントを月に5-8本運営しています。1回1回の内容は異なりますが、行うべきタスク項目はだいたい一緒。1回につき16-20のタスクがあります。例えば以下のような感じ。
・会場の確保 (実施日の2ヶ月前までに)
・集客LPの作成 (実施日の1ヶ月前までに)
・講演資料の作成 (実施日の前日までに)
・アンケート作成 (実施日の前日までに)
・御礼メールの送信(実施日の翌日までに)
etc...
こうした業務を複数人で行うとき、誰がどのタスクを持っていて、それがどんな進捗かを可視化するのは大切。でも、これら1つ1つに期限・担当者をいちいち手入力していくのは大変。特に期限は開催日によって動的に変わるのでめんどくさい。めんどくさいと運営されなくなる。なのでフローでひと工夫。
動作デモ
まず、セミナー1回につきキャンペーンレコードを1つ作っておきます。ここに紐付ける形で16-20コのtodoを作成します。
LEX画面から2クリックだけです。
実際のキャンペーン画面
⇩右サイドバーから、todoセットを選んで「次へ」
⇩フローが起動して、、
⇩数秒で完了
⇩複数のTodoが、担当・期日と共に作成されます。
Todoのモニタリング
todo群を作成した後のモニタリングも大切。実行する側としても自分に割り当てられたタスクはどれで、それをいつまでにやらないといけないのか把握できる一覧画面は必要です。レポートで作ります。
キャンペーンに紐づくtodoを一覧化(期日でソートし・担当別に色分け)
LEXレポートなら、グラフをクリックするだけで絞り込みもカンタン。
(このアイデアは @DaisukeMAN さんのツイートから頂きました。感謝。)
これはセミナー・イベントの運営タスクですが、Salescloudの本来の使い方からすると、「商談」に対して営業が対処すべき定型todoとかでもいいですね。CSチームで受注後のオンボーディングtodoを入れたりとか。
Todo群の期日・担当変更もユーザ側で可能に
こういったフローを作るときの問題は、修正が大変なことです。例えば、あるタスクの期日を7日前から10日前に変えたいとか、タスクを1つ増やしたいとか、タスクの担当をAさんからBさんに変えたいとか。そんな変更は運用してたら頻繁に発生します。そのたびにアドミンがフローを修正するのはあまりにめんどくさい。なのでそのあたりもひと工夫。
自動生成されるtodoの内容を、フローにそのまま記述してしまうと上記の問題から逃れられません。なので、このフローは「見本にするキャンペーンレコードに紐付いているtodoを、日付を変えてコピーしてくる」という動作にしています。
これにより、ユーザ側だけで動作の修正ができます。見本のキャンペーンレコードにアクセスし、todoの担当や日付を変えると修正されます。todoセットのパターンを増減したいときも、「見本」の種類を増減させれば変更できます。フロー側は修正する必要なし。アドミンは運用中の修正に関与する必要がありません。
裏側のフロー設定方法
ここからは細かい動作を知りたい人だけ。裏側の設定内容です。
前述の動作や、修正のラクさを実現するために工夫したポイントは3点。
図:フローの全体像
ポイント1:todoの誤作成を防ぐ
一度todoが作成されると削除が大変です。なので、間違って作成されないようにいくつかのガードが張られています。よくあるであろう間違いの1つは「イベントの開始日を設定していない」状態でフローを起動させちゃうこと。
このフローは、キャンペーンの「開始日」を読み込んで、それによって期日を動的に変更します。セミナー開始日が4月20日だとして、あるtodoの期限が「開始日の7日前」だったら、todoの期限は自動的に4月13日に設定されます。
なので「開始日」が空欄だと正しく日付が生成されてくれないので、空欄の時はエラーにしています。あとはボタンを押す画面でも念のため開始日が正しいかリマインド表示をしています。(こういうの、たいてい背景化しちゃって抑止効果ないのですが)
図:一応、注意喚起をしておく
ポイント2:表示されるtodoセットの選択肢制御
上記のようにフローの入力画面には3つのtodoセットが表示されていますが、これは「見本となるキャンペーンレコード」を読み込んで表示させています。見本が増えればこれが4つになったり5つになったりします。どうやって表示させているのか?「レコード選択肢セット」を使います。
図:「見本」のキャンペーンを抽出し、入力画面の選択肢にする
今回であれば、キャンペーン名が"【MK_todoセット】"で始まるレコードを「見本」として抽出しています。これを増やしたり削除したりすればユーザ側で見本を修正できます。
ポイント3:todoの期日を動的に変更する
セミナー開始日によってtodoの期日を変更させるためにひと工夫しています。やりたい動作は以下の通りです。
【考え方】
見本のキャンペーンの開始日と、今回のキャンペーンの開始日の「日付差」だけ、生成するtodoの日付を、見本のtodoの日付から増減させる
例:
見本のキャンペーンの開始日 4月20日
todoAの期日 4月13日(開始日の7日前)
todoBの期日 4月21日(開始日の1日後)
⇩
今回のキャンペーンの開始日 5月20日(見本と比較すると+30日)
生成するtodoAの期日 5月13日(見本のtodoAから+30日)
生成するtodoBの期日 5月21日(見本のtodoBから+30日)
フロー上の設定は以下のような感じです。「日付差」を計算する変数を作っておいて、日付差だけ期日を増減させてからレコード生成させます。
図:「日付差」を計算する数式変数
図:レコード生成前の日付変更(割り当て)
フローで業務を標準化し、熟練者の時間を生み出す
フローはもともとウィザード形式での入力画面を作るためのものだそうですが、僕は「入力の省力化」に役立てるのが好きです。管理者としては正しくデータを入力してもらうことは重要なのですが、使う側としてはデータ入力がめんどくさいのもよくわかります。そのギャップにこういった自動化機能が役立ちます。
データが入力さえされていれば、その後の追跡はレポートやダッシュボードで簡単です。担当・期日ごとにソートしたりも自由自在。ユーザ側にいかにカンタンに入力してもらうかは大事な定着ポイントです。
こうして、20以上のタスクで構成される複雑な業務でもいくつかのtodoに分解することで1つ1つは引き継ぎ容易な業務になります。そうすることで業務に慣れていないジュニアメンバーでも対応できるようになり、非定型タスクが定型タスクになり、業務の「標準化」が進みます。
業務に慣れた熟練者の時間は貴重です。彼らが行っている業務をどんどん標準化してジュニアメンバーに渡し、熟練者の時間を空けます。その時間で、新しい業務を手がけてもらい、組織を発展させていきます。
少し大きめの組織になると、「標準化」の貢献度が大きくなってきます。Salesforceの自動化機能はこの分野で強い武器になると思っています!
おまけ:Salesforce MVP 小坂さんのフローレシピ集
最初から動くフローに触れ、コピーして修正する方法でフローに慣れることができます。フローの基礎は理解している方向け。
Lightning Flow Recipes
https://shunkosa.github.io/lightning-flow-recipes-jp/