Camunda 运行 并行执行 2 个任务,如果第一个任务完成则取消第二个任务

Camunda Run 2 tasks in parallel and cancel the 2nd task if the first completes

我正在使用 Camunda 作为工作流引擎。 我定义注册流程如下: 1- 用户提交请求。 2- 管理员检查请求。如果请求需要编辑,则会出现两个任务,“用户编辑请求”和“Approve/Reject 管理员”(使用第二个任务是因为用户可能无法继续,以便管理员可以完成该过程)。

如果其中一项任务完成,则应取消另一项任务,只继续执行一条路径。 我怎样才能做到这一点? 现在,如果用户完成“用户编辑请求”任务,“Approve/Reject 由管理员”保持活动状态(两条执行路径)

非常感谢

您有多种选择:

  1. 对要取消的任务使用条件中断边界事件。让其他用户任务设置一个数据,条件事件对此做出反应。设置数据后,任务将被取消。
  2. 将流程的一部分移动到嵌入式子流程中。将中断边界事件附加到整个嵌入式子流程范围。当一个用户任务完成时,该事件再次对您设置的数据做出反应(或对您抛出的另一个事件)
  3. 将流程的一部分移动到嵌入式子流程中。将基于事件的子流程添加到嵌入式子流程的范围。嵌入式子流程的启动事件应该是一个中断事件,例如对数据更改做出反应的条件事件。
  4. 最差:将流程的一部分移动到嵌入式子流程中。在用户任务完成后让流程进入终止结束事件

如果这一切对您来说听起来像是胡言乱语,那么您可能想看看: