COBOL generation |
The sysCodes build
descriptor option affects the value of sysVar.errorCode as
follows: - If you set sysCodes to YES
and perform
an I/O operation on an indexed, WebSphere® MQ,
relative, or sequential record, sysVar.errorCode contains
a return code that is specific to the debug or runtime environment
and the type of resource (such as a VSAM file). To interpret this
code, refer to the appropriate manual for the resource.
- If
you set sysCodes to NO, the system
return codes are converted to EGL return codes. This allows programs
that were developed under Cross System Product (CSP) or VisualAge® Generator to receive the same
return codes as in CSP.
|
CICS® |
For all CICS systems
(including CICS for z/OS®), the meaning of the sysVar.errorCode value
depends on the format of that value.
If sysVar.errorCode is
in the form RSnnnnnn, you can get
details by looking under nnnnnn in
the return codes section of the documentation for Rational® COBOL Runtime for zSeries®.
Otherwise, the characters
of sysVar.errorCode are derived from the CICS EXEC Interface Block. These
rules also apply to remote file access: - Characters 1 and 2
of sysVar.errorCode contain
the hexadecimal representation of the first byte of the EIBFN.
- Characters
3 through 8 contain the hexadecimal representation
of bytes 0-2 of the EIBRCODE.
If an I/O operation
ends with a CICS SYSIDERR (a
problem accessing the remote
file), one of the following values is copied to the first 6 characters
of sysVar.errorCode: - 06D004
- Name not that of system entry
- 06D008
- Link out of service
- 06D00C
- Name
unknown to CICS
|
IMS™ BMP |
If sysVar.errorCode is
in the form RSnnnnnn, you can get
details by looking under nnnnnn in
the return codes section of the documentation for Rational COBOL Runtime for zSeries.
The following is the only
file type unique to IMS BMP.
For all other file types, see the entry for z/OS batch later in this table. - IMS message queue
- sysVar.errorCode contains
the DL/I status
code after an I/O function. The last 6 characters of sysVar.errorCode are
spaces.
|
IMS/VS |
The only files
that can be used in this environment
are serial files associated with IMS message
queues. sysVar.errorCode contains the DL/I
status code after an I/O function to one of these files. The last
6 characters of sysVar.errorCode are spaces. |
z/OS batch |
If sysVar.errorCode is
in the form RSnnnnnn, you can get
details by looking under nnnnnn in
the return codes section of the documentation for Rational COBOL Runtime for zSeries.
Otherwise, the characters
in sysVar.errorCode are specific to file
type: - GSAM
- sysVar.errorCode contains
the DL/I status
code after an I/O function. The last 6 characters of sysVar.errorCode are
spaces.
- SEQ
- sysVar.errorCode contains
the COBOL
status key value or values in the first 2 characters. The remaining
6 characters are zeros.
- SEQRS
- If
a dynamic allocation fails, the first 3 bytes of sysVar.errorCode contain
the value S99 (for SVC 99, dynamic allocation); byte 4 is the SVC
99 return code in hexadecimal; and bytes 5-8 contain the error reason
code in hexadecimal.
If an end-of-file condition occurs during a
read, sysVar.errorCode contains return code
"00000004".
If an OPEN fails, sysVar.errorCode contains
return code "00000008".
If a failure occurs during a read, write,
or close, sysVar.errorCode contains return
code "00000012".
- VSAM
- sysVar.errorCode contains
the following
information:
- 2 characters for the COBOL status key value or
values
- 2 characters for the COBOL VSAM return code, which
is the VSAM
feedback code
- 1 character for the COBOL VSAM function code,
which is the VSAM
component code
- 3 characters for the COBOL VSAM feedback code,
which is the VSAM
reason code
- VSAMRS
- If
a dynamic allocation fails, the first 3 bytes of sysVar.errorCode contain
the value S99 (for SVC 99, dynamic allocation); byte 4 is the SVC
99 return code in hexadecimal; and bytes 5-8 contain the error reason
code in hexadecimal.
If a failure occurs during a file open or close,
the first 2 bytes of sysVar.errorCode contain
the error code from the VSAM program control block (ACB) in hexadecimal,
and the remaining 6 characters are zeros.
In other cases, sysVar.errorCode contains
the following information: - 2 characters of zeros
- 2
characters for the COBOL VSAM return code, which is the VSAM
feedback code
- 1 character for the COBOL VSAM function code,
which is the VSAM
component code
- 3 characters for the COBOL VSAM feedback code,
which is the VSAM
reason code
|