//ddname DD DCB=subparameter,...
//ddname DD DCB=(subparameter,subparameter,...),...
Therefore, the system ignores a value in a DCB subparameter on the DD statement if the data control block already contains the value. The system ignores a value in the data set label if the data control block already contains the value from the program or a DD DCB subparameter.
DCB values from cataloged data sets
//ddname DD DCB=dsname,...
//ddname DD DCB=(dsname,subparameter,...)...
The system copies the DSORG, RECFM, OPTCD, BLKSIZE, LRECL, KEYLEN, and RKP values from the label. If any of these values are coded in subparameters following the dsname, the system uses the coded values.
DCB values from earlier DD statements
//ddname DD DCB=*.ddname
//ddname DD DCB=*.stepname.ddname
//ddname DD DCB=*.stepname.procstepname.ddname
Examples
//S1 EXEC PGM=ANYA
//DD1 DD DSNAME=ABC,DCB=(RECFM=FB,LRECL=80,BLKSIZE=960),
// DISP=(NEW,CATLG,DELETE),UNIT=3380,VOLUME=223344,
// SPACE=(CYL,(30,10))
//S2 EXEC PGM=ANYB
//DD2 DD DSNAME=COPIER1,DCB=ABC
//S3 EXEC PGM=ANYC
//DD3 DD DSNAME=COPIER2,DCB=*.S1.DD1