Small SAP Talk. Защита от потери данных в SAPUI5 приложении

Просто представим: пользователь начинает работать в SAPUI5 приложении, вводит различные данные в поля форм(ы), но по каким-то причинам нажимает на клавиатуре кнопоньку F5, либо кликает на один из навигационных контролов самого приложении, что в результате приводит к перенаправлению пользователя на главную страницу SAP Fiori Launchpad. Например,

Вендор предлагает решить эту проблему, посредством использования функции setDirtyFlag, входящую в пространство имен sap.ushell.

См. Implementing Data Loss Protection

Use the methods of the Container API to set the "dirty" (unsaved) state of a page and trigger the data loss protection mechanism when needed. Set the dirty flag to true when there are unsaved changes in the application that can lead to potential data loss.

После добавления соответствующих проверок, приложение будет реагировать на попытку вернуться на главную страницу ланчпада, либо принудительную попытку обновления текущей страницы браузера. Например,

Волшебство, не иначе.


Все, что нужно знать про рубрику Small SAP Talk представлено в следующей заметке:

Small SAP Talk