审批流程设计方案

在16年接触过OA系统,里面有一套关于工作流、审批流的设置模块。公司现在做的这个项目也有用到审批流。这中间磕磕碰碰的遇到不少问题,但最后也小有收获,趁着周末闲暇时间,把一些细节方面上的事分享出来,一来是对前期的工作有个总结;二来抛砖引玉想多听听大家的意见,开拓开拓思路,和大家共同成长进步。
先来看看关于工作流、审批流的定义:
1 ,OA系统工作流&审批流的定义:
工作流:可自定义的一种自动执行的工作流程,由表单数据发生改变时触发,同时触发关联多种不同的事物。
审批流:可自定义的一种审批流程,需要用户手动批示是否允许进入下一步,触发审批流程规则需要满足审批申请人和数据筛选条件。
2 ,百度百科工作流&审批流的定义:
工作流:在多个参与人员之间按照事先定义好的规则传递信息、文档或任务的过程自动执行,从而实现某个预期的业务目标,或者促使该目标的实现。
工作流的好处:
(1)减少了记录分配,任务指派过程中许多不必要的操作;
(2)通过标准化流程提高工作效率;
工作流应用场景:当新增客户信息时,区域A的客户自动分配给业务员A,区域B的客户自动分配给业务员B,并发送邮件或者短息通知相关业务员。
审批流:审批流定义节点用来为某个具体的业务单据或某个具体单据的一个业务类型进行审批流程的定义。被定义了审批流程的单据将按照定义的审批流程被传递和审批。这一完整的过程就称为审批流。
概述:通常的流程一般分为2个层次来讲:流程、步骤(活动或者节点):
(1)流程就是某一具体的业务流程(请假审批流程,财务报销审批流程);
(2)步骤(活动或者节点)就是一种特定业务类型的封装;

一套完整的审批流程、工作流程大体上包括:
(1)流程定义;
(2)步骤定义:触发规则;操作人;执行动作(发起申请、撤回);执行操作(任务通知、邮件提醒、字段更新、转移数据、转换表单、传送接口);
(3)步骤重复:触发规则;操作人(串行/并行);执行动作:(审批处理:通过、拒绝(退回、否决)、撤回);执行操作:同意、拒绝同时包括(任务通知、邮件提醒、字段更新、转移数据、转换表单、传送接口);
(4)流程结束;
名词解释:
第一:操作人处理
(1)串行:上一处理人指定某一处理人时,其他拥有此步骤权限的操作员不可进行查看和操作,必须当前处理人处理完毕后,流程才能继续;
(2)并行:由上一处理人指定固定多个处理人时,由任一员工处理即可,不分前后顺序,全部处理完成,进入下一步骤;
这里有2点需要说清楚:
(a)多人处理分为:一人通过(其中一人进程审批处理即可)、多人通过(所有审批人都需要进行审批处理)2种情况,请根据自己的业务具体选择;
(b)设定审批人分为:由提交人指定、自动按照角色层级关系分配、选择审批人3种情况,请根据自己的业务具体选择;
两者的对应图如下:

第二:执行动作
(1)申请:针对当前业务表单信息发起申请,开始审批流程的传递。分为2部分:由申请提交人手动发起申请、由程序自动判断满足触发规则的数据自动发起申请;另外还要注意的2点:是否允许提交人撤消(是、否)、记录编辑(不可编辑、管理员可编辑、管理员和审批人都可编辑 );
(2)通过:当前步骤处理通过,进入下一步骤,若为末步骤,则流程处理完成;
(3)退回:将步骤退回至上一步骤,即返回至上一处理人处,若为首步骤,则不进行退回;
(4)否决:将步骤直接结束,执行结束动作拒绝活动,不再进行操作,或者回退至第一步骤;
(5)撤回:若当前步骤已处理,下一处理人未处理的情况下可进行撤回操作。
上面需要注意的是:拒绝的时候是采用“退回”还是“否决”动作。下面几种情况的对应图:

第三:执行操作
(1)任务通知:定义的系统内任务自动生成,可以由定义好的流程调用,在流程执行到适当时机发送系统内任务通知相关人员;
(2)邮件提醒:定义给系统内部和外部人员发送邮件提醒的事务。可以在工作流和审批流中调用,在流程执行到适当时机发送邮件通知流程相关人员;
(3)数据更新:用于流程执行的事务,可以在流程执行到指定位置,按照设置好的数据更新规则,指定更新本表单或关联表单的数据;
(4)表单转换:设置一个表单的数据,按转换模板映射生成另一个或几个表单数据。如果表单带有子表单数据,也可以设置子表映射转换到对应表单的子表单;
(5)数据转移:可以将表单数据转移给设置好的目标用户。可以在工作流和审批流中,需要转移数据的环节调用此数据转移;
(6)传输接口:工作流和审批流如果需要将流程结果触发到第三方系统。

上述的描述是结合自己的情况和网上一些人员的总结综合到一起的解决方案,在此谢谢那些共享的自由者们。

原文地址:https://www.cnblogs.com/daofaziran/p/11654527.html