otpravka_pechatnoj_formi_na_pochtu_email

Это старая версия документа!


Отправка печатной форми на почту (eMail)

РаботаСоСделками.ОтправитьСчетНаПочту(ЭтотОбъект.Ссылка);
Функция ОтправитьТабличныйДокументЭлектроннойПочтойКакPDF(УчетнаяЗаписьПочтыОтправителя, ПочтаПолучателя, ТекстПисьма, ТемаПисьма, АдресТабличногоДокументаВоВременномХранилище, ДокументОснование=Неопределено)
	
	УспешноОтправлено = Ложь;
	
	Если УчетнаяЗаписьПочтыОтправителя = Неопределено Или УчетнаяЗаписьПочтыОтправителя.Пустая() Тогда	
		Возврат УспешноОтправлено;			
	КонецЕсли; 
	
	СписокПолучателей								=	Новый Массив;
	СписокПолучателей.Добавить(ПочтаПолучателя);	
	
	ВременноеХранилищеФайла = ПоместитьВоВременноеХранилище(АдресТабличногоДокументаВоВременномХранилище, Новый УникальныйИдентификатор);
	//Вложения = Новый Массив;
	//ОписаниеВложения = Новый Структура("Представление, АдресВоВременномХранилище", РегистрыСведений.РегистрКонстант.ПолучитьЗначениеКонстанты("Наименование вложения в письме") + "Рахунок.pdf", ВременноеХранилищеФайла);
	//Вложения.Добавить(ОписаниеВложения);
	
	НовоеПисьмоИсходящее							=	Документы.ЭлектронноеПисьмоИсходящее.СоздатьДокумент();
	
	НовоеПисьмоИсходящее.Автор						=	ПараметрыСеанса.ТекущийПользователь;
	НовоеПисьмоИсходящее.УчетнаяЗапись				=	УчетнаяЗаписьПочтыОтправителя;
	НовоеПисьмоИсходящее.Дата						=	ТекущаяДата();
	НовоеПисьмоИсходящее.ДатаКогдаОтправить			=	НовоеПисьмоИсходящее.Дата+1;
	НовоеПисьмоИсходящее.Кодировка					=	"UTF-8";
	НовоеПисьмоИсходящее.Важность					=	Перечисления.ВариантыВажностиВзаимодействия.Обычная;
	
	НовоеПисьмоИсходящее.ТипТекста                  =	Перечисления.ТипыТекстовЭлектронныхПисем.ПростойТекст;
	НовоеПисьмоИсходящее.ЕстьВложения				=	Истина;	
	НовоеПисьмоИсходящее.Тема						=	ТемаПисьма;
	НовоеПисьмоИсходящее.Текст                      =	ТекстПисьма;
	НовоеПисьмоИсходящее.Основание					=	ДокументОснование;	
	НовоеПисьмоИсходящее.Комментарий    			=	"Создано автоматически при авто-создании счетов: "+ТекущаяДата();

	Для Каждого СтрокаПолучаетелей из СписокПолучателей Цикл
		Если НЕ ПустаяСтрока(СтрокаПолучаетелей) Тогда
			НоваяЗаписьОПолучателе							=	НовоеПисьмоИсходящее.ПолучателиПисьма.Добавить();
			НоваяЗаписьОПолучателе.Адрес					=	СокрЛП(СтрокаПолучаетелей);
			НовоеПисьмоИсходящее.СписокПолучателейПисьма	=	НовоеПисьмоИсходящее.СписокПолучателейПисьма+СокрЛП(СтрокаПолучаетелей)+";";
		КонецЕсли;
	КонецЦикла;
	
	
	Попытка
		НовоеПисьмоИсходящее.Записать(РежимЗаписиДокумента.Запись);
		УспешноЗаписано	=	Истина;
	Исключение
		ЗаписьЖурналаРегистрации("Отправка письма счетов", УровеньЖурналаРегистрации.Ошибка,,,"Ошибка отправки письма с авто-счетом "+ПочтаПолучателя+", "+ОписаниеОшибки());
		УспешноЗаписано	=	Ложь;	
	КонецПопытки;
	
	Если УспешноЗаписано Тогда  
		
		//Добавляем вложение с ВременногоХранилища. Вложение добавляется только к ссылке
		УправлениеЭлектроннойПочтой.ЗаписатьВложениеЭлектронногоПисьмаИзВременногоХранилища(НовоеПисьмоИсходящее.Ссылка,ВременноеХранилищеФайла,РегистрыСведений.РегистрКонстант.ПолучитьЗначениеКонстанты("Наименование вложения в письме") + "Рахунок.pdf",12);

		Попытка	
			ПисьмоОбъект						= НовоеПисьмоИсходящее.Ссылка.ПолучитьОбъект();
			ИдентификаторПисьма 				= Взаимодействия.ВыполнитьОтправкуПисьма(ПисьмоОбъект);
			ПисьмоОбъект.ИдентификаторСообщения = ИдентификаторПисьма;
			ПисьмоОбъект.СтатусПисьма    		= Перечисления.СтатусыИсходящегоЭлектронногоПисьма.Отправлено;
			ПисьмоОбъект.ДатаОтправления 		= ТекущаяДатаСеанса();
			ПисьмоОбъект.Записать(РежимЗаписиДокумента.Проведение); 
			
			УспешноОтправлено	=	Не ПустаяСтрока(ИдентификаторПисьма);
		Исключение
			ЗаписьЖурналаРегистрации("Отправка письма счетов", УровеньЖурналаРегистрации.Ошибка,,,"Ошибка отправки письма с авто-счетом "+ПочтаПолучателя+", "+ОписаниеОшибки());
			УспешноОтправлено	=	Ложь;	
		КонецПопытки;
		
	КонецЕсли;
	
	Возврат УспешноОтправлено;
	
КонецФункции
  • /sites/data/attic/otpravka_pechatnoj_formi_na_pochtu_email.1734608038.txt.gz
  • Последнее изменение: 2024/12/19 11:33
  • tro