yujiroのプログラミング

勉強内容をアウトプットし、サボらないようにする為のブログ

<DAY223>フロー Flow Builder

\ Follow me!! /

●10/02(水)
●学習日数 223日
●学習時間(本日)5時間
●累計学習時間 946.0時間
●一日あたりの平均学習時間 4.23時間

f:id:yujiro0320:20190904163314p:plain

フローとは、できる事

フローは、Salesforce 組織または外部システム内でデータを収集し、アクションを実行する Lightning フローの一部です。Lightning フローでは、画面フローと自動起動フローの 2 種類のフローが提供されます。
フローが特に役立つ 2 つのユースケースは、バックグラウンドの自動化とガイド付き視覚的環境です。

基本的な思考としてバッググランドの自動化を作成するにあたり、考えていく順序は,、以下の順番となります、

(1)プロセスビルダーでプロセスを作成する。
(2)Flow Builder で自動起動フローを作成する。
(3)Apex コードを使用して Apex トリガを作成する。




画面フロー

人からデータを収集するビジネスプロセスを自動化する時に使用する。たとえば、画面を含むガイド付きチュートリアルまたはウィザードを作成します。

自動フロー

レコードが変更されたときや、ユーザがボタンをクリックしたときにフローを内部で起動する時に使用。たとえば、ページまたはアプリケーションに自動化を追加して、ユーザがボタンをクリックしたときに、レコードに対するアクションを実行します。

用語に関する注記

フローを意味する複数の用語が互換的に使われているのを耳にしたことがあるでしょう。ここで正式な用語を再確認しておきます。

Lightning フロー — フローやプロセスの作成から管理、実行までを包括的に行う製品
Flow Builder — フローを作成するポイント & クリックツール
フロー — ビジネスプロセスを自動化するアプリケーション。データを収集したり、Salesforce 組織または外部システムで何らかの操作を実行したりします。
簡単に言うと、Lightning フロー製品にいくつかのツールが含まれます。その 1 つが Flow Builder で、これを使用してフローを作成します。

Flow Builderとは

フローを作成するエディタをさす。

f:id:yujiro0320:20191001180301p:plain

フローのビルディングブロック

f:id:yujiro0320:20191001182142p:plain

要素 (1)

キャンバスに表示されます。キャンバスに要素を追加するには、ツールボックスの要素をクリックしてキャンバスまでドラッグします。

コネクタ (2)

実行時にフローがたどるパスを定義します。フローに、次にどの要素を実行すべきかを指示します。キャンバス上のある要素のコネクタをクリックして、別の要素までドラッグします。

リソース (3)

項目値や数式など、特定の値を表すコンテナです。リソースは、フローの過程でいつでも参照できます。たとえば、取引先の ID を検索して、その ID を変数に保存し、後でその ID を参照して取引先を更新します。


フローのリソース

手動で値を入力する代わりにフローのリソースを参照できます。
Flow Builder で使用できる基本的なフローリソースの種類を見ていきましょう。

定数

税率などの固定値を表します。

選択肢、選択リスト選択肢セット、またはレコード選択肢セット

画面コンポーネント内のオプションを表します。選択肢リソースでは、各オプションの表示ラベルと値を明示的に設定します。

一方、選択肢セットでは、組織内の絞り込まれたレコードのリストを使用するか、選択リスト (または複数選択リスト) 項目の値を使用して選択肢が生成されます。

例: [New Contact (新規取引先責任者)] フローの画面では、ユーザは関連する取引先を選択するように促されます。

数式

計算された値を表します。数式項目に似ています。たとえば、今日から 30 日後を計算する数式を作成し、その数式を参照して商談完了日を設定します。

テキストテンプレート

書式設定済みのテキストを表します。たとえば、メールや Chatter 投稿の本文をテキストテンプレートで書式設定し、そのテキストテンプレートを適切なアクションで参照します。

変数

フロー全体で変更できる値を表します。この単元の残りの部分では、変数について詳しく説明します。

プレースホルダ

実際の内容を後から挿入するために、とりあえず仮に確保した場所のこと。また、そのことを示す標識などのこと。

数式を使用した動的な確認メッセージ

logical_test

基本の形。
今回では、レコードを作成する時に、trueなら、falseならで条件分岐をさせている。

 IF(logical_test, value_if_true, value_if_false)

{!create_Contact}はレコードを作成する時に
tureならcreatedとfalseならupdatedと表示する。

f:id:yujiro0320:20191002161720p:plain




IF({!Create_Contact}, "created", "updated")

{!GlobalConstant.True}OR{!$GlobalConstant.False}

boolean値で判断する時に出てくる。
まぁ、trueかfalseかどっちかって感じ