Desarrollando en Cobol y Natural sobre Plataforma Mainframe

jueves, 1 de agosto de 2013

Compilador completo para objetos Cobol

A diferencia de otros lenguajes, en Cobol hay que reconocer que la función de compilación es un poco más compleja de lo que sería recomendable. Pero bueno, al fin y al cabo, es una tarea que sólo hay que preparar al principio, cuando configuramos nuestro entorno. Luego es sencillo lanzar la función una y otra vez.

El compilador de Cobol normalmente se compone de 3 partes: COMPILE, LINK y GO. Cuando preparemos nuestro JCL de compilación, tendremos que tener en cuenta que debemos proporcionar toda la información necesaria para que puedan completarse los 3 pasos.



Mostramos a continuación cómo sería un JCL con el que se podría realizar la compilación completa (COMPILE, LINK y GO) de un programa Cobol que no contenga accesos DB2 (más adelante, en otro post, indicaremos cómo se pueden realizar las compilaciones con DB2).

Sería lo siguiente para compilar, por ejemplo, el programa JJ0004CB.

//JJCOM1CL JOB 102,'COMPILADOR COMPLETO',NOTIFY=&SYSUID,           
//  MSGCLASS=Q,CLASS=A,MSGLEVEL=(1,1),REGION=0M,TIME=(0,7)         
//**************************************************************   
//* SYSLIB  ES LA LIBRERIA DE COPYS      
//* SYSIN   ES LA LIBRERIA DE FUENTES                        
//* SYSLMOD ES LA LIBRERIA DE EJECUTABLES          
//**************************************************************   
//STEP0          EXEC IGYWCLG,PARM.COBOL='LIB,APOST,XREF,MAP,OFFSET'
//* LIBRERIA EN LA QUE SE ENCUENTRA EL COMPILADOR IGYCRCTL         
//COBOL.STEPLIB  DD DSN=IGY410.SIGYCOMP,DISP=SHR                   
//* LIBRERIA DE FUENTES                                            
//COBOL.SYSIN    DD DSN=LIBPR.FUENTES.JJ00(JJ0004CB),DISP=SHR      
//* STEPLIB      DD DSN=LIBPR.MODULOS.JJ00,DISP=SHR                
//* AÑADIMOS COPYS Y MODULOS PARA PASO LKED DE IGYWCL (PGM HEWL)   
//LKED.SYSLIB    DD DSN=CEE.SCEELKED,DISP=SHR                      
//               DD DSN=LIBPR.COPYS.JJ00,DISP=SHR                  
//LKED.SYSLMOD   DD DSN=LIBPR.MODULOS.JJ00(JJ0004CB),DISP=SHR      
//                                  
                               

Saludos.

Related Posts Plugin for WordPress, Blogger...