Задача состояла в том, чтобы на время отпуска задачи по документам вида 1 (в определенной папке видов внутренних документов) попадали одному из исполнителей, все остальное должно уходить другому
Проблема состояла в том, что эскалация задач не отработала должным образом, поэтому решение пришло через подписки бизнес-событий. Решение:
1. Открываем справочник "Дополнительные обработчики"
Создаем новый элемент "делегирование с 1 по 16 августа"
2. В код обработки вставляем код:
3. На закладке "вид события" добавляем элемент
Ниже код обработчика:
Попытка
Если ТипЗнч(Событие.Источник) = Тип("ЗадачаСсылка.ЗадачаИсполнителя") Тогда
ИмяИсполнителя = строка(Событие.Источник.Исполнитель);
РольИсполнителя = строка(Событие.Источник.РольИсполнителя);
Если найти(ИмяИсполнителя,"ФИО1")>0 или найти(РольИсполнителя,"HRM_Corp_Руководитель Управление компенсаций и льг")>0 Тогда
ПапкаДокументаФОТ = Справочники.ВидыВнутреннихДокументов.НайтиПоНаименованию("Информационно-справочная документация/Information and reference documents");
ТЧпредмет= Событие.Источник.предметы[0].предмет;
Если ЗначениеЗаполнено(ТЧпредмет) и ЗначениеЗаполнено(ПапкаДокументаФОТ) Тогда
Если ЗначениеЗаполнено(ТЧпредмет.виддокумента) Тогда
Если ТЧпредмет.виддокумента.ПринадлежитЭлементу(ПапкаДокументаФОТ) Тогда
ИнфоОПеренаправлении = Новый Структура;
ИнфоОПеренаправлении.Вставить("Исполнитель", справочники.пользователи.найтипонаименованию("ФИО2"));
ИнфоОПеренаправлении.Вставить("Комментарий", "#422871");
ИнфоОПеренаправлении.Вставить("РольИсполнителя", Неопределено);
Результат = БизнесПроцессыИЗадачиСервер.ПеренаправитьЗадачу(Событие.Источник, ИнфоОПеренаправлении);
иначе
ИнфоОПеренаправлении = Новый Структура;
ИнфоОПеренаправлении.Вставить("Исполнитель", справочники.пользователи.найтипонаименованию("ФИО3"));
ИнфоОПеренаправлении.Вставить("Комментарий", "#422871");
ИнфоОПеренаправлении.Вставить("РольИсполнителя", Неопределено);
Результат = БизнесПроцессыИЗадачиСервер.ПеренаправитьЗадачу(Событие.Источник, ИнфоОПеренаправлении);
КонецЕсли;
КонецЕсли;
КонецЕсли;
КонецЕсли;
КонецЕсли;
Исключение
ЗаписьЖурналаРегистрации("ИнформационнаяБаза.ОбновлениеИБ",
УровеньЖурналаРегистрации.Ошибка, , ,
"Выполнено " + ОписаниеОшибки());
КонецПопытки;