Доброго всем дня.
Проблема следующая. Когда прерываем процесс согласования, у документа состояние не меняется, как было, "На согласовании", например, так и остаётся. Что очень неудобно, так как пользователь не может ничего изменить перед запуском нового процесса согласования. Решено было это допилить в конфигурации самим, при прерывании ставить статус "Отклонён". Вопрос в том, что по идее может быть несколько процессов согласования по документу, например сначала они запустили по шаблону комплексный процесс, потом поняли что не хватает согласующих и запустили отдельно процесс согласования для конкретного согласующего. Так вот, при прерывании надо проверять, есть ли ещё активные процессы по документу. Как это можно сделать программно, есть идеи? Когда во внутреннем документе нажимаешь на ссылку "Процессы и задачи", Документооборот находит же все процессы по документу и в верхней части показывает активные задачи. Значит, есть какой-то стандартный механизм для этого. Только найти я его не могу.
Проблема следующая. Когда прерываем процесс согласования, у документа состояние не меняется, как было, "На согласовании", например, так и остаётся. Что очень неудобно, так как пользователь не может ничего изменить перед запуском нового процесса согласования. Решено было это допилить в конфигурации самим, при прерывании ставить статус "Отклонён". Вопрос в том, что по идее может быть несколько процессов согласования по документу, например сначала они запустили по шаблону комплексный процесс, потом поняли что не хватает согласующих и запустили отдельно процесс согласования для конкретного согласующего. Так вот, при прерывании надо проверять, есть ли ещё активные процессы по документу. Как это можно сделать программно, есть идеи? Когда во внутреннем документе нажимаешь на ссылку "Процессы и задачи", Документооборот находит же все процессы по документу и в верхней части показывает активные задачи. Значит, есть какой-то стандартный механизм для этого. Только найти я его не могу.
По теме из базы знаний
- Интеграция сценарного тестирования в процесс разработки
- Разработка и сценарное тестирование с Vanessa-ADD. Практические примеры сценариев. Шаги встроенной библиотеки
- Загрузка чеков в 1С из ФНС в документы БП, УНФ, ERP, КА и УТ
- «БИП: Бизнес-Процессы». Интеграция с Telegram и Конструктор чат-ботов
- "БИП: Бизнес-Процессы". Пример настройки сценария "Обработка интернет-заказа клиента"
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Можно программно создать текст запроса.
Примерно так, но необходимо доработать "Объединить ВСЕ" и разыменование
ТекстЗапроса = "";
Для каждого МетаданныеБизнесПроцесса Из Метаданные.БизнесПроцессы Цикл
ТекстЗапроса = ТекстЗапроса+" ВЫБРАТЬ ПЕРВЫЕ 1
| БизнесПроцесс.Ссылка
|ИЗ
| БизнесПроцесс.КомплексныйПроцесс КАК КомплексныйПроцесс
|ГДЕ
| КомплексныйПроцесс.Стартован = ИСТИНА
| И КомплексныйПроцесс.Состояние = ЗНАЧЕНИЕ(Перечисление.СостоянияБизнесПроцессов.Активен)
| И КомплексныйПроцесс.Завершен = ЛОЖЬ
| И КомплексныйПроцесс.Предметы.Предмет = &ПредметПроцесса";
ТекстЗапроса = СтрЗаменить(ТекстЗапроса,"БизнесПроцесс.КомплексныйПроцесс","БизнесПроцесс."+МетаданныеБизнесПроцесса.Имя);
КонецЦикла;
Запрос.УстановитьПараметр("ПредметПроцесса",ВАШДокумент);
Примерно так, но необходимо доработать "Объединить ВСЕ" и разыменование
ТекстЗапроса = "";
Для каждого МетаданныеБизнесПроцесса Из Метаданные.БизнесПроцессы Цикл
ТекстЗапроса = ТекстЗапроса+" ВЫБРАТЬ ПЕРВЫЕ 1
| БизнесПроцесс.Ссылка
|ИЗ
| БизнесПроцесс.КомплексныйПроцесс КАК КомплексныйПроцесс
|ГДЕ
| КомплексныйПроцесс.Стартован = ИСТИНА
| И КомплексныйПроцесс.Состояние = ЗНАЧЕНИЕ(Перечисление.СостоянияБизнесПроцессов.Активен)
| И КомплексныйПроцесс.Завершен = ЛОЖЬ
| И КомплексныйПроцесс.Предметы.Предмет = &ПредметПроцесса";
ТекстЗапроса = СтрЗаменить(ТекстЗапроса,"БизнесПроцесс.КомплексныйПроцесс","БизнесПроцесс."+МетаданныеБизнесПроцесса.Имя);
КонецЦикла;
Запрос.УстановитьПараметр("ПредметПроцесса",ВАШДокумент);
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот