Skip to Content
Technical Articles

Analysis Tool for Fiori Applications

Dear community,

We created a little tool to check the configuration and the development design of Fiori/UI5 applications. It verifies if the most relevant application files are available and checks if the application related services are active. Finally it displays the collected result in a table.


How to get the tool?

Implement the SAP notes 2549968 and 2553469 or deploy the in the notes’ stated software component. Please read the SAP notes carefully before implementing them since they imply manual activities.
Please implement also SAP note 2603238 to have the latest version of the tool.


How does it work?

Use transaction SE38 and execute report /SDF/FIORI_ANALYSIS. In the input form, you can set following three flags.

  1. Check a single app: Only the application you entered in the input field will be shown. Please use the “Application Name” which is called “Technical Name” in the Fiori App Library.
  2. Test also the application’s OData service.
  3. Show the user IDs in the table fields “Last changed by” and “Created by”.

Then click on the RUN button to display the results:


Understanding the table

Only data which could be collected are shown. If some of the cells are empty just means that the data couldn’t be retrieved. This is not an error.

Column Name Description Problem Resolution


Green – the app has been developed and configured correctly to be used on the Fiori Launchpad

Yellow – the app has been developed correctly but is not yet configured for use

Red – the app has not been developed correctly or is not active

Check in SE80 if the application contains a Component.js file which includes a metadata declaration. Moreover, the ICF service of the application should be active and an active OData service should be used.
Application Name Technical name of the UI5 (Fiori) application  
Transported Application has been transported to another system  
Development Class of Service Name of the transport package  
Software component The service’s software component if it can be read  
SAP Release Release number of the software component  
Business Server Page Text Application description  
BSP ICF Service Active


Green – the app has been developed following the Fiori design guidelines and configured correctly to be used in the Fiori Launchpad

Yellow – the app has been developed following the Fiori design guidelines but is not yet configured for use

Red – the app has not been developed following the Fiori design guidelines or is not active

1. Activate the ICF service
2. The app name should not start with an “/”
3. The service should reside in directory /sap/bc/ui5_ui5/sap/
ID/Namespace The app’s ID or namespace read from the Component.js file  
Current Application Version App version read from the Component.js file  
Last changed on Date when the file has been changed the last time  
Last changed by User when the file has been changed the last time  
Index.html “X” if the file Index.html exists, empty if not.  
Component.js “X” if the file Component.js exists, empty if not.  
Component-preload.js “X” if the app includes the file Component-preload.js, empty if not.  
Metadata Rating:
Green – metadata is declared in the manifest.json
Yellow – metadata is declared in the Component.js
Red – no metadata declaration
Declare the metadata in the manifest.json file
OData URL URL of the application’s OData Service  
OData ICF Service Active


Green – Odata Service is active

Red – Odata Service is inactive

n/a – ICF node of the OData service cannot be found

Register the OData service in transaction /IWFND/MAINT_SERVICE
System Alias(es) Assigned system alias(es)  
HTTP Response Code

HTTP response code of the OData metadata call.

The HTTP response codes are explained in this SAP blog.

Check if correct backend SW component is installed. Check the RFC connection, user authorizations, and ICF service activation
Min. UI5 Version

Displays the minimum SAPUI5 version specified in the manifest.json file.

A developer can also refer to the installed SAPUI5 version. You will see then “${sap.ui5.dist.” in the cell

Used SAPUI5 Libraries The field shows the SAPUI5 sub libraries used by the application.
# .js Files

Amount of Java Script files within the application which are not one of the following:

Component-preload.js, Configuration.js, Component.js or Application.js

# .xml Files Amount of XML files in the application
# .css Files Amount of CSS files in the application
Initial Created On Date when the file has been created.
Initial Created By User who created the file
Vendor “Customer” when the application is a custom app.
“SAP” when it is an SAP standard application



  • Only UI5 applications are checked. Classic applications (Web Dynpro, SAP Gui for HTML) are not considered.
  • The navigation buttons do not work in the input form. They will work when you upgrade to the necessary ST-PI SP level.

Like the tool?

Please help us to improve this tool by leaving comments. Do you miss any information in the result table? Is something not clear? Should we add a specific feature?

You must be Logged on to comment or reply to a post.
  • Hello Michael Albrecht!

    Thanks for the information.

    The installation process went really well and the good news ends here.


    Personally, my first impression is that the tool will not be useful on a daily basis and that it contains a lot of bugs. I will not even mention details about the ABAP development approach taken (a module pool program which could easily be a report). Actually, I must comment something here... why not doing such a tool in Web IDE as an optional plugin?


    It seems to be more useful after an upgrade in a back end system to check all odata services - but I bet that only a metadata call is done in order to check if the service is good. So it does not guarantee anything.


    I must say that the tool is on **very** early stage (it does not even have a transaction code)... but I would like to know more about the direction this tool will take. For me, someone has invented this as an excuse to pratice some 1995 ABAP-style programming. Fair enough. I am in a project using Fiori available in HANA XSA 2.0 and I must say that such Fiori distribution lacks development tools way more than the Fiori available in Netweaver.


    Finally... we are about to enter 2018 and (new) SAP standard code contains stuff like:


     wa_fieldcatalog-fieldname = 'state'.                      "#EC NOTEXT
      wa_fieldcatalog-seltext_s = 'State'(104).
      wa_fieldcatalog-seltext_m = 'App Validation'(004).
      wa_fieldcatalog-seltext_l = 'Application Validation'(005).
      wa_fieldcatalog-icon = 'X'.
      APPEND wa_fieldcatalog TO lt_fieldcatalog.
      CLEAR wa_fieldcatalog.
      wa_fieldcatalog-fieldname = 'appl_name'.                  "#EC NOTEXT
      wa_fieldcatalog-seltext_m = 'App Name'(002).
      wa_fieldcatalog-seltext_l = 'Application Name'(003).
      APPEND wa_fieldcatalog TO lt_fieldcatalog.
      CLEAR wa_fieldcatalog.




    Sorry but I was expecting way more.

  • We have deployed the application on fiori launchpad which is configured on SAP portal. ?

    Fiori launchpad is configured on SAP Portal. In that case how it will work??

    • Hi Kapil,


      not with this report. I would recommend to use following Guided Answer document for performance troubleshooting:


      Best regards, Michael

  • Hi,

    getting error with download. Do you know what the issue is? Is it being maintained currently?



    SAP Note 0002549969 incomplete

    Message no. SCWN106


    SAP Note 0002549969 is incomplete.

    System Response

    This SAP Note cannot be imported.


    Contact SAP Support.


  • /
    • Hi Zalak,


      have you followed exactly the implementation steps which are described in SAP note 2553469?

      1. Implement SAP Note 2549968 with SNOTE.
      2. Afterwards run report /SDF/NOTE_2549968.
      3. Then implement this SAP Note with SNOTE.
      4. As a final step, please run again report /SDF/NOTE_2549968 (it might be necessary to run in several times).

      Maybe de-implement and re-implement it.


      Kind regards, Michael