|
When the system returns control to the problem program, register
15 contains a return code and register 0 contains a reason code in
the 2 low-order bytes (Table 1
). The high-order bytes of both registers are set to 0. "Directory
Action" in the table heading refers to the directory functions
add, change, delete, initialize, replace, and disconnect.
Table 1. STOW Completion
CodesReturn Code (15) |
Reason Code (0) |
Directory Action |
Meaning |
---|
00 (X'00') |
00 (X'00') |
A, C, D, R |
The update of the directory was completed
successfully. |
|
00 (X'00') |
I |
The directory was cleared (initialized)
successfully. |
|
00 (X'00') |
DISC |
Function successful. |
04 (X'04') |
00 (X'00') |
A, C |
The directory already contains the
specified new name. |
|
00 (X'00') |
DISC |
Error detected. Check status fields. |
08 (X'08') |
01 (X'01') |
DISC |
Reserved fields not zero. |
|
02 (X'02') |
DISC |
Bad length field (either too small
for at least one array entry or does not allow for even multiple of
array entries). |
|
03 (X'03') |
DISC |
Either no function bit is set or
reserved function bit is set. |
|
00 (X'00') |
D, R |
The specified name could not be found. |
|
C |
The specified old name could not
be found. |
|
12 (X'0C') |
00 (X'00') |
A, C, R |
No space left in the directory. The
entry could not be added, replaced, or changed. |
12 (X'0C') |
01 (X'01') |
A, R |
For a PDSE, an attempt by STOW to
create a member with no records failed because the number of members
would have exceeded the maximum allowed. |
16 (X'10') |
01 (X'01') |
A, C, D, I, R |
A permanent input or output error
was detected. Control is not given to the error analysis (SYNAD) routine. |
16 (X'10') |
02 (X'02') |
A, R |
A permanent I/O error occurred while
attempting to write the EOF mark after the member. Control is not
given to the error analysis (SYNAD) routine. |
|
04 (X'04') |
A, C, D, R |
An error occurred while writing data
buffered in system buffers. Control is not given to the error analysis
(SYNAD) routine. |
|
1847 (X'737') |
A, C, D, I, R |
The system found an I/O error while
trying to read or write the VTOC.1 |
|
2871 (X'B37') |
A, C, D, I, R |
The system was unable to update the
VTOC.1 |
|
3383 (X'D37') |
A, C, D, I, R |
Either no secondary space is available
or a DADSM user exit error occurred. The error occurred when trying
to write an EOF; all primary space used.1 |
|
3639 (X'E37') |
A, C, D, I, R |
Either no secondary space is available
or a DADSM user exit error occurred.1 |
20 (X'14') |
00 (X'00') |
A, C, D, I, R |
The specified data control block
is not open or is opened for input, or a DEB error occurred. |
24 (X'18') |
00 (X'00') |
A, C, D, I, R |
Insufficient virtual storage was
available to perform the STOW function. |
28 (X'1C') |
00 (X'00') |
A, R |
The caller attempted to issue add
or replace for a member of the Program Management Library, which is
a PDSE that contains program objects. |
30 (X'1E') |
28 (X'1C') |
A, R |
A stow for an allas was issued for a member
that has been deleted. However, the member is connected so the delete
is pending and the create of the allas failed. |
32 (X'20') |
|
A, C, D, I, R |
Reserved. |
34 (X'22') |
00 (X'00') |
I |
In an initialize operation, one or more of the
members is placed in a pending delete status. |
36 (X'24') |
00 (X'00') |
A, R |
The alias has an invalid TTR (PDSEs
only). |
40 (X'28') |
00 (X'00') |
A, R |
User-supplied TTRs are in the user
data field of the directory entry (PDSEs only). |
44 (X'2C') |
|
A, C, D, I, R |
Reserved. |
48 (X'30') |
04 (X'04') |
A |
The add failed because you cannot
add a primary member name while the PDSE is open for update (PDSEs
only). |
|
08 (X'08') |
R |
The replace failed because you cannot
replace a primary member name while the PDSE is open for update and
the specified name does not exist (PDSEs only). |
|
12 (X'0C') |
R |
The replace failed because you cannot
replace an alias name if it is the same name as the primary member
(PDSEs only). |
|
16 (X'10') |
A, R |
The add or replace failed when attempting
to add or replace an alias, but the member identified by the TTR did
not exist (PDSEs only). |
|
20 (X'14') |
R |
The replace failed when attempting
to replace a primary member name while the PDSE is open for update
and the member name identified an existing alias (PDSEs only). |
|
24 (X'18') |
R |
The replace failed when attempting
to replace a primary member name while the PDSE is open for update,
but the input TTR has not been defined for that member (PDSEs only). |
52 (X'34') |
00 (X'00') |
I |
One or more members were placed in
a pending delete state; the space taken by those modules is not immediately
available for reuse. |
The following return and reason codes may be returned
from STOW IFF:
Table 2. STOW IFF Completion
CodesReturn Code (15) |
Reason Code (0) |
Description |
---|
00 (X'00') |
00 (X'00') |
STOW IFF successful. The compare
operands matched and the directory was updated successfully, the member
was createdor updated. |
04 (X'04') |
00 (X'00') |
STOW IFF successful. The input compare
operand was zero, the input member name did not exist. The directory
was updated successfully, the member was added. |
08 (X'08') |
00 (X'00') |
STOW IFF failed. Either: - The input compare operand was zero, but the input member name
exists
- The input compare operand was not zero, the input member name
exists, but the compare operand (Timestamp) does not match that
of the existing member.
|
28 (X'1C') |
04 (X'04') |
The dcb indicates a PDS, STOW IFF
is not supported for PDS members. |
The following return and reason
codes may be returned from STOW RG, DG and RECOVERG: Table 3. STOW RG, DG and RECOVERG Completion CodesReturn Code (15) |
Reason Code (0) |
Directory Action |
Description |
---|
00 (X'00') |
00 (X'00') |
RG, DG, RECOVERG |
Function successful. |
08 (X'08') |
00 (X'00') |
DG |
Generation does not exist, not
deleted. |
08 (X'08') |
00 (X'00') |
RG |
Name exists but generation did
not exist. Add performed. |
08 (X'08') |
00 (X'00') |
RECOVERG |
Generation does not exist, no recovery
performed. |
48 (X'30') |
28 (X'1C') |
RG |
Data set is not defined to have
generations. |
48 (X'30') |
32 (X'20') |
RG |
No generation has ever existed.
Generations must exist before an RG operation can be performed. |
48 (X'30') |
36 (X'24') |
RG |
The generation specified is out
of range. It is older than the oldest generation and generation limit
has been reached. |
48 (X'30') |
40 (X'28') |
RG |
The generation specified is out
of range. It is newer than the newest generation. |
|