Обновляет содержимое и удаляет ошибки для записей в источнике данных.

Описание

Функция Revert обновляет весь источник данных или одну запись в нем. Вы сможете увидеть изменения, внесенные другими пользователями.

Для записей, для которых выполняется функция Revert, также удаляются все ошибки в таблице, возвращенные функцией Errors.

Если функция Errors сообщает о конфликте после выполнения функции Patch или другой операции с данными, выполните для записи функцию Revert, чтобы повторно применить изменение к конфликтующей версии.

Функция Revert не возвращает никакого значения. Ее можно использовать только в формуле поведения.

Синтаксис

Revert(источник_данных[, запись])

  • *источник_данных* — обязательный аргумент. Это источник данных, который требуется восстановить.
  • *запись* — необязательный аргумент. Запись, которую требуется восстановить. Если запись не указана, выполняется восстановление всего источника.

Пример

В этом примере восстанавливается источник данных под названием IceCream, который начинается со значений из следующей таблицы:

Пользователь на другом устройстве изменяет значение свойства Quantity записи Strawberry на 400. Примерно в тот же момент вы меняете значение того же свойства в той же записи на 500, не зная о параллельном изменении.

Чтобы обновить запись, вы используете функцию Patch:
Patch(IceCream, First(Filter(IceCream, Flavor = "Strawberry")), {Quantity: 500})

В таблице Errors вы обнаруживаете ошибку:

Запись Столбец Сообщение Ошибка
{ID: 1, Flavor: "Strawberry", Quantity: 300} пусто "Запись, которую вы пытаетесь изменить, была изменена другим пользователем. Восстановите ее и повторите попытку". ErrorKind.Conflict

Для записи в столбце Ошибка вы можете воспользоваться кнопкой Reload (Перезагрузить), у которой для свойства OnSelect установлена следующая формула:
Revert(IceCream, First(Filter(IceCream, Flavor = "Strawberry")))

После нажатия кнопки Reload таблица ошибок очищается, а для свойства Strawberry загружается новое значение:

Вы применяете это изменение, перезаписывая предыдущее, и операция выполняется успешно, так как конфликт устранен.