IBM Mainframe Forum Index
 
Log In
 
IBM Mainframe Forum Index Mainframe: Search IBM Mainframe Forum: FAQ Register
 

Error: Illegal data in numeric field When passing data


IBM Mainframe Forums -> JCL & VSAM
Post new topic   Reply to topic
View previous topic :: View next topic  
Author Message
Bindunat

New User


Joined: 10 Jun 2005
Posts: 5

PostPosted: Mon Jun 13, 2005 7:29 pm
Reply with quote

I've to pass a numeric data of size 3 to cobol program from jcl. In the jcl, the coding is
//step01 exec pgm=cblex,parm=100

In the cobol I declared the parm in linkage section as
pic 9(03) type.

But when the value is passed from jcl to cobol, the declared variable in linkage section shows an illegal data in numeric field.Can anyone help me with this.
Back to top
View user's profile Send private message
superk

Global Moderator


Joined: 26 Apr 2004
Posts: 4652
Location: Raleigh, NC, USA

PostPosted: Mon Jun 13, 2005 7:49 pm
Reply with quote

I'm not a COBOL programmer, but the basic process worked OK for me:
Code:


LINKAGE SECTION.                                                 
01  PARM.                                                       
    03  PARM-LENGTH            PIC S9(04) COMP SYNC.             
    03  THE-PARM.                                               
        05  PARM-1             PIC 9(03).                       
                                                                 
PROCEDURE DIVISION USING PARM.                                   
    DISPLAY THE-PARM.                                           
    MOVE ZEROS TO RETURN-CODE.                                   
    STOP RUN.                                                   
                                                                 

Code:

//STEP0001 EXEC PGM=PROG40,PARM=100                     
//STEPLIB  DD   DISP=SHR,DSN=&SYSUID..COBOL.LOAD         
//SYSOUT   DD   SYSOUT=*                               

Code:

...|....10...+....20...+....30...+....40..
100                                       
Back to top
View user's profile Send private message
MGIndaco

Active User


Joined: 10 Mar 2005
Posts: 432
Location: Milan, Italy

PostPosted: Mon Jun 13, 2005 7:49 pm
Reply with quote

The declaration of the parm must be as follows:
Code:

LINKAGE SECTION.
01  LK-PARM.                             
    02   LK-PARM-LENGTH     PIC 9(3).
    02   LK-PARM-DATI       PIC XXX.       
PROCEDURE DIVISION USING LK-PARM.         

Correct me if I'm wrong.
Back to top
View user's profile Send private message
Girishm

New User


Joined: 09 Mar 2005
Posts: 35
Location: Mysore

PostPosted: Thu Jun 16, 2005 2:35 pm
Reply with quote

Hi bindu,

Definately U missed out the parm-length field in the linkage section.
declare your linkage section as shown by superk and see your output how it looks.

___________
GM
Back to top
View user's profile Send private message
Bindunat

New User


Joined: 10 Jun 2005
Posts: 5

PostPosted: Thu Jun 16, 2005 2:54 pm
Reply with quote

Thanks for the help guys
Back to top
View user's profile Send private message
View previous topic :: :: View next topic  
Post new topic   Reply to topic View Bookmarks
All times are GMT + 6 Hours
Forum Index -> JCL & VSAM

 


Similar Topics
Topic Forum Replies
No new posts How to save SYSLOG as text data via P... All Other Mainframe Topics 4
No new posts Issues Converting From ZD to Signed N... DFSORT/ICETOOL 4
No new posts Store the data for fixed length COBOL Programming 1
No new posts Error to read log with rexx CLIST & REXX 11
No new posts Error when install DB2 DB2 2
Search our Forums:

Back to Top