Подскажите, как будет написан этот процесс в Apex коде, в триггере:
OR (
AND (
ISNEW(),
NOT(ISBLANK([Lead].Import_Lead_Owner__c ))
),
AND (
NOT(ISNEW()),
NOT(ISBLANK([Lead].Import_Lead_Owner__c)),
ISCHANGED([Lead].Import_Lead_Owner__c)
)
)
И результат, который выполяется, если выполяется условие, написанное выше:
Field: Import Lead Owner - Type:Formula - Value: ''
Field: Owner ID - Type:Field Reference - Value:[Lead].Import_Lead_Owner__r.Id
Спасибо большое заранее за помощь!
Подскажите, как будет написан этот процесс в Apex коде, в триггере: OR ( AND ( ISNEW(), NOT(ISBLANK([Lead].Import_Lead_Owner__c )) ), AND ( NOT(ISNEW()), NOT(ISBLANK([Lead].Import_Lead_Owner__c)), ISCHANGED([Lead].Import_Lead_Owner__c) ) ) И результат, который выполяется, если выполяется условие, написанное выше: Field: Import Lead Owner - Type:Formula - Value: '' Field: Owner ID - Type:Field Reference - Value:[Lead].Import_Lead_Owner__r.Id Спасибо большое заранее за помощь!
А есть уже хоть какой-то код? Где и что не работает?
https://developer.salesforce.com/docs/atlas.en-us.apexcode.meta/apexcode/apex_triggers_context_variables.htm
А есть уже хоть какой-то код? Где и что не работает? https://developer.salesforce.com/docs/atlas.en-us.apexcode.meta/apexcode/apex_triggers_context_variables.htm
Есть
if ((Trigger.isInsert
&& String.isNotBlank(lead.Import_Lead_Owner__r.Name))
|| (!Trigger.isInsert
&& String.isNotBlank(lead.Import_Lead_Owner__r.Name)
&& Trigger.oldmap.get(lead.id).Import_Lead_Owner__c !=
Trigger.newmap.get(lead.id).Import_Lead_Owner__c
&& Trigger.newmap.get(lead.id).Import_Lead_Owner__c == null )) {
lead.Import_Lead_Owner__c = null;
lead.OwnerId = lead.Import_Lead_Owner__c;
Вот часть, которую я сама написала, но я не понимаю, как её проверить и правильно ли я описала этот процесс.
[quote="Andrii Muzychuk"]А есть уже хоть какой-то код? Где и что не работает? https://developer.salesforce.com/docs/atlas.en-us.apexcode.meta/apexcode/apex_triggers_context_variables.htm[/quote] Есть if ((Trigger.isInsert && String.isNotBlank(lead.Import_Lead_Owner__r.Name)) || (!Trigger.isInsert && String.isNotBlank(lead.Import_Lead_Owner__r.Name) && Trigger.oldmap.get(lead.id).Import_Lead_Owner__c != Trigger.newmap.get(lead.id).Import_Lead_Owner__c && Trigger.newmap.get(lead.id).Import_Lead_Owner__c == null )) { lead.Import_Lead_Owner__c = null; lead.OwnerId = lead.Import_Lead_Owner__c; Вот часть, которую я сама написала, но я не понимаю, как её проверить и правильно ли я описала этот процесс.
Как минимум надо написать тесты на существующюю логику. А птм выключать PB и включать триггер.
Вместо
String.isNotBlank(lead.Import_Lead_Owner__r.Name))
String.isNotBlank(lead.Import_Lead_Owner__с))
Как минимум надо написать тесты на существующюю логику. А птм выключать PB и включать триггер. Вместо [code]String.isNotBlank(lead.Import_Lead_Owner__r.Name))[/code] достаточно [code]String.isNotBlank(lead.Import_Lead_Owner__с))[/code] .
Спасибо большое за помощь!
Буду изучать, как написать правильно тесты.
[quote="Andrii Muzychuk"]lead.Import_Lead_Owner__с[/quote] Спасибо большое за помощь! Буду изучать, как написать правильно тесты.