Добрый день. Необходимо на этапе инициализации procForm определить, какой outcome был выбран пользователем в форме, чтобы потом задать procForm соответствующий заголовок.
Добрый день!
При открытии формы с помощью кнопки выполнения процессного действия, в форму передаются несколько параметров (procTask, procInstance, formDefinition). В исходном коде StandardProcForm вот так объявлен параметр procInstance:
@WindowParam(name = "procInstance")
protected ProcInstance procInstance;
Значение outcome хранится в соответствующем поле класса ProcTask (процессная задача).
Таким образом, внутри вашей формы вы можете получить результаты предыдущих задач, выполнив JPQL запрос, который находит все ProcTask, связанные с переданным в форму экземпляром процесса procInstance
Речь идет о получении результата текущей задачи, когда задача фактически еще не выполнена пользователем: пользователь выбирает вариант выполнения в фрэйме процесса, затем ему открывается ProcForm в котором нужно заполнить комментарий выполнения. В это время (у формы которая открылась с комментарием) caption должен сформироваться в зависимости от выбранного пользователем варианта. Например если пользователь выбрал вариант “Согласовать”, то заголовок у открывающегося ProcForm должен быть: “Согласовать …”
Сделали тикет на эту задачу (см. ссылку в правой панели).
Сейчас, наверное, вы можете сменить заголовок окна формы только создав свой аналог CompleteProcTaskAction, который после открытия формы проставит ей необходимый caption.
Добрый день!
Очень похожая проблема.
Речь идет о получении результата текущей задачи, когда задача фактически еще не выполнена пользователем: пользователь выбирает вариант выполнения в фрэйме процесса
И в зависимости от выбора устанавливать проверку заполнения полей формы
Например у задачи два выхода:
Подтвердить - необходимо заполнить Исполнителя
Отменить - Исполнитель не нужен.
Как определить выбранный пользователем outcome ?
Добрый день. В одном из проектов я подобную проблему решил отказавшись от фрэйма процесса вообще.
На экран были добавлены кнопки выполнения задачи, а на postInit определялось, должен ли пользователь видеть эти кнопки. Ну и потом соответственно в зависимости от того, какая кнопка была нажата - вызывался соответствующий экран (custom’ный на сколько я помню) в котором заполнялись параметры.
Но дело был год назад, возможно сейчас можно сделать все с помощью фрэйма процесса. Это бы здорово облегчело жизнь
Спасибо за предложенный вариант.
Решение уже найдено. Использовала
processFormService.getOutcomesWithForms(procTask)
На всякий случай:
В procForm передается параметр caption
с локальным описанием выбранного выхода.
@WindowParam protected String caption;