Flowable流程的挂起与激活详解

简介: Flowable流程的挂起与激活详解

1. 挂起与激活的定义及区别

Flowable流程中,挂起是指将流程实例暂停,它将停止执行当前步骤并暂时中断流程的执行。相反,激活是指恢复被挂起的流程实例的执行,使其能够继续执行后续步骤。

区别在于挂起流程实例后,流程将无法继续执行,而激活操作可以重新启动已挂起的流程实例,使其流程执行再次开始。

2. 涉及的数据表及字段取值

为了实现挂起和激活功能,Flowable引擎使用了以下三个数据表及其字段取值:

  • ACT_RE_PROCDEF(流程定义表):该表记录了流程定义的信息。其中的字段SUSPENSION_STATE_用于标识流程定义是否被挂起。可以设置为1(挂起)或2(激活)。
  • ACT_RU_EXECUTION(运行时执行表):该表记录了运行中的流程实例的执行信息。字段SUSPENSION_STATE_表示流程实例的挂起状态,可以设置为1(挂起)或2(激活)。
  • ACT_RU_JOB(作业执行表):该表记录了需要异步执行的作业信息。字段SUSPENSION_STATE_表示作业的挂起状态,同样可以设置为1(挂起)或2(激活)。


需要注意的是,字段名以及具体的取值可能会根据Flowable版本而有所不同。以上仅作为示例。

3. 代码示例:挂起与激活操作

以下提供了使用Java代码进行挂起和激活操作的示例:

// 挂起流程实例
RuntimeService runtimeService = processEngine.getRuntimeService();
runtimeService.suspendProcessInstanceById(processInstanceId);

// 激活流程实例
runtimeService.activateProcessInstanceById(processInstanceId);

上述代码中,processInstanceId是要挂起或激活的流程实例的ID。通过调用RuntimeService的相应方法,我们可以方便地对流程实例进行挂起和激活操作。

相关文章
|
4月前
|
XML 中间件 数据库
基于jeecgboot的flowable流程支持定时捕获事件
基于jeecgboot的flowable流程支持定时捕获事件
69 0
|
3月前
Acitiviti7基本使用-3、流程实例挂起与激活
Acitiviti7基本使用-3、流程实例挂起与激活
|
4月前
|
XML 移动开发 Java
如何启动flowable的Flowable UI画工作流程图
如何启动flowable的Flowable UI画工作流程图
91 0
|
4月前
|
XML 中间件 数据库
基于jeecgboot的flowable流程支持定时边界事件
基于jeecgboot的flowable流程支持定时边界事件
83 0
Flowable 流程实例的挂起(暂停)与激活
Flowable 流程实例的挂起(暂停)与激活
Flowable 流程实例的挂起(暂停)与激活
|
SQL 存储 Java
Flowable 已经执行完毕的流程去哪找?
Flowable 已经执行完毕的流程去哪找?
Flowable 已经执行完毕的流程去哪找?
|
XML SQL Java
Flowable 设置任务处理人的四种方式
Flowable 设置任务处理人的四种方式
|
XML Java 数据格式
Flowable 服务任务执行的三种方式
Flowable 服务任务执行的三种方式
1162 0
|
SQL 存储 数据库
Flowable 设置流程变量的四种方式
Flowable 设置流程变量的四种方式
1139 0
|
XML SQL Java
玩转 Flowable 流程实例
玩转 Flowable 流程实例