事务子流程

===

定义

元素定义

事务子流程是内嵌子流程,可以用来把多个流程放到一个事务里。 事务是一个逻辑单元,可以把一些单独的节点放在一起,这样它们就可以一起成功或一起失败。

事务可能的结果: 事务可以有三种可能的结果:

  • 事务成功,如果没有取消也没有因为问题终结。如果事务子流程是成功的, 就会使用外出顺序流继续执行。 如果流程后来抛出了一个补偿事件,成功的事务可能被补偿。 注意:和普通内嵌子流程一样,事务可能在成功后, 使用中间补偿事件进行补偿。
  • 事务取消,如果流程到达取消结束事件。这时, 所有流程都会终结和删除。触发补偿的一个单独的流程,会通过取消边界事件继续执行。 在补偿完成之后,事务子流程会使用取消边界事务的外出顺序流向下执行。
  • 事务被问题结束,如果跑出了一个错误事件, 而且没有在事务子流程中捕获。(如果错误被事务子流程的边界事件处理了,也会这样应用。) 这时,不会执行补偿。

图标说明

事务子流程

使用说明

事务子流程是内嵌子流程,必须有输入,输出序列流。

元素验证

验证用例

用例描述 输入条件 期望结果 实际结果 结果
1 通过测试流程,验证事务子流程在事务成功时能够正常使用,将发放工资 通知财务任务指派给laura银行转出 员工收到工资任务指派给susan 验证用户: laura发放工资金额为3500元, 银行转出金额3500元 启动流程后, 用户laura会得到发放工资任务,用户laura确认工资金额为3500元,银行从公司账户转出3500元,员工收到工资为3500元 启动流程后, 用户laura会得到发放工资任务,用户laura确认工资金额为3500元,银行从公司账户转出3500元,员工收到工资为3500元
2 通过测试流程验证事务子流程在事务取消时能够正常使用,将发放工资 通知财务任务指派给laura银行转出 员工收到工资任务指派给susan 验证用户: laura发放工资金额为3500元, 银行转出金额3500元,员工没有收到工资 启动流程后, 用户laura会得到发放工资任务,用户laura确认工资金额为3500元,银行从公司账户转出3500元,,员工没有收到工资,用户laura收到通知财务任务 启动流程后, 用户laura会得到发放工资任务,用户laura确认工资金额为3500元,银行从公司账户转出3500元,,员工没有收到工资,用户laura收到通知财务任务
3 通过测试流程验证事务子流程在事务是能够正常使用,将发放工资任务指派给laura 验证用户: laura发放工资金额为3500元, 银行转出金额3500元,员工没有收到工资 启动流程后, 用户laura会得到发放工资任务,用户laura确认工资金额为3500元,银行从公司账户转出3500元,,员工没有收到工资,通知客户汇款失败,银行没有退回已扣金额,执行记录系统异常信息

验证流程

事务子流程

用例1

第一步 启动流程
用户laura分配给我的任务列表存在发放工资任务,符合预期
ddd

第二步 用户susan分配给我的任务列表存在银行转出任务,符合预期

drt

第三步 用户susna分配给我的任务列表存在员工收到工资,符合预期

yuan

填写表单数据
ddf 查看流程,流程状态为已完成 awe

用例2

第一步 启动流程
用户laura分配给我的任务列表存在发放工资任务,符合预期
ddd

第二步 用户susan分配给我的任务列表存在银行转出任务,符合预期

drt

第三步 用户susna分配给我的任务列表存在员工收到工资,符合预期

yuan

填写表单数据
表单

第四步用户laura分配给我的任务列表存在通知财务任务,符合预期

财务

用例3