Trailhead ToDoリスト を追加する一括 Apex trigger を作成する方法
環境
Salesforce
実装機能
フェーズが Closed Won の商談にフォローアップ ToDo を追加する一括 Apex trigger を作成します。 Apex trigger は商談の挿入後または更新後に起動します。 Apex trigger を作成する: Name: ClosedOpportunityTrigger Object: Opportunity イベント: after insert と after update 条件: フェーズが Closed Won 操作: ToDo を作成する: Subject: テスト ToDo をフォローアップする WhatId: 商談 ID (ToDo を商談に関連付ける) Apex trigger を一括処理化して 200 件以上の商談を挿入または更新できるようにする
構文
1.ToDoリストの宣言
List<Task> taskList = new List<Task>();
2.ToDOリストに要素を追加する
taskList.add(new Task (Subject =’xxx’,Whatid =xxx));
Subject
「電話」、「見積送付」など、ToDo の件名行。最大 255 文字です。
WhatId 項目の値がその他のオブジェクトで、かつ WhoId 項目の値が
Contact オブジェクトである場合、Salesforce はその取引先責任者の AccountId を使用します。
サンプルコード
trigger ClosedOpportunityTrigger on Opportunity (after insert,after update) { //ToDoリスト変数の宣言 List<Task> taskList = new List<Task>(); //商談の処理 for(Opportunity oppy :Trigger.New) { //商談のフェーズが「Closed Won」の場合、ToDoをリストに追加 if(oppy.StageName == 'Closed Won') { taskList.add( new Task (Subject = 'テスト ToDo をフォローアップする', WhatId = oppy.id) ); } } //ToDoリストを挿入する if(taskList.size() > 0 ) { insert taskList; } }