找出OData service出错根源的小技巧

SAP的Fiori应用是通过OData和后台交互的。在使用Fiori应用时您可能会遇到这样的错误消息:

这个错误消息没有包含有助于partner或者客户定位问题根源的线索。

下面是如何在后台找出问题根源的步骤。

1. 在Fiori前台系统上使用事务码/IWFND/ERROR_LOG找到当前OData出错对应的错误日志:

关于Fiori前后台系统的区分,参考我的微信公众号文章SAP Fiori应用的三种部署方式

2. 点击工具栏上的按钮"Active Source"。然后我们会被自动带到抛出错误消息的代码位置,即下图的第86行。这个代码是Fiori前台系统进行出错处理的框架代码,我们就在第86行设置一个断点。

返回Fiori UI重现错误,断点触发,默认的调用栈是上图设置的断点,即方法HANDLE_RFC_FAILURE内部。此时我们跳到调用栈的外面一层,即方法CALL_BACKEND, 如下图所示。这个方法的exceptions参数lv_rfc_message的内容即具体的错误消息。

要获取更多Jerry的原创技术文章,请关注公众号"汪子熙"或者扫描下面二维码:

原文地址:https://www.cnblogs.com/sap-jerry/p/8469268.html