SAP Netweaver gateway FIORI system performance

SAP netweaver gateway is used to host FIORI apps. Attention must be paid to the generic system performance of the system to avoid FIORI users to complain about performance.

Regular clean up jobs

Run program /IWFND/R_SM_CLEANUP in batch to clean up the application log. See note 2499354 – Report /IWFND/R_SM_CLEANUP. You can run with clean up scenario * for all, or select a specific scenario:

/IWFND/CLEANUP_APPSLOG will clean up the application log.

/IWFND/SUPPORT_UTILITIES will clean up support utilities.

See more on periodic tasks on help.sap.com.

See OSS note 2620821 – Periodical jobs and corresponding reports to also run programs /IWBEP/SUTIL_CLEANUP and /IWBEP/R_CLEAN_UP_QRL regularly (daily).

Run report /UI2/PERS_EXPIRED_DELETE weekly to clean up old personalization data (see note 2031444 – Cleanup of expired Fiori personalization data on the frontend server).

Cache settings

Metadata cache settings

In customizing go to this path:

Setting should look like following in a productive system:

In a development system you should de-activate this cache.

HTTP/2 usage

Check if you have enabled HTTP/2 already. If not, activate it. See this blog.

Log level settings

In a productive system you can reduce data footprint and improve performance by reducing the log level settings. Only in case of issues, you can increase the log levels again.

To avoid excessive SLG1 logging of type “MESSAGE_TEXT”, make sure to apply solution from OSS note 3247600 – Fiori: /IWFND/MED170 – No service found for namespace ‘/IWBEP/’, name ‘MESSAGE_TEXT’, version ‘0001’.

Gateway error log

Go to transaction /n/IWFND/ERROR_LOG. Now select menu Error Log/Global Configuration. Now the configuration opens:

Set the Error log level in production to Secure. And check the days to realistic dates (settings above in the screen shot are per SAP advice).

Backend error log

Go to transaction /n/IWBEP/ERROR_LOG. Now select menu Error Log/Global Configuration. Now the configuration opens:

Set the Error log level in production to Secure. And check the days to realistic dates (settings above in the screen shot are per SAP advice).

Metering

Make sure you don’t keep all metering data too long. You can aggregate and delete it. See this blog.

Check search settings

Check your FIORI search settings. The setup of search is described in this blog and is very powerful. But search might not be needed at all, or most users want only to search for apps:

See note 2871580 – SAP Fiori Launchpad Settings: new Parameters for Enterprise Search for the settings to optimize, and SAP blog on explanation of the settings.

See note 2885249 – How to disable Enterprise Search in Fiori Launchpad to disable the enterprise search part.

See note 2051156 – Deactivation of search in SAP Fiori launchpad for deactivation.

Amount of tiles assigned to the user

The amount of tiles assigned to a user has a big impact on performance. Try to reduce the amount of tiles assigned to the user as minimal as possible.

See OSS notes 2829773 – Fiori Launchpad performance with a large volume of Tiles and 2421371 – Understanding Launchpad performance Issues.

Tables that are growing

Specific notes and solutions for tables that are growing fast in a netweaver gateway system:

Sizing

This should be simple one, but it isn’t. Sizing of Netweaver Gateway should not be done based on day or week average. Determine your peak times. And at those peak times check the CPU and memory load. If you take averages that include weekend and night, then system sizing might be totally fine. But to avoid complaints, you must be able to handle the peak load.

Full checklist

SAP has a checklist called “SAP Fiori launchpad best practice verification checklist”. Follow this link for the document.

Good other blog with checklist: follow this link.

Test slow network speed for FIORI and web developments

If you are working with users across the globe you will be faced with performance complaints for your FIORI apps and web developments.

To analyze these user complaints you need to throttle you network speed so it is behaving like a far way computer:

  • Lower bandwidth
  • Higher ping response times

The applications you develop close to the server on fast network can become very sluggish when used by distant users. It is your job as developer to analyze this issues and to improve your design to have less roundtrips.

Network throttling in Chrome

The full details of Chrome network throttling can be found here.

Short instruction:

  1. Open the developer tools with F12 and go to the Network settings

2. Select the No throttling and create a new profile:

3. Now select your profile:

Enjoy the new end user experience. Don’t forget to switch back to your normal speed!

FIORI app support

FIORI app support is a nice tool. With the tool, you can get support on app issues.

The tool can help with:

  • Getting specific version information for a FIORI app
  • Checking if the SICF services are active
  • Checking if the ODATA services are active
  • Checking for authorization errors

This blog will explain these topics and will explain how the setup of the function works.

How to use the FIORI app support

In any FIORI app (not the main launchpad), click on your person icon:

And open the app support from the menu:

Now the app support screen will first open with the version information:

Clicking on Front end server shows the front end server status for this app:

In this case you can already see there are issues with the backend:

You can download the logs by pressing the Download Logs button:

By clicking on all the checks and logs, you can quickly detect where any issue of the FIORI application might be.

How to setup the FIORI app support

FIORI app support needs to be setup. First activate these 2 SICF services;

  • /default_host/sap/bc/bsp/sap/sui_flp_app_sup
  • /default_host/sap/bc/ui5_ui5/sap/sui_flp_app_sup

And activate this ODATA service: sui_flp_app_sup_srv.

Start transaction /UI2/FLP_CONF_DEF to check this entry is present (and if not present, create it):

Now use transaction /UI2/FLP_CUS_CONF to check that this entry is set to active. If not, create the entry and set it to active:

Another option is via business catalog.

For both methods: read the SAP help file.

SAP references and OSS notes

SAP blog on FIORI app support: link.

Help file on App support: link.

Setting FIORI gateway time-out and time-out warning

FIORI user use the browser. For security it is important that the browser session has a limited life time. The end user is normally annoyed by this, since when he clicks after a long time, the user gets a server error, which is difficult to understand.

This blog explains how to set up a more user friendly time-out and warning for the FIORI pages.

Questions that will be answered in this blog are:

  • How can I set a time-out for my FIORI tiles?
  • How can I set a warning time for the end users that their FIORI session is about to time-out?
  • Can I limit the amount of FIORI sessions?

Time-out settings for FIORI

Start transaction /UI2/FLP_SYS_CONF and enter values for these 2 parameters: SESSION_TIMEOUT_INTERVAL_IN_MINUTES and SESSION_TIMEOUT_REMINDER_IN_MINUTES:

Give these the values that are good for your company and press Save.

OSS note 2955208 – How to set automatic Fiori Launchpad Sign-Out explains also there is a server logout possible.

This function is available as of SAP_UI 7.54 version (see OSS note 3248472 – Why is it not possible to limit browser Fiori sessions?).

Time-out for end user

The end result for the end user is a more graceful warning and choice to continue or log out:

Read OSS note 3034757 – Fiori session timeout setting SESSION_TIMEOUT_INTERVAL_IN_MINUTES does not appear to work accurately to see which actions cause the timer reset.

Limiting amount of sessions

Limiting amount of browser sessions and FIORI sessions per user is not possible. See OSS note 3248472 – Why is it not possible to limit browser Fiori sessions?.

SAP netweaver gateway FIORI user measurement and usage

SAP FIORI is used more and more. In some cases you need information about how much the FIORI tiles are actually used.

This might be interesting for IT management, but also for license measurement.

SAP background blog can be found here.

Listing users that have used SAP FIORI gateway

Weird but true, SAP does not out-of-the-box delivers a program to list the users that are using SAP FIORI. Install the Z program delivered in OSS note 2446887 – How to get a list of users that have used SAP Gateway to get this report.

FIORI metering

SAP netweaver gateway comes with an onboard set of metering transactions and programs. These are unfortunately not widely known. Background OSS note is 2237375 – SAP Netweaver Gateway Metering FAQ.

Program /IWFND/R_METERING_VIEW can be used to view the metering data for FIORI ODATA calls:

This measures which calls are made, duration of the calls, size of the calls, user that made the call, browser type from which the call came, etc.

Report /IWFND/R_METERING_AGGREGATE is used to aggregate this data. /IWFND/R_METERING_DELETE can be used to delete old data.

User measurement on FIORI

User measurement program USMM is firing function module /IWFND/METERING_AUDIT to retrieve information about usage of FIORI in your system.

FIORI App Recommendations

SAP has a tool called FIORI app recommendations to give you a view on potential FIORI apps you might be able to use. The source is the ST03 usage data from your system.

Questions that will be answered in this blog are:

  • How to run the FIORI app recommendation tool?
  • How to feed it with the ST03 data?
  • How to view the results of the FIORI app recommendation tool?

Running the analysis

Goto the Fiori Reference Library. There you will find a button to go to the FIORI app recommendations tool:

Create a new analysis:

In step 2 you need to upload the ST03 usage profile in CSV format. This is described in this SAP help file. So first create the file (in short, goto ST03, select last month, transaction profile standard, download to xls, remove header and save as CSV), then upload it in this step:

Upload front end and backend profile (in case on S4HANA embedded FIORI these are identical):

Name the analysis in step 4 and press the button to get to the analysis results:

Viewing the results

In step 1 above now select view results:

Background information

More background can be found in OSS note 2696033 – How to Generate SAP Fiori App Recommendations.

FIORI app for monitoring data archiving jobs

SAP has delivered diverse apps for basis administrators.

This blog will explain about the data archiving batch job monitoring FIORI app.

For generic data archiving technical setup: read this blog.

Activating the app for monitoring data archiving jobs

The full activation manual is published on the FIORI reference library.

Short manual:

  • Activate SICF service bas_ilm_jobmon
  • Activate ODATA service ILM_JOB_MONITOR_SERVICE
  • Manually add the tile in your catalog (use edit home page and than add the app)

Using the app display data archiving jobs

The main FIORI app tile will already show the amount of failed jobs:

When you open the app the overview screen comes:

On the left hand side you can choose the archiving object. On the right hand side you can see the last archiving jobs for the selected object.

When you click on a job, you can see the details per job:

There are tabs for the job results, job log details and application log.

Bug fix notes

Bug fix OSS notes:

FIORI app for display mail transmissions

SAP has delivered diverse apps for basis administrators.

This blog will explain about the display email transmissions FIORI app.

Activating the app display email transmissions

The full activation manual is published on the FIORI reference library.

Short manual:

  • Activate SICF service nw_aps_om_eq
  • Activate ODATA service APS_OM_EMAIL_QUEUE_SRV
  • Manually add the tile in your catalog (use edit home page and than add the app)

Using the app display email transmissions

The main FIORI app tile will already show the amount of email transmission errors today:

By clicking the tile you reach the overview screen

By clicking the line you get details plus hints on the possible issue:

Transport set up for FIORI in app extensibility

In the previous blog we explained how to execute in app extensibility for an out-of-the-box FIORI app. This blog will explain how to transport the changes done.

Questions that will be answered in this blog are:

  • What setup do I need to do for transporting the in app flexibility content?
  • How to activate the needed apps for transporting in app flexibility content?
  • How to use the needed apps for transporting in app flexibility content?

Initial setup

To set up the transport mechanism for in app extensibility start transaction S_ATO_SETUP:

These are packages used to only store the data for the key user.

For the final transport, create in SE80 once a final package, for example ZKUFLEX:

Background explanation on this transaction is present in OSS note 2807979 – Information to setup Adaptation Transport Organizer for S/4HANA On Premise system via S_ATO_SETUP.

FIORI apps activation for transports of key user flexibility content


Activate the FIORI app Configure Configure Software Packages. Full instructions are available on the FIORI reference library.
Short summary:

  • Activate SICF services: NW_APS_ATO_CONF, NW_APS_ATO_LIB and NW_APS_LIB
  • Activate ODATA service: APS_EXT_ATO_PK_CFG_SRV
  • Acitvate PFCG roleSAP_NW_APS_EXT_ATO_PK_CFG_APP and assign to your user

Activate the FIORI app Register Extensions for transport. Full instructions are available on the FIORI reference library.
Short summary:

  • Activate SICF services: NW_APS_ATO_REGI, NW_APS_ATO_LIB and NW_APS_LIB
  • Activate ODATA service: APS_EXT_ATO_PK_AI_SRV
  • Activate PFCG role SAP_NW_APS_EXT_ATO_PK_AI_APP and assign to your user

Use of FIORI apps for transports of key user flexibility content

Add the apps to on the FIORI launchpad:

In the app Configure Software Packages add your permanent package you created in SE80:

Also assign a transport request here.

Now you can use the Register Extensions for Transport app to assign you extension to the package and transport:

Select the field and press the button Reassign to Package.

SAP references

Excellent overview blog can be found here.

SAP full help reference can be found here.

Bug fix OSS notes

3282241 – Enhancement of consistency check in S_ATO_SETUP

FIORI in app extensibility

The new generation of standard SAP FIORI apps can be easily be modified in layout and small extensions. This is called FIORI in app extensibility.

Questions that will be answered in this blog are:

  • How can I easily change the layout of a standard SAP FIORI app?
  • How can I hide fields or rename labels of a standard SAP FIORI app?
  • How can I extend a standard SAP FIORI app with a custom field?
  • Where can I find more background information on all possibilities for in app extension?
  • How do I technically enable in app extensibility?
  • How to enable in app extensibility transports?

Technical enabling of in app extensibility

Activate this SICF node: /default_host/sap/bc/lrep.

And assign authorization role SAP_UI_FLEX_KEY_USER to your user. Without the role, you will not get the needed menu item.

Cosmetic UI changes

We will use the app manage purchase requisitions as example. Go into the app and select a purchase requisition. At the point in time we want to make changes, we go to the Adapt UI menu option in the personal menu:

The Adapt UI screen will now open:

For example we will remove the block Batch. Select is and push the minus button to remove:

We do the same with Material supplier number.

And we want to change the location of the Desired vendor element: we use drag and drop to move it.

And we want to change the label Plant into the word Factory:

When we are done we publish the changes by hitting the Publish button:

Upon publishing the system will ask for a transport number to store the changes.

Best practice is to do the changes on development system and transport them (for the setup see below). Do not maintain UI changes directly on production.

Adding fields to the UI

We also want to add a new field to the UI. Select the block where you want to add a field and select the + symbol:

You can now add a field from the existing filed from the available business context:

Press Ok to add it.

If you want a new field, click on the + icon in the available fields. You are now redirected to the custom fields app:

Select the Plus icon now to create a new field:

As example we create a checkbox with title “Rush indicator”.

Choose Create and Publish. On the custom fields page, enable it for the correct apps:

Publish the changes.

Before you can use the field: please reload the app you were extending (server and UI definitions are out of sync).

Now go back into UI adaption mode and you are able to select the new field:

You can Publish now. New field is available for now for the users.

Data storage

In case you were wondering where this data field is stored: it is stored in the S4HANA database.

In SE11 for table EBAN (purchase requisitions), you can see a new extend with the new field:

For different objects different tables are present. You need functional/technical SAP background knowledge to know the exact table.

Setting up the transport mechanism

To set up the transport mechanism for in app extensibility read this dedicated blog.

In short: transaction S_ATO_SETUP:

Set you packages and setup. Then activate and use the FIORI apps for transporting key user adaptation content.

Background references

References:

  • SAP wiki on FIORI in app extensibility
  • SAP presentation on FIORI in app extensibility
  • SAP help on in app extensibility for making simple UI changes
  • SAP help on custom fields and logic
  • Example blog on extending customer master FIORI app