Revert 函数

适用于:画布应用

刷新数据源记录并清除错误。

描述

Revert 函数可用于刷新整个数据源或者数据源中的单个记录。 这样您就可以看到其他用户进行的更改。

对于还原的记录,Revert 还可以从返回了 Errors 函数的中清除所有错误。

如果 Errors 函数在执行 Patch 或其他数据操作后报告了冲突,则还原记录,从冲突版本开始并重新应用更改。

Revert 函数没有返回值。 只能在行为公式中使用。

语法

Revert( DataSource [, Record ] )

  • DataSource – 必需。 要还原的数据源。
  • Record - 可选。 要还原的记录。 如果不指定记录,则会还原整个数据源。

示例

在本例中,您将还原名为 IceCream 的数据源,这个数据源刚开始包含下表中的数据:

IceCream 示例。

另一个设备上的用户将 Strawberry 记录的 Quantity 属性改成了 400。 几乎在同一时间,您将同一条记录的同一个属性改成了 500,但不知道他人也进行了更改。

随后您使用 Patch 函数更新记录:
Patch( IceCream, LookUp( IceCream, Flavor = "Strawberry" ), { Quantity: 500 } )

当您检查 Errors 表时,发现了如下错误:

记录 消息 错误​
{ ID: 1, Flavor: "Strawberry", Quantity: 300 } blank “您要修改的记录已被其他用户修改。 请还原该记录,然后重试。” ErrorKind.Conflict

根据 Error 列中的内容,您可以看到一个重新加载按钮,其 OnSelect 属性设置为以下公式:
Revert( IceCream, LookUp( IceCream, Flavor = "Strawberry" ) )

选择重新加载按钮后,Errors 表变为空白,并且 Strawberry 的新值已加载:

Strawberry 冰淇淋的新值。

完成上述更改之后,您重新应用了更改,这次成功了,因为已经解决了冲突。

重新应用了更改且冲突已解决。