

En un programa CLP es muy fácil monitorear los mensajes de error. Utilizando el comando MONMSG(códigodeerrror) y especificando el código de error que se requiere monitorear, se puede con facilidad tomar el control del programa enviando el mensaje de error correspondiente y direccionado la ejecución del programa a la instrucción donde se requiere continuar sin que se produzca un mensaje de error en pantalla que incomode al usuario o que coloque en alerta al operador del sistema.
En RPG el asunto es un poco más complicado. Existen tres maneras de monitorear los mensajes de error.
1-La primera de ellas está relacionada con el monitoreo sobre errores producidos en la operación sobre un archivo.
a.- INFDS
b .-Uso de la Extensión (E) en el código de operación.
2-La segunda se relaciona con errores propios de la ejecución de alguna instrucción de RPG
3-La tercera es la más efectiva y sustituye a las anteriores pero está disponible únicamente para RPG IV e ILE-RPG
Monitoreo de Errores de Archivos. (primera parte)
INFDS(NOMBREDS)
La palabra clave INFDS te permite definir, en el programa RPG, el nombre de una estructura de datos que contiene la información asociada con un archivo. El nombre de la estructura de datos que se utilizará para tal fin se especifica en el parámetro de la palabra INFDS. Si INFDS es especificada en más de un archivo, cada estructura de datos asociada debe tener un nombre único.
Una INFDS debe ser definida para cada archivo para recoger la información relacionada con los errores de excepción disponibles para el programa.
La INFDS tiene la siguiente información.
• File Feedback (longitud 80)
• Open Feedback (longitud 160)
• Input/Output Feedback (longitud126)
• Device Specific Feedback (longitude variable)
• Get Attributes Feedback (longitude variable)
Para este artículo vamos a trabajar con el FILE FEEDBACK. La información contenida en las primeras 80 posiciones para monitorear los errores de archivos a tiempo de ejecución es, en general, más que suficiente para extraer la causa del error en el proceso de manipulación del archivo dentro del programa.



