Отправка электронных писем является общим требованием во многих приложениях, в том числе созданных на платформе Salesforce с использованием Apex. В этой статье блога мы рассмотрим различные способы отправки электронных писем через Apex и предоставим примеры кода, иллюстрирующие каждый подход. Независимо от того, являетесь ли вы разработчиком Salesforce или администратором, желающим автоматизировать общение по электронной почте, это руководство предоставит вам необходимые знания.
Метод 1: использование класса Messaging.SingleEmailMessage
Класс Messaging.SingleEmailMessage — это самый простой и часто используемый метод отправки электронных писем через Apex. Вот пример того, как его использовать:
Messaging.SingleEmailMessage mail = new Messaging.SingleEmailMessage();
mail.setToAddresses(new List<String>{'recipient@example.com'});
mail.setSubject('Hello from Apex');
mail.setPlainTextBody('This is the content of the email.');
Messaging.sendEmail(new List<Messaging.SingleEmailMessage>{mail});
Метод 2: отправка электронных писем нескольким получателям.
Чтобы отправлять электронные письма нескольким получателям, вы можете просто добавить их адреса электронной почты в метод setToAddresses
, используя список, разделенный запятыми, или передав массив. адресов электронной почты. Вот пример:
Messaging.SingleEmailMessage mail = new Messaging.SingleEmailMessage();
mail.setToAddresses(new List<String>{'recipient1@example.com', 'recipient2@example.com'});
mail.setSubject('Hello from Apex');
mail.setPlainTextBody('This is the content of the email.');
Messaging.sendEmail(new List<Messaging.SingleEmailMessage>{mail});
Метод 3: добавление получателей CC и BCC
Вы можете включить получателей CC (копия) и BCC (скрытая копия) в свои электронные письма, используя setCcAddresses
и setBccAddresses
методы соответственно. Вот пример:
Messaging.SingleEmailMessage mail = new Messaging.SingleEmailMessage();
mail.setToAddresses(new List<String>{'recipient@example.com'});
mail.setCcAddresses(new List<String>{'cc@example.com'});
mail.setBccAddresses(new List<String>{'bcc@example.com'});
mail.setSubject('Hello from Apex');
mail.setPlainTextBody('This is the content of the email.');
Messaging.sendEmail(new List<Messaging.SingleEmailMessage>{mail});
Метод 4: отправка электронных писем в формате HTML
Если вы хотите отправлять электронные письма в формате HTML, вы можете использовать метод setHtmlBody
вместо setPlainTextBody
. Вот пример:
Messaging.SingleEmailMessage mail = new Messaging.SingleEmailMessage();
mail.setToAddresses(new List<String>{'recipient@example.com'});
mail.setSubject('Hello from Apex');
mail.setHtmlBody('<html><body><h1>This is the content of the email.</h1></body></html>');
Messaging.sendEmail(new List<Messaging.SingleEmailMessage>{mail});
Метод 5: вложения к электронной почте
Чтобы включать вложения в ваши электронные письма, вы можете использовать класс Messaging.EmailFileAttachment
. Вот пример:
Messaging.SingleEmailMessage mail = new Messaging.SingleEmailMessage();
mail.setToAddresses(new List<String>{'recipient@example.com'});
mail.setSubject('Hello from Apex');
mail.setPlainTextBody('This is the content of the email.');
// Create an attachment
Messaging.EmailFileAttachment attachment = new Messaging.EmailFileAttachment();
attachment.setFileName('Attachment.txt');
attachment.setBody(Blob.valueOf('This is the attachment content.'));
// Attach the file to the email
mail.setFileAttachments(new List<Messaging.EmailFileAttachment>{attachment});
Messaging.sendEmail(new List<Messaging.SingleEmailMessage>{mail});
В этом руководстве мы рассмотрели различные способы отправки электронных писем через Apex. Используя возможности класса Messaging.SingleEmailMessage, вы можете отправлять электронные письма одному или нескольким получателям, включать адреса CC и BCC, отправлять электронные письма в формате HTML и прикреплять файлы. Эти методы обеспечивают гибкость и возможности автоматизации для ваших потребностей в общении по электронной почте в Salesforce.
Эффективно используя эти методы, вы можете оптимизировать процессы электронной почты и улучшить свои приложения Salesforce. Так что приступайте к реализации этих методов в своем коде Apex, чтобы вывести автоматизацию электронной почты на новый уровень!