流程自动化

1. 适用版本

此文档适用于「企业版/私有部署」的 ONES 系统 10 月底上线的版本。
❌ 团队版/SaaS公有云
✅ 企业版/私有部署

2. 功能入口

「团队管理员」可以在「配置中心」的「自动化规则」页面管理团队使用的流程自动化规则。

3. 流程自动化规则示例

新建自动化规则时,可以选择系统已预置的一些常用自动化规则模版,了解流程自动化如何工作:
  • 根据所属项目,自动分配工单负责人
  • 需求状态同步到来源工单的处理结果
  • 任务都完成后,自动完成来源需求
  • 子任务都完成后,自动完成父工作项

4. 流程自动化的工作方式

4.1 触发的判断

  • 系统会先判断用户的操作是否满足自动化规则里的「触发事件」;
  • 如有,系统会再判断用户操作的工作项是否满足自动化规则里的「触发条件」。
发生了指定的触发事件后,且工作项满足触发条件,系统才会执行自动化规则的流程。

4.2 流程的运行

  • 执行自动化规则的流程时,系统按照用户的配置,从上到下线性的执行每一个流程。如果出现了流程分支(条件分支、联动数据对象),则会执行完当前分支后,继续回到主流程,直到执行完所有流程。
  • 如果出现了联动数据对象分支,则此分支的动作都是针对联动的数据对象执行的,而不是触发配置的工作项对象。

4.3 预防流程出现无限循环

自动化规则的动作触发另一个自动化规则的情况

比如,规则 A 的动作是更新某一需求的优先级,而规则 B 的触发事件是需求的优先级发生变更,则规则 B 会被规则 A 的执行结果触发。
此时,如果规则 B 的动作又是更改需求的负责人,则 B 的动作执行完后,系统会判断到 B 刚刚执行的动作会再次满足 A 的触发配置,系统监测到循环,自动化规则运行终止。
综上,当两个规则会互相触发执行,系统会检测到循环,两个规则只会各自执行一次。

自动化规则的动作再次触发自己的情况

当规则自身会执行后再次满足自身触发,系统会检测到循环,规则只会执行一次。

4.4 条件分支与联动数据对象的约束

用户可以添加联动数据对象流程或条件分支流程,来配置成多个流程分支。
但是为了保证自动化规则的可读与可执行:
  • 最外层的流程节点,可以添加动作、条件分支、条件校验、联动数据对象;
  • 条件分支流程里,只能添加联动数据对象、动作和条件校验;
  • 联动数据对象流程里,只能添加动作和条件校验,不能添加条件分支。

5. 流程自动化对工作流的影响

  • 流程自动化的「动作」,可以将状态流转到「任意」该工作项类型下原本工作流配置的各个状态,不需要根据工作流的配置一步步流转,流程自动化的动作执行可以直接流转到指定状态。比如,需求类型下工作流 配置的状态是必须 A到B再到C,流程自动化的动作可以执行成功 A直接流转到C,不会因为有必走的中间态而执行失败;
  • 「工作流」对应的状态流转「A 到 B」的某条「步骤」如果设置了相关「后置动作」,此时自动化规则的「动作」是执行更新状态到「B」,那么用户触发这条自动化规则并执行的「动作」不会并发原本工作流中的「步骤」中的「后置动作」;
  • 自动化规则 1 的动作执行是让工作项状态 A 流转到 B,自动化规则 2 的触发是同样的工作项状态 A 流转到 B。那么自动化规则 1 和 2 连着执行。如果本身该工作项的状态流转 A 到 B 在工作流中有配「后置动作」,这个「后置动作」不会执行;
  • 「工作流」的后置动作如果是满足某条「流程自动化」规则的触发条件,自动化规则会正常触发并执行流程。
流程自动化具体的功能范围与解释,见以下详情页面: