The IMS return codes are listed here alphabetically in this and two other pages,
you may browse through them or you may enter the code you are looking for and
press the enter key to go directly to the error message in the correct file.
Explanation: This status code applies to CICS online command-level
programs only, and is returned after a scheduling request. It means that
there is a conflict in scheduling intent. (This cannot occur if program
isolation has been specified.)
Programmer Response: Specify program isolation in the SIT. If program
isolation has not been specified, wait until the PSB is no longer in use, and
reschedule it.
Explanation: This status code applies to command-level programs only, and
can be returned after any of the commands. It means that there is an invalid
SDIB. An initialization call was not made, or the system's DIB (not the
application program's DIB) was overlaid.
Programmer Response: Check your program to make sure that you did not use
an entry statement, as you would in a call-level batch program. Also make
sure that there are no addressing errors in your program that would cause an
overlay.
Explanation: This status code applies to command-level programs only, and
is returned following a REPL command. It means that there has been a
path-replace error. The segments to be replaced are compared to the previous
get command, and either a segment is named to be replaced that was not
retrieved by the get command, or data had not been transferred (no INTO
option) for this segment on the get command, or the attributes of the data to
be transferred don't match the data in the database.
Programmer Response: Correct the program.
Explanation: This status code applies to command-level programs only, and
is returned following any of the database commands, a LOAD command, or a
statistics request. It means that the number of the PCB specified in the
USING option is higher than the number of PCBs in the PSB being used; or that
there is an invalid processing option. For example, the program tried to
issue a LOAD command without having the L processing option specified in its
PSB.
Programmer Response: Check the PSB and correct your program.
Explanation: This status code means that the CICS XDLIPRE exit routine
returned X'04' in register 15 because the routine determined that the
immediately preceding DL/I request should not be executed.
Programmer Response: Contact the CICS system programmer.
Explanation: This status code applies to CICS online command-level
programs only, and is returned following a database or statistics request. It
means that the database was not open when the request was issued.
Programmer Response: Contact your database administrator or system
programmer. The database can be checked and opened via operator commands.
Explanation: This status code applies to CICS online command-level
programs only, and is returned following a database or statistics request. It
means that the length of the retrieved segment is greater than 64 bytes.
Programmer Response: Contact your database administrator or system
programmer--the database definition may require modification.
Explanation: This status code is returned for batch programs only. A
checkpoint record was written to the UCF (8) journal data set. During the
processing of an HD reorganization, a reload, or an initial load program under
the supervision of the Utility Control Facility (UCF), a checkpoint record was
written to the UCF journal data set. IMS returns this status code to indicate
that the last ISRT call was correct and the initial load program may continue
or it may perform a checkpointing procedure before continuing.
Programmer Response: This is an information-only status code.
Explanation: This status code is returned for batch programs only. Your
initial load program is being restarted under UCF (8). The program terminated
while executing under UCF. The job was resubmitted with a restart
request.
Programmer Response: The program has to get itself back in step with
database loading. The program uses the I/O area and the DB PCB key feedback
area to do this.
Explanation: This status code is returned for batch programs only. The
initial load program is about to stop processing. While processing an HD
reorganization reload or user initial load program under the supervision of
UCF (8), the operator replied to the WTOR from UCB and requested the current
function to terminate. The last ISRT call was processed.
Programmer Response: The initial load program should checkpoint its data
sets and return with a nonzero value in register 15.
Explanation: This status code is returned for batch programs only. A
checkpoint record was written and processing stopped. This is a combination
of UC and US status codes.
Programmer Response: See the descriptions of UC and US status
codes.
Explanation: The program tried to insert or replace a variable-length
segment that is too long. The length of the segment must be equal to or less
than the maximum length specified in the DBD. The length must be long enough
to include the entire reference field; if the segment is a logical child, it
must include the entire concatenated key of the logical parent and all
sequence fields for the paired segment. The program tried to delete a
variable-length segment. The copy of this segment in the user's I/O area
contains an invalid length field.
IMS also returns this status code when an invalid record length is specified
in a GSAM call.
Programmer Response: Correct the program.
Explanation: This status code applies to command-level programs only, and
is returned following a database or LOAD command. It means that the segment
length is missing or invalid. The segment length must be a positive integer.
For variable-length segments, it is the maximum size acceptable to the
program's I/O area.
Programmer Response: Check that the program translated and compiled
correctly. The value of any segment length in a path command should not
exceed 32K bytes, and the sum of the lengths should not exceed 64K bytes.
Explanation: This status code applies to command-level programs only, and
is returned following a get or INSERT command. It means that the field length
is missing or invalid. The field length must be a positive integer, and must
be specified for each field in a WHERE option.
Programmer Response: Correct the program.
Explanation: This status code applies to command-level programs only, and
is returned following any of the database commands or a LOAD command. It
means that the length of a variable-length segment is invalid. The LL field
as provided by the program on an ISRT or REPL command, or as received in the
I/O area on a Get command, exceeds the value of SEGLENGTH.
Programmer Response: Correct the program.
Explanation: This status code applies to command-level programs only, and
is returned following a Get, REPLACE, or INSERT command. It means the offset
is invalid. The offset must be a positive integer and not greater than the
segment length. than the segment length.
Programmer Response: Correct the program.
Explanation: This status code applies to command-level programs only, and
is returned following a Get or ISRT command using the KEYS option. It means
that the concatenated key length is missing or invalid. The length of the
concatenated key must be a positive integer.
Programmer Response: Correct the program.
Explanation: This status code applies to command-level programs only, and
is returned following a STATISTICS command. It means that the statistics area
length is either too small or invalid. The length must be a positive integer,
and must be at least 72 bytes for unformatted statistics, 120 bytes for
summary statistics, and 360 bytes for formatted statistics.
Programmer Response: Correct the program.
Explanation: The program tried to continue processing the conversation by
passing the SPA to another program through a program-to-program message switch
after already responding to the terminal.
Programmer Response: If a response has been sent, the SPA should be
returned to IMS. Correct the program.
Explanation: The program has passed the SPA to another program but is
trying to respond to the originating terminal.
Programmer Response: No response is allowed by a program that is passed
control of the program through a program-to-program message switch.
Explanation: The program inserted a message that has some bits in the Z1
field set. The Z1 field is reserved for IMS.
Programmer Response: Correct the program to prevent it from setting those
bits.
Explanation: IMS is terminating by a CHECKPOINT FREEZE or DUMPQ. IMS
returns this code to a BMP that has issued a CHKP or SYNC call. If it is a
transaction-oriented BMP, IMS does not return a message.
IMS also returns XD when a batch program issues a SYNC call.
Programmer Response: Terminate the program immediately. IMS will
terminate the program abnormally if the program issues another call.
Explanation: A program tried to insert a SPA to an alternate express PCB.
Programmer Response: Regenerate the PSB and remove the EXPRESS=YES option
from the PCB, or define another PCB that is not express to be used in the ISRT
call.
Explanation: IMS is ignoring the ISRT call for the SPA because the
specified alternate PCB had its destination set to a logical terminal but was
not defined as ALTRESP=YES during PSB generation.
MSC directed routing does not support a program-to-program switch between
conversational transactions.
Programmer Response: Correct the application program or change the PSB
generation for that alternate PCB to specify ALTRESP=YES.
Explanation: IMS ignored the ISRT call because the current conversation
requires fixed-length SPAs and the ISRT call was to a program with a different
length or variable-length SPA.
Programmer Response: Correct the program or the SPA definitions.
Explanation: An error occurred during GSAM initialization or during GSAM
call processing. If this status code is in the GSAM PCB before the
application issued the first call, the error was detected during
initialization. Possible causes are:
Insufficient space
Invalid DBD
Invalid block size
Invalid option
Internal GSAM error
Programmer Response: A subsequent GSAM call will result in an abnormal
termination of the program. The program should terminate.
Explanation: After a ROLB call, an I/O error occurred while IMS was
reading the SPA from the message queue data set.
Programmer Response: Terminate the conversation.
Explanation: The first ISRT call to an alternate PCB whose destination is
a conversational transaction code is not for the SPA. The SPA must be
inserted with the first ISRT call.
Programmer Response: Insert the SPA, then reinsert the message segment.
Explanation: The program modified the first 6 bytes of the SPA; the SPA
is now invalid.
Programmer Response: Correct the program and restore the original bytes.
Explanation: The program issued an ISRT call to pass the SPA to a
nonconversational transaction code. It did this by referencing a PCB whose
destination was set for the nonconversational transaction code. You can send
the SPA only to transaction codes defined as conversational.
Programmer Response: Correct the ISRT call. Send only data
segments.
Explanation: The program issued more than one ISRT call to send the SPA
to a PCB whose destination is a transaction code.
Programmer Response: Only one SPA is allowed per message. Correct the
program.
Explanation: An invalid transaction code name was inserted into the SPA.
Programmer Response: Correct the program to set the proper transaction
code name.
Explanation: The program tried to insert the SPA for a program-to-program
switch and the length of the SPA in the destination program is greater than
the maximum SPA length defined by the SPAREA macro at IMS generation.
Programmer Response: Contact your IMS system programmer to change the
size of the SPA defined in the destination program or to increase the maximum
SPA length defined for the system.