cancel
Showing results for 
Search instead for 
Did you mean: 

SAP Fiori Extension for My Quotations App fails with semantic navigation

Former Member
0 Kudos

Dear Experts,

I am trying to extend the My Quotations Fiori app by including a field TITLE.

.

Following steps were taken to acheive the same:

1. Extended the Odata service for adding the new field title for Ship-to-party .

2. Tested in the rest client and the additional field along with values appears, hence works fine.

3. Deployed the BSP Application SD_MYQUOTES(for the original app) in Eclipse and tested - works fine.

4. Created Fiori Extensibility project YSD_MYQUOTES_EX to accomodate the new field ,it worked fine when tested in fiori sanbox configuration environment running on tomcat server.

5. Uploaded the new BSP Application YSD_MYQUOTES_EX through eclipse->Team-> share and submit.

6. changed the relative path in the COMPONENT.JS file to absolute path of parent application as below:

jQuery.sap.declare("ycus.sd.myquotations.YSD_MYQUOTES_EX.Component");

// use the load function for getting the optimized preload file if present

sap.ui.component.load({

   name: "cus.sd.myquotations",

   url: "/sap/bc/ui5_ui5/sap/SD_MYQUOTES" // provide parent project url

});

7. Created the role in LPD_CUST : Z_LPD_HMA. Please find attached the screen shot:

8. Maintained PFCG role . Created Catalog and the tile in the launchpad designer. Maintained the Application aliases correctly in lpd_cust as well as the tile.

9. Created custom semantic Object 'ZmyQuotes' through SPRO and gave a meaningful action(track) and maintained the intent in the tile and also in the target mapping for navigation.

10. Here is where i faced the problem: On running the BSP application as stand alone it works like a breeze , Also same link when i provide in the fiori tile for TARGET URL instead of semantic object NAvigation, it works fine. But when i use semantic object navigation using the newly created semantic object ZmyQuotes , it throws the following error:

Highly appreciate , if anyone can throw some light on this!

Thanks much!

Regards,

Haritha

Message was edited by: Michael Appleby

Accepted Solutions (0)

Answers (2)

Answers (2)

Former Member
0 Kudos

Hi Haritha,

seems problem in your Component.js file

please replace in your file as shown below.

sap.ui.component.load({

name: "cus.sd.myquotations",

url: jQuery.sap.getModulePath("ycus.sd.myquotations.YSD_MYQUOTES_EX") + "/../SD_MYQUOTES"

});

Hope it will work.

Rds,

venu

Former Member
0 Kudos

Hi Venu,

In My opinion , the idea is to load the original app, and i had tried both ways but the error remains...!

Thanks and Regards,

Haritha

former_member189237
Participant
0 Kudos

Hi Haritha,

Sorry for the delay..

Please let me know if the error is resolved or still you are facing the same problem.

Thanks

Navdeep Kumar

kenny_zhang1
Participant
0 Kudos

Hi Haritha,

Can you show me the URL you are using to visit the standalone customized BSP app? Also please check if the index.html exists under your WebContent folder.

In the speed demo, it goes without sandbox project and direct visit to index.html. I am not sure if this is best practice to extend a Fiori app, but it is working like a charm.

Kind regards,

Kenny

Former Member
0 Kudos

Thanks again Kenny for your prompt response.

When i click on The demo of fiori wave app2 ,it opens up 3 basic screens that talks of the basic steps. Is their more to it?

The sandbox configuration is only done in the eclipse environment inorder to test the fiori app, and in no way are those changes carried forward while uploading the project as BSP application .

yes, there is index.html file under the WebContent Folder that actually loads the BSP application as in below screenshot.

index.html

The component.js file:

jQuery.sap.declare("ycus.sd.myquotations.YSD_MYQUOTES_EX.Component");

// use the load function for getting the optimized preload file if present

sap.ui.component.load({

name: "cus.sd.myquotations",

url: "/sap/bc/ui5_ui5/sap/SD_MYQUOTES" // provide parent project url

});

cus.sd.myquotations.Component.extend("ycus.sd.myquotations.YSD_MYQUOTES_EX.Component", {

   metadata: {

     version : "1.0",

     config : {

       "sap.ca.i18Nconfigs": {

         "bundleName":"ycus.sd.myquotations.YSD_MYQUOTES_EX.i18n.i18n"

       },

             "sap.ca.serviceConfigs": [{

               name: "lord_my_quotation_srv",

                 serviceUrl: "/sap/opu/odata/sap/ZHMA_LORD_MY_QUOTATION_SRV",

                 isDefault: true

              }],

     },

     customizing: {

     "sap.ui.viewExtensions": {

       "cus.sd.myquotations.view.S3": {

         "extQuotationDetailsInfoTop": {

           className: "sap.ui.core.Fragment",

           fragmentName: "ycus.sd.myquotations.YSD_MYQUOTES_EX.view.extQuotationDetailsInfoTopCustom",

           type: "XML",

         },

       },

     },

     }

   }

});

The Fragment view for extension - extQuotationDetailsInfoTopCustom:

The URL and the result post execution of BSP application:

So when i try to configure the fiori launchpad with the extended sapui5 component, it throws the error as in the earlier post.

Request you to help me out with this as i have been struggling for a while now.

thanks much

Regards,

Haritha

Former Member
0 Kudos

, seek you expertise on this, thanks much!

kind regards,

Haritha

kenny_zhang1
Participant
0 Kudos

Hi Haritha,

In the speed demo

http://demo.tdc.sap.com/SpeedDemo/c341aaf1efa047bb/

You can click each dotted box and go step by step. In your case, the Step 1 & 2 are finished. Please directly follow the Step 3.

Kind regards,

Kenny

kenny_zhang1
Participant
0 Kudos

When you follow this guide, one import tip is to strictly follow the Letter Capitalization for each parameter. SAP Logon coverts the letter automatically but Launchpad Configuration page doesn't. This can cause parameter mismatch sometimes.

Kind regards,

Kenny

Former Member
0 Kudos

Thanks for the tips Kenny,

I had configured the launchpad as you can see in the initial post.

in any case will repost the launchpad configuration again:

Tcode: LPD_CUST: Z_LPD_HMA

The sapui5 component value provided in Additional information is ycus.sd.myquotations.YSD_MYQUOTES_EX(same as what has been coded in component.js file as you can see in the above post)

PFCG Role: created and assigned the Role Z_ROLE_HMA to my user id and also the CATALOG : Z_CAT_HMA.

fiori catalog Z_CAT_HMA and the tile:

target mapping:

on execution:

it throws the below error:

But works like a charm if TARGET URL of the BSP applicaion is used instead of SEMANTIC NAVIGATION.

Kind Regards,

Haritha

kenny_zhang1
Participant
0 Kudos

Hi Haritha,

I saw "Dynamic Data" title in your tile configuration. But in the guide, it is using App Launcher - Static. This may be the root cause.

Also you are not using New Launchpad in SPRO. I am not sure but when you New one, you will specify the role name and will be later used in Launchpad configuration.

Per my previous experience, it is pretty difficult to trouble shoot an existing nonworking Launchpad configuration. Can you strictly follow the guide Step 3(except the target URL) to create a new tile?

I mean, start from "New Launchpad"

Take care of the Role

Go to the correct Launpad Admin page:

Configure the mapping:

and tile:

Then go the rest.

Good luck.

Kind regards,

Kenny

Former Member
0 Kudos

Hi Kenny,

Firstly Thanks for your response and the detailing.

I tried configuring the static tile and the error remains the same, The link:

/sap/opu/odata/UI2/INTEROP/ResolveLink?linkId=%27ZmyQuotes-displayMyQuotations%27&shellType=%27FLP%27&formFactor=%27desktop%27

retuns empty values as you can see in the below screenshot:

The only difference is on configuring the dynamic tile it throws a 500 Internal error, and on configuring Static tile it returns status code:200 but with empty values!

observed these additional warnings for static tile :

I am not sure on how this should be handled, kind of stuck on this forever!! Highly appreciate if anyone could provide some solution..

Kind regards,

Haritha