异步子流程变动导致的智能助手触发问题排查
1. 概述
1.1 功能简介
简道云在 2023-08-18 的更新中,对异步子流程的规则进行了调整。调整后,您可能会遇到智能助手触发问题,如未触发、重复触发或执行人为空。本文总结了常见场景的解决方案,便于管理员快速定位并解决问题。
注:若子流程的流转规则为「子流程发起后进入下一节点」,则子流程的类型为 异步子流程 ,即流程流转到子流程后,父流程继续向下流转。
1.2 调整说明
- 调整前:异步子流程节点流转时不会触发智能助手;
- 调整后:异步子流程节点流转时会单独触发一次智能助手,触发动作为修改数据,且执行人为空。
2. 仅有异步子流程节点的流程
2.1 原因分析
当触发表单为「发起节点 >> 一或多个异步子流程节点 >> 结束节点」的流程表单时,流程发起后会直接流转到结束节点。但设置触发条件为「流程状态等于流转完成」,触发动作为「新增数据」时,不会触发智能助手。
因为调整后,此类流程在流转时的触发节点、触发动作发生变更,需根据调整后的触发动作修改智能助手配置。
示例流程的具体变更如下:
智能助手 | 调整前 | 调整后 |
触发节点 | 流程发起节点 | 流程发起节点、异步子流程节点 |
触发次数 | 1次 | 2次 |
触发动作 |
| 1)流程发起节点
2)异步子流程节点:
|
2.2 解决方案
根据调整后流程流转时的触发动作,修改智能助手配置即可。
如示例流程中,根据「流程发起节点」、「异步子流程节点」的任一触发动作修改智能助手配置,均可正常触发智能助手。但「异步子流程节点」触发的智能助手 执行人 为空。
本节根据执行人是否为空,提供以下两种方案:
2.2.1 方案一:执行人为空
根据「异步子流程节点」的触发动作修改智能助手配置,则异步子流程节点流转时即可正常触发智能助手。
修改智能助手的触发动作为「修改数据」,触发条件为「流程状态等于流转完成」即可。如下图所示:
此时,智能助手执行日志中的 执行人 为空。如下图所示:
且目标表单中,数据的提交人为空,如下图所示:
2.2.2 方案二:执行人不为空
根据「流程发起节点」的触发动作修改智能助手配置,则流程发起节点流转时即可正常触发智能助手,且智能助手执行日志中的 执行人 不为空。
修改智能助手的触发条件为「流程状态等于进行中」即可,如下图所示:
3. 异步子流程节点直连结束节点的流程
3.1 原因分析
当触发表单为异步子流程节点直连结束节点的流程表单,触发动作为「修改数据」,触发条件为「流程状态等于流转完成」时,智能助手可以正常触发。
但智能助手的执行日志中,执行人为空,如下图所示:
且目标表单中,数据的提交人为空,如下图所示:
因为调整后,此类流程在流转时的触发节点发生变更,如示例流程中,触发节点由「主管审批」节点变更为「转正办理」节点,而「转正办理」为异步子流程节点,触发的智能助手 执行人 为空。
3.2 解决方案
修改智能助手配置使触发节点为非异步子流程节点,即可在智能助手正常触发的同时记录其执行人。
本节提供以下两种解决方案:
3.2.1 方案一
该方案适用于触发表单中仅有一个异步子流程节点直连结束节点的情况,如「流程开始节点>> 一或多个流程节点 >> 异步子流程节点 >> 结束节点」。
修改智能助手配置,使触发节点为异步子流程节点前的流程节点,如「主管审批」节点,此时执行人为该流程节点的提交人。
1)修改触发条件为「流程状态等于进行中」,触发动作为「修改数据」即可。此时,「人事审批」、「主管审批」节点均会触发智能助手。
2)添加触发条件,选择在某个流程节点时才会填写的字段,如「主管审批」节点的「主管审批意见」字段,并按需设置触发关系,保证流程节点不会重复触发智能助手。
3.2.2 方案二
该方案适用于触发表单中多个异步子流程节点直连结束节点的情况,如「流程开始节点>> 流程节点 >> 多个异步子流程节点 >> 结束节点」。
由于异步子流程节点在流出时不会改变数据,因此多个异步子流程节点的数据完全一致,无法通过触发条件进行区分,导致重复触发智能助手。
因此为保证智能助手的正常触发,可以删除流程中的异步子流程节点,并新增 智能助手 实现异步子流程节点的作用。