本页目录

If-else 和 Merge

当您需要将场景(scenario)拆分为条件路径(route),仅根据逻辑遵循其中一条路径,然后将流程(flow)重新连接为单一路径时,请配合使用 如果 - 否则模块(module)与 合并模块(module)。

这与 路由器 不同,后者会运行所有路径(route)且无法重新连接。

如果 - 否则模块(module)

如果 - 否则模块(module)将您的场景(scenario)拆分为条件路径(route)。仅运行第一个评估为 真的条件。如果没有条件为 真,则运行 否则路径(route)。

请将条件从最具体到最不具体进行排列,以确保运行正确的路径。您可以添加任意数量的条件。

如果 - 否则模块(module)需要一个条件路径(route)和一个 否则路径(route)。这些路径(route)无法从 如果 - 否则模块(module)取消链接,并且最后一个模块(module)无法删除。

设置好路径后,您可以保持它们分离,或使用 合并模块(module)将它们重新连接并继续流程。

要将 如果 - 否则模块(module)添加到您的场景(scenario),请参阅 添加 If-else 模块。

虽然 如果 - 否则模块(module)和 路由器 都可以将场景(scenario)拆分为带有条件的不同路径,但场景(scenario)的运行过程有所不同。

如果 - 否则模块(module) 路由器
将场景(scenario)拆分为带有条件的多个路径(route) 将场景(scenario)拆分为带有条件的多个路径(route)
运行第一个通过为 真的条件 按设定顺序运行所有条件
路径(route)可以使用 合并模块(module)重新合并 路径(route)无法重新合并

如果 - 否则模块(module)使用操作(operations),但不消耗任何点数(credits)。

合并模块(module)

合并模块(module)将 如果 - 否则模块(module)创建的条件路径(route)重新连接为单个流程(flow)。它将数据从活动路径(route)传递到场景(scenario)中的任何后续模块(module)。

合并模块(module)仅与 如果 - 否则模块(module)配合使用。如果不先设置 如果 - 否则流程(flow),您无法将其添加到场景(scenario)中。

要将 合并模块(module)添加到您的场景(scenario),请参阅 添加 Merge 模块。

合并模块(module)使用操作(operations),但不消耗任何点数(credits)。

添加 如果 - 否则模块(module)

如果 - 否则模块(module)将场景(scenario)流程(flow)拆分为带有条件的多个路径(route)。

要添加 如果 - 否则模块(module):

  1. 在您的场景(scenario)中,点击加号以添加另一个模块(module)。

  2. 搜索 流程控制> 如果 - 否则 模块(module)。

如果 - 否则模块(module):将场景(scenario)流程(flow)拆分为带有条件的多个路径(route),然后让您将它们重新合并。

在设置好 如果 - 否则流程(flow)之前,无法将 合并模块(module)添加到您的场景(scenario)中。

  1. 添加 如果 - 否则模块(module)后,您将看到默认设置为两条路径(path),一个条件路径(route)和一个 否则路径(route)。

设置条件(condition):

  • 标签: 为条件命名。

  • 条件: 输入或映射条件的值。根据需要添加额外规则。

设置条件

  1. 点击 保存 以保存此条件。

  2. 要添加另一个条件路径(route),将鼠标悬停在 如果 - 否则模块(module)上,直到看到白色 + 符号并点击。

添加另一个条件。

每次点击都会添加另一个条件路径(route)。

  1. 设置每个条件(condition)的值并点击 保存。

  2. 可选:点击 否则过滤器(filter)并输入 标签。

标记 否则路径(route)。

  1. 点击 保存。

设置完所有条件后,根据需要继续向场景(scenario)添加模块(module)以完成每个路径(route)。

您可以保持每个路径(route)分离,或添加合并模块(module)将路径(route)连接在一起并继续流程(flow)。

如果 - 否则流程(flow)的限制

您不能在 如果 - 否则模块(module)之后的流程(flow)中追加 路由器模块(module)或另一个 如果 - 否则模块(module)。这一限制针对的是在 如果 - 否则 之后的同一流程里继续追加这两类模块。

官方当前还提供 嵌套 如果 - 否则 与 合并(Nested If-else & Merge):可以在一个 如果 - 否则 的某个分支(branch)内部再放置一个 如果 - 否则,从而在同一个场景(scenario)中构建多级判断,而不必把相关条件拆到多个路由器链上。它属于分支内部的嵌套,与上面禁止的“在 如果 - 否则 之后的主流程中追加”不是同一种放置方式。是否可用以及具体行为,请以官方页面为准。

路由器(Router)和 如果 - 否则模块(module)在 如果 - 否则和 合并流程(flow)之间不可用。

添加 合并模块(module)

合并模块(module)将 如果 - 否则路径(route)合并在一起,并使用单个路径(route)中的数据继续流程(flow)。

合并模块(module)只能在 如果 - 否则模块(module)之后使用。

要添加 合并模块(module):

  1. 在任何路径(route)的末尾,点击加号以添加另一个模块(module)。

  2. 搜索 流程控制> 合并 模块(module)。

合并模块(module):将 如果 - 否则路径(route)合并在一起,并使用来自单个路径(route)的数据继续流程(flow)。

  1. 点击并按住 合并模块(module)图标,将其拖动并连接到 如果 - 否则流程(flow)中的所有路径(route)。

将合并模块(module)连接到所有路径(route)。

您也可以通过点击任何路径(route)末尾的加号并选择 合并路径 来合并路径(route)。

合并路径

  1. 为您的 合并模块(module)输出输入或映射以下值:
  • 输出名称

  • 如果第 1 个条件为真 > 输出值

  • 否则 > 输出值

文档图片

如有必要,添加额外的 如果 - 否则输出。

  1. 点击 保存。

合并模块(module)已连接到 如果 - 否则流程(flow),场景(scenario)流程(flow)可以在合并后继续。

如果条件路径(route)不包含模块(module),并且您将该路径(route)连接到 合并模块(module),Make 会显示一个 什么都不做(Do Nothing)模块。虽然此路径(route)不包含任何模块(module),但数据会通过。

如果您在 如果 - 否则之后没有为其中一个路径(route)选择模块(module),然后将其连接到 合并,则模块(module)名称将变为 什么都不做(Do Nothing)。

要将 什么都不做(Do Nothing)模块替换为其他模块(module),请点击 什么都不做(Do Nothing)模块并搜索您需要的应用。

搜索应用以替换 什么都不做(Do Nothing)模块。

从 如果 - 否则和 合并流程(flow)中删除模块(module)

要删除 如果 - 否则模块(module),请右键单击并选择 删除。

这将删除该模块(module)及其所有条件。此操作无法撤销。

文档图片

删除 如果 - 否则模块(module)后,任何剩余的模块(module)将显示错误,直到您将它们重新连接到场景(scenario)流程(flow)。

文档图片

如果您在 合并模块(module)之前删除模块(module),合并模块(module)将显示错误。在配置其输出之前,至少连接一个模块(module)。

合并模块(module)无连接错误

教程:费用报告审批系统

在本教程中,您将构建一个场景(scenario),自动将费用报告提交分类为两条路径:低价值费用的立即批准,以及需要人工审核的费用的 Slack 通知。所有提交都会记录在 Google Sheets 中,并带有其审批状态。

您将需要:

  • 一个 Tally 表单来提交费用信息。您的表单应包含以下字段:名字、姓氏、费用日期、费用描述和金额。

  • 一个 Slack 账户,用于接收需要额外审核才能批准的费用的通知。

  • 一个 Google Sheet 文件,包含以下列标题:First Name、Last Name、Date of Expense、Description of Expense、Amount 和 Approval。

费用报告审批系统场景(scenario)

要构建场景(scenario):

步骤 1:连接到 Tally

  1. 点击巨大的加号并添加一个 Tally > Watch New Responses 模块(module)。
  2. 点击 创建 webhook。输入 webhook 名称并连接到您的 Tally 账户。
  3. 在 表单 ID 字段中,选择您在 Tally 中创建的费用报告表单。
  4. 点击 保存 以保存 webhook,然后再次点击 保存 以保存模块(module)设置。

您的场景(scenario)现在已连接到 Tally,并在提交新表单时触发。

步骤 2:设置 If 路径(route)条件并配置流程(flow)

  1. 添加一个 如果 - 否则 模块(module)并设置第一个条件,即高于自动批准限额的费用报告值。在此示例中,高于 $100 的费用超过自动批准限额。
  • 标签: 高于限额

  • 条件: 映射 Tally 中费用金额的字段,并将条件设置为大于 100。

第一个条件 - 费用金额高于限额

  1. 点击 保存。

  2. 在此第一个条件路径(route)中,添加一个 Slack > Send a Message 模块(module)。

  3. 创建到您的 Slack 账户的连接,并选择要接收消息的人员的 ID。您的配置可能因 Slack 设置而异。

  4. 在 文本 字段中,输入要发送的关于费用报告的消息。您可以在消息中映射 Tally 表单中的数据。在此示例中,包含了提交费用报告的人员的名字和姓氏。 配置 Slack 模块(module)以发送消息

  5. 点击 保存。

If 条件路径(route)识别出费用金额高于 $100 的报告提交,并发送 Slack 消息通知收件人。

Slack 消息示例

步骤 3:配置 Else 路径(route)流程(flow)

  1. 点击 Else 路径(route)条件,并在 标签 字段中输入名称。点击 保存。 设置 Else 路径(route)标签名称

  2. 添加一个 Tools > Set variable 模块(module)。

  • 变量名称:输入一个变量名称以指示审批状态。

  • 变量值:输入一个变量值,以表明此路径(route)中的费用报告已获批准。

设置变量以指示费用报告已获批准。

  1. 点击 保存。

Else 路径(route)配置为识别费用金额不超过 $100(含 $100)的报告,并将其标记为已批准。

步骤 4:合并条件并继续流程(flow)

  1. 在任一 路径(route)之后,添加一个 流程控制> 合并 模块(module)。
  2. 点击并按住 合并模块(module)图标,将其拖动并连接到 如果 - 否则流程(flow)中的所有路径(route)。
  3. 点击 合并模块(module)并输入或映射以下合并输出值:
  • 输出名称: Approval(以匹配 Google Sheets 文件中的字段)

  • 如果第 1 个条件为真 > 输出值: Review required

  • 否则 > 输出值: 映射 Else 路径(route)中设置的变量值,status

文档图片

  1. 点击 保存。
  2. 添加一个 Google Sheets > Add a row 模块(module)。创建到您的 Google 账户的连接,并选择您创建的 Google Sheets 文件。

您的值将根据您保存文件的位置、文件名以及文件中的工作表名称而有所不同。

Google Sheets > Add a row 模块(module)配置

  1. 对于每个 Google Sheets 列,映射 Tally 表单数据和 合并模块(module)输出:
  • First Name: First name

  • Last Name: Last name

  • Date of Expense: Date of expense

  • Description of Expense: Description

  • Amount: Amount submitted (in dollars)

  • Approval: Approval

文档图片

  1. 点击 保存。

点击 保存 并保存您的场景(scenario)。

准备好后,安排您的场景(scenario)运行。由于您的场景(scenario)以 webhook 模块(module)开始,默认设置是在数据到达时立即运行。

安排场景(scenario)运行

当提交费用报告时,信息会保存在 Google Sheets 文件中,并标记正确的审批值。

Google Sheets 提交

本文包含联盟推广链接。通过这些链接注册不会增加你的费用,但会帮助我们持续产出高质量的免费内容。

理解概念后,先选低风险流程

如果这个概念对应你的真实重复任务,可以先从可人工复核的小流程开始尝试。价格、额度和模块限制请以官方页面为准。

✓ 先跑低风险流程✓ 保留人工复核✓ 价格和额度以官方页面为准
选好流程后打开 Make