我在BPMN中有几个流程定义,并使用Activity来启动它们。流程定义包括负责执行任务的用户。互联网上充满了如何管理此类方案的例子。
但是现在我需要针对多个部门启动同一进程的多个流程实例。每个部门都有近乎相同的组织结构,但人员并不相同。例如发货后,部门负责人必须将报告发送给客户。在这种情况下,部门主管的行为相同,但每次都是不同的人。以下BPMN定义无法管理:
<resourceAssignmentExpression>
<formalExpression>head</formalExpression>
</resourceAssignmentExpression>
因为每个部门都有自己的负责人。
所以我的问题是:如何在不同的BPMN流程实例中管理用户?
答案 0 :(得分:0)
如果我正在构建此解决方案,我会在启动时将部门作为businessKey传递给流程实例。 然后,我将使用附加到assign事件的任务侦听器来确定应根据业务键分配任务的人员。 此方法的其他优点是,业务密钥将保留在历史记录中,使您有机会按部门报告实例。
希望这有帮助。