Offers the separation of content between different layers.
The separation of content allows a customer to, for example, apply changes to an existing entity and to store these changes in the CUSTOMER layer without modifying the underlying entity that is not owned by the customer. This concept ensures the lifecycle stability over release cycles: Vendor, customers, and users, store changes for an entity in their respective layer and the changes are applied to the original entity only at runtime and the original file remains unchanged. The layered repository stores the logical information for the changes that shall be applied to the original entity in a JSON-based file.
The layered repository calls the client API to create, update, and delete these variants and calls the REST services to update the back end system.
Stores customer-specific adaptation settings and variants. The content is stored separately for each user.
Stores customer-specific adaptation settings and variants. The content is stored separately for each client.
Stores SAP content, for example, SAP-delivered variants
The layered repository can, for example, be used to manage changes for smart controls where users can modify a control and store these modification as a variant. Examples for such changes are filter values, the visibility of a field, or the order of columns in a table. By saving these changes in the variant control management, a user creates a new variant and the information is stored in a json file in the USER layer.
The layered repository has the following system requirements:
Browsers and platforms: See sap.ui.comp library
Services: ABAP front-end server and SAP NetWeaver 7.31 SP 11 or higher
To use the layered repository, the following authorizations are required:
To load variants and other content changes to the client via the //SAP/BC/UI5_UI5/**/COMPONENT-CHANGES.JSON file, the SAPUI5 component name for which data is requested is provided with the request. The system checks in the SAP Fiori launchpad target mapping for the current user and whether the component has been assigned to the user.
To create, change, and delete content in the USER layer or variants in the CUSTOMER layer, no specific authorization is required.
To adapt the SmartForm and ObjectPage controls in the CUSTOMER layer, ABAP authorization object /UIF/FLEX with authorization field /UIF/KEYU = 'X' is required. This authorization is needed for a key user who can make changes for all users in a specific client. Role SAP_UI_FLEX_KEY_USER in transaction PFCG already contains the authorization required and is delivered by default.
If you want to define your own roles, make sure you copy SAP_UI_FLEX_KEY_USER and always create them based on this role.
To enable remote access to the layered repository, activate the following ICF nodes in transaction SICF in the target system:
This node is required to load the */COMPONENT-CHANGES.JSON file and the SAPUI5 libraries from the MIME repository as well as the SAP Fiori applications from the SAPUI5 ABAP repository.
This node is required to create, change, and delete variants and other content.
To use the layered repository and the SmartVariantManagement control for the handling of variants, the /UI5/UI5_INFRA_APP/REP_DT_PUT virus scan profile must be active.
For more information about virus scans, refer to the application help on the SAP Help Portal at http://help.sap.com/nw-uiaddon .
We recommend that you work with two systems, a test and a productive system, make your flexibility changes in the test system, and transport them from the test system to the productive system. For this, choose Transport in the relevant user interface and select the relevant transport in the popup. The transport function is inactive in the productive system.
To transport content from the layered repository, a valid ABAP transport with a task for the user must exist in transaction SE09. The file is then added to the transport request by the layered repository.
If ATO (Adaptation Transport Organizer) is enabled in a cloud-based environment, you do not need a transport request in the back end. Instead, the transport is generated automatically in the background. For more information, refer to the application help on the SAP Help Portal at http://help.sap.com/nw75 .
All actions that create, update, or delete content or fetch changes for an external reference are logged to the standard ABAP application log in transaction SLG1 (log object /UIF/LREP). For deleting the log, use transaction SLG2.
Each file in the layered repository has a master language. The master language is the same as the logon language of the user who has created the file (for example, a variant). If the file is changed later on, you can only change the file in that specific language.
The logon language of a user and thus master language of new files in the repository depend on the following:
The URL parameter overrides the browser language settings.
Additional languages that you require need to be added using the ABAP translation tools.