在ABAP里实现条件断点的三种方式

背景

有不同的同事问我这个问题:例如下图的LOOP要执行1000次,我只对其中的某一次比如第501次循环感兴趣,我肯定不可能按500次F5然后进入第501次的调试。或者我只对LOOP里某个变量为某一个具体值的那一次循环感兴趣。如何才能避免重复按F5,让断点直接停在满足我期望的条件上?

其实有三种方法实现。

方法1 - 使用ABAP调试器自带的条件断点功能

假设上图的例子里,我希望循环体内的第15行,当<data>等于22时触发断点。

创建一个新的动态断点:

在此处维护该断点触发的条件:

按F8,当<data>的值在循环体内被赋以22时,断点触发:

方法2 - 采用如下菜单创建观察点

这种方法和法1类似。

方法3 - 使用ABAP调试器脚本

切换到Script tab,创建一个新的脚本:

点击Script向导按钮, 双击选项Variable Value(for Simple Variable):

这个向导会自动生成一些脚本源代码,也就是下图红色方框内的代码。我们需要做的事情就是手动写下第51行到第53行的代码。点击按钮"Save As"保存这段脚本并给其取个名字,例如ZJERRY_TEST。

再次启动您的程序,加载刚才保存的脚本ZJERRY_TEST。

然后点击下面的按钮:

断点同样会自动停下来:

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

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏猛牛哥的博客

解决sendmail启动慢和发邮件慢的问题

20020
来自专栏Java技术分享

1.第一个SpringBoot应用和项目属性配置

SpringBoot和SpringMVC的区别 SpringBoot的特点:     1.简化配置     2.微服务的入门级微框架 此文章学习目标如...

35470
来自专栏Linux技术资源分享

Chrome扩展开发入门体验

23740
来自专栏守望轩

Visual Studio 2008 每日提示(三十四)

#341、导出模板不选择“在资源管理器显示” 原文链接:What unchecking the display an explorer window on t...

31040
来自专栏运维小白

2.5 alias命令

which 是用来查看一个文件所在的路径 alias 命令可查看系统所有的 别名命令 PATH 系统的环境变量 echo $PATH 可以查看环境...

21760
来自专栏开发之途

用WordPress搭建个人网站(1)

67760
来自专栏繁花云

[转载]利用预加载InstantClick.js提升页面打开速度

通常,我们为了减少DNS的查询时间,我们可以使用dns prefetch为该页面中链接的做解析,提升页面的加载速度。类似的,我们可以在鼠标滑到链接上到点击的时间...

24000
来自专栏对角另一面

读Zepto源码之assets模块

assets 模块是为解决 Safari 移动版加载图片过大过多时崩溃的问题。因为没有处理过这样的场景,所以这部分的代码解释不会太多,为了说明这个问题,我翻译了...

27600
来自专栏云计算教程系列

如何在Debian 9上安装带LAMP的WordPress

WordPress是互联网上最受欢迎的CMS(内容管理系统)。它允许您使用PHP处理在MariaDB后端轻松设置灵活的博客和网站。WordPress已经看到了令...

89650
来自专栏小文博客

WordPress侧边栏“博客统计”小工具

21430

扫码关注云+社区

领取腾讯云代金券