Funkcja Revert
Dotyczy: Aplikacje kanwy
Odświeża rekordy źródła danych i czyści błędy.
Opis
Funkcja Revert odświeża całe źródło danych lub jeden rekord w tym źródle danych. Dzięki temu można zobaczyć zmiany wprowadzone przez innych użytkowników.
W przypadku przywróconych rekordów funkcja Revert czyści także wszelkie błędy z tabeli zwrócone przez funkcję Errors.
Jeśli funkcja Errors zgłosi konflikt po wykonaniu operacji Patch lub innej operacji na danych, zastosuj funkcję Revert względem danego rekordu, aby zacząć pracę od wersji powodującej wystąpienie konfliktu i wprowadź ponownie zmianę.
Przywróć nie ma wartości zwracanej. Można jej używać tylko w formule dotyczącej zachowań.
Składnia
Przywróć( DataSource [, Rekord ] )
- Źródło danych– wymagane. Źródło danych, które chcesz przywrócić.
- Rekord — opcjonalny. Rekord, który chcesz przywrócić. Jeśli nie określisz rekordu, zostanie przywrócone całe źródło danych.
Przykład
W tym przykładzie przywrócimy źródło danych o nazwie IceCream. Na początku znajdują się dane w tej tabeli:
Załóżmy, że użytkownik na innym urządzeniu zmienia właściwość Quantity rekordu Strawberry na wartość 400. W tym samym czasie zmieniasz tę samą właściwość tego samego rekordu na wartość 500, nie wiedząc o zmianie wprowadzonej przez innego użytkownika.
Za pomocą funkcji Patch aktualizujesz rekord:
Patch( Lody, LookUp( Lody, Smak = "Truskawka" ), { Ilość: 500 } )
W tabeli Errors znajdujesz błąd:
Rekord | Kolumna | Wiadomość | Błąd |
---|---|---|---|
{ ID: 1, Smak: "Truskawka", Ilość: 300 } | pusty | „Rekord, który próbujesz zmodyfikować, został zmodyfikowany przez innego użytkownika. Przywróć ten rekord i spróbuj ponownie.” | ErrorKind.Conflict |
Na podstawie kolumny Error wyświetli się przycisk Załaduj ponownie, dla którego właściwość OnSelect zostanie ustawiona na następującą formułę:
Przywróć( Lody, LookUp( Lody, Smak = "Truskawka" ) )
Po wybraniu przycisku Załaduj ponownie tabela Errors będzie pusta i zostanie załadowana nowa wartość rekordu Strawberry:
Ponownie zastosuj zmianę na poprzedniej zmianie. Zmiana zostanie uwzględniona, ponieważ konflikt został rozwiązany.