How To Use The SAP ABAP Debugger Efficiently

The ABAP Debugger is used tool to execute and analyze programs line by line. Using it we can check the flow logic of a program and display runtime values of the variables. Currently, SAP offers two types of Debuggers:

  • The Classic ABAP Debugger
  • The New ABAP Debugger

The Classic ABAP Debugger, with its old user interface and its limitations to debug certain types of ABAP program is now not in use by many new and old ABAP developers.

Learn How To Use The ABAP Debugger In This Training Course

The New ABAP Debugger, with its state of the art and flexible user interface, can be used to debug all types of ABAP programs. It provides many new features which improve our efficiency of debugging, both in ABAP support and development.

In this article, we will learn how to use these new features and discover some tips and tricks to efficiently use ABAP debugger.

Switching between the ‘Classic Debugger’ and ‘New Debugger’

You can switch between both the debugger and make any one your default debugger. To do this, go to ABAP Editor (SE38)→ Utilities → Settings.

SAP ABAP Editor - SE38

Now in the user-specific settings pop up box click on ABAP Editor tab and then click on Debugging.

Click On ABAP Editor Tab And Then Click On Debugging

Here you can select the New Debugger radio button to make it your default debugger.

Select The New Debugger

External (User) Debugging

External debugging is used when we want to analyze our program which is called by an external user through HTTP such as Web Dynpro ABAP, Web Dynpro JAVA, and BSP etc. To activate external debugging we have to set external breakpoints, which can be set just like the session breakpoints by keeping the cursor on the desired code line and clicking on the ‘External Breakpoint’ icon.

External Breakpoint’ Icon

We can also set the external user for whom the breakpoint is to be activated by going to ABAP Editor (SE38)→ Utilities → Settings, and in the ‘user-specific settings’ pop up box click on ABAP Editor Tab and then click on Debugging.

Here you can specify the username.

ABAP Editor (SE38)→ Utilities → Settings

ABAP Editor (SE38)→ Utilities → Settings


Click To The Watchpoint Button In The New ABAP Debugger

Watchpoints can be used to break the execution of a program when the values in a variable changes.

This help us to go to the exact position where the variable changes. You can also specify conditions in Watchpoint and the execution of the program will break as soon as the condition is fulfilled.

To create a Watchpoint, click to the Watchpoint button in the New ABAP Debugger.

Now, in the Create Watchpoint pop up enter the variable name for which you want to create the Watchpoint.

Create Watchpoint Pop Up Enter The Variable Name

Debugger Variants

With the help of Debugger Variant you can save the current debugger settings into the database or to a local file. These settings include breakpoints, UI customizations and other special options for debugging tools.

Next time, when you will be debugging the same application you will not have to set breakpoints again or to do all the settings again. Also, when you are working in a large team then you can also pass the debugging variants to other users.

To save the ‘Debugging Variant’ go to Debugger→ Debugger Session→ Save

To Save The ‘Debugging Variant’ Go To Debugger→ Debugger Session→ Save

 You can save the current debugger session either to a file or in the database.

Save The Current Debugger Session Either To A File Or In The Database

In the Debugger Variant you can save the following components :

  1. Layout
  2. Breakpoints
  3. Settings
  4. Options

Save The Components In The Debugger Variant

To load the saved Debugger variants go to Debugger → Debugger Session → Load

Debugger → Debugger Session → Load To Load The Saved Debugger

Debugging a modal window

Generally, we can activate debugging by typing /h in the command line, but what if the command line is not there?

Activate Debugging By Typing /h In The Command Line

Often you will come across modal windows and other pop-up windows command line is not present and we cannot activate debugging directly. In such cases, you can either create a SAPGUI shortcut of type ‘System Command’ and command ’/h’ or create a text file with below texts.


To debug a modal window drag and drop the above created file over it.

Drag And Drop The Above Created File To Debug A Modal Window

Debugging Tricks

Many a times, due to an incorrect entry in a database table or a table without maintenance view we are not able to create, edit or delete a database record. In these cases we can use this debugging trick.

To do this, go to transaction code SE16.

Go To Transaction Code SE16

Enter the name of your database table. Select the line which you want to process, and press the display button. Enter /h in the command line and hit enter button two times.

Enter /h In The Command Line And Hit Enter Button Two Times

Now, the debugger window will open and you can see the source code. Click on the variable CODE, it will have ‘SHOW’ as its value.

Click On The Variable CODE, It Will Have ‘SHOW’ As Its Value

Here you can edit this variable and set the new value based on the operation you want to perform.

By setting the variable ‘CODE’ with value as ‘EDIT’ you can edit records,

INSR’, Insert new records

DELE’, Delete records

And, ‘ANVO’ is for editing the record with primary keys.

Set The Variable ‘CODE’ With Value As ‘EDIT’

After setting the variable with the required operation, hit F8. Now, you are in EDIT mode. Press save button to save the record.

Hit F8 After Setting The Variable With The Required Operation

The Magic of SHIFT + F12

You can use this key combination to bypass a specific line of code such as a normal sy-subrc check or an authorization check. To jump or bypass any line/lines of code all  you have to fo is just put your cursor on the desired line and then press the SHIFT + F12 key.

Some limitations of New ABAP debugger Screen Debugging

When you try to set breakpoints in screen/dialog programs, you get the message stating that debugging is not yet supported.

Some Limitations Of New ABAP Debugger Screen Debugging

To get by this and debug your screen/dialog programs just switch back to the classical debugger.

Switch To The Classical Debugger To Debug Screen/Dialog Programs

ABAP Memory ID

In the new debugger it is not possible to view the used ABAP memory ID’s and their content. But, in the classical debugger you can view the ABAP memory IDs by going to Go to → System Areas → ABAP Memory

Go to → System Areas → ABAP Memory In The Classical Debugger


About the Author:

Pete has been working with SAP technologies for over 10 years. He started out as an ABAP consultant and then moved on to BW where he has worked many different clients covering a wide variety of industries. "I love introducing SAP technology (especially BI) to new clients and showing them how they can go from zero to hero within their business in super fast time". Contact me on twitter @PeterMoxon

  1. chris

    Hi Pete
    Nice doc, especially helpful to those functional guys who wants to enhance their skills in ABAP..

  2. Ibrahim

    it is really gooooooooooood tutorial it helps every abap developer, you are the best Peter, you can really good explain. I wish you all the best.