You need to sign in to do that
Don't have an account?
@GM
System.NullPointerException: Attempt to de-reference a null object
trigger updateCount on Student__c (after insert, after delete) { Integer clist=0; if(Trigger.isAfter && Trigger.isInsert) { for (Student__c stent : Trigger.new) { Id cid = stent.Class__c; clist = [Select Count() FROM Student__c where Class__c =: cid ]; if(stent.Class__r.My_Count__c == null) { stent.addError('null'); } else { stent.Class__r.My_Count__c = clist + 1; } } } else if(Trigger.isAfter && Trigger.isDelete) { for (Student__c stent : Trigger.old) { Id cid = stent.Class__c; clist = [Select Count() FROM Student__c where Class__c =: cid ]; stent.Class__r.My_Count__c = clist - 1; } } }
Error: Invalid Data.
Review all error messages below to correct your data.
Apex trigger updateCount caused an unexpected exception, contact your administrator: updateCount: execution of AfterInsert caused by: System.NullPointerException: Attempt to de-reference a null object: Trigger.updateCount: line 19, column 1
Below is not possible
stent.Class__r.My_Count__c = clist + 1;
You have to fetch record using query if you want to update relational fields.
And also in trigger you cannot get value for relational fields. You need to query those fields.
All Answers
Below is not possible
stent.Class__r.My_Count__c = clist + 1;
You have to fetch record using query if you want to update relational fields.
And also in trigger you cannot get value for relational fields. You need to query those fields.
Thanks for the information. but can you tell me that how to update the relationship field after fetching those relationship fields from SOQL.?