本文介绍了JBoss jBPM定义的反向工程(reverse-engineered)数据模型.
第一部分: JBoss jBPM 定义数据模型
1.01 JBPM_PROCESSDEFINITION – 流程定义表
功能: 存储流程定义的主要信息.
字段名 | 说明 | 数据类型 | 是否关键字 | 可否为空 | 备注 |
id_ | 流程id | NUMBER(19) | PK | 否 |
|
name_ | 流程名 | VARCHAR2(255 CHAR) | A | 是 |
|
version_ | 版本 | NUMBER(10) | A | 是 |
|
isterminationimplicit_ |
| NUMBER(1) | A | 是 | 字面意思是”是否隐式终止”,??? |
startstate_ | 开始状态 | NUMBER(19) | FK | 是 | 对应JBPM_Node表的id_字段, 是该流程的start state节点的id |
注:
1) 表格中数据类型指的是oracle中的数据类型.
2) PK: Primary Key, 即主键.
3) FK: Foreign Key, 即外键.
1.02 JBPM_NODE – 节点表
功能: 存储流程定义中节点的定义信息.
字段名 | 说明 | 数据类型 | 是否关键字 | 可否为空 | 备注 |
id_ | 节点id | NUMBER(19) | PK | 否 |
|
class_ | 类别 | CHAR(1 CHAR) | N | 否 |
|
name_ | 节点名 | VARCHAR2(255 CHAR) | A | 是 |
|
processdefinition_ | 流程定义 | NUMBER(19) | FK | 是 | 此节点所属的流程定义, jbpm_processdefinition(id_) |
isasync_ | 是否异步 | NUMBER(1) | A | 是 |
|
action_ | 动作 | NUMBER(19) | FK | 是 | 指定此节点执行的动作, jbpm_action(id_) |
superstate_ | 上一状态 | NUMBER(19) | FK | 是 | 指定此节点所属的上一状态, 多个节点可能属于同一节点, jbpm_node(id_) |
subprocessdefinition_ | 子流程定义 | NUMBER(19) | FK | 是 | 此节点调用的子流程的流程定义, jbpm_ processdefinition(id_) |
decisionexpresion_ | 判定表达式 | VARCHAR2(255 CHAR) | A | 是 |
|
decisiondelegation | 判定代理 | NUMBER(19) | FK | 是 | 指定执行判定的代理类, jbpm_delegation(id_) |
signal_ | 信号 | NUMBER(10) | A | 是 |
|
createtasks_ | 创建流程 | NUMBER(1) | A | 是 |
|
endtasks_ | 结束流程 | NUMBER(1) | A | 是 |
|
nodecollectionindex_ | 节点集合索引 | NUMBER(10) | A | 是 |
|
1.03 JBPM_TRANSITION – 变迁表
功能: 存储流程定义中变迁的定义信息.
字段名 | 说明 | 数据类型 | 是否关键字 | 可否为空 | 备注 |
id_ | id | NUMBER(19) | PK | 否 |
|
name_ | 变迁名 | VARCHAR2(255 CHAR) | A | 是 |
|
processdefinition_ | 流程定义 | NUMBER(10) | A | 是 | 指定变迁所属流程定义id, jbpm_processdefinition(id_) |
from_ | 源节点 | NUMBER(1) | A | 是 | 变迁开始节点, jbpm_node(id_) |
to_ | 目标节点 | NUMBER(19) | FK | 是 | 变迁结束节点, jbpm_node(id_) |
fromindex_ | 源节点索引 | NUMBER(10) | A | 是 |
|
1.04 JBPM_ACTION – 动作表
功能: 存储流程定义中动作的定义信息
字段名 | 说明 | 数据类型 | 是否关键字 | 可否为空 | 备注 |
id_ | id | NUMBER(19) | PK | 否 |
|
class_ | 类别 | CHAR(1 CHAR) | N | 否 |
|
name_ | 动作名 | VARCHAR2(255 CHAR) | A | 是 |
|
ispropagationallowed_ | 是否允许传播?? | NUMBER(1) | FK | 是 |
|
actionexpression_ | 动作表达式 | VARCHAR2(255 CHAR) |
|
|
|
isasync_ | 是否异步 | NUMBER(1) | A | 是 |
|
REFERENCEDACTION_ | 被引用动作 | NUMBER(19) | FK | 是 | 指定引用此动作的动作id, jbpm_action(id_) |
ACTIONDELEGATION_ | 动作代理 | NUMBER(19) | FK | 是 | 指定此节点的代理类, jbpm_ delegation (id_) |
EVENT_ | 事件 | NUMBER(19) | FK | 是 | 触发此动作的事件, jbpm_ event(id_) |
PROCESSDEFINITION_ | 流程定义 | NUMBER(19) | FK | 是 | 此动作所属的流程定义, jbpm_processdefinition(id_) |
TIMERNAME_ | 定时器名称 | VARCHAR2(255 CHAR) | A | 是 |
|
DUEDATE_ | 到期日 | VARCHAR2(255 CHAR) | A | 是 |
|
REPEAT_ | 重复 | VARCHAR2(255 CHAR) | A | 是 |
|
TRANSITIONNAME_ | 变迁名 | VARCHAR2(255 CHAR) | A | 是 |
|
TIMERACTION_ | 计时器动作 | NUMBER(19) | FK | 是 | 是否有计时器动作, jbpm_action(id_) |
EXPRESSION_ | 表达式 | VARCHAR2(4000 CHAR) | A | 是 |
|
EVENTINDEX_ | 事件索引 | NUMBER(10) | A | 是 |
|
EXCEPTIONHANDLER_ | 异常处理器 | NUMBER(19) | FK | 是 | 指定此动作的异常处理器类, jbpm_exceptionhandler(id_) |
EXCEPTIONHANDLERINDEX_ | 异常处理器索引 | NUMBER(10) | A | 是 |
|
1.05 JBPM_DELEGATION – 代理表
功能: 存储流程定义中指定的Java业务类的定义信息.
字段名 | 说明 | 数据类型 | 是否关键字 | 可否为空 | 备注 |
id_ | id | NUMBER(19) | PK | 否 |
|
CLASSNAME_ | 类名 | VARCHAR2(4000 CHAR) | A | 是 |
|
CONFIGURATION_ | 配置 | VARCHAR2(4000 CHAR) | A | 是 |
|
CONFIGTYPE_ | 配置类型 | VARCHAR2(255 CHAR) | A | 是 |
|
PROCESSDEFINITION_ | 流程定义 | NUMBER(19) | FK | 是 | 指定代理类所属流程定义id, jbpm_processdefinition(id_) |
1.06 JBPM_EVENT – 事件表
功能: 存储触发流程定义中动作的定义信息
字段名 | 说明 | 数据类型 | 是否关键字 | 可否为空 | 备注 |
id_ | id | NUMBER(19) | PK | 否 |
|
EVENTTYPE_ | 事件类型 | VARCHAR2(255 CHAR) | A | 是 | 如”task-create”,” task-end” |
TYPE_ | 类型 | CHAR(1 CHAR) | A | 是 |
|
GRAPHELEMENT_ | 图形元素 | NUMBER(19) | A | 是 |
|
PROCESSDEFINITION_ | 流程定义 | NUMBER(19) | FK | 是 | 指定事件所属流程定义id, jbpm_processdefinition(id_) |
NODE_ | 节点 | NUMBER(19) | FK | 是 | 指定事件所属节点id, jbpm_node(id_) |
TRANSITION_ | 变迁 | NUMBER(19) | FK | 是 | 指定事件所属变迁id, jbpm_transition(id_) |
TASK_ | 任务 | NUMBER(19) | FK | 是 | 指定事件所属任务id, jbpm_task(id_) |
1.07 JBPM_EXCEPTIONHANDLER – 异常处理器表
功能: 存储动作的异常处理器定义信息.
字段名 | 说明 | 数据类型 | 是否关键字 | 可否为空 | 备注 |
id_ | id | NUMBER(19) | PK | 否 |
|
EXCEPTIONCLASSNAME_ | 异常类型 | VARCHAR2(255 CHAR) | A | 是 |
|
TYPE_ | 类型 | CHAR(1 CHAR) | A | 是 |
|
GRAPHELEMENT_ | 图形元素 | NUMBER(19) | A | 是 |
|
PROCESSDEFINITION_ | 流程定义 | NUMBER(19) | A | 是 |
|
GRAPHELEMENTINDEX_ | 图形元素索引 | NUMBER(10) | A | 是 |
|
NODE_ | 节点 | NUMBER(19) | A | 是 |
|
TRANSITION_ | 变迁 | NUMBER(19) | A | 是 |
|
TASK_ | 任务 | NUMBER(19) | A | 是 |
|
1.08 JBPM_DECISIONCONDITIONS – 判定条件表
功能: 存储流程定义中指定的条件定义信息.
字段名 | 说明 | 数据类型 | 是否关键字 | 可否为空 | 备注 |
DECISION_ | 判定 | NUMBER(19) | PK | 否 | jbpm_node(id_) |
INDEX_ | 索引 | NUMBER(10) | PK | 否 |
|
TRANSITIONNAME_ | 变迁名 | VARCHAR2(255 CHAR) | A | 是 |
|
EXPRESSION_ | 表达式 | VARCHAR2(255 CHAR) | A | 是 |
|
1.09 JBPM_TASK – 任务表
功能: 存储流程定义中任务的定义信息.
字段名 | 说明 | 数据类型 | 是否关键字 | 可否为空 | 备注 |
id_ | 任务id | NUMBER(19) | PK | 否 |
|
name_ | 任务名 | VARCHAR2(255 CHAR) | A | 是 |
|
PROCESSDEFINITION_ | 流程定义id | NUMBER(19) | FK | 是 | 此任务所属的流程定义, jbpm_processdefinition(id_) |
DESCRIPTION_ | 任务描述 | VARCHAR2(4000 CHAR) | A | 是 |
|
ISBLOCKING_ | 是否分块?? | NUMBER(1) | A | 是 | 还是”是否阻塞”?? |
ISSIGNALLING_ | 是否发信号 | NUMBER(1) | A |
|
|
DUEDATE_ | 到期日 | VARCHAR2(255 CHAR) | A | 是 |
|
ACTORIDEXPRESSION_ | 执行者id表达式 | VARCHAR2(255 CHAR) | A | 是 |
|
POOLEDACTORSEXPRESSION_ | 池执行者表达式 | VARCHAR2(255 CHAR) | A | 是 |
|
TASKMGMTDEFINITION_ | 任务管理定义 | NUMBER(19) | FK | 是 | 指定使用这个任务管理定义的任务, jbpm_ moduledefinition(id_) |
TASKNODE_ | 任务节点 | NUMBER(19) | FK | 是 | 指定任务所属节点, jbpm_ node(id_) |
STARTSTATE_ | 开始状态 | NUMBER(19) | FK | 是 | 指定任务所属流程的开始状态节点id, jbpm_ node(id_) |
ASSIGNMENTDELEGATION_ | 指派代理 | NUMBER(19) | FK | 是 | 指定此任务的代理类, jbpm_ delegation (id_) |
SWIMLANE_ | 甬道 | NUMBER(19) | FK | 是 | 指定指派任务使用的甬道, jbpm_ swimlnae(id_) |
TASKCONTROLLER_ | 任务控制器 | NUMBER(19) | FK | 是 | 指定任务控制器代理类, jbpm_ taskcontroller(id_) |
1.10 JBPM_TASKCONTROLLER – 任务控制器表
功能: 存储把任务指派给代理类的信息.
字段名 | 说明 | 数据类型 | 是否关键字 | 可否为空 | 备注 |
ID_ | Id | NUMBER(19) | PK | 否 |
|
TASKCONTROLLERDELEGATION_ | 任务控制器代理类 | NUMBER(19) | FK | 是 | 指定任务控制器代理类, jbpm_ delegation (id_) |
1.11 JBPM_VARIABLEACCESS – 变量访问表
功能: 存储与特殊节点或任务有关的每一个变量的访问级别信息.
字段名 | 说明 | 数据类型 | 是否关键字 | 可否为空 | 备注 |
id_ | id | NUMBER(19) | PK | 否 |
|
VARIABLENAME_ | 变量名 | VARCHAR2(255 CHAR) | A | 是 |
|
ACCESS_ | 存储级别 | VARCHAR2(255 CHAR) | A | 是 | 包括”read”,”write” |
MAPPEDNAME_ | 映射名 | VARCHAR2(255 CHAR) | A | 是 |
|
PROCESSSTATE_ | 流程状态 | NUMBER(19) | FK | 是 | 指定变量所属节点id, jbpm_node(id_) |
TASKCONTROLLER_ | 任务控制器 | NUMBER(19) | FK | 是 | 指定变量所属任务控制器, jbpm_taskcontroller(id_) |
INDEX_ | 索引 | NUMBER(10) | A | 是 |
|
SCRIPT_ | 脚本 | NUMBER(19) | FK | 是 | 指定变量所属动作, jbpm_action(id_) |
1.12 JBPM_SWIMLANE – 甬道表
功能: 存储流程定义中定义的甬道信息.
字段名 | 说明 | 数据类型 | 是否关键字 | 可否为空 | 备注 | ||
id_ | id | NUMBER(19) | PK | 否 |
| ||
NAME_ | 类名 | VARCHAR2(255 CHAR) | A | 是 |
| ||
ACTORIDEXPRESSION_ | 执行者id表达式 | VARCHAR2(255 CHAR) | A | 是 |
| ||
POOLEDACTORSEXPRESSION_ | 池执行者表达式 | VARCHAR2(255 CHAR) | A | 是 |
| ||
ASSIGNMENTDELEGATION_ | 指派代理 | NUMBER(19) | FK | 是 | 指定决定甬道指派的代理类, jbpm_ delegation (id_) | ||
TASKMGMTDEFINITION_ | 任务管理定义 | NUMBER(19) | FK | 是 | 一个流程定义的所有甬道所属的任务管理定义, jbpm_ moduledefinition(id_) | ||
1.13 JBPM_MODULEDEFINITION – 模块定义表
功能: 存储流程定义中使用的模块信息.
字段名 | 说明 | 数据类型 | 是否关键字 | 可否为空 | 备注 |
id_ | id | NUMBER(19) | PK | 否 |
|
CLASS_ | 类型 | CHAR(1 CHAR) | A | 否 |
|
name_ | 模块名 | VARCHAR2(4000 CHAR) | A | 是 |
|
processdefinition_ | 流程定义 | NUMBER(19) | FK | 是 | 指定模块所在的流程定义id, jbpm_processdefinition(id_) |
STARTTASK_ | 开始任务 | NUMBER(19) | FK | 是 | 指定模块所在的任务, jbpm_task(id_) |
1.14 JBPM_ID_USER – 用户表
功能: 存储jBPM用户信息.
字段名 | 说明 | 数据类型 | 是否关键字 | 可否为空 | 备注 |
id_ | id | NUMBER(19) | PK | 否 |
|
CLASS_ | 类型 | CHAR(1 CHAR) | N | 否 |
|
name_ | 用户名 | VARCHAR2(255 CHAR) | A | 是 |
|
EMAIL_ | 电子邮件 | VARCHAR2(255 CHAR) | A | 是 |
|
PASSWORD_ | 密码 | VARCHAR2(255 CHAR) | A | 是 |
|
1.15 JBPM_ID_GROUP – 组表
功能: 存储组信息.
字段名 | 说明 | 数据类型 | 是否关键字 | 可否为空 | 备注 |
id_ | id | NUMBER(19) | PK | 否 |
|
CLASS_ | 分类 | CHAR(1 CHAR) | N | 否 |
|
name_ | 组名 | VARCHAR2(255 CHAR) | A | 是 |
|
TYPE_ | 类型 | VARCHAR2(255 CHAR) | A | 是 |
|
PARENT_ | 父组 | NUMBER(19) | FK | 是 | 此组的父组id, jbpm_id_group(id_) |
1.16 JBPM_ID_MEMBERSHIP – 成员表
功能: 存储角色信息.
字段名 | 说明 | 数据类型 | 是否关键字 | 可否为空 | 备注 |
id_ | id | NUMBER(19) | PK | 否 |
|
CLASS_ | 分类 | CHAR(1 CHAR) | N | 否 |
|
name_ | 成员名 | VARCHAR2(255 CHAR) | A | 是 |
|
ROLE_ | 角色 | VARCHAR2(255 CHAR) | A | 是 |
|
USER_ | 用户 | NUMBER(19) | FK | 是 | 属于此成员的用户id, jbpm_id_user(id_) |
GROUP_ | 组 | NUMBER(19) | FK | 是 | 此成员所属组id, jbpm_id_group(id_) |
1.17 JBPM_ID_PERMISSIONS – 权限表
功能: 定义用户权限.
字段名 | 说明 | 数据类型 | 是否关键字 | 可否为空 | 备注 |
ENTITY_ | 实体 | NUMBER(19) | PK | 否 |
|
CLASS_ | 分类 | CHAR(1 CHAR) | A | 是 |
|
name_ | 权限名 | VARCHAR2(255 CHAR) | A | 是 |
|
ACTION_ | 动作 | VARCHAR2(255 CHAR) | A | 是 |
|