Camunda Call Activiti调用子流程版本动态指定

描述

Camunda调用子流程时,到底要调用哪一个版本的子流程定义,可以通过设置CalledElementBinding属性来进行设置。

CalledElementBinding属性有2个值是可以使用变量的,即,versionversionTag

准备

我们计划用主流程中一个的Call Activity来进行演示,然后部署两个版本的子流程。

主流程

切换到General标签,在Details区域中将Binding选择为version,然后会在下一行出现一个名为Version的输入框,在这个输入框中填入一个变量名称,比如:${StaffEnrollment_HR_Version}

image-20210120095048444

子流程(version 1)

image-20210120094747348

子流程(version 2)

image-20210120094815374

验证

  1. 创建一个流程实例,在发起的时候,设置流程实例变量StaffEnrollment_HR_Version的值为1:

    image-20210120095828538

  2. 查看主流程中的变量值:

image-20210120095950831

  1. Called Process Instances标签页跳转到版本为1的子流程中:

    image-20210120100723559

  1. 再次创建一个流程实例,在发起的时候,设置流程实例变量StaffEnrollment_HR_Version的值为2:

image-20210120100858615

  1. 查看主流程中的变量值:

image-20210120100942973

  1. 从Called Process Instances标签页跳转到版本为2的子流程中:

image-20210120101001495

EOF