function readOnly(count){ }
Starting November 20, the site will be set to read-only. On December 4, 2023,
forum discussions will move to the Trailblazer Community.
+ Start a Discussion
mac_046mac_046 

maximum trigger depth exceeded

Hi Everyone,

 

I have wriiten below trigger to add weekdates to custom object. However I am getting the below error while executing the code. Can anyone help me out to resolve this issue.

 

trigger AddWeekends on Calendar__c (after insert) {
            List<Calendar__c> lstcal = new List<Calendar__c>();
            List<Calendar__c> lstcal1 = new List<Calendar__c>();
            Date orig = Date.today();
            system.debug('++++'+orig);
            Date satDate = Date.Parse('01/01/2011');
            Date sunDate = Date.Parse('01/02/2011');
            integer i;
           // Adding all Saturdays

            For(i=0; i<52; i++){
            Calendar__c cal = new Calendar__c();
            cal.Date__c = SatDate;
            cal.Holidays__c = 1;
            Cal.Description__c = 'Weekend';
            system.debug('#####'+SatDate);
            upsert Cal;
            satDate += 7;
        }

          // Adding all Sundays
            For(i=0; i<52; i++){
            Calendar__c cal1 = new Calendar__c();
            cal1.Date__c = SunDate;
            cal1.Holidays__c =2;
            Cal1.Description__c = 'Weekend';
            system.debug('$$$$$'+SunDate);
            upsert Cal1;
            sunDate += 7;
        }                   
}

 

Error Message:  Apex trigger AddWeekends caused an unexpected exception, contact your administrator: AddWeekends: execution of AfterInsert caused by: System.DmlException: Upsert failed. First exception on row 0; first error: CANNOT_INSERT_UPDATE_ACTIVATE_ENTITY, AddWeekends: maximum trigger depth exceeded Calendar trigger event AfterInsert for [a0O50000002GU5Q] Calendar trigger event AfterInsert for [a0O50000002GU5R] Calendar trigger event AfterInsert for [a0O50000002GU5S] Calendar trigger event AfterInsert for [a0O50000002GU5T] Calendar trigger event AfterInsert for [a0O50000002GU5U] Calendar trigger event AfterInsert for [a0O50000002GU5V] Calendar trigger event AfterInsert for [a0O50000002GU5W] Calendar trigger event AfterInsert for [a0O50000002GU5X] Calendar trigger event AfterInsert for [a0O50000002GU5Y] Calendar trigger event AfterInsert for [a0O50000002GU5Z] Calendar trigger event AfterInsert for [a0O50000002GU5a] Calendar trigger event AfterInsert for [a0O50000002GU5b] Calendar trigger event AfterInsert for [a0O50000002GU5c] Calendar trigger event AfterInsert for [a0O50000002GU5d] Calendar trigger event AfterInsert for [a0O50000002GU5e] Calendar trigger event AfterInsert for [a0O50000002GU5f]: []: Trigger.AddWeekends: line 15, column 13

 

Any help is appreciated...

 

 

vabvab

trigger is creating a new calendar records, which is firing the calendar trigger again. You're essentially in an infinite loop, and Apex kicks you out. if you have a trigger that is modifying the same object that you're triggering on, you need to be very careful not to get into these kinds of loops.

Bhawani SharmaBhawani Sharma

why dont you try with the before insert event. though this you can set all the values before the record inserts so this will prevent you to firing the DML statement again.