Conditions are simple comparisons between two numeric, pointer or alphanumeric data items or literals, including figurative constants. The comparisons are done according to the rules for COBOL. Any data items referenced must exist in the program containing the breakpoint. If the condition is not meaningful or is illegal (including table boundary violations), then the breakpoint is immediately activated when it is reached and an error message follows.
The allowed comparison operators are "=", "<", ">", "<=" and ">=". You may place the word "NOT" before any of the "=", "<", ">" operators.
The allowed logical operators are "AND" and "OR" .
Grouping operators are "(" and ")" .
Level 88 items can be tested using either the item name for a true condition or with "NOT" for a false condition.
Constants are treated as Alphanumeric items.
Reference modification can be used on Alphanumeric data items.
This tip uses the attached program perf2.cbl
This will set a breakpoint that is conditional on the following conditions
( TBED-DBID-SS = 99 ) OR SW1-TESTON OR NOT SW2-TESTON OR ( TBED-TMP2 = "ABCDE" AND TBED-TMP3(3:1) = "9" )
- Debug perf2.
- Set a breakpoint on the 1st statement in "99930-LOAD-DEFAULTS" (i.e. "MOVE TBED-DBID-SS TO TBED-TMP").
- In the "Breakpoints" view, select the COBOL breakpoint, right click and select properties.
- In the properties view as shown below, select the "Enable Condition" check box.
- In the text-input area for the Condition, enter the above condition and click the "OK" button.
- Hit F8 to resume execution.
- The debugger suspends execution on the MOVE statement when the condition is satisfied. Execution should pause at 001, 002, 003 and 0098 .