1С Документооборот, дополнительный обработчик бизнес-события

1. katochimoto 11 04.02.19 09:35 Сейчас в теме
Уважаемые форумчане, прошу помочь, никак не разберусь в чем проблема, не отрабатывает доп обработчик бизнес события, система какая есть внутренний документ, к нему добавлен доп.реквизит с типом булево "Важность" необходимо в случае значения реквизита Истина менять во всех подчиненных задачах приоритет на "Высока важность" ниже код обработчика
Задача = Событие.Источник;
ЗаписьЖурналаРегистрации("Пользовательский дополнительный обработчик",УровеньЖурналаРегистрации.Информация,,,НСтр("ru ='Пользовательский дополнительный обработчик Важность. Начало'"));
Документ = ОбзорЗадачВызовСервера.ПолучитьОсновнойПредметДокумент(Задача.Предметы);
Если ЗначениеЗаполнено(Документ) тогда
	       ////Формируем отбор по доп реквизиту 
           Отбор = Новый Структура();
           Отбор.Вставить("Свойство",ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.НайтиПоНаименованию("Важность"));
           НайденныеСтроки = Документ.ДополнительныеРеквизиты.НайтиСтроки(Отбор);
      Если НайденныеСтроки.Количество > 0 тогда 
           Если НайденныеСтроки[0].Значение = Истина тогда
            Задача = Задача.ПолучитьОбъект();
            Задача.Важность = Перечисления.ВаринтыВажностиЗадачи.Высокая;
		    Задача.Записать();
           КонецЕсли;
      КонецЕсли;	
КонецЕсли;
ЗаписьЖурналаРегистрации("Пользовательский дополнительный обработчик", УровеньЖурналаРегистрации.Информация,,,НСтр("ru ='Пользовательский дополнительный обработчик Важность. Конец'"));
Показать
По теме из базы знаний
Вознаграждение за ответ
Показать полностью
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. vnagapov 04.02.19 09:52 Сейчас в теме
Добрый день.
Поменяйте поиск ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.НайтиПоНаименованию("Важность")
на ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.НайтиПоРеквизиту("Заголовок","Важность").
3. katochimoto 11 04.02.19 10:00 Сейчас в теме
(2)Не помогло, непонятно какой кусок кода не отрабатывает(
4. killitch 30 04.02.19 10:13 Сейчас в теме
(3)Так может отладчиком пройтись, чтоб не гадать на кофейной гуще. Так хоть станет понятно где проблема и какие значения там, а уж потом разбирать что не так наделано.
5. katochimoto 11 04.02.19 10:27 Сейчас в теме
(4)к сожалению не знаю в каком модуле ловить обработку задания доп обработчиков, не подскажете?
6. katochimoto 11 04.02.19 10:56 Сейчас в теме +0.04 $m
Всем спасибо рабочий вариант вот:
Задача = Событие.Источник;

ЗаписьЖурналаРегистрации("ПользовательскийОбработчик.Важность", 
        УровеньЖурналаРегистрации.Информация, , ,
        "Начало обработки ");

Документ = ОбзорЗадачВызовСервера.ПолучитьОсновнойПредметДокумент(Задача.Предметы);
Если ЗначениеЗаполнено(Документ) тогда
	       ////Формируем отбор по доп реквизиту 
           Отбор = Новый Структура();
           Отбор.Вставить("Свойство",ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.НайтиПоНаименованию("Важность"));
           НайденныеСтроки = Документ.ДополнительныеРеквизиты.НайтиСтроки(Отбор);
      Если НайденныеСтроки.Количество() > 0 тогда 
           Если НайденныеСтроки[0].Значение = Истина тогда
            Задача = Задача.ПолучитьОбъект();
            Высокая = Перечисления.ВариантыВажностиЗадачи.Высокая;
            Задача.Важность = Высокая;
		    Задача.Записать();
           КонецЕсли;
      КонецЕсли;	
КонецЕсли;
ЗаписьЖурналаРегистрации("ПользовательскийОбработчик.Важность", 
        УровеньЖурналаРегистрации.Информация, , ,
        "Конец обработки ");
Показать
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот