- Click
View and make sure
Show Line Numbers is selected.
- Use the Find feature in the CodeWatch Debugger to find the line containing the string
SYSIN_NUM_RECS. Right-click on the string and select
Add 'SYSIN_NUM_RECS' to watch panel.
This adds the variable
SYSIN_NUM_RECS to a list of monitored variables. You can see all watched variables in the Exp (expression) column of the Watch list, alongside their current value.
SYSIN_NUM_RECS is currently uninitialized. You can also use the Watch list to overwrite a variable's value.
Tip: If the Watch list is not displayed, you can open it by choosing
.
- Use the Find feature again to find the string
SYSPRINT_BUFF. Right-click on that string and select
Add 'SYSPRINT_BUFF' to watch panel to set a watch on that variable.
- Double-click anywhere on the line that reads
on error begin;.
This introduces a breakpoint at the executable line, indicated by a red circle in the left margin.
Tip: You can see a list of all breakpoints in the Break list (choose
).
- Press the
Continue button
. Processing starts, and pauses when it reaches the breakpoint.
- Using the Find feature, find the line that contains
ON ENDFILE (SYSUT1) and double-click anywhere on the line to introduce a new breakpoint.
- Press
Continue again. When execution stops at that line, you can see that the watched variables remain uninitialized.
- Press the
Step into button
twice to execute the next two statements.
Look at the Watch list to see the values of the variables at this point: the
SYSPRINT_BUFF variable has changed to
ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ12 following the sequence of commands to populate
SYSPRINT_BUFF.
- Continue to press
Step into to step through the code one line at a time until the line that reads line
sysin num recs = '0';. This line initiates the
SYSIN_NUM_RECS variable. Press
Continue again and notice that
SYSIN_NUM_RECS is updated in the Watch view with its initialized value of 0000.
- Continue to press
Step into to step through the code until reaching the line after the line that reads
sysin_num_recs = sysin_num_recs + 1;, at which point 1 is added to
SYSIN_NUM_RECS. You can see the new value in the Watch view.
- Set a breakpoint on the last line of the program, contain the
END statement.
- Press
Continue.
When the debugger reaches the
END statement, you can see from the final value of
SYSIN_NUM_RECS (0004) that the program has processed five records. Go back to line first line in the program containing the string
SYSIN_NUM_RECS, right-click the variable name and choose
View contents of '[variable name]' to view the variable's current value in a message box. You can get the value of any variable this way, not just those that are watched. For example, highlight find and select the string
EOF_SYSIN and view that variable's current value.
- Press any of navigation buttons to execute the
END statement and end the program.
When execution of the code has finished, and the program exited, the CodeWatch window closes.
Breakpoints and watches are not saved between debugging sessions, and you will have to set them again the next time you run CodeWatch, if required.