2019.12.12 「Salesforce ビジネスプロセス自動化ツールを活用しよう(4) - Lightning フロー入門(その1:フローの概念を理解する)」
≪ 2019.12.6 「Salesforce ビジネスプロセス自動化ツールを活用しよう(3) - プロセスビルダーを活用して既存の承認プロセスも整理してみましょう」
2019.12.20 「年末年始弊社営業日のお知らせ & Salesforce ビジネスプロセス自動化ツールを活用しよう(5) - Lightning フロー入門(その2:ハンズオンを始める前に)」 ≫
お世話になっております。
ウフル カスタマーサポート Salesforce 担当の 後藤 でございます。
今年10月より Salesforce ライセンスのお客様に毎週「カスタマーサポート通信」 の形でニュースメールを配信させていただくようになり、 二ヶ月少々が経過しましたが、そもそもの目的が、「 Salesforce カスタマイズのアイデアを共有させていただくことで、 お客様により円滑に Salesforce をご利用いただき、活用度を上げていただく」というもので、 その動機となったのが、「Apex などのコードを記述しなくても、 かなり近いところまで実現できるツールがあり、 これを使用することで、誰でも Salesforce 開発者になることができる」ということでした。
そのツールこそが、今週から3回に分けてご案内させていただく「 Lightning フロー」です。
専任の開発者をアサインすることなく、従来 Apex トリガを使用しないと実現できなかった高度な自動化が、 御社組織でも手に入ります。これは大いなる福音です。
しばらく若干「濃度の高い」話が続きますが、 お付き合いいただけると幸いです。( 不明点は遠慮なくお問合せください!)
1.Lightning フローとは?
公式ヘルプから引用します。
「Lightning フロー」
============================== ============================== ===
Lightning フローは、2 つのポイント & クリック自動化ツール (プロセスビルダーと Flow Builder) を使用して、すべての Salesforce アプリケーション、環境、 ポータルに宣言型プロセスの自動化を提供します。
============================== ============================== ===
つまり、Lightning フローとは
- プロセスビルダー
- Flow Builder
から構成される自動化プロセス作成の枠組み、 ということになります。
プロセスビルダーについては、 先週と先々週にご説明をいたしましたが、元々は「 フローファミリー」には含まれておらず、従来「Visual Workflow」という名称の「高度な自動化ツール」を Flow Builder として体系変更した際に、プロセスビルダーも含めて「 フローファミリー」 として定義するようになったという事情があります。
そのため、今後本項にて「フロー」という呼び名は Flow Builder およびそれにより設定される自動化プロセスを指すものとします。
再び公式ヘルプから引用します。
「フロー」
===============================================================
フローは、Salesforce 組織または外部システム内でデータを収集し、 アクションを実行する Lightning フローの一部です。Lightning フローでは、画面フローと自動起動フローの 2 種類のフローが提供されます。
===============================================================
ここで重要なワードが出てきました。
「画面フローと自動起動フローの 2 種類のフロー」
今まで触れてきた自動化ツールは、 いずれも画面を持たないものでした。
- ワークフロールール
- 承認プロセス
- プロセスビルダー
これらはレコードを保存した際もしくは「承認申請」 ボタンを押した際に起動し、「条件に合致しているか」 のチェックを経て指定したアクションが実行されるもので、 起動からアクション完了まですべてバックグラウンドで実行されて いました。
「自動起動フロー」については、それらと同様に「 レコードを保存した際に自動で呼び出され、 バックグラウンドで処理される」なじみのある形態ですが、 もう一方の「画面フロー」については、 恐らく未知のものだと思われます。
再度公式ヘルプから引用します。
「フロー種別」
===============================================================
画面フロー
画面、ローカルアクション、ステップ、選択肢、 または動的選択肢が含まれるため、ユーザ操作が必要です。 画面フローでは、一時停止要素はサポートされていません。
===============================================================
「画面フロー」とは、 ユーザの手動操作から呼び出すタイプのフロー、つまり「 画面上のボタンを押したらポップアップが表示されて、[次へ] ボタンを押して画面を進め、処理が完了したら [完了] で画面を閉じる」という、今までは Apex および Vislaforce での開発をしないと実現できなかった、「いかにも作りこまれた」 自動化プロセスで、 これがコードを書かずに実現できるようになったのが、 Lightning フローの大きな利点、と言えます。
では、実際の Flow Builder 画面を通して、フローの構成要素を確認していきましょう。
2.フローの構成要素
こちらが Flow Builder の操作画面です。
左に要素パレット、右にキャンバスという構成になっています。
初期状態は「開始」のみがあり、 左側のパレットから要素をキャンバスにドロップし、 要素同士をドラッグで連結してフローチャートを作っていきます。
要素パレットを見ると、「割り当て」「決定」「ループ」など、 今まで開発を経験してこなかった方には「いかにも開発っぽい」 と感じられるであろうワードが並んでいます。 これは今まで取り上げてきたワークフロールールやプロセスビルダ ーには無かった概念です。
さらに、要素をキャンバスにドラッグしたうえで、 要素の編集画面を開くと・・・
「コレクション変数」や「ループ変数」・・・ 出てくる概念が悉く完全に開発の世界です。
そうです、フローでは「コードを書かなくてもよい」とは言いまし たが、決して 「開発の概念を知らなくてもよい」 わけではありません。
冒頭で「誰でも Salesforce 開発者になれる」と記しましたが、「 コードを知らなくても開発者になれる」だけで、「 開発者になるには開発の概念を知らなければいけない」 ことには変わりありません。
ワークフロールールやプロセスビルダーと比べて、「できること」 の幅が格段に広がったことにより、「 きちんとした設計を事前に行う」 ことが非常に重要になってきます。
「フローのベストプラクティス」
===============================================================
フローの構築を始める前にフローを計画する
ビジネスプロセスの詳細をすべて書き出すか計画します。 このようにすると、どの情報が必要なのか、 その情報をどこから取得するのか、 どのロジックとアクションを実行すべきなのかが明確になります。 明確になると、対応するフローの構築が簡単になります。
===============================================================
この点が恐らく今まで開発に触れてこなかった管理者の方が戸惑う ポイントだと思われます。実際に私(=後藤)も Salesforce 歴は10年になりますが、Apex 言語には全く触れてこなかったため、 初めてフローに触れた際には、あまりにも開発的な概念が多く、 正直言って面食らってしまいました。
しかしながら、開発の概念を理解した上で要件定義を行うことは、 アプリケーションの開発を行う上では「避けて通れない」点です。
ループや変数といった開発リソースの概念も、 次週からご案内する予定の「実にシンプルなフローの構築」 を通じて、 一歩一歩少しずつご理解いただけるものと信じております。
( いきなり実用レベルの大きなアプリケーションを作れる人なんて、 よほどの天才でもない限りいるはずないですから!)
せっかくの機会です、Lightning フローを通して、「ノンコーディング開発者のエキスパート」 を目指してみましょう!
次週以降は以下の Trailhead に沿った内容でご案内をさせていただきます。 意欲のある方は是非予習を実施いただけると幸いです。
<Trailhead>
プロジェクト - 簡単なフローの作成
===========================================================
ビジネスプロセスの自動化ツールに関するシリーズの4回目、 いかがでしたでしょうか。
ついに Lightning フロー編に突入いたしました。文中でも述べた通り、 カスタマーサポート通信の著者自身が「 現在進行形で理解に取り組んでいる」部分ですので、 もしかしたら至らない部分も多々出てくるかもしれませんが、「 お客様目線」 が本メルマガのセールスポイントの一つと自負しておりますので、 「一緒に学習する」コンテンツとして、表現がわかりづらい点や、 知りたいことが記載されていない点などは、 お客様のご意見を真摯に拝聴させていただきます、 遠慮なくお知らせいただければ幸いでございます。
今後ともウフル カスタマーサポートを引き続きご愛顧いただきますよう、 何卒よろしくお願い申し上げます。
コメント