z/OS DFSMS Macro Instructions for Data Sets
Previous topic | Next topic | Contents | Contact z/OS | Library | PDF


ISITMGD—Is the data set system-managed? (BPAM, BSAM, QSAM)

z/OS DFSMS Macro Instructions for Data Sets
SC23-6852-02

The ISITMGD macro allows you to determine certain attributes about the data set being processed. The ISITMGD macro sets some bits in the ISITMGD parameter list which you can test to get information about the data set. You test bits in the parameter list to determine if a data set:
  • Is SMS-managed
  • Is a partitioned data set extended (PDSE)
  • Is an extended format data set
  • Is a compressed format data set
  • Is a UNIX file
  • Contains data members
  • Contains executable programs
  • Is an unknown data type
The IGWCISM macro maps the ISITMGD parameter list:
ISMMGD
ON if the data set is system-managed.
ISMPDSE
ON if the data set is a PDSE
ISMDSTRP
ON if the data set is extended format
ISMDCOMP
ON if the data set is a compressed format data set. In this case, ISMDSTRP will also be on.
ISMOMVS
ON if processing a UNIX file
ISMDTREC
ON if the data set is a PDSE record format library containing data members (set only if DATATYPE=YES is specified)
ISMDTPGM
ON if the data set is a PDSE program object library (set only if DATATYPE=YES is specified)
ISMDUNK
ON if the data set is an unknown data type (the data type could not be determined) (set only if DATATYPE=YES is specified)
Start of changeISMDSNVEREnd of change
A one-byte binary field that contains the number of the version of the data set format. A value of 1 or 2 indicates the PDSE version. A value of 0 is for other types of data set. A value of 0 should not be taken to mean that the data set is not a PDSE. One such special case is a partitioned concatenation. In that case this value is 0 even if a PDSE is in the concatenation.
Start of changeISMMGENSEnd of change
Start of changeON if the data set is enabled for member generations (ON only for PDSE data set format 2)End of change

You need to supply either the address of the opened DCB or the address of a valid DEB. See ISITMGD completion codes for the ISITMGD return codes, and z/OS DFSMS Using Data Sets for an example of coding the ISITMGD macro.

The ISITMGD macro can be issued in 24- or 31-bit addressing mode. When issued in 31-bit addressing mode, all addresses must be valid 31-bit addresses.

R13 must contain the address of an 18 word save area.

The format of the ISITMGD macro is:

DEB=addr
specifies the address of a valid data extent block.
addr—A-type address, or (2-12)
specifies an in-storage address of the DEB.
DCB=addr
specifies the address of a DCB opened to a data set.
addr—A-type address, or (2-12)
specifies an in-storage address of the opened DCB.
CONCAT={0|number}
specifies the concatenation number of the PDSE or partitioned data set. This is supported for BPAM and ignored for BSAM and QSAM. For a sequential concatenation ISITMGD always tests the current data set.
0
Indicates the only data set or the first data set in the concatenation.
number
Indicates which data set in the concatenation.
ALL
Indicates the status of all of the data sets in the concatenation. If specified for a sequential concatenation (DSORG=PS), information is returned for only the data set currently positioned to. If specified for a partitioned concatenation (DSORG=PO), information is returned for all the data sets in the concatenation. ISMDSALL in ISMOFLG2 is on if all data sets in the concatenation are of the same type (all partitioned data sets, all PDSEs, all SMS, or all non-SMS).

An application which may run on a release of DFP prior to DFSMS/MVS 1.1.0 and makes use of CONCAT=ALL must determine if CONCAT=ALL was recognized by the ISITMGD execution module at run time. If CONCAT=ALL is recognized, at least two of the data set organization bits of the ISMOFLG2 byte will be set on. If CONCAT=ALL is not recognized, then information returned will be for the first data set in the concatenation (equivalent to CONCAT=0).

DATATYPE={YES|NO}
specifies information on the data type.
YES
Returns information on the data type of the specified data set. ISITMGD can only determine data type information for PDSEs with existing members.

An application that can release of DFP prior to DFSMS/MVS 1.1.0 and makes use of DATATYPE=YES must determine if DATATYPE=YES was recognized by the ISITMGD execution module at run time. If DATATYPE=YES is recognized, at least one of the data type bits in ISMOFLG3 will be set on. If DATATYPE=YES is not recognized, all of the data type bits in ISMOFLG3 will be set off.

The data type information returned, in byte ISMOFLG3, will indicate one or more of the following conditions:
  • ISMDTPGM—data type is PDSE program object library.
  • ISMDTREC—data type is PDSE record format members (data members).
  • ISMDTUNK—data type is unknown. An indication of unknown might indicate that the data set is either a sequential data set, a partitioned data set, or a PDSE with no existing members. A PDSE with no members would have an unknown data type, ISMDTUNK=ON, but would have a data set organization of PDSE, ISMPDSE=ON.
  • ISMDSTRP in ISMOFLG2—data set is extended format.
NO
Data type is not determined.

If DATATYPE=NO is specified, or defaulted, no attempt will be made to determine the data type. DATATYPE=NO should be specified explicitly or by default unless the application requires the data type organization, since there is significant additional overhead required to obtain the data type information.

MF=S
specifies the standard form of ISITMGD.

Go to the previous page Go to the next page




Copyright IBM Corporation 1990, 2014