You need to sign in to do that
Don't have an account?
LaurenAke
Auto email trigger on sibling records not firing
This is supposed to auto-email an opportunity template that pulls info from child objects to contacts related to the main object on this trigger (which is also a child object of opportunities)...it compiles fine, but it's not actually sending anything. I'm new to apex so forgive my ignorance if it's an obvious oversight!
trigger outptProvFollowUp on ERC_Treatment_Member__c (before insert) { // Get ERCTTs that have just been created and/or updated List<ERC_Treatment_Member__c> newERCTTs = new List<ERC_Treatment_Member__c>(); for (ERC_Treatment_Member__c e : Trigger.new) { if (e.Admission__r.StageName == 'Admitted' && e.Admission__r.Admission_Date__c != null && e.Active__c ==true) { newERCTTs.add(e); } } // Grab dummy contact Contact c = [SELECT Id, Email from Contact where email <> null limit 1]; // Create a master list to hold the emails to send for (ERC_Treatment_Member__c teamMember : newERCTTs) { // Create new Email List<Messaging.SingleEmailMessage> mails = new List<Messaging.SingleEmailMessage>(); Messaging.SingleEmailMessage mail = new Messaging.SingleEmailMessage(); // Set list of people who should get the email List<String> sendTo = new List<String>(); sendTo.add(teamMember.Clinician__r.Email); mail.setToAddresses(sendTo); mail.setWhatId(teamMember.Admission__c); mail.setTargetObjectId(c.Id); mail.setTemplateId('00X3D000000QOZE'); mails.add(mail); Savepoint sp = Database.setSavepoint(); Messaging.sendEmail(mails); Database.rollback(sp); List<Messaging.SingleEmailMessage> msgsToSend = new List<Messaging.SingleEmailMessage>(); for (Messaging.SingleEmailMessage actualEmail : mails) { Messaging.SingleEmailMessage emailToSend = new Messaging.SingleEmailMessage(); emailToSend.setToAddresses(actualEmail.getToAddresses()); emailToSend.setPlainTextBody(actualEmail.getPlainTextBody()); emailToSend.setHtmlBody(actualEmail.getHTMLBody()); // emailToSend.setSubject(email.getSubject()); msgsToSend.add(emailToSend); } Messaging.sendEmail(msgsToSend); } }