La variable del sistema SysLib.currentException identifica la excepción lanzada más recientemente en la unidad de ejecución.
EGL proporciona una serie de excepciones del sistema para indicar la naturaleza específica de un problema de tiempo de ejecución. Cada una de estas excepciones es un diccionario desde el que puede recuperar información, pero la recuperación siempre se hace por medio de la variable del sistema SysLib.currentException (también un diccionario), que permite acceder a la excepción mostrada más recientemente en la unidad de ejecución.
if (userRequest = "A") try add record1; onException case (SysLib.currentException.code) when (FileIOException) myErrorHandler(12); otherwise myErrorHandler(15); end end end
En este caso, FileIOException es una constante que es equivalente al valor de serie "com.ibm.egl.FileIOException". La constante de excepción de EGL siempre es equivalente al último calificador de una serie que empieza por "com.ibm.egl".
Se recomienda encarecidamente que acceda a los campos de excepción solo en un bloque onException. La unidad de ejecución termina si el código accede a SysLib.currentException cuando no se ha producido ninguna excepción.
if (userRequest = "A") try add record01; onException case (SysLib.currentException.code) when ("com.ibm.egl.SQLException") if (SysLib.currentException.sqlcode == -270) myErrorHandler(16); else myErrorHandler(20); end otherwise myErrorHandler(15); end end end
Conceptos relacionados
Diccionario
Consulta relacionada
Manejo de excepciones
Biblioteca SysLib de EGL
Excepciones del sistema de EGL