Códigos de FILE STATUS


Los Errores de File Status son errores que se producen en tiempo de Ejecución de un programa, los erres se obtienen definiendo el FILE STATUS en la FILE-CONTROL, esto sirve para controlar los errores que se producen en los ficheros, de forma que cada vez que hagamos algo con el fichero, debemos controlar el FILE STATUS para ver si todo es correcto.

Muchos generadores de Código Cobol, como el FAST (Banco Popular), BENDER (Bankia), entre otros, ya hacen el control de errores de forma automática.

Los errores son de 2 Dígitos Numéricos, a continuación, los mas comunes:

00- Operación correcta, la operación se realizó satisfactoriamente.

02 - Clave duplicada correcta. Se encontró clave duplicada, pero se especificó duplicidad de claves.

04 - La longitud del registro no está conforme a la descripción del fichero.

05 - Se ha abierto un fichero que no está presente.

07 - El dispositivo de almacenamiento ded archivo no es una cinta magnética, sin embargo, un close o un open incluyen una frase correspondiente no rewind, reel, for removal.

10 - Final del fichero. Se encontró el final del fichero intentando una lectura secuencial.

14Un READ secuencial para un fichero relativo intenta introducir un registro cuyo número relativo de registro es demasiado largo para la capacidad de la variable del RELATIVE KEY.

15 - Intento de leer un fichero opcional que no está presente.

16 - Una sentencia read se ejecutó mientras la condición at end era verdadera. (intento de leer después de fin de fichero).

21 - Error-secuencia. Se intenta grabar un registro con clave menor que el ultimo existente.

22 - Clave duplicada. Se trató de escribir un registro donde ya se había escrito otro registro (quizás se usó un rewrite). Se intenta grabar un registro con la misma clave existente.

23 - Registro no encontrado. Se intenta leer una clave que no existe. Se intenta leer o situar un fichero vacío. En un start se pone greater en la clave y existe clave con high-value se intenta una lectura y previamente se hizo una con high-values.

24 - Violación de los límites de un indexado. Se intenta grabar y el fichero no dispone de más extensiones. Se trató de escribir fuera de los límites del archivo.

30 - Existe un error permanente, no hay información adicional disponible.

34 - Violación de límites en un secuencial. Se intenta grabar y el fichero está lleno.

35 - Se produce cuando tratamos de leer un fichero vsam vacío de nueva creación.

37 - Intento de open a un fichero que debe estar en almacenamiento máximo, pero no está.

38 - Intento de open a un fichero que ha sido cerrado (closed) con lock.

39 - Error durante la ejecución de open, debido a inconsistencia entre la descripción del fichero y el fichero real.

41 - Se trató de hacer un open a un fichero ya abierto.

42 - Se trató de hacer un close a un fichero ya cerrado.

43 - Se trató de hacer un delete o un rewrite en modo de acceso secuencial, sin que se haya ejecutado con éxito una instrucción read precedente.

44 - Una violación de limite debida al intento de write o rewrite a un registro de longitud inapropiada.

46 - Intento de read a un registro no existente.

47 - Se trató de hacer un read o un start a un fichero fuera del modo i/o o input.

48 - Se trató de hacer un write en un archivo que no se abrió en ninguno de los modos output, i/o, o extend

49 - Se trató de hacer un delete o un rewrite en un fichero que no estaba en modo i/o.

90 - Operación inválida. No concuerda con el tratamiento del fichero que se utiliza.

91 - Falta la password, solo para ficheros vsam.

92 - error lógico. Se intenta utilizar el fichero y este está cerrado. Se intenta leer el fichero y detecto un final previo. Se intentó un rewrite o un delete y el fichero no se abrió como i-o. Se intentó un rewrite y el área es mayor que la definida. Se intentó una inserción en un fichero abierto extended y la clave no es mayor que la mayor existente en el fichero.

93 - Fichero en uso. El fichero está siendo usado en exclusiva por otro programa, solo para ficheros vsam.

94 - Perdido el puntero. Una operación anterior dejo el direccionador de registro mal, solo para ficheros vsam.

95 - Error información de fichero. Un fichero con definición de cluster como ksds, está siendo abierto como secuencial. La longitud o el desplazamiento de la clave no corresponde con el especificado en la definición de cluster. El fichero ha sido abierto como output y no está vacío, solo para ficheros vsam.

96 - Falta dlbl. Falta ficha de información de fichero en el jcl (ficha dd), solo para ficheros vsam.

97 - Fichero mal cerrado. El fichero ha sido utilizado en un programa anterior y no fue cerrado satisfactoriamente, el sistema hace un verify automáticamente y continua, solo para ficheros vsam.

98 - Grave error interno en la estructura del fichero, generalmente se suelen provocar cuando hay un corte eléctrico o una salida brusca del programa y algún fichero indexado se ha quedado abierto, lo que suele ocurrir es problema de correspondencia entre claves y datos, se recomienda hacerle un recovery (RM/COBOL). 
En algunos casos, es posible que éste error se deba a un problema físico del disco, en ese caso también será conveniente copiarlo en otro sitio "físico".

99 - Al borrar, leer o reescribir un registro que está siendo bloqueado por otro usuario.



Comentarios