z/OS MVS System Codes
Previous topic | Next topic | Contents | Contact z/OS | Library | PDF


03B

z/OS MVS System Codes
SA38-0665-00

03B

Explanation

The error occurred during processing of an OPEN macro instruction for an indexed sequential data set. If register 15 does not contain a hexadecimal reason code, then no records could be processed because:
  • The block size (DCBBLKSI) is less than the logical record length (DCBLRECL).
  • The block size (DCBBLKSI) is not a multiple of the logical record length.
If the error occurred during the processing of an ISAM OPEN executor, register 15 contains a hexadecimal reason code. No records could be processed because:
Code
Explanation
01
The format-2 data set control block (DSCB) indicated that 1/2 1/21/21/2MSG 8028 1/2 1/21/21/2MSG 8028 the data set had not been created (DS2STIND is not equal to X'20'), or the format-2 DSCB indicated that the data control block (DCB) had not been closed after the data set had been created.
03
For variable length records, the relative key position (DCBRKP) field in the data control block (DCB) is less than four.
04
The relative key position (DCBRKP) plus the key length (DCBKEYLE) is greater than the logical record length (DCBLRECL).
05
The DCBKEYLE field of the data control block contained zero.
06
The DCBKEYLE field of the data control block (DCB) does not equal the value in the DS1KEYL field of the format-1 DSCB.
07
A QISAM data control block was being opened in preparation for a PUT operation, but the OPEN macro instruction had not been issued for output.
09
The logical record length in the data control block (DCBLRECL) is zero.
0A
The record format in the format-1 DSCB (DS1RECFM) indicates fixed blocked records, but the block size (DCBBLKSI) equals the logical record length (DCBLRECL).
0B
The block size (DCBBLKSI) differs from the format-1 DSCB block size (DS1BLKL).
0C
The logical record length (DCBLRECL) differs for the format-1 DSCB logical record length (DS1LRECL).
0D
QISAM data control block was being opened in preparation for a PUT operation and DISP=SHR was coded in the JCL.
0E
The value for the record format (DCBRECFM) is zero.
0F
The value for the record format (DCBRECFM) is not the same as the record format value specified when the data set was created (DS1RECFM).

Register 2 contains the address of the DCB for which the abend was issued.

When the ISAM interface is used to process a VSAM data set, this system completion code can be accompanied by message IEC161I. If it is, refer to message IEC161I for information about the task that ended. The ISAM interface of VSAM issues system completion code 03B for one of the following reasons:
  • The access method service's and DCB values for LRECL, KEYLE, RKP do not match.
  • DISP=OLD was specified and the DCB was opened for output and the number of logical records is greater than zero (RELOAD is implied).
  • An OPEN ACB error code 116 was returned for a request to open a VSAM structure.

System programmer response

If the error recurs and the program is not in error, look at the messages in the job log for more information. Search problem reporting data bases for a fix for the problem. If no fix exists, contact the IBM® Support Center. Provide the JCL and the program listing for the job.

Programmer response

Take the following actions depending on the reason code you received:
Code
Response
01
Make sure that the data set has been properly created and that the creating task closes the data control block.
03
If variable length records are used, make sure that the value of the DCBRKP field is not less than four.
04
Make sure that the value of the DCBRKP field of the data control block, when added to the value of in the DCBKEYLE field, does not exceed the value in the DCBLRECL field.
05, 06
Correct the DCBKEYLE field. For an existing ISAM data set, omit the KEYLEN operand on the DCB macro instruction. This allows the data set control block to supply the key length value.
07
Make sure that OUTPUT is specified as option 1 in the OPEN macro instruction.
09, 0A, 0B, 0C
Make sure that the block size (BLKSIZE) and logical record length (LRECL) have been specified correctly on the data control block (DCB) and that they are compatible.
0D
Code DISP=OLD in the JCL for the QISAM data control block that is being opened for a PUT operation.
0E, 0F
Make sure that the record format has been specified correctly. For an existing ISAM data set, list the VTOC to determine the correct format of the data set.
If register 15 does not contain a hexadecimal reason code, then make sure that:
  1. the blocksize (BLKSIZE) and logical record length (LRECL) have been specified correctly on the data control block (DCB).
  2. the BLKSIZE and LRECL are compatible.

In cases when the ISAM interface issued an ABEND, make sure that a valid mode of operation is specified in the MACRF operand of the DCB macro. Additionally, make sure that the DCB is not being opened for load mode while there are records in the data set.

In all cases, run the job step again.

If message IEC161I accompanies this system completion code, respond as indicated for message IEC161I.

Source

DFSMSdfp

Go to the previous page Go to the next page




Copyright IBM Corporation 1990, 2014