简易工作流设计模型
一、 工作流简介 ............................................................................................................................. 3 二、 工作流设计思路 ..................................................................................................................... 3
(一) 工作流整体结构图 ..................................................................................................... 3
1. 业务说明 ................................................................................................................... 3 2. 工作流整体结构图 ................................................................................................... 3 (二) 流程分类和流程实例设计 ......................................................................................... 4
1. 业务说明 ................................................................................................................... 4 2. 界面设计 ................................................................................................................... 5 3. 后台表-流程分类表.................................................................................................. 5 4. 后台表-流程模板表.................................................................................................. 6 5. 备注说明 ................................................................................................................... 7 (三) 自定义流程表单设计 ................................................................................................. 7
1. 业务说明 ................................................................................................................... 7 2. 界面设计 ................................................................................................................... 7 3. 后台表-模板表字段表.............................................................................................. 8 4. 备注说明 ................................................................................................................... 9 (四) 流程步骤定义 ............................................................................................................. 9
1. 业务说明 ................................................................................................................... 9 2. 界面设计 ................................................................................................................. 10 3. 后台表 ..................................................................................................................... 10 4. 后台表关系 ............................................................................................................. 10 5. 备注说明 ................................................................................................................. 11 (五) 流程实例发起 ........................................................................................................... 11
1. 业务说明 ................................................................................................................. 11
;
.
2. 界面设计 ................................................................................................................. 11 3. 后台表 ..................................................................................................................... 12
三、 结语....................................................................................................................................... 14
;
.
一、工作流简介
工作流是指一类能够完全自动执行的经营过程,根据一系列过程规则,将文档、信息或任务在不同的执行者之间进行传递与执行。
二、工作流设计思路
(一)工作流整体结构图
1.业务说明
整个工作流后台结构设计图,包含表单设计、流程设置、流程实例发起三个主要部分的后台表结构设计。
2.工作流整体结构图 见下
;
.
(二)流程分类和流程实例设计
1.业务说明
建立流程时候,需要先将流程进行分类,便于权限控制和梳理流程的层级关系;另外每个流程实例的数据,需要保存在流程实例表中进行区分(不同的流程实例对应的数据结构不一样,每条流程实例的实例数据也不一样)
;
.
2.界面设计
3.后台表-流程分类表
select * from xSYS_TableDefs where
xHolderGUID='{00000000-0000-0000-0000-000000000000}'
;
.
4.后台表-流程模板表
select * from xSYS_TableDefs where xParentGUID='[MasterGUID]' and xHolderGUID='{00000000-0000-0000-0000-000000000000}'
;
.
5.备注说明
因为之前的模式限制,所以将流程分类和流程实例表的数据都保存在一张表里,通过xHolderGUID字段区分是流程分类表还是流程实例表。
(三)自定义流程表单设计
1.业务说明
流程表单设计主要用于业务数据的记录,设计内容来源于实际业务,实现方法是在实例表的基础上增加表单字段,用于记录每个流程发起时的填写内容。
2.界面设计 字段设计界面,见下
页面展示界面,见下
;
.
3.后台表-模板表字段表
select * from xSYS_FieldDefs where xTableGUID='[MasterGUID]'
;
.
4.备注说明
xSYS_FieldDefs保存字段类型、属性等信息,展示的表单支持手工拖拽字段表达式,形成满足业务需要的布局形式。
(四)流程步骤定义
1.业务说明
流程步骤定义的作用是用来引导流程审批,每个流程发起后,按照指定的条件不断的进行条件判断和计算下一处理人,最终引导流程审批结束。
;
.
2.界面设计 设计界面,见下
3.后台表
【流程分类表2】xGL_workflow_Category
注:数据来源于平台表xSYS_TableDefs里的分类数据,只不过平台表可以创建xSYS_FieldDefs表字段,可以设置界面
【流程模板表2】xGL_WF_config
注:数据来源于平台表xSYS_TableDefs里的流程表数据,只不过平台表可以创建xSYS_FieldDefs表字段,可以设置界面
【流程步骤表】xGL_WF_Flow_Master
【步骤条件表】xGL_WF_Flow_MasterBranch 注:此处需要读取出表单字段,用于条件设置
4.后台表关系 见下图:
;
.
5.备注说明
此流程步骤定义其目的就是设置每个审批步骤,并且设置步骤与步骤之间的流转条件,以便流程发起后,便于根据设置的步骤和条件去寻找下一审批步骤(将审批表单流转到指定的责任人,进行下一步审批操作,依次类推指导流程最终审批结束)
(五)流程实例发起
1.业务说明
流程实例发起即代表一个业务流程审批开始启动,对应后台就是一条流程实例表记录产生,并且在发起者发起时触发生成下一审批节点的审批步骤信息,下一审批人根据生成的步骤信息筛选出轮到自己审批的信息,然后进行审批操作,然后又触发下一审批人的步骤信息。。。依次流程不断的在预设的审批步骤之间流转,直至审批结束。
2.界面设计 发起界面,见下
;
.
注:界面布局可右键设计
审批/查看界面,见下
3.后台表
【流程实例表】xGL_WorkMaster
注:用于记录每个实例流程发起后的流程主信息,和新发起的实例流程步骤表(xWF_InstancesStep),实例流程步骤流转条件(xWF_InstancesStepFactor)表关联,形成实例流程必要业务信息和后台流程信息存储(见下)。
;
.
【流程实例步骤审批状态表】xGL_WorkF_Status
注:用于记录每个审批责任人的审批处理意见和审批状态(数据来源于上一个发起人/审批人触发生成)
【流程实例业务表】XXX(表名来源于自定义xSYS_TableDefs,字段来源于xSYS_FieldDefs),以testlqj为例,见下
;
.
注:完全自定义的表单,记录每次流程发起后的业务数据,用于表单信息承载,便于审批人对审批主体信息的了解。
三、结语
简易工作流常常会应用到ERP系统中,ERP系统中,涉及到很多流程,尤其需要预先考虑几种情况:
➢ 某些流程经常因为业务的变化而需要动态改变。假如有个业务流程原来本身是普通员工
填表=>组长审核=>经理审核=>总经理审核,但是后面由于需要加快流程处理变成了普通员工填表=>经理审核,其他不必要的环节都去掉了,在这种情况下,如果系统在表达业务流程的代码中是暴力写死的,很明显,业务流程变了,你就需要修改你的代码才能适应这种改变。但是如果通过工作流来实现原来的业务流程,那么你只需要改变流程设置即可,减少了工作量,系统的应用面就更广了。
➢ 流程表单格式变化,原来请假单上不需要填写请假原因,现在公司因为制度变化,需要
请假人填写请假原因,此时就需要工作流支持表单字段的扩展/收缩,甚至表单布局的改变。
➢ 流程监控,系统管理员应对特殊流程进行流程流转查看,和特殊情况下的流程走向的改
变。
➢ 某些审批流程还需要上传附件,需要将设计的业务表和附件后台关联。
➢ 工作流和系统的组织架构有关联,建立工作流步骤设置就需要选用组织架构里的业务单
元(见上图中的指定对象),只有这样,流程实例发起后才会按照指定的条件不断的去找寻下一流程处理的对象。
;
因篇幅问题不能全部显示,请点此查看更多更全内容