Здравствуйте. Используем в своем приложение bproc. Группы доступа у нас используются как подразделения. Вопрос в следующем, можно ли в процессе, сделать параллельные групповые задачи?
Добрый день!
Объясните, пожалуйста, ваш вопрос поподробнее.
“параллельные групповые задачи” - это две или более задачи с multi-instance type каким-либо, каждая из которых назначена на определённую группу людей и которые выполняются параллельно? Приложите скриншот с диаграммой процесса, если я неправильно понимаю.
Это как связано с задачами в процессе?
Все правильно поняли. А насчет групп доступа навсякий случай уточнил, может быть можно их как то использовать в процессе.
Тогда всё должно работать вроде бы. Какие проблемы у вас с этим возникли?
При такой настройке программы задачи будут назначаться на пользователей которых получим в провайдере. И будет соответственно столько задач, сколько мы получим там пользователей. А нам нужны не назначенные задачи, а групповые. Например, у нас есть 5 сотрудников, два из них в одном подразделении, три в другом. Соответственно должны сгенерироваться не 5 параллельных назначенных задач, а две параллельные групповые(одна для одного подразделения, а другая для другого).
В теории, можете попробовать следующее:
Для multi-instance Collection пропишите выражение для вызова метода бина, который вернёт вам сгруппированные строковые представления айдишников пользователей, на примере выше это ${myBean.getUsers()}
Т.е. этот метод должен разбить пользователей по департаментам и вернуть коллекцию коллекций строк. Строки - это айдишники пользователей (User.id). Т.е. в первом элементе коллекции у вас будут строковые айдишники отдела 1. Во втором элементе коллекции у вас будет набор строковых айдишников отдела 2.
В Element variable укажите имя переменной, в которой будет коллекция пользователей текущего отдела (usersOfDepartment
)
Ну и в Candidate users укажите тип Expression и сошлитесь на эту переменную: ${usersOfDepartment}