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


PUTX—Write a record from an existing data set (QISAM interface to VSAM and QSAM)

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

The PUTX macro returns an updated record to a data set (QISAM interface to VSAM and QSAM) or writes a record from an input data set into an output data set (QSAM only). There are two modes of the PUTX macro. The output mode (QSAM only) allows writing a record from an input data set on a different output data set. The output data set can specify the spanning of variable-length records, but the input data set must not contain spanned records.

The update mode returns an updated record to the data set from which it was read. The logical records are blocked by the control program, as specified in the data control block, before they are placed in the output data set. The control program uses the length specified in the DCBLRECL field as the length of the record currently being stored. Control is not returned to your user program until the control program processes the record.

For SYSOUT data sets, the PUTX macro can be used only in the output mode.

The record descriptor word in variable-length records must not be changed.

The PUTX macro may be issued in 24- or 31-bit addressing mode. When issued in 31-bit addressing mode, all addresses must be valid 31-bit addresses. This includes allowing the caller to issue QSAM macros in 31-bit addressing mode regardless of whether the buffers are above or below the 16MB line. Most types of data sets support 31-bit mode.

QSAM allows data areas to be located above the 16MB line. To take advantage of providing data areas above the 16MB line for QSAM macros, the issuer of the PUTX macro must then execute in 31-bit addressing mode. To take advantage of QSAM buffers above the line, you must specify for OPEN to obtain the buffers above the line and the issuer of the PUTX macro must then execute in 31-bit addressing mode. To specify that OPEN is to get buffers above the 16MB line, code RMODE31=BUFF on the DCBE macro.

The format of the PUTX macro is:

dcb address—RX-Type Address, (2-12), or (1)
specifies the address of the data control block for a data set opened for output.
input dcb address—RX-Type Address, (2-12), or (0)
specifies the address of a data control block opened for input. When issued in 31-bit addressing mode, the input DCB address must be a clean 31-bit address. If you requested that OPEN get buffers above the 16MB line, the PUTX must be issued in 31-bit mode. The PUTX macro can be used for the following modes:

Output Mode: This mode is used with QSAM only. The input dcb address specifies the address of the data control block opened for input. If this parameter is omitted, the system assumes that register 0 contains the input dcb address.

Update Mode: The input dcb address is omitted for update mode.

Go to the previous page Go to the next page




Copyright IBM Corporation 1990, 2014