Return Codes, System and User Variables

After each execution of the &PPI verb, the &RETCODE and &ZFDBK system variables are set to indicate the success, or otherwise, of the request. &ZFDBK is the PPI return code, and the &RETCODE is returned by the &PPI verb. The following table shows the correlation between the values in these variables.
12-1
After each execution of the &PPI verb, the &RETCODE and &ZFDBK system variables are set to indicate the success, or otherwise, of the request. &ZFDBK is the PPI return code, and the &RETCODE is returned by the &PPI verb. The following table shows the correlation between the values in these variables.
For more information about &RETCODE and &ZFDBK, see NCL Programming
.
The following table shows the correlation between the &ZFDBK and &RETCODE system variables.
&ZFDBK
&RETCODE
 
00
00
The PPI request completed successfully
04
04
The specified receiver is not active -- the data buffer or generic alert has been queued
10
00
The PPI facility is active and can be used
14
00
The receiver program is active
15
04
The receiver program is already inactive
16
08
The receiver program is already active
18
12
The receiver ECB is not zero
20
12
Invalid request type
22
12
The program issuing this request is not executing in primary addressing mode
23
08
The user program is not authorized
24
12
PPI is not active
25
12
The ASCB address is not correct
26
08
The receiver program is not defined
28
12
This product release does not support PPI
30
04
No data buffer in the receiver buffer queue
 
20
&PPI RECEIVE WAIT=NOTIFY -- no data buffers in queue, notify is queued
31
12
The receiver data buffer length is too short to receive the next data buffer
32
12
No storage is available
33
12
Invalid buffer length
35
08
The receiver buffer queue is full
36
12
Unable to establish ESTAE protection as requested
40
12
Invalid sender ID or receiver ID
90
12
A processing error has occurred
Other system variables are:
&ZPPI
Indicates whether this system appears to support PPI or not.
&ZPPINAME
Contains the PPI receiver ID that this NCL process is registered as.
Some &PPI functions set specific NCL user variables:
&PPISENDERID
Contains the PPI ID of the sender of a received message.
&PPIDATALEN
Contains the length of the actual received data in bytes.