The following describes the parameter list passed on an &NDBOPEN call to NCLEX01:
Fields in this DSECT include:
|
NEXNDNAM |
DS CL8 |
NDB name being opened |
|
NEXNDFL1 |
DS X |
Flag byte |
|
NEXNDOPX |
EQU X'80' |
... EXCLUSIVE on &NDBOPEN |
|
NEXNDOPI |
EQU X'40' |
... INPUT on &NDBOPEN |
|
NEXNDOKM |
DS 0XL2 |
Following 2 bytes. Note: initialized to 2X'FF'. |
|
NEXNDOK1 |
DS X |
... first OK operations flag. |
|
NEXNDGTO |
EQU X'80' |
... 1 = &NDBGET ok. |
|
NEXNDSCO |
EQU X'40' |
... 1 = &NDBSCAN ok. |
|
NEXNDADO |
EQU X'20' |
... 1 = &NDBADD ok. |
|
NEXNDUPO |
EQU X'10' |
... 1 = &NDBUPD ok. |
|
NEXNDDLO |
EQU X'08' |
... 1 = &NDBDEL ok. |
|
NEXNDDFO |
EQU X'04' |
... 1 = &NDBDEF ok. |
|
NEXNDINO |
EQU X'02' |
... 1 = &NDBINFO ok. |
|
NEXNDOK2 |
DS X |
... 2nd ok operations flag. |
|
NEXNDUDL |
DS H |
Length (0-50 decimal) of user data from &NDBOPEN statement. |
|
NEXNDUDT |
DS CL50 |
User data (padded/truncated to 50 chars) from &NDBOPEN statement (pad is blank). |
These fields can be referenced to determine the action to take.
By returning R15 not equal to 0, all access to the NDB from the NCL process is denied. ASN NDB response code of 40 is returned, and this is handled based on the &NDBCTL ERROR= setting.
If R15 is returned with a 0, the 2-byte NEXNDOKM field is examined. If all of the defined bits are off (as listed previously), then the effect is the same as setting R15 not 0. Note that the NEXNDOKM field is initialized to all bits on before the call.
If any bits in the NEXNDOKM field are off, the associated &NDBxxxx verb cannot be used. Attempts to use it results in an NDB response code of 41. This too is handled as per the &NDBCTL ERROR= setting.
You can deny the use of the &NDBDEF verb with this exit. This forces the use of the NDB FIELD command to add, update, or delete field definitions from the database.
If the exit terminates abnormally while processing the &NDBOPEN request, the NCL process is terminated with an error.
The exit is attached as a subtask in all environments. It should be coded re-entrant because multiple copies may be executing simultaneously.
| Copyright © 2011 CA. All rights reserved. | Tell Technical Publications how we can improve this information |