SAP debug调试方法
文章目录
一、调试介绍
1、调试按钮
-
从左至右,依次是F5、F6、F7、F8
-
F5:为单步执行,按F5键程序将逐行执行,若代码中包含子程序或函数,则会转入该函数中单步调试
-
F6:只在本程序中单帧执行,遇到子程序或函数时会直接执行。
-
F7:会一次性执行完 当前代码所在的过程,如子程序和函数,若在主程序中,则直接执行完该程序。
-
F8:跳过后面所有断点,程序执行完。
2、调试方式
-
调试断点-debug时打的断点,程序远程完后就会消失
-
会话断点-程序运行前通过
会话断点按钮打的断点,在同一登录会话不同窗口都有效,用户注销后消失
-
外部断点-程序运行前通过
外部断点按钮打的断点,用户注销后再登录还是有效,但只针对同一用户有效
-
静态断点-通过代码来控制调试的地方
BREAK 'sapecc'."会在用户SAPECC运行程序时暂停 BREAK-POINT."所有的用户在运行程序时都会暂停
注:上面两个语句需要在程序代码里写死,是否开启调式需要修改代码,然后需要重传测试机与生产机,我们可以通过下面灵活的方式来实现:在程序中调用函数C160_BREAK_POINT,然后在SU01里面对当前账户做如下设置,这样使用该账号运行时则会进入断点。
二、调试方式:需要在ABAP调试模式已启动的情况下,才能进行语句断点的设置
1、语句断点:在运行到设置的语句位置时会停下来
2、FORM断点:在运行到指定的Form位置时会停下来
3、函数断点:在运行到指定的函数时会停下来
4、类方法断点:在运行到设置的语句位置时会停下来
5、异常断点:运行时抛出异常时会停下来
6、消息断点:抛出某种消息时会停下来
7、条件断点:例如,内表循环值对应值时停止
-
调试进内表循环,进行一下操作
-
使用F8执行程序,程序会在物料号码等于7185002CAD0000M10时停止
-
如需跳出循环,只要在(断点/监控点)页签,将对应的断点删除即可。
8、通过“/H”命令启动调试
-
在程序(或事务码)执行前,在SAP工具栏命令行中输入“/H”(实质上输入的是OK-Code),执行程序后将自动进入调试状态,这对于调试SAP系统程序的有很大的帮助。
-
输入事务码,如SM30,再输入“/H”,则会进自调试模式: