首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >为什么由APEX可调度类发送HTML电子邮件时使用的是空白体?

为什么由APEX可调度类发送HTML电子邮件时使用的是空白体?
EN

Stack Overflow用户
提问于 2018-08-07 01:30:00
回答 2查看 0关注 0票数 0

我有一个APEX类,用于每天晚上7点发送电子邮件:

代码语言:txt
复制
global class ReportBroadcaster implements Schedulable {

    global ReportBroadcaster() {
    }

    global void execute(SchedulableContext sc) {
      send();
    }

    global void send() {
      PageReference page = new PageReference('/apex/nameofvfpage');
      page.setRedirect(true);
      Messaging.SingleEmailMessage email = new Messaging.SingleEmailMessage();
      email.setSubject('Example Subject');
      email.setHtmlBody(page.getContent().toString());
      email.setToAddresses(new String[]{'test@test.com'});
      Messaging.sendEmail(new Messaging.SingleEmailMessage[]{email});     
    }
}

当我通过ReportBroadcaster的一个实例通过匿名APEX执行send()方法时,它将按预期的方式交付。然而,当我安排课程时,电子邮件会以空白的形式发送。如果我将电子邮件的正文切换为纯文本,它就能提供很好的服务(但这对我不起作用)。

我该怎么做呢?

EN

回答 2

Stack Overflow用户

发布于 2018-08-07 09:48:12

我不知道为什么这不工作(它应该),但我可以建议一个解决办法。

你可以将vforce页面转换为vforce电子邮件模板(如果你也在其他地方使用该页面,则可以根据旧版创建一个新的),然后使用该模板作为电子邮件的源。要在文档中签入的要点是SingleEmailMessage.setTemplateId在apex 文档和<messaging:*>vforce文档中的组件。

票数 0
EN

Stack Overflow用户

发布于 2018-08-07 10:55:55

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/-100008756

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档