工作流系统之三十三 撤回的实现

工作流系统的回退流,是指流程实例运行到一定阶段后,可以主动的选择回退到曾经运行过的任意轨迹上。回退流的发起方是当前步骤的任务执行人,选择主动的回退,上面有一篇 回退流的实现,主要说明了回退流的实现过程。

工作流系统的撤回,是指流程实例运行了一定的轨迹后,上一步的任务执行人,选择撤回刚刚提交的任务,使得流程再次流转到此步骤。撤回的发起方是当前步骤的上一步任务的执行人,选择主动撤回。


如上图:红色圈为当前运行到的轨迹,当上一步审核步骤的任务执行人,选择主动撤回时,则将回退到审核步骤,再次执行。

 

撤回与回退的两个区别:
1. 撤回只能撤回到当前步骤的上一步,不能跨多个步骤的撤回。回退是可以任意的回退。
2. 撤回的发起方是上一步的任务执行人。回退的发起方是当前步骤的可执行人。

 

撤回与回退的相同点:
1. 撤回和回退都是指回到曾经的轨迹;
2. 撤回和回退回到曾经运行的轨迹后,再次生成此轨迹的任务,并且辅助业务补偿类,将环境或业务数据恢复成原来的,持久化变量可以忽略,临时变量则需要重新赋值。
3. 撤回和回退都不是按照流程定义的正常轨迹流转,需要配置有权限的用户去操作。


撤回功能的实现:
既然撤回与回退都是回到曾经运行的轨迹,只是发起方不一样,所以在实现的时候,只需调用同一流程引擎的实现自由回退的api函数。

 

串行路由,实现撤回,查找当前撤回步骤的下一步是否为当前步骤,是则强行关闭当前的任务,回退到此步骤,重新生成此步骤的任务。

条件路由,实现撤回,查找当前撤回步骤的下一步是否为当前步骤,需要查找有条件结果和无条件结果,有则实现回退。

分支路由,实现撤回,主要是查找当前撤回步骤的下一步是否为当前步骤,需要略过分支节点来查找,查找到了,则实现回退。撤回的过程与回退流的实现过程一样。
   分支路由的撤回,分为在分支上面的撤回,与,分支到主干上的撤回
   分支--分支的撤回
   如下图:
   
   在分支上面的撤回,则只撤回本分支的任务,其它分支不受影响。
   
   分支--主干的撤回
   如下图:
   
   分支撤回到主干,则将关闭所有的分支,撤回到主干。如果分支上面嵌套分支,也将关闭所有的嵌套分支,回到主干。
   
 
聚合路由,实现撤回,当一个分支提交了,其它分支还未执行,即未满足聚合的条件时,则实现不了撤回,因为当前步骤还在另一个分支,还未执行到聚合后面的节点。当分支条件均满足后,流转到聚合节点后面的步骤,则可以实现撤回,撤回与回退一样,只撤回此分支的轨迹,其它分支不撤回。

 

 

撤回与回退的功能均是不按流程定义的轨迹去任意执行,因此在操作的时候不能给所有的用户都分配此功能。撤回与回退在流程引擎中的实现是一样的,撤回只是对回退的一个补充。

Activity工作流教程是指教授如何使用Activity工作流进行业务流程的开发和管理的指导材料。Activity工作流是一种将业务流程自动化的技术,它通过将业务流程分解为一系列的活动(Activities)并定义这些活动之间的逻辑关系和约束,来实现对业务过程的控制和监视。 在Activity工作流教程中,首先介绍了Activity工作流的基本概念和特点。这包括如何定义活动的输入和输出参数,如何定义活动之间的先后顺序和条件关系,以及如何处理异常情况等。通过理解这些基本概念,读者可以更好地掌握Activity工作流的设计和实现。 接下来,教程将详细介绍如何使用Activity Designer来创建和编辑Activity工作流。Activity Designer是一个可视化工具,它提供了丰富的活动和控制流元素供开发人员选择和配置。通过实例和案例的演示,读者可以学会如何使用Activity Designer来定义业务流程的各个活动,并设置它们之间的逻辑关系和约束。 除了创建和编辑Activity工作流,教程还会介绍如何使用Activity Manager来管理和执行Activity工作流。Activity Manager是一个运行时引擎,它负责加载和执行Activity工作流,并监控其执行过程。教程将详细讲解如何部署和启动Activity工作流,如何监视和控制其执行状态,以及如何处理执行过程中的异常情况。 最后,教程还会介绍一些高级的话题,如如何扩展Activity工作流的功能,如何与其他系统进行集成,以及如何进行性能优化等。这些内容将帮助读者更加深入地理解和应用Activity工作流技术。 通过学习Activity工作流教程,读者可以掌握使用Activity工作流进行业务流程的开发和管理的技能,从而提高工作效率和质量。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值