How to use the -EMOD Y and the difference in results with and without the -EMOD.
Release : ALL
-EMOD Y
The -EMOD execution control statement marks the end of one module's control statements and data. Use -END to mark the end of the entire control stream. The -EMOD statement is optional.
The Y In column 7, CA Librarian suppresses all updating of the module if shifting during a -EDIT operation causes an overflow of data out of the range of columns being edited on any record.
The -EMOD Y is for -EDIT function and disallows update if operation causes shifting out of range.
For example, by changing "AAA" to "BBBBBBB", the data in the line would exceed 80 columns.
Sample DATA;
=COLS> ----+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8
****** ***************************** Top of Data **************************************
000001 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX AAA
000002 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX AAA XXXXXXXXXXXXXXXX
000003 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX AAA
Sample JCL:
//STEP01 EXEC PGM=AFOLIBR,PARM='NRJS,NJTA'
//STEPLIB DD DSN=Prefix.libr.CALJLINK,DISP=SHR
//SYSPRINT DD SYSOUT=*
//MASTER DD DSN=User.libr.master,DISP=SHR
//OSJOB DD DUMMY
//SYSIN DD *
-SEL TEST01
-EDIT /AAA /BBBBBB /
-EMOD Y
-END
/*
//
Error Message:
-EDIT /AAA /BBBBBB /
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX BBBBBB 000010 EDIT PERFORMED
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX AAA XXXXXXXXXXXXXXXX 000020 OVERFLOW-RECORD UNALTERED
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX BBBBBB 000030 EDIT PERFORMED
*** ERROR *** ONE OR MORE ERROR CONDITIONS FOUND FOR THIS MODULE. ALL ACTIVITY HAS BEEN BYPASSED.