ABAP Blog Posts
cancel
Showing results for 
Search instead for 
Did you mean: 
yury_sichov
Active Contributor
4,082

Hello everyone. I invented a new Abap debugger ) This is an ABAP Script  which can be used like addon to the standard debugger. 

The main feature is that  it can work as debugger time machine which store every variables changes on every steps and show it in convenient format. Usuful to analyse deep structures, several tables simultaneously and search changes in the past!

Instance variables, structures and deep structures are shown as  hierarchiсal trees so we can have a 'helicopter view' for all variables at any step! Double-click on any table variable or table inside a deep structure will show it in separate window! And we don't have no limitations for windows quantity. If you have a big display you can open more then 10 tables simultaneously and analyse it!

deep.png

Also it can show mermaid diagram with calls execution or draw execution flow

Stack callsStack calls

After double-click on any variable it works as watchpoint and collects not only selected variables but dependents also (forms/methods/functions call). Button "Calculation Flow" will paint all steps in the code where variables were changed and paints Mermaid diagram for it. 

The main profit for me is to getting calculation history quick. As I am an HR developer I tested salary calculations cases. In the classic debugger I can set a watchpoint. But in real program variables names are altered by calls. I name it outer and inners names. And in real debugging I should find manually all that altering to get the origin of all calculations. With Smart Debugger I get calculations history immediately because it can track all that names changes and can collect history path for selected variable by me.

calc.png

Mermaid version is here.

We can Set/Delete Session/External breakpoints and run standard debug buttons( F5. F6, F7, F8). Also we can get back to the past steps and see variables state at that moment.

So set break-points in any abap code and run. After break-point is triggered, go to the last tab "script" and paste the script. Choose radio button "Execute directly" and press "Start Script" button.

start.png

Iterators example

iter.png

Feel free to open any issue or Idea/requests for changes. 

3 Comments
KishoreMarodia
Explorer

As they, real innovations are USER Innovations, where a user simplifies their work. They know their day to day challenges, and then they come up with small but highly useful way of handling it. Thanks for sharing

droutray
Explorer

Hi Yuri , 

I added the script and tried to use the new script. Debugging is very slow . 

yury_sichov
Active Contributor

Now it has a speed about 33 steps per second. So for small program is quite ok. But you are right - optimization is needed.

Top kudoed authors