Skip to Content

This is a four-part blog:

1.    Introduction and Analysis of the standard oData Service (this part)

2.    Fiori enhancement approaches

3.    Fiori extension with the SAP Web IDE

4.    Extension of the standard oData Service

1                              Introduction

1.1                          Background

I am currently implementing S/4 HANA 1511 FPS1 on premise for a customer, and recently got my first opportunity to enhance a standard Fiori app in a real business scenario. I thought it would be useful to share how I did this and what I learnt along the way.

1.2                          Business Requirement

Standard Fiori app ‘Revise Payment Proposals’ includes a screen where financial document items are listed that are included in the Payment Proposal:

image001 Large.jpg

To help the user to understand what is to be paid, we would like to add the Item Text (BSEG-SGTXT) to this table.

2                              Analysis of the standard oData Service

I first wanted to check if the Item Text field was already provided in the oData service for the app, FAP_REVISE_PAYMENT_PROPOSAL, or whether the service would need to be enhanced. To do this I went to transaction SEGW in my back-end S/4 HANA system (where the service is defined) and opened project FAP_REVISE_PAYMENT_PROPOSAL. In here I could see that Entity Type PaytProposalInvoice already includes Item Text:

/wp-content/uploads/2016/09/image002_1032063.png

/wp-content/uploads/2016/09/image003_1032065.png

/wp-content/uploads/2016/09/image004_1032034.png

To test this I first checked that the Items in a Payment Proposal had texts in BSEG-SGTXT:

/wp-content/uploads/2016/09/image005_1032066.png

I then tested the oData service in /IWFND/MAINT_SERVICE, in my front-end Fiori Gateway system. Note that key data values have to be provided for all the nodes in the oData structure that are above the PaytProposalInvoiceSet we are interested in. To build the required URI, I navigated to the Invoice Items view in the app with the F12 debugger on. By looking in the $BATCH request (under ‘Network’) I could get the URI parameters:

image006 Large.jpg

The complete URI therefore is:

/sap/opu/odata/sap/FAP_REVISE_PAYMENT_PROPOSAL/PaytProposalParameterSet(RunDate=’20160510′,RunID=’REMI3′,PayingCompanyCode=’GB03′,SendingCompanyCode=’GB03′)/PaytProposalPaymentSet(RunDate=’20160510′,RunID=’REMI3′,PayingCompanyCode=’GB03′,Supplier=’0400000026′,Customer=”,PayeeCode=’FOOT7-0000000001′,PaytDocNum=’F110000001′)/PaytProposalInvoiceSet

Initially the ItemText attribute was returned empty:

image007 Large.jpg

Having raised this with the app’s product owner, we were told that as standard the field is only populated (from table REGUP) when the Item Text begins with a star ‘*’, which is intended to signify externally-visible texts as opposed to texts that should only be seen internally. So we added a ‘*’ to each Item Text:

/wp-content/uploads/2016/09/image008_1032069.png

The oData service now returned the ItemText:

image009 Large.jpg


Conclusion

No enhancement of the oData service was strictly necessary in this case as the Item Text field is already available as standard. Later on we decided to enhance the oData service anyway, this the app is for internal use and therefore should show all item texts regardless of whether or not they begin with a star. But initially I switched attention to the UI, and how I could show the additional field in the table.

In the next part I explain four possible Fiori enhancement techniques which we initially considered.

To report this post you need to login first.

3 Comments

You must be Logged on to comment or reply to a post.

  1. Oemer Acar

    Hi Roger,

    I cannot see the blog parts 2-4. Will you publish them as well?

    The example you are showing is very interresting  therefore I would appreciate if you could publish them as well.

    Many thanks and kind regards,

    Ömer

    (0) 

Leave a Reply