Как отправить ошибки из журнала регистрации на почту?

Публикация № 997513

Администрирование - Журнал регистрации

Журнал регистрации Excel почта почтовый профиль

32
Процедуры отправки ошибок из журнала регистрации на почту. Журнал регистрации выгружается в файл Excel, далее прикрепляется к письму. Для отправки писем создано регламентное задание.

Для отправки писем необходимо добавить регламентное задание:

Далее необходимо настроить расписание регламентного задания (в моем случае задание выполняется раз в сутки, в 23.50).

Далее нужно указать для регламентного задания процедуру ОтправитьОшибкиИзЖурналаРегистрацииНаПочту(). Процедура должна находиться в общем модуле.

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

        Построитель.ИсточникДанных          = Новый ОписаниеИсточникаДанных(ВнешниеДанные);
        Построитель.ВыводитьЗаголовокОтчета = Ложь;
        Построитель.Вывести(ТабДок );

        ИмяФайла = ПолучитьИмяВременногоФайла("xls");
    
        ТабДок.Записать(ИмяФайла,ТипФайлаТабличногоДокумента.XLS97);
	                     	
	ОтправитьОповещениеОтветственномуЛицу("Ошибки во вложенном файле","Ошибки в журнале регистрации базы "+СтрокаСоединенияИнформационнойБазы(),"it@company.com", ИмяФайла); 		
	
КонецПроцедуры

Функция ОтправитьОповещениеОтветственномуЛицу(ТекстСообщения,ТемаПисьма,email,ПутьКФайлуВложения = "") экспорт   
	
	ИПП = Новый ИнтернетПочтовыйПрофиль;
	ИПП.АдресСервераIMAP	= "mail.company.com"; 
	ИПП.АдресСервераSMTP	= "mail.company.com";
	ИПП.ИспользоватьSSLIMAP	=  Истина;      
	ИПП.ПарольIMAP	        = "Пароль1";
	ИПП.ПарольSMTP	        = "Пароль1";
	ИПП.ПользовательIMAP	= "company\1c";
	ИПП.ПользовательSMTP	= "company\1c";
	ИПП.ПортIMAP	        = 999;  
	ИПП.ПортSMTP	        = 24;
	ИПП.Таймаут	        = 70;  
	
	Попытка
		Сообщение = Новый ИнтернетПочтовоеСообщение;			
		Сообщение.Получатели.Добавить(email);
		Сообщение.Отправитель.Адрес = "1c@company.ru";
		Сообщение.Тема = ТемаПисьма; 	 
		Сообщение.Тексты.Добавить(ТекстСообщения);
		
		Если ЗначениеЗаполнено(ПутьКФайлуВложения) Тогда
		  Сообщение.Вложения.Добавить(ПутьКФайлуВложения);
		КонецЕсли;

		Почта = Новый ИнтернетПочта;
		Почта.Подключиться(ИПП);
		Почта.Послать(Сообщение);
		Почта.Отключиться();
	Исключение
		//ДобавитьСообщениеДляЖурналаРегистрации(СобытиеЖурналаРегистрации(), "Ошибка", ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()),,Истина); 
	КонецПопытки;
	
КонецФункции

Доработка проверялась на конфигурации "Управление производственным предприятием, редакция 1.3 (1.3.49.1)".

К статье приложены 2 обработки по работе с журналом регистрации:

Отчет по журналу регистрации (обычное приложение)

Отчет по журналу регистрации (управляемое приложение)

 

32

Скачать файлы

Наименование Файл Версия Размер
Отчет по журналу регистрации (обычное приложение)
.erf 12,77Kb
08.02.19
0
.erf 12,77Kb Скачать
Отчет по журналу регистрации (управляемое приложение)
.erf 13,41Kb
08.02.19
0
.erf 13,41Kb Скачать

См. также

Специальные предложения

Автор запретил комментарии