If you use IDCAMS to print a VB dataset in dump format with no DD overrides, you will get a dump of the data portion of the records and never see the BDW or RDW.
If you run the same commands but specify RECFM=U and BLKSIZE=32760, your dump will be organized by blocks, not records, and you will see both the BDWs and RDWs. While the data in the DSCB will not be changed, it seems fairly obvious that the DCB data from the DSCB was (temporarily) overridden by the DCB data in the DD statement. And if you used a program that had DCB data hardcoded in the DCB macro, that data would override both the DSCB data and the DD statement data. > -----Original Message----- > From: IBM Mainframe Discussion List [mailto:[email protected]] On > Behalf Of CM Poncelet > Sent: Sunday, July 31, 2011 9:35 AM > To: [email protected] > Subject: Re: CORRUPT PDS - I/O ERROR > Before the DCB on DASD can be accessed, the program's own 'completed' > DCB (including any missing DCB parms filled-in from a RDJFCB of the > JCL's DD and/or from an exit, if present) must be opened. This might > suggest that the program's DCB, within the above context, overrides the > one on DASD. But the DASD DCB attributes override the program's DCB > attributes when the data is actually read - in the sense that the data > on DASD will be INPUT without I/O error only if the opened program DCB's > attributes are the same as those on DASD. It is not the program's DCB > attributes (including any 'supplied' by exits etc.) but those on DASD > which take priority and 'decide' what the DCB attributes should be on > INPUT. If the program's DCB attributes could override those on DASD for > INPUT, the program's 1st read after opening the DCB for INPUT would not > fail with an I/O error if its DCB attributes were different from those > on DASD - just as there is no I/O error when the program opens a DCB for > OUTPUT and then writes to DASD (regardless of what the DCB attributes > are on DASD). > > The program's DCB attributes take priority over (i.e. 'override') the > DCB attributes on DASD for OUTPUT, and the DCB attributes on DASD take > priority over (i.e. 'override') the program's DCB for INPUT. If a > program 'disagrees' with that and tries to override the DCB attributes > on DASD anyway, with its own DCB attributes and for an INPUT, it crashes > with an I/O error. Crashing with an I/O error indicates that the > program's DCB was unable - not able - to override the DCB attributes on > DASD. ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [email protected] with the message: GET IBM-MAIN INFO Search the archives at http://bama.ua.edu/archives/ibm-main.html

