Enterprise Apps Now

-社内で調査した国内外のエンタープライズアプリやサービスを随時ご紹介-

produced by

Salesforce1 Lightning Process Builderを使ってオフィス退出時チェックアプリを作る

https://i.gyazo.com/8caca00735efd55b376c4484979ef91b.png

弊社(株式会社co-meeting)は2月から新しいオフィスに移りました。単独でオフィスを構えるのは初めてのことです。Googleマップでco-meetingで検索すれば場所も表示されますので、お気軽にお立ち寄りください。

さて、オフィスを持てば当たり前のことなのですが、シェアオフィスやコワーキングスペースとは違い、入退出時にお掃除や戸締り等の「ちょっとしたお仕事」が発生します。

で、やはりというかなんというか、ちょこちょこと忘れます。さすがに入口の鍵のかけ忘れとかはないのですが、ベランダの鍵をかけ忘れたり、キッチン(マンションタイプなのでキッチンもついている)の窓を開けっ放しにしたりとかしていたらお叱りを受けまして。。。

そこで、戸締りを忘れることのないように、せっかくSalesforceを導入しているのでSalesforce上で戸締りチェック用のフォームを作ってみました。結構便利です。

作成したオブジェクトはこんな感じですね。

https://i.gyazo.com/ee274950c02466f7f67281700054cda5.png

入力画面(PC) ※PCからはほとんど使いません

https://i.gyazo.com/595d45b5b444b874e443ad44495aa409.png

Salesforce1アプリでの入力画面 ※普段使うのはこれ

f:id:yanotaka:20150326232855p:plain

このフォームの機能は、オフィスの最終退出者がやらなければいけないことを画面を見ながらチェックして記録するだけの単純なものです。何も特別な機能はありません。

ただ、せっかく作るのにただのチェックリストだけに使うのはもったいないので、メンバーへの最終退出連絡とその日に行ったオフィス関連の伝達事項(「コーヒーやお茶を買ったよ」とかです)を伝える役割を与えようと考えました。

そこで、Chatterへの投稿の自動化も可能と聞く「Salesforce1 Lightning Process Builder(以下、Lightningプロセスビルダー)」をせっかくなので利用して、退出連絡とメモをChatterに投稿されるようにすることにしました。

ちなみに、Chatterへの投稿と登録されたデータはこの通り

https://i.gyazo.com/9dd90c180ddb68b0feeb7fb0ba1f9222.png

あまりきれいな投稿ではないですが、ちゃんと伝わるので便利です

Lightningプロセスビルダーは、3月頭にリリースしたばかりのSpring '15から使えるようになった「Salesforce1 Lightning Builder」のひとつで、比較的複雑なビジネスプロセスをわかりやすいGUIを操作するだけで実現できます。

従来から提供されているワークフローと機能や用途は被るのですが、できることの幅が広がっている他、プロセスビルダーの方が分かりやすさや、作成者以外が参照する際の視認性も高いですね。

作成手順

ざっと作ってみましたが、非常に容易です。

まず、[設定]→[ビルド]→[作成]→[ワークフローと承認申請]→[プロセスビルダー]と辿っていくと起動します。

https://i.gyazo.com/117315dd76248fdf4c37bbadebaf4ffc.png

すると、プロセスビルダーが開くので、右上の「新規」をクリックします。

https://i.gyazo.com/d3a9b00feca6ceabfbc7bc66fc10a629.png

プロセスのプロパティに必要事項を入力すると、プロセスの設定画面に遷移します。

https://i.gyazo.com/ecbf9e4e1673f399780e22ecdafee27c.png

何を埋めれば動くのかが想像しやすい画面で好感が持てます。今回作成したプロセスは単純でしたが、対してドキュメントを読まずに作ることができました。

あとは、上から順に設定していくだけです。まず、プロセスのトリガーとなるオブジェクトを選択し、開始条件を設定します。

レコードを作成したときだけなのか、レコードを編集したときも含めるのかを選択できます。これは既存の「ワークフロー」と同じです。

 

続いて条件ですが、今回の戸締りチェックの場合はレコードが作成されたら必ずChatterに投稿してほしいので、特に条件は必要ありません。

https://i.gyazo.com/b4140db3f300ae6449634d312016d442.png

適当に名前を付けて、「アクションを実行する条件がない」を選択すれば終了です。https://i.gyazo.com/bc9b651ae788a8897b74d1540c16734b.png

 最後にアクションを追加します。アクションには「ルール適用時のアクション」と「スケジュール済みアクション」の2種類があります。スケジュール済みアクションは数分後や数日後など、ルールが適用とアクションの実行にタイムラグを設けたいときに利用するイメージです。今回はすぐに実行してほしいので使いません。

アクションの種別はChatterへの投稿を含めて8種類ですね。Apexやフローを呼び出せるのでなんでもできそうです。https://i.gyazo.com/485917b48f263452486132f03aa2bf89.png

Chatterの投稿を選ぶと、投稿先をユーザー、グループ、レコードから選べます。この辺への考慮が必要になることが理由でこれまでワークフローには実装されなかったのかもしれません。https://i.gyazo.com/3e884f8920c889e1b3bb555c123f2630.png

投稿メッセージはメールテンプレート等の作成と同じ感覚で利用できます。https://i.gyazo.com/8ef9f074dcdc4f8c33a02c3934be7563.png

項目の挿入についても、オブジェクトのリレーションまで追っかけてGUI上でできますので、非常にラクで助かります。https://i.gyazo.com/8d03b77256042da40da257c2303465a4.png

これで終了です。右上の「有効化」ボタンをクリックすればプロセスが有効になります。

https://i.gyazo.com/18f31c3f297c7dd34bc04448aff30a64.png一度プロセスを有効にしてしまうと、修正する際には当該プロセスのバージョンとしてコピーした上で変更する必要があります。ちょっと面倒ですが、修正前に実行されたプロセスとの整合性を保つためにも必要なのだと思います。

まとめ

プロセスビルダーは非常に便利ですね。Chatterのメッセージを自由に整形できる機能だけでもかなりいろいろできます。レコードの更新メッセージを自由に整形してChatterに流せるだけでも嬉しい人は多いのではないでしょうか。

こと自社運用に関して言えば、今後はまずプロセスビルダーでできるかどうかを試し、それで難しいようであれば他の手段を検討する、といったステップになりそうです。

----