1. fromon 20.10.16 17:04 Сейчас в теме

Как отправить отчет нескольким пользователям на Email

Как отправить отчет нескольким пользователям на Email.
Как это сделать программно при его (отчета) формировании?
Что то я не нашел с наскока типового функционала.
Плюс еще хотят отчет видеть в формате *.PDF
Найденные решения
3. necropunk 5 20.10.16 18:00 Сейчас в теме
Можно через внутренние объекты 1С
Процедура ОтправитьАдминам(Тема, ТабДок) Экспорт
	ИмяФайла = ПолучитьИмяВременногоФайла(".PDF");
	ТабДок.Вывод = ИспользованиеВывода.Разрешить;
	ТабДок.Записать(ИмяФайла, ТипФайлаТабличногоДокумента.PDF);

	Почта = Новый ИнтернетПочта;
	УчетнаяЗапись = Справочники.УчетныеЗаписиЭлектроннойПочты.НайтиПоНаименованию("Robot");
	Профиль = Новый ИнтернетПочтовыйПрофиль;
	Профиль.АдресСервераPOP3 = УчетнаяЗапись.POP3Сервер;
	Профиль.АдресСервераSMTP = УчетнаяЗапись.SMTPСервер;
	Если УчетнаяЗапись.ВремяОжиданияСервера > 0 Тогда
		Профиль.ВремяОжидания = УчетнаяЗапись.ВремяОжиданияСервера;
	КонецЕсли; 
	Профиль.Пароль           = УчетнаяЗапись.Пароль;
	Профиль.Пользователь     = УчетнаяЗапись.Логин;
	Профиль.ПортPOP3         = УчетнаяЗапись.ПортPOP3;
	Профиль.ПортSMTP         = УчетнаяЗапись.ПортSMTP;
	
	Если УчетнаяЗапись.ТребуетсяSMTPАутентификация Тогда
		Профиль.АутентификацияSMTP = СпособSMTPАутентификации.ПоУмолчанию;       
		Профиль.ПарольSMTP       = УчетнаяЗапись.ПарольSMTP;
		Профиль.ПользовательSMTP = УчетнаяЗапись.ЛогинSMTP;
	Иначе
		Профиль.АутентификацияSMTP = СпособSMTPАутентификации.БезАутентификации; 
		Профиль.ПарольSMTP       = УчетнаяЗапись.Пароль;
		Профиль.ПользовательSMTP = УчетнаяЗапись.Логин;
	КонецЕсли; 

	Если УчетнаяЗапись.IMAP Тогда
		Профиль.ПортIMAP = УчетнаяЗапись.ПортPOP3;
		Профиль.АдресСервераIMAP = УчетнаяЗапись.POP3Сервер;
		Профиль.ИспользоватьSSLIMAP = УчетнаяЗапись.IMAPTLS;
		Профиль.ПользовательIMAP = УчетнаяЗапись.Логин;
		Профиль.ПарольIMAP = УчетнаяЗапись.Пароль;
	КонецЕсли;	
	
	Почта.Подключиться(Профиль, ПротоколИнтернетПочты[?(УчетнаяЗапись.IMAP, "IMAP", "POP3")]);
	Сообщение = Новый ИнтернетПочтовоеСообщение;
	Сообщение.Тема = Тема;
	Сообщение.ИмяОтправителя = Метаданные.Синоним+": Ошибки";
	Сообщение.Отправитель = "xxxxxx@xxxxxx.ru";
	Сообщение.Кодировка = "windows-1251";
	Сообщение.Получатели.Добавить("xxxxxxxxxxx@xxxxxxx.ru");
	Сообщение.Тексты.Добавить(Тема, ТипТекстаПочтовогоСообщения.ПростойТекст);
	Сообщение.Вложения.Добавить(ИмяФайла);
	Почта.Послать(Сообщение);
	Почта.Отключиться();
КонецПроцедуры
Показать
Остальные ответы
Избранное Подписка Сортировка: Древо
2. necropunk 5 20.10.16 17:55 Сейчас в теме
Смотря как именно надо. Можно через аутлук, через него отправляю примерно так:
Например вот так:

	Попытка
		Outlook = Новый COMОбъект("Outlook.Application");
	Исключение
		Сообщить("Ошибка подключения компоненты Outlook. Возможно, на компьютере не установлен Microsoft Outlook");
	КонецПопытки;
	
	Письмо = Outlook.CreateItem(0);	
	
	Попытка
		Емайл = ПолучитьАдресЭлектроннойПочты();
	Исключение
		Емайл = "";
	КонецПопытки;
	Если ЗначениеЗаполнено(Емайл) Тогда
		Письмо.Recipients.Add(Емайл);
	КонецЕсли;
	ЭлементыФормы.ПолеТабличногоДокументаРезультат.Записать("C:\1.pdf", ТипФайлаТабличногоДокумента.PDF);
        Письмо.Attachments.Add("C:\1.pdf");
	Попытка
		Письмо.Display(); //или, например, Письмо.Send(); 
	Исключение
		Сообщить("Ошибка отображения письма!");
	КонецПопытки;
Показать
3. necropunk 5 20.10.16 18:00 Сейчас в теме
Можно через внутренние объекты 1С
Процедура ОтправитьАдминам(Тема, ТабДок) Экспорт
	ИмяФайла = ПолучитьИмяВременногоФайла(".PDF");
	ТабДок.Вывод = ИспользованиеВывода.Разрешить;
	ТабДок.Записать(ИмяФайла, ТипФайлаТабличногоДокумента.PDF);

	Почта = Новый ИнтернетПочта;
	УчетнаяЗапись = Справочники.УчетныеЗаписиЭлектроннойПочты.НайтиПоНаименованию("Robot");
	Профиль = Новый ИнтернетПочтовыйПрофиль;
	Профиль.АдресСервераPOP3 = УчетнаяЗапись.POP3Сервер;
	Профиль.АдресСервераSMTP = УчетнаяЗапись.SMTPСервер;
	Если УчетнаяЗапись.ВремяОжиданияСервера > 0 Тогда
		Профиль.ВремяОжидания = УчетнаяЗапись.ВремяОжиданияСервера;
	КонецЕсли; 
	Профиль.Пароль           = УчетнаяЗапись.Пароль;
	Профиль.Пользователь     = УчетнаяЗапись.Логин;
	Профиль.ПортPOP3         = УчетнаяЗапись.ПортPOP3;
	Профиль.ПортSMTP         = УчетнаяЗапись.ПортSMTP;
	
	Если УчетнаяЗапись.ТребуетсяSMTPАутентификация Тогда
		Профиль.АутентификацияSMTP = СпособSMTPАутентификации.ПоУмолчанию;       
		Профиль.ПарольSMTP       = УчетнаяЗапись.ПарольSMTP;
		Профиль.ПользовательSMTP = УчетнаяЗапись.ЛогинSMTP;
	Иначе
		Профиль.АутентификацияSMTP = СпособSMTPАутентификации.БезАутентификации; 
		Профиль.ПарольSMTP       = УчетнаяЗапись.Пароль;
		Профиль.ПользовательSMTP = УчетнаяЗапись.Логин;
	КонецЕсли; 

	Если УчетнаяЗапись.IMAP Тогда
		Профиль.ПортIMAP = УчетнаяЗапись.ПортPOP3;
		Профиль.АдресСервераIMAP = УчетнаяЗапись.POP3Сервер;
		Профиль.ИспользоватьSSLIMAP = УчетнаяЗапись.IMAPTLS;
		Профиль.ПользовательIMAP = УчетнаяЗапись.Логин;
		Профиль.ПарольIMAP = УчетнаяЗапись.Пароль;
	КонецЕсли;	
	
	Почта.Подключиться(Профиль, ПротоколИнтернетПочты[?(УчетнаяЗапись.IMAP, "IMAP", "POP3")]);
	Сообщение = Новый ИнтернетПочтовоеСообщение;
	Сообщение.Тема = Тема;
	Сообщение.ИмяОтправителя = Метаданные.Синоним+": Ошибки";
	Сообщение.Отправитель = "xxxxxx@xxxxxx.ru";
	Сообщение.Кодировка = "windows-1251";
	Сообщение.Получатели.Добавить("xxxxxxxxxxx@xxxxxxx.ru");
	Сообщение.Тексты.Добавить(Тема, ТипТекстаПочтовогоСообщения.ПростойТекст);
	Сообщение.Вложения.Добавить(ИмяФайла);
	Почта.Послать(Сообщение);
	Почта.Отключиться();
КонецПроцедуры
Показать
4. necropunk 5 20.10.16 18:00 Сейчас в теме
Если конфа на свежем БСП - то чуть ли не одной строкой можно. Но в УПП 1.3 вроде нельзя.
Оставьте свое сообщение
Новые вопросы с вознаграждением
Автор темы объявил вознаграждение за найденный ответ, его получит тот, кто первый поможет автору.

Вакансии

Разработчик 1С
Москва
зарплата от 100 000 руб. до 160 000 руб.
Полный день

Консультант-аналитик 1С
Санкт-Петербург
Полный день

Удаленный ИТ-журналист
Санкт-Петербург
По совместительству

Программист 1С
Санкт-Петербург
зарплата от 100 000 руб.
Полный день

Программист 1С
Санкт-Петербург
зарплата от 130 000 руб. до 150 000 руб.
Полный день