11 工作流—条件判断工作流节点处理人应用方案

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

条件判断工作流节点处理人应用方案
目录
业务场景
步骤一:将“组织单元全名称”变量引入条件判断中
步骤二:设置节点处理人条件判断公式
步骤三:根据请假天数设置流程流向
常见报错问题检查
业务场景
HR实施顾问小王,在使用K3HR给客户XXX公司实施工作流时,遇到了难题。

XXX 公司在全国有30余家分支机构,在上了K3HR之后,希望将全国各分支机构的人事工作流程纳入HR系统统一管理。

小王和客户沟通后,确定先从业务最频繁的请假工作流着手分步实施。

根据客户的请假制度,凡是三天以下的假期,由直接上级审批即可;超过三天的,需由间接上级审批。

审批后,所有请假申请均需传到对应的人力资源部审核备案。

比如,北京分公司的员工,请假审批后需要传到北京分公司人力资源部审核备案。

上海分公司的员工,请假审批后需要传到上海分公司审核备案。

经过仔细研究,小王发现系统不能自动判断出员工所属分公司,在同一流程中系统无法将员工的申请自动提交到对应的分公司人力资源部。

因此,只能对每个分公司对应设置一条请假流程才能解决客户的需求。

于是,小王与客户方的系统管理员一起,花了整整一周的时间,分别按照32家分公司建立了32条请假流程。

流程是建好了,可如果再上其他业务流程,又得每个业务再建32条,客户认为,这样做系统管理员的工作量太大,且流程维护相当的繁杂,且这32条流程的设置原理基本相同,最好是能归结到一条流程中实现。

根据客户需求,在K3HR10.3版本中,实现了自动判断流程节点处理人的功能来满足该客户的业务需要。

即在32家分公司中,员工的请假申请可以通过条件判断,自动流向对应分公司的人力资源部处理人。

条件判断的主要参照变量,就是员工的所属组织单元全名称。

新功能面世了,小王非常高兴,根据产品说明,结合XXX公司的业务场景,小王迫不及待的在测试账套中使用起来。

首先,小王根据XXX公司的请假审批权限划分,创建了一条由“本人、直接上级、间接上级和人力资源部”四节点组成的请假审批流程。

然后,就根据产品说明一步步开始进行条件判断设置。

步骤一:将“组织单元全名称”变量引入条件判断中
对不能通过职员上下级关系来进行判断,且有众多的分支条件的情况下,可以使用职员的所属组织单元全名称变量来设置判断条件,由系统自动判断下一节点的处理人。

比如非人力资源部的员工,和分公司人力资源部不存在直接上下级关系,就不能通过职
员上下级关系来进行流程判断。

且客户有32家分公司,就意味着有32个分支条件。

根据新功能,可以使用员工所在的组织单元全名称来作为条件的判断变量。

如何将“所属组织单元全名称”变量引入到条件判断中呢?
操作方法:
第一步:进入请假工作流流程图。

如下图:
第二步:在流程图中增加“自动应用”节点。

“所属组织单元全名称”变量必须通过“自动应用”节点来引入。

“自动应用”节点可增在“开始”和“直接上级”节点间。

如下图:
第三步:自定义“组织单元全名称”变量并更新至流程变量。

双击“自动应用”节点,弹出“活动属性对话框”,在“变量”页签,须自定义两个变量,例如:一个叫“职员ID”,类型为“职员”;一个就是“组织单元全称”,类型为“字符型”。

定义完成后,点击“更新至流程变量”。

系统会提示更新成功。

如图:
注意上图中的职员ID类型错了,应该是职员类型,不是整型。

这里为什么要定义“职员ID”变量呢?由于小王设置的流程是以请假职员本人,即流程对象作为参照对象的,因此必须要定义一个“职员ID”变量。

第四步:建立自定义变量的引出对应关系。

进入“自动应用”节点活动属性框中的“任务”页签,点击“任务列表”的选择按钮,进入“任务列表对话框”,双击选择“人事公用信息”下的“获取组织单元全名称”任务,点击“确定”按钮,返回“任务”页签界面。

在“入口参数”中,建立参数和变量的对应关系:职员(empid)参数对应职员ID变量,组织
单元全名称(orgFullname)参数对应组织单元全称变量。

如下图:
可能会问,“入口参数”中建立参数和变量对应关系的作用是什么?这里的作用是,将职员ID输入系统后,系统会根据职员ID,找到对应的组织单元全名称,并输出组织单元全名称的值。

那么自定义的职员ID是怎样才能和系统中的职员ID对应呢?马上就介绍。

第五步:建立职员ID变量对应关系。

进入“开始”节点的活动属性,在“任务”页签的“活动输出”中,将“职员ID”变量的对象属性设为“员工ID”,点击“确定”,这样就完成了第四步遗留的疑问了。

变量关系全部建立完成了,可别忘了添加连接弧。

第六步:组织单元全名称变量进入条件判断表达式编辑器。

经过前面的辛苦
劳动,组织单元全称变量已经被引入到公式编辑器中了。

在“人力资源部”节点,进行节点处理人的判断条件设置时,就可以在公式编辑器中使用到“组织单元全名称”变量了。

具体的使用方法,请接步骤二。

到这里,小王小结了一下,步骤一形成了两个成果:一是将职员所属组织单元全名称变量引入到公式编辑器中,可以随时被引用。

另一个嘛,就是初步形成了下面的流程图。

步骤二:设置节点处理人条件判断公式
“直接上级”和“间接上级”节点处理人按照职员关系进行设置就可以了,这里就不赘述。

现在要解决的是“人力资源部”节点的处理人怎么设置的问题。

操作方法:
第一步:进入条件表达式编辑器。

双击“人力资源部”节点,弹出活动属性框,进入“参与者”页签,勾选“条件判断处理人”,点击右边的“增加”按钮,会增加一空白行。

双击“条件表达式”列对应的空白格,弹出“条件表达式编辑器”。

在编辑器右边的流程变量目录下,可以看到“组织单元全称”和“职员ID”变量已经引入。

如下图:
第二步:使用Contain函数。

Contain函数的作用是,按特定符号分割字符串,并返回某个位置的值。

太深奥了,还是举个例子吧。

小王希望设置一个条件:职员所属组织单元全名称中,如包含了“绿色原野集团/绿色原野电子有限公司”字符串,则节点处理人为绿色原野电子有限公司人力资源部总监。

则在公式编辑器中,可编辑公式,如下图:
点击“保存”后,返回“参与者”页签,可定义节点处理人的类型和节点处理人。

例如,选择“职位”型,节点处理人选择“绿色原野电子有限公司人力资源部总监”后,则条件判断处理人行显示内容如下图:
说明:设置处理人时,也是双击“处理人”列对应的单元格,就会弹出处理人选择F7。

根据以上条件,如果请假职员属于绿色原野电子有限公司,则其请假申请经过直接上级或间接上级审批后,就会流到绿色原野电子有限公司人力资源部总监处。

第三步:使用Member函数。

按特定符号分割字符串并返回指定字符串开始位置、结束位置。

还是再举个例子吧。

小王希望设置一个条件:如果职员所属组织单元全称的第二级到第四级间的名称为“绿色原野电子有限公司/行政中心/财务部”,则请假申请流向行政中心财务总监处。

判断条件公式为:
函数|||Member ( 流程变量|||组织单元全称,”/”,2,4)=“绿色原野电子有限公司/行政中心/财务部”。

如下图:
该条件表示的意思为:用“/”将组织单元全称字符串分割,判断“组织单元全称”变量的第二级到第四级之间的名称是否为“绿色原野电子有限公司/行政中心/财务部”。

设置好条件后,可设置对应要流向的节点处理人,如下图:
根据以上条件,如果请假职员所属组织单元全称的第二级到第四级间的名称为“绿色原野电子有限公司/行政中心/财务部”,则请假申请流向行政中心财务总监处。

小结:
1、简单来说,Contain函数提供“包含”判断功能;Member函数提供“精确包含”判断功能。

2、当设置的“包含”条件为“真”时,工作流会自动流向对应设置的节点处理人。

“包含”条件不为“真”时,工作流不会流向对应设置的节点处理人。

步骤三:根据请假天数设置流程流向
根据客户的请假规定,三天(含)以下的申请由直接上级审批即可,三天以上的申请需要间接上级审批。

这需要设置一个“请假长度”的变量,系统通过请假长度来判断流向节点。

请假长度<=3天时,直接上级审批后,流程直接流向人力资源部节点;请假长度>3天时,直接上级审批后,还需要流向间接上级审批。

操作方法:
第一步:定义“请假长度”变量。

点击“开始”节点,弹出节点属性对话框,在“变量”页签新增变量“请假长度”,并“更新至流程变量”。

如图:
第二步:建立“请假长度”变量对应关系。

切换到节点活动属性框的“任务”页签,在“活动输出”中,新增行,在“名称”列下拉框中选择“请假长度”,再用鼠标双击“输出对象”对应的新增行单元格,弹出“业务对象”对话框,选中“请假时间长度”,点击“确定”。

如下图:
在业务对象框中选择了“请假时间长度”后,在“任务”页签中就建立了“请假长度”变量的对应关系了。

如下图:
第三步:设置小于等于三天的连接弧判断条件。

双击“直接上级”节点和“人力资源部”节点之间的连接弧,弹出“连接弧属性对话框”,新增行,再双击“变量”列对应的单元格,弹出“条件变量对话框”,选中“请假长度”变量,点击“确定”,则该变量引入到连接弧变量定义表中。

如下图:
在连接弧变量定义表中,定义“假期长度”小于等于“24”。

(说明:系统中的假期长度是以小时为单位的,三天等同于24工作小时)
第四步:设置大于三天的连接弧判断条件。

双击“直接上级”节点和“间接上级”节点之间的连接弧,其余就按照第三步的方法设置大于三天的连接弧判断条件。

至此,小王完成了条件判断节点处理人工作流的流程设置。

设置成功后的流程如下图:
接下来,小王完成了引入表单、设置流程拥有者、工作流发布等操作后,终于如愿用上新功能了。

在设置条件判断中,小王还发现,可以获取节点审批人的所属组织单元全名称来作为条件判断变量。

常见报错问题检查
问题一:在自助服务中,点击“提交申请”后,弹出如下图报错提示。

检查点:流程设置中参照变量的输出对应关系是否正确。

解决办法:在流程设置中,在“开始”节点的活动属性的“任务”页签中,设置正确的参照变量输出关系。

例如,以流程对象的职员ID作为流程参照变量时,在活动属性的“任务”页签的“活动输出”中,将自定义的“职员ID”变量与业务对象输出中的“员工ID”相对应。

如下图:
问题二:以前面小王定义的流程为例,当流程在“直接上级”节点审批后,点击“提交”,弹出报错提示如下图:
检查点:条件判断中的流程输出变量是否正常输出。

解决办法:在流程设置中,在“自动应用”节点的活动属性框的“任务”页签,检查“入口参数”的输出变量对应关系是否正确。

例如,以职员“组织单元全名称”作为条件判断变量时,需要保证系统输出的“组织单元全名称”值与自定义的“组织单元全称”变量相对应。

如下图:
问题三:在流程提交后,发现流程并没有提交到指定节点处理人,在“我的申请”中查看时,发现该流程状态标志为“已挂起”。

如下图:
检查点:节点处理人是否存在。

可能原因:1、该节点没有符合条件定义的节点处理人。

2、在公式编辑器中设置条件时,组织单元字符串描述不准确。

例如,将“绿色原野销售有限总公司”误输入为“绿色原野销售有限公司”,中间少一个“总”字,此时也可能产生该节点找不到符合条件的节点处理人的情况。

相关文档
最新文档