Каталог решений - Рассылка уведомлений об отпуске

Рассылка уведомлений об отпуске

Рассылка уведомлений об отпуске

В наличии

Внешний отчет для автоматической рассылки уведомлений об отпуске, через встроенную обработку «Рассылка отчетов».

Категория:

Описание

Внешний отчет для прикрепления его в стандартную обработку рассылка отчетов.

Необходимо

1. Добавить внешний отчет. Администрирование/ печатные формы, отчеты и обработки/ Дополнительные отчеты и обработки.

2. Во встроенной обработке "Рассылка отчетов" выбрать новый внешний отчет (на вкладке отчеты/Еще/Подобрать дополнительный отчет, рис.1). Рассылка делается всем пользователям из выбранных в списке Получатели рассылки(вкладка Доставка), у которых до даты начала отпуска осталось от 18 до 24 дней из регистра Плановые ежегодные отпуска. Отправляется три печатные формы: Уведомление, Подтверждение и Заявление на перенос.

Рассылка тестировалась в Зарплата и управление персоналом, редакция 3.1 (3.1.18.189).

Отчет формируется посредством СКД, для вывода в необходимой форме в процедуре ПриКомпоновкеРезультата описан следующий код:

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

КонецПроцедуры

 

has been added to your cart:
Оформление заказа