工作流简单介绍

表结构:

1. WF_WorkFlowType工作流类型表

每一类工作流都对应这里面一条记录。

 

 

2. WF_WorkFlow工作流表

每一条流程都对应这里面的一条记录, WF_WorkFlowType表跟WF_WorkFlow是一对多的关系。一个工作流类型可以对应多个工作流。

 

我们可以理解成一张单据可以按多个流程来走。

举例:如果我们要设定一张采购单的采购金额大于5000就需要由总经理来审核。那么这里就会有两个工作流:第一个是不需要总经理审核的,第二个是需要总经理审核的。

 

3. WF_Node节点表

每一个工作流是由节点组成的。与WF_WorkFlow表是多对多的关系。

举例:“总经理审批”这步操作可以做为一个节点插入这张表。

 

4. WF_WorkFlowNode工作节点关系表

用来记录工作流和节点的多对多关系。

红框框起来的部分是记录关系,后面的字段是权限控制需要的。其实权限控制只根据WorkFlowNodeId来就好了。

如图:WorkFlowID=6的这条工作流就是由3个节点组成的,按顺序NodeId依次为:135

根据前面的表我们可以知道这些信息代表:销售管理这条工作流需要 录入,审批,归档 。

 

5. WF_NodeState节点状态表

举例:销售管理这条工作流有三个节点 1,3,5。 分别代表 录入,审批,归档。

有一条销售管理的工作流现在已经流转到了审批节点,那么它的三个节点的状态应该是:

NodeID      NodeName         NodeStateID     NodeStateName

1         录入  3      已办理

3         审批  2      待办理

5         归档  1      未启用

 

6. WF_AutoTransactNode自动完成节点表

这个表不重要。可以跳过,以后再理解这个表。

设置自动完成节点,一旦工作流流到这个节点,就自动办理。

其实在WF_WorkFlowNode表里加一个是否自动完成的字段就可以了。

这里的数据代表所有工作流的  (NodeID=5 也就是 归档)  这个节点自动完成。自动归档。

 

 

 

前面这些是用来配置工作流的几个基础的表。

我们之前的系统是用工作流来管理单据的流程的,所以需要在配置到的工作流和单据之间建立联系。下面两张表就是这个作用。

 

7. WF_BillFlowNode单据流程节点表

这个就是流程和单据之间的关系表。每新增一张单据,我们都要确定这张单据所要执行的工作流,然后把这个工作流的所有节点跟这张单据的ID联系起来插入到下面这张表。

举例:

比如我们新增了一张BillID8的 销售单

销售单的WorkFlowTypeId6

根据  4 . WF_WorkFlowNode工作节点关系表我们知道这张单据需要执行三个节点

那么插入到这个关系表里面的数据就如下图红框框住的部分

根据NodeStateID我们可以知道这张单据现在流到了 审批 节点 

 

8. WF_BillFlowNodeRemark单据流程节点备注表

其实就是操作记录,记录每一步操作。 

 

9. WF_BillState单据状态表

 

以上就是工作流所有的表。下面这张是销售单据表,使用这个工作流来控制流程的单据都需要有一个State字段和WorkFlowTypeID字段

 

存储过程:

Proc_WorkFlow_Interface

最核心的存储过程

负责:

创建新的工作流

工作流节点的跳转(向前:提交,向后:退回、作废) 

单据状态的更新(比如节点流转到 “审核”,  就把单据状态改成“待审核” ;如果“审核”节点被退回,就把单据状态改成“已退回”;如果流程已经跑完,就把单据状态改成“已归档”

 

Proc_WorkFlow_List_Filter

用来查询单据。

根据某一个节点以及节点状态来查询。

比如销售单有三个节点 (录入、审批、归档),审批人员登陆系统想要查看待审核的单据,就需要查询出那些  “审批节点” 的状态等于 “待办理” 的单据

 

NodeID      NodeName         NodeStateID     NodeStateName

1         录入  3      已办理

3         审批  2      待办理

5         归档  1      未启用

 

 

 

 

转载于:https://www.cnblogs.com/jerrybing/archive/2013/01/14/2859088.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值