美文网首页Spring Boot
idea activiti起步04-流程图和数据库

idea activiti起步04-流程图和数据库

作者: 辛夷z | 来源:发表于2018-09-20 13:48 被阅读375次

1、管理流程定义主要涉及到以下的4张表:

-- 流程部署相关的表

SELECT * FROM ACT_GE_BYTEARRAY # 通用字节资源表

SELECT * FROM ACT_GE_PROPERTY # 通用属性表,可以生成部署id

SELECT * FROM ACT_RE_DEPLOYMENT #部署表

SELECT * FROM ACT_RE_PROCDEF # 流程定义表

2、流程实例与任务执行的常用表有以下几个:

-- 流程实例与任务

SELECT * FROM ACT_RU_EXECUTION # 流程执行对象信息

SELECT * FROM ACT_RU_TASK # 正在运行的任务表

SELECT * FROM ACT_HI_PROCINST # 历史流程实例表

SELECT * FROM ACT_HI_TASKINST # 历史流程任务表

这里就简单简述一下流程实例与流程对象的区别:

(1)如果是单例流程,执行对象ID就是流程实例ID

(2)如果一个流程有分支和聚合,那么执行对象ID和流程实例ID就不相同

(3)一个流程中,流程实例只有1个,执行对象可以存在多个。

3、流程变量涉及到的数据库表:

SELECT * FROM ACT_RU_VARIABLE #正在执行的流程变量表

SELECT * FROM ACT_HI_VARINST #流程变量历史表

流程变量在工作流中扮演着一个非常重要的角色。例如:请假流程中有请假天数、请假原因等一些参数都为流程变量的范围。流程变量的作用域范围是只对应一个流程实例。也就是说各个流程实例的流程变量是不相互影响的。流程实例结束完成以后流程变量还保存在数据库中(存放到流程变量的历史表中)。

4、用户角色涉及的数据库表:

SELECT * FROM ACT_ID_GROUP #角色表

SELECT * FROM ACT_ID_USER #用户表

SELECT * FROM ACT_ID_MEMBERSHIP #用户角色表

数据库中,自动生成了activiti的相关表,根据实际使用,往表中插入数据,有些会是常驻,有些是有时效性的,如图所示:

5、流程图连线

流程图任务之间的连接线可以做处理的,这里可以设置变量,如下:

需要注意的是,表达式的结果必须是布尔型:

#{variable=='value'}

${variable==value}

6、流程图排他网关

当该变量不符合任何的条件时,我们也有一条默认的路。我们不设置条件,那就是默认的连接线。

排他判断开始,匹配条件,如果A,B都不符合,则默认走特批C。如图所示:

7、流程图并行网关

并行判断开始,A或者B执行完后,还需等待另一个执行完。之后,才会进入到下一步,如图所示:

8、重要的属性,如指定人员,群组权限去执行该任务等,如图所示:

9、一个流程图的核心元素节点,如图所示:

界面编辑可以操作基本属性,连线和条件,如果还需要细节调整,可以打开编辑文档,如下所示:

流程图的设计,重点在sourceRef,targetRef的衔接,组合使用,

网关的并行处理,case处理等,

任务的顺序/跳过/终止执行等。

相关文章

网友评论

    本文标题:idea activiti起步04-流程图和数据库

    本文链接:https://www.haomeiwen.com/subject/sungnftx.html