Editing Rule Definitions in the IOA Edit Environment
Rule Definition parameters can be edited (moved, copied, deleted, repeated) by performing IOA Line Editing commands similar to standard ISPF line commands, from within the IOA Edit environment.
The Edit environment in a Rule Definition screen is accessed by typing EDIT in the COMMAND field and pressing Enter.
Fig.JV.C.1 Edit Environment in a Rule Definition Screen
- CONTROL-M/JCLVERIFY RULE: DOTYP05 TABLE: DOTYPES0
COMMAND ===> SCROLL===> CRSR
+-----------------------------------------------------------------------------+
__ RULE DOTYP05 ENVIRONMENT GENERAL PRIORITY 50 CONTINUE SEARCH Y
__ DESC DOTYP05 RETURN
__ DESC
__ ===========================================================================
__ JOBNAME *
__ LIBRARY * MEMBER DOTYPE01
__ SCHDLIB SCHDTAB O/N
__ ===========================================================================
__ ON JOB CLASS PRTY USER
__ ACCOUNT O/N
__ ===========================================================================
__ DO SET %%Q = %%$BLANK
__ DO
__ IF %%Q EQ %%$BLANK
__ DO MSG TYPE E RETURN ACTIVATED RC 0010 RS 2222
__ DO
__ RETURN RC 0010 RS X' 2222 '
__ ENDIF
__ DO SET %%A = RULE DOTYP06 %% PLUS
__ DO SET %%B = PR 50 CONTINUE SEARCH Y
__ DO MSG TYPE I TEST FOR %%A %%B
__ DO SET %%E = %%C%%$PLUS%%D
__ DO SET %%C = 1
__ DO SET %%D = 2
__ DO MSG TYPE I %%C PLUS %%D IS %%E
__ DO
FILL IN RULE DEFINITION. CMDS: EDIT DOOPT ONOPT CANCEL 18.52.23
A 2-character line editing command field, marked by underscores, is displayed for each line on the Rule Definition screen.
Editing commands are typed directly onto these underscores.
Incorrectly specified line editing commands can be corrected by typing over them correctly. Line editing commands can be deleted by blanking them out.
Specified line editing commands are processed when Enter is pressed.
All operations available in the Rule Definition screen can be performed while in the Edit environment. For example, parameter values can be changed, the Rule Definition screen can be saved, and the screen exited.
To exit the Edit environment, retype EDIT in the COMMAND field and press Enter. Line editing command fields are removed from the display.
Line editing commands can be performed on any single ON or DO statement or on a block of ON or DO statements.
Line Editing Commands
The following tables show the types of line editing commands that exist in the Edit environment.
Tab.JV.C.1 Delete Commands
Command |
Description |
---|---|
DS |
Delete a single line. |
DL |
Delete a logical line. |
DD |
Delete lines between two DD specifications. |
D |
Deletes a line. Control-M JCL Verify determines whether to delete a single or logical line based on the parameter on the line. |
Tab.JV.C.2 Copy commands
Command |
Description |
---|---|
CS |
Copies a single line. |
CL |
Copies a logical line. |
CC |
Copies lines between two CC specifications. |
C |
Copies a line. Control-M JCL Verify determines whether to copy a single or logical line based on the parameter on the line. |
Copy commands are used in conjunction with Location commands. The lines are placed at the position indicated by the A or B Location command (described in the "Location commands" table below). |
Tab.JV.C.3 Move commands
Command |
Description |
---|---|
MS |
Move a single line. |
ML |
Moves a logical line. |
MM |
Moves lines between two MM specifications. |
M |
Moves a line. Control-M JCL Verify determines whether to move a single or logical line based on the parameter on the line. |
Move commands are used in conjunction with Location commands. The lines are placed at the position indicated by the A or B Location command (described in the "Location commands" table below). |
Tab.JV.C.4 Repeat commands
Command |
Description |
---|---|
RS |
Repeat a single line. |
RL |
Repeats a logical line. |
RR |
Repeats lines between two RR specifications. |
R |
Repeats a line. Control-M JCL Verify determines whether to repeat a single or logical line based on the parameter on the line. The repeated lines is placed immediately after the lines that has been repeated. |
Tab.JV.C.5 Insert commands
Command |
Description |
---|---|
I (Insert) |
Insert a new logical line or block after the logical line or block marked with an I. |
Tab.JV.C.6 Location commands
Command |
Description |
---|---|
Location commands indicate the position where lines should be placed. |
|
A (After) |
Indicates that lines should be placed after the line marked with an A. |
B (Before) |
Indicates that lines should be placed before the line marked with a B. |
The A and B Location commands are used together with Copy (C, CS, CL, CC), and Move (M, MS, ML, MM) commands. |
Maintaining Valid Rule Definitions
Since rule definitions must be syntactically correct at all times, the user must consider the following issues when specifying Line Editing commands:
-
The result of a line editing command is dependent on the line on which the command is specified. For example, the D command deletes either a single or a logical line based on the line type.
-
Logical lines function as a unit and must not be separated.
-
When a logical command is specified within a logical line, that is, on a subparameter line, or a continuation line, the specified operation is performed on the entire logical line.
-
Blank parameter lines added automatically by Control-O, to allow the user to specify additional parameters, cannot be deleted.
It is recommended that, wherever possible, the D, C, R, and M commands be used for editing (instead of DS, DL, CS, CL, RS, RL, MS, and ML) because these commands automatically retain the logical structure of the rule definition.
Fig.JV.C.2 Example 1 Before - Move a DO Block in the Rule Definition Screen
- CONTROL-M/JCLVERIFY RULE: DOTYP05 TABLE: DOTYPES0
COMMAND ===> SCROLL===> CRSR
+-----------------------------------------------------------------------------+
__ RULE DOTYP05 ENVIRONMENT GENERAL PRIORITY 50 CONTINUE SEARCH Y
__ DESC DOTYP05 RETURN
__ DESC
__ ===========================================================================
__ JOBNAME *
__ ===========================================================================
__ LIBRARY * MEMBER DOTYPE01
__ SCHDLIB SCHDTAB O/N
__ ===========================================================================
__ ON JOB CLASS PRTY USER
__ ACCOUNT O/N
__ ===========================================================================
__ DO SET %%Q = %%$BLANK
__ DO
__ IF %%Q EQ %%$BLANK
__ DO MSG TYPE E RETURN ACTIVATED RC 0010 RS 2222
__ DO
__ RETURN RC 0010 RS X' 2222 '
__ ENDIF
__ DO SET %%A = RULE DOTYP06 %% PLUS
__ DO SET %%B = PR 50 CONTINUE SEARCH Y
__ DO MSG TYPE I TEST FOR %%A %%B
M_ DO SET %%E = %%C%%$PLUS%%D
__ DO SET %%C = 1
A_ DO SET %%D = 2
__ DO MSG TYPE I %%C PLUS %%D IS %%E
__ DO
FILL IN RULE DEFINITION. CMDS: EDIT DOOPT ONOPT CANCEL 18.52.23
Fig.JV.C.3 Example 1 After - Move a DO Block in the Rule Definition Screen (the DO block has been moved)
- CONTROL-M/JCLVERIFY RULE: DOTYP05 TABLE: DOTYPES0
COMMAND ===> SCROLL===> CRSR
+-----------------------------------------------------------------------------+
__ RULE DOTYP05 ENVIRONMENT GENERAL PRIORITY 50 CONTINUE SEARCH Y
__ DESC DOTYP05 RETURN
__ DESC
__ ===========================================================================
__ JOBNAME *
__ ===========================================================================
__ LIBRARY * MEMBER DOTYPE01
__ SCHDLIB SCHDTAB O/N
__ ===========================================================================
__ ON JOB CLASS PRTY USER
__ ACCOUNT O/N
__ ===========================================================================
__ DO SET %%Q = %%$BLANK
__ DO
__ IF %%Q EQ %%$BLANK
__ DO MSG TYPE E RETURN ACTIVATED RC 0010 RS 2222
__ DO
__ RETURN RC 0010 RS X' 2222 '
__ ENDIF
__ DO SET %%A = RULE DOTYP06 %% PLUS
__ DO SET %%B = PR 50 CONTINUE SEARCH Y
__ DO MSG TYPE I TEST FOR %%A %%B
__ DO SET %%C = 1
__ DO SET %%D = 2
__ DO SET %%E = %%C%%$PLUS%%D
__ DO MSG TYPE I %%C PLUS %%D IS %%E
__ DO
FILL IN RULE DEFINITION. CMDS: EDIT DOOPT ONOPT CANCEL 18.52.23
Fig.JV.C.4 Example 2 Before - Copy a Line of Text in the Rule Description
- CONTROL-M/JCLVERIFY RULE: DOTYP05 TABLE: DOTYPES0
COMMAND ===> SCROLL===> CRSR
+-----------------------------------------------------------------------------+
__ RULE DOTYP05 ENVIRONMENT GENERAL PRIORITY 50 CONTINUE SEARCH Y
C_ DESC DOTYP05 RETURN
A_ DESC
__ ===========================================================================
__ JOBNAME *
__ ===========================================================================
__ LIBRARY * MEMBER DOTYPE01
__ SCHDLIB SCHDTAB O/N
__ ===========================================================================
__ ON JOB CLASS PRTY USER
__ ACCOUNT O/N
__ ===========================================================================
__ DO SET %%Q = %%$BLANK
__ DO
__ IF %%Q EQ %%$BLANK
__ DO MSG TYPE E RETURN ACTIVATED RC 0010 RS 2222
__ DO
__ RETURN RC 0010 RS X' 2222 '
__ ENDIF
__ DO SET %%A = RULE DOTYP06 %% PLUS
__ DO SET %%B = PR 50 CONTINUE SEARCH Y
__ DO MSG TYPE I TEST FOR %%A %%B
__ DO SET %%C = 1
__ DO SET %%D = 2
__ DO SET %%E = %%C%%$PLUS%%D
__ DO MSG TYPE I %%C PLUS %%D IS %%E
__ DO
FILL IN RULE DEFINITION. CMDS: EDIT DOOPT ONOPT CANCEL 18.52.23
Fig.JV.C.5 Example 2 After - Copy a Line of Text in the Rule Description (the text has been copied)
- CONTROL-M/JCLVERIFY RULE: DOTYP05 TABLE: DOTYPES0
COMMAND ===> SCROLL===> CRSR
+-----------------------------------------------------------------------------+
__ RULE DOTYP05 ENVIRONMENT GENERAL PRIORITY 50 CONTINUE SEARCH Y
__ DESC DOTYP05 RETURN
__ DESC
__ DESC DOTYP05 RETURN
__ ===========================================================================
__ JOBNAME *
__ ===========================================================================
__ LIBRARY * MEMBER DOTYPE01
__ SCHDLIB SCHDTAB O/N
__ ===========================================================================
__ ON JOB CLASS PRTY USER
__ ACCOUNT O/N
__ ===========================================================================
__ DO SET %%Q = %%$BLANK
__ DO
__ IF %%Q EQ %%$BLANK
__ DO MSG TYPE E RETURN ACTIVATED RC 0010 RS 2222
__ DO
__ RETURN RC 0010 RS X' 2222 '
__ ENDIF
__ DO SET %%A = RULE DOTYP06 %% PLUS
__ DO SET %%B = PR 50 CONTINUE SEARCH Y
__ DO MSG TYPE I TEST FOR %%A %%B
__ DO SET %%C = 1
__ DO SET %%D = 2
__ DO SET %%E = %%C%%$PLUS%%D
__ DO MSG TYPE I %%C PLUS %%D IS %%E
__ DO
FILL IN RULE DEFINITION. CMDS: EDIT DOOPT ONOPT CANCEL 18.52.23
Fig.JV.C.6 Example 3 Before - Delete an Unnecessary DO Statement
- CONTROL-M/JCLVERIFY RULE: DOTYP05 TABLE: DOTYPES0
COMMAND ===> SCROLL===> CRSR
+-----------------------------------------------------------------------------+
__ RULE DOTYP05 ENVIRONMENT GENERAL PRIORITY 50 CONTINUE SEARCH Y
__ DESC DOTYP05 RETURN
__ DESC
__ DESC DOTYP05 RETURN
__ ===========================================================================
__ JOBNAME *
__ ===========================================================================
__ LIBRARY * MEMBER DOTYPE01
__ SCHDLIB SCHDTAB O/N
__ ===========================================================================
__ ON JOB CLASS PRTY USER
__ ACCOUNT O/N
__ ===========================================================================
__ DO SET %%Q = %%$BLANK
__ DO
__ IF %%Q EQ %%$BLANK
__ DO MSG TYPE E RETURN ACTIVATED RC 0010 RS 2222
__ DO
__ RETURN RC 0010 RS X' 2222 '
__ ENDIF
__ DO SET %%A = RULE DOTYP06 %% PLUS
__ DO SET %%B = PR 50 CONTINUE SEARCH Y
__ DO MSG TYPE I TEST FOR %%A %%B
__ DO SET %%C = 1
__ DO SET %%D = 2
__ DO SET %%E = %%C%%$PLUS%%D
D_ DO MSG TYPE I %%C PLUS %%D IS %%E
__ DO
FILL IN RULE DEFINITION. CMDS: EDIT DOOPT ONOPT CANCEL 18.52.23
Fig.JV.C.7 Example 3 After - Delete an Unnecessary DO Statement (DO MSG was deleted)
- CONTROL-M/JCLVERIFY RULE: DOTYP05 TABLE: DOTYPES0
COMMAND ===> SCROLL===> CRSR
+-----------------------------------------------------------------------------+
__ RULE DOTYP05 ENVIRONMENT GENERAL PRIORITY 50 CONTINUE SEARCH Y
__ DESC DOTYP05 RETURN
__ DESC
__ DESC DOTYP05 RETURN
__ ===========================================================================
__ JOBNAME *
__ ===========================================================================
__ LIBRARY * MEMBER DOTYPE01
__ SCHDLIB SCHDTAB O/N
__ ===========================================================================
__ ON JOB CLASS PRTY USER
__ ACCOUNT O/N
__ ===========================================================================
__ DO SET %%Q = %%$BLANK
__ DO
__ IF %%Q EQ %%$BLANK
__ DO MSG TYPE E RETURN ACTIVATED RC 0010 RS 2222
__ DO
__ RETURN RC 0010 RS X' 2222 '
__ ENDIF
__ DO SET %%A = RULE DOTYP06 %% PLUS
__ DO SET %%B = PR 50 CONTINUE SEARCH Y
__ DO MSG TYPE I TEST FOR %%A %%B
__ DO SET %%C = 1
__ DO SET %%D = 2
__ DO SET %%E = %%C%%$PLUS%%D
__ DO
FILL IN RULE DEFINITION. CMDS: EDIT DOOPT ONOPT CANCEL 18.52.23
Fig.JV.C.8 Example 4 Before - Moving DO statements in the Rule Definition
- CONTROL-M/JCLVERIFY RULE: DOTYP05 TABLE: DOTYPES0
COMMAND ===> SCROLL===> CRSR
+-----------------------------------------------------------------------------+
__ RULE DOTYP05 ENVIRONMENT GENERAL PRIORITY 50 CONTINUE SEARCH Y
__ DESC DOTYP05 RETURN
__ DESC
__ DESC DOTYP05 RETURN
__ ===========================================================================
__ JOBNAME *
__ ===========================================================================
__ LIBRARY * MEMBER DOTYPE01
__ SCHDLIB SCHDTAB O/N
__ ===========================================================================
__ ON JOB CLASS PRTY USER
__ ACCOUNT O/N
__ ===========================================================================
MM DO SET %%Q = %%$BLANK
__ DO
__ IF %%Q EQ %%$BLANK
__ DO MSG TYPE E RETURN ACTIVATED RC 0010 RS 2222
__ DO
__ RETURN RC 0010 RS X' 2222 '
MM ENDIF
__ DO SET %%A = RULE DOTYP06 %% PLUS
__ DO SET %%B = PR 50 CONTINUE SEARCH Y
__ DO MSG TYPE I TEST FOR %%A %%B
__ DO SET %%C = 1
__ DO SET %%D = 2
A_ DO SET %%E = %%C%%$PLUS%%D
__ DO
FILL IN RULE DEFINITION. CMDS: EDIT DOOPT ONOPT CANCEL 18.52.23
Fig.JV.C.9 Example 4 After - Moving DO statements in the Rule Definition
- CONTROL-M/JCLVERIFY RULE: DOTYP05 TABLE: DOTYPES0
COMMAND ===> SCROLL===> CRSR
+-----------------------------------------------------------------------------+
__ RULE DOTYP05 ENVIRONMENT GENERAL PRIORITY 50 CONTINUE SEARCH Y
__ DESC DOTYP05 RETURN
__ DESC
__ DESC DOTYP05 RETURN
__ ===========================================================================
__ JOBNAME *
__ ===========================================================================
__ LIBRARY * MEMBER DOTYPE01
__ SCHDLIB SCHDTAB O/N
__ ===========================================================================
__ ON JOB CLASS PRTY USER
__ ACCOUNT O/N
__ ===========================================================================
__ DO SET %%A = RULE DOTYP06 %% PLUS
__ DO SET %%B = PR 50 CONTINUE SEARCH Y
__ DO MSG TYPE I TEST FOR %%A %%B
__ DO SET %%C = 1
__ DO SET %%D = 2
__ DO SET %%E = %%C%%$PLUS%%D
__ DO SET %%Q = %%$BLANK
__ DO
__ IF %%Q EQ %%$BLANK
__ DO MSG TYPE E RETURN ACTIVATED RC 0010 RS 2222
__ DO
__ RETURN RC 0010 RS X' 2222 '
__ ENDIF
__ DO
FILL IN RULE DEFINITION. CMDS: EDIT DOOPT ONOPT CANCEL 18.52.23