IBM SC34-6814-04 Server User Manual


 
DFHZNAC assumes that system sense codes are available upon receipt of an
exception response from the logical unit. Thus, analysis is performed to determine
the reason for the response. Decisions, such as which action flags to set and which
requests are needed, are made based upon the system sense codes received. If
sense information is not available, default action flags are set, and DFHZEMW is
scheduled to send a negative response, if a response is outstanding, with an error
message to the terminal.
The action flags set by DFHZNAC on receipt of specific inbound system sense
codes are listed in Appendix B, “Default actions of the node abnormal condition
program,” on page 855.
Before executing the specified routines, DFHZNAC links to DFHZNEP. You can use
DFHZNEP to perform additional error processing beyond that performed by
DFHZNAC; or to alter the default actions previously set by DFHZNAC. You need to
code a node error program only if you want to do either of these things.
The action flags, set by DFHZNAC to assist the node error program, are in field
TWAOPTL of the communication area.
If you want to modify DFHZNAC’s actions following an abnormal situation,
DFHZNEP can interrogate field TWAOPTL and modify the bit settings. If you agree
with DFHZNAC’s proposed actions, field TWAOPTL is left unaltered.
In most cases, DFHZNEP can modify DFHZNAC’s proposed actions. The only time
that DFHZNAC overrides DFHZNEP’s modification of field TWAOPTL is when a
logical unit is to be disconnected from CICS; that is, when DFHZNAC determines
that the abnormal situation requires that CICS issue the ACF/VTAM CLSDST macro
for a logical unit. In such a case, DFHZNAC disconnects the terminal and
abnormally terminates the task, even if DFHZNEP tries to block such actions.
Resetting of the task termination flag by the node error program is also ignored if a
negative response has been sent to a logical unit, or if DFHZEMW is to write an
error message to the logical unit.
When the node error program has performed its functions, it returns control to
DFHZNAC by an EXEC CICS RETURN command.
When control is returned from DFHZNEP, DFHZNAC performs the actions specified
in field TWAOPTL (except when disconnecting logical units, as noted above),
issuing messages and setting error codes, as necessary.
The communication area
After DFHZNEP receives control from DFHZNAC, it obtains the address of the
communication area by means of an EXEC CICS ADDRESS COMMAREA
command. Figure 30 on page 488 illustrates the general structure of the
communication area.
Chapter 9. Writing a node error program 487