创建子流
如今,大家构建的流需要大量步骤;但是,如果尝试将所有这些操作放入单个流中,则可能很难导航和维护此类流。
可以使用子流轻松管理流,从而避免一个流中包含数百个步骤。 如果要在云端流中的多个位置甚至跨多个流重用任务,此方法特别有用。
让我们看一个示例,在此示例中,您要创建一个子流,或要根据联系人的姓名在 Dataverse 中更新该联系人。
您需要一个包含两个流的解决方案。
- 一个子流。 这是父流中嵌套的流,其中包含要运行的较小任务。 在父流中可以有多个子流。
- 一个父流。 此流可以有任何类型的触发器,并且将调用子流。
在解决方案中创建子流
登录到 Power Automate,选择解决方案,然后选择现有解决方案。
或者,如果您不想使用现有解决方案,可以创建一个解决方案。
选择新建>自动化>云端流>即时。
构建即时云端流屏幕将出现。
为您的流命名,以便您以后可以轻松识别。
选择手动触发流触发器。
选择创建。
选择添加输入。
您在此处定义的输入将从父流传递到子流。
对于本演练,子流将创建一个联系人,因此它需要联系人姓名和联系人电子邮件的输入字段。 将 ContactName 和 ContactEmail 输入添加到手动触发流卡中。
创建希望子流运行的逻辑。 此逻辑可以包含需要的任意数量步骤。
完成您的步骤后,需要将数据返回给父流。 在这种情况下,您可以使用以下两个操作之一。
i. 响应 Power App 或流(在 Power Apps 连接器下)。
ii. 响应(在高级 HTTP 请求/响应连接器中)。
与触发器一样,您可以定义希望子流返回到父流的任意数量的输出。 在下面的屏幕截图中,子流使用联系人 ID 进行响应。
然后需要测试您的子流。 您可以手动触发即时流,这样您可以直接在设计器内部对其进行测试。 使用一些不同输入测试,并验证输出是否是所需输出。
最后,如果您的流使用内置操作或 Microsoft Dataverse 连接器以外的任何内容,您需要更新流以使用流中嵌入的连接。 为此,请转到子流的属性页面,然后在仅运行用户磁贴中选择编辑。
在显示的窗格中,需要为流中使用的每个连接选择使用此连接 (<连接名称>),而不是仅运行用户。
选择保存。
备注
此时不能将连接从父流传递到子流。 如果您未执行此操作,将收到一条错误消息,指出名称不能用作子工作流,因为子工作流仅支持嵌入的连接。
在解决方案中创建父流
在创建子流的同一个解决方案中创建父流。
也可以在该解决方案中导入现有流。 父流可以有任何类型的触发器。
在父流中找到子流所需调用位置,然后添加内置选项卡中流连接器下的运行子流操作。
选择之前创建的子流。
备注
您将仅看到自己可访问且位于解决方案中的流。 子流也必须有前面介绍的三个触发器之一。
选择子流后,您将看到您在子流中定义的输入。 子流操作之后,可以使用该子流的任何输出。
当父流运行时,将在流的生命周期(使用内置连接和 Dataverse 的流为一年,其他所有流为 30 天)中等待子流完成。
保存并测试此流。
小费
导出其中包含这两个流的解决方案并将其导入到其他环境中时,将自动链接新的父流和子流,因此无需更新 URL。
已知问题
我们正在努力解决以下已知问题和限制。
您必须在同一解决方案中直接创建父流以及所有子流。 如果将流导入到解决方案中,您将获得意外结果。