1. 程式人生 > >工作流引擎開發系列二資料庫設計

工作流引擎開發系列二資料庫設計

     在前面一節中簡單的講解了基本原理,從這節開始會詳細講解。首先需要講解的就是資料設計,下面就是資料庫的相關設計

表名:WorkflowTemplate--工作流模板
序號 列名 資料型別 長度 小數位 標識 主鍵 允許空 預設值 說明
1 TemplateID uniqueidentifier 16 0
2 TemplateName nvarchar 36 0
3 Workflow nvarchar 100 0
4 RecordStatus nvarchar 36 0
5 CreateDate smalldatetime 4 0 getdate
6 CreateUserID int 4 0
7 ModifyDate smalldatetime 4 0 getdate
8 ModifyUserID int 4 0
表名:WorkflowTemplateFlow--模板活動Activity
序號 列名 資料型別 長度 小數位 標識 主鍵 允許空 預設值 說明
1 FlowID uniqueidentifier 16 0
2 Activity nvarchar 100 0
3 ActivityName nvarchar 36 0
4 ActivityType nvarchar 36 0
5 ApplicationCode nvarchar 100 0
6 TemplateID uniqueidentifier 16 0
7 ParentFlowID uniqueidentifier 16 0
8 ContainerFlowID uniqueidentifier 16 0
9 GroupID uniqueidentifier 16 0
10 IsGroup int 4 0
11 IsExpire bit 1 0
12 IsNotice bit 1 0
13 ExpireDay int 4 0
14 Desciption nvarchar 250 0
15 RecordStatus nvarchar 36 0
16 CreateDate smalldatetime 4 0 getdate
17 CreateUserID int 4 0
18 ModifyDate smalldatetime 4 0 getdate
19 ModifyUserID int 4 0
表名:WorkflowFlowRole--Activity審批許可權
序號 列名 資料型別 長度 小數位 標識 主鍵 允許空 預設值 說明
1 RoleID uniqueidentifier 16 0
2 FlowID uniqueidentifier 16 0
3 RefRoleTable nvarchar 100 0
4 RefRoleID int 4 0
5 RoleRemark nvarchar 250 0
表名:WorkflowFlowCondition--分支節點條件
序號 列名 資料型別 長度 小數位 標識 主鍵 允許空 預設值 說明
1 ConditionID uniqueidentifier 16 0
2 FlowID uniqueidentifier 16 0
3 TargetFlowID uniqueidentifier 16 0
4 EntityName nvarchar 100 0
5 EntityFormula nvarchar 250 0
6 EntityValue nvarchar 250 0
7 EntityRemark nvarchar 250 0
表名:WorkflowInstance--工作流執行例項
序號 列名 資料型別 長度 小數位 標識 主鍵 允許空 預設值 說明
1 InstanceID uniqueidentifier 16 0
2 TemplateID uniqueidentifier 16 0
3 TemplateName nvarchar 36 0
4 Workflow nvarchar 100 0
5 BizKey nvarchar 100 0
6 OrgKey nvarchar 100 0
7 RunStatus nvarchar 36 0
8 RecordStatus nvarchar 36 0
9 CreateDate smalldatetime 4 0 getdate
10 CreateUserID int 4 0
11 ModifyDate smalldatetime 4 0 getdate
12 ModifyUserID int 4 0
表名:WorkflowInstanceFlow--工作流執行例項節點
序號 列名 資料型別 長度 小數位 標識 主鍵 允許空 預設值 說明
1 InstanceFlowID uniqueidentifier 16 0
2 InstanceID uniqueidentifier 16 0
3 FlowID uniqueidentifier 16 0
4 Activity nvarchar 100 0
5 ActivityName nvarchar 36 0
6 ActivityType nvarchar 36 0
7 ApplicationCode nvarchar 100 0
8 TemplateID uniqueidentifier 16 0
9 ParentFlowID uniqueidentifier 16 0
10 ContainerFlowID uniqueidentifier 16 0
11 PrevFlowID uniqueidentifier 16 0
12 GroupID uniqueidentifier 16 0
13 IsGroup int 4 0
14 IsNotice bit 1 0
15 IsExpire bit 1 0
16 ExpireDay int 4 0
17 Desciption nvarchar 250 0
18 RecordStatus nvarchar 36 0
19 CreateDate smalldatetime 4 0 getdate
20 CreateUserID int 4 0
21 ModifyDate smalldatetime 4 0 getdate
22 ModifyUserID int 4 0
表名:WorkflowInstanceRole--工作流執行例項角色
序號 列名 資料型別 長度 小數位 標識 主鍵 允許空 預設值 說明
1 InstanceRoleID uniqueidentifier 16 0
2 InstanceFlowID uniqueidentifier 16 0
3 RoleID uniqueidentifier 16 0
4 FlowID uniqueidentifier 16 0
5 RefRoleTable nvarchar 100 0
6 RefRoleID int 4 0
7 RoleRemark nvarchar 250 0
表名:WorkflowInstanceCondition--工作流執行例項條件
序號 列名 資料型別 長度 小數位 標識 主鍵 允許空 預設值 說明
1 InstanceConditionID uniqueidentifier 16 0
2 InstanceFlowID uniqueidentifier 16 0
3 ConditionID uniqueidentifier 16 0
4 FlowID uniqueidentifier 16 0
5 TargetFlowID uniqueidentifier 16 0
6 EntityName nvarchar 100 0
7 EntityFormula nvarchar 250 0
8 EntityValue nvarchar 250 0
9 EntityRemark nvarchar 250 0
由上可以看出,執行例項是模板的複製,就是在執行的時候把同一業務的流程進行復制,然後執行的都是例項,操作例項物件。