Question: I have seen a tile on the SAP Fiori Launchpad. How do I reverse which PFCG Role needs to be configured in the background to see the tile?

This question was asked by a friend on wechat today. Because I am busy learning a new SAP product recently, I have no time to write about this issue, so this article will only give a brief introduction.

Here is SAP CRM Fiori Launchpad open on a Gateway system:

How to find out which PFCG Role the background user has configured so that the tile under the Sales Representative(CRM) Group can be seen?

Since my current user Jerry Wang can see these tiles when he logs in, a clue can be found by looking at the requests and responses that the browser sends to the Gateway system after the user logs in using Chrome developer Tools.

In the Chrome Developer Tools Network TAB below, there are six requests before the start_UP request highlighted in blue:

The first request is to read the HTML implementation source for Fiori Launchpad; The second request abap.js is the abAP Unified Shell boot library file required by the foreground UI5 to connect to the ABAP-based SAP backend system; The third to sixth requests core-min-< number >.js to load UI5 library files;

The highlighted request (starT_UP) reads the User Profile of the currently logged User stored in the ABAP background system, such as date format, number format, login language Settings, and so on.



This start_UP request has nothing to do with the configuration of the background PFCG Role, so let’s skip ahead and move on to the next PageSets request:

This PageSets request returns a Catalog Group with the title information exactly like the Sales Representative (CRM) we saw in Launchpad with the ID SAP_CRM_BCG_SalesRep.

It’s actually enough to find this ID. Fiori Launchpad Designer = SAP_CRM_BCG_SalesRep It was found that the tile contained was the same tile that Jerry Wang, a user, saw after logging into the system.

And the Catalog ID: SAP_CRM_BC_SalesRep.

The next TargetMappings request fetches the SemanticActions and Semantic Objects of each tile under the Catalog in turn:

With these two fields, the UI5 framework knows which specific UI5 application to jump to once the tile is clicked. The mapping between Semantic Object and Semantic Action pairs to UI5 applications is also maintained in SAP Fiori Launchpad Designer. For example, in the MyAccounts tile above, select Target Mapping in Launchpad Designer and click Configure:

The Semantic Object and Action fields are mapped to the three fields highlighted in blue in the Target Mapping detail page:

Role: UICRM001 Launchpad Instance: TRANSACTIONAL Application Alias: MyAccounts

The highlighted green field Application Alias uniquely identifies a UI5 Application.

Gateway System background executes transaction code LPD_CUST, find the records corresponding to Role and Instance in the blue area in the figure above, double-click to view the details:

Fiori Launchpad Tile MyAccounts maintains the Application Alias in Launchpad Designer. Map to a SAP UI5 application that can be found in SE80 (stored in the ABAP system as a BSP application carrier).



This is how the SAP UI5 framework interprets the Semantic Object and Action contained in the tile after the user clicks on it, and then obtains the Application Alias. Finally, the process of getting the actual UI5 application name.

Back to the question asked by my friend, create a new PFCG Role at random, and maintain the Catalog Group and Catalog ID we found in Chrome Developer tools in the Menu of this Role.

For example, I created PFCG Role ZSAP_CRM_BCR_SALESREP:



Of course, SAP also predefined some standard PFCG roles, such as SAP_CRM_BCR_SALESREP, so we can copy new roles from these standard PFCG roles and modify them according to our actual requirements.

Thanks for reading.

For more of Jerry’s original articles, please follow the public account “Wang Zixi “: