Currently Being Moderated

SAP Fiori Lessons Learned 11

Consultants should know about OData troubleshooting

 

Background:

SAP Fiori apps are out of the solution but you face several issues because main functions are in backend ERP and each customer has different backend setup/configuration. OData is the communication channel to the backend servers via get/post/put method.

 

Lessons Learned:

Understanding OData and backend function are must requirements for consultants.

  • Application consultants should learn about OData technical and runtime behavior
  • Technical consultants should learn about ERP application functions
  • Both application consultants and technical consultants should work together

 

Consultants should know following steps.

 

Step 1. Identity the OData service call

1.1 Run the app

1.2 Inspect element

     Right click -> Inspect element (Chrome), F12 (IE), then go to Network tab

     inspect.png

          Ignore the warning or error message in the Console tab at this point in time. Focus on OData troubleshooting.

 

1.3 Refresh the app or browser

      refresh.png

1.4 Find the last called OData URI

     Scroll down to the bottom of inspect element and find the OData /sap/opu/odata/sap/.. from bottom.

        odata.png 

     http://<host>.<domain>:<port>/sap/opu/odata/sap/GBAPP_POAPPROVAL;mo/WorkflowTaskCollection(SAP__Origin='ONE_800',WorkitemID='000001104681')/HeaderDetails?$expand=ItemDetails,Notes,Attachments,ItemDetails/Limits

 

Step 2. Test OData in the Gateway client

2.1 Copy & Paste the OData URI

     Transaction: /IWFND/GW_CLIENT. You should logon with the application user same as Fiori app logon.

     gw_client.png

2.1 Check the OData response

        data.png

          If http response is not 200, you may have some connection setting issue.

          If tttp response is 200 but OData service does not return application data, you should go Step.5 debug section.

 

Step 3. Check error log

3.1 Transaction /IWFND/ERROR_LOG

   error_log.png

     Select the "Error Context"

     call_stack.png

     Call Stack helps you to set external break points.

       stack.png

3.2 Transaction /IWFND/APPS_LOG

      app_log.png

Reference: Troubleshooting a SAP Netweaver Gateway Service

 

Step 4. Find the Runtime Data Provider class

4.1 Transaction /IWFND/MAINT_SERVICE

     maint_service.png

     class.png

4.2 Transaction SE24

     Open the Data Provider Class. Go to Property tab.

     package.png

4.3 Transaction SE80

     Open the package.

     class2.png

     Class -> Runtime Data Provider Class -> Method -> Redefinitions

     The example OData URI has &expand oprion, so you should look at the method GET_EXPANDED_ENTITY.

     map2.png

Step 5. Set External break points and debug

5.1 Check the user

     Go to Utilities -> Settings

     debug2.png

     Make sure the user is application user.

     debug_user.png

5.2 Set external break points

     method.png

5.3 Debug

     Test the OData URI from Gateway Client. You can now debug the code. Most of case, issue is related with ERP customizing or master data.

     Each customer has different customizing setting and master data.

 

Regards,

Masa

SAP Rapid Innovation Group - RIG

Comments

Actions

Filter Blog

By author:
By date:
By tag: