千家信息网

云端ABAP应用调试方法是什么

发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,本篇内容介绍了"云端ABAP应用调试方法是什么"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!Jerr
千家信息网最后更新 2026年11月02日云端ABAP应用调试方法是什么

本篇内容介绍了"云端ABAP应用调试方法是什么"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

Jerry之前在SAP Cloud Platform上进行nodejs和Java开发的时候,对运行在云上的用这两门语言开发的应用的单步调试很头痛。尽管仍然可以通过Jerry这篇文章 如何提高后台服务应用问题的排查效率?日志 VS 远程调试 里介绍的端口映射方式实现在本地电脑上调试云端应用的功能,但Jerry还是怀念On-Premises ABAP里面那种单步调试的便捷性--鼠标轻轻一点,断点即设置好,无需任何配置,立即就能进行单步调试。

那么现在ABAP到了云端后,其单步调试还和之前的On-Premises环境里一样易于使用么?答案是肯定的。

咱们就拿一个具体例子来体验。

Jerry通过Restful ABAP Programming系列的前两篇,已经开发出了一个支持增删改查,支持自定义数据校验和Action的Fiori应用。

我选中ID为103这条记录,点击Accept Travel按钮后,期望通过该Action将其状态设置为Accepted:

不幸的是,我没能看到期望中的状态变化,而是下面这个所有ABAP编程人员都不愿意看见的ABAP运行时错误提示界面。

不过,大家注意到了上图右下角的Debug超链接么?和SAPGUI一样,点击之后立即就能打开调试器,能够观察发生这个运行时错误的调用栈,引起错误的详细代码位置和相关变量的值。

顺便提一句,如果您想自定义在SAP GUI里出现的ABAP运行时错误显示(就是在On-Premises环境下ST22事务码里看到的内容),比如添加一段"佛祖保佑,永无BUG",那么可以参考Jerry这篇文章:

你的ABAP程序给佛祖开过光么?来试试Jerry这个小技巧

回到ABAP Development Tool里,我们先点击Show超链接,就可以看到运行时错误明细:Short Text告诉我们,我们点击Accept按钮后,相关的处理框架有意地抛出一个CX_CSP_ACT_RESPONSE的异常。抛出异常的位置是在程序CL_CSP_ACT_CHECK_FEATS_ACTIONS里,这暗示我们,这个错可能和Action执行前的检查(CHECK)有关。

继续向下滑动鼠标,发现在框架代码内,因为从第353行内表it_feature_result里没有读出任何内容,因此sy-subrc不为0,导致进入第355行的RAISE SHORTDUMP分支。

在SAP Cloud Platform ABAP环境下当前登录用户发生的所有运行时错误,可以在ABAP Development Tool的Feed Reader视图下查看,这个功能相当于SAP GUI里的ST22事务码。

现在我们关于这个运行时错误的静态信息了解得差不多了,下一步在调试器里观察。

重新启动Fiori应用,再次点击Accept按钮,出现运行时错误后点击Debug超链接,ABAP调试器自动弹出,引起运行时错误的那一行代码被高亮,同时左边显示出调用栈。

把鼠标放在it_feature_result上,发现这个内表是空的,当然无法从里面读出数据了。这个内表是当前ABAP类CL_CSP_ACT_CHECK_FEATS_ACTIONS的方法handle_rejected_instances的输入参数,需要搞清楚为啥这个输入参数为空。

从抛出运行时异常的栈帧往外看一帧,就知道这个输入的内表是通过第291行的execute_feature_controllers生成的,这个方法会通过回调函数的方式,调用我们在Behavior Definition实现的一个get_features方法里:

这里我们就找到了引起这个运行时错误的根源:因为之前Jerry出于测试目的,注释了一段代码,导致get_features被框架回调时,没有返回框架期望的数据:

当Jerry把这段需要的代码重新enable然后设置断点,点击Accept按钮,通过调用栈可以清晰看到框架的execute_feature_controllers是如何调用到我们实现的get_features回调方法的。

"云端ABAP应用调试方法是什么"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!

错误 运行 应用 方法 代码 框架 云端 内容 按钮 数据 环境 调试器 链接 鼠标 开发 期望 输入 事务 位置 佛祖 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 博彦科技互联网金融 互联网科技公司起名 蓝思科技飞鸽互联网 新华互联网科技学院 互联网与科技金融数据 恒生科技互联网指数分析 北京三清互联网科技 中国互联网有什么科技含量 互联网金融科技公司干啥的 成都互联网科技公司工作好不好 亳州好赞互联网科技有限公司 互联网科技公司营业执照怎么办理 恒生互联网科技业指数调整周期 启辰互联网科技 张召忠谈中国互联网科技 上海乐五互联网科技有限公司 江苏互联网智能科技产品出厂价 互联网科技手机排行榜 米泉互联网科技专业怎么样 科技互联网企业在行动 互联网科技会 润盈互联网科技 互联网金融和金融科技 哈尔滨新华互联网科技 崇明区互联网教育科技售后服务 中国科技和美国互联网 兰石爱特工业互联网科技分公司 广州三三互联网科技有限公司 绵阳真晨互联网科技有限公司 陕西彩京云互联网科技有限公司
0