Recently I encountered an issue where I needed to stop a trigger from running twice.
For instance if you are making an update in a trigger that uses the Trigger.isUpdate context.
In this scenario if we make an update inside the Trigger.isUpdate context it will loop forever and error out.
Here is how to solve for that:
1 2 3 4 |
public class ContactTriggerHandler { public static Boolean isFirstTime = true; } |
1 2 3 4 5 6 7 8 9 10 11 12 |
trigger Contact_Trigger on Contact (before insert, after insert, before update, after update, before delete, after delete, after undelete) { if(Trigger.isUpdate && Trigger.isAfter) { if(ContactTriggerHandler.isFirstTime) { ContactTriggerHandler.isFirstTime = false; Contact_Trigger_helper.sellercon(Trigger.new); } } } |