|
0
sergqwert
08.09.20
✎
22:24
|
Отсылаю письмо на электронную почту, письмо приходит без вложенных файлов. В чем причина?
&НаСервере
Процедура КомандаРазослатьНаСервере()
Если Объект.УчетнаяЗапись.Пустая() Тогда
Сообщение = Новый СообщениеПользователю();
Сообщение.Текст = "Не выбрана учетная запись электронной почты!";
Сообщение.Сообщить();
Возврат;
КонецЕсли;
Каталог = НСтр(СтрокаСоединенияИнформационнойБазы(), "File");
Почта = Новый ИнтернетПочта;
Профиль = РаботаСПочтовымиСообщениямиСлужебный.ИнтернетПочтовыйПрофиль(Объект.УчетнаяЗапись);
Попытка
Почта.Подключиться(Профиль);
Исключение
Сообщить(ОписаниеОшибки());
Возврат;
КонецПопытки;
Для каждого Счет Из Объект.ТЧСчета Цикл
Если НЕ Счет.Отправлять Тогда
Продолжить;
КонецЕсли;
Сообщение = Новый ИнтернетПочтовоеСообщение;
Если ЗначениеЗаполнено(Счет.ДокументСчет) Тогда
ТабДок = ПечатьДокументаНаСервере(Счет.ДокументСчет,"ПФ_MXL_СчетЗаказПечать","СчетЗаказСПечатью","Счет на оплату покупателю с печатью");
Если ТабДок <> Неопределено Тогда
ИмяФайлаСчет = ПолучитьИмяВременногоФайла("pdf");
ТабДок.Записать(ИмяФайлаСчет,ТипФайлаТабличногоДокумента.PDF);
Сообщение.Вложения.Добавить(Новый ДвоичныеДанные(ИмяФайлаСчет),"Счет"+Счет.ДокументСчет.Номер+".pdf");
КонецЕсли;
КонецЕсли;
//ТемаПисьмаКонтрагент = СтрЗаменить(Объект.ТемаПисьма,"%СЧЕТ%"," Счет № "+Счет.Документ.Номер+" от "+Формат(Счет.Документ.Дата,"ДФ=dd.MM.yyyy"));
СодержаниеПисьмаКонтрагент = СтрЗаменить(Объект.Содержание,"%КЛИЕНТ%",""+Счет.Контрагент.НаименованиеПолное);
Сообщение.Отправитель = Объект.УчетнаяЗапись.АдресЭлектроннойПочты;
Сообщение.ИмяОтправителя = ""+Объект.Организация.Наименование;
ПочтовыеАдреса = Сообщение.Получатели;
ПочтовыйАдрес = ПочтовыеАдреса.Добавить();
ПочтовыйАдрес.Адрес = Счет.Адрес;
Сообщение.Тема = Объект.ТемаПисьма;
ИнтернетТекстПочтовогоСообщения = Сообщение.Тексты.Добавить();
ИнтернетТекстПочтовогоСообщения.Текст = СодержаниеПисьмаКонтрагент;
ИнтернетТекстПочтовогоСообщения.ТипТекста = ТипТекстаПочтовогоСообщения.ПростойТекст;
Попытка
Почта.Послать(Сообщение);
Исключение
Сообщить(ОписаниеОшибки());
Продолжить;
КонецПопытки;
Сообщение = Новый СообщениеПользователю();
Сообщение.Текст = "Сообщение отправлено для контрагента "+Счет.Контрагент+" на адрес "+Счет.Адрес;
Сообщение.Сообщить();
Если ЗначениеЗаполнено(Счет.ДокументСчет) Тогда
УдалитьФайлы(ИмяФайлаСчет);
КонецЕсли;
КонецЦикла;
Почта.Отключиться();
Сообщение = Новый СообщениеПользователю();
Сообщение.Текст = "Рассылка успешно выполнена";
Сообщение.Сообщить();
КонецПроцедуры
|
|