Those of you, who frequently check out SDN news or even had been at TechEd05 in Boston or Vienna know that the New ABAP Editor and the New ABAP Debugger won the live demo jam sessions at both events.
While there is already lots of information available about the New ABAP Editor in SDN, it is hard to get details about the New ABAP Debugger.
Therefore it’s time for a short note, which will prove that not only ABAP development with the New ABAP Editor but even bug hunting with the New ABAP Debugger can be the fun part of your live.
The New ABAP Debugger is in contrast to the good old Classic ABAP Debugger a two process debugger. This means the debuggee (the application that is being debugged) runs in one window, while the debugger occupies it’s own second window.
Without going into all the architectural details of this decoupling, it should be pointed out that this makes it now possible to provide a state-of-the art debugger UI and finally supply all the debugging features you’ve ever dreamed of.
Some basics about the UI of the New ABAP Debugger
In the New ABAP Debugger you have several debugger desktops, which can be customized to your needs. On each desktop you can arrange from only 1 up to 4 arbitrary debugger tools.
For example you may display the source code in full screen mode ( see screenshot 1 below ), display two internal tables in parallel ( see screenshot 3 below ) or visualize the source code, a complex data object and the inheritance of an object at the same time ( see screenshot 4 below), or whatever you prefer.
Customizing the UI is as easy as a mouse click and of course you can save your UI settings for later use.
Adopting the UI and, in contrast to the Classic ABAP Debugger, using the full size of your screen for debugging information is already quite nice but here are some selected features which will boost your trouble shooting efficiency:
- Use the integrated New ABAP Editor to have syntax coloring and to display variable values just by pointing at a variable ( see screenshot 1 below ).
- Display all local variables and parameters of e.g. a method ( see screenshot 2 below )
- Store the parameters of a function module in the test environment of function builder, to run a single test with this test data later on
- Display all global variables (globals) of the current program or even all globals of all loaded programs ( see screenshot 5 below)
- Use watchpoints on internal tables to find out where the table is changed
- Use the diff tool to compare e.g. 2 internal tables with 10000 lines within 1 second ( see screenshot 6 below )
Screenshot 1: Full-screen source code view: New ABAP Editor with variable quick info window
Screenshot 2: Local varables including procedure signature
Screenshot 3: Compare two internal tables using two table views in parallel
Screenshot 4: Three tools on one destop: The source code display, the object view with the inheritance hierarchy and the data explorer
Screenshot 5: List of all loaded programs: By clicking on the program name you get detailed info about all global variables
Screenshot 6: Integrated Diff tool, showing the differences between two internal tables (ITAB-PRICE <> ITAB_COPY-PRICE)