Flowable租户相关
租户问题 问题描述: 由于目前项目采用多租户方式和指定 流程编号 方式组合启动流程,但是发现 flowable 未提供对应方式,那么该如何解决呢? 源代码截图 解决方案 仔细查看 runtimeService 发现提供了 构造器启动方式,因此可以采用该方法 启动流程 启动方式可以改成如下: A
ReceiveTask的使用
1. 使用场景 接受任务(Receive Task),接触过 Flowable 的小伙伴应该是见过或者听说过,它的图标如下图: ReceiveTask 可以算是 Flowable 中最简单的一种任务,当该任务到达的时候,它不做任何逻辑,而是被动地等待用户 Trigger。 ReceiveTask 往
查询Flowable已经执行流程信息
我们有一个非常常见的场景是查询执行过的流程信息,对于正在执行的流程,会在 ACT_RU_EXECUTION 表中保存一条对应的记录,不过流程执行结束之后,ACT_RU_EXECUTION 表中的记录会被删除掉,此时要是想查询已经执行过的流程信息,去哪里查询呢?今天我们就来看看 HistoryServ
Flowable查询已执行完毕的流程
正在执行的流程信息是保存在以 ACT_RU_ 为前缀的表中,执行完毕的流程信息则保存在以 ACT_HI_ 为前缀的表中,也就是流程历史信息表,当然这个历史信息表继续细分的话,还有好多种,今天我们就来聊一聊这个话题。 假设我有如下一个流程: 当这个流程执行完毕后,以 ACT_RU_ 为前缀的表中的数据
Flowable 外置JSON表单
1. 默认规则 使用 JSON 来定义 Flowable 表单,我们刚好可以利用 Spring Boot 中的默认机制,即将表单文件置于 classpath:forms 目录下,那么在系统启动的时候,表单文件就会被自动部署。并且默认情况下,表单文件的后缀是 .form。 不过对于默认的表单文件位置和
Flowable 定时器
1. 流程定义定时激活 在流程定义的这个过程中,我们还可以设置一个激活时间,也就是流程定义好之后,并不会立马激活(不激活就不能据此流程定义创建新流程),而是在延迟某一个固定时间之后,才会激活,代码如下: @RestController public class ProcessDeployContro
Flowable 服务任务执行的三种方式
1. ServiceTask ServiceTask 从名字上看就是服务任务,它的图标一般是像下面这样: ServiceTask 一般由系统自动完成,当流程走到这一步的时候,不会自动停下来,而是会去执行我们提前在 ServiceTask 中配置好的方法。 2. 实践 我们通过一个简单的例子来看一下
Flowable 任务认领、回退
1. 绘制流程图 首先我们还是使用之前旧的流程图,但是在为 UserTask 设置分配用户的时候,我们设置多个用户,如下图: 设置完成后,我们下载这个流程文件,来看下对应的 XML 文件,内容如下: <process id="demo01" name="demo01" isExecutable="t
Flowable 设置流程变量的四种方式
1. 为什么需要流程变量 首先我们来看看为什么需要流程变量。 举一个简单的例子,假设我们有如下一个流程: 这是一个请假流程,那么谁请假、请几天、起始时间、请假理由等等,这些都需要说明,不然领导审批的依据是啥?那么如何传递这些数据,我们就需要流程变量。 2. 流程变量的分类 整体上来说,目前流程变量可
Flowable 三种常见网关
Flowable 中网关类型其实也不少,常见的主要有三种类型,分别是: 排他网关 并行网关 包容网关 这三个里边最常用的当然就是排他网关了。 1. 排他网关 首先就是排他网关了,这个也叫互斥网关,长得像下图这样: 排他网关可以有 N 个入口,但是只有一个有效出口。 松哥举一个例子: 假设我有一个请假
Flowable 按角色分配任务
在 Flowable 中使用 Group 去归类某一类用户,但是这个实际上类似于我们在自己系统中平时所用的角色 Role。也就是说,我们可以按照角色去给每一个 UserTask 设置处理人。 1. 用户与用户组 首先我们先来看下用户组的一些基本操作。 1.1 添加组 组的属性相对来说少一些,添加方式
流程的挂起和激活
这块实际上涉及到两部分内容: 流程定义的挂起和激活。 流程实例的挂起和激活。 一个定义好的流程,如果挂起了,那么就无法据此创建新的流程。 一个流程实例如果挂起了,那么就无法执行流程中的任务。 1. 流程定义的挂起与激活 1.1 查询是否挂起 对于一个定义好的流程,我们可以通过如下方法来查看这个流程是