activity-上篇

/ 技术 / 无站内评论 / 417浏览

1.概念

Activiti是业界很流行的java工作流引擎,相关历史:大体看一下

http://www.infoq.com/cn/articles/rh-jbpm5-activiti5

2.相关表

首先应该了解activity使用到的表都有哪些。

ACT_RE_*:

’RE’表示repository(存储),RepositoryService接口所操作的表。带此前缀的表包含的是静态信息,如,流程定义,流程的资源(图片,规则等)。

ACT_RU_*:

‘RU’表示runtime,运行时表-RuntimeService。这是运行时的表存储着流程变量,用户任务,变量,职责(job)等运行时的数据。Activiti只存储实例执行期间的运行时数据,当流程实例结束时,将删除这些记录。这就保证了这些运行时的表小且快。

ACT_ID_*:

’ID’表示identity (组织机构),IdentityService接口所操作的表。用户记录,流程中使用到的用户和组。这些表包含标识的信息,如用户,用户组,等等。

ACT_HI_*:

’HI’表示history,历史数据表,HistoryService。就是这些表包含着流程执行的历史相关数据,如结束的流程实例,变量,任务,等等

ACT_GE_*:

全局通用数据及设置(general),各种情况都使用的数据。


可以看出activity用到的表都是以ACT_开头。网上查了一下每张表的基本用途:

序号

表名

说明

act_ge_bytearray

二进制数据表

act_ge_property

属性数据表存储整个流程引擎级别的数据,初始化表结构时,会默认插入三条记录,

act_hi_actinst

历史节点表

act_hi_attachment

历史附件表

act_hi_comment

历史意见表

act_hi_identitylink

历史流程人员表

act_hi_detail

历史详情表,提供历史变量的查询

act_hi_procinst

历史流程实例表

act_hi_taskinst

历史任务实例表

10

act_hi_varinst

历史变量表

11

act_id_group

用户组信息表

12

act_id_info

用户扩展信息表

13

act_id_membership

用户与用户组对应信息表

14

act_id_user

用户信息表

15.  

act_re_deployment

部署信息表

16.  

act_re_model

流程设计模型部署表

17

act_re_procdef

流程定义数据表

18

act_ru_event_subscr

19

act_ru_execution

运行时流程执行实例表

20

act_ru_identitylink

运行时流程人员表,主要存储任务节点与参与者的相关信息

21

act_ru_job

运行时定时任务数据表

22

act_ru_task

运行时任务节点表

23

act_ru_variable

运行时流程变量数据表

3.表的描述以及字段定义信息:

3.1:二进制数据表(act_ge_bytearray)

        保存流程定义图片和xml、Serializable(序列化)的变量,即保存所有二进制数据,特别注意类路径部署时候,不要把svn等隐藏文件或者其他与流程无关的文件也一起部署到该表中,会造成一些错误(可能导致流程定义无法删除)。

表结构:

字段名称

字段描述

数据类型

主键

为空

取值说明

ID_

ID_

nvarchar(64)

 

主键ID

REV_

乐观锁

int

 

Version(版本)

NAME_

名称

nvarchar(255)

 

部署的文件名称,如:mail.bpmn、mail.png 、mail.bpmn20.xml

DEPLOYMENT_ID_

部署ID

nvarchar(64)

 

部署表ID

BYTES_

字节

varbinary(max)

 

部署文件

GENERATED_

是否是引擎生成

tinyint

 

0为用户生成 1为Activiti生成

索引说明

索引名称

组成字段名称

索引类型

索引说明

PRIMARY

ID_

Unique

主键唯一索引

ACT_FK_BYTEARR_DEPL

DEPLOYMENT_ID_

 

 

 3.2 属性数据表( act_ge_property )

属性数据表。存储整个流程引擎级别的数据。

表结构

字段名称

字段描述

数据类型

主键

为空

取值说明

NAME_

名称

nvarchar(64)

 

schema.version

schema.history

next.dbid

VALUE_

nvarchar(300)

 

5.*

create(5.*)

REV_

乐观锁

int

 

version

 索引说明

索引名称

组成字段名称

索引类型

索引说明

PRIMARY

NAME_

Unique

主键唯一索引

 

3.3  历史节点表(act_hi_actinst)


  历史活动信息。这里记录流程流转过的所有节点,与HI_TASKINST不同的是,taskinst只记录usertask内容

 

表结构说明

 

字段名称

字段描述

数据类型

主键

为空

取值说明

ID_

ID_

nvarchar(64)

 

 

PROC_DEF_ID_

流程定义ID

nvarchar(64)

 

 

 

PROC_INST_ID_

流程实例ID

nvarchar(64)

 

 

 

EXECUTION_ID_

执行实例ID

nvarchar(64)

 

 

 

ACT_ID_

节点ID

nvarchar(225)

 

 

节点定义ID

TASK_ID_

任务实例ID

nvarchar(64)

 

任务实例ID 其他节点类型实例ID在这里为空

CALL_PROC_INST_ID_

调用外部的流程实例ID

nvarchar(64)

 

调用外部流程的流程实例ID'

ACT_NAME_

节点名称

nvarchar(225)

 

节点定义名称

ACT_TYPE_

节点类型

nvarchar(225)

 

 

如startEvent、userTask

ASSIGNEE_

签收人

nvarchar(64)

 

节点签收人

START_TIME_

开始时间

datetime

 

 

2013-09-15 11:30:00

END_TIME_

结束时间

datetime

 

2013-09-15 11:30:00

DURATION_

耗时

numeric(19,0)

 

毫秒值

 索引说明

索引名称

组成字段名称

索引类型

索引说明

PRIMARY

ID_

Unique

主键唯一索引

ACT_IDX_HI_ACT_INST_START

START_TIME_

 

 

ACT_IDX_HI_ACT_INST_END

END_TIME_

 

 

ACT_IDX_HI_ACT_INST_PROCINST

PROC_INST_ID_ 、 ACT_ID_

 

 

ACT_IDX_HI_ACT_INST_EXEC

EXECUTION_ID_ 、 ACT_ID_

 

 

 

3.4  历史附件表( act_hi_attachment )

  历史附件表。

 表结构说明

字段名称

字段描述

数据类型

主键

为空

取值说明

ID_

ID_

nvarchar(64)

 

主键ID

REV_

乐观锁

integer

 

Version

USER_ID_

用户ID

nvarchar(255)

 

用户ID

NAME_

名称

nvarchar(255)

 

附件名称

DESCRIPTION_

描述

nvarchar(4000)

 

描述

TYPE_

类型

nvarchar(255)

 

附件类型

TASK_ID_

任务实例ID

nvarchar(64)

 

节点实例ID

PROC_INST_ID_

流程实例ID

nvarchar(64)

 

流程实例ID

URL_

URL_

nvarchar(4000)

 

附件地址

CONTENT_ID_

字节表的ID

nvarchar(64)

 

ACT_GE_BYTEARRAY的ID

 索引说明

索引名称

组成字段名称

索引类型

索引说明

PRIMARY

ID_

Unique

主键唯一索引

2.5  历史意见表( act_hi_comment )

2.5.1   简要描述

  历史意见表。

2.5.2   表结构说明

字段名称

字段描述

数据类型

主键

为空

取值说明

ID_

ID_

nvarchar(64)

 

主键ID

TYPE_

类型

nvarchar(255)

 

类型:event(事件)

comment(意见)

TIME_

时间

datetime

 

 

填写时间'

USER_ID_

用户ID

nvarchar(64)

 

填写人

TASK_ID_

节点任务ID

nvarchar(64)

 

节点实例ID

PROC_INST_ID_

流程实例ID

nvarchar(255)

 

流程实例ID

ACTION_

行为类型

nvarchar(64)

 

见备注1

MESSAGE_

基本内容

nvarchar(4000)

 

用于存放流程产生的信息,比如审批意见

FULL_MSG_

全部内容

varbinary(max)

 

附件地址

 2.5.3   索引说明

 

索引名称

组成字段名称

索引类型

索引说明

PRIMARY

ID_

Unique

主键唯一索引

 

2.6  历史详情表( act_hi_detail )

2.6.1   简要描述

  历史详情表:流程中产生的变量详细,包括控制流程流转的变量,业务表单中填写的流程需要用到的变量等。

2.6.2   表结构说明

 

字段名称

字段描述

数据类型

主键

为空

取值说明

ID_

ID_

nvarchar(64)

 

主键

TYPE_

类型

nvarchar(255)

 

 

见备注2

PROC_INST_ID_

流程实例ID

nvarchar(64)

 

流程实例ID

EXECUTION_ID_

执行实例ID

nvarchar(64)

 

执行实例ID

TASK_ID_

任务实例ID

nvarchar(64)

 

任务实例ID

ACT_INST_ID_

节点实例ID

nvarchar(64)

 

ACT_HI_ACTINST表的ID

NAME_

名称

nvarchar(255)

 

 

名称

VAR_TYPE_

参数类型

nvarchar(255)

 

见备注3

REV_

乐观锁

int

 

Version

TIME_

时间戳

datetime

 

 

创建时间

BYTEARRAY_ID_

字节表ID

nvarchar

 

ACT_GE_BYTEARRAY表的ID

DOUBLE_

DOUBLE_

double precision

 

存储变量类型为Double

LONG_

LONG_

numeric

 

存储变量类型为long

TEXT_

TEXT_

nvarchar

 

存储变量值类型为String

TEXT2_

TEXT2_

nvarchar

 

此处存储的是JPA持久化对象时,才会有值。此值为对象ID

 2.6.3   索引说明

 

索引名称

组成字段名称

索引类型

索引说明

PRIMARY

ID_

Unique

主键唯一索引

ACT_IDX_HI_ACT_INST_START

START_TIME_

 

 

ACT_IDX_HI_ACT_INST_END

END_TIME_

 

 

ACT_IDX_HI_ACT_INST_PROCINST

PROC_INST_ID_ 、 ACT_ID_

 

 

ACT_IDX_HI_ACT_INST_EXEC

EXECUTION_ID_ 、 ACT_ID_

 

 

 

2.7  历史流程人员表( act_ru_identitylink )   

2.7.1   简要描述

  任务参与者数据表。主要存储历史节点参与者的信息。

2.7.2  表结构说明

 

字段名称

字段描述

数据类型

主键

为空

取值说明

ID_

ID_

nvarchar(64)

 

ID_

GROUP_ID_

组ID

nvarchar(255)

 

组ID

TYPE_

类型

nvarchar(255)

 

备注4

USER_ID_

用户ID

nvarchar(255)

 

用户ID

TASK_ID_

节点实例ID

nvarchar(64)

 

节点实例ID

PROC_INST_ID_

流程实例ID

nvarchar(64)

 

流程实例ID

 2.7.3   索引说明

 

索引名称

组成字段名称

索引类型

索引说明

PRIMARY

ID_

Unique

主键唯一索引

ACT_IDX_HI_IDENT_LNK_USER

USER_ID_

Unique

 

ACT_IDX_HI_IDENT_LNK_TASK

TASK_ID_

 

 

ACT_IDX_HI_IDENT_LNK_PROCINST

PROC_INST_ID_

 

 

 

2.8  历史流程实例表(act_hi_procinst)

 

2.8.1   简要描述

 

  历史流程实例表。

 

2.8.2   表结构说明

 

字段名称

字段描述

数据类型

主键

为空

取值说明

ID_

ID_

nvarchar(64)

 

主键ID

PROC_INST_ID_

流程实例ID

nvarchar(64)

 

 

流程实例ID

BUSINESS_KEY_

业务主键

nvarchar(255)

 

业务主键,业务表单的ID

PROC_DEF_ID_

流程定义ID

nvarchar(64)

 

 

流程定义ID

START_TIME_

开始时间

datetime

 

 

开始时间

END_TIME_

结束时间

datetime

 

结束时间

DURATION_

耗时

Numeric(19)

 

耗时

START_USER_ID_

起草人

nvarchar(255)

 

起草人

START_ACT_ID_

开始节点ID

nvarchar(255)

 

起草环节ID

END_ACT_ID_

结束节点ID

nvarchar(255)

 

结束环节ID

SUPER_PROCESS

_INSTANCE_ID_

父流程实例ID

nvarchar(64)

 

父流程实例ID

DELETE_REASON_

删除原因

nvarchar(4000)

 

删除原因

 

2.8.3   索引说明

 

索引名称

组成字段名称

索引类型

索引说明

PRIMARY

ID_

Unique

主键唯一索引

PROC_INST_ID_

PROC_INST_ID_

Unique

外键

ACT_UNIQ_HI_BUS_KEY

PROC_DEF_ID_,BUSINESS_KEY_

Unique

 

ACT_IDX_HI_PRO_INST_END

END_TIME_

 

 

ACT_IDX_HI_PRO_I_BUSKEY

BUSINESS_KEY_

 

 

 

2.9  历史任务实例表( act_hi_taskinst )

 

2.9.1   简要描述

 

   历史任务实例表。

 

2.9.2   表结构说明

 

字段名称

字段描述

数据类型

主键

为空

取值说明

ID_

ID_

nvarchar(64)

 

主键ID

PROC_DEF_ID_

流程定义ID

nvarchar(64)

 

流程定义ID

TASK_DEF_KEY_

节点定义ID

nvarchar(255)

 

节点定义ID

PROC_INST_ID_

流程实例ID

nvarchar(64)

 

流程实例ID

EXECUTION_ID_

执行实例ID

nvarchar(64)

 

执行实例ID

NAME_

名称

varchar(255)

 

名称

PARENT_TASK_ID_

父节点实例ID

nvarchar(64)

 

父节点实例ID

DESCRIPTION_

描述

nvarchar(400)

 

描述

OWNER_

实际签收人 任务的拥有者

nvarchar(255)

 

签收人(默认为空,只有在委托时才有值)

ASSIGNEE_

签收人或被委托

nvarchar(255)

 

签收人或被委托

START_TIME_

开始时间

datetime

 

 

开始时间

CLAIM_TIME_

提醒时间

datetime

 

提醒时间

END_TIME_

结束时间

datetime

 

结束时间

DURATION_

耗时

numeric(19)

 

耗时

DELETE_REASON_

删除原因

nvarchar(4000)

 

删除原因(completed,deleted)

PRIORITY_

优先级别

int

 

优先级别

DUE_DATE_

过期时间

datetime

 

过期时间,表明任务应在多长时间内完成

FORM_KEY_

节点定义的

formkey

nvarchar(255)

 

desinger节点定义的

form_key属性

 

 2.9.3   索引说明

 

索引名称

组成字段名称

索引类型

索引说明

PRIMARY

ID_

Unique

主键唯一索引

 

 

2.10       历史变量表( act_hi_varinst )

 

2.10.1  简要描述

 

  历史变量表。

 

2.10.2  表结构说明

 

字段名称

字段描述

数据类型

主键

为空

取值说明

ID_

ID_

nvarchar(64)

 

ID_

PROC_INST_ID_

流程实例ID

nvarchar(64)

 

流程实例ID

EXECUTION_ID_

执行实例ID

nvarchar(255)

 

执行实例ID

TASK_ID_

任务实例ID

nvarchar(64)

 

任务实例ID

NAME_

名称

nvarchar(64)

 

 

参数名称(英文)

VAR_TYPE_

参数类型

varchar(255)

 

备注5

REV_

乐观锁

nvarchar(64)

 

乐观锁 Version

BYTEARRAY_ID_

字节表ID

nvarchar(400)

 

ACT_GE_BYTEARRAY表的主键

DOUBLE_

DOUBLE_

nvarchar(255)

 

存储DoubleType类型的数据

LONG_

LONG_

nvarchar(255)

 

存储LongType类型的数据

TEXT_

TEXT_

datetime

 

备注6

TEXT2_

TEXT2_

datetime

 

此处存储的是JPA持久化对象时,才会有值。此值为对象ID

 

2.10.3  索引说明

 

索引名称

组成字段名称

索引类型

索引说明

PRIMARY

ID_

Unique

主键唯一索引

ACT_IDX_HI_PROCVAR_PROC_INST

PROC_INST_ID_

 

 

ACT_IDX_HI_PROCVAR_NAME_TYPE

NAME_, VAR_TYPE_

 

 

 

2.11       用户组信息表( act_id_group )

 

2.11.1  简要描述

 

  用来存储用户组信息。

 

2.11.2  表结构说明

 

字段名称

字段描述

数据类型

主键

为空

取值说明

ID_

ID_

nvarchar(64)

 

主键ID

REV_

乐观锁

int

 

乐观锁Version

NAME_

名称

nvarchar(255)

 

组名称

TYPE_

类型

nvarchar(255)

 

类型

 

2.11.3  索引说明

 

索引名称

组成字段名称

索引类型

索引说明

PRIMARY

ID_

Unique

主键唯一索引

 

下篇:
https://sanii.cn/article/201
召唤蕾姆
琼ICP备18000156号

鄂公网安备 42011502000211号