Funktion „Revert“ in PowerAppsRevert function in PowerApps

Aktualisiert und behebt Fehler für die Datensätze einer DatenquelleRefreshes and clears errors for the records of a data source.

BeschreibungDescription

Die Revert-Funktion aktualisiert eine gesamte Datenquelle oder einen einzelnen Datensatz in der Datenquelle.The Revert function refreshes an entire data source or a single record in that data source. Sie können die Änderungen anzeigen, die andere Benutzer vorgenommen haben.You'll see changes that other users made.

Bei den wiederhergestellten Datensätzen behebt Revert auf alle Fehler der Tabelle, die von der Errors-Funktion zurückgegeben werden.For the records reverted, Revert also clears any errors from the table that the Errors function returned.

Wenn die Errors-Funktion einen Konflikt nach einem Patch- oder einem anderen Datenvorgang meldet, führen Sie die Revert-Funktion auf den Datensatz aus, um mit der in Konflikt stehenden Version zu beginnen und die Änderung erneut vorzunehmen.If the Errors function reports a conflict after a Patch or other data operation, Revert the record to start with the conflicting version and reapply the change.

Revert hat keinen Rückgabewert.Revert has no return value. Sie können diese Funktion nur in einer Verhaltensformel verwenden.You can use it only in a behavior formula.

SyntaxSyntax

Revert( Datenquelle [, Datensatz ] )Revert( DataSource [, Record ] )

  • Datenquelle: Erforderlich.DataSource – Required. Die Datenquelle, die Sie wiederherstellen möchten.The data source that you want to revert.
  • Datensatz: Optional.Record - Optional. Der Datensatz, den Sie wiederherstellen möchten.The record that you want to revert. Wenn Sie keinen Datensatz angeben, wird die gesamte Datenquelle wiederhergestellt.If you don't specify a record, the entire data source is reverted.

BeispielExample

In diesem Beispiel stellen Sie die Datenquelle namens IceCream (Eiscreme) wieder her, die mit den Daten in dieser Tabelle beginnt:In this example, you'll revert the data source named IceCream, which starts with the data in this table:

Ein Benutzer auf einem anderen Gerät ändert die Quantity-Eigenschaft des Datensatzes Strawberry (Erdbeere) auf 400.A user on another device changes the Quantity property of the Strawberry record to 400. Etwa zur gleichen Zeit ändern Sie die gleiche Eigenschaft des gleichen Datensatzes auf 500, wobei Sie keine Kenntnis von der anderen Änderung haben.At about the same time, you change the same property of the same record to 500, not knowing about the other change.

Sie verwenden die Patch-Funktion, um den Datensatz zu aktualisieren:You use the Patch function to update the record:
Patch( IceCream, First( Filter( IceCream, Flavor = "Strawberry" ) ), { Quantity: 500 } ) Patch( IceCream, First( Filter( IceCream, Flavor = "Strawberry" ) ), { Quantity: 500 } )

Sie überprüfen die Errors-Tabelle und finden einen Fehler:You check the Errors table and find an error:

DatensatzRecord SpalteColumn NachrichtMessage FehlerError
{ ID: 1, Flavor: "Strawberry", Quantity: 300 }{ ID: 1, Flavor: "Strawberry", Quantity: 300 } blankblank "The record you are trying to modify has been modified by another user. Please revert the record and try again." (Der Datensatz, den Sie versuchen zu ändern, wurde von einem anderen Benutzer geändert. Bitte stellen Sie den Datensatz wieder her, und versuchen Sie es erneut.)"The record you are trying to modify has been modified by another user. Please revert the record and try again." ErrorKind.ConflictErrorKind.Conflict

Basierend auf der Spalte Error (Fehler) haben Sie eine Schaltfläche Reload (Erneut laden), für die die OnSelect-Eigenschaft auf diese Formel festgelegt wird:Based on the Error column, you have a Reload button for which the OnSelect property to set to this formula:
Revert( IceCream, First( Filter( IceCream, Flavor = "Strawberry" ) ) ) Revert( IceCream, First( Filter( IceCream, Flavor = "Strawberry" ) ) )

Nachdem Sie die Reload-Schaltfläche ausgewählt haben, ist die Errors-Tabelle leer, und der neue Wert für Strawberry wurde geladen:After you select the Reload button, the Errors table is empty, and the new value for Strawberry has been loaded:

Sie wenden Ihre Änderung erneut auf die vorherige Änderung an, und Ihre Änderung wird erfolgreich vorgenommen, da der Konflikt gelöst wurde.You reapply your change on top of the previous change, and your change succeed because the conflict has been resolved.