abap debug详解编程语言

前言

接触一门新语言后学习如何debug是必不可少的,debug可以更好了解程序中逻辑以及查找bug原因。下文将介绍一些常用的debug方法,有问题的地方欢迎指出。

断点

断点类型分为会话断点和外部断点,将光标停留在打断点行,点击断点按钮,当点击测试或执行后程序执行到达断点位置会自动跳转到debug界面。执行debug前需先将程序激活。
断点位置 调试断点会话断点
会话断点:同一用户不同窗口都有效,直到用户注销。
外部断点
外部断点:用户注销再次登录依然有效,但只针对同一用户。
调试断点
调试断点:在debug中添加的断点,调试结束就会消失。

调试按钮

在这里插入图片描述
四个按钮快捷键分别对应F5, F6, F7, F8

  1. F5:逐行执行代码,在执行到perform,function等时会执行其内部代码。
  2. F6:和F5很相似,区别是执行到perform,function时不会执行其内部代码。
  3. F7:会一次执行完当前代码所在过程,如在perform,function中,会执行完其全部
      代码并跳出返回上一层调用处。如在主程序中,会直接执行完程序。
  4. F8:下面有断点执行到下一断点,无断点则执行完程序。

静态断点

  1. BREAK-POINT.      “所有用户都会暂停
  2. BREAK ‘USERNAME’. ”只有用户 USERNAME 执行程序会执行断点

针对类型断点

新版debug
点击上图按钮可以切换成新版debug。
根据类型断点
选择菜单栏中的Breakpoints->Breakpoint at 可以根据条件选择不同类型断点。

1.Breakpoint at Statement(语句断点)

语句断点
可以输入abap语法关键字,执行到时停止。

2.Breakpoint at Subroutine(子过程断点)

子过程断点
输入程序名称和form名称,执行到时会停止。

3.Breakpoint at Function Module(函数断点)

函数断点
输入function名称,执行到指定function时会停止。

4.Breakpoint for Method(方法断点)

方法断点
根据需要,选择类的类型,输入类名及方法名称,执行到时会停止。

5.Breakpoint at Exception(异常断点)

异常断点
旧版异常不需要输入异常类。

6.Breakpoint at Source Code(源码断点)

源码断点
基本没有用过,感觉效果和直接手动打调试断点效果差不多,如果指定行不是可执行代码会提示错误。

7.Breakpoint at Message(消息断点)

消息断点
有满足条件的消息时会停止。

创建观察点

创建观察点
1.点击Watchpoint按钮。
2.Variable输入变量名称,Program name默认当前程序名称。
3.Condition输入框输入需要停止的条件。
4.Free Condition Entry中有一些关于条件的说明和例子。

查看断点
在Break./Watchpoints标签页中可以查看自己设定的断点,Watchpoints可以查看设定的观察点。

查看调试过程中变量值

调试过程
可以双击程序中要查看的变量,或者手动输入变量名称并回车。
查看变量中的值可以直接双击右侧变量,或到对应的标签页输入变量名称查看。
下图分别为内表 gt_spfli 和工作区 gw_spfli 中的值。
查看变量
查看变量

调试标准程序

想对标准程序进行调试,可以在执行前在输入tcode的输入框中输入’/H’,然后点击执行。/H

原创文章,作者:Maggie-Hunter,如若转载,请注明出处:https://blog.ytso.com/tech/pnotes/17880.html

(0)
上一篇 2021年7月19日 20:35
下一篇 2021年7月19日 20:35

相关推荐

发表回复

登录后才能评论