# 流程自动化

## 1. 适用版本

此文档适用于「企业版/私有部署」的 ONES 系统 10 月底上线的版本。

❌  团队版/SaaS公有云

✅  企业版/私有部署

## 2. 功能入口

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

## 3. 流程自动化规则示例

新建自动化规则时，可以选择系统已预置的一些常用自动化规则模版，了解流程自动化如何工作：

* 根据所属项目，自动分配工单负责人
* 需求状态同步到来源工单的处理结果
* 任务都完成后，自动完成来源需求
* 子任务都完成后，自动完成父工作项

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

### 4.1 触发的判断

* 系统会先判断用户的操作是否满足自动化规则里的「触发事件」；
* 如有，系统会再判断用户操作的工作项是否满足自动化规则里的「触发条件」。

发生了指定的触发事件后，且工作项满足触发条件，系统才会执行自动化规则的流程。

### 4.2 流程的运行

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

### 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 在工作流中有配「后置动作」，这个「后置动作」不会执行；
* 「工作流」的后置动作如果是满足某条「流程自动化」规则的触发条件，自动化规则会正常触发并执行流程。

&#x20;

流程自动化具体的功能范围与解释，见以下详情页面：

* [配置自动化规则](/guides/usage-guide/liu-cheng-zi-dong-hua/pei-zhi-zi-dong-hua-gui-ze.md)
* [管理自动化规则](/guides/usage-guide/liu-cheng-zi-dong-hua/guan-li-zi-dong-hua-gui-ze.md)
* [查看运行历史](/guides/usage-guide/liu-cheng-zi-dong-hua/cha-kan-yun-xing-li-shi.md)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://guides-ones.gitbook.io/guides/usage-guide/liu-cheng-zi-dong-hua.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
