Using the WATCH Command

If you use the WATCH command, it must be entered as a single command; no other debug commands are allowed on the same command line.
  • To access the Work With Watch display shown below, type:
    WATCH
    on the debug command line, without any parameters.
    Figure 1. Example of a Work with Watch Display
                                    Work with Watch
                                                        System:  
      Type options, press Enter.
        4=Clear 5=Display
      Opt    Num      Variable                  Address            Length
       -     1        SALARY                    080090506F027004   4
                                                                    Bottom
     Command
     ===>____________________________________________________________________
     F3=Exit  F4=Prompt  F5=Refresh   F9=Retrieve   F12=Cancel

    The Work with Watch display shows all watches currently active in the debug session. You can clear, and display watches from this display. When you select Option 5 Display, the Display Watch window shown below displays information about the currently active watch.

    Figure 2. Example of a Display Watch Window
                               Work with Watch
     ..........................................................
     :                     Display Watch                      :  
     :                                                        :
     :  Watch Number ....:   1                                :
     :  Address .........:   080090506F027004                 :
     :  Length ..........:   4                                :
     :  Number of Hits ..:   0                                :
     :                                                        :
     :  Scope when watch was set:                             :
     :    Program/Library/Type:    PAYROLL     ABC    *PGM    :
     :                                                        :
     :    Module...:    PAYROLL                               :
     :    Procedure:    PAYROLL                               :
     :    Variable.:    SALARY                                :
     :                                                        :
     :  F12=Cancel                                            :
     :                                                        :
     ..........................................................
                                                                    Bottom
     Command
     ===>____________________________________________________________________
     F3=Exit  F4=Prompt  F5=Refresh   F9=Retrieve   F12=Cancel
  • To specify a variable or expression to be watched, type:
    WATCH expression
    on the debug command line.
    This command requests a breakpoint to be set if the value of expression is changed from its current value.
    Note: expression is used to determine the address of the storage location to watch and must resolve to a location that can be assigned to, for example:
    %SUBSTR(X 1 5)

    The scope of the expression variables in a watch is defined by the most recently issued QUAL command.

  • To set a watch condition and specify a watch length, type:
    WATCH expression : watch length
    on a debug command line.

    Each watch allows you to monitor and compare a maximum of 128 bytes of contiguous storage. If the maximum length of 128 bytes is exceeded, the watch condition will not be set, and the issues an error message.

    By default, the length of the expression type is also the length of the watch-comparison operation. The watch-length parameter overrides this default. It determines the number of bytes of an expression that should be compared to determine if a change in value has occurred.

    For example, if a 4-byte integer is specified as the variable, without the watch-length parameter, the comparison length is four bytes. However, if the watch-length parameter is specified, it overrides the length of the expression in determining the watch length.