18.2 工作流的分支与合并
18.2.1 并列式任务
工作流中的某个任务可能指定了多个执行人,也就是说,上一个步骤把同一张表单提交给了多个人,如果他们每个人都需要根据上一步提交的内容完成本步骤的工作,而且互相之间没有关系,这种情形称为“并列式”。
举这样一个例子。人力资源部经理下发一份员工调查表,发给所有的销售员,每人一份。各销售员填好调查表,提交到人力资源经理处,人力资源经理检查每份调查表,区分有效问卷和无效问卷。为统计员工满意度准备好条件。
在上述例子中,第二步(填表)就是一个“并列式”的任务。因为接到填表任务的每个人都需要填写自己的那份表格。假如有50名销售员,相当于把一份空表下发了50个拷贝,最后回收的是50份表格。
下面来实现上述员工满意度调查流程。
《员工调查表》模版
新建模版《员工调查表》,信息如下:
项目 |
内容 |
报表编号 |
FLOW-002 |
报表名称 |
员工调查表 |
初始填报权限 |
部门: A 公司、人力资源部 角色: Administrators 、 HR 经理 |
最终查阅权限 |
部门: A 公司、人力资源部 角色: Administrators 、 HR 经理 |
其它 |
接受默认值 |
表样: | |
![]()
注:切图为表样的一部分,完整的表样可参见示例数据库。 | |
Excel 公式: | |
单元地址 |
公式 |
|
|
定义四个数据规范:
规范名称 |
规范方式 |
取值 |
GG_ 是否 |
下拉列表 |
是,否 |
HR_ 性别 |
下拉列表 |
男,女 |
HR_ 选择 |
下拉列表 |
A , B , C , D , E |
HR_ 学历 |
下拉列表 |
博士后,博士,硕士,本科,大专,中专,职高,高中,初中,小学 |
定义数据表:
表名 |
员工调查表 |
所在工作表 |
Sheet1 | |||
样式 |
单一数据项 |
是否创建 |
是 | |||
主键 |
区域 |
字段名 |
数据类型 |
必填 |
填写规范 |
其它 |
|
C2 |
编号 |
文字 (20 字以内 ) |
√ |
调查表号 |
|
|
C3 |
性别 |
文字 (20 字以内 ) |
√ |
HR_ 性别 |
|
|
C4 |
工作年限 |
整数 |
√ |
|
|
|
C5 |
学历 |
文字 (20 字以内 ) |
√ |
HR_ 学历 |
|
|
C6 |
是否有效 |
文字 (20 字以内 ) |
√ |
GG_ 是否 |
|
|
C7 |
选择 1 |
文字 (20 字以内 ) |
|
HR_ 选择 |
|
|
C9 |
选择 2 |
文字 (20 字以内 ) |
|
HR_ 选择 |
|
|
C12 |
选择 3 |
文字 (20 字以内 ) |
|
HR_ 选择 |
|
|
C15 |
选择 4 |
文字 (20 字以内 ) |
|
HR_ 选择 |
|
|
C20 |
选择 6 |
文字 (20 字以内 ) |
|
HR_ 选择 |
|
|
C22 |
选择 7 |
文字 (20 字以内 ) |
|
HR_ 选择 |
|
|
C24 |
选择 8 |
文字 (20 字以内 ) |
|
HR_ 选择 |
|
|
C26 |
选择 9 |
文字 (20 字以内 ) |
|
HR_ 选择 |
|
|
C29 |
选择 10 |
文字 (20 字以内 ) |
|
HR_ 选择 |
|
|
C31 |
选择 11 |
文字 (20 字以内 ) |
|
HR_ 选择 |
|
|
C33 |
选择 12 |
文字 (20 字以内 ) |
|
HR_ 选择 |
|
|
C35 |
选择 13 |
文字 (20 字以内 ) |
|
HR_ 选择 |
|
|
C37 |
选择 14 |
文字 (20 字以内 ) |
|
HR_ 选择 |
|
|
C39 |
选择 15 |
文字 (20 字以内 ) |
|
HR_ 选择 |
|
|
C18 |
选择 5 |
文字 (20 字以内 ) |
|
HR_ 选择 |
|
|
C41 |
选择 16 |
文字 (20 字以内 ) |
|
HR_ 选择 |
|
|
C43 |
选择 17 |
文字 (20 字以内 ) |
|
HR_ 选择 |
|
|
C47 |
选择 18 |
文字 (20 字以内 ) |
|
HR_ 选择 |
|
|
B46:C46 |
回答 18 |
文字 (100 字以内 ) |
|
|
|
|
B50:C50 |
回答 19 |
文字 (100 字以内 ) |
|
|
|
|
B52:C52 |
回答 20 |
文字 (100 字以内 ) |
|
|
|
|
B54:C54 |
回答 21 |
文字 (100 字以内 ) |
|
|
|
员工调查流程
在《员工调查表》模版上定义工作流,如下图:

图 18‑7员工调查表流程
任务“下发”:
有效区域:无
任务“填表”:
有效区域:员工调查表中除“是否有效”外的全部字段
执行权限:“交办人指定”、“并列式”
任务“回收”:
有效区域:员工调查表.是否有效
执行权限:“流程参与者:发起人-本人”、“抢先式”
流程的运行
-
用
admin
的帐户登录,
-
填报《员工调查表》,在空表格上什么也不用填,直接保存,弹出“保存报表对话框”,切换到“工作流”选项卡,如图,点击“填表”右侧的【
…
】按钮。

图 18‑8
- 弹出“选择用户”对话框,选中销售部张三和李四,如下图所示,按【确定】。

图 18‑9
- 回到“保存报表”对话框,按【确定】。
- 以张三的帐户登录,在待办事宜中能看到“填表”任务,办理。
- 以李四的帐户登录,在待办事宜中也能看到“填表”任务,先不办理。
- 重新以 admin 的帐户登录,在其待办事宜中能看到一条“回收”任务。
- 进而,在我的工作台中选中“员工调查表”,能看到有 1 条记录,同时可看到各人的填表进度。

图 18‑10
18.2.2 汇合点
在某些流程中,要求几个任务需要全部(或部分)完成,然后才可以一起向下流转。这种情况下,我们需要在工作流中增设一个“汇合点”。
看下面这个例子。我们新建如下模板《员工离职手续流转单》。实际需要的流程是这样的:员工填写转正申请单,部门经理和人事经理审批,部门经理和人事经理都审批同意时,最后再由总经理来审批。

图 18‑11
在《员工转正申请单》上定义工作流,如下图:



图 18‑12
与之前接触过的工作流不同之处在于,该工作流程里多了一个“汇合点”(即流程图中的圆圈),汇合点的画法与“普通任务”一样,点击工作流窗口工具栏里的“汇合点”按钮,在画图区域单击,弹出“流程汇合点”对话框,输入任务名称并设置汇合条件,这里我们设置的汇合条件是:全部完成。

图 18‑13
任务名称 |
有效区域 |
执行权限 |
填表 |
19 行以上的字段 |
|
部门经理审批 |
审批人 1 ,审批意见 1 ,审批时间 1 |
流程参与者:交办人 - 的上级 |
人事部经理审批 |
审批人 2 ,审批意见 2 ,审批时间 2 |
属于以下角色 - 人事部经理 |
总经理审批 |
审批人 3 ,审批意见 3 ,审批时间 3 |
属于以下角色 - 总经理 |
流向条件:部门经理和人事部经理的审批意见必须全部是“同意”,流程才接着向下走。
流程的运行
-
用张三的账户登录,填写一张《员工转正申请表》,保存
-
用肖亮的账户登录,审批张三填写的《员工转正申请表》,审批意见
=
同意,保存。
-
用总经理的账户登录,看一下能否接到待办事宜。我们发现此时没有接到待办事宜。
-
用张三的账户登录,在“已处理工作”中找到刚才填写的那张申请表,右键
-
进度。

图 18‑14
图18- 14
- 用任经理的账户登录,办理张三提交过来的“员工转正申请表”,审批意见 = 同意,保存。
- 用王总的账户登录,此时就可以看到待办事宜了。
汇合点有大于一个的流入连线,只有一条流出连线。汇合点不需要和用户交互,是否、何时通过,由系统根据汇合点的属性设置自动管理。 ![]() |
18.2.3 会签式任务
如果一个工作流任务有多个待办人,这些待办人各自办理各自的,但是他们各自办理的结果都将体现在同一张表单上,这种情况称为“会签”。
会签的典型例子是下面的这张通知单。

图 18‑15
此通知单模板的工作流有三步,第一步是下发,下发人填通知的,并且选择抄送人(下面的抄送清单表格中的部门和姓名两列);下发保存后,对抄送清单中列出姓名的每个人发送待办事宜,每个人在写着自己姓名的那一行中签收。当所有该签收的人都签收了之后,最初下发的人会接到一个待办事宜,通知她(她)所有人都已经签收了。

图 18‑16
定义会签式任务
上述流程中的第二步,需要定义成“会签式”任务
- 在任务的“执行权限”标签上,设置执行权限为“根据表单内容决定”,右侧的“多人协调方式”选择“会签式”。



图 18‑17设置任务为会签式
- 切换到“有效区域”标签上,勾选本步的可操作字段。

图 18‑18设置会签式任务的有效区域
- 连续点击【确定】,完成会签式任务属性的设置。
定义会签式任务的后续流向
在会签式任务及其后续任务之间的流向定义窗口上,会多出来一个“会签完成”选项卡,用于设置会签完成向下流转的条件。如图,我们可以根据实际情况,规定只有所有会签的待办人都办理完成,此步才算完成,还是超过规定人数办理完成就可视同会签完成。

图 18‑19设置会签式任务向下流转的条件