子流程是一种特殊的流程活动,它可以包含其他的流程元素,它是一个较大的流程组成部分。

一、嵌入子流程

整个子流程会被完整的定义在父流程中。

二、调用子流程

存在多个流程共用的子流程,就可以把这个子流程单独抽取成一个文件,在其他流程定义文件中可以引用这个子流程。

三、事件子流程

事件子流程是指由事件触发的子流程。由于这种子流程是有事件触发,所以事件子流程中不能使用无指定开始事件,activiti中只支持错误开始事件。

四、事务子流程

事务子流程属于嵌入式子流程中的一种,用于将多个流程活动放到同一个流程事务中。

对于流程事务可能会有三种结果:事务成功完成,事务取消,事务错误。对于成功完成的事务执行流完成后沿着顺序流离开事务子流程;对于取消的事务会触发补偿行为;错误完成的事务子流程不会进行流程补偿。