ODABA error definitions
ODABA supports documented errors, which are defined in error classes (ODC_Error, ODC_ErrorClass). Within an application, one might receive errors thrown from the database kernel, but one may also define and throw errors defined in the application.
Errors are usually logged in the error.lst file, which is stored in the directory referenced i the trace option variable. When no TRACE option has been set, the error log is written to the TEMP directory according to system conventions. The error log-file is provided with the format
(yyyy/mm/dd hh:mm:ss) eClass-eType eNumberclass::function (eDescription)
The file has a fixed column formatting for better readability in text editors. For tailing the file in a console it is useful reformat it first.
ODABA system errors are registered in error classes stored in the ode.sys database. In order to browse defined errors, one may open the ode.sys database as resource database with the ClassEditor and open Objects/Errors in the main menuThere, the following error classes are listed:
- ogui_err - GUI framework errors
- sdb_err - database errors
- sos_err - common service function errors
Within a project, an application or project error class may be defined in order to create application specific documented errors. The error class for the application is , usually p_err.
Usually, errors are thrown as exceptions and the exception object provides all the information that is available for the error (function and class that have thrown the error, error explanation and detailed description). Not all errors are turned into exceptions. Some errors are handled by the system, but those are written to the error log (stored in error.lst at location as being defined in option TRACE): In order to get more details for errors written to the error log file (which contains the short error reason, but not the detailed error explanation), one may use the MessageBrowser or look into the error documentation.