groovy 在Bonita BPM 7.5中将任务分配给特定用户

y53ybaqx  于 12个月前  发布在  其他
关注(0)|答案(2)|浏览(94)

我有一个进程,其中有许多任务应该由不同的用户完成,我不想使用bonita预定义的actor过滤器(initiator和initiator-manager)是否有一种方法可以通过更改actorMap或定义新的actor过滤器来准确选择哪个用户可以完成任务?
我尝试添加三个演员和配置->演员Map,并为每个演员选择1个用户,但问题是,当指定的演员(用户)在一个步骤中执行任务时,在表单中提交信息后,没有释放任务的选项,并让流程继续到另一个演员(用户)必须完成的下一个任务。(英语不好)

57hvy0tb

57hvy0tb1#

我认为你使用 actors 和配置 actor mapping 的方法是正确的,应该会提供你所期望的结果。
在以下情况下:

  • 步骤1用于ActorA,ActorAMap到用户walter.bates
  • 步骤2用于ActorB,ActorBMap到用户helen.kelly

当沃尔特看到任务列表时,它将能够:

  • 选择任务
  • 接受它:他仍然需要接受它,因为潜在用户组或多个用户可以Map到一个参与者
  • 提交表单
  • 流程执行将继续到步骤2
  • 在这一点上,沃尔特。贝茨没有任何任务要做,海伦。凯利有一个任务要做。

一旦walter.bates提交了表单,任务就完成了,不需要发布它。
你可以创建download the basic example来说明这个行为。
另外,在您的用例中,我认为使用“单用户”过滤器可能很有趣,这样用户就不必执行任务。我创建another diagram来说明这个解决方案。

lf5gs5x2

lf5gs5x22#

我通过以下方法解决了它:
使用Actor为每个任务过滤单个用户,并使用Groovy脚本指定用户ID:apiAccessor.identityAPI.getUserByUserName("walter.bates")
identityAPI的其他一些方法也很有用。

相关问题