View previous topic :: View next topic
Author
Message
sandeep kumar302 New User Joined: 14 Mar 2012Posts: 81 Location: India
I created a basic program with name COB002 and when i try to compile the program, I get MAXCC12.
The error says -
IEW2730S D908 INVALID RECFM FOR DDNAME SYSLIN AND CONCATENATION NUMBER 2.
Here, the load module , i created with recfm = 0, lrecl = 0
src program - pds, recfm = fb
so, where i am giving a wrong value.
Can anyone comment on this, please-
1. My compile JCL
Code:
//COMPJCL4 JOB 1AD40G12,'COMPCOB-COMPLINK',NOTIFY=&SYSUID
//*************************************************************
//*COMPILAR Y LINKEDITAR
//*************************************************************
//STEP0 EXEC IGYWCL,PARM.COBOL='LIB,APOST,XREF,MAP,OFFSET'
//* -----------------------------------------------------------
//COBOL.SYSLIB DD DISP=SHR,DSN=SANDY.COBOL.COPYLIB
//* DD DISP=SHR,DSN=SANDY.COBOL.COPYLIBB
//COBOL.SYSIN DD DISP=SHR,DSN=SANDY.COBOL.SRCLIB(COB002)
//LKED.SYSLMOD DD DISP=SHR,DSN=SANDY.COBOL.LOADLIB(COB002)
//LKED.SYSIN DD
NAME COB002(R)
/*
//
Error:
=====
Code:
IEW2730S D908 INVALID RECFM FOR DDNAME SYSLIN AND CONCATENATION NUMBER 2.
IGYWCL Procedure-
============
Code:
//IGYWCL PROC LNGPRFX='IGY410',SYSLBLK=3200,
// LIBPRFX='CEE',
// PGMLIB='&&GOSET',GOPGM=GO
//*
//********************************************************
//*
//* Enterprise COBOL for z/OS
//* Version 4 Release 1 Modification 0
//*
//* LICENSED MATERIALS - PROPERTY OF IBM.
//*
//* 5655-S71 © COPYRIGHT IBM CORP. 1991, 2007
//* ALL RIGHTS RESERVED
//*
//* US GOVERNMENT USERS RESTRICTED RIGHTS - USE,
//* DUPLICATION OR DISCLOSURE RESTRICTED BY GSA
//* ADP SCHEDULE CONTRACT WITH IBM CORP.
//*
//********************************************************
//*
//* COMPILE AND LINK EDIT A COBOL PROGRAM
//*
//* PARAMETER DEFAULT VALUE USAGE
//* LNGPRFX IGY.V4R1M0 PREFIX FOR LANGUAGE DATA SET NAMES
//* SYSLBLK 3200 BLOCKSIZE FOR OBJECT DATA SET
//* LIBPRFX CEE PREFIX FOR LIBRARY DATA SET NAMES
//* PGMLIB &&GOSET DATA SET NAME FOR LOAD MODULE
//* GOPGM GO MEMBER NAME FOR LOAD MODULE
//*
//* CALLER MUST SUPPLY //COBOL.SYSIN DD ...
//*
//* CALLER MUST ALSO SUPPLY //COBOL.SYSLIB DD ... for COPY statements
//*
//COBOL EXEC PGM=IGYCRCTL,REGION=0M
//STEPLIB DD DSNAME=&LNGPRFX..SIGYCOMP,
// DISP=SHR
//SYSPRINT DD SYSOUT=*
//SYSLIN DD DSNAME=&&LOADSET,UNIT=SYSALLDA,
// DISP=(MOD,PASS),SPACE=(TRK,(3,3)),
// DCB=(BLKSIZE=&SYSLBLK)
//SYSUT1 DD UNIT=SYSALLDA,SPACE=(CYL,(1,1))
//SYSUT2 DD UNIT=SYSALLDA,SPACE=(CYL,(1,1))
//SYSUT3 DD UNIT=SYSALLDA,SPACE=(CYL,(1,1))
//SYSUT4 DD UNIT=SYSALLDA,SPACE=(CYL,(1,1))
//SYSUT5 DD UNIT=SYSALLDA,SPACE=(CYL,(1,1))
//SYSUT6 DD UNIT=SYSALLDA,SPACE=(CYL,(1,1))
//SYSUT7 DD UNIT=SYSALLDA,SPACE=(CYL,(1,1))
//LKED EXEC PGM=HEWL,COND=(8,LT,COBOL),REGION=0M
//SYSLIB DD DSNAME=&LIBPRFX..SCEELKED,
// DISP=SHR
//SYSPRINT DD SYSOUT=*
//SYSLIN DD DSNAME=&&LOADSET,DISP=(OLD,DELETE)
// DD DDNAME=SYSIN
//SYSLMOD DD DSNAME=&PGMLIB(&GOPGM),
// SPACE=(TRK,(10,10,1)),
// UNIT=SYSALLDA,DISP=(MOD,PASS)
//SYSUT1 DD UNIT=SYSALLDA,SPACE=(TRK,(10,10))
My simple hello world program:
=========================
Code:
IDENTIFICATION DIVISION.
PROGRAM-ID. COB001.
*SIMPLE HELLO WORLD PROGRAM
ENVIRONMENT DIVISION.
DATA DIVISION.
PROCEDURE DIVISION.
MAIN-PARA.
DISPLAY "HELLO WORLD".
STOP RUN.
Can some one suggest me if they faced a similar issue? Where i am doing wrong.
I saw this link - www.ibm.com/support/knowledgecenter/en/SSLTBW_2.1.0/com.ibm.zos.v2r1.ieam800/kk2730s.htm
but still not able to figure it out.
Back to top
Robert Sample Global Moderator Joined: 06 Jun 2008Posts: 8700 Location: Dubuque, Iowa, USA
Quote:
Here, the load module , i created with recfm = 0, lrecl = 0
RECFM (record format) will be U, V, VB, VBS, F, FB, FBS -- I don't know how the system will interpret a value of 0 but obviously it did not like that value! And a load library should be RECFM=U.
Back to top
sandeep kumar302 New User Joined: 14 Mar 2012Posts: 81 Location: India
Hi Robert,
Sorry, its a TYPO. I mean i created with recfm=u,lrecl=0 for load module.
Back to top
sandeep kumar302 New User Joined: 14 Mar 2012Posts: 81 Location: India
Is there anything wrong in my compile JCL or I need to do some changes to IGYWCL Procedure.
Back to top
enrico-sorichetti Superior Member Joined: 14 Mar 2007Posts: 10888 Location: italy
what happened when You googled with IEW2730S ?
the explanation in the manual is pretty clear
anyway the action is to fix the dcb attributes of the dataset
Back to top
sandeep kumar302 New User Joined: 14 Mar 2012Posts: 81 Location: India
Hi Enrico,
This is fixed now. I changed my compile JCL. The corrected compile JCL is below -
Code:
//COMPJCL6 JOB 1AD40G12,'COMPCOB-COMPLINK',NOTIFY=&SYSUID
//*************************************************************
//*COMPILAR Y LINKEDITAR
//*************************************************************
//STEP0 EXEC IGYWCL,PARM.COBOL='LIB,APOST,XREF,MAP,OFFSET'
//* -----------------------------------------------------------
//* JCL PARA COMPILAR PGM DE COBOL (SIN DB2 Y SIN CICS)
//* -----------------------------------------------------------
//* -----------------------------------------------------------
//COBOL.SYSLIB DD DISP=SHR,DSN=SANDY.COBOL.COPYLIB
//COBOL.SYSIN DD DISP=SHR,DSN=SANDY.COBOL.SRCLIB(COB002)
//LKED.SYSLMOD DD DISP=OLD,DSN=SANDY.COBOL.LOADLIB(COB002)
/*
//
Back to top
sergeyken Senior Member Joined: 29 Apr 2008Posts: 2145 Location: USA
sandeep kumar302 wrote:
Code:
........
//LKED.SYSIN DD
NAME COB002(R)
/*
Code:
........
//LKED EXEC PGM=HEWL,COND=(8,LT,COBOL),REGION=0M
.........
//SYSLIN DD DSNAME=&&LOADSET,DISP=(OLD,DELETE)
// DD DDNAME=SYSIN
The used form of this statement
//LKED.SYSIN DD
is nothing else but EMPTY DD STATEMENT, with NO PARAMETERS DEFINED. This bug is causing the error
INVALID RECFM FOR DDNAME SYSLIN CONCATENATION NUMBER 2
because within the JCL PROC this //SYSIN is concatenated under //SYSLIN, with number 2.
Back to top
sandeep kumar302 New User Joined: 14 Mar 2012Posts: 81 Location: India
Hi Sergeyken,
Yes, that's right. Thanks anyways.
Quote:
The used form of this statement
//LKED.SYSIN DD
is nothing else but EMPTY DD STATEMENT, with NO PARAMETERS DEFINED. This bug is causing the error
INVALID RECFM FOR DDNAME SYSLIN CONCATENATION NUMBER 2
because within the JCL PROC this //SYSIN is concatenated under //SYSLIN, with number 2.
and the issue is fixed.
Back to top
Please enable JavaScript!