Отправка документа по эл. почте с печатью и подписью.
Здравствуйте. Такая проблемка:
1. при нажатии на кнопку печать - формируются счета, акты, претензии. (есть запрос, который подставляет печать и подпись в зависимости от выбранной организации). Все выводит, печатает.
2. Реализовываю возможность отправлять эти документы по эл. почте:
а. Сначала эти документы сохраняются в формате пдф, но они без печатей и подписей(Что нужно дописать, чтобы они сохранялись с ними?)
б. Ну и отправка без проблем работает.
1. при нажатии на кнопку печать - формируются счета, акты, претензии. (есть запрос, который подставляет печать и подпись в зависимости от выбранной организации). Все выводит, печатает.
2. Реализовываю возможность отправлять эти документы по эл. почте:
а. Сначала эти документы сохраняются в формате пдф, но они без печатей и подписей(Что нужно дописать, чтобы они сохранялись с ними?)
б. Ну и отправка без проблем работает.
По теме из базы знаний
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
вот кусочки кода.( это при печати)
Это создание файла и последующая отправка:
// Вывести подписи
ОбластьМакета = Макет.ПолучитьОбласть("Подписи");
Если ПечататьСПодписями Тогда
ОбластьМакета.Рисунки.Д1.ВыводитьНаПечать = Истина;
Иначе
ОбластьМакета.Рисунки.Д1.ВыводитьНаПечать = Ложь;
ПустаяСсылкаОбСпр=Справочники.ХранилищеДополнительнойИнформации.ПустаяСсылка();
СсылкаНаФайл=ЗапросФайла(Объект.Организация.Ссылка,"Печать",ПустаяСсылкаОбСпр);
Если НЕ СсылкаНаФайл=ПустаяСсылкаОбСпр Тогда
ПечатьКартинка=СсылкаНаФайл.Хранилище.Получить();
Рисунок = ОбластьМакета.Рисунки.Добавить(ТипРисункаТабличногоДокумента.Картинка);
Рисунок.Высота = 40;
Рисунок.Ширина = 40;
Рисунок.Верх = 2;
Рисунок.Лево = 47;
Рисунок.Линия=новый линия(ТипЛинииРисункаТабличногоДокумента.НетЛинии);
Рисунок.ГраницаСверху=Ложь;
Рисунок.ГраницаСлева=Ложь;
Рисунок.ГраницаСнизу=Ложь;
Рисунок.ГраницаСправа=Ложь;
Рисунок.ВыводитьНаПечать=Истина;
Рисунок.Картинка= Новый Картинка(ПечатьКартинка);
//ОбластьМакета.Рисунки.Д1.Картинка = Новый Картинка(ПечатьКартинка);
Рисунок.РазмерКартинки = РазмерКартинки.Растянуть;
Рисунок.Узор=ТипУзораТабличногоДокумента.БезУзора;
КонецЕсли;
ПоказатьЭто создание файла и последующая отправка:
Для каждого й из Объект.Документы Цикл
Если Не ЗначениеЗаполнено(й.ЭлектроннаяПочтаКонтрагента) Тогда
Продолжить;
КонецЕсли;
МассивНакладных = Новый Массив;
МассивНакладных.Добавить(й.Документ);
ОбъектыПечати = Новый СписокЗначений;
ТабДок = ПечатьАктов(МассивНакладных, ОбъектыПечати, ИСТИНА, Истина);
ИмяФайла = "/home/ExchangeLocal/Акт выполненных работ.PDF";
ТабДок.Записать(ИмяФайла, ТипФайлаТабличногоДокумента.PDF);
Показать//Отправкапоимейлу
&НаСервере
функция УстановитьСоединение(ИмяФайла,ИмяФайла1,ИмяФайла2,ИмяФайла3)
Профиль = Новый ИнтернетПочтовыйПрофиль;
Профиль.АдресСервераSMTP = "smtp.mail.ru";
Профиль.АдресСервераPOP3 = "pop.mail.ru";
Профиль.ПортPOP3 = 995;
Профиль.ПортSMTP = 465;
Профиль.Пользователь = "123@mail.ru";
Профиль.Пароль = "123456";
Профиль.ПользовательSMTP = "123@mail.ru";
Профиль.ПарольSMTP = "123456";
Профиль.АутентификацияSMTP = СпособSMTPАутентификации.Login;
Профиль.ИспользоватьSSLPOP3 = Истина;
Профиль.ИспользоватьSSLSMTP = Истина;
Почта = Новый ИнтернетПочта;
// Создадим почтовое сообщение
Для каждого й из объект.Документы Цикл
Письмо = Новый ИнтернетПочтовоеСообщение;
Текст = Письмо.Вложения.Добавить(ИмяФайла);
Текст = Письмо.Вложения.Добавить(ИмяФайла1);
Попытка
Исключение Текст = Письмо.Вложения.Добавить(ИмяФайла2);
КонецПопытки;
Текст = Письмо.Вложения.Добавить(ИмяФайла3);
// Текст.ИмяФайла = ТипФайлаТабличногоДокумента.PDF;
//Письмо.Тема = "Тест";
Письмо.Тема = й.Документ;
Письмо.Отправитель = "`123@mail.ru";
Письмо.ИмяОтправителя = объект.Организация;
Письмо.Получатели.Добавить(й.ЭлектроннаяПочтаКонтрагента);
//Письмо.Получатели.Добавить("123@list.ru");
Попытка
Почта.Подключиться(Профиль);
Сообщить("Подключенено");
Почта.Послать(Письмо);
Сообщить("Письма отправлены");
Исключение
Сообщить("Не удалось подключиться к серверу");
Сообщить(ОписаниеОшибки());
КонецПопытки;
Почта.Отключиться();
Сообщить("Соединение завершено");
КонецЦикла;
Показать
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот