|
0
Mulber
15.07.26
✎
15:41
|
Доброго дня всем. Есть постановка:
Настроить автоматическую регистрацию договоров после подписания и автоматическое заполнение номера в вордовском документе.
Убрать лишние шаги "Ознакомился", "Исполнено", "Зарегистрировать".
С первой частью бодался с помощью детектора. Что-то вроде:
Подробности
код детектора:
Результат = Ложь;
Запрос = Новый Запрос();
Запрос.Текст =
"ВЫБРАТЬ
| ВнутренниеДокументы.Ссылка КАК Ссылка
|ИЗ
| Справочник.ВнутренниеДокументы КАК ВнутренниеДокументы
|ГДЕ
| НЕ ВнутренниеДокументы.ПометкаУдаления
| И ВнутренниеДокументы.ВидДокумента.Родитель В ИЕРАРХИИ (&ВидДокумента)
| И ВнутренниеДокументы.РегистрационныйНомер = """"
| И ВнутренниеДокументы.РезультатПодписания = &РезультатПодписания";
Запрос.УстановитьПараметр("ВидДокумента", Справочники.ВидыВнутреннихДокументов.НайтиПоНаименованию("Договоры"));
Запрос.УстановитьПараметр("РезультатПодписания", Перечисления.РезультатыПодписания.Подписан);
РезультатЗапроса = Запрос.Выполнить().Выбрать();
Если РезультатЗапроса.Следующий() Тогда
ПараметрыВозврата.Вставить("Источник", РезультатЗапроса.Ссылка);
Результат = Истина;
КонецЕсли;
дополнительный обработчик бизнес-события:
Попытка
Ур = УровеньЖурналаРегистрации.Информация;
// Событие - строка из РгС ПроизошедшиеБизнесСобытия
ИмяСобытия = "";
Документ = Событие.Источник;
ЮИБ_ОбщегоНазначенияСервер.АвтоматическаяРегистрацияДоговора(Документ);
Исключение
Ур = УровеньЖурналаРегистрации.Ошибка;
Инфо = СокрЛП(ОписаниеОшибки());
ЗаписьЖурналаРегистрации("Договоры", Ур, , Документ, Инфо);
КонецПопытки;
процедура авторегистрации:
Процедура АвтоматическаяРегистрацияДоговора(Документ) Экспорт
УстановитьПривилегированныйРежим(Истина);
// Проверим, что документ еще не зарегистрирован.
Если ОбщегоНазначения.ЗначениеРеквизитаОбъекта(Документ, "РегистрационныйНомер") <> "" Тогда
Возврат;
КонецЕсли;
СообщениеОбОшибке = "";
Если Делопроизводство.ЗарегистрироватьПредмет(Документ, СообщениеОбОшибке) Тогда
Делопроизводство.ЗаписатьСостояниеДокумента(
Документ,
ТекущаяДатаСеанса(),
Перечисления.СостоянияДокументов.Зарегистрирован,
ПользователиКлиентСервер.ТекущийПользователь());
КонецЕсли;
УстановитьПривилегированныйРежим(Ложь);
КонецПроцедуры
а вот что делать с: Убрать лишние шаги "Ознакомился", "Исполнено", "Зарегистрировать"? причем для конкретного пользователя, желательно
Правила эскалации настраивать для сотен шаблонов - ну такое себе. Маршрутов тоже много. Может есть простое решение, чтобы у определенного пользователя эти задачи автоматом завершались?
Ну и: >>автоматическое заполнение номера в вордовском документе.
|
|