Skip to content

执行子工作流

使用执行子工作流节点在运行 n8n 的主机上运行不同的工作流。

节点参数

来源

选择节点应从哪里获取子工作流的信息:

  • 数据库:选择此选项可通过 ID 从数据库加载工作流。您还必须输入以下任一信息:
    • 从列表
    • :从您帐户可用的工作流列表中选择工作流。
    • 工作流 ID
    • :输入工作流的 ID。工作流的 URL 包含 后的 ID
    • 。例如,如果工作流的 URL 为
    • 工作流 ID
  • 本地文件:选择此选项可从本地保存的 JSON 文件加载工作流。您还必须输入:
    • 工作流路径
    • :输入您希望节点执行的本地 JSON 工作流文件的路径。
  • 参数:选择此选项可从参数加载工作流。您还必须输入:
    • 工作流 JSON
    • :输入您希望节点执行的 JSON 代码。
  • URL :选择此选项可从 URL 加载工作流。您还必须输入:
    • 工作流 URL
    • :输入要从中加载工作流的 URL。

工作流输入

如果您使用数据库列表选项选择子工作流,则子工作流的输入项将自动显示,供您填写或映射值。

您可以选择移除请求的输入项,在这种情况下,子工作流会接收该项的值。您还可以启用“尝试转换类型” ,以尝试将数据自动转换为子工作流项请求的类型。

如果子工作流的工作流输入触发节点使用“接受所有数据”输入数据模式,则不会出现输入项。

模式

使用此参数控制节点的执行模式。请从以下选项中选择:

  • 使用所有项目运行一次:将所有输入项目传递到节点的单次执行中。
  • 为每个项目运行一次:依次为每个输入项目执行一次节点。

节点选项

此节点包含一个选项:等待子工作流完成。这可让您控制主工作流是否应等待子工作流完成后再进入下一步(打开),或者主工作流是否应继续而不等待(关闭)。

模板和示例

没有任何

设置并使用子工作流程

本节将介绍如何设置父工作流和子工作流。

创建子工作流

  1. 创建新的工作流程。

    从现有工作流创建子工作流

    您可以选择使用“执行子工作流”节点,直接从现有父工作流创建子工作流。在该节点中,选择“数据库”“来自列表”选项,然后在列表中选择“创建子工作流”

    您还可以使用上下文菜单中的子工作流转换直接提取选定的节点。

    1. 选择
    1. “选项”
    1. 菜单 >
    1. “设置”
    1. 。n8n 打开“
    1. 工作流设置
    1. ”模式。
    1. 更改
    1. “此工作流可通过以下方式调用
    ”设置。
    1. 有关配置工作流的更多信息,
    1. 请参阅
    1. “工作流设置”
  2. 添加执行子工作流触发节点(如果您在触发节点下搜索,这也被称为当由另一个工作流执行时)。
  3. 设置输入数据模式以选择如何定义子工作流的输入数据:
    • 使用以下字段定义
    • :选择此模式可定义调用工作流需要提供的各个输入名称和数据类型。
    调用工作流中的
    • 将自动提取此处定义的字段。
    • 使用 JSON 示例定义
    • :选择此模式可提供 JSON 对象示例,演示预期的输入项及其类型。
    • 接受所有数据
    • :选择此模式可无条件接受所有数据。子工作流不会定义任何必需的输入项。此子工作流必须处理任何输入不一致或缺失的值。
  4. 根据需要添加其他节点来构建子工作流功能。
  5. 保存子工作流。

子工作流不得包含错误

如果子工作流出现错误,父工作流就无法触发它。

在构建之前将数据加载到子工作流中

这需要能够加载以前执行的数据,该功能在 n8n Cloud 和注册社区计划中可用。

如果您想要将数据加载到子工作流中以便在构建时使用:

  1. 创建子工作流并添加执行子工作流触发器
  2. 将节点的输入数据模式设置为接受所有数据,或者使用字段或 JSON 定义输入项(如果已知)。
  3. 在子工作流设置中,将“保存成功的生产执行”设置为“保存”
  4. 跳到设置父工作流并运行它。
  5. 按照步骤加载以前执行的数据
  6. 如有必要,调整输入数据模式以匹配父工作流发送的输入。

您现在可以在触发节点中固定示例数据,从而能够在配置其余工作流程时使用真实数据。

调用子工作流

  1. 打开您想要调用子工作流的工作流。
  2. 添加执行子工作流节点。
  3. “执行子工作流”节点中,设置要调用的子工作流。您可以选择通过 ID 调用工作流、从本地文件加载工作流、在节点中添加工作流 JSON 作为参数,或通过 URL 定位工作流。

    查找您的工作流程 ID

    子工作流的 ID 是其 URL 末尾的字母数字字符串。

  4. 填写子工作流定义的必填输入项。

  5. 保存您的工作流程。

当你的工作流执行时,它会将数据发送到子工作流,并运行它。

您可以通过打开“执行子工作流”节点并选择“查看子执行”链接,跟踪从父工作流到子工作流的执行流程。同样,子工作流的执行包含一个指向父工作流执行的链接,以便反向导航。

数据如何在工作流之间传递

举个例子,假设在工作流 A中有一个执行子工作流节点。该执行子工作流节点调用另一个名为工作流 B的工作流:

  1. 执行子工作流节点将数据传递给工作流 B的执行子工作流触发节点(在画布中标题为“由另一个节点执行时”) 。
  2. 工作流 B的最后一个节点将数据发送回工作流 A中的执行子工作流节点。