JCL Compiler COBOL 6+
- vagner.bellacosa
- New Member
- Posts: 4
- Joined: Sat Oct 07, 2023 2:30 am
JCL Compiler COBOL 6+
Good afternoon, I use an academic environment in which until recently we used COBOL 4.2.
They recently changed to version 6.3, but my compilation jobs no longer work. Could anyone please provide a jcl copy for the new version?
- COBOL compilation
- COBOL + DB2 compilation
- COBOL + CICS compilation
- COBOL + DB2 + CICS compilation
Thank you very much
Vagner
They recently changed to version 6.3, but my compilation jobs no longer work. Could anyone please provide a jcl copy for the new version?
- COBOL compilation
- COBOL + DB2 compilation
- COBOL + CICS compilation
- COBOL + DB2 + CICS compilation
Thank you very much
Vagner
Re: JCL Compiler COBOL 6+
Hello.
In general, there should not be much change required to the JCL for an upgrade of the compiler. It's rare for the inputs/outputs required to change between versions. The one thing that will change between versions is going to be the load dataset for the compiler on the "STEPLIB" DD statement. I know that the ADCD uses a high level qualifier of the form "IGYvrm" (e.g. "IGY630", so the compiler's load dataset would be "IGY630.SIGYCOMP"), but the one used at your installation may not be the same. The V4.2 dataset name may give some clues as to what the new dataset will be called.
If you can't find the compiler installation datasets yourself, I'd suggest having a word with your sysprogs. Without having seen your existing JCL, it might also be possible that installation-specific library procedures haven't been updated when they should have, in which case, they'd be the people to fix it.
In general, there should not be much change required to the JCL for an upgrade of the compiler. It's rare for the inputs/outputs required to change between versions. The one thing that will change between versions is going to be the load dataset for the compiler on the "STEPLIB" DD statement. I know that the ADCD uses a high level qualifier of the form "IGYvrm" (e.g. "IGY630", so the compiler's load dataset would be "IGY630.SIGYCOMP"), but the one used at your installation may not be the same. The V4.2 dataset name may give some clues as to what the new dataset will be called.
If you can't find the compiler installation datasets yourself, I'd suggest having a word with your sysprogs. Without having seen your existing JCL, it might also be possible that installation-specific library procedures haven't been updated when they should have, in which case, they'd be the people to fix it.
- Anuj Dhawan
- Founder
- Posts: 2812
- Joined: Sun Apr 21, 2013 7:40 pm
- Location: Mumbai, India
- Contact:
Re: JCL Compiler COBOL 6+
Along with what zum13 said, when you say, "jobs no longer work" - what happens, any error you get? Could you share the message/s from failed run?vagner.bellacosa wrote: ↑Sat Oct 07, 2023 2:36 am
They recently changed to version 6.3, but my compilation jobs no longer work.
Thanks,
Anuj
Disclaimer: My comments on this website are my own and do not represent the opinions or suggestions of any other person or business entity, in any way.
Anuj
Disclaimer: My comments on this website are my own and do not represent the opinions or suggestions of any other person or business entity, in any way.
- Robert Sample
- Global Moderator
- Posts: 1899
- Joined: Fri Jun 28, 2013 1:22 am
- Location: Dubuque Iowa
Re: JCL Compiler COBOL 6+
Are you using IGYWC for your COBOL compiles? If not, you are using a custom set up and MUST contact your site support group for assistance. There are many, many, many ways to set up COBOL compiles and each site typically does it a little differently. If you are using IGYWC, then you need to find the high-level and mid-level qualifiers for the SIGYPROC data set that is part of the 6.3 installation. Again, your site support group can help you with that.
- vagner.bellacosa
- New Member
- Posts: 4
- Joined: Sat Oct 07, 2023 2:30 am
Re: JCL Compiler COBOL 6+
Thanks for your help, after a lot of back and forth, I discovered the errors, adjusted the Load file to the PDSE format and included new temporary libraries.
- vagner.bellacosa
- New Member
- Posts: 4
- Joined: Sat Oct 07, 2023 2:30 am
Re: JCL Compiler COBOL 6+
//CATCOB63 JOB ('00'),TSO.&SYSUID,NOTIFY=&SYSUID, 00010001
// MSGCLASS=T,MSGLEVEL=1,CLASS=A,REGION=0M 00020000
//*------------------------------------------------------------------* 00030000
//* COMPILA E LINKEDITA PROGRAMA COBOL BATCH VERSAO 6.3 00040001
//*------------------------------------------------------------------* 00050000
//COMPCOB PROC MOD=COBOL006, 00060000
// DSN='KC02746.WORKBOOK.COBOL', 00070000
// LIB='KC02746.LIB.CBLPDSE' 00080002
//*------------------------------------------------------------------* 00090000
//*------------------------IMPORTANTE--------------------------------* 00091001
//* DEVIDO A MUDANCAS NO COMPILADOR O ARQUIVO DE LIB DEVE ESTAR NO * 00092001
//* FORMATO PDSE, CASO CONTRARIO ABENDARA POR ERRO DE ALOCACAO * 00092101
//*------------------------------------------------------------------* 00093001
//*------------------------------------------------------------------* 00094001
//COB EXEC PGM=IGYCRCTL, 00100000
// PARM='BUFSIZE(32760),LIB,,NOOPT,FLAG(I,W),RENT,LIST,ARITH(EXTEND)' 00110000
//STEPLIB DD DISP=SHR,DSN=IGY630.SIGYCOMP 00120000
//SYSLIB DD DSN=&DSN,DISP=SHR 00130000
// DD DSN=CEE.SCEESAMP,DISP=SHR 00140000
//SYSPRINT DD SYSOUT=* 00150000
//SYSIN DD DSN=&DSN(&MOD),DISP=SHR 00160000
//SYSLIN DD DSN=&&LOADSET,DISP=(MOD,PASS), 00170000
// UNIT=SYSDA,SPACE=(180,(250,100)) 00180000
//SYSUT1 DD UNIT=SYSALLDA,SPACE=(CYL,(1,1)),VOL=(,,,1) 00190000
//SYSUT2 DD UNIT=SYSALLDA,SPACE=(CYL,(1,1)),VOL=(,,,1) 00200000
//SYSUT3 DD UNIT=SYSALLDA,SPACE=(CYL,(1,1)),VOL=(,,,1) 00210000
//SYSUT4 DD UNIT=SYSALLDA,SPACE=(CYL,(1,1)),VOL=(,,,1) 00220000
//SYSUT5 DD UNIT=SYSALLDA,SPACE=(CYL,(1,1)),VOL=(,,,1) 00230000
//SYSUT6 DD UNIT=SYSALLDA,SPACE=(CYL,(1,1)),VOL=(,,,1) 00240000
//SYSUT7 DD UNIT=SYSALLDA,SPACE=(CYL,(1,1)),VOL=(,,,1) 00250000
//SYSUT8 DD UNIT=SYSALLDA,SPACE=(CYL,(1,1)),VOL=(,,,1) 00260000
//SYSUT9 DD UNIT=SYSALLDA,SPACE=(CYL,(1,1)),VOL=(,,,1) 00270000
//SYSUT10 DD UNIT=SYSALLDA,SPACE=(CYL,(1,1)),VOL=(,,,1) 00280000
//SYSUT11 DD UNIT=SYSALLDA,SPACE=(CYL,(1,1)),VOL=(,,,1) 00290000
//SYSUT12 DD UNIT=SYSALLDA,SPACE=(CYL,(1,1)),VOL=(,,,1) 00300000
//SYSUT13 DD UNIT=SYSALLDA,SPACE=(CYL,(1,1)),VOL=(,,,1) 00310000
//SYSUT14 DD UNIT=SYSALLDA,SPACE=(CYL,(1,1)),VOL=(,,,1) 00320000
//SYSUT15 DD UNIT=SYSALLDA,SPACE=(CYL,(1,1)),VOL=(,,,1) 00330000
//SYSMDECK DD UNIT=SYSALLDA,SPACE=(CYL,(1,1)),VOL=(,,,1) 00340000
//* 00350000
//******************************************************************** 00360000
//LKED EXEC PGM=IEWL, 00370000
// PARM='XREF,RENT',COND=(5,LT,COB) 00380000
//SYSLIB DD DSN=CEE.SCEELKED,DISP=SHR 00390000
// DD DSN=SYS1.LINKLIB,DISP=SHR 00400000
// DD DSN=&LIB,DISP=SHR 00410000
//SYSLMOD DD DSN=&LIB(&MOD),DISP=SHR 00420000
//SYSUT1 DD UNIT=SYSDA,DCB=BLKSIZE=1024, 00430000
// SPACE=(1024,(200,20)) 00440000
//SYSPRINT DD SYSOUT=A 00450000
//SYSLIN DD DSN=&&LOADSET,DISP=(OLD,DELETE) 00460000
// PEND 00470000
/* 00480000
//*------------------------------------------------------------------* 00481000
//CATCOB EXEC COMPCOB 00490000
//*------------------------* FIM PROCEDURE *------------------------* 00500000
// MSGCLASS=T,MSGLEVEL=1,CLASS=A,REGION=0M 00020000
//*------------------------------------------------------------------* 00030000
//* COMPILA E LINKEDITA PROGRAMA COBOL BATCH VERSAO 6.3 00040001
//*------------------------------------------------------------------* 00050000
//COMPCOB PROC MOD=COBOL006, 00060000
// DSN='KC02746.WORKBOOK.COBOL', 00070000
// LIB='KC02746.LIB.CBLPDSE' 00080002
//*------------------------------------------------------------------* 00090000
//*------------------------IMPORTANTE--------------------------------* 00091001
//* DEVIDO A MUDANCAS NO COMPILADOR O ARQUIVO DE LIB DEVE ESTAR NO * 00092001
//* FORMATO PDSE, CASO CONTRARIO ABENDARA POR ERRO DE ALOCACAO * 00092101
//*------------------------------------------------------------------* 00093001
//*------------------------------------------------------------------* 00094001
//COB EXEC PGM=IGYCRCTL, 00100000
// PARM='BUFSIZE(32760),LIB,,NOOPT,FLAG(I,W),RENT,LIST,ARITH(EXTEND)' 00110000
//STEPLIB DD DISP=SHR,DSN=IGY630.SIGYCOMP 00120000
//SYSLIB DD DSN=&DSN,DISP=SHR 00130000
// DD DSN=CEE.SCEESAMP,DISP=SHR 00140000
//SYSPRINT DD SYSOUT=* 00150000
//SYSIN DD DSN=&DSN(&MOD),DISP=SHR 00160000
//SYSLIN DD DSN=&&LOADSET,DISP=(MOD,PASS), 00170000
// UNIT=SYSDA,SPACE=(180,(250,100)) 00180000
//SYSUT1 DD UNIT=SYSALLDA,SPACE=(CYL,(1,1)),VOL=(,,,1) 00190000
//SYSUT2 DD UNIT=SYSALLDA,SPACE=(CYL,(1,1)),VOL=(,,,1) 00200000
//SYSUT3 DD UNIT=SYSALLDA,SPACE=(CYL,(1,1)),VOL=(,,,1) 00210000
//SYSUT4 DD UNIT=SYSALLDA,SPACE=(CYL,(1,1)),VOL=(,,,1) 00220000
//SYSUT5 DD UNIT=SYSALLDA,SPACE=(CYL,(1,1)),VOL=(,,,1) 00230000
//SYSUT6 DD UNIT=SYSALLDA,SPACE=(CYL,(1,1)),VOL=(,,,1) 00240000
//SYSUT7 DD UNIT=SYSALLDA,SPACE=(CYL,(1,1)),VOL=(,,,1) 00250000
//SYSUT8 DD UNIT=SYSALLDA,SPACE=(CYL,(1,1)),VOL=(,,,1) 00260000
//SYSUT9 DD UNIT=SYSALLDA,SPACE=(CYL,(1,1)),VOL=(,,,1) 00270000
//SYSUT10 DD UNIT=SYSALLDA,SPACE=(CYL,(1,1)),VOL=(,,,1) 00280000
//SYSUT11 DD UNIT=SYSALLDA,SPACE=(CYL,(1,1)),VOL=(,,,1) 00290000
//SYSUT12 DD UNIT=SYSALLDA,SPACE=(CYL,(1,1)),VOL=(,,,1) 00300000
//SYSUT13 DD UNIT=SYSALLDA,SPACE=(CYL,(1,1)),VOL=(,,,1) 00310000
//SYSUT14 DD UNIT=SYSALLDA,SPACE=(CYL,(1,1)),VOL=(,,,1) 00320000
//SYSUT15 DD UNIT=SYSALLDA,SPACE=(CYL,(1,1)),VOL=(,,,1) 00330000
//SYSMDECK DD UNIT=SYSALLDA,SPACE=(CYL,(1,1)),VOL=(,,,1) 00340000
//* 00350000
//******************************************************************** 00360000
//LKED EXEC PGM=IEWL, 00370000
// PARM='XREF,RENT',COND=(5,LT,COB) 00380000
//SYSLIB DD DSN=CEE.SCEELKED,DISP=SHR 00390000
// DD DSN=SYS1.LINKLIB,DISP=SHR 00400000
// DD DSN=&LIB,DISP=SHR 00410000
//SYSLMOD DD DSN=&LIB(&MOD),DISP=SHR 00420000
//SYSUT1 DD UNIT=SYSDA,DCB=BLKSIZE=1024, 00430000
// SPACE=(1024,(200,20)) 00440000
//SYSPRINT DD SYSOUT=A 00450000
//SYSLIN DD DSN=&&LOADSET,DISP=(OLD,DELETE) 00460000
// PEND 00470000
/* 00480000
//*------------------------------------------------------------------* 00481000
//CATCOB EXEC COMPCOB 00490000
//*------------------------* FIM PROCEDURE *------------------------* 00500000
Re: JCL Compiler COBOL 6+
Something you can do to make your job reusable is put the inline procedure into one of your own PDS(E) datasets somewhere. If you put the block from the "PROC" to "PEND" statements into it's own member, you can use the "JCLLIB" statement to add the PDS to the list of PROCLIBs to be used by the job so that all you need to run a compile is something like this...
This has the advantage that if you have a bit of JCL for each program you're working on then the next time the compiler version changes, you'll only have to update the procedure and not each of the individual jobs.
Code: Select all
//CATCOB63 JOB ('00'),TSO.&SYSUID,NOTIFY=&SYSUID,
// MSGCLASS=T,MSGLEVEL=1,CLASS=A,REGION=0M
// JCLLIB ORDER=(your.proc.dataset)
//CATCOB EXEC COMPCOB MOD=program-name
Create an account or sign in to join the discussion
You need to be a member in order to post a reply
Create an account
Not a member? register to join our community
Members can start their own topics & subscribe to topics
It’s free and only takes a minute