SAP OData 服务在 gateway 层出错,应该如何处理?通过一个错误消息来讲解错误排查步骤

举报
汪子熙 发表于 2022/05/18 12:06:03 2022/05/18
4.4k+ 0 0
【摘要】 在浏览器里访问如下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:在自动nav...

在浏览器里访问如下url遇到错误:
https://jerry.sap.corp:44300/sap/opu/odata/sap/C_SALESCONTRACTITMFLFMTQ_CDS/$metadata

clipboard1

如何debug这个错误,找到哪一行ABAP code抛出的exception?
tcode /IWFND/ERROR_LOG, 选择对应的entry,点Active Source:

clipboard2

在自动navigate到的地方设置断点,刷新UI:

clipboard3

断点触发,观察callstack :

clipboard4

line 51的方法,正常情况下返回的参数ls_bep_metadata应该有填充好的metadata:

clipboard5

但是现在遇到了exception:

clipboard6

双击lx_exception,点击这个hyperlink能看到具体是哪一行报的error message:

clipboard7

line 39抛的error message:

clipboard8
clipboard9

逻辑就是这个query 2CCSDSLSCONTRIQ不valid。

clipboard10
clipboard11

设置一个watchpoint:

clipboard12
clipboard13
clipboard14
clipboard15

这个FM会基于query生成对应的metadata:

clipboard16
clipboard17

错误的根源还是在于CDS view 本身的error:

clipboard18

从callstack里能很清楚看到:

clipboard19

当更换了另一个CDS view之后,metadata能够成功取回:

clipboard20

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/

【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

作者其他文章

评论(0

抱歉,系统识别当前为高风险访问,暂不支持该操作

    全部回复

    上滑加载中

    设置昵称

    在此一键设置昵称,即可参与社区互动!

    *长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

    *长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。