This blog is about extending the Fiori Elements based applications using extending underneath data CDS model and KUE (Key user extensibility tool).
For more information on Fiori Elements check this
link
Also following standard documents are helpful for understanding of the ABAP Programming Model for SAP HANA,
Click here to know more details:
SAP had developed various Fiori elements-based application for many Business scenarios such as Manage Purchase contract, Manage Purchase requisitions, Manage RFQ etc and most of them developed using CDS based SADL framework and BOPF framework for CRUD operations.
Many times, Business needs additional fields in Fiori elements based Standard applications. These can be achieved quickly and effectively via extending CDS and KUE approach.
Please refer below link for SAP Help for more detail on
UI Adoptation
Prerequisites
UI Adoptation with KUE( Key user extensibilty) required certain security Roles.
Please make sure to assign security Role SAP_UI_FLEX_KEY_USER to your user id in Fiori Front system.
Please refer
link for more details on enabling Key User Adaptation in the Fiori launchpad.
Steps to be performed
Here are the typical steps needs to be performed for the app extension
- Identification of Gateway service and CDS data Model
- CDS extension for the additional fields.
- Extending the Fiori app using KUE tool & Capture the changes in Transport.
Business Scenario
Let’s consider Business wants to extend Standard Fiori elements-based application ‘Manage RFQ’ at Item Level. Needs to add Inco Term location 1 & Inco Term Location 2 at Item level for RFQ’s and same should be displayed at General information section at Object page.
Requirement
- Additional fields to be displayed at Item's Object Page(second level navigation from main app) which is navigating from List display for the Item ( screen shot below)
- Rearrange few fields in General Information section after clicking this items level details.
- Hide few of the fields in the standard application as Business don’t want to expose those fields to end user directly.
Detailed Technical Explanation
Identify the Location where we want to add those additional field in the highlighted section below.
Navigate to Object Page, Also needs to show those fields in General information section also.
Quickly debug the app from front end and identify the Gateway Service and associated CDS data Model.
Gateway Service is MM_PUR_RFQ_MAINTAIN_SRV and corresponding Item Level Navigation is highlighted below for which, we need to do extension. Open the service to check the navigation for the ltem level.
Get the Item Level CDS from the Parent Consumption CDS.
Extend the CDS C_RFQItemEnhWD with those field. UI annotation can be added if those field needs to be displayed in the List Report.
Clear the metadata cache and Browser cache. Reload the application again.
Open the app via
KUE (Key user extensibility tool) and navigate to Item detail’s object Page.UI Adoptation Buttons will be appreard on the top ( see highlighted section in yellow)
Right click on General Information Section and create Group for extra fields.
Add extended fields in the Newly created Group 'Inco Term Location Detail'.
Save and capture the changes in the Transport and changes can be Transported to further layer.