Получи случайную криптовалюту за регистрацию!

Отправка почты с вложением БСП Пример использования функции о | 1C программист

Отправка почты с вложением БСП

Пример использования функции отправки почты из БСП и преобразования табличного документа в pdf без использования временных файлов. Требуется заполненная системная учетная запись в справочнике УчетныеЗаписиЭлектроннойПочты

Функция ОтправитьТабличныйДокументЭлектроннойПочтойКакPDF(УчетнаяЗаписьПочтыОтправителя, ПочтаПолучателя, ТекстПисьма, ТемаПисьма, АдресТабличногоДокументаВоВременномХранилище)

Отправлено = Ложь;

Если УчетнаяЗаписьПочтыОтправителя = Неопределено Или УчетнаяЗаписьПочтыОтправителя.Пустая() Тогда

Возврат Отправлено;

КонецЕсли;

ТабДок = ПолучитьИзВременногоХранилища(АдресФайлаВоВременномХранилище);

ПотокФайла = Новый ПотокВПамяти();
ТабДок.Записать(ПотокФайла, ТипФайлаТабличногоДокумента.PDF);

ДвоичныеДанныеФайла = ПотокФайла.ЗакрытьИПолучитьДвоичныеДанные();

ВременноеХранилищеФайла = ПоместитьВоВременноеХранилище(ДвоичныеДанныеФайла, Новый УникальныйИдентификатор);

Вложения = Новый Массив;

ОписаниеВложения = Новый Структура("Представление, АдресВоВременномХранилище", ТекстПисьма + ".pdf", ВременноеХранилищеФайла);

Вложения.Добавить(ОписаниеВложения);

ПараметрыПисьма = Новый Структура;
ПараметрыПисьма.Вставить("Кому", ПочтаПолучателя);
ПараметрыПисьма.Вставить("Тема", ТемаПисьма);
ПараметрыПисьма.Вставить("Тело", ТекстПисьма);
ПараметрыПисьма.Вставить("ТипТекста", "ПростойТекст");
ПараметрыПисьма.Вставить("Вложения", Вложения);

Попытка

Идентификатор = РаботаСПочтовымиСообщениями.ОтправитьПочтовоеСообщение(УчетнаяЗаписьПочтыОтправителя, ПараметрыПисьма);

Если ЗначениеЗаполнено(Идентификатор) Тогда

Отправлено = Истина;

КонецЕсли;

Исключение

ЗаписьЖурналаРегистрации("Отправка письма " + ПочтаПолучателя, УровеньЖурналаРегистрации.Ошибка,,,ОписаниеОшибки());

КонецПопытки;

Возврат Отправлено;

КонецФункции

@odin1C_rus