Use the CLOSE macro to disconnect the program and data.
If you use a "reserved" relative generation number
character as the first character of a member name, the stow will not
occur, you must issue your own stow.
The format of the CLOSE macro is:
[label]
|
CLOSE
|
(address[,[(options)][,...]]) [,MODE={24|31}] [,TYPE=T]
|
- label
- specifies 1 to 8 characters that provide a symbolic address for
the CLOSE macro.
- address
- specifies the address of the access method control block or DCB
for each data set to be closed. You may specify the address in register
notation (using a register from 2 through 12—in parentheses) or specify
it with an expression that generates a valid relocatable A-type address
constant. If you specify only one address with a register, you must
enclose the expression identifying the register in two sets of parentheses:
for example, CLOSE ((2)).
- options
- specifies options parameters for use only in closing non-VSAM
data sets. If any options are specified with the address of an access
method control block, VSAM ignores them.
Requirement: Because
the CLOSE parameters are positional, include a comma for options (even
if you do not specify options) before a subsequent parameter.
- MODE={24|31}
- specifies the format of the CLOSE parameter list to be built.
- 24
- specifies a standard form (24-bit) parameter list address be built.
This parameter list must reside below 16 megabytes and contain the
address of ACBs residing below 16 megabytes. The caller, however,
may be above 16 megabytes. This is the default parameter list format.
- 31
- specifies a long form (31-bit) parameter list address be built.
This list can reside above or below 16 megabytes. This value must be
coded if the parameter list resides above 16 megabytes or contains
the address of an VSAM/VTAM ACB residing above 16 megabytes.
- TYPE=T
- specifies
VSAM is to complete outstanding I/O operations and update the catalog,
but not disconnect the program from the data.
You can issue a
temporary CLOSE macro to cause VSAM to complete outstanding I/O operations,
put back into the catalog the updated information brought into virtual
storage when the data set was opened, and write records in the SMF
data set if you are using SMF. A temporary CLOSE does not disconnect
the program from the data set, so your program can continue to process
the data set without issuing an OPEN macro again.
You must
close and reopen a newly allocated VSAM data set before you can issue
noncreate requests. A temporary close is not adequate for this purpose.
The
TYPE=T option does not release DASD space.
Requirement: If you are sharing subtasks or if you have
issued an asynchronous request for access to a data set, you must
issue a CHECK or an ENDREQ on all RPLs before you issue a CLOSE or
CLOSE TYPE=T. Otherwise, concurrent data set I/O activity will cause
unpredictable results during a close.