同じパターンのレコード作成を自動化
同じ作業を繰り返してるな、、、と思ったら自動化を検討するチャンスです。
面倒くさい!って大事な気づきですよね。
nagamin
2024/01/09 08:58:23
こんにちは!
今回は、同じパターンのレコード作成について
実装した内容のポイントを2つご紹介いたします。
親オブジェクトに対して、タスクを管理するカスタムオブジェクトが2種類あります。
このタスク管理用のレコードを作成する自動化について、異なる要件の実装を行いました。
[事例1]親レコードが作成されたら、やらなければならないタスクが決まっている場合
[事例2]親レコードの内容に応じて、テンプレートからタスクの内容をコピーしたい場合
まずは、1つめの事例です。
・「商談タスク管理」ではレコードタイプを複数使用しており、タスクの種類ごとにレコードタイプを作成しています。
例)資料A作成
資料B作成

(参考)オブジェクトリファレンス:RecordType
・sObject種別・・・商談タスク管理(OppTask__c)
・有効・・・True

2-②.①で取得されたレコードコレクション変数をループ
[レコード変数 (a)] varOppTaskRecord
・データ型:レコード
・複数の値を許可(コレクション):False
・オブジェクト:商談
・フロー外部での可用性:False
[割り当て]
・変数 (a) > レコードタイプID ← loopの現在の項目 > レコードID
・変数 (a) > 商談タスク管理名 ← loopの現在の項目 > 名前
・変数 (a) > 商談 ← $Record > 商談ID
[レコード変数 (b)] varOppTaskRecords
・データ型:レコード
・複数の値を許可(コレクション):True
・オブジェクト:商談
・フロー外部での可用性:False
[割り当て]
・変数 (b) varOppTaskRecords 追加 変数(a) varOppTaskRecord

商談タスク管理のレコードタイプと同じ名前・同じ数の商談タスク管理レコードが作成できました!
タスクの種類が増えても、レコードタイプを追加すればOKです!
実際の設定では
・数式を使って商談タスク管理名に取引先名を追加
・タスクがソートできるようにナンバリングする項目を追加
などの設定を加えるとよさそうですね。
次に
定例で行う作業については、テンプレートを用意しており、件名、手順・注意事項が記載されています。
例)ユーザ登録
データローダ作業
・親レコードから アクションで画面フローを呼び出し
・コピーしたいテンプレートを選択
・必要な項目値をコピーして、レコード作成
(コピーしたい項目)
・件名
・ステータス
・依頼内容

テンプレートから必要項目をコピー
起動した「SFヘルプデスク」に紐づく「SFタスク管理」レコードが作成されました。
適宜編集します。



・選択肢ルックアップ を配置
選択肢にレコード選択肢セット を設定(詳細下図)
レコード選択肢セットの中で、変数の割り当てまで行えました。便利、、


選択した選択肢以外から設定する値を割り当てます。
システム改修なしで、テンプレートの修正が可能です!
実際の設定では、、、
・「テンプレート」項目は、管理者のみ表示・編集可
・テンプレートとして登録されているレコードは編集できないよう入力規則を設定
・「件名」項目のコピー処理は、テンプレートレコードで”(件名)”と設定している文字列部分について、親レコードの件名に置き換える
・テンプレートに紐づいている複数子レコードをコピー
など設定しました。
業務に合わせてカスタマイズしてみてください!
今回は、同じパターンのレコード作成について
実装した内容のポイントを2つご紹介いたします。
親オブジェクトに対して、タスクを管理するカスタムオブジェクトが2種類あります。
このタスク管理用のレコードを作成する自動化について、異なる要件の実装を行いました。
[事例1]親レコードが作成されたら、やらなければならないタスクが決まっている場合
[事例2]親レコードの内容に応じて、テンプレートからタスクの内容をコピーしたい場合
まずは、1つめの事例です。
[事例1]親レコードが作成されたら、やらなければならないタスクが決まっている場合
Point!:レコードタイプっていうオブジェクトがあるんだね。【前提】
・商談を参照する「商談タスク管理」というカスタムオブジェクトを作成しています。・「商談タスク管理」ではレコードタイプを複数使用しており、タスクの種類ごとにレコードタイプを作成しています。
例)資料A作成
資料B作成
【要件】
”小規模商談”というレコードタイプの商談が作成されたら、商談タスク管理(API参照名:OppTask__c)レコードを用意されているレコードタイプの数だけ作成します。【設定の詳細】
1.商談タスク管理オブジェクトにレコードタイプをタスク分作成
2.商談作成時のレコードトリガフローを作成
起動条件:レコードタイプ:小規模商談 の商談が作成されたとき2-①.レコードタイプオブジェクトのレコードを取得
「レコードタイプ」のオブジェクトから各オブジェクトで作成されているレコードタイプの情報を取得できます。(参考)オブジェクトリファレンス:RecordType
・sObject種別・・・商談タスク管理(OppTask__c)
・有効・・・True
2-②.①で取得されたレコードコレクション変数をループ
2-③.レコード変数(varOppTaskRecord)に割り当て
・データ型:レコード
・複数の値を許可(コレクション):False
・オブジェクト:商談
・フロー外部での可用性:False
[割り当て]
・変数 (a) > レコードタイプID ← loopの現在の項目 > レコードID
・変数 (a) > 商談タスク管理名 ← loopの現在の項目 > 名前
・変数 (a) > 商談 ← $Record > 商談ID
2-④.③のレコード変数を レコードコレクション変数(varOppTaskRecords)に割り当て
・データ型:レコード
・複数の値を許可(コレクション):True
・オブジェクト:商談
・フロー外部での可用性:False
[割り当て]
・変数 (b) varOppTaskRecords 追加 変数(a) varOppTaskRecord
2-⑤.④のコレクション変数の値でレコードを作成
【動作の確認】
”小規模商談”レコードタイプの商談レコードを作成すると、、、商談タスク管理のレコードタイプと同じ名前・同じ数の商談タスク管理レコードが作成できました!
実際の設定では
・数式を使って商談タスク管理名に取引先名を追加
・タスクがソートできるようにナンバリングする項目を追加
などの設定を加えるとよさそうですね。
次に
[事例2]レコードの内容に応じて、テンプレートからタスクの内容をコピーしたい場合
Point!:レコード選択肢セットなるものを使ってみた【前提】
Salesforceに関する要望・お問い合わせをSalesforceのカスタムオブジェクト「SFヘルプデスク」で受け取っています。対応内容を記録するタスク管理用の子レコード「SFタスク管理」を作成します。定例で行う作業については、テンプレートを用意しており、件名、手順・注意事項が記載されています。
例)ユーザ登録
データローダ作業
【要件】
・「SFタスク管理」オブジェクトへテンプレート(API参照名:Template__c)」項目(チェックボックス型)を作成。テンプレートとして登録するレコードはTrueへ・親レコードから アクションで画面フローを呼び出し
・コピーしたいテンプレートを選択
・必要な項目値をコピーして、レコード作成
【動作の確認】
設定詳細の解説の前に、完成後のオペレーションをご覧ください。「SFタスク管理」を作成します。
「テンプレート」項目にチェックを入れた「ユーザ登録」と「データローダ作業」という件名のレコードを作成し、テンプレートとして登録しておきます。(コピーしたい項目)
・件名
・ステータス
・依頼内容
1.「SFヘルプデスク」レコードから、画面フローを起動する「タスク管理作成」ボタンを押下
2.コピーしたいテンプレートを選択
3.完了
テンプレートから必要項目をコピー起動した「SFヘルプデスク」に紐づく「SFタスク管理」レコードが作成されました。
適宜編集します。
【フローの詳細】
①スタート画面
・表示テキスト・選択肢ルックアップ を配置
選択肢にレコード選択肢セット を設定(詳細下図)
レコード選択肢セットの中で、変数の割り当てまで行えました。便利、、
②レコード変数を割り当て
選択した選択肢以外から設定する値を割り当てます。
紐づけのため、起動したレコードIDを「SFヘルプデスク」に割り当てます
(参考)Salesforceヘルプ:recordId の作成
↑↑自動でトリガしたレコード変数を格納してくれる魔法の変数です。
③変数「varSFTaskRecord」の値からレコードを作成

④完了画面
システム改修なしで、テンプレートの修正が可能です!
実際の設定では、、、
・「テンプレート」項目は、管理者のみ表示・編集可
・テンプレートとして登録されているレコードは編集できないよう入力規則を設定
・「件名」項目のコピー処理は、テンプレートレコードで”(件名)”と設定している文字列部分について、親レコードの件名に置き換える
・テンプレートに紐づいている複数子レコードをコピー
など設定しました。
業務に合わせてカスタマイズしてみてください!
コメント