I’m part of the SAP S/4HANA Regional Implementation Group who assist customers implementing the latest SAP S/4HANA releases. One of the questions we are asked from time to time is how to override the texts – such as field labels, table and column headings – in delivered SAP Fiori apps. In this blog you will learn how to use in-app Extensibility with the Key User tool Adapt UI to override texts.
So you want to use a SAP Fiori app in SAP S/4HANA, the app fits with your business process, business role and the task… but all that SAP terminology is getting in the way of user adoption. Your users just don’t think in SAP terms. They need the texts adjusted to fit how they think about their work.
You need to override the texts – such as field labels, table and column headings – in the delivered SAP Fiori apps. Typically you might need to do this if:
- You need to override SAP standard terminology with industry terms, e.g. change Product to Article
- You need to override SAP standard terminology with organization-specific terms, e.g. change Old Material Number to Our Company Reference
- You need to add a new language dialect to meet local market standards, e.g. override US English with Australian English.
There are 3 main options for adapting texts for SAP delivered Fiori apps:
- As an authorized business expert or functional lead, using in-app Extensibility with Key User tools
- As a developer, using Classic Extensibility to adapt texts via a Metadata Extension
- As a developer, using Classic Extensibility to adapt texts via a SAPUI5 Extension Project
It’s worth noting that the 3 approaches for adapting texts can be used together in a complementary way depending on the type of app and the texts to be changed. For example you might use Key User tools to adapt the static texts of an app, and a metadata extension to adjust dynamic texts.
IMPORTANT: Regardless of which approaches are used, all changes are made in the Development system and transported through the system landscape to the Production system as per the usual SAP change and transport management process.
In this blog you will learn how you can do this using in-app Extensibility with the Key User tool Adapt UI to override texts. Watch for an upcoming blog where you will find out how to use metadata extensions for texts. If you need this urgently then you will find sufficient information in the SAP Help Portal on Creating a MetaData Extension, on Annotation Propagation, and on Adding Translated Text to a MetaData Extension. And of course SAPUI5 Extension Projects have already been covered in many blogs and in official documentation including the localization concept used for i18n.properties files.
TIP: You can also enable UI Adaptation in your own custom Fiori apps as explained in UI Adaptation at Runtime: Enable your App.
When to Adapt Texts via Key User tools
In-app Extensibility via Key User tools enables business experts, functional leads, and other authorized persons to adapt a Fiori app. Certain changes, such as overriding texts, can be made when you are in the Fiori app itself. This approach is called runtime UI Adaptation. If you are authorized, you can access the Adapt UI option in your Fiori Launchpad Me Area.
You can change static texts using runtime UI Adaptation in Fiori elements apps, and in freestyle Fiori apps that support flexibility services.
In-app Extensibility via Key User tools is the easiest and quickest approach to use when available, e.g. for SAP Fiori apps of application type Fiori elements, and for SAP Fiori apps of application type freestyle Fiori (SAPUI5) apps that support SAPUI5 Flexibility Services.
Dynamic texts, such as the count of items at the top of table, are a bit more involved. And freestyle apps don’t always provide full flexibility. Even with Fiori elements apps, not every text is covered by UI Adaptation – at least not yet (which texts are covered has been growing with new releases of SAP S/4HANA and SAP S/4HANA Cloud). Where UI Adaptation cannot be used, in SAP S/4HANA a classic extensibility approach may also be needed, depending on which texts you need to adjust.
TIP: Check the App detail in the Fiori Apps Library to find the application type. The Application Type field tells you what framework was used to build the app and you can then quickly determine which extension options are likely to be available.
Classic Extensibility can be used as a fallback approach when In-app Extensibility is not available or doesn’t provide access to change all the texts you need to adjust, e.g.:
- You might need to use a Metadata Extension to override dynamic texts of a SAP Fiori elements app
- You might need to use a SAPUI5 Extension Project to override texts of a freestyle SAPUI5 apps.
Options for extending SAP Fiori apps are explained in more detail in the SAP Guided Answer on How to extend a SAP Fiori app in SAP S/4HANA.
Prerequisites for Adapting Texts via Key User tools
There are 3 prerequisites:
- The Adaptation Transport Organizer must be configured
- Optionally (and recommended) a workbench transport request can be created and assigned to the user to collate their changes
- The user must be authorized to perform UI Adaptation at runtime
As an administrator you control in-app extensibility transports via the Adaptation Transport Organizer. You can also use the Fiori app Extensibility Inventory to monitor and act on Key User extensions created by others.
You use Transaction S_ATO_SETUP to set up the Adaptation Transport Organizer in the Development system. Here you can control the transports, e.g. assign a namespace or prefix to all changes.
More information on Configuring Adaptation Transport Organizer can be found in the SAP Help.
TIP: You will also find some additional details in SAP Note 2283716 – S/4HANA Key User Application is not configured
The user who will perform the changes is recommended to be assigned to a workbench transport request. You can create a workbench request and assign it to the relevant key user in transaction SE01.
NOTE: Alternatively changes can be saved to a Local Object. However if the changes are to be transported, as an administrator you will need to reassign them later to a workbench transport request. Reassigning objects from Local Objects to is more effort, so you are recommended to create a transport request up front.
The user id that will perform the changes must be authorized to make UI Adaptations. You authorize a key user by assigning them the security role SAP_UI_FLEX_KEY_USER in the security role maintenance transaction PFCG.
Process for Adapting Texts via UI Adaptation at runtime
You start by logging on to the Fiori Launchpad in the master language that you want to make your changes.
Navigate to the App that you want to change, e.g. using the Home Page tiles, or the App Finder.
The following examples are shown using the Fiori app Product Master / Manage Products
Once you are in the app, navigate to the screen that holds the texts that you want to change.
Open the Me Area and press the Adapt UI icon. Remember you will only see this button if you are authorized to perform UI Adaptation as explained in the prerequisites section.
The app will open UI Adaptation mode.
TIP: If you need to navigate within the app to get to the text you need to change, simply swap to Navigation mode (click on the Navigation button at the top of the screen). E.g. You might need to select a row to get a button to activate so that you can change the text of the button. Once you have reached the text you need to change, swap back to UI Adaptation mode (click on the UI Adaptation button at the top of the screen) ready to change the texts.
Which texts you can change depends on your SAP S/4HANA (or SAP S/4HANA Cloud) version. In SAP S/4HANA 1709 you can change:
- Table Headings
- Column Headings
- Group labels
- Field labels
TIP: You can also make other changes as well in UI Adaptation mode depending on your SAP S/4HANA version. In SAP S/4HANA 1709 you can:
- change the sequence in which buttons are arranged in a toolbar
- hide tables
- hide thumbnail images
- hide header groups
- add/hide sections
- add/hide groups (within a section)
- add/hide fields (within a group or section)
- change the order of fields, field groups, and sections
While you are in UI Adaptation mode, select and overtype the text you want to change.
Once you have finished making your changes press Publish to save those changes.
When you publish you will then be asked to assign your changes to your Transport Request. Use the dropdown on the Transport field to find suitable transport requests you can use, and then just press Ok to confirm.
TIP: You can also use the option Local Object if your administrator will take charge of reassigning your changes to a transport request. This is more work for the administrator so it’s worth asking them for a transport request before you start. The transport request is a Workbench Request (i.e. cross-client). Technically the transport objects are of object type LRCD (LRepository Client-Dependent content).
IMPORTANT: *** DO NOT ATTEMPT to do multiple screens at once ***
Each screen has its own set of texts, and each screen may technically be a different app. Fiori navigation is intentionally seamless which means as a user it can be difficult to tell if the current screen is from the same or a different app).
Use the Exit button (in the top right hand corner next to the Publish button) to exit UI Adaptation mode between screens. Navigate to the screen and text you need to change, then use the Adapt UI icon in the Me Area to open the current screen in UI Adaptation mode.
Repeat the process of overtyping texts. You can make any other UI Adaptation changes at the same time. In the example below as well as changing texts, you can see that the following changes have been made:
- added a new field group called Admin Data
- moved some fields into the Admin Data field group
- hidden a field called Authorization Group
- added a field Net Weight.
Finish by publishing the screen and save it to your transport request just as you did previously.
TIP: If you change your mind or make a mistake, you can always use the Reset button (next to the Publish button) to set the screen back to the original texts. You can use the Reset button at any time to reset the changes of the current screen – even after you have published your changes!
Once you are finished all you need to do is let your administrator know that your changes are ready to be transported.
IMPORTANT: If you are working in multiple languages, you might need to translate these texts as well. You will notice that after changing the texts that your adapted texts have changed all languages. You can see this by logging in as the same user in a different language (in the examples you can see German).
TIP: You can find more on UI Adaptation in the SAP Help Portal in the User Guide for SAP Fiori Launchpad in the section Adapting Fiori Apps at Runtime > Making UI Changes.
You will find more on how to translate these texts in this blog Fiori for S/4HANA – Translating Terminology in SAP Fiori apps via Key User tools.
Becoming a SAP Fiori for SAP S/4HANA guru
You’ll find much more on our SAP Fiori for SAP S/4HANA wiki
Brought to you by the S/4HANA RIG