Stepping through an application
When you have stopped execution at a breakpoint, you can use
several commands to step through your application code and use the
views to examine the effect of each statement. As you step through the
code, the debugger views change to reflect the current context of your
application and a yellow arrow cursor indicates the next statement to
be executed.
Updating the Source view
When the context of your application changes to another
script, the Source view is updated with the new context. If you have
multiple Source views open, only the first one opened is
updated.
Single-stepping through an
application
You can use either Step In or Step Over to step through an
application one statement at a time. They have the same result except
when the next statement contains a call to a function. Use Step In if
you want to step into a function and examine the effects of each
statement in the function. Use Step Over to execute the function as a
single statement.
To step through an application entering functions
-
Click the Step In button in the PainterBar, or select
Debug>Step In from the menu bar.
To step through an application without entering
functions
-
Click the Step Over button in the PainterBar, or select
Debug>Step Over from the menu bar.Using shortcut keys
To make it easier to step through your code, the debugger
has standard keyboard shortcuts for Step In, Step Out, Step
Over, Run To Cursor, and Continue. If you prefer to use
different shortcut key combinations, select Tools>Keyboard
Shortcuts to define your own.
Stepping out of a
function
If you step into a function where you do not need to step into
each statement, use Step Out to continue execution until the function
returns.
To step out of a function
-
Click the Step Out button in the PainterBar, or select
Debug>Step Out from the menu bar.
Stepping through multiple
statements
As you step through an application, you might reach sections of
code that you are not interested in examining closely. The code might
contain a large loop, or it might be well-tested code that you are
confident is free of errors. You can use Run To Cursor to select a
statement further down in a script or in a subsequent script where you
want execution to stop.
To step through multiple statements
-
Click on the line in the script where you want to resume
single stepping. -
Click the Run To Cursor button in the PainterBar, or select
Debug>Run To Cursor from the menu bar.PowerBuilder executes all intermediate statements and the
yellow arrow cursor displays at the line where you set the
cursor.
Bypassing statements
You can use Set Next Statement to bypass a section of code that
contains a bug, or to test part of an application using specific
values for variables. Execution continues from the statement where you
place the cursor. Be cautious when you use Set Next Statement, because
results may be unpredictable if, for example, you skip code that
initializes a variable.
To set the next statement to be executed
-
Click on the line in the script where you want to continue
execution. -
Click the Set Next Statement button in the PainterBar, or
select Debug>Set Next Statement from the menu bar. -
If necessary, change the values of variables.
-
Continue execution using Continue, Step In, or Step
Over.If you select Continue, PowerBuilder begins execution at the
statement you specified and continues to the next breakpoint. If
you select Step In or Step Over, PowerBuilder sets the next
statement and displays the yellow arrow cursor at the line where
you set the cursor.
Changing a variable’s
value
As you step through the application, you can change the values
of variables that are in scope. You may want to do this to examine
different flows through the application, to simulate a condition that
is difficult to reach in normal testing, or if you are skipping code
that sets a variable’s value.
Limitations
You cannot change the values of enumerated variables, and you
cannot change the value of any variable when you are debugging a
remote component.
To change the value of a variable
-
Select the variable in the Variables view or the Watch
view. -
From the pop-up menu, select Edit Variable.
-
Type a value for the variable or select the Null check box
and click OK.The value you enter must conform to the type of the
variable. If the variable is a string, do not enclose the string
in quotes. When you continue execution, the new value is
used.
Fixing your code
If you find an error in a script or function during a debugging
session, you must close the debugger before you fix it. After you have
fixed the problem, you can reopen the debugger and run the application
again in debug mode. The breakpoints and watchpoints set in your last
session are still defined.