> For the complete documentation index, see [llms.txt](https://guides-ones.gitbook.io/guides/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://guides-ones.gitbook.io/guides/usage-guide/ones-project/guan-li-gong-zuo-xiang/guan-lian-guan-xi-lei-xing.md).

# 关联关系类型

## 1. 什么是关联关系类型？

关联关系类型主要用于配置工作项之间的关联关系，在关联工作项时使用，帮助清晰表达工作项之间的关系。例如，工作项 A 由工作项 B 复制而来时，为清晰说明两者复制与被复制的关系，可以通过自定义关联关系实现。目前：

* 支持限制关联关系某一端可以选择哪些工作项类型
* 支持三种关联关系：单向关联（一对多）、单向关联（多对多）、相互关联

## 2. 功能特性

### 2.1 新建关联关系

在 `配置中心` > `关联关系类型` 中，界面会列出系统里的全部关联关系，按照自定义和系统默认分类展示。点击`新建关联关系`的按钮，在弹窗内选择关联关系类型，并点击`确定`，进入关联关系配置页面。具体配置参考下方配置案例。

![](/files/-MdBGYOX7m0FSygY5FJ_)

### 2.2 编辑关联关系

点击右侧编辑图标，可修改关联关系的名称、描述和可选的数据范围。

### 2. 3 删除关联关系

点击右侧`x`，可删除该关联关系类型。如某个关联关系正在被任一工作项使用，则不可删除。

## 3. 配置案例

### 3.1 单向关联（一对多）&#x20;

在单向关联（一对多）的关联关系里，发起关联方可以选择多条被关联方的数据，但是被关联方选择发起关联方时，只能选择一条数据。

以“史诗拆解需求”为例，我们希望史诗能拆解出多条需求，但是需求只能有一条来源史诗。于是我们进行以下配置：

* 关联关系名称：史诗拆解需求
* 发起关联方的描述：来源史诗
* 发起关联方的工作项类型：史诗
* 被关联方的描述：拆解得到的需求
* 被关联方的工作项类型：需求

我们能直接在右侧预览配置的效果，如图所示：

![](/files/-MdGmqWRpbNlaY4xfs_M)

提交配置后，即可在全局使用“史诗拆解需求”这个关联关系：

* 在史诗里关联工作项时，可以选择“拆解得到的需求”这一关联描述。“拆解得到的需求”只能选择工作项类型为“需求”的工作项，支持选择多条需求；
* 在需求里关联工作项时，可以选择“来源史诗”这一关联描述。“来源史诗”只能选择工作项类型为“史诗”的工作项，且只能选择一条史诗。

### 3.2 单向关联（多对多）&#x20;

在单向关联（多对多）的关联关系里，发起关联方可以选择多条被关联方的数据，被关联方也可以选择多条发起关联方的数据。

以“工单转需求”为例，一条工单可能转为多条需求，同时一条需求可能有多条来源工单。于是我们进行以下配置：

* 关联关系名称：工单转需求
* 发起关联方的描述：来源工单
* 发起关联方的工作项类型：工单
* 被关联方的描述：工单转需求
* 被关联方的工作项类型：需求

我们能直接在右侧预览配置的效果，如图所示：

![](/files/-MdGmyg-SWUI0vM-IA9a)

提交配置后，即可在全局使用“工单转需求”这个关联关系：

* 在工单里关联工作项时，可以选择“工单转需求”这一关联描述。“工单转需求”只能选择工作项类型为“需求”的工作项，支持选择多条需求；
* 在需求里关联工作项时，可以选择“来源工单”这一关联描述。“来源工单”只能选择工作项类型为“工单”的工作项，支持选择多条工单。

### 3.3 相互关联&#x20;

在互相关联的关联关系里，不区分关联关系的发起关联方和被关联方。关联时可以选择多条数据。

以“相似需求”为例，整理需求池时，可以把相似的需求关联在一起，关闭重复的、只留下一条待执行的。于是我们进行以下配置：

* 关联关系名称：相似需求
* 描述：相似需求
* 被关联方的工作项类型：需求

我们能直接在右侧预览配置的效果，如图所示：

![](/files/-MdGn2jS5YAs9PvYmt1Q)

提交配置后，即可在全局使用“相似需求”这个关联关系：

* 在需求里关联工作项时，可以选择“相似需求”这一关联描述。“相似需求”只能选择工作项类型为“需求”的工作项，支持选择多条需求。
