我是apex的新手,我正在尝试建立一个每天运行的顶级计划课程。如果提交的帐户审核日期为两周(14天),则计划程序将向我们的销售部门发送电子邮件。
我创建了一个实现可调度接口的类。我目前正在测试以确保我的代码有效。我已经创建了一个测试方法,但我不确定它是否有效。我收到了这封错误邮件:
沙盒
引起:System.EmailException:SendEmail失败。第0行的第一个例外;第一个错误:INVALID_SAVE_AS_ACTIVITY_FLAG,saveAsActivity在向用户发送邮件时必须为false:[]
Class.AccountReviewSchedulerOtherObjectIDETest.sen dEmail:第15行第1列
Class.AccountReviewSchedulerOtherObjectIDETest.exe可爱:第5行第1列
如果没有测试方法,我的调度程序没有得到任何回复(不是错误电子邮件或我尝试发送的电子邮件。
这是我的Apex预定班级(带测试方法)
global class AccountReviewSchedulerOtherObjectIDETest implements Schedulable{
global void execute (SchedulableContext ctx)
{
sendEmail();
}
public void sendEmail()
{
Messaging.SingleEmailMessage mail = new Messaging.SingleEmailMessage();
mail.setTemplateId('00XF0000000LfE0');
mail.setTargetObjectId('005J0000000JWYx');
Messaging.sendEmail(new Messaging.SingleEmailMessage[] {mail });
}
public static testMethod void testschedule() {
Test.StartTest();
AccountReviewSchedulerOtherObjectID sh1 = new AccountReviewSchedulerOtherObjectID();
Test.stopTest();
}
}
这个错误是什么意思?我的测试类写错了吗?我的电子邮件方法有问题吗?
答案 0 :(得分:2)
在调用Messaging.sendEmail()之前添加mail.setSaveAsActivity(false);
。