Example 1
Insert additional DO statements within a DO block using command I (Insert).
Figure 395 Example 1 - Using Insert Command - Before
          LIBRARY : CTB.PROD.RULES                                RULE : REORDER
  COMMAND ===>                                                    SCROLL===> CRSR
     +--------------------------------------------------------------------------+
     __ ===========================================================================
     __ /* COMPARE THE CURRENT ON-HAND AMOUNT (DATA BASE VARIABLE
     __ /* CURR_ONHAND) TO THE MINIMUM REQUIRED AMOUNT (DATA BASE VARIABLE
     __ /* MIN_CHR001). DETERMINE IF REORDERING IS NECESSARY, AND PRINT A
     __ /* MESSAGE INDICATING THE RESULTS
     __ EXECUTE COMPARE  UPON                                                   C
     __ ON DATA
     __ ALWAYS
      I   DO SET      = DIFFER=CURR_ONHAND-MIN_CHR001                           C
     __   DO
     __ IF       CURR_ONHAND>=MIN_CHR001                                        C
     __   DO PRINT    = DO NOT REORDER; SURPLUS=%%DIFFER                    F   C
     __   DO
     __ ELSE
     __   DO PRINT    = REORDER; DEFICIT=%%DIFFER                           F   C
     __   DO
     __              (ENTER "ALWAYS", "IF")
     __ ===========================================================================
     __ EXECUTE          UPON                                                   C
     __ ON
     PLEASE FILL IN RULE DEFINITION.                                     08.53.27
An additional DO statement line has been opened.
Figure 396 Example 1 - Using Insert Command - After
          LIBRARY : CTB.PROD.RULES                                RULE : REORDER
  COMMAND ===>                                                    SCROLL===> CRSR
     +--------------------------------------------------------------------------+
     __ ===========================================================================
     __ /* COMPARE THE CURRENT ON-HAND AMOUNT (DATA BASE VARIABLE
     __ /* CURR_ONHAND) TO THE MINIMUM REQUIRED AMOUNT (DATA BASE VARIABLE
     __ /* MIN_CHR001). DETERMINE IF REORDERING IS NECESSARY, AND PRINT A
     __ /* MESSAGE INDICATING THE RESULTS
     __ EXECUTE COMPARE  UPON                                                   C
     __ ON DATA
     __ ALWAYS
     __   DO SET      = DIFFER=CURR_ONHAND-MIN_CHR001                           C
     __   DO                                                                    C
     __   DO
     __ IF       CURR_ONHAND>=MIN_CHR001                                        C
     __   DO PRINT    = DO NOT REORDER; SURPLUS=%%DIFFER                    F   C
     __   DO
     __ ELSE
     __   DO PRINT    = REORDER; DEFICIT=%%DIFFER                           F   C
     __   DO
     __              (ENTER "ALWAYS", "IF")
     __ ===========================================================================
     __ EXECUTE          UPON                                                   C
     PLEASE FILL IN RULE DEFINITION.                                     08.53.27
Example 2
Delete an EXECUTE block. Use of the DB (Delete Block) command is the preferred method. The DB command removes all parameters, comments, continuation lines, and separator lines of the specified block. DB must be specified on a main line of the block (such as, EXECUTE or ON). In this example, the SETUP EXECUTE block (indicated by A) is deleted.
Figure 397 Example 2 - Using Delete Command - Before
           LIBRARY : CTB.PROD.RULES                                RULE : REORDER
  COMMAND ===>                                                    SCROLL===> CRSR
     +--------------------------------------------------------------------------+
     __ OWNER   M43                      GROUP ACCT_INV
     __ UPDATED 08/08/00  -  15:25:54    BY M43
     __ DESC    REORDER INVENTORY ITEM CHR001 IF NECESSARY
     __ OPTIONS
     __ ===========================================================================
     __ /* INITIALIZATION OF THE MINIMUM AMOUNT REQUIRED ON-HAND FOR
     __ /* INVENTORY ITEM CHR001.
     DB EXECUTE SETUP    UPON                                                   C
     __ ON DATA
     __ ALWAYS
     __   DO SET      = MIN_CHR001=100                                          C
     __ ===========================================================================
     __ /* DETERMINE CURRENT ON-HAND QUANTITY OF INVENTORY ITEM CHR001 BY
     __ /* EXTRACTING THIS VALUE FROM SYSOUT DDNAME INVENTRY.
     __ EXECUTE CHECK    UPON                                                   C
     __ ON SYSOUT     PROCST          PGMST          DDNAME INVENTRY JOBNM
     __    MODE PG    LINECT 0060    DATASTAMP
     __ WHEN LINE 001     - 060     COL 010     - 020     TYPE     STOP    AND/OR
     __      STRING = CHR001
     __   DO EXTRACT  = CURR_ONHAND
     PLEASE FILL IN RULE DEFINITION.                                     08.59.42
The SETUP EXECUTE block has been deleted. EXECUTE block CHECK has scrolled upwards on the Rule Definition screen.
Figure 398 Example 2 - Using Delete Command - After
          LIBRARY : CTB.PROD.RULES                                RULE : REORDER
  COMMAND ===>                                                    SCROLL===> CRSR
     +--------------------------------------------------------------------------+
     __ OWNER   M43                      GROUP ACCT_INV
     __ UPDATED 08/08/00  -  15:25:54    BY M43
     __ DESC    REORDER INVENTORY ITEM CHR001 IF NECESSARY
     __ OPTIONS
     __ ===========================================================================
     __ /* DETERMINE CURRENT ON-HAND QUANTITY OF INVENTORY ITEM CHR001 BY
     __ /* EXTRACTING THIS VALUE FROM SYSOUT DDNAME INVENTRY.
     __ EXECUTE CHECK    UPON                                                   C
     __ ON SYSOUT     PROCST           PGMST          DDNAME INVENTRY JOBNM
     __    MODE PG    LINECT 0060    DATASTAMP
     __ WHEN LINE 001     - 060     COL 010     - 020     TYPE     STOP    AND/OR
     __      STRING = CHR001
     __   DO EXTRACT  = CURR_ONHAND
     __                 LEVEL 0 LINE +000 COL +050 - +060 PROCESS          TYP
     __   DO
     __ WHEN LINE         -         COL         -         TYPE     STOP    AND/OR
     __      STRING =
     __   DO
     __ ===========================================================================
     __ /* COMPARE THE CURRENT ON-HAND AMOUNT (DATA BASE VARIABLE
     PLEASE FILL IN RULE DEFINITION.                                     09.00.12
Example 3
Move multiple DO statements from one sub-block to another. The MM (Multiple Move) command is specified at the beginning and the end of the DO statements that are moved. The B (Before) command specifies the location before which these lines are placed.
Figure 399 Example 3 - Using Move Command - Before
          LIBRARY : CTB.PROD.RULES                                RULE : REORDER
  COMMAND ===>                                                    SCROLL===> CRSR
     +--------------------------------------------------------------------------+
     __ /* COMPARE THE CURRENT ON-HAND AMOUNT (DATABASE VARIABLE
     __ /* CURR_ONHAND) TO THE MINIMUM REQUIRED AMOUNT (DATABASE VARIABLE
     __ /* MIN_CHR001). DETERMINE IF REORDERING IS NECESSARY, AND PRINT A
     __ /* MESSAGE INDICATING THE RESULTS
     __ EXECUTE COMPARE  UPON                                                   C
     __ ON DATA
     __ ALWAYS
     MM   DO SET      = DIFFER=CURR_ONHAND-MIN_CHR001                           C
     MM   DO SET      = REASON=TOLER(CURR_ONHAND,MIN_CHR001,10)                 C
     __   DO
     __ IF       CURR_ONHAND>=MIN_CHR001                                        C
     B_   DO PRINT    = DO NOT REORDER; SURPLUS=%%DIFFER                    F   C
     __   DO
     __ ELSE
     __   DO PRINT    = REORDER; DEFICIT=%%DIFFER                           F   C
     __   DO
     __              (ENTER "ALWAYS", "IF")
     __ ===========================================================================
     __ EXECUTE          UPON                                                   C
     __ ON
     PLEASE FILL IN RULE DEFINITION.                                     09.02.21
The two DO SET statements have been moved to the specified location.
Figure 400 Example 3 - Using Move Command - After
          LIBRARY : CTB.PROD.RULES                                RULE : REORDER
  COMMAND ===>                                                    SCROLL===> CRSR
  +-----------------------------------------------------------------------------+
     __ /* COMPARE THE CURRENT ON-HAND AMOUNT (DATABASE VARIABLE
     __ /* CURR_ONHAND) TO THE MINIMUM REQUIRED AMOUNT (DATABASE VARIABLE
     __ /* MIN_CHR001). DETERMINE IF REORDERING IS NECESSARY, AND PRINT A
     __ /* MESSAGE INDICATING THE RESULTS
     __ EXECUTE COMPARE  UPON                                                   C
     __ ON DATA
     __ ALWAYS
     __   DO
     __ IF       CURR_ONHAND>=MIN_CHR001                                        C
     __   DO SET      = DIFFER=CURR_ONHAND-MIN_CHR001                           C
     __   DO SET      = REASON=TOLER(CURR_ONHAND,MIN_CHR001,10)                 C
     __   DO PRINT    = DO NOT REORDER; SURPLUS=%%DIFFER                    F   C
     __   DO
     __ ELSE
     __   DO PRINT    = REORDER; DEFICIT=%%DIFFER                           F   C
     __   DO
     __              (ENTER "ALWAYS", "IF")
     __ ===========================================================================
     __ EXECUTE          UPON                                                   C
     __ ON
  PLEASE FILL IN RULE DEFINITION.                                        09.03.16
Now, the ALWAYS sub-block should be deleted. The DB (Delete Block) command is used to remove this sub-block from the definition.
Figure 401 Example 3 - Deleting Sub-Block – Before
           LIBRARY : CTB.PROD.RULES                                RULE : REORDER
  COMMAND ===>                                                    SCROLL===> CRSR
  +-----------------------------------------------------------------------------+
     __ /* COMPARE THE CURRENT ON-HAND AMOUNT (DATA BASEVARIABLE
     __ /* CURR_ONHAND) TO THE MINIMUM REQUIRED AMOUNT (DATABASE VARIABLE
     __ /* MIN_CHR001). DETERMINE IF REORDERING IS NECESSARY, AND PRINT A
     __ /* MESSAGE INDICATING THE RESULTS
     __ EXECUTE COMPARE  UPON                                                   C
     __ ON DATA
     DB ALWAYS
     __   DO
     __ IF       CURR_ONHAND>=MIN_CHR001                                        C
     __   DO SET      = DIFFER=CURR_ONHAND-MIN_CHR001                           C
     __   DO SET      = REASON=TOLER(CURR_ONHAND,MIN_CHR001,10)                 C
     __   DO PRINT    = DO NOT REORDER; SURPLUS=%%DIFFER                    F   C
     __   DO
     __ ELSE
     __   DO PRINT    = REORDER; DEFICIT=%%DIFFER                           F   C
     __   DO
     __              (ENTER "ALWAYS", "IF")
     __ ===========================================================================
     __ EXECUTE          UPON                                                   C
     __ ON
  PLEASE FILL IN RULE DEFINITION.                                        09.03.16
The ALWAYS sub-block has been deleted. The IF sub-block has scrolled upwards on the Rule Definition screen.
Figure 402 Example 3 - After Deleting Sub-Block – After
           LIBRARY : CTB.PROD.RULES                                RULE : REORDER
  COMMAND ===>                                                    SCROLL===> CRSR
  +-----------------------------------------------------------------------------+
     __ /* COMPARE THE CURRENT ON-HAND AMOUNT (DATABASE VARIABLE
     __ /* CURR_ONHAND) TO THE MINIMUM REQUIRED AMOUNT (DATABASE VARIABLE
     __ /* MIN_CHR001). DETERMINE IF REORDERING IS NECESSARY, AND PRINT A
     __ /* MESSAGE INDICATING THE RESULTS
     __ EXECUTE COMPARE  UPON                                                   C
     __ ON DATA
     __ IF       CURR_ONHAND>=MIN_CHR001                                        C
     __   DO SET      = DIFFER=CURR_ONHAND-MIN_CHR001                           C
     __   DO SET      = REASON=TOLER(CURR_ONHAND,MIN_CHR001,10)                 C
     __   DO PRINT    = DO NOT REORDER; SURPLUS=%%DIFFER                    F   C
     __   DO
     __ ELSE
     __   DO PRINT    = REORDER; DEFICIT=%%DIFFER                           F   C
     __   DO
     __              (ENTER "ALWAYS", "IF")
     __ ===========================================================================
     __ EXECUTE          UPON                                                   C
     __ ON
  ======= >>>>>>>>>>>>>>> END OF RULE DEFINITION PARAMETERS <<<<<<<<<<<<<<< =====
   
  PLEASE FILL IN RULE DEFINITION.                                        09.04.23
If CURR_ONHAND is less than MIN_CHR001, the DO statements specified after parameter ELSE are processed. The DO after the ELSE refers to variable %%DIFFER, but %%DIFFER has not been set appropriately. Copy the appropriate DO statements from IF to ELSE using the CC and B commands.
Figure 403 Example 3 - Copying DO Statements – Before
           LIBRARY : CTB.PROD.RULES                                RULE : REORDER
  COMMAND ===>                                                    SCROLL===> CRSR
  +-----------------------------------------------------------------------------+
     __ /* COMPARE THE CURRENT ON-HAND AMOUNT (DATABASE VARIABLE
     __ /* CURR_ONHAND) TO THE MINIMUM REQUIRED AMOUNT (DATABASE VARIABLE
     __ /* MIN_CHR001). DETERMINE IF REORDERING IS NECESSARY, AND PRINT A
     __ /* MESSAGE INDICATING THE RESULTS
     __ EXECUTE COMPARE  UPON                                                   C
     __ ON DATA
     __ IF       CURR_ONHAND>=MIN_CHR001                                        C
     CC   DO SET      = DIFFER=CURR_ONHAND-MIN_CHR001                           C
     CC   DO SET      = REASON=TOLER(CURR_ONHAND,MIN_CHR001,10)                 C
     __   DO PRINT    = DO NOT REORDER; SURPLUS=%%DIFFER                    F   C
     __   DO
     __ ELSE
     B_   DO PRINT    = REORDER; DEFICIT=%%DIFFER                           F   C
     __   DO
     __              (ENTER "ALWAYS", "IF")
     __ ===========================================================================
     __ EXECUTE          UPON                                                   C
     __ ON
  ======= >>>>>>>>>>>>>>> END OF RULE DEFINITION PARAMETERS <<<<<<<<<<<<<<< =====
   
  PLEASE FILL IN RULE DEFINITION.                                        09.04.23
The two specified lines have been copied.
Figure 404 Example 3 - After Copying DO Statements – After
           LIBRARY : CTB.PROD.RULES                                RULE : REORDER
  COMMAND ===>                                                    SCROLL===> CRSR
  +-----------------------------------------------------------------------------+
     __ /* COMPARE THE CURRENT ON-HAND AMOUNT (DATABASE VARIABLE
     __ /* CURR_ONHAND) TO THE MINIMUM REQUIRED AMOUNT (DATABASE VARIABLE
     __ /* MIN_CHR001). DETERMINE IF REORDERING IS NECESSARY, AND PRINT A
     __ /* MESSAGE INDICATING THE RESULTS
     __ EXECUTE COMPARE  UPON                                                   C
     __ ON DATA
     __ IF       CURR_ONHAND>=MIN_CHR001                                        C
     __   DO SET      = DIFFER=CURR_ONHAND-MIN_CHR001                           C
     __   DO SET      = REASON=TOLER(CURR_ONHAND,MIN_CHR001,10)                 C
     __   DO PRINT    = DO NOT REORDER; SURPLUS=%%DIFFER                    F   C
     __   DO
     __ ELSE
     __   DO SET      = DIFFER=CURR_ONHAND-MIN_CHR001                           C
     __   DO SET      = REASON=TOLER(CURR_ONHAND,MIN_CHR001,10)                 C
     __   DO PRINT    = REORDER; DEFICIT=%%DIFFER                           F   C
     __   DO
     __              (ENTER "ALWAYS", "IF")
     __ ===========================================================================
     __ EXECUTE          UPON                                                   C
     __ ON
  PLEASE FILL IN RULE DEFINITION.                                        09.05.52
Example 4
Copy a WHEN statement and some of its DO statements to another EXECUTE block. The CC (Multiple Copy) command is specified at the beginning and the end of the parameters that are copied. The B (Before) command specifies the location before which these lines are placed.
Figure 405 Example 4 - Using Copy Command - Before
           LIBRARY : CTB.PROD.RULES                                RULE : REORDER
  COMMAND ===>                                                    SCROLL===> CRSR
  +-----------------------------------------------------------------------------+
     __ ===========================================================================
     __ /* DETERMINE CURRENT ON-HAND QUANTITY OF INVENTORY ITEM CHR001 BY
     __ /* EXTRACTING THIS VALUE FROM SYSOUT DDNAME INVENTRY.
     __ EXECUTE CHECK    UPON                                                   C
     __ ON SYSOUT     PROCST          PGMST          DDNAME INVENTRY JOBNM
     __    MODE PG    LINECT 0060    DATASTAMP
     CC WHEN LINE 001     - 060     COL 010     - 020     TYPE     STOP    AND/OR
     __      STRING = CHR001
     __   DO EXTRACT  = CURR_ONHAND
     CC                 LEVEL 0 LINE +000 COL +050 - +060 PROCESS          TYP
     __   DO COMMIT   = NOW      VAR CURR_ONHAND                                C
     __   DO
     __ WHEN LINE         -         COL         -         TYPE     STOP    AND/OR
     __      STRING =
     __   DO
===========================================================================
                                       .
                                       .
                                       .
                                       .
                                       .
                                       .
     __ ===========================================================================
     __ EXECUTE CHECK2   UPON                                                   C
     __ ON SYSOUT     PROCST           PGMST          DDNAME INVENTRY JOBNM
     __    MODE PG    LINECT 0060    DATASTAMP
     B_ WHEN LINE         -         COL         -         TYPE     STOP    AND/OR
     __      STRING =
     __   DO
 ===========================================================================
     __ EXECUTE          UPON                                                   C
     __ ON
  ======= >>>>>>>>>>>>>>> END OF RULE DEFINITION PARAMETERS <<<<<<<<<<<<<<< =====
The specified WHEN statement and DO statements have been successfully copied.
Figure 406 Example 4 - Using Copy Command - After
           LIBRARY : CTB.PROD.RULES                                RULE : REORDER
  COMMAND ===>                                                    SCROLL===> CRSR
  +-----------------------------------------------------------------------------+
                                       .
                                       .
                                       .
                                       .
                                       .
                                       .
                                       .
                                       .
===========================================================================
     __ EXECUTE CHECK2   UPON                                                   C
     __ ON SYSOUT     PROCST           PGMST          DDNAME INVENTRY JOBNM
     __    MODE PG    LINECT 0060    DATASTAMP
     __ WHEN LINE 001     - 060     COL 010     - 020     TYPE     STOP    AND/OR
     __      STRING = CHR001                                                    
     __   DO EXTRACT  = CURR_ONHAND                                                 
     __                 LEVEL 0 LINE +000 COL +050 - +060 PROCESS          TYP
     __   DO
     __ WHEN LINE         -         COL         -         TYPE     STOP    AND/OR
     __      STRING =
     __   DO
_ ===========================================================================
     __ EXECUTE          UPON                                                   C
     __ ON
  ======= >>>>>>>>>>>>>>> END OF RULE DEFINITION PARAMETERS <<<<<<<<<<<<<<< =====
   
   
   
  PLEASE FILL IN RULE DEFINITION.                                        09.21.56
Example 5
Insert a continuation line between existing continuation lines. BMC recommends that command R (Repeat) be used to repeat the previous logical line.
Figure 407 Example 5 - Using Insert Command - Before
           LIBRARY : CTB.PROD.RULES                                RULE : REORDER
  COMMAND ===>                                                    SCROLL===> CRSR
  +-----------------------------------------------------------------------------+
_ ===========================================================================
     __ /* COMPARE THE CURRENT ON-HAND AMOUNT (DATABASE VARIABLE
     __ /* CURR_ONHAND) TO THE MINIMUM REQUIRED AMOUNT (DATABASE VARIABLE
     __ /* MIN_CHR001). DETERMINE IF REORDERING IS NECESSARY, AND PRINT A
     __ /* MESSAGE INDICATING THE RESULTS
     __ EXECUTE COMPARE  UPON                                                   C
     __ ON DATA
     __ ALWAYS
     __   DO SET      = DIFFER=CURR_ONHAND-MIN_CHR001                           C
     __   DO
     __ IF       CURR_ONHAND>=MIN_CHR001                                        C
     __   DO PRINT    = DO NOT REORDER                                      F   C Y
     R                  SURPLUS=%%DIFFER                                        C Y
     __                 NO AUTHORIZATION FOR REORDER                            C
     __   DO
     __ ELSE
     __   DO PRINT    = REORDER; DEFICIT=%%DIFFER                           F   C
     __   DO
     __              (ENTER "ALWAYS", "IF")
 ===========================================================================
  PLEASE FILL IN RULE DEFINITION.                                        09.24.39
The continuation line has been repeated. The repeated line can be modified as necessary.
Figure 408 Example 5 - Using Copy Command - After
           LIBRARY : CTB.PROD.RULES                                RULE : REORDER
  COMMAND ===>                                                    SCROLL===> CRSR
  +-----------------------------------------------------------------------------+
  __ ===========================================================================
     __ /* COMPARE THE CURRENT ON-HAND AMOUNT (DATABASE VARIABLE
     __ /* CURR_ONHAND) TO THE MINIMUM REQUIRED AMOUNT (DATABASE VARIABLE
     __ /* MIN_CHR001). DETERMINE IF REORDERING IS NECESSARY, AND PRINT A
     __ /* MESSAGE INDICATING THE RESULTS
     __ EXECUTE COMPARE  UPON                                                   C
     __ ON DATA
     __ ALWAYS
     __   DO SET      = DIFFER=CURR_ONHAND-MIN_CHR001                           C
     __   DO
     __ IF       CURR_ONHAND>=MIN_CHR001                                        C
     __   DO PRINT    = DO NOT REORDER                                      F   C Y
     __                 SURPLUS=%%DIFFER                                        C Y
     __                 SURPLUS=%%DIFFER                                        C Y
     __                 NO AUTHORIZATION FOR REORDER                            C
     __   DO
     __ ELSE
     __   DO PRINT    = REORDER; DEFICIT=%%DIFFER                           F   C
     __   DO
     __              (ENTER "ALWAYS", "IF")
  PLEASE FILL IN RULE DEFINITION.                                        09.26.02
| Parent Topic |