non-programmers salesforce 小ネタブログ

Apexやvisualforceなどプログラミングの力を使わずにどこまでやれるか小ネタを投稿します。

フローの高速作成を使ってレコードの一括作成を行う【Salesforce】

初めてVisualWork Flowの高速作成を使ったので、使い方をまとめました。

 

まず目的から。

都市マスタというオブジェクトに市町村名と金額が1〜3まであります。今回の都市マスタには北海道179市町村(つまり179レコード)が入っています。

一方、指示書にはテキスト1〜3があって、その下に多対多の関係になるように実行書があります。

指示書を作ると、指示書と都市マスタそれぞれの情報を持った実行書が作られるようにしたいというのが今回の目的です。

f:id:non-prog-sf:20161013130020p:plain

 

都市マスタはこんな感じ。

f:id:non-prog-sf:20161013130152p:plain

 

手順ですが、最初にフローを作ります。

f:id:non-prog-sf:20161013130305p:plain

 

スタートは高速検索から。

都市マスタのデータを一括で引っ張ってきましょう。

f:id:non-prog-sf:20161013130401p:plain

 

高速検索で使うSオブジェクトコレクション変数は都市マスタを参照するように作ります。

f:id:non-prog-sf:20161013130512p:plain

 次にループです。ループ対象は先ほど作ったSオブジェクトコレクション変数です。ループ変数はSオブジェクト変数を新規作成します。

f:id:non-prog-sf:20161013141856p:plain

 

ループ変数に使うSオブジェクト変数は、ループ対象のSオブジェクトコレクション変数と同じオブジェクトを見に行くように作ります。

f:id:non-prog-sf:20161013143404p:plain

 

次に割り当てですが、その前に一つポイントがあって、今回作成するオブジェクトに関するSオブジェクト変数を作成しておきます。

f:id:non-prog-sf:20161013160137p:plain

 

 割り当ての画面です。変数の方に先ほど作ったSオブジェクト変数を、値の方にループのループ変数として割り当てたSオブジェクト変数を当てます。

f:id:non-prog-sf:20161013170601p:plain

 

Sオブジェクト変数への値の割り当て方ですが、オブジェクト変数からドリルダウンすることができます。そして値を入れたい項目を選びます。値の方も同じです。

f:id:non-prog-sf:20161013170809p:plain

 

あと新規作成で、今回のように他オブジェクトとリレーションを行う場合にはそれを忘れないようにする必要があります。都市マスタと実行書の関係のようにレコードごとに異なるレコードとリレーションを作る場合は値はSオブジェクト変数でIDを選びます。

f:id:non-prog-sf:20161013172129p:plain

 指示書と実行書のように一つのレコードと紐付く場合は変数で大丈夫です。変数を作る際には入力のみにして、プロセスビルダーで値を与えられるようにしておいてください。

f:id:non-prog-sf:20161013172545p:plain

 

 

そして高速作成をやる場合はもう一つ割り当てを作ります。変数側には新しくSオブジェクトコレクション変数を入れます。値には先ほどの割り当てで変数として使ったSオブジェクト変数を入れます。

f:id:non-prog-sf:20161013171015p:plain

 

新しく作るSオブジェクトコレクション変数は作成するオブジェクトを選びます。

f:id:non-prog-sf:20161013171358p:plain

 

最後に高速作成です。割り当ての変数は割り当て2回目で作ったSオブジェクトコレクション変数です。

f:id:non-prog-sf:20161013171537p:plain

 

あとはリレーションを作っていってください。高速検索を開始に指定して、フローの有効化も行っておいてください。

f:id:non-prog-sf:20161013130305p:plain

 

あとはプロセスビルダーです。プロセスビルダーで今回作ったフローを実行するように設定してください。フロー変数への値割り当てを忘れずに。

f:id:non-prog-sf:20161013172743p:plain

 

さて、実行してみます。こんな指示書を作ってみます。

f:id:non-prog-sf:20161013172956p:plain

保存すると、実行書が作られていることがわかります。金額の値は各都市マスタの情報を引っ張ってきています。

f:id:non-prog-sf:20161013173402p:plain

 

レポートを作ってレコードがきちんと作られているか確認しましたがちゃんと北海道の市区町村分の179レコードありました。

f:id:non-prog-sf:20161013173819p:plain