SHOWCB—Display fields of an access method control block

The format of the SHOWCB macro used to display fields in an access method control block is:

The subparameters of the SHOWCB macro can be expressed as absolute numeric expressions, as character strings, as codes, as expressions that generate valid relocatable A-type address constants, in register notation, as S-type address constants, and as indirect S-type address constants. Subparameters with GENCB, MODCB, SHOWCB, and TESTCB, further defines these operand expressions.
label
specifies 1 to 8 characters that provide a symbolic address for the SHOWCB macro.
ACB=address
specifies the address of the access method control block whose fields are displayed. If you used the ACB macro with a label, you can specify the label here. The ACB parameter is optional when you wish to display the length of an access method control block (FIELDS=ACBLEN). (All access method control blocks have the same length, so you need not specify the address of a particular one.)
AREA=address
specifies the address of a return area you are supplying for VSAM to display the contents of the fields specified in the FIELDS parameter. The contents of the fields are displayed in the order in which you specify them. The area must begin on a fullword boundary.
LENGTH=abs expression
specifies the length, in bytes, of the return area you are providing for VSAM to display the indicated fields in. (See the FIELDS parameter for the fields that can be displayed and for the length of each field.) If the area is not large enough for all the fields, VSAM does not display any of their contents and returns a reason code (see Control block manipulation macro return and reason codes).
OBJECT=DATA|INDEX
specifies whether fields are displayed for the data or for the index.
FIELDS=[ACBLEN][,AVSPAC]
  [,BFRFND][,BSTRNO]
  [,BUFND][,BUFNI]
  [,BUFNO][,BUFNOL][,BUFRDS]
  [,BUFSP][,BUFUSE]
Start of change  [,CDTASIZE][,CINV][,CIPCA]End of change
  [,DDNAME][,ENDRBA]
  [,ERROR][,EXLST]
  [,FS][,HALCRBA]Start of change[,HLRBA]End of change
  [,KEYLEN][,LEVEL]
  [,LOKEY][,LRECL]
  [,MAREA][,MLEN]
  [,NCIS][,NDELR]
  [,NEXCP][,NEXT]
  [,NINSR][,NIXL]
  [,NLOGR][,NRETR]
  [,NSSS][,NUIW]
  [,NUPDR][,PASSWD]
  [,RELEASE][,RKP][,SHRPOOL]
  [,STMST][,STRMAX]
  [,SDTASIZE]
  [,STRNO][,UIW]
  [,XAVSPAC][,XENDRBA]
  [,XHALCRBA])
specifies the fields whose contents are to be displayed. Some of the fields can be displayed at any time; others only after a data set is opened. The ones that can be displayed only after a data set is opened can, for a KSDS that has been opened for keyed access, pertain either to the data or to the index. See the OBJECT parameter.

Table 1 explains the subparameters you can code in the FIELDS parameter for an access method control block.

Table 1. FIELDS Keyword Subparameters for an Access Method Control Block
Subparameter Fullwords Description of the Field
    Note: The following fields can be displayed at any time.
ACBLEN 1 Length of an access method control block (displaying the length of an access method control block gives your program independence from changes in the length that may occur from release to release of VSAM).
BSTRNO 1 Number of strings initially allocated for access to the base cluster by a path. For RLS BSTRNO is ignored and the value specified in the ACB is returned.
BUFND 1 Number of I/O buffers used for data, as specified in the ACB (or GENCB). For RLS BUFND is ignored and the value specified in the ACB is returned. This parameter has no effect for z/OS UNIX files.
BUFNI 1 Number of I/O buffers used for index entries, as specified in the ACB (or GENCB). For RLS BUFNI is ignored and the value specified in the ACB is returned. This parameter has no effect for z/OS UNIX files.
BUFSP 1 Amount of space specified in the ACB (or GENCB) for I/O buffers. For RLS BUFSP is ignored and the value specified in the ACB is returned. This parameter has no effect for z/OS UNIX files.
DDNAME 2 Name of the DD statement that identifies the data set.
ERROR 1 The code returned by VSAM after the opening or closing of the data set (see OPEN—Connect program and data and CLOSE—Disconnect program and data).
EXLST 1 Address of the exit list, if any; 0 if none.
LEVEL 2 Address (in first fullword) and length (in second fullword) of the field containing the DFP level information.
MAREA 1 Address of the message area, if any; 0 if none.
MLEN 1 Length of the message area, if any; 0 if none.
PASSWD 1 Address of the field containing the password; the first byte of the field contains the length of the password (in binary). This parameter has no effect for z/OS UNIX files.
RELEASE 2 Address (in first fullword) and length (in second fullword) of the field containing the DFP release information. z/OS DFSMSdfp Advanced Services discusses how to use the IHADFA mapping macro or the IGWASYS callable service for release determination.
SHRPOOL 1 Identification number of resource pool to be used for LSR processing. SHRPOOL specification is ignored by RLS processing. This parameter has no effect for z/OS UNIX files.
STRMAX 1 Maximum number of strings concurrently active. For RLS this field is the number of active strings associated with this ACB at the time the request is issued.
STRNO 1 Number of requests for which VSAM is prepared to remember its position in the data set.

For RLS the value specified in the ACB macro is ignored. After OPEN a value of 1024 is returned, indicating the maximum number of strings allowed.

    Rule: The following fields can be displayed only after the data set is opened. It is your responsibility to be sure that the ACB remains open until the SHOWCB for these fields has completed. If the ACB is closed while a SHOWCB is active for these fields, unpredictable results can occur including abends.
AVSPAC 1 Amount of available space in the data component or index component, in bytes. If the extended format data set might contain more than 4GB, use XAVSPAC instead of AVSPAC.
BFRFND 1 Number of successful look-asides. For RLS this field is the number of requests satisfied from the local cache or the CF cache.
BUFNO 1 Number of I/O buffers allocated for the data component or index component. The value of zero will be returned for GSR, LSR, RLS and UNIX System services.
BUFNOL 1 Number of I/O buffers allocated for the data component or index component during BLDVRP or SMB for LSR processing. The value of zero will be returned if the ACB is not specified for LSR processing.
BUFRDS 1 Number of buffer reads. For RLS this field is the number of times I/O is done for a READ.
BUFUSE 1 Number of I/O buffers actually in use for the data component or index component at the time the SHOWCB macro issued. The value of zero will be returned if the ACB is not specified for NSR or LSR processing.
CDTASIZE 2 Value for the size of extended format data sets using compression.

For RLS, this number is maintained on an ACB basis rather than a component basis. That is, it is a count only for the current open of the data set with this ACB. It is zero if no record has been processed since the current open.

CINV 1 Control interval size for the data component or index component.
Start of changeCIPCAEnd of change Start of change1End of change Start of changeNumber of control intervals for each control area. End of change
ENDRBA 1 Ending RBA of the space used by the data component or index component; not the RBA of any record in the data set, but of the last used byte in the data set (high-used RBA). If the extended format data set might contain more than 4GB, use XENDRBA instead of ENDRBA.
FS 1 Number of free control intervals per control area in the data component (0 for OBJECT=INDEX). For z/OS UNIX files this field is set to zero.
HALCRBA 1 High-allocated RBA; the relative byte address of the end of the data component (OBJECT=DATA) or the index component (OBJECT=INDEX). If the extended format data set might contain more than 4GB, use XHALCRBA instead of HALCRBA.
Start of changeHLRBAEnd of change Start of change1End of change Start of changeRBA of the highest-level index control interval. End of change
KEYLEN 1 Length of the key of reference of the key field of data records in the data component (whether OBJECT=DATA or INDEX).
LOKEY 2 Address of the field containing the low key (in first fullword) and the length (in second fullword) of the low key of a KSDS data component. For RLS LOKEY is not supported. A reason code is given if it is specified.
LRECL 1 Length of data records in the data component (maximum length for variable-length data records) or of index records in the index component (control interval length minus 7).
NCIS 1 Number of control intervals split in the data component (0 for OBJECT=INDEX). For z/OS UNIX files this field is set to zero.

For RLS, this number is maintained on an ACB basis rather than a component basis. That is, it is a count only for the current open of the data set with this ACB. It is zero if no record has been processed since the current open.

NDELR 1 Number of records deleted from the data component (0 for OBJECT=INDEX).

For RLS, this number is maintained on an ACB basis rather than a component basis. That is, it is a count only for the current open of the data set with this ACB. It is zero if no record has been processed since the current open.

NEXCP 1 Number of I/O requests VSAM has issued for access to the data component or index component. For RLS NEXCP is a count of the number of calls to the system buffer manager (includes calls that result in either a CF cache access or an I/O).
NEXT 1 Number of extents now allocated to the data component or index component (the maximum that can be allocated is 123 per VSAM component. For z/OS UNIX files this field is set to one.
NINSR 1 Number of records inserted into (or added to) the data component (0 for OBJECT=INDEX).

For RLS, this number is maintained on an ACB basis rather than a component basis. That is, it is a count only for the current open of the data set with this ACB. It is zero if no record has been processed since the current open.

NIXL 1 Number of levels in the index component (0 for OBJECT=DATA).
NLOGR 1 Number of records in the data component or index component.For z/OS UNIX files this field is set to zero.
NRETR 1 Number of records that have ever been retrieved from the data component (0 for OBJECT=INDEX).

For RLS, this number is maintained on an ACB basis rather than a component basis. That is, it is a count only for the current open of the data set with this ACB. It is zero if no record has been processed since the current open.

NSSS 1 Number of control areas split in the data component (0 for OBJECT=INDEX). For z/OS UNIX files this field is set to zero.

For RLS, this number is maintained on an ACB basis rather than a component basis. That is, it is a count only for the current open of the data set with this ACB. It is zero if no record has been processed since the current open.

NUIW 1 Number of writes not initiated by the user. For RLS NUIW does not apply, and is set to zero.
NUPDR 1 Number of updated records in the data component or index component.

For RLS, this number is maintained on an ACB basis rather than a component basis. That is, it is a count only for the current open of the data set with this ACB. It is zero if no record has been processed since the current open.

RKP 1 Displacement of the key of reference of the key field from the beginning of a data record (whether OBJECT=DATA or INDEX).
RMODE31 1 For VSAM, with or without SMB (system-managed buffering), the effective RMODE31 setting: 0 if NONE, 1 if BUFF, 2 if CB, and 3 if ALL

For RLS, RMODE31 is ignored, but the value in the user ACB is still returned to SHOWCB FIELDS=RMODE31, similarly to how SHOWCB ACB currently processes the other RLS-ignored ACB settings such as BUFSP and BUFND.

SDTASIZE 2 Value for the amount of source data for extended format data sets using compression.

For RLS, this number is maintained on an ACB basis rather than a component basis. That is, it is a count only for the current open of the data set with this ACB. It is zero if no record has been processed since the current open.

STMST 2 System time stamp, which gives the time and day of the last time the data component or index component was closed, with bit 51 (counting from 0 at the left) equivalent to one microsecond and bits 52 through 63 unused. For z/OS UNIX files this field is set to the time of day of the current open.
UIW 1 Number of user-initiated writes. For RLS UIW does not apply, and is set to zero.
XAVSPAC 2 Amount of available space in the data component or index component, in bytes.

XAVSPAC (instead of AVSPAC) specifies the return area (you are providing for VSAM for display) is two full words long to contain values possibly greater than 4GB.

XENDRBA 2 Ending RBA of the space used by the data component or index component; not the RBA of any record in the data set, but of the last used byte in the data set (high-used RBA).

XENDRBA (instead of ENDRBA) specifies the return area (you are providing for VSAM for display) is two full words long to contain values possibly greater than 4GB.

XHALCRBA 2 High-allocated RBA; the relative byte address of the end of the data component (OBJECT=DATA) or the index component (OBJECT=INDEX).

XHALCRBA (instead of HALCRBA) specifies the return area (you are providing for VSAM for display) is two full words long to contain values possibly greater than 4GB.