The format of the SHOWCAT macro is:
[label] |
SHOWCAT |
[ACB=address] |
---|---|---|
You can use the IGGSHWPL macro to generate a DSECT statement and labels for the fields in the work area.
The format of the work area for RETURN=CI and FWLEN=NO is:
Offset | Length | Symbolic Name | Description |
---|---|---|---|
0(X'00') | 2 | SHWLEN1 | Length of the area, including the length of this field (provided by you). |
2(X'02') | 2 | SHWLEN2 | Length of the area used by VSAM, including the length of this field and the preceding field. |
4(X'04') | 4 | SHWACBP | The address of the ACB that defines the catalog that contains the entry from which information is displayed. |
8(X'08') | 1 | SHWTYPE | Type of object about which information
is returned:
|
The following fields contain one set of information for C, G, R, and Y types and another set for D and I types:
The format of the work area for C, G, R, and Y types is:
Offset | Length or Bit Pattern | Symbolic Name | Description |
---|---|---|---|
9(X'09') | 1 | SHWATTR | For C and Y types: reserved. |
For G type: | |||
x... .... | SHWUP | The alternate index may (1) or may not (0) be a member of an upgrade set. One way of verifying this is to display information for the upgrade set of the base cluster and check whether it contains control interval numbers of entries that describe the components of the alternate index. Figure 1 shows how to get from the alternate index's catalog entry to the entries that describe its components (G to C to D to Y to D and I). | |
.xxx xxxx | Reserved. | ||
For R type: | |||
x... .... | SHWUP | The path is (1) or is not (0) defined for upgrading alternate indexes. | |
.xxx xxxx | Reserved. | ||
10(X'0A') | 2 | SHWASS0 | The number of association pointers that follow. |
SHWACT | Each association pointer identifies
another catalog entry that describes an object associated with this
C, G, R, or Y object. The possible types of associated objects are:
Figure 1 shows how the catalog entries for all these objects are interrelated. |
||
12(X'0C') | 1 | SHWATYPE | Type of object the entry describes. |
13(X'0D') | 3 | SHWAC1 | The control interval number of its first record. |
16(X'10') | Next association pointer, and so
on. For type Y, if the area is too small to display an association
pointer for each associated object, VSAM displays as many pointers
as possible and returns a code of 4 in register 15. For types C and
G, if the area is too small, VSAM displays as many pointers as possible,
but returns as a code of 0 in register 15 because fields for the main
associated objects can always be displayed (in the smallest allowed
work area). For type R, fields for all associated objects (five possible)
can always be displayed. (An associated pointer occupies 4 bytes (1 byte for the associated entry type and 3 bytes for its control interval number). However, for all types except Y, 4 additional bytes are required as work space for the SHOWCAT processor. For example, if you provide 80 bytes for associated objects, as many as 10 association pointers can be displayed for type C or G and 20 for type Y.) |
The format of the work area for D and I types is:
Offset | Length | Symbolic Name | Description |
---|---|---|---|
9(X'09') | 1 | Reserved. | |
10(X'0A') | 2 | SHWDSB | Relative position of the prime key in records in the data component. |
SHWRKP | For the data component of an ESDS, there is no prime key and this field is 0. | ||
12(X'0C') | 2 | SHWKEYLN | Length of the prime key. |
14(X'0E') | 4 | SHWCISZ | Control interval size of the data or index component. |
18(X'12') | 4 | SHWMREC | Maximum record size of the data or index component. |
22(X'16') | 2 | SHWASS | The number of association pointers that follow. |
SHWACT | Each association pointer identifies
another catalog entry that describes an object associated with this
D or I object. The possible types of associated objects are:
|
||
24(X'18') | 1 | SHWATYPE | Type of object the entry describes. |
25(X'19') | 3 | SHWACI | The control interval number of its first record. |
28(X'1C') | Next association pointer, and so on. Fields for all associated objects can always be displayed. |