Как создать триггер, чтобы событие создавалось каждый раз, когда идентификатор владельца изменяется для учетной записи? - PullRequest
0 голосов
/ 11 июня 2018

Как указано выше.В Salesforce я хотел бы создать триггер, чтобы событие создавалось при изменении идентификатора владельца для учетной записи.Это делается для того, чтобы изменения идентификатора владельца можно было отслеживать на временной шкале активности учетной записи.Я искал решения, но ничего не нашел.

Было бы здорово, если бы кто-то мог мне помочь!(или если я пропустил сообщение, чтобы указать мне правильное направление.)

Спасибо!

1 Ответ

0 голосов
/ 11 июня 2018

Вы должны создать триггер, который реализует событие onUpdate, и написать связанный класс для выполнения вашего кода Apex.

AccountUpdate.trigger

trigger AccountUpdateTrigger on Account (after update) {

if  (!TriggerUtil.ExecutingTriggers.containsKey('AccountUpdateTrigger')){
    Set<Id> processedIds = new Set<Id>();
    TriggerUtil.ExecutingTriggers.put('AccountUpdateTrigger',processedIds);
}   

if(trigger.isAfter && trigger.isUpdate) {
    AccountUpdateTriggerHandler.OnAfterUpdate(trigger.newMap, trigger.oldMap);
}
}

Затем в своем классе AccountUpdateTriggerHandler вы напишитеобработчик

public Class DocumentRequestTriggerHandler {

public static void onAfterUpdate(Map<Id, Account> newMap, Map<Id, Account> oldMap){
    updateTracking(newMap,oldMap);
}

public static void updateTracking(Map<Id, Account> newMap, Map<Id, Account> oldMap){
    // your necessary code here 
}
}

В качестве альтернативы , для вашего использования cse вы также можете просто включить отслеживание истории на уровне поля.

...