intelliFlow数据库设计.docx
《intelliFlow数据库设计.docx》由会员分享,可在线阅读,更多相关《intelliFlow数据库设计.docx(52页珍藏版)》请在冰豆网上搜索。
![intelliFlow数据库设计.docx](https://file1.bdocx.com/fileroot1/2023-1/27/ab1453dd-9644-4949-adb9-92cf90f5539b/ab1453dd-9644-4949-adb9-92cf90f5539b1.gif)
intelliFlow数据库设计
安全等级:
保密(公司内部使用)
ISO文件编号:
SD-3-38,版本:
A
intelliFlow
数据库设计书
厦门东南融通系统工程有限公司制作
2005年1月20日
1E-R图
1.1流程建模相关表E-R图
1.2任务分派相关表E-R图
1.3活动相关表E-R图
1.4组织结构相关表E-R图
2数据库表说明
2.1Activity
功能:
活动记录。
流程每通过一个结点,产生一条记录
字段
类型
属性
描述
POID
char(32)
PK
活动的唯一标识符
ProcessPOID
char(32)
NOTNULL
流程的唯一标识符
NodeHandle
char(32)
NOTNULL
结点的句柄
NodeId
varchar(64)
NOTNULL
结点的Id号
NodeName
varchar(64)
结点的名字
NodeKind
numeric(5,0)
NOTNULL
结点类型
1:
人工任务结点
2:
开始结点
3:
结束结点
4:
分支结点
5:
汇聚结点
6:
子流程结点
7:
事件结点
8:
定时结点
9:
自动任务结点
10:
nop结点
ExecMode
numeric(5,0)
DEFAULT1
执行模式
0:
不考虑执行模式
1:
同步模式执行
2:
异步模式执行
3:
正常结束模式
4:
中止模式
5:
与逻辑(逻辑模式)
6:
或逻辑(逻辑模式)
7:
与或逻辑(逻辑模式)
Status
numeric(10,0)
NOTNULL
状态
1:
执行中
2:
挂起状态、暂停
4:
已完成
8:
出异常
16:
被中止
Flag
numeric(5,0)
NULL
用来标记两种状态处理机制
BackupStatus
varchar(255)
NULL
进行状态历史的备份
Overdue
numeric(5,0)
NULL
记录超市状态的字段
PreActionCursor
numeric(5,0)
DEFAULT0
前置动作的执行游标
0表示还未执行
1表示执行过了
TaskAssignActionCursor
numeric(5,0)
DEFAULT0
任务分派动作的执行游标
0表示还未执行
1表示执行过了
PostActionCursor
numeric(5,0)
DEFAULT0
后置动作的执行游标
0表示还未执行
1表示执行过了
Valve
numeric(5,0)
DEFAULT0
主要针对join结点和subflow结点,当为0时,表示所有的等待的边已经全部到达,流程向下流转
StartDatetime
datetime
NOTNULL
活动开始时间
Deadline
datetime
活动超时时间.活动超时就是任务超时,如果有超时设置,为超时时间,否则,该值是没用的
DoneDatetime
datetime
活动结束时间
2.2AssignPolicy
功能:
分派策略基本信息表,决定分派模式,退出条件等
字段
类型
属性
描述
POID
Char(32)
NOTNULL
分派策略的唯一标识号
PackageId
Varchar(255)
NOTNULL
包的唯一标识号
TemplateId
Varchar(64)
NOTNULL
模板的唯一标识号
MainVersion
Numeric(5,0)
主版本号
SubVersion
Numeric(5,0)
次版本号
NodeId
Varchar(64)
NOTNULL
结点的唯一标识号
AssignMode
Numeric(5,0)
NOTNULL
分派模式
1:
单一分派
2:
多重分派
3:
抢占分派
EixtCount
Numeric(5,0)
退出条件
大于100时,执行人为该数减100
小于100时,为以该数表示的百分数乘分派的总人数的值,取不超过的最大整数
OwnerUnitId
Varchar(64)
分派策略所属的组织单元号
“0”表示适合于所有的组织单元
Remark
Varchar(255)
描述信息
2.3AsssignDescription
功能:
分派策略详细信息表,决定怎样分派给相关的人,可以在不同的条件下执行不同的分派策略
字段
类型
属性
描述
POID
Char(32)
NOTNULL
唯一标识符
AsssignPolicyPOID
Char(32)
NOTNULL
AssignPolicy的POID
Condition
Varchar(512)
分派策略的条件表达式,为真实时执行分派策略
PolicyScript
text
分派策略表达式,根据分派策略语言写成
Enabled
Numberic(1,0)
NOTNULL
是否生效
1:
生效,0:
无效
Remark
Varchar(255)
描述信息
2.4DesignTemplate
功能:
部署前的template,运行时不需要,存储模板信息和图元信息;版本升级时需要遍历该表
字段
类型
属性
描述
Handle
char(32)
PK
流程模板的句柄
PackageHandle
char(32)
NOTNULL
包的句柄
Id
varchar(64)
NOTNULL
包的id号
Name
varchar(64)
模板号
SchemaVersion
varchar(10)
工作流XSD的版本号
MainVersion
numeric(5,0)
NOTNULL
模板主版本号
SubVersion
numeric(5,0)
NOTNULL
模板次版本号
Remark
varchar(255)
描述
Content
text
模板信息
IsDeployed
numeric(1,0)
DEFAULT0
是否部署了
0:
已部署
1:
没有部署
2.5DesignPolicy
功能:
客户端上传的分派策略信息表,运行时不需要。
字段
类型
属性
描述
Handle
Char(32)
NOTNULL
分派策略的句柄
PkgId
Char(255)
NOTNULL
包的Id
TemplateId
Char(64)
NOTNUL
模版的Id
OwnerOrgId
varchar(64)
NOTNULL
分派策略所属的组织单元号
OwnerOrgName
Varchar(64)
NULL
组织的名称
Content
text
分派策略信息
Remark
varchar(255)
描述
IsDeployed
numeric(1,0)
DEFAULT0
是否部署了
0:
已部署
1:
没有部署
2.6EngineHistory
功能:
引擎日志信息,记录引擎的启动和停止
字段
类型
属性
描述
POID
char(32)
PK
唯一标识符
EngineId
varchar(64)
NOTNULL
引擎id号
EngineName
varchar(64)
NOTNULL
引擎名字
Action
numeric(5,0)
NOTNULL
引擎操作
1:
启动
2:
停止
ActionDatetime
datetime
NOTNULL
操作时间
OperatorId
varchar(64)
操作人id号
OperatorName
varchar(64)
操作人名字
Remark
varchar(255)
描述
2.7EngineManagement
功能:
引擎信息;为在分布式引擎环境考虑
字段
类型
属性
描述
Id
varchar(64)
PK
引擎id号
Name
varchar(64)
引擎名字
Version
varchar(20)
引擎版本
NetAddress
varchar(64)
NOTNULL
引擎安装的机器的IP或机器名
HttpPort
numeric(5,0)
NOTNULL
表示引擎所在服务器的Http请求端口
IiopPort
numeric(5,0)
NULL
表示引擎所在服务器的IIOP端口
Status
numeric(5,0)
DEFAULT0
引擎状态
1:
运行中
2:
停止
IsMainEngine
numeric(1,0)
DEFAULT0
标示该引擎是否为主引擎
0:
非主引擎
1:
主引擎
Remark
varchar(255)
描述
2.8EventKey
功能:
事件的key
字段
类型
属性
描述
POID
char(32)
PK
记录的唯一标识符
EventWatchPOID
char(32)
NOTNULL
对应EventWatch的POID
Name
varchar(64)
NOTNULL
名字
Kind
numeric(5,0)
NOTNULL
类型。
同ProcessVariable中的
Value
varchar(1024)
NOTNULL
值
2.9EventQueue
功能:
事件队列
字段
类型
属性
描述
POID
char(32)
PK
记录的唯一标识符
Title
varchar(128)
NOTNULL
暂存事件的标题
EventKeys
varchar(128)
NULL
暂存事件的Key的组合
EventValues
Varchar(512)
NULL
暂存事件的Value的组合
CreateDatetime
datatime
NOTNULL
暂存事件的初始时间
InvalidateDatetime
datatime
NULL
事件的过期时间(事件暂存时间+时间有效时间段)
Event
text
NOTNULL
暂存事件WorkflowEvent的XML字符串
2.10EventWatch
功能:
事件
字段
类型
属性
描述
POID
PK
记录唯一标识符
TemplateHandle
char(32)
流程模板的句柄
ProcessPOID
char(32)
Process的唯一标识符
EventActivityPOID
char(32)
对应Activity中的POID
Condition
varchar(512)
NOTNULL
条件表达式
EventTitle
varchar(255)
事件的标题
2.11Node
功能:
结点基本属性描述
字段
类型
属性
描述
Handle
char(32)
PK
结点的句柄
TemplateHandle
char(32)
NOTNULL
流程模板的句柄
Id
varchar(64)
NOTNULL
结点号
Name
varchar(64)
结点名字
Kind
numeric(5,0)
NOTNULL
结点类型
1:
人工任务结点
2:
开始结点
3:
结束结点
4:
分支结点
5:
汇聚结点
6:
子流程结点
7:
事件结点
8:
定时结点
9:
自动任务结点
10:
nop结点
MatchId
varchar(64)
Remark
varchar(255)
描述
ExecMode
numeric(5,0)
DEFAULT1
执行模式
0:
不考虑执行模式
1:
同步模式执行
2:
异步模式执行
3:
正常结束模式
4:
全局结束模式
5:
与逻辑(逻辑模式)
6:
或逻辑(逻辑模式)
7:
与或逻辑(逻辑模式)
IsSecret
numeric(1,0)
DEFAULT0
标识该结点是否保密结点,如果是保密结点,那么流程追踪的时候不能查看该步骤的具体信息,比如任务执行人等。
比如绩效考核结点一般就设为保密结点。
缺省情况下是非保密结点。
IsReversable
numeric(1,0)
DEFAULT1
标识该结点是否可逆,任务回收或任务驳回时不能越过不可逆结点。
缺省值是可逆。
2.12NodeAction
功能:
结点高级属性描述
字段
类型
属性
描述
POID
char(32)
PK
结点动作的DB唯一标识符
NodeHandle
char(32)
NOTNULL
结点的句柄
ActionCategory
numeric(5,0)
NOTNULL
结点的Action类别
1:
前驱Ation类型
2:
taskAction类型
3:
后驱Action类型
Seq
numeric(5,0)
NOTNULL
结点上Action的执行顺序
Condition
varchar(512)
条件表达式,为真时才执行结点的action
ActionKind
numeric(5,0)
NOTNULL
结点action的分类
1:
分派任务动作
2:
调用业务方法动作
3:
发送事件动作
TransactionKind
numeric(5,0)
NOTNULL
事务类型,目前都是1,对应EJB的TRANSACTIONREQUIRED
Remark
varchar(255)
描述
ActionDefinition
text
用XML描述的Action定义
2.13NodeEventWatch
功能:
存放事件结点的事件监听定义。
字段
类型
属性
描述
POID
char(32)
PK
结点事件监听定义的DB惟一标识符
NodeHandle
char(32)
NOTNULL
结点句柄
EventTitle
varchar(255)
NOTNULL
事件标题
EventWatchDefinition
text
NOTNULL
事件监听定义的XML描述,存放EventWatch为根元素的XML字符串
2.14NodeTimer
功能:
存放定时结点的定时定义。
字段
类型
属性
描述
NodeHandle
char(32)
PK
结点句柄
TimerDefinition
text
NOTNULL
定时结点的定时定义,存放以Timer为根元素的XML字符串
2.15NodeVariable
功能:
结点变量。
目前暂时没用
2.16Process
功能:
流程初始化一次在该表插入一条记录,记录流程的信息
字段
类型
属性
描述
POID
char(32)
PK
记录的唯一标识符
MPID
char(32)
业务主标记号
TemplateHandle
char(32)
NOTNULL,
流程模板的唯一标识符
TemplateId
varchar(64)
NOTNULL,
流程模板的id号
TemplateName
varchar(64)
流程模板的名字
MainVersion
numeric(5,0)
NOTNULL
流程模板的主版本号
SubVersion
numeric(5,0)
NOTNULL
流程模板的次版本号
StartMode
numeric(5,0)
NOTNULL
启动模式
1:
以父流程方式启动
2.以子流程方式启动
ExecMode
numeric(5,0)
执行模式
1:
同步
2:
异步
ParentProcPOID
char(32)
如果以子流程方式启动,保存对应的父流程的POID
ParentActivityPOID
char(32)
如果以子流程方式启动,保存对应的父流程的活动的POID(子流程是父流程的一个结点,该结点在Activity表中有一条记录,子流程作为流程,在Process表中又会有1条记录,两者要建立关联关系)
Subject
varchar(255)
流程名
InitiatorId
varchar(64)
NOTNULL
流程启动人的Id号
InitiatorName
varchar(64)
流程启动人的名字
InitiatorPositionId
varchar(64)
流程启动人职位id号
OwnerOrgId
varchar(64)
NOTNULL,
流程所属的组织单元号
Status
numeric(10,0)
NOTNULL
流程状态
1:
运行中
2:
暂停,挂起
4:
已正常完成
8:
出异常
16:
超期
32:
被中止,取消
64:
重新启活
Flag
numeric(5,0)
NULL
用来标记两种状态处理机制
BackupStatus
varchar(255)
NULL
进行状态历史的备份
Overdue
numeric(5,0)
NULL
记录超市状态的字段
StartDatetime
datetime
NOTNULL
流程启动时间
Deadline
datetime
流程超时的时间
DoneDatetime
datetime
流程结束时间
LockFlag
numeric(1,0)
流程实例加锁字段,用于基于数据库事务的并发控制
Ref1
varchar(64)
NULL
当前流程关联的业务主键1
Ref2
varchar(64)
NULL
当前流程关联的业务主键2
Ref3
varchar(64)
NULL
当前流程关联的业务主键3
Ref4
varchar(64)
NULL
当前流程关联的业务主键4
Ref5
varchar(64)
NULL
当前流程关联的业务主键5
2.17ProcessException
功能:
流程的异常记录表
字段
类型
属性
描述
POID
char(32)
PK
记录的唯一标识符
ProcessPOID
char(32)
NOTNULL
流程的唯一标识符
ActivityPOID
char(32)
NOTNULL
活动的唯一标识符
ExpCode
numeric(5,0)
NOTNULL
异常代码
ExpMessage
text
异常消息
Status
numeric(5,0)
NOTNULL
流程异常的状态
1--流程异常状态-未解决
2--流程异常状态-已解决
CreatedDatetime
datetime
NOTNULL
创建时间
ResolverId
varchar(64)
解决人的id号
ResolverName
varchar(64)
解决人的名字
ResolvedDatetime
datetime
解决时间
2.18ProcessHistory
功能:
流程的日志信息
字段
类型
属性
描述
POID
char(32)
PK
记录的唯一标识符
ProcessPOID
char(32)
NOTNULL
标识流程的一次初始化,对应Process表中的POID
Action
numeric(5,0)
NOTNULL
流程action
1:
启动
2:
停止
3:
暂停
4:
恢复
ActionDatetime
datetime
NOTNULL
Action执行时间
OperatorId
varchar(64)
操作人id号
OperatorName
varchar(64)
操作人名字
Remark
varchar(255)
描述
2.19ProcessVariable
功能:
,流程变量的信息
字段
类型
属性
描述
POID
char(32)
PK
记录唯一标识符
ProcessPOID
char(32)
NOTNULL
流程的唯一表示符,对应Process表中的POID
Name
varchar(64)
NOTNULL
变量名
Kind
numeric(5,0)
NOTNULL
变量类型
1:
变元名称
2:
字符串
3:
整数
4:
长整数
5:
浮点
6:
双浮点
7:
日期时间
8:
布尔型
9:
字符
10:
可序列化对象
BizKey
numeric(1,0)
numeric(1,0)
目前没用.指是否将该变量作为应用的一个变量使用
Remark
varchar(255)
描述
Value
varchar(1024)
变量值
BizName
varchar(64)
NULL
显示的业务描述名称
2.20Route
功能:
流程的边的信息
字段
类型
属性
描述
Handle
char(32)
PK
记录的唯一标识符
Condition
varchar(512)
边上的条件
Notation
varchar(64)
边的名字
Remark
varchar(255)
描述
TemplateHandle
char(32)
NOTNULL
流程模板的句柄
FromNodeHandle
char(32)
NOTNULL
开始结点的句柄
ToNodeHandle
char(32)
NOTNULL
结束结点的句柄
IsDefault
numeric(1,0)
DEFAULT0
是否是默认的边,如果是,当所有边上的条件都不成立时,走该边
0:
非默认的边
1:
是默认的边
IsVisible
numeric(1,0)
DEFAULT1
目前没用
2.21StaffWorkload
功能:
员工工作量表
字段
类型
属性
描述
StaffId
varchar(64)
PK
员工id号
StaffName
varchar(64)
员工名
Workload
numeric(5,0)
DEFAULT0
工作量
2.22SharedDefintion
功能:
共享定义表
字段
类型
属性
描述
Name
varchar(32)
PK
共享定义名称
Text
text
共享定义内容