工作流引擎开发系列二数据库设计

     在前面一节中简单的讲解了基本原理,从这节开始会详细讲解。首先需要讲解的就是数据设计,下面就是数据库的相关设计

 
表名:WorkflowTemplate--工作流模板
序号列名数据类型长度小数位标识主键允许空默认值说明
1TemplateIDuniqueidentifier160   
2TemplateNamenvarchar360    
3Workflownvarchar1000    
4RecordStatusnvarchar360    
5CreateDatesmalldatetime40  getdate 
6CreateUserIDint40    
7ModifyDatesmalldatetime40  getdate 
8ModifyUserIDint40    
 
表名:WorkflowTemplateFlow--模板活动Activity
序号列名数据类型长度小数位标识主键允许空默认值说明
1FlowIDuniqueidentifier160   
2Activitynvarchar1000    
3ActivityNamenvarchar360    
4ActivityTypenvarchar360    
5ApplicationCodenvarchar1000    
6TemplateIDuniqueidentifier160    
7ParentFlowIDuniqueidentifier160    
8ContainerFlowIDuniqueidentifier160    
9GroupIDuniqueidentifier160    
10IsGroupint40    
11IsExpirebit10    
12IsNoticebit10    
13ExpireDayint40    
14Desciptionnvarchar2500    
15RecordStatusnvarchar360    
16CreateDatesmalldatetime40  getdate 
17CreateUserIDint40    
18ModifyDatesmalldatetime40  getdate 
19ModifyUserIDint40    
 
表名:WorkflowFlowRole--Activity审批权限
序号列名数据类型长度小数位标识主键允许空默认值说明
1RoleIDuniqueidentifier160   
2FlowIDuniqueidentifier160    
3RefRoleTablenvarchar1000    
4RefRoleIDint40    
5RoleRemarknvarchar2500    
 
表名:WorkflowFlowCondition--分支节点条件
序号列名数据类型长度小数位标识主键允许空默认值说明
1ConditionIDuniqueidentifier160   
2FlowIDuniqueidentifier160    
3TargetFlowIDuniqueidentifier160    
4EntityNamenvarchar1000    
5EntityFormulanvarchar2500    
6EntityValuenvarchar2500    
7EntityRemarknvarchar2500    

 

表名:WorkflowInstance--工作流运行实例
序号列名数据类型长度小数位标识主键允许空默认值说明
1InstanceIDuniqueidentifier160   
2TemplateIDuniqueidentifier160    
3TemplateNamenvarchar360    
4Workflownvarchar1000    
5BizKeynvarchar1000    
6OrgKeynvarchar1000    
7RunStatusnvarchar360    
8RecordStatusnvarchar360    
9CreateDatesmalldatetime40  getdate 
10CreateUserIDint40    
11ModifyDatesmalldatetime40  getdate 
12ModifyUserIDint40    
 
表名:WorkflowInstanceFlow--工作流运行实例节点
序号列名数据类型长度小数位标识主键允许空默认值说明
1InstanceFlowIDuniqueidentifier160   
2InstanceIDuniqueidentifier160    
3FlowIDuniqueidentifier160    
4Activitynvarchar1000    
5ActivityNamenvarchar360    
6ActivityTypenvarchar360    
7ApplicationCodenvarchar1000    
8TemplateIDuniqueidentifier160    
9ParentFlowIDuniqueidentifier160    
10ContainerFlowIDuniqueidentifier160    
11PrevFlowIDuniqueidentifier160    
12GroupIDuniqueidentifier160    
13IsGroupint40    
14IsNoticebit10    
15IsExpirebit10    
16ExpireDayint40    
17Desciptionnvarchar2500    
18RecordStatusnvarchar360    
19CreateDatesmalldatetime40  getdate 
20CreateUserIDint40    
21ModifyDatesmalldatetime40  getdate 
22ModifyUserIDint40    
 
 
表名:WorkflowInstanceRole--工作流运行实例角色
序号列名数据类型长度小数位标识主键允许空默认值说明
1InstanceRoleIDuniqueidentifier160   
2InstanceFlowIDuniqueidentifier160    
3RoleIDuniqueidentifier160    
4FlowIDuniqueidentifier160    
5RefRoleTablenvarchar1000    
6RefRoleIDint40    
7RoleRemarknvarchar2500    
 
表名:WorkflowInstanceCondition--工作流运行实例条件
序号列名数据类型长度小数位标识主键允许空默认值说明
1InstanceConditionIDuniqueidentifier160   
2InstanceFlowIDuniqueidentifier160    
3ConditionIDuniqueidentifier160    
4FlowIDuniqueidentifier160    
5TargetFlowIDuniqueidentifier160    
6EntityNamenvarchar1000    
7EntityFormulanvarchar2500    
8EntityValuenvarchar2500    
9EntityRemarknvarchar2500    
 
由上可以看出,运行实例是模板的复制,就是在运行的时候把同一业务的流程进行复制,然后运行的都是实例,操作实例对象。 
  • 4
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
工作流引擎数据库设计全文共3页,当前为第1页。工作流引擎数据库设计全文共3页,当前为第1页。工作流引擎数据库设计 工作流引擎数据库设计全文共3页,当前为第1页。 工作流引擎数据库设计全文共3页,当前为第1页。 概述 基于打造一个灵活、高效、轻量级的工作流引擎,暂时不考虑功能的完备和复杂,只是实现其中必不可少的功能和条件。主要考虑以下三个方面的内容: 流程定义:工作流中的流程极其相关活动的定义和模型数据搭建 运行调度控制:执行工作流过程中流程活动任务分配、调度控制 运行阶段的人机交互:实现各种活动执行过程中用户与IT应用工具之间的交互 数据库定义 流程定义 主要是跟流程模型定义相关的数据表,主要包括流程模型定义表(WF_FlowTemplate)、流程步骤模型定义表(WF_StepTemplate)、流程链路表(WF_FlowLink)、流程类型表(WF_FlowType) WF_FlowType 字段 类型 描述 备注 FlowTypeID int 流程类型ID 标示 not null FlowTypeName nvarchar(50) 流程分类名称 Description nvarchar(200) 流程类别描述 WF_FlowTemplate 字段 类型 描述 备注 FlowID int 流程ID 标示 not null FlowName nvarchar(50) 流程名称 FlowTypeID int 流程类型编码 Manager nvarchar(50) 流程实例管理者 CreateUserID int 创建人ID CreateDate Date 创建时间 ModifyUserID int 最后修改人ID ModifyDate Date 最后修改时间 Version int 版本 WF_StepTemplate 工作流引擎数据库设计全文共3页,当前为第2页。工作流引擎数据库设计全文共3页,当前为第2页。字段 工作流引擎数据库设计全文共3页,当前为第2页。 工作流引擎数据库设计全文共3页,当前为第2页。 类型 描述 备注 StepID int 步骤ID 标示 not null StepName nvarchar(100) 步骤名称 FlowID int 流程ID FormURL nvarchar(200) 表单URL PositionX float X坐标 PositionY Float Y坐标 LimitTime int 步骤时限 SubFlowID int 子流程ID Description nvarchar(200) 步骤描述 WF_FlowLink 字段 类型 描述 备注 FlowLinkID int 流程链路ID 标示 not null FlowID nvarchar(50) 流程ID FromStep int 前一步骤ID ToStep Int 后一步骤ID Action nvarchar(200) 流转条件行为 Description nvarchar(200) 流转路径描述 Expression nvarchar(200) 条件表达式 流程调度 针对运行中的流程实例以及活动实例进行管理和调度,主要包括流程实例表(WF_FlowInstance)、步骤实例表(WF_StepInstance) WF_FlowInstance 字段 类型 描述 备注 FlowInstanceID int 流程实例ID 标示 not null FlowInstanceName nvarchar(100) 流程实例名称 FlowID int 流程ID CreateUserID int 创建人ID CreateDate Date 创建时间 FinishDate Date 完成时间 Status int 流程实例状态 WF_StepInstance 字段 类型 描述 备注 StepInstanceID int 步骤实例ID 标示 not null FlowInstanceID int 流程实例ID StepID int 步骤ID 工作流引擎数据库设计全文共3页,当前为第3页。工作流引擎数据库设计全文共3页,当前为第3页。StartDate 工作流引擎数据库设计全文共3页,当前为第3页。 工作流引擎数据库设计全文共3页,当前为第3页。 datetime 开始时间 FinishDate datetime 完成时间 Status int 步骤状态 TrackRemark nvarchar(200) 轨迹备注 任务管理 流程实例运行过程中产生的工作项任务,主要包括任务列表(WF_TaskList)、消息列表(WF_MessageList) WF_TaskList 字段 类型 描述 备注 TaskID int 步骤实例

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值