SAP OData 服务在 gateway 层出错,应该如何处理?通过一个错误消息来讲解错误排查步骤
在浏览器里访问如下url遇到错误:
https://jerry.sap.corp:44300/sap/opu/odata/sap/C_SALESCONTRACTITMFLFMTQ_CDS/$metadata
如何debug这个错误,找到哪一行ABAP code抛出的exception?
tcode /IWFND/ERROR_LOG, 选择对应的entry,点Active Source:
在自动navigate到的地方设置断点,刷新UI:
断点触发,观察callstack :
line 51的方法,正常情况下返回的参数ls_bep_metadata应该有填充好的metadata:
但是现在遇到了exception:
双击lx_exception,点击这个hyperlink能看到具体是哪一行报的error message:
line 39抛的error message:
逻辑就是这个query 2CCSDSLSCONTRIQ不valid。
设置一个watchpoint:
这个FM会基于query生成对应的metadata:
错误的根源还是在于CDS view 本身的error:
从callstack里能很清楚看到:
当更换了另一个CDS view之后,metadata能够成功取回:
SAP gateway demo system,给 SAP 开发人员提供了可以 free 使用的 OData 服务,用来学习 SAP Fiori 和 SAP Fiori Elements 相关的开发。
首先在这个链接里注册一个帐号:
https://register.sapdevcenter.com/SUPSignForms/
之后通过这个链接登陆 ES5/002 系统:
https://sapes5.sapdevcenter.com/
用来做测试的 OData 服务:
https://sapes5.sapdevcenter.com/sap/opu/odata/sap/SEPMRA_PROD_MAN/
- 点赞
- 收藏
- 关注作者
评论(0)