Page 1 of 1

Getting error for C1MSGS2 for endevor compilation report

PostPosted: Wed Aug 01, 2018 3:37 pm
by nikesh_rai
Hi Friends,

I am compiling cobol elements using ENDEVOR and trying to get the compilation report in a PS file (Txx.Txxxxx.ENDV.RPT1)by updating JCL as below:

//NDVRBAT  EXEC PGM=NDVRC1,DYNAMNBR=1500,REGION=40M,      
//  PARM='C1BM3000'                                        
//******************************************              
//* ALLOCATIONS FOR EXIT 2                 *              
//******************************************              
//NDVX2DDS INCLUDE MEMBER=NDVX2DDS                        
//******************************************              
//SYSPRINT DD SYSOUT=*                                    
//*********************************************************
//*             SORT WORK FILES                            
//*********************************************************
//SORTWK01 DD UNIT=SYSDA,SPACE=(CYL,(1,2))                
//SORTWK02 DD UNIT=SYSDA,SPACE=(CYL,(1,2))                
//SORTWK03 DD UNIT=SYSDA,SPACE=(CYL,(1,2))                
//C1TPDD01 DD UNIT=SYSDA,SPACE=(CYL,5),                    
//            DCB=(RECFM=VB,LRECL=260)                    
//C1TPDD02 DD UNIT=SYSDA,SPACE=(CYL,5),                    
//            DCB=(RECFM=VB,LRECL=260)                    
//C1TPDD01 DD UNIT=SYSDA,SPACE=(CYL,(5,1)),                
//            DCB=(RECFM=VB,LRECL=260,BLKSIZE=6160)      
//C1TPDD02 DD UNIT=SYSDA,SPACE=(CYL,(5,1)),              
//            DCB=(RECFM=VB,LRECL=260,BLKSIZE=6160)      
//********************************************************
//*             PANVALET SUPPORT                          
//********************************************************
//C1TPLSIN DD UNIT=SYSDA,SPACE=(CYL,5),                  
//            DCB=(RECFM=FB,LRECL=80,BLKSIZE=6160)        
//C1TPLSOU DD UNIT=SYSDA,SPACE=(CYL,5)                    
//C1PLMSGS DD SYSOUT=*                                    
//********************************************************
//*  OUTPUT DATA SETS                                    
//********************************************************
//C1MSGS1  DD SYSOUT=*                                    
//*C1MSGS2  DD SYSOUT=*                                  
//C1MSGS2  DD DSN=Txx.Txxxxx.ENDV.RPT1,                  
//            DISP=(MOD,CATLG,CATLG),                    
//            SPACE=(TRK,(10,10)),                        
//            DCB=(RECFM=FBA,LRECL=134,BLKSIZE=2680)      
//C1PRINT  DD SYSOUT=*,DCB=(RECFM=FBA,LRECL=121,BLKSIZE=6171)        
//SYSOUT   DD SYSOUT=*                                              
//*******************************************************************
//*  REQUEST DATA SET                                                
//*******************************************************************
//BSTIPT01 DD DSN=&SCLFIL,DISP=SHR                                  


Somehow, getting below JCL error

$HASP951 JES2 EXIT06 STATS   TxxxxxSC 00023862 PROGRAM                  
$HASP954 JES2 EXIT06 COMPILE SETTING TO JOB CLASS D                    
$HASP954 JES2 EXIT06 COMPILE SETTING TO SCHED ENV PGM_COBOL            
$HASP373 TxxxxxSC STARTED - WLM INIT  - SRVCLASS BATWLMT  - SYS SB03    
ACF9CCCD USERID Txxxxx   IS ASSIGNED TO THIS JOB - TxxxxxSC            
IEF196I ACF9CCCD USERID Txxxxx   IS ASSIGNED TO THIS JOB - TxxxxxSC    
IEF403I TxxxxxSC - STARTED - TIME=10.49.18                              
IEC141I 013-20,IGG0191A,TxxxxxSC,NDVRBAT,C1MSGS2,F414,DEVB1R,  038      
TBE.Txxxxx.ENDV.RPT1                                                    
BC1PSCRN: OPEN (F)ESTAE Routine Entered                                
+CCSR010E C1SSESTA S013 at 000B2E70 LMOD C1GSPRNT CSECT C1GSPRNT +000E70
+CCSR021I OWNER = CA Endevor SCM R17.0                                  
+CCSR022I MODULE = C1GSPRNT FMID = CSIQH00 RMID = CSIQH00              
+CCSR061I PSW: 00000000 00000000 075C1000 80E47456                      
+CCSR062I ILC: 02 INTERRUPT CODE: 0D                                    
+CCSR067I COMPLETION CODE S013 REASON CODE 00000020                    
+CCSR064I DATA AT PSW 00E47450 : 4100302C 0A0D010D A7E5014B            
+CCSR065I HOME = 0047  PRIMARY = 0047  SECONDARY = 0047                


Can you please help to get what could be the probable issue with this JCL

Re: Getting error for C1MSGS2 for endevor compilation report

PostPosted: Wed Aug 01, 2018 4:41 pm
by NicC
The Messages and Codes manual is fairly explicit on this. What did you not understand?

Re: Getting error for C1MSGS2 for endevor compilation report

PostPosted: Wed Aug 01, 2018 5:33 pm
by phunsoft
This is not a JCL error! The IEC141I message is issued by the OPEN routine.

RC 20 means OPEN recognizes BLKSIZE is not an integral multiple of LRECL. You specify LRECL=134,BLKSIZE=2680, and here BLKSIZE is 20 * LRECL. So OPEN seems to be wrong at first, but it surely is not. What's going on here, you might ask?

DCB attributes used by OPEN are merged from 3 sources: 1. DCB in program, 2. JCL, 3. Attibute of the data set (if it exists alredy). Whatever is specified in the DCB by the programmer (ENDEVOR in this case) cannot be overwritten by sources 2.) or 3.) above. The programmer usually writes its code to work with either fixed or variable length records of a specific length. So RECFM, and LREC are commonly defined by the program code. You cannot overwrite the by sources 2., or 3. For teh block size (BLKSIZE) hoever, it is good programming practise not to specify is in the code but leave it undetermined until runtime. So, you usually can set it via sources 2., or 3.

The net of all this: I bet ENDEVOR specifies that the C1MSG2 data set must have attributes RECFM=F [ B ] A, and either LRECL=133, or LRECL=121. You are setting LRECL=134, which is being ignored by OPEN, and BLKSIZE 2680, which is being accepted by OPEN. But 2680 is not an integral multiple of neither 133, nor 121.

Try with removing all of REFCM=, LRECL=, and BLKSIZE= from your DD statement (and delete the data set if it exists, or use a new one), and see what happends. Alternatively, if you insist in specifyin BLKSIZE, use an integeral multiple of whatever LRECL the ENDEVOR manual tells you (as said, I would assume 133, or 121).

Re: Getting error for C1MSGS2 for endevor compilation report

PostPosted: Wed Aug 01, 2018 10:47 pm
by nikesh_rai
Thanks phunsoft,

After updating LRECL = 133, JCL worked fine for me. I have one more query here. Once this JOB went fine, one more JOB submitted via internal reader for element movement to stage 2. The 2nd JCL also contain C1MSGS2 DD statement, and I want to use PS file instead of SYSOUT=*, just like I used in first JCL.

Basically I need to have all element movement details in a PS file for reporting. Is there any way we can override the C1MSGS2 DD statement in 2nd JCL. ??

Re: Getting error for C1MSGS2 for endevor compilation report

PostPosted: Thu Aug 02, 2018 12:34 am
by phunsoft
Not sure I understand what your problem is. To have the output be written to a data set instead of to the JES spool, you need to modify the JCL before it is submitted, or written to the internal reader. Just as you did with your first job.

Re: Getting error for C1MSGS2 for endevor compilation report

PostPosted: Thu Aug 02, 2018 2:10 am
by NicC
Endevor keeps a history of all movements so you do not need to. It will also write its processing output to a data set (VSAM, I think) that cn be queried through the Endevor menu system. If necessary, talk to your Endevor administrator.

As this topic has been completed I will lock it.