业务需求:
1. 用email template定义邮件内容,这样不太懂技术的管理人员也能后续编辑template.
2. 发送邮件需要有邮件历史,可以供后续跟踪。
3. 邮件需集中挂在一个parent data的下面。
之前我也做过类似任务,今天发现了一个更好的办法。
1. 基于template构建出邮件(获得的singleEMessage,其内容已经绑定数据)
Messaging.SingleEmailMessage singleEMessage = Messaging.renderStoredEmailTemplate(templateId, null, record.Id);
2. 邮件历史
singleEMessage.setSaveAsActivity(true);
3. 挂在一个parent data的下面, 我尝试了下列方法,竟然可行!之前我没想过这么操作,担心重新设置whatId会影响Email的内容,所以之前是在EmailMessage的trigger里做文章。相比之下,这个方法太简单了。
singleEMessage.setWhatId(parentRecord.Id);
本文介绍如何在Salesforce中使用emailtemplate定义邮件内容,实现非技术人员编辑,并通过SingleEmailMessage类的方法setSaveAsActivity和setWhatId来记录邮件历史及关联父级数据。

962

被折叠的 条评论
为什么被折叠?



