SAP Fiori for SAP S/4HANA – Calling GUI & Web Dynpro ABAP without opening a new tab
Latest Update 8th April 2020: My colleague Peter Nechala gives a breakdown and some example benchmarks showing why these settings improve performance in Improve Performance via SAP Fiori launchpad configuration in SAP Fiori for SAP S/4HANA
Latest Update 22nd August, 2019: Added related performance improvements – benchmarked at saving around 1.5 seconds per transaction! See the Addendum: Performance benefits of inplace mode.
Latest Update: Addendum added on how to open a specific app in explace as a user
It can be a lot of fun to get your hands on a new release of software and try out new possibilities! Some of the happy additions to SAP S/4HANA 1809 (SAPUI5 1.56) include a much easier way to configure Fiori Launchpad, and some new options for smoothing the user experience, such as a way to avoid opening a new tab whenever you call a classic app (i.e. a SAP GUI transaction or Web Dynpro for ABAP application). In this blog you will learn how to take advantage of both of these new options.
Prior to SAP S/4HANA 1809 , one of the less agreeable parts of the SAP S/4HANA User Experience for some users was the proliferation of web browser tabs and windows whenever you used classic apps, i.e. SAP GUI for HTML transactions and Web Dynpro for ABAP applications, alongside SAP Fiori apps and the Fiori launchpad. This was due to a navigation technique known as explace navigation. In SAP S/4HANA 1709 you could avoid this behaviour for Web Dynpro for ABAP applications only. Starting with SAP S/4HANA 1809, you can avoid this behaviour altogether, by configuring certain Fiori launchpad parameters to swap to inplace navigation – i.e. opening the classic app in the Fiori content area, just like a SAP Fiori app.
IMPORTANT: Using inplace mode also brings a significant performance improvement of around 1.5 seconds per transaction launched, especially when combined with the GUI Stateful Session mode. See the Addendum: Performance benefits of inplace mode.
Learning how to do this will also give you the opportunity to explore the new way of setting Fiori launchpad parameters in an ABAP configuration table provided as of SAP S/4HANA 1809.
To do this you will need to understand:
- Explace vs inplace navigation
- Where to find Fiori launchpad parameters and their values
- How to use the new Fiori launchpad configuration approach
- What to watch when testing the new approach
The good news is it’s quite easy to do this. It will probably take you longer to read this blog than to make the change.
Some of the previously available options for setting Fiori launchpad parameters have now been deprecated as of SAP S/4HANA 1809 and should not be used anymore.
- Setting parameters in a Launchpad Configuration File – deprecated
- Setting parameters in the FioriLaunchpad.html file – deprecated
You will find the deprecation confirmed in the Fiori Launchpad Administration Guide in section Configuring the Launchpad subsection Alternative Ways of Setting Parameters.
Explace vs inplace navigation
Explace navigation simply means that whenever you navigate to a classic app it opens in a new browser window or tab. Classic apps include SAP GUI for HTML transactions and Web Dynpro for ABAP applications. This includes navigation from a tile or from within a Fiori app.
You can see how this works in this brief example. Here you see a screenshot from a SAP S/4HANA 1809 Fully Activated Appliance trial system. You are logged on with a provided demo user (any demo user will do). When you select a tile, button, or link that launches a classic app, a new tab is opened.
TIP: If you need to confirm whether an app is a GUI transaction or Web Dynpro for ABAP application just use the About Icon in the Me Area as explained in Fiori for S/4HANA – Finding the technical Name of an app Or you can also read the launchpad url parameters once you open the app – the keyword sap-ui-tech-hint should tell you if its WDA or GUI.
In the new tab you see the GUI transaction displayed within the Fiori shell and with the Fiori Visual Theme applied.
Once you finish what you are doing with this transaction, you might press the Home icon to return to the launchpad. This will close the transaction normally. Here you might see a standard data loss protection warning if you have entered some data before pressing Home.
If you answer Ok to get past the warning, you now have 2 web browser tabs with 2 home pages and need to manually close the 2nd tab.
In most previous versions of SAP S/4HANA explace was the only option available for classic apps. This was due to some technical restrictions around use of the SAP Fiori shell with these classic technologies.
The user experience problem with the explace approach is the user has to be careful to close windows/tabs when they have finished using the app. If you open a few different apps you can end up with a confusingly large number of tabs. Since each tab gives access to the Fiori shell you can also use the Home icon to return to the home page which opens in that same browser window/tab. This can quickly result in multiple tabs showing the Fiori launchpad in multiple states. If you have too many users with lots of tabs and apps open at the same time can contribute to performance degradation, and other side effects.
Explace navigation can also give users the impression of a slow system. With explace navigation, everytime a new tab is opened for a GUI transaction the browser needs to reload the NWBC runtime libraries required by SAP GUI for HTML. With inplace navigation runtime libraries are loaded only once.
Inplace navigation simply means that when you navigate to an app it opens in the current browser window and tab. This is always the behaviour for Fiori apps.
With SAP S/4HANA 1809, all classic apps can use the inplace option as well. For older releases, it is possible to use inplace navigation for Web Dynpro for ABAP applications only in SAP S/4HANA 1709. Inplace navigation for classic apps is not available at all for SAP S/4HANA 1610 or earlier.
NOTE: There are a few exception scenarios that still use explace navigation even when inplace navigation is in place. When users navigate to Web Dynpro ABAP applications or SAP GUI transactions through:
- links in Notifications,
- in the Me Area, or
- via intent-based navigation triggered by Web Dynpro ABAP applications
Where to find Fiori launchpad parameters and their values
You can find the Fiori launchpad parameters relevant to your SAP S/4HANA release in the SAP Fiori Launchpad Administration Guide in the SAP Help Portal.
You will find a table listing all the parameters in the section Configuring the Launchpad and subsection Launchpad Configuration Parameters.
There are quite a lot of parameters now available so you will either need to scroll to each page or use the Show <x> entries option to adjust the number of entries shown. You can also search for a specific parameter if you know it already. You will find all of these options just above the table.
The simplest option is to search on keyword INPLACE (or inplace – the search is not case sensitive) and you will find the parameters with short key NAVIGATION_GUI_INPLACE and NAVIGATION_WDA_INPLACE. It’s this short key you will need to use the new Fiori launchpad configuration approach.
How to use the new Fiori launchpad configuration approach
The new Fiori launchpad configuration approach uses an ABAP configuration maintenance view to set the parameters. This change is intended to be made by an administrator. The change is accessed via 2 transactions depending on your scope of change:
- Use transaction /UI2/FLP_CUS_CONF to change FLP Configuration parameters in current client only
- Use transaction /UI2/FLP_SYS_CONF to change the FLP Configuration parameters system-wide
Changes to the tables can be transported to other clients/systems using ABAP customizing request or workbench request respectively.
One of the advantages of using this new approach is the ease of changing these settings so you can: try out the new navigation temporarily; test it out to understand the difference; and change it back again until you have a decision on which way forward. This can give you the time to discuss the pros and cons for of changing the navigation with your business stakeholders & other interested parties. Your organizational change management and support teams might also need to prepare some communications to explain the change to users before you implement it in your productive system.
TIP: One possible disadvantage of this new configuration approach is that the settings apply to all users. If you want to apply Fiori launchpad configuration parameters to only selected users, then use the alternate option for Setting Parameters in a Target Mapping. You can then assign the target mappings to the user’s security roles. Most customers use a mix of setting parameters for all users and setting parameters for selected users only.
You can experience the new Fiori launchpad configuration approach by logging on to SAP GUI as an administrator (e.g. using SAP Logon) and going to transaction /UI2/FLP_CUS_CONF. By default the table is empty, i.e. SAP default values are applied to all launchpad parameters. You only need to maintain parameters you want to override.
Toggle the Change/Display icon to go into Change mode. You will see the title changes from Display View “FLP Configuration”: Overview to Change View “FLP Configuration”: Overview. Then press New Entries to add a parameter.
Use the dropdown on the FLP Property ID field to find the short keys NAVIGATION_GUI_INPLACE and NAVIGATION_WDA_INPLACE. Create an entry for each short key.
Press ENTER to get the Description, type and current Property Value defaulted into the table.
Now you can change the Property Value to any other value supported for this parameter, as previously advised in the Fiori Launchpad Parameters.
For these inplace parameters the only values are true or false. You can set both to true. Finally press the Save icon to save your values.
You can find out more about the new approach in the SAP Fiori Launchpad Administration Guide in the SAP Help Portal. Look for the section Configuring the Launchpad and subsection Setting Parameters in SAP Fiori Customizing
There are also a few related SAP Notes worth reading:
Testing inplace navigation
Once you have saved your changes in the table, simply refresh your Web Browser and your changes are immediately applied.
Go back to your Fiori launchpad home page, and reselect the relevant tile or link to launch the classic app. The SAP GUI transaction now opens in place so there is only one tab – no additional browser window/tab is opened.
You should also find the Fiori launchpad features Me Area, Notifications, Back and Home are all available.
For support reasons, if you need to confirm the technical id of the transaction just use the About Icon in the Me Area as explained in Fiori for S/4HANA – Finding the technical Name of an app
- If you are having problems with empty mandatory fields in a GUI transaction locking up the Fiori shell, then check your kernel version is up to date.
- The support component for the inplace navigation is CA-FLP-ABA
- For other Fiori launchpad configuration parameters, use CA-FLP-FE-COR
Addendum: How to explicitly open a specific app explace
Well there is an easy answer for this too. And it comes with your device’s web browser.
When you are on a tile or link, just use your usual web browser context menu commands to “Open Link in New Tab” or “Open Link in New Window”.
And you should find that approach generally works regardless of app type.
Addendum: Performance benefits of inplace mode
Inplace mode has a significant performance benefit for every GUI transaction launched – benchmarked at around 1.5 seconds! This saving is due to not having to rebuild the Fiori Launchpad shell in a new browser tab before opening the GUI transaction.
Further performance improvements for each GUI transaction launched can be achieved by combining inplace mode with parameter GUI NAVIGATION_GUI_STATEFUL_CONTAINER. This parameter ensures that any subsequent navigation to a GUI transaction is a little faster.
My colleague Peter Nechala gives a breakdown and some example benchmarks showing why these settings improve performance in Improve Performance via SAP Fiori launchpad configuration in SAP Fiori for SAP S/4HANA
Find out more in the Fiori Launchpad guide section Improving Navigation Performance for SAP GUI applications.
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