cancel
Showing results for 
Search instead for 
Did you mean: 

Fiori Shell Plugin APP doesn't load for a catalog

11-21-2020 4:59 AM
saikrishna186 Active Participant
2600 views 5 comments Go to solution
0 Likes
SAP Managed Tags
Subscribe

Hi There,

Good day !

I build custom fiori apps on CRM system.

As part of business requirement we built a Shell plugin to show system outage notification in a message box following below blog:

https://blogs.sap.com/2017/10/12/create-a-welcome-popup-for-portal-fiori-launchpad-and-freestyle-sit...

To test developments we have a Test role which hold one catalog, when I target mapping to this catalog it works.

But when I add the same target mapping to a business specific catalog, the plug in doesn't download at all.

After some research I found about this transaction "/UI2/FLP_CUS_CONF" but this TCODE doesn't exist in our system

In /UI2/FLIA I can see the target mapping and its green.

when debugging backend services @ /UI2/CL_TM_INDEX_SHR--> method (GET_MY_PLUGINS_DATA) it doesn't bring the plugin.

Fundamentally it works on Test Role &/ Catalog and doesn't on business role/catalog.

Can someone advise is there a place we need to enable plugin based on catalog / role.

Note: we are on library version 1.44.12 & SAP_UI 7.51, 003

We don't use LPD_CUST.

Below is my target mapping for the shell plugin.

Thanks,

Sai.

0 Likes

Accepted Solutions (1)

Accepted Solutions (1)

saikrishna186
Active Participant

Thanks Wouter, your comment made me to look into to find out what's the difference CUST & CONF and both my business & technical roles and found the issue.

Hi All,

Finally after debugging HTTPS services could find the issue and fix.

Reason:

We normally use scope=CONF (......."/sap/bc/ui5_ui5/sap/arsrvc_upb_admn/main.html?scope=CONF") so its across all clients and locks object in Wokbench TR.

Some other team did a modification on same catalog some time recently and used scope=CUST (......."/sap/bc/ui5_ui5/sap/arsrvc_upb_admn/main.html?scope=CUST")

due to which the catalog is not in sync.

When debugging the HTTP call to get fiori base catalog data in class /UI2/CL_FLP_HTTP_HANDLER, method GET_PLUGINS_DATA @ below screen shot method found that in lr_data which reads from memory our catalog in context bears client ID compared to rest.

Fix:

In this mismatch scenario, if we open the same catalog in CUST scope, it gives an error message, as highlighted in below screenshot we can take CONF changes and put it in CUST, this requires a customization TR.

Then import the cust TR into the required client.

Run cache clear programs.

Reinvestigation:

1) Now on same HTTP call I could see no client ID on my catalog.

2) under lr_data-->Plugins I could see my plugin listed.

2) In Fiori debugger I could see both my plugin app and odata call as expected.

All good, now.

Thanks,

Sai

Answers (1)

Answers (1)

WouterLemaire
SAP Mentor
SAP Mentor
0 Likes

The transaction "/UI2/FLP_CUS_CONF" is probably not yet available in your system. It’s only available from certain system version but I don’t know exactly which one.


normally when it works with a technical catalog it should work as well with a business catalog. Can you validate that you have access to this catalog? You can check all available target mappings in the “start_up” file which you’ll find in the network trace when starting fiori launchpad.

Can you also make sure all caches are cleared?


kr, Wouter

saikrishna186
Active Participant
0 Likes

Hi Wouter,

Thanks for the reply.

1) We always use "/UI2/FLP_CUS_CONF" client independent with WorkBench TR, all the apps configured with same approach.

2) I do have both the roles & catalogs assigned to my profile.

3) I did ran cache clear programs all i.e., client, global, sync chip & Index calc.

4) Since this is a Shell-plugin it doesn't come in target mappings list of statup even in dev catalog when its working.

Thanks,

Sai

WouterLemaire
SAP Mentor
SAP Mentor
0 Likes

I’m a bit confused as you mentioned earlier that you do not have the transaction in your system.
Anyway, just to be clear, you can define plugins system wide with this transaction. But then you do not have to put them in a catalog anymore.
if you only want to make it available for some people based on roles. Then it should be in a catalog and not using the system wide config.


kr, Wouter

saikrishna186
Active Participant
0 Likes

Hi Wouter,

Apologies its my bad, I mean we configure catalog with scope = CONF by "/sap/bc/ui5_ui5/sap/arsrvc_upb_admn/main.html?scope=CONF"

And yes this particular transaction doesn't exist in our system neither I could find relevant node in SPRO.

We our requirement is to have this plugin across the board and so we gave it to base role/catalog which is assigned to every user, this is where Plugin isn't working.

ZTest role & catalog is only for developers to test the developments before deploying it for testing by assigning it to relevant roles.

I could try assigning the plugin to a different role but I don't want to take a chance yet as I don't understand the object locked in WB TR to pick and choose.

Thanks,

Sai