SAP Fiori / FLP Translations
This blog encapsulates all the translation options available in Fiori / FLP for translation of different objects/texts/messages/services available/used in SAP Fiori(FLP).
To be able to perform the translation, you should have basic knowledge on different concepts(tiles, catalogs, i18n, flp, odata) of SAP Fiori / FLP.
User Id should have the required authorization / roles needed to perform the activities of translations.
There are multiple scenarios where client might ask for localization/translation of various translatable objects of Fiori / FLP. These can be as below:
- Fiori Launchpad (Search Bar, Menu)
- Tile (Title, Subtitle, Catalog Title, Group Title)
- Application (Fields, Labels)
- Messages (Notifications)
- OData (Metadata, Service language)
Each of the above translatable objects have a different translation methods, which i will be covering in parts.
1. Translating Fiori Launchpad (Logon,Search Bar, Menu):
We can translate launchpad and provide a language selection option to users on logon page itself as in below screen.
Before proceeding with enabling the the above option and translation of FLP, we need to ensure that the required translation language package is available via tcode / transaction SMLT.
- To enable language selection at logon go to SICF
- Search for “FLP” (path: sap/bc/ui2)
- Enter edit mode
- Go to Error Pages > Logon Errors > Configuration
- Make sure that language is selected under System Logon Settings>Select display>Language
- Select green checkmark and save.
2. Translating Tile (Title, Subtitle, Catalog Title, Group Title):
Translation of specific group of applications, tiles, catalogs, groups in FLP are handled via transaction SE63 and can also be changed using launchpad designer. I’ll be covering translation using SE63 which is the recommended process.
- Go to SE63 in SAP Gateway system hosting FLP.
- Choose the “Short Texts” button, or “Translation” > “ABAP Objects” > “Short Texts”.
- Expand “00 Meta Objects” > select “TABL Tables (Meta)”.
- Enter the object name *WDY_CONF_USERT2*. This is the one that we use in Fiori.
- Set the source and target languages and select “Edit”.
- Set the “User Scope” to “A” (standard) and use the search help – F4 – on Configuration ID. (you can find the catalog/grp id from *flpd and put search on that)
- Select the configuration ID for your catalog and execute.
- Enter the translations for relevant texts and save. Repeat for the other configuration ID for the desired catalog and for the group
3. Translating Application (Fields, Labels):
Translation of application labels and fields are done using the i18n_xx.properties files used in the fiori applications. Translation in i18n can be done via tcode se80 or using SAP WEB IDE extension project. I will show how to make changes using transaction SE80.
- Go to transaction SE80.
- Open “BSP Application” corresponding to the fiori app.
- Copy it and assign Zxx* as new name.
- In BSP Application inside the “Page Fragments” folder, we can see an “i18n”
- Copy the “i18n.properties” file and give it a new name. The convention here is “i18n/i18n_[iso of the language].properties”.
- Do the translation to the desired language.
- Save and activate the new views.
For translation using SAP WEB IDE go through this link.
4. Translating Messages (Notifications) :
This scenario covers translating the particular application messages the apps deliver. They could be messages that come from the back-end system, or the messages that pop up automatically. This is managed via transaction SE91.
- Go to transaction SE91.
- Insert the message class we want to translate, click on “Display”.
- Choose the message that you want to translate, and “Goto”, “Translation”.
- Set the source and target languages on the pop up and click “Yes”.
- Enter the translations for relevant texts and save.
5. Translating OData (Metadata, Service language) :
OData service translation is not dependent on Launchpad. We have to enable it. This is done in transaction /n/iwfnd/maint_services in your Gateway system.
- Choose the OData service that app is going to execute
- Choose the system alias > go to “Logon and Security” tab.
- Change the back-end language.
- It is important to know that when you select the option, the language that is returned in the application will be whatever the language is for the system alias, irrespective of the local browser language.
6. Transporting Translations: Once Translations in SE63 is done, goto Tcode SLXT – Translation Transport, where you can provide details about the translation to be added to a transport request. As a result a Language transport request will be created.
You need to have authorization object S_TRANSPRT assigned to use this transaction.
Finally we can test our translation for any language by using URL parameter (sap-ui-language).To do so, just append “?sap-language=xx” to your application URL.
Note: After making these changes, make sure you run the report
/UI2/INVALIDATE_GLOBAL_CACHES. This is to avoid inconsistency and load latest changes only.
I have tried to cover all the available translations methods for Fiori & FLP. Feel free to put your suggestions/comments. Always open for a healthy discussion.
Below are few abbreviations used in above content for your reference.
*flpd = fiori launchpad designer
*flp = fiori launchpad
*tcode = transaction code
*i18n = internationalization