Memos About Salesforce

Salesforceにハマってたこと!

メール送信機能 カスタマイズ

salesforceの開発にあたって

たまに、メール送信機能がほしがる

そんな時に、さくさく、カスタマイズ

したメール送信機能を使って、

開発も早くなるでしょう

今回、自作メール送信機能を

共有します。

欲しけりゃくれてやる・・・。

探せ!

この世の全てをそこに置いてきた〜笑




目次

サンプルコード

public class SampleEmailManager {
    /**
     * メッセージ作成
     * @param parToAddress 返信先アドレス
     * @param ccAddresses CC
     * @param bccAddresses Bcc
     * @param parFromMail 送信元のアドレス
     * @param subject 件名
     * @param body 送信内容
     * @param attachmentIdList メールに添付するファイルID List
     */
    public static void sendMail(String parToAddress,
                                String[] ccAddresses,
                                String[] bccAddresses,
                                String parFromMail,
                                String subject,
                                String body,
                                List<Id> attachmentIdList) {
        // メール送信
        Messaging.SingleEmailMessage mail = new Messaging.SingleEmailMessage();
        String[] toAddresses = new String[] {parToAddress};
        // 組織情報取得する
        list<OrgWideEmailAddress> owdlist = [SELECT Id FROM OrgWideEmailAddress WHERE Address = :parFromMail  LIMIT 1];
        mail.setToAddresses(toAddresses);
        mail.setCcAddresses(ccAddresses);
        mail.setBccAddresses(bccAddresses);
        mail.setOrgWideEmailAddressId(owdlist[0].Id);
        mail.setSubject(subject);
        if(attachmentIdList != NULL && !attachmentIdList.isEmpty()){
            mail.setEntityAttachments(attachmentIdList);
        }
        mail.setPlainTextBody(body);
        Messaging.sendEmail(new Messaging.SingleEmailMessage[] { mail });
    }
}

使用例

SampleEmailManager.sendMail(各引数設定);