0

我是 apex 的新手,正在尝试构建一个每天运行的 apex 时间表课程。如果佣金的帐户审核日期是两周(14 天)之后,调度员将向我们的销售部门发送一封电子邮件。

我有一个实现可调度接口的类。我目前正在测试以确保我的代码有效。我创建了一个测试方法,但我不确定它是否有效。我收到此错误电子邮件:

沙盒

引起:System.EmailException:SendEmail 失败。第 0 行的第一个异常;第一个错误:INVALID_SAVE_AS_ACTIVITY_FLAG,向用户发送邮件时 saveAsActivity 必须为 false。:[]

Class.AccountReviewSchedulerOtherObjectIDETest.sen​dEmail:第 15 行,第 1 列

Class.AccountReviewSchedulerOtherObjectIDETest.exe​cute:第 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();

}
}

这个错误是什么意思?我的测试课写错了吗?我的电子邮件方法有问题吗?

4

1 回答 1

2

mail.setSaveAsActivity(false);在调用 Messaging.sendEmail() 之前添加。

于 2012-07-20T19:48:11.217 回答