> For the complete documentation index, see [llms.txt](https://doc.duaer.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://doc.duaer.com/zh/Duaer-Organizations/sub-Duaer-Organization-conversion.md).

# 在 Duaer 里转成子数字组织

在 Duaer 里，在数字组织里选中一段节点，把它们收成可复用的子数字组织。
用转换把数字组织拆成可复用的一段。引用其他节点的表达式会自动改写，并作为参数加到 Execute Workflow Trigger 上。

## 什么样的选区可以转换 <a href="#selecting-nodes-for-a-sub-organization" id="selecting-nodes-for-a-sub-organization"></a>

选区必须连续，并且最多从一个入口节点、一个出口节点接到其余数字组织。还须满足：

- 不能包含触发节点。
- 选区外连进来的节点最多一个；该节点可以有多条入边，但只能是单路输入（不能是 Merge 这类多路入口），且不能再从选区内节点接入。
- 选区连出去的节点最多一个；该节点可以有多条出边，但只能是单路输出（不能是 If 这类多路出口），且不能再连回选区内。
- 入口到出口之间路径上的节点都必须在选区里。

## 怎么转换 <a href="#how-to-convert-part-of-a-digital-organization" id="how-to-convert-part-of-a-digital-organization"></a>

1. 在画布上选中要收进去的节点。
2. 在画布空白处右键，选择 Convert to sub-workflow。

Duaer 会新建一条数字组织，把选中节点放进去，并在入口放上 Execute Workflow Trigger。原来位置换成调用该子数字组织的节点。

## 转换时要注意 <a href="#things-to-keep-in-mind" id="things-to-keep-in-mind"></a>

- 输入和输出的类型约束要自己设。默认允许全部类型；在子数字组织的 Execute Workflow Trigger 和（如有）标成 Return 的 Edit Fields 里设置期望类型。
- AI 子节点支持有限：相关子节点要一起选上；与其他 Agent 共用的模型子节点，可能需要先复制再选。
- 新建的子数字组织使用 v1 执行顺序，与父级设置无关；可在设置里改回。
- first()、last()、all() 一类访问在转换后可能带上 _firstItem、_lastItem、_allItems 后缀，请打开节点核对。
- itemMatching 的下标必须是写死的数字，不能用表达式计算。
## Questions

### 转成子数字组织要满足什么？

在 Duaer 里，选区必须连续，不能含触发节点，且最多一个单路入口、一个单路出口接到选区外。Merge 不能当入口，If 不能当出口。入口到出口路径上的节点都要选中。

### 转换之后表达式会怎样？

在 Duaer 里，引用选区外数据的表达式会改写到 Execute Workflow Trigger 的输入。输入输出类型要自己设。first/last/all 可能带上 _firstItem 一类后缀，请核对。

