Concatenated data sets

Through the technique of concatenation, several data sets, each of which may reside on a separate volume, can be read as if they were a single data set.

Concatenated data sets are read in the order of appearance of their DD statements in the input stream (the DD statements must follow one another and only the first DD statement is named). Each concatenated data set may be a single- or multi-volume data set. Concatenated data sets cannot be read backwards.

Because only one DCB is associated with all the concatenated data sets, you must inform the system if the data sets have certain allocation characteristics that do not match (such as record format). To do this, your processing program must set the unlike-attributes bit in the DCB, as explained in z/OS DFSMS Using Data Sets . If the EXCP, POINT, or CNTRL macros are not used, you can concatenate tape, DASD, and sysin data sets if they have certain allocation characteristics that match. In this case, you do not have to set on the unlike-attributes bit in the DCB.

When standard labels, buffers gotten by OPEN, and the queued sequential access method (QSAM) are used together, the data set unlike characteristic of "block length" does not apply, and you can concatenate data sets in any order of block size. An exception is a tape block size that exceeds 32 760 bytes, but the application program does not have the BLKSIZE parameter on the DCBE macro. Normal DCB, JFCB, and label merging are performed to obtain the tape block size when labels are not present or are bypassed.

More information on concatenated data sets can be found in z/OS DFSMS Using Data Sets.