【发布时间】:2012-07-26 14:43:46
【问题描述】:
我正在尝试通过创建一个触发器来解决基于“邮箱已满”的退回电子邮件问题,如果邮件包含“邮箱已满”,则该触发器会重新发送邮件。
我面临的问题是我需要将重发次数限制为 3 次。 一旦收到退回的电子邮件,我现在就会不断重新发送电子邮件。
我的触发器是
trigger trgBouncedEmails on EmailMessage (after insert) {
for(EmailMessage myEmail: trigger.New) {
//mail box full bounced email
if (myEmail.HtmlBody.contains('full'))
{
Case[] parentCase = [Select c.Id from Case c where c.Id =: myEmail.ParentId];
if (myEmail.Subject.contains('Financial Review'))
parentCase[0].Resend_Email_Send__c = true; // this will trigger a workflow to send the email again.
Update parentCase;
}
}
}
如何限制重新发送,有没有办法可以在“更新 parentCase”之前设置等待时间
有没有更好的方法来解决这个问题,知道我有不同类型的电子邮件,每个都有不同的模板和不同的目的。
编辑 系统应以 24 小时为频率自动重发 3 次,24 小时后停止重发。我的触发器无限期地重新发送,我正在尝试寻找一种方法来等待,这样它只能在 24 小时内发送 3 次,比如每 8 小时一次。
【问题讨论】:
标签: salesforce