14.01.2020 Views

ABAP_to_the_Future

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Script Tab Overview 5.1

rally, then it runs right then and ther e, using the informat ion available at the

exact point you are at in the debugger.

Figure 5.3 Trigger Settings

If you choose After Debugger Event and then choose Execute, then you control

how many times the script will run, if at all, based on further settings, which you

make in the checkboxes below the After Debugger Events button:

왘 Debugger Single Step

If you choose this, then your script will run after every single ABAP statement

has been executed. This is for when you have absolutely no idea where in the

program the Bad Thing you are investigating occurs.

왘 Breakpoint Reached

You know what a breakpoint is, and this is no different. Every time a specified

breakpoint is reached, the script will run. This is for when you suspect the

problem occurs after a specific statement, such as AUTHORITY_CHECK, or after the

call of a particular function module. Note that with the advent of the new

debugger the breakpoint options were dramatically expanded.

왘 Watchpoint Reached

Once again, the watchpoint occurs wh en a specified variable value changes,

and each time this happens your script will run. This is for when you know a

problem is caused by a variable being set with a dodgy value, and you want to

know what is causing it.

You would be forgiven for thinking that your script would stop at the dynamic

breakpoints and watchpoints you have al ready specified during your debugging

session, but you would be wrong. In fa ct, breakpoints and watchpoints are specific

to a given script and have to be defined accordingly. To that end, when you

select the breakpoint or wa tchpoint checkboxes, you will see a little pencil icon

pop up to the right of the checkbox (Figure 5.4).

207

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!