Função Revert no PowerAppsRevert function in PowerApps

Atualiza e limpa erros dos registros de uma fonte de dados.Refreshes and clears errors for the records of a data source.

DescriçãoDescription

A função Revert atualiza uma fonte de dados inteira ou um único registro na fonte de dados.The Revert function refreshes an entire data source or a single record in that data source. Você verá as alterações feitas por outros usuários.You'll see changes that other users made.

Para os registros revertidos, Revert também limpa os erros da tabela que a função Errors retornou.For the records reverted, Revert also clears any errors from the table that the Errors function returned.

Se a função Errors reportar um conflito após um Patch ou outra operação de dados, use a função Revert no registro para começar com a versão conflitante e reaplique a alteração.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 não tem valor de retorno.Revert has no return value. Você só pode usá-la em uma fórmula de comportamento.You can use it only in a behavior formula.

SintaxeSyntax

Revert( Fonte de dados [, Registro ] )Revert( DataSource [, Record ] )

  • Fonte de dados – Obrigatório.DataSource – Required. A fonte de dados que você deseja atualizar.The data source that you want to revert.
  • Registro – Opcional.Record - Optional. O registro que você deseja reverter.The record that you want to revert. Se você não especificar um registro, toda a fonte de dados será revertida.If you don't specify a record, the entire data source is reverted.

ExemploExample

Neste exemplo, você reverterá a fonte de dados chamada IceCream, que começa com os dados nesta tabela:In this example, you'll revert the data source named IceCream, which starts with the data in this table:

Um usuário em outro dispositivo muda a propriedade Quantity no registro Strawberry para 400.A user on another device changes the Quantity property of the Strawberry record to 400. Aproximadamente no mesmo momento, altere a mesma propriedade do mesmo registro para 500, sem saber da outra alteração.At about the same time, you change the same property of the same record to 500, not knowing about the other change.

Use a função Patch para atualizar o registro:You use the Patch function to update the record:
Patch( IceCream, First( Filter( IceCream, Sabor = "Morango" ) ), { Quantidade: 500 } ) Patch( IceCream, First( Filter( IceCream, Flavor = "Strawberry" ) ), { Quantity: 500 } )

Verifique a tabela Erros e encontre um erro:You check the Errors table and find an error:

RegistroRecord ColunaColumn MensagemMessage ErroError
{ ID: 1, Sabor: "Morango", Quantidade: 300 }{ ID: 1, Flavor: "Strawberry", Quantity: 300 } em brancoblank "O registro que você está tentando modificar foi modificado por outro usuário. Recarregue o registro e tente novamente.""The record you are trying to modify has been modified by another user. Please revert the record and try again." ErrorKind.ConflictErrorKind.Conflict

Com base na coluna Erro, você tem um botão Recarregar para o qual a propriedade OnSelect está definida como esta fórmula: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, Sabor = "Morango" ) ) ) Revert( IceCream, First( Filter( IceCream, Flavor = "Strawberry" ) ) )

Depois de selecionar o botão Recarregar, a tabela Erros está vazia e o novo valor de Morango é carregado:After you select the Reload button, the Errors table is empty, and the new value for Strawberry has been loaded:

Reaplique a alteração sobre a alteração anterior, e a alteração será bem-sucedida, pois o conflito foi resolvido.You reapply your change on top of the previous change, and your change succeed because the conflict has been resolved.