Salesforce系列(0):Salesforce Apex编写一个简单的发送邮件!

Salesforce系列(0):Salesforce Apex编写一个简单的发送邮件!


前言

今天博主将为大家分享:Salesforce系列(0):Salesforce Apex编写一个简单的发送邮件!不喜勿喷,如有异议欢迎讨论!

再看这篇文章前博主郑重推荐大家前往阅读我的VsCode安装汉化等系列文章,点这里跳转:VsCode系列(一):下载安装及汉化 以及 Salesforce系列(一):使用Visual Studio Code进行开发!


开始

保存 EmailManager 您组织中的课程:

  • 在您的名称或快速访问菜单(设置齿轮图标)下打开开发者控制台。
  • 在Developer Console中,单击 File | New | Apex Class,并输入EmailManager类名,然后单击“ OK”。
  • 用。替换默认的类体 EmailManager 类示例。
  • EmailManager class有一个公共方法(sendMail())发送电子邮件并使用Apex类库的内置Messaging方法。此外,这个类有一个私人帮助方法(inspectResults()),它不能被外部调用,因为它是私有的,但仅在类中使用。此帮助程序方法检查电子邮件发送调用的结果并由其调用sendMail()

代码如下:

public class EmailManager {

    public void sendMail(String address, String subject, String body) {
        
        Messaging.SingleEmailMessage mail = new Messaging.SingleEmailMessage();
        String[] toAddresses = new String[] {address};
        mail.setToAddresses(toAddresses);
        mail.setSubject(subject);
        mail.setPlainTextBody(body);
        
     
        Messaging.SendEmailResult[] results = Messaging.sendEmail(
                                 new Messaging.SingleEmailMessage[] { mail });
                                 
        // Call a helper method to inspect the returned results
        inspectResults(results);
    }
    
    // Helper method
    private static Boolean inspectResults(Messaging.SendEmailResult[] results) {
        Boolean sendResult = true;
        
        // sendEmail returns an array of result objects.
        // Iterate through the list to inspect results. 
        // In this class, the methods send only one email, 
        // so we should have only one result.
        for (Messaging.SendEmailResult res : results) {
            if (res.isSuccess()) {
                System.debug('Email sent successfully');
            }
            else {
                sendResult = false;
                System.debug('The following errors occurred: ' + res.getErrors());                 
            }
        }
        
        return sendResult;
    }
}
  • 按下Ctrl+S保存这个类。

  • 您刚刚保存的类使用面向对象编程(OOP)。该类封装了与管理电子邮件相关的方法。要成为OOP的完美示例,该类还将包含用于访问这些属性的成员变量(属性)和访问器方法,但为了简单起见,我们的类没有这些属性。

  • 保存时,Salesforce会编译您的类。

调用方法发送电子邮件

让我们调用公共方法。我们将使用匿名Apex执行来执行此操作。匿名Apex允许您动态运行代码行,是调用Apex的一种方便方法,尤其是测试功能。与任何其他Apex执行一样,生成调试日志结果。(还有其他方法可以调用Apex,例如,通过触发器。您将在另一个模块中了解有关触发器的更多信息。)

在Developer Console中,单击Debug | 打开执行匿名窗口。
在打开的窗口中,输入以下内容。替换’Your email address’为您的电子邮件地址。

EmailManager em = new EmailManager();
em.sendMail('Your email address', 'Trailhead Tutorial', '123 body');

单击“ Execute”。
现在该方法已执行,您应该已在收件箱中收到一封电子邮件。查看你的电子邮件!

Salesforce系列(0):Salesforce Apex编写一个简单的发送邮件!_第1张图片

我们可以看到成功发送了邮件
在这里插入图片描述

邮件内容如下:
Salesforce系列(0):Salesforce Apex编写一个简单的发送邮件!_第2张图片


调用静态方法

因为sendMail()我们类中的方法不访问类成员变量,它不需要是实例方法。让我们通过添加将其更改为静态方法静态的声明的关键字。静态方法比实例方法更容易调用,因为它们不需要在类的实例上调用,而是直接在类名上调用。

在Developer Console中,找到打开的选项卡 EmailManager 类和修改第一行 sendMail()方法定义如下(唯一的变化是添加 静态的 关键词。)

public static void sendMail(String address, String subject, String body) { }

按Ctrl + S保存班级。

修改“执行匿名”窗口中的语句以调用类名上的静态方法。
EmailManager.sendMail('Your email address', 'Trailhead Tutorial', '123 body');

复制 单击“ Execute”。

现在已经执行了此方法,您可以像前面的步骤一样检查您的电子邮件,也可以选择调试日志。


到这里:Salesforce系列(0):Salesforce Apex编写一个简单的发送邮件!分享完毕了,快去试试吧!


最后

  • 更多参考精彩博文请看这里:《陈永佳的博客》

  • 喜欢博主的小伙伴可以加个关注、点个赞哦,持续更新嘿嘿!


你可能感兴趣的:(SalesForce,Apex,杂记随笔系列,Apex编写发送邮件)