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

Copy
 - 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.

Control-M JCL Verify performs automatic syntax checking to ensure that the rule definition is still syntactically correct after editing. If an edit will invalidate the rule definition, a message is displayed at the top of the screen and the edit is not performed. For guidelines and recommendations for editing rule definitions see Maintaining Valid Rule Definitions.

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

Copy
 - 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)

Copy
 - 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

Copy
 - 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)

Copy
 - 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

Copy
 - 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)

Copy
 - 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

Copy
 - 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

Copy
 - 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