Distributed Systems Network Management (DSNM) Subsystem Interface Development Guide

I Process Development Process
Distributed Systems Network Management (DSNM) Subsystem Interface Development
Guide109759 3-53
Reporting Errors to EMS
ZDSN^ERR^OBJ^NOT^FOUND
Use this value to report an object unknown to the subsystem. No result text should
be included.
ZDSN^ERR^SUBSYSTEM^ERR
Use this value to report all other subsystem errors. The error should be described as
result text.
Command-Terminating Errors
If an error causes a command to terminate, the command thread must clean up its
resources. Such an error should not affect commands that might be active on other
threads at the time. As a general rule, an error should terminate the thread in which it
occurs by returning _RC^ABORT (error) to the frame, but should not cause the I process
to terminate by calling PROCESS_STOP_.
Errors that are the result of logic or data errors in the command thread, or errors in any
component supplied by Tandem, should also be reported to EMS. Errors that represent
normal (although infrequent) conditions, such as running out of memory, should not be
reported to EMS.
Some errors, such as corrupted global data, may be so serious that there is no choice but
to terminate the process. These errors should always be reported to EMS.
Reporting Errors to EMS
Use _REPORT^STARTUP^ERROR and _REPORT^INTERNAL^ERROR to log
serious errors to the EMS collector process. These procedures are summarized in
Table 3-1, and described in detail in Appendix A, “DSNM Library Services.