You need to sign in to do that
Don't have an account?
Daniel B Probert
Too many DMS statements: 151 trigger help
hey, i'm getting a dml 151 error with the below trigger when we bulk upload:
trigger AR_ContactUpdate on Academic_Record__c(after update){ Map<String, String> ARIDMap = new Map<String, String>(); for(Academic_Record__c e: trigger.new) { ARIDMap.put(e.ID, null); } List<Contact> ContactsToUpdate = [select id,current_academic_record__c from contact where current_academic_record__c in: ARIDMap.KeySet()]; for (Academic_Record__c ar: Trigger.New){ if (ar.parentarmatch__c==true){ Contact c = new Contact(Id=ar.Person__c); c.Accommodation__c=ar.Accommodation__c; c.Donor__c=ar.Donor__c; c.Form__c=ar.Form__c; update c; } } }
i've tried updating the code to this but then the trigger doesn't seem to work:
trigger AR_ContactUpdate on Academic_Record__c(after update){ Map<String, String> ARIDMap = new Map<String, String>(); for(Academic_Record__c e: trigger.new) { ARIDMap.put(e.ID, null); } public void sav(){ List<Contact> ContactsToUpdate = [select id,current_academic_record__c from contact where current_academic_record__c in: ARIDMap.KeySet()]; for (Academic_Record__c ar: Trigger.New){ if (ar.parentarmatch__c==true){ Contact c = new Contact(Id=ar.Person__c); c.Accommodation__c=ar.Accommodation__c; c.Donor__c=ar.Donor__c; c.Form__c=ar.Form__c; ContactsToUpdate.add(c); } if(ContactsToUpdate.size() > 0) insert ContactsToUpdate; } } }
any ideas what i'm missing?
cheers
dan
You're on the right track, but you are updating the records that you retrieved from the database rather than those you created. Given that you don't use any of the values from the Contactstoupdate records, do you actually need those? I would think you could simply iterate the trigger records, instantiate the contacts and then update them. You just need to add them to a list and update that:
All Answers
You're on the right track, but you are updating the records that you retrieved from the database rather than those you created. Given that you don't use any of the values from the Contactstoupdate records, do you actually need those? I would think you could simply iterate the trigger records, instantiate the contacts and then update them. You just need to add them to a list and update that:
grrr i knew i was close - cheers pal..