声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将追究法律责任!原文链接:http://www.cnblogs.com/jiangzhengjun/p/4293693.html

调试键

F8:跳过后面所有断点,程序执行完

外部、会话、调试断点

调试断点-debug时打的断点,程序远程完后就会消失

会话断点-程序运行前通过会话断点按钮打的断点,在同一登录会话不同窗口都有效,用户注销后消失

外部断点-程序运行前通过外部断点按钮打的断点,用户注销后再登录还是有效,但只针对同一用户有效

静态断点

BREAK'sapecc'."会在用户SAPECC运行程序时暂停

BREAK-POINT."所有的用户在运行程序时都会暂停

注:上面两个语句需要在程序代码里写死,是否开启调式需要修改代码,然后需要重传测试机与生产机,我们可以通过下面灵活的方式来实现:

调用  C160_BREAK_POINT

call function  'C160_BREAK_POINT'.

然后在su01里对当前账户做如下设置:

这样这个账号 在运行加有上面函数的程序是 会断点进去。

这种方式只需要在su01里面将esp 这个参数值改成 不等于 ‘X’ 那么该用户在运行程序的时候就不会有断点存在。

语句断点

语句断点:在运行到设置的语句位置时会停下来

注:需要在ABAP调试模式已启动的情况下,才能进行语句断点的设置

子过程(Form)断点

Form断点:在运行到指定的Form位置时会停下来

注:需要在ABAP调试模式已启动的情况下,才能进行语句断点的设置

函数断点

函数断点:在运行到指定的函数时会停下来

注:需要在ABAP调试模式已启动的情况下,才能进行语句断点的设置

类方法断点

运行时会在指定类的方法中停下来

异常断点

运行时抛出异常时会停下来

基于类异常与老式异常都可以

消息断点

抛出某种消息时会停下来

条件断点

当满足一定条件时,程序暂停,并跳转到相应代码行:

如果你对字段MATNR设置观察点(条件matnr = '1234'), 那么程序流将会在字段MATNR改变并且值等于'1234'的时候停止。

如果在设置观察点时没有设定条件,那么只要字段MATNR的值改变时,程序流将会停止:

断点(包括条件断点)的管理可以在“Break-Watchpoints”布局视图中查看:

通过“/H”命令启动调试

在程序(或事务码)执行前,在SAP工具栏命令行中输入“/H”(实质上输入的是OK-Code),执行程序后将自动进入调试状态,这对于调试SAP系统程序的有很大的帮助

输入“/h”回车后,再输入事务码,如SM30,则会进自调试模式:

通过“/H”命令文本方式启动调试

直接输入“/H”的方法要求必须是在命令输入框可输入状态时才能使用,若遇到对话框屏幕时,是无法输入“/H”命令的,此时可能通过创建好的“/H”快捷方式来启动调试。

如下图所示红色框中的预览按扭,如果你希望在点击这个按扭的时候进入debug模式,此时弹对话框是模式窗口,命令行不能继续僌,如现在要进行调试,你该怎么做呢?

新创建一个文本文件,并在文件中输入如下内容:

[Function]

Command=/H

Type=SystemCommand

使用本文档很简单,将本文件拖动到窗口中松手,并再执行你想要的操作,这样就会进入调试模式了。

ABAP断点调试的更多相关文章

  1. ABAP 断点篇-001

    断点技能不足! 6.2.4 可在调试画面设置break-point.方法:在代码前面双击 6.2.5 为指定语句设置断点方法:(1)选择菜单:Breakpoints->Breakpointat ...

  2. PhpStorm集成xdebug进行断点调试

    本文介绍如何使用PhpStorm集成xdebug在本地开发环境进行断点调试的技巧. 我配置的环境是:Windows10 + PhpStorm10.0.1 + PHP5.6. 1. 下载xdebug的扩 ...

  3. PyCharm断点调试django

    我在用PyCharm开发django程序的时候,对于打印日志调试程序的方式感觉还是有点麻烦和不直观,所以研究了一下断点调试的方法如下: 1.打开你的工程,在菜单栏里找到Run-->Edit Co ...

  4. netbeans-xdebug 断点调试php

    来自NetBeans官网的帮助文档: https://netbeans.org/kb/docs/php/debugging_zh_CN.html 但具体问题,我们还是要说下 准备工作 本地部署的ser ...

  5. Drools mvel方言drl断点调试方法

    开发环境:myeclipse2014,  jdk1.8.0.91,drools6.4.0.Final, drools-eclipse-plugin,mvel2-2.2.6.Final问题描述:drl使 ...

  6. Eclipse断点调试

    转自:http://blog.csdn.net/maritimesun/article/details/7815903 作为开发人员,掌握开发环境下的调试技巧十分有必要.去年就想把关于Eclipse断 ...

  7. js断点调试心得

    虽然网上已经有多的数不清的调试教程了,但仍然没有发现哪篇文章写的通俗易懂,索性自己尝试写写自己的一些使用习惯或者说是心得,希望对那些还不是很懂得使用断点调试的孩子有一些帮助(大神请无视~). 1.断点 ...

  8. chrome developer tool—— 断点调试篇

    断点,调试器的功能之一,可以让程序中断在需要的地方,从而方便其分析.也可以在一次调试中设置断点,下一次只需让程序自动运行到设置断点位置,便可在上次设置断点的位置中断下来,极大的方便了操作,同时节省了时 ...

  9. .NET C#微信公众号开发远程断点调试(本地远程调试生产环境代码)

    最近在做微信公众号开发,由于之前没有接触过,突然发现调试不方便,不方便进行断点跟踪调试.因为微信那边绑定的服务器地址必须是公网地址,但是还是想进行断点调试(毕竟这样太方便了,程序有Bug,一步步断点跟 ...

随机推荐

  1. 终于有SpringMvc与Struts2的对比啦(转)

    本文转自:http://www.itsource.cn/web/news/5/20150318/370.html 目前企业中使用SpringMvc的比例已经远远超过Struts2,那么两者到底有什么区 ...

  2. 关于路由器自定义 3322.org 的DDNS

    首先, 3322.org, 现在官网地址为: http://www.pubyun.com/ 注册用户后,如果支持 3322 的路由器,可以直接设置. 不支持的路由就要想办法自定义了. 3322 的 D ...

  3. linux设备驱动归纳总结(三):6.poll和sellct【转】

    本文转载自:http://blog.chinaunix.net/uid-25014876-id-61749.html linux设备驱动归纳总结(三):6.poll和sellct xxxxxxxxxx ...

  4. android 中activity调用本地service中的方法。

    1.自定义一个接口,暴露服务中的方法 public interface IService {    /**服务中对外暴露的方法 */    void methodInService();} 2.自定一 ...

  5. CentOS 7 更新源 – 使用国内 163 yum 源

    突然想起试试 Docker,在一台计算机上安装了 CentOS 7,准备开工,突然想起还需要做一件事情,更改源,不然安装肯定会很慢,网上搜索了一下,文章很多,但是会出一些问题,所以将自己的成功的日志写 ...

  6. shell中读写mysql数据库

    本文介绍了如何在shell中读写mysql数据库.主要介绍了如何在shell 中连接mysql数据库,如何在shell中创建数据库,创建表,插入csv文件,读取mysql数据库,导出mysql数据库为 ...

  7. yii2 批量插入or更新

    $sql1 = 'insert into business_ip (gid, name, area, belongName, belongArea, destIPv4, created, update ...

  8. openlayers 学习笔记一

    1. 创建地图,加载控件 var map = new OpenLayers.Map("map", { projection: new OpenLayers.Projection(& ...

  9. mini.open打开窗口时传递参数

    mini.open({ url: "xxx.html", showMaxButton: false, allowResize: false, title: '标题', width: ...

  10. java实现map和object互转的三种方法

    /**  * 使用org.apache.commons.beanutils进行转换  */  class A {              public static Object mapToObje ...