Добрый день!
Иногда (вернее всегда) при запуске комплексного процесса в 1С: Документооборот, если используются условия маршрутизации, требуется понять, как будет выглядеть процесс в целом. Т.е. какие согласующие будут добавлены а какие нет, в зависимости от отработки условий маршрутизации.
1С Документооборот отображает при старте комплексного процесса весь маршрут согласования, при этом пользователю не понятно, кто конкретно из согласующих будет в нем участвовать.
Если посмотреть визы документа, прикрепленного к процессу, то мы увидим только полученные визы, и визу следующего (уже подготовленного этапа) но не увидим картину в целом.
Немного изменив конфигурацию удалось получить актуальный маршрут. Время формирования маршрута < 1 сек.
Итак, логика:
При использовании условий маршрутизации, допустим Если сумма документа > 1 000 000 -> добавить Главного бухгалтера мы получаем согласующего, которого может не быть для документов. Таких условий в маршруте может быть много. Для дальнейшей обработки построения маршрута, добавим в справочник "Условия маршрутизации" реквизит с типом "Булево", "УсловиеДобавленияСогласующего". Т.е. условие необходимо для добавления какого-то согласующего.
Проставим для всех подобных условий это признак.
Теперь если в обработку передать запущенный комплексный процесс, то она построит маршрут согласования с учетом всех условий в процессе. Можно так же немного изменить код, и передать в обработку не процесс а внутренний документ, что более актуально, затем по нему найти запущенный процессы (обычно он один) и затем построить актуальный маршрут.
Тестировалось на версии
Документооборот 8 КОРП, редакция 2.1 (2.1.11.5) (http://v8.1c.ru/doc8)
Copyright © ООО "1C-Софт", 2009-2017. Все права защищены
(http://www.1c.ru)
Оба внешних отчета прикреплены к вложению. Один для Бизнес процесса, другой для внутреннего документа.