Salesforceのフローを作成されたことはありますか?
フローって難しそう、とっつきにくいと感じている初心者の方向けに、フローのコンポーネントやその使い方について解説していきます。
今日ご説明するコンポーネントは…
です。
コンポーネントの機能:指定したオブジェクトのレコードを作成する
このコンポーネントの機能は名前のとおりです。
指定したオブジェクトに、指定した通りの値を設定してレコードを作成してくれます。
このコンポーネントを使うのは新しくレコードを作成したいときです。
例をあげてみましょう。
ある組織では取引先のレコードを作成したらその取引先に紐づく商談をひとつ自動で作成したいとします。
この場合、取引先のレコードが新規作成されたら、という条件の場合にフローを動かし、商談のレコードを自動で作成します。
なので、取引先オブジェクトのレコード作成時に起動するレコードトリガーフローとなりますね。
この「商談のレコードを自動で作成」するときに使うのがレコードを作成するコンポーネントです。
今回の要件は「取引先に紐づく」商談なので、このコンポーネント内で商談レコードを作成するときに、商談にある取引先参照項目の値を指定してあげれば良いですね。
コンポーネントの使い方
次にコンポーネントの使い方を見ていきましょう。
まずはコンポーネントをドラックアンドドロップします。
開いた画面で設定をしていきます。
まずはこのコンポーネントに名前をつけましょう。API参照名はこのフローの中で被りがなければOKです。名前を見ただけで何をしているコンポーネントなのか分かりやすいものにしましょう。
作成するレコード数は1、レコード項目は自分で設定したいので「個別のリソースおよびリテラル値を使用」を選択します。
次にレコードを作成したいオブジェクトを設定します。
今回の例だと「商談」ですね。
最後に、レコードを作成するときに、商談のどの項目に何の値を設定しておくのかを設定します。
左側が商談の項目、右側が設定する値です。
設定できる値にはいくつか種類があります。
まずは右側の項目に直接値を入れる方法です。これは一番直感的に分かりやすいのではないでしょうか?
ただし、この方法だとこのフローで商談を作成したら、どの商談も全く同じ値が設定されることになってしまいますね。
このままだと、どの取引先の商談も「商談名」という名前になってしまうね(^_^;
「商談名」以外にも、例えば商談の「取引先」項目を考えてみましょう。「取引先」の値はフローを動かすきっかけになった取引先の値にしたいですよね?そしてその取引先は商談ごとに異なるはず…
そういった場合に使えるのがフロー変数です。
変数とは名前の通り、中身が変わる箱のことです。
実際に設定してみます。左側に商談の「取引先」項目を設定します。
ここに入れる値(右側)はフローを開始した取引先レコードのIDをセットします。
$Recordというのは今回の場合、フローを開始するきっかけになる取引先のレコードのことを指します。
これで商談の「取引先」項目に、フローを開始するきっかけとなった取引先を設定することができました。つまりこれで、フローを動かすきっかけになった取引先に紐づく商談が作成できました!
また、変数は自分で作成することも可能です。
変数の中身を数式にしたりレコードにしたり色々あるので、また別のところで解説します!
設定が完了したら保存を押して終了です。
動かしてみよう〜デバッグの使い方
フローが完成したので実際に動かしてみましょう。
ここでデバッグの使い方をご説明します。
フローを保存したら画面右上の「デバッグ」というボタンをクリックします。
デバッグは簡単にいうと、各コンポーネントの中である処理をして次はこんなことをして…というフローの流れを、実際に設定された値を見ながら追うことができるものです。
つまりフローを実行したときの動きや変数などの中身を見ることができる便利機能ですね。フローを動かしてみた結果思い通りにならなかった場合に、どこで間違っているのか、どこで意図しない動きになっているのかが分かりやすく、修正すべきポイントが明確になりやすいです。フローを有効化しなくても試してみることができるのもうれしいですね。
早速見ていきましょう。
最初にフローを開始するきっかけとなる取引先のレコードを設定します。
フローを作成したSalesforce内に存在する取引先であればどのレコードでも構いません。
取引先を入力して設定するだけで、その取引先に対してこのフローを動かしてくれます!
おっと…失敗しましたね。
画面を見ると「レコードの作成する」コンポーネント内の処理で何か怒られているようです。デバックのログ内容を見てみると、REQUESTED_FIELD_MISSING:値を入力してください…とあります。
なるほど、商談のStageName項目とCloseDate項目は入力必須なのですね。だから「レコードを作成する」コンポーネントでこれらの値を設定していないと、商談のレコードをフローが自動作成してくれたときに値が入らずエラーが起きてしまった…ということですね。
フローでの自動レコード作成時にも必須チェックがはたらくのでした。
ここまで分かれば「レコードを作成する」コンポーネント内に先ほどの2つの項目を設定してあげれば良いということが分かります。
このようにデバッグはフローを有効化する前にNG箇所を発見できます。有効化してからエラーが出て意図していたように動かない(T-T)ということにならないように、デバッグを活用して十分にテストしてから有効化しましょう!
まとめ
今回はフローのコンポーネント「レコードを作成」について解説してみました。
初心者の方向けなので本当に基本的な部分を説明しています。
今回ご紹介した以外にも設定値を変更したりできますので基本的な使い方をマスターできた方はいろいろと試してみてください。
それでは、ごきげんよう。
コメント