我有一个进程,其中包含许多任务,应该由不同的用户完成,我不想使用bonita预定义的actor过滤器(发起人和发起人-管理器( 有没有办法通过更改角色映射或定义新的角色过滤器来准确选择哪个用户可以执行任务?
我尝试添加三个参与者并在配置--->Actor映射中为每个参与者选择1个用户,但问题是,当步骤中的指定参与者(用户(接受任务时,在表单中提交信息后,没有选项可以释放任务并让该过程继续执行另一个参与者(用户(必须执行的下一个任务。 (对不起,英语不好(
我认为您使用演员和配置演员映射的方法是正确的,应该提供您期望的结果。
在以下情况下:
- Step1 用于 ActorA,ActorA 映射到用户 walter.bates
- Step2 用于 ActorB,ActorB 映射到用户 helen.kelly
当 Walter 看到任务列表时,它将能够:
- 选择任务
- 接受它:他仍然需要将其视为潜在的用户组或多个用户可以映射到一个Actor 。
- 提交表格
- 进程执行将继续到步骤2
- 在这一点上,Walter.Bates没有任何任务要做,而Helen.Kelly有一个任务要做。
一旦 walter.bates 提交表格,任务就完成了,不需要发布它。
您可以下载我创建的基本示例来说明此行为。
同样在您的用例中,我认为使用"单个用户"过滤器可能会很有趣,这样用户就不必承担任务。我创建了另一个图表来说明此解决方案。
我通过以下方式解决了它:
使用的Actor为每个任务过滤单个用户,并使用Groovy脚本指定用户ID:apiAccessor.identityAPI.getUserByUserName("walter.bates")
其他一些 identityAPI 方法也可以用。