The delta changes are stored in a repository, called layered repository, as it contains different layers where the UI changes of the different users are stored in respective layers. Here's an overview:
Layer |
Used by |
Stores changes by |
Type of changes |
---|---|---|---|
|
Customer |
End users |
User-specific personalization settings (for object pages) |
|
Customer |
End users |
Views that the end user saves as Public |
|
Customer |
Key users |
UI changes to adapt apps for all users made using key user adaptation |
|
Customer |
Developers |
UI changes made using the Adaptation Editor in SAP Business Application Studio. |
|
SAP |
SAP |
Example: Update of an app |
The semantic changes are attached to stable IDs. This makes them upgrade-safe, for example, if the controls of the app get exchanged.
How are the layered changes stored?
The changes are stored in the respective layers separately from the original content that remains unchanged. The repository stores the logical information for the changes that are to be applied to the original entity in a JSON-based file. The repository calls the client API to create, update, and delete these changes and calls the REST services to update the back-end system.