添加、修改或删除行时触发器只要选定表和范围的行发生更改或创建时即会运行流。
先决条件
若要创建在您创建、修改或删除行时触发的流程,您必须对回拨注册表拥有用户级别的创建、读取、写入和删除权限。
根据流中定义的范围,您可能至少需要对同一个表具有该读取级别。 了解更多信息,请参阅环境安全。
为触发器设置参数
要使用添加、修改或删除行时触发器,需要以下信息。
- 触发条件
- 表名
- Scope
Power Automate允许你使用 new designer 或 classic designer 来配置云流。 这两个设计器中的步骤相似。 了解更多(附示例)请参阅新设计器与经典设计器的区别。
在您的流程中,为添加、修改或删除行时触发器选择卡片。 左侧会打开一个窗格,其中选择了参数选项卡。
触发条件
触发条件更改类型定义了运行流程的行更改组合。
当流程触发创建、更新或删除行时,triggerOutputs()['body/SdkMessage'] 的值分别为 Create、Update 或 Delete。
当表中的单个行发生多个更新时,Power Automate会评估每个更新的触发器,即使更新的值与前面的值相同。 这些更新可能会引发多次工作流运行。
表名
表名列表会筛选在流程触发器之前发生变化的行。 更多信息,请参阅 Dataverse 中的表。
添加、修改或删除行时触发器不支持在 1:N 或 N:N 类型的关系上触发流。
Scope
范围列表指示应监控这些行,以确定是否需要运行该流。
下面是每个范围的含义:
| Scope | 行所有权级别 |
|---|---|
| 业务部门 | 对业务部门中的任何人所有的行执行了操作。 |
| 组织 | 在环境中,任何人都可以执行操作。 |
| 上:下级业务部门 | 对您的业务部门或下级业务部门中的任何人所有的行执行操作。 |
| 用户 | 对您所有的行执行操作。 |
筛选条件
使用筛选条件设置何时触发流程的条件。
筛选列
使用选择列框,以逗号分隔的唯一列名列表的形式,定义包含在请求中时应导致流运行的行的特定列。 仅在更新请求中包含值已更改的列。 当包含的值与现有值相同时,流将运行。
此属性仅适用于更新条件。 创建和删除适用于行的所有列。
虚拟表上不支持此属性。
重要
选择列筛选器不支持查找列(存储对其他表行引用关系的列)。 如果指定查找列,则更改该列不会触发流。 仅使用标量列类型,例如文本、数字、日期/时间和选择列。
筛选器表达式
筛选表达式为您提供定义 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 Teams、Microsoft 365 Outlook 或 SharePoint)的步骤。 为此,请执行以下步骤:
转到流概览页。
在仅运行用户设置上选择编辑。
在管理仅运行权限窗格中,转到用户和组选项卡,然后在已使用连接列表下面选择由仅运行用户提供。