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