Отправка электронной почты с файлами с помощью Apex в Salesforce

Чтобы отправить электронное письмо с файлами с помощью Apex (языка программирования, используемого в Salesforce), вы можете воспользоваться следующими методами:

  1. Использование класса SingleEmailMessage: Salesforce предоставляет класс SingleEmailMessage, который позволяет отправлять электронное письмо с вложенными файлами. Вы можете создать экземпляр этого класса, установить необходимые атрибуты, такие как получатель, тема, текст и вложения, а затем отправить электронное письмо.

  2. Использование класса Messaging.EmailFileAttachment. Чтобы прикрепить файлы к электронному письму в Apex, вы можете использовать класс Messaging.EmailFileAttachment. Вы можете создать экземпляр этого класса для каждого файла, который хотите прикрепить, задать имя файла, его содержимое и тип файла, а затем добавить эти вложения в объект SingleEmailMessage.

  3. Использование списка Messaging.EmailFileAttachment: Если у вас есть несколько файлов для вложения, вы можете создать список объектов Messaging.EmailFileAttachment и добавить все вложения в этот список. Затем вы можете установить список вложений для объекта SingleEmailMessage.

Вот пример фрагмента кода, демонстрирующий использование вышеуказанных методов:

// Create a new email message
Messaging.SingleEmailMessage email = new Messaging.SingleEmailMessage();
email.setToAddresses(new List<String>{'recipient@example.com'});
email.setSubject('Email with Files');
email.setPlainTextBody('Please find attached files.');
// Attach files using Messaging.EmailFileAttachment
Messaging.EmailFileAttachment attachment1 = new Messaging.EmailFileAttachment();
attachment1.setFileName('File1.txt');
attachment1.setBody(Blob.valueOf('File 1 content'));
attachment1.setContentType('text/plain');
Messaging.EmailFileAttachment attachment2 = new Messaging.EmailFileAttachment();
attachment2.setFileName('File2.pdf');
attachment2.setBody(Blob.valueOf('File 2 content'));
attachment2.setContentType('application/pdf');
// Add attachments to the email
email.setFileAttachments(new Messaging.EmailFileAttachment[]{attachment1, attachment2});
// Send the email
Messaging.sendEmail(new Messaging.SingleEmailMessage[]{email});

Этот код создает сообщение электронной почты, прикрепляет два файла (File1.txt и File2.pdf) и отправляет электронное письмо указанному получателю.