Desarrollando en Cobol y Natural sobre Plataforma Mainframe

martes, 16 de julio de 2013

Cierre de Ficheros en programa Cobol

Una vez que hemos realizado todas las operaciones que queríamos ejecutar en un programa Cobol, siempre es importante proceder al cierre del Fichero con el que hemos estado trabajando. Hay que recordar este punto, ya que uno de los errores típicos consiste en dejar el fichero abierto.



Un ejemplo de rutina de cierre de fichero sería la siguiente:

******************************************************************
* 9999-CERRAR-FICHEROS                                           
******************************************************************
 9999-CERRAR-FICHEROS.                                           
*    CIERRE DE LOS FICHEROS DE ENTRADA Y SALIDA                  
*    ------------------------------------------                  
     CLOSE ENTRADA1                                              
           SALIDA1                                               
*                                                                
*    ESTABLECEMOS MARCA DE FICHERO CERRADO                       
     SET CLOSE-FILES         TO TRUE                             
*                                                                
*    CARGAMOS FILE STATUS DE ENTRADA EN VARIABLE ASOCIADA        
*    ----------------------------------------------------        
     MOVE FS-ENTRADA1        TO SW-FILE-STATUS                     

     MOVE LT-DESC-ERR-CLOSE  TO WS-DESCRIPCION           
*                                                        
*    GESTION DEL FILE STATUS                             
*    -----------------------                             
     PERFORM 9400-CONTROL-FS-FICHEROS                    
        THRU 9400-CONTROL-FS-FICHEROS-EXIT               
*                                                        
*    CARGAMOS FILE STATUS DE SALIDA EN VARIABLE ASOCIADA 
*    --------------------------------------------------- 
     MOVE FS-SALIDA1         TO SW-FILE-STATUS           
     MOVE LT-DESC-ERR-CLOSE  TO WS-DESCRIPCION           
*                                                        
*    GESTION DEL FILE STATUS                             
*    -----------------------                             
     PERFORM 9400-CONTROL-FS-FICHEROS                    
        THRU 9400-CONTROL-FS-FICHEROS-EXIT.              
*                                                        
 9999-CERRAR-FICHEROS-EXIT.                              
     EXIT.                 
                               


Los puntos clave de esta rutina serían:

1º) Sentencia CLOSE: Para ejecutar el cierre de los ficheros con los que hemos estado trabajando a lo largo del programa.

     CLOSE ENTRADA1   

2º) Recogida de la variable FILE STATUS: Para verificar si ha habido algún error al ejecutar el cierre del fichero utilizado.

     MOVE FS-ENTRADA1        TO SW-FILE-STATUS    

3º) Gestión del FILE STATUS: Aquí tenemos que mostrar los diferentes mensajes de error, en función de los resultados obtenidos con la ejecución de la sentencia CLOSE.

     PERFORM 9400-CONTROL-FS-FICHEROS                    
        THRU 9400-CONTROL-FS-FICHEROS-EXIT.  


Este proceso habría que repetirlo para cada uno de los ficheros que hemos empleado en el programa. De hecho, en el ejemplo vemos como se realiza tanto para el fichero ENTRADA1 como para el fichero SALIDA1.

Saludos.

No hay comentarios:

Publicar un comentario

Related Posts Plugin for WordPress, Blogger...