添加、修改或删除行时触发流

添加、修改或删除行时触发器只要选定表和范围的行发生更改或创建时即会运行流。

先决条件

  • 要创建在创建、修改或删除行时触发的流,您必须对回拨注册表有创建、读取、写入和删除用户级别权限。

  • 根据流中定义的范围,您可能至少需要对同一个表具有该读取级别。 了解更多信息,请参阅环境安全

为触发器设置参数

要使用添加、修改或删除行时触发器,需要以下信息。

  • 触发条件
  • 表名
  • 作用域

备注

  • Power Automate 使用经典云端流设计器或具有 Copilot 功能的新现代设计器。 要确定您使用的是哪种设计器,请转至探索云端流设计器中的注释部分。
  • 在传统设计器和新设计器之间切换时,系统会要求您保存流程。 在解决所有错误之前,不能保存和切换。

在您的流程中,为添加、修改或删除行时触发器选择卡片。 左侧会打开一个窗格,其中选择了参数选项卡。

“参数”选项卡截图。

触发条件

触发条件更改类型定义了运行流程的行更改组合。

当流程触发创建、更新或删除行时,triggerOutputs()['body/SdkMessage'] 的值分别为 CreateUpdateDelete

当表中的一条记录发生多次更新时,Power Automate 会对每次更新的触发器进行评估,即使更新后的值与之前的值相同。 这些更新可能会导致多个流运行。

表名

表名列表会筛选在流程触发器之前发生变化的行。 更多信息,请参阅 Dataverse 中的表

添加、修改或删除行时触发器不支持在 1:N 或 N:N 类型的关系上触发流。

作用域

范围列表指示应监视这些行以确定是否应运行流。

下面是每个范围的含义:

Scope 行所有权级别
业务部门 业务部门中的任何人所有的行执行了操作。
组织 环境中的任何人执行了操作。
上:下级业务部门 对您的业务部门或下级业务部门中的任何人所有的行执行操作。
User 对您所有的行执行操作。

筛选条件

使用筛选条件为何时触发流设置条件。

筛选器列

使用选择列框,以逗号分隔的唯一列名列表的形式,定义包含在请求中时应导致流运行的行的特定列。 仅在更新请求中包含值已更改的列。 当包含的值与现有值相同时,流将运行。

此属性仅适用于更新条件。 创建删除适用于行的所有列。

虚拟表上不支持此属性。

筛选器表达式

筛选表达式为您提供定义 OData 样式筛选表达式的方法,帮助您更加精确地定义触发条件。 仅当在 Dataverse 中保存更改后,表达式的计算结果为 true 时,流才会运行。 在下列示例中,firstname 更新为 John 时触发了流。

过滤器行的示例:

firstname eq 'John'

contains(firstname,'John')

了解更多信息,请参阅标准过滤运算符查询函数

高级选项

您可以设置其他属性,以更精确地定义流的运行时间和使用的用户配置文件。

要访问高级参数,请在高级参数字段中选择显示全部

高级参数截图。

使用延迟截止时间的等待条件

延迟截止时间属性中使用 OData 样式的时间戳将流触发器延迟到特定的 UTC 时间。

使用 Dataverse Delay until 属性而不是标准延迟截止时间操作的主要好处是 Dataverse Delay until 属性永不过期,允许流运行等待很长一段时间。

使用 Run As 的用户模拟

流所有者必须具有 Microsoft Dataverse 特权代表其他用户执行操作 (prvActOnBehalfOfAnotherUser)。 代理安全角色默认包含此特权。 您可以对任何安全角色启用此特权。 了解更多模拟另一个用户

创建具有添加、修改或删除行时触发器的流时,可以将流中的每个 Microsoft Dataverse 操作设置为使用用户(而不是流所有者)的上下文来执行。

要模拟用户,请按以下步骤操作。 对于您希望作为不同用户运行的每个 Dataverse 操作,请在运行方式下拉菜单中选择一个选项。

对于未选择此设置的步骤,将假定为默认用户。 这将根据所选用户而不是流所有者调用基础 API。 如果未指定,默认为创建流的流所有者—实质上是作者。

以下是其他选项:

  • 流所有者:创建流的用户。

  • 行所有者:拥有经过更改(导致流被触发)的 Microsoft Dataverse 行的用户。 如果团队拥有一行,则此选项默认为作为流所有者运行。

  • 修改用户:对 Microsoft Dataverse 行执行操作(导致触发或修改流)的用户。

此外,即时流允许在使用调用程序连接的同一流中运行任何其他连接器(如 Microsoft TeamsMicrosoft 365 OutlookSharePoint)的步骤。 为此,请执行以下步骤:

  1. 转到流概览页。

  2. 仅运行用户设置上选择编辑

  3. 管理仅运行权限窗格中,转到用户和组选项卡,然后在已使用连接列表下面选择由仅运行用户提供