现在的位置: 首页 > 综合 > 正文

osworkflow自带表结构分析

2013年08月18日 ⁄ 综合 ⁄ 共 1890字 ⁄ 字号 评论关闭
源: http://www.360doc.com/showWeb/0/0/7753.aspx

先说点题外话:如果各位哪位转载我的文章,非常欢迎,但请把出处写上!谢谢!

欢迎讨论:msn:yun15291li@hotmail.com

Osworkflow内置表结构(以mysql的表结构为例),具体需要参看其建表的sql语句,如字段类型、长度等,我在这里做一些必要的分析说明,如果你能够认真看,相信你可以看得懂。经过自己的实践摸索,认为各个表以及表中字段含义如下,从简单的说起:

1、  OS_GROUP:组结构表,如例子中分了barsbazsfoos三个组。存储在该表的GROUPNAME字段内。

2、  OS_USER:用户表,USERNAME字段存储用户名,PASSWORDHASH是经过加密过的密码。

3、  OS_MEMBERSHIP:用户与组的关系表,USERNAME字段存储用户名,GROUPNAME字段存储组名,表示用户与组之间的关系。

4、  表名:OS_CURRENTSTEP(正在执行的流程信息)

列名

说明

约束

ID

主键

ENTRY_ID

当前执行的工作流的ENTRYID,即如约束所写

OS_WFENTRY表的ID为其外键

STEP_ID

当前执行的STEPID

ACTION_ID

当前执行的ACTIONID

OWNER

需要执行的用户

OS_USER表的USERNAME为其外键

START_DATE

开始时间精确到秒,在初始化工作时候此值被设置。

FINISH_DATE

结束时间

DUE_DATE

这个还不清楚,(猜测是trigger设置的日期,有谁知道请告诉我谢谢!)

STATUS

当前正在实现的step中的具体status

CALLER

实际执行的用户

OS_USER表的USERNAME为其外键

5、  表名:OS_CURRENTSTEP_PREV(合成主键)

split过程,ID2,3PREVIOUS_ID都记录为1。则表示是由1分出2,3;此表实时变化,如一2分支执行完毕,那么就将此条记录删除。

列名

说明

约束

ID

记录当前正在执行的ID

OS_CURRENTSTEPID为其外键

PREVIOUS_ID

记录由哪个ID产生的当前正正在执行的信息

OS_HISTORYSTEPID为其外键

6、  表名:OS_HISTORYSTEP(此表结构与OS_CURRENTSTEP相同,说明也相同)只是这个表代表的已经被执行过的。

列名

说明

约束

ID

主键

ENTRY_ID

OS_WFENTRY表的ID为其外键

STEP_ID

ACTION_ID

OWNER

OS_USER表的USERNAME为其外键

START_DATE

FINISH_DATE

DUE_DATE

STATUS

CALLER

OS_USER表的USERNAME为其外键

7、  表名:OS_HISTORYSTEP_PREV(联合主键)(记录历史记录表OS_HISTORYSTEP之间的关系,如都执行的1,2。但是2是由1引起发生的。那么ID2PREVIOUS_ID1

列名

说明

约束

ID

历史记录中的被引发的ID

OS_HISTORYSTEP(ID)

PREVIOUS_ID

历史记录中的主引发的ID

OS_HISTORYSTEP(ID)

8、  表名:OS_PROPERTYENTRYGLOBAL_KEY, ITEM_KEY联合主键)存储propertyset的值

列名

说明

GLOBAL_KEY

这个值是在JDBCWorkflowStore类的public PropertySet getPropertySet(long entryId) {

        HashMap args = new HashMap(1);

        args.put("globalKey", "osff_" + entryId);

        return PropertySetManager.getInstance("jdbc", args);

}赋值的。

规则如上面代码。Osff+entryid

ITEM_KEY

Key值,propertyset(“即为key,……

ITEM_TYPE

具体参见com.opensymphony.module.propertyset包内properties里的各种value-type。存储对应的数字

STRING_VALUE

String

DATE_VALUE

Date

DATA_VALUE

Data

FLOAT_VALUE

Float

NUMBER_VALUE

number

9、  表名:OS_STEPIDS

列名

说明

ID

主键,自动增量

10、              名:OS_WFENTRY

<

列名

说明

ID

主键标志

NAME

抱歉!评论已关闭.