Skip to Content
Personal Insights
Author's profile photo Dilip Kumar Krishnadev Pandey

SAP Fiori Standard App Implementation

Overview

Here we will try to summarize standard Fiori App implementation step by step.

SAP Fiori is a new user experience (UX) for SAP software and applications. It provides a set of applications that are used in regular business functions like work approvals, financial apps, calculation apps and various self-service apps.

SAP Fiori Apps can be accessed on desktops, Mobile or tablets. These are web-based applications hosted on SAP-Fiori server (front-end system) and access business data from SAP-ECC (back-end system).

Please note: In case of SAP-Hana server, Back-end/front-end system is same system.

There are two types of SAP-Fiori app implementations:

  1. Standard Apps
    • Implementation of those business apps, which are released by SAP. These are categorized as Transnational, Fact-sheets and Analytical apps etc.
  2. Customized Apps

Pre-requisites:

  1. SAP ECC Server (Back-end)
  2. SAP Fiori Server (Front-end)
  3. SAP Fiori Launchpad Url:
    • http://<host>:<port>/sap/bc/ui5_ui5/ui2/ushell/shells/abap/FioriLaunchpad.html
  4. SAP Fiori Designer Url:
    • http://<host>:<port>/sap/bc/ui5_ui5/sap/arsrvc_upb_admn/main.html
  5. Important T-codes
    • SrNo T-code Description
      1 SICF  (Path: /sap/bc/ui5_ui5/sap/) UI5 Application Path
      2 SICF  (Path: /sap/opu/odata/sap/) Odata Service Path
      3 /n/iwfnd/maint_service Odata Service Registration
      4 /n/UI2/SEMOBJ_SAP Semantic objects by SAP
      5 /n/iwfnd/error_log Error Log
      6 LPD_CUST Launchpad Role
      7 PFCG PFCG Role

 

Standard SAP Fiori App implementation steps:

Source of App Implementation Details:

Each standard Fiori app consist of below components:

  1. Software Components
    • Back-End Software Components
    • Front-End Software Components
  2. Back-End Components
    • Odata Service
    • Back-End Authorization Role (PFCG)
  3. Front-End Components
    • SAP UI5 Application
    • Odata Service Registration
    • Business Catalog
      1. Tile
      2. Target Mapping
      3. Semantic Object
      4. Launchpad Role
    • Business Group
    • Front-End Business Role (PFCG)
  • Relationship between Front-end components can be understood with help of below image:

 

Example: App Implementation: “Approve Purchase Order”

Lets take an example of standard App Implementation: “Approve Purchase Order”

  1. Get Component details from below implementation link of app “Approve Purchase Order”
    • https://fioriappslibrary.hana.ondemand.com/sap/fix/externalViewer/index.html#/detail/Apps(‘F0402’)/W13
    • or if older version required
    • https://help.sap.com/fiori_bs2013/helpdata/en/57/7F3C52C638B610E10000000A44176D/frameset.htm
    • As per older version reference, below objects found, which needs to be configured in respective systems:
    • Component-Name Technical Name System
      1 Front-End Software Cmp UIX01EAP 100 (0008 ) Front-end
      2 Back-End Software Cmp GBAPP002 600 (0010 ) Back-end
      3 SAP UI5 Application MM_PO_APV Front-end
      4 OData Service GBAPP_POAPPROVAL Back-end
      5 PFCG Role SAP_MM_PO_APV_APP Back-end
      6 Business Catalog SAP_MM_BC_BUYER_X1 Front-end
      7 Business Group SAP_MM_BCG_BUYER_X1 Front-end
  2. Software Component installation

    • Get front-end/back-end software component details of app and take help of Basis team to install in respective system
    • Post-installation cross check software component availability in respective system:
      • Go to SAP Logged in main page -> Menu ‘System’ -> ‘Status’ -> ‘SAP System Data’ -> ‘Product Version’ click on button ‘Component’ -> Check Component
  3. Enable App for Access in SAP Fiori Launchpad

    • Front-End Server: Activate ICF Services

      • Activate SAP UI5 Application
        • T-code: SICF
        • Path:     /sap/bc/ui5_ui5/sap/mm_po_apv
      • Activate Odata Service
        • T-code:  SICF
        • Path:     /sap/opu/odata/sap/gbapp_poapproval/
      • Go to respective paths -> right click -> Activate
    • Front-End Server: Register Odata Service

      • Pre-requisites: System Alias Maintainance
        • In SAP-Fiori (Front-End) System, configure ‘system alias‘ Alias for SAP-ECC (Back-End) System.
          • Go to T-code ‘SPRO’ -> ‘SAP Reference IMG’ -> SAP Customizing Implementation Guide -> SAP NetWeaver -> SAP Gateway -> OData Channel -> Configuration -> Connection Settings -> SAP Gateway to SAP System -> Manage SAP System Aliases
          • Enter RFC-Destination and check boxes ‘Local GW’ & ‘For Local App’ should be unchecked
          • RFC-Destination should have enabled ‘Current-User’ logon settings
      • Odata Service registration:
        • T-Code:  /n/iwfnd/maint_service
        • Steps to register:
          • Go to above t-code -> click on button ‘Add Service’ ->
          • in next window select Back-end system alias -> click on display button ‘Get Service’
          • To add service, select service row from grid -> click on button ‘Add Selected Service’
          • Next One pop-up comes, where select package as $TMP -> click ok
        • Once service gets registered, we can see it in registered service list of t-code ‘/n/iwfnd/maint_service’ havine zprefix in name as ‘ZGBAPP_POAPPROVAL’
    • Front-End Server: Fiori Designer object verification
      • Go to Fiori Desginer url
        • http://<host>:<port>/sap/bc/ui5_ui5/sap/arsrvc_upb_admn/main.html
      • Checking Business Catalog, Tile and Target Mapping
        • Check availability of ‘Business Catalog and Tile ‘Approve Purchase Orders’
        • Click on Tile ”Approve Purchase Orders’,
        • next window has configured semantic object as ‘PurchaseOrder‘ with action ‘approve
        • Target Mapping’
        • click Tab icon ‘Target Mapping’ -> select entry with semantic object ‘PurchaseOrder‘ and action ‘approve’
        • Click on status bar button ‘Configure‘ to view configured details in selected target mapping
        • Here we can see configured Launchpad Role ‘UIX01MM’ having alias ‘ApprovePurchaseOrders’
    • Checking Launchpad Role
      • we can verify from SAP-Fiori’s t-code LPD_CUST
      • As we can seen UI5 Application path in abaove screen
      • Thus we can summarize, how objects linking as:
      • Business Catalog -> Tile -> Semantic Object -> Target Mapping -> Launchpad Role -> UI5 Application
    • Checking Semantic Object
      • Semantic Object availability can be check in front-end server t-code ‘/UI2/SEMOBJ_SAP ‘
  1. Role assignment to user-id

    • Back-End Authorization Role
      • In sap-ecc assign role ‘SAP_MM_PO_APV_APP’ to user-id for e.g. ‘user1’
    • Front-End Authorization Role
      • Here user-id ‘user1’ will have access to two PFCG role, which are:
        1. App’s Front-End Business Role ‘SAP_MM_BCR_BUYER_X1’
        2. A custom PFCG Role named as ‘Common_FioriApp_Role’, which is required for FioriLauchpad page accessibility, having below object access:
          • R3TR IWSV /UI2/PAGE_BUILDER_PERS 0001
          • R3TR IWSG ZPAGE_BUILDER_PERS_0001
          • R3TR IWSV /UI2/INTEROP 0001
          • R3TR IWSG ZINTEROP_0001
          • R3TR IWSV /UI2/LAUNCHPAD 0001
          • R3TR IWSG ZTRANSPORT_0001
        3. Some times, while accessing app, we got Odata Service error, which can be checked in t-code ‘/n/iwfnd/error_log’, if this case arises, then we need to create a pfcg role which will have TADIR Service access of app “Approve Purchase Order”
          • To create a new PFCG role, Go to T-code PFCG -> Enter name -> Tab ‘Menu’ -> click on button ‘Transaction’ -> ‘Authorization Default’ –
          • -> in new pop-up window select ‘TADIR Service’ -> R3TR -> IWSG SAP Gateway: Service Groups Metadata -> Service from F4 help
  2. Apart from this, perform configuration tasks in the back-end system as mentioned in document link:

    • https://help.sap.com/fiori_bs2013/helpdata/en/57/7F3C52C638B610E10000000A44176D/frameset.htm

 

Assigned Tags

      44 Comments
      You must be Logged on to comment or reply to a post.
      Author's profile photo Rajesh Dadi
      Rajesh Dadi

      Hi Dilip,

       

      Nice documentation. Thanks for sharing.

       

      Regards

      Rajesh Dadi

      Author's profile photo Dilip Kumar Krishnadev Pandey
      Dilip Kumar Krishnadev Pandey
      Blog Post Author

      Dear Rajesh,

      Happy to know, that these blogs are helping to respective audiences.

      Thanks for checking and there is one other blog for custom app which link is given below, that too can be checked for more info:

      Thanks & Regards,

      Dilip

       

      Author's profile photo Juzar Badami
      Juzar Badami

      hi dilip,

      nice  documentation.

      its kind request that can you please help in activate application named : F0348A (Purchase Order ).

      i read your document but i have some question regarding  F0348A (Purchase Order ).

      Author's profile photo Dilip Kumar Krishnadev Pandey
      Dilip Kumar Krishnadev Pandey
      Blog Post Author

      Hi,

      For  F0348A (Purchase Order ), you can get component details from following link:

      Regards,

      Dilip

       

      Author's profile photo Dilip Kumar Krishnadev Pandey
      Dilip Kumar Krishnadev Pandey
      Blog Post Author

      Hi,

      If you are facing issue with link, you can refer below image:

      https://fioriappslibrary.hana.ondemand.com/sap/fix/externalViewer/index.html#/home

      • search for 'Purchase order'
      • MM-FIO-PUR (Fiori UI for Purchasing)

      Regards,

      Dilip

       

      Author's profile photo Aye Chan Moe
      Aye Chan Moe

       

      Hi Dilip,

      I am new to SAPUI5 for my application.I've already created Login Form using Eclipse. But, in my Login.controller.js, I just only display logon information with MessageBox. I tested like this because this is my first time experience with sapui5 application. But now, I want to fetch a data from HANA database. I mean when I enter username and password in login must much with Hana database field value.If match, I'll go to next page.I learned some blog posts using HANA OData Services to retrieve and update data my Hana Database. But, I didn't get clear for login handling.Could you please give me the tutorials or right directon to achieve this login handling in sapui5 application with Hana Database. If asking for tutorials is off topic, I'm really sorry. I'm urgently need to solve this.
      Best Regards,
      Chan

      Author's profile photo Binh Thai
      Binh Thai

      Hi Chan, I understand that you want to get to know more about UI5 but you won't learn anything with that path.

      I recommend you to attend some course in Open SAP, to learn at least the concept and how UI5 and HANA work.

      For your specific question, if the database is HANA then you can use SQLScript to do the user/password check procedure. OData service is like ABAP View, a data model.

      And yes, to know that, you should read or attend some course. There is no short path IMHO.

      Regards,

      Binh

      Author's profile photo Aye Chan Moe
      Aye Chan Moe

      Hi Binh Thai,

      Thank you very much for your quick response.

      When I learn some blog post during last two weeks, I found that SAPUI5 application use OData to

      display and update data in backend.

      I understood like that If I want to validate the logon credential, I have to develop a service to hand that request.

      According to MVC architecture, Model can be three services (OData Abap Service, OData Hana Services and OData External Services).

      So that's why I talked about Hana OData Service.

      You're right. I need to attend some course to learn the concept how UI5 and HANA work.

      Now I'm ambiguous.Am I missing something.

      If I can use SQLScript to do the user/password check procedure, I'll have to learn more about using sqlscript.

      I really appreciate your help.

      Best Regards,
      Chan

      Author's profile photo HITESHKUMAR LIMBACHIYA
      HITESHKUMAR LIMBACHIYA

      hi...can u help me to activate fiori QA11 Record Usage Decision....

      SAP GUI
      Author's profile photo Dilip Kumar Krishnadev Pandey
      Dilip Kumar Krishnadev Pandey
      Blog Post Author

      Hi Hitesh,

      You can refer below link for QA11 to get all technical details

      • https://fioriappslibrary.hana.ondemand.com/sap/fix/externalViewer/#/detail/Apps('QA11')/S12OP
      • In Tab "IMPLEMENTATION INFORMATION" -> every details are given like SAP-Notes, installation and confrontational components
      • With help of your basis team, first complete installations
      • Once components are available in system, you can view them in respective T-Codes, next start configuration

       

      Thanks & Regards

      Dilip

      Author's profile photo HITESHKUMAR LIMBACHIYA
      HITESHKUMAR LIMBACHIYA

      Thank you..its done

      Author's profile photo Dilip Kumar Krishnadev Pandey
      Dilip Kumar Krishnadev Pandey
      Blog Post Author

      always welcome....

      Author's profile photo Ashish Goswami
      Ashish Goswami

      Hi Dilip,

       

      Can you please help us to activate Fiori apps mm01, and me51n (Create material and Create PR) in Fiori Launch Pad.

      FYI we are in S4 Hana 1511 version and Fiori 2.0 will it be possible to create standard apps in FLP.

       

      Author's profile photo Dilip Kumar Krishnadev Pandey
      Dilip Kumar Krishnadev Pandey
      Blog Post Author

      Hi Ashish,

      Respective app's Implementation components are available in below links, you can refer and configure:

      https://fioriappslibrary.hana.ondemand.com/sap/fix/externalViewer/index.html#/detail/Apps('MM01')/S15OP

      https://fioriappslibrary.hana.ondemand.com/sap/fix/externalViewer/index.html#/detail/Apps('ME51N')/S15OP

       

      Thanks & Regards,

      Dilip

       

      Author's profile photo Satyendra Kumar Mishra
      Satyendra Kumar Mishra

      Hi Dilip,

      Can you please guide how to activate SAP Fioro Apps for EAM.

       

      Thanks,

      Satyendra Mishra

      Author's profile photo Dilip Kumar Krishnadev Pandey
      Dilip Kumar Krishnadev Pandey
      Blog Post Author

      Hi Mishra ji,

      You can check below links for technical object details and configuration steps you can follow in above blog:

      Thanks and regards,

      Dilip

      Author's profile photo Satyendra Kumar Mishra
      Satyendra Kumar Mishra

      Thanks for beautiful explanation. It was helpful.

       

      Satyendra Mishra

      Author's profile photo Mauricio Pinheiro Predolim
      Mauricio Pinheiro Predolim

      Thanks for the explanation Dilip!

      Author's profile photo Carlos Alberto Valentini
      Carlos Alberto Valentini

      Good Morning.
      Thanks for sharing, excellent post.
      Personally it helped in several doubts that I had referring to the configurations of oData.

      Author's profile photo Darshan panchal
      Darshan panchal

      Hi Dilip,

      Could you please help me in below issue.

      https://answers.sap.com/questions/12676168/issu-in-csrf-token-for-standard-fiori-app.html

      thanks in advance.

      Author's profile photo Dilip Kumar Krishnadev Pandey
      Dilip Kumar Krishnadev Pandey
      Blog Post Author

      Hi Darshan,

      Will check and let you know soon if any positive input found.

      At this moment I do not have any such case.

      Thanks/Regards

      Dilip

      Author's profile photo Yasin BEDER
      Yasin BEDER

      Dear Dilip,

      Thanks for the blog. I am trying to implement app id : F0228 - Maintenance Notification and had basis team install the packages.

      I followed this link;

      https://fioriappslibrary.hana.ondemand.com/sap/fix/externalViewer/index.html#/detail/Apps('F0228')/W13

      Unfortunately, i could not find the application under sicf after the installation, is the implementation procedure different for different applications ?

      Is it enough to follow above link in order to get F0228  working ?

      Thanks in advance and regards,

      Yasin

      Author's profile photo Dilip Kumar Krishnadev Pandey
      Dilip Kumar Krishnadev Pandey
      Blog Post Author

      Hi Yasin,

      Along with basis,

      • please cross check all installed front-end components which is given in link.
      • and ask them to refresh the front-end system's cache.

      Content given in link is enough to get F0228.

       

      thanks & regards,

      Dilip

      Author's profile photo Yasin BEDER
      Yasin BEDER

      Thanks, will do.

      Regards,

       

      Author's profile photo Yasin BEDER
      Yasin BEDER

      Dear Dilip,

      I added the tile but could not open it, throws this error,

      Would you kindly give your opinion what might cause this ?

      Thanks for your help,

      Regards,

       

      Author's profile photo Dilip Kumar Krishnadev Pandey
      Dilip Kumar Krishnadev Pandey
      Blog Post Author

      Hi Yasin,

      Please check whether

      • in t-code /n/iwfnd/maint_service below yellow highlighted oData services registered
      • and in t-code SICF, if same oData service exists

       

      Thanks & regards,

      Dilip

      Author's profile photo Yasin BEDER
      Yasin BEDER

      Dear Dilip,

      Service and odata are enabled and active,

      I think i have a problem with implemetation itself or fiori launchpad configuration and this moves further away from your blog, so i do not to spoil it further.

      Thanks a'lot for your help so far,

      Regards,

       

      Author's profile photo Dilip Kumar Krishnadev Pandey
      Dilip Kumar Krishnadev Pandey
      Blog Post Author

      Hi Yasin,

      Please re-check below two services and respective PFCG roles in both systems (Back-end / front-end):

      • ZMB_ACCREQ_COMP_APV_SRV
      • CB_MAINTENANCE_NOTIFICATION_SRV

      And also check if any specific configuration too is been given in implementation doc.

       

      Thanks & Regards,

      Dilip

      Author's profile photo Satyendra Kumar Mishra
      Satyendra Kumar Mishra

      Hi Yasin,

      Please check if Fiori launch pad is configured properly, it seems launchpad issue ?

       

      Thanks,

      Satyendra

      Author's profile photo Ajith Kumar Somanagowda
      Ajith Kumar Somanagowda

      Hello Dilip,

      Thank you for your documentation.

      I have couple of question.

      When I go to Target Mapping tab and open configure, my App "Cost Center Plan/Actual" is actually an SAPUI5 Fiori App.

      1. Do I need to change the App type to 'SAP Fiori App using LPD_CUST' and make changes in transaction LPD_CUST?
      2. If yes how to identify the role for the App? because the role mention in https://fioriappslibrary.hana.ondemand.com/ is not matching with role available in screen LPD_CUST.

      Kindly excuse if my questions are novice.

      Thank you.

      Kind Regards

      Ajith

      Author's profile photo Dilip Kumar Krishnadev Pandey
      Dilip Kumar Krishnadev Pandey
      Blog Post Author

      Dear Ajith,

      In case of std. apps, you don't have to do anything, its just cross-checking w.r.t. implementations objects to insure everything is present then configure it.

      For information:

      TargetMapping is the place where we link UI5-APP it either can be linked using LPD_CUST or directly providing SICF-Path of UI5-App.

      When you link LPD_CUST, inside it too, we link UI5-APP Path.

       

      Thanks & Regards,

      Dilip

      Author's profile photo SOUMYA R
      SOUMYA R

      Hi,

      Its very nice blog and descriptive.

      1> i need help in finding the table wher it saves all the tile configuration, roles, for the particular fiori application in the abap system or any report job does this work which we save in transactions.

      I would like to change the details in that in case of wrong values maintained during setup?

      2> if the fiori launchpad home page doesnt load for the customer in the production system, how do check the user has authorization in SCP(sap cloud platform) or ECC system?

       

      Regards,

      Soumya

      Author's profile photo Dilip Kumar Krishnadev Pandey
      Dilip Kumar Krishnadev Pandey
      Blog Post Author

      Hi Soumya,

      Please find below comments w.r.t. your queries:

      1>

      Currently I'm not aware if there is any table or report which saves all the tile configuration, roles, for the particular Fiori application.

      We used to list each component in excel sheet for future reference once we complete the app development

       

      2>

      If Production-FLP does not load, then please check if your FioriServer's host/Port is enabled for internet access with help of BasisTeam.

      And once you get access to FLP and Tile, if there is any authorization issue, then please check in FioriServer t-code /n/iwfnd/error_log.

      And if Tile itself is not visible for the user, then please check content of App-Specific PFCG role which you have assigned to the user.

      Thanks & Regards,

      Dilip P.

      Author's profile photo Digvijay pawar
      Digvijay pawar

      Hi Dilip,

      I want to implement this

      https://fioriappslibrary.hana.ondemand.com/sap/fix/externalViewer/index.html#/detail/Apps('F1309‘)/S16OP

      Team calender app in sap ui5 custom application.

      How can I do that.

       

      requirement is like this app

      http://sapui6.com/portfolio_page/teamcalendar/

       

      please suggest me if you have any idea

       

      Thanks & Regards,

      Digvijay Pawar

      Author's profile photo Dilip Kumar Krishnadev Pandey
      Dilip Kumar Krishnadev Pandey
      Blog Post Author

      Hi Digvijay,

      Sorry for very late reply, till now, you may have already addressed the requirement.

      If you seek any input, please let me know.

      In app's implementation guide, all relevant information are already given

      Thanks & Regards,

      Dilip

      Author's profile photo Nilesh S Khedkar
      Nilesh S Khedkar

      Hi Dilip,

      Very nice and detailed blog.... excellent work !

      I have one question - some standard fiori apps like below one does not have PFCG role associated with it. How to add such standard apps to Fiori launchpad ?

      Custom Reusable Elements -

      https://fioriappslibrary.hana.ondemand.com/sap/fix/externalViewer/index.html#/detail/Apps('F3248')/S17OP

      regards,

      Nilesh

      Author's profile photo Dilip Kumar Krishnadev Pandey
      Dilip Kumar Krishnadev Pandey
      Blog Post Author

      Hi Nilesh,

      Every App requires PFCG Role which get assigned to required business-app-users.

      Ideally PFCG role should be present. If its not mentioned in sap document, then this app may be part of some parent App. Like in case of Buyer Apps, we have 5 Tiles, where std. PFCG role is common.

      We can also create custom PFCG roles in backend/frontend.

      FrontEnd PFCG role will have access to registered-OdataServicie, BusinnesCatalog and Custom/Std. BusinesGroup as per requirement, this will may app visible to FLP.

      Backend PFCG should have access to OData service and other specific (if required) business data transition related roles.

      Thanks & Regards,

      Dilip Pandey

      Author's profile photo Ignacio Kristof
      Ignacio Kristof

      This blog is awesome. Thank you for the excellent work.

      Author's profile photo Digvijay pawar
      Digvijay pawar

      I want to configure GUI tode PLMD_AUDIT (Audit Management).  I have seen lots of blogs to configure GUI tcode for ecc server but no one has showed the output after creating tile.

      I got error sap logon while referring one of the blog error says system alias not maintained though I have created new system alias as well but then again the same error. If you know anything about this let me know

       

      Thanks in advance.

      Digvijay Pawar.

       

      Author's profile photo Dilip Kumar Krishnadev Pandey
      Dilip Kumar Krishnadev Pandey
      Blog Post Author

      Sorry Digvijay for late reply and I can not help you as basis-Team had done these tasks at my side.

      Thanks & Regards,

      Dilip

      Author's profile photo Somyali Gupta
      Somyali Gupta

      Hi Dilip,

      Thanks for sharing such detailed information. I have one question if you can provide your input it will be of great help.

      I noticed most of the transactional Fiori apps are marked for the HANA DB exclusive database. I want to use the Application Log standard Fiori app whose database is marked as HANA DB exclusive and we don't have HANA DB. Is there any possibility that we can use HANA DB exclusive database Fiori app or any other DB?

      Appreciate your response.

      Thanks,

      Somyali

      Author's profile photo Dilip Kumar Krishnadev Pandey
      Dilip Kumar Krishnadev Pandey
      Blog Post Author

      Dear Somyali,

      About specific below query, sorry to inform you that, I do not have any valuable input for you:

      • Is there any possibility that we can use HANA DB exclusive database Fiori app or any other DB?

      However, please have a look in below link about display logs, it may be somewhere around your requirement

      Thanks & Regards,

      Dilip

       

      Author's profile photo Koushik Gangipelly
      Koushik Gangipelly

      Hi Dilip,

       

      Thanks a lot for the blog.

      I am trying to find backend GatewayService/CDS for following application:(Release Blocked Invoice) https://fioriappslibrary.hana.ondemand.com/sap/fix/externalViewer/index.html#/detail/Apps('MRBR')/S20OP. I do not see any OData Service or CDS information in the configuration section. how can I trace back to its logic ?

      Author's profile photo Runjing Cao
      Runjing Cao

      Hi,

      When add service for the SAP standard applications, is it always using $TMP as package? Thanks.