Personal Insights
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:
- Standard Apps
- Implementation of those business apps, which are released by SAP. These are categorized as Transnational, Fact-sheets and Analytical apps etc.
- Customized Apps
- As per business requirement, a complete custom fiori app can be implemented.
- Below blog can be referred for detailed step:
- SAP Fiori – Custom App Implementation
Pre-requisites:
- SAP ECC Server (Back-end)
- SAP Fiori Server (Front-end)
- SAP Fiori Launchpad Url:
- http://<host>:<port>/sap/bc/ui5_ui5/ui2/ushell/shells/abap/FioriLaunchpad.html
- SAP Fiori Designer Url:
- http://<host>:<port>/sap/bc/ui5_ui5/sap/arsrvc_upb_admn/main.html
- 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:
- SAP provides a complete implementation information for each standard app, which details can be found in below SAP-App Library link:
- https://fioriappslibrary.hana.ondemand.com/sap/fix/externalViewer/index.html#/home
Each standard Fiori app consist of below components:
- Software Components
- Back-End Software Components
- Front-End Software Components
- Back-End Components
- Odata Service
- Back-End Authorization Role (PFCG)
- Front-End Components
- SAP UI5 Application
- Odata Service Registration
- Business Catalog
- Tile
- Target Mapping
- Semantic Object
- 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”
- 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
-
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
-
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
- Activate SAP UI5 Application
-
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
- In SAP-Fiori (Front-End) System, configure ‘system alias‘ Alias for SAP-ECC (Back-End) System.
- 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’
- Pre-requisites: System Alias Maintainance
- 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’
- Go to Fiori Desginer url
-
-
- 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 ‘
- Checking Launchpad Role
-
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:
- App’s Front-End Business Role ‘SAP_MM_BCR_BUYER_X1’
- 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
- 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
- To create a new PFCG role, Go to T-code PFCG -> Enter name -> Tab ‘Menu’ -> click on button ‘Transaction’ -> ‘Authorization Default’
- Here user-id ‘user1’ will have access to two PFCG role, which are:
- Back-End Authorization Role
-
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
Hi Dilip,
Nice documentation. Thanks for sharing.
Regards
Rajesh Dadi
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
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 ).
Hi,
For F0348A (Purchase Order ), you can get component details from following link:
Regards,
Dilip
Hi,
If you are facing issue with link, you can refer below image:
https://fioriappslibrary.hana.ondemand.com/sap/fix/externalViewer/index.html#/home
Regards,
Dilip
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
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
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
hi...can u help me to activate fiori QA11 Record Usage Decision....
Hi Hitesh,
You can refer below link for QA11 to get all technical details
Thanks & Regards
Dilip
Thank you..its done
always welcome....
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.
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
Hi Dilip,
Can you please guide how to activate SAP Fioro Apps for EAM.
Thanks,
Satyendra Mishra
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
Thanks for beautiful explanation. It was helpful.
Satyendra Mishra
Thanks for the explanation Dilip!
Good Morning.
Thanks for sharing, excellent post.
Personally it helped in several doubts that I had referring to the configurations of oData.
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.
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
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
Hi Yasin,
Along with basis,
Content given in link is enough to get F0228.
thanks & regards,
Dilip
Thanks, will do.
Regards,
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,
Hi Yasin,
Please check whether
Thanks & regards,
Dilip
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,
Hi Yasin,
Please re-check below two services and respective PFCG roles in both systems (Back-end / front-end):
And also check if any specific configuration too is been given in implementation doc.
Thanks & Regards,
Dilip
Hi Yasin,
Please check if Fiori launch pad is configured properly, it seems launchpad issue ?
Thanks,
Satyendra
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.
Kindly excuse if my questions are novice.
Thank you.
Kind Regards
Ajith
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
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
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.
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
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
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
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
This blog is awesome. Thank you for the excellent work.
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.
Sorry Digvijay for late reply and I can not help you as basis-Team had done these tasks at my side.
Thanks & Regards,
Dilip
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
Dear Somyali,
About specific below query, sorry to inform you that, I do not have any valuable input for you:
However, please have a look in below link about display logs, it may be somewhere around your requirement
Thanks & Regards,
Dilip
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 ?
Hi,
When add service for the SAP standard applications, is it always using $TMP as package? Thanks.