View previous topic :: View next topic
|
Author |
Message |
kumaresh.M
New User
Joined: 17 Feb 2006 Posts: 64 Location: Bangalore
|
|
|
|
hi friends,
We are using parm parameter to pass values to the application program during runtime.But we have to send only 100 Bytes,
then how i would send the datas more than 100 bytes to application program during runtime to my application program using parm parameter
is there any other way is there? (except sysin ) |
|
Back to top |
|
|
priyesh.agrawal
Senior Member
Joined: 28 Mar 2005 Posts: 1448 Location: Chicago, IL
|
|
|
|
Quote: |
then how i would send the datas more than 100 bytes to application program during runtime to my application program using parm parameter |
Its not possible, PARM parameter can't carry more than 100 Bytes.
Regards,
Priyesh. |
|
Back to top |
|
|
nuthan
Active User
Joined: 26 Sep 2005 Posts: 146 Location: Bangalore
|
|
|
|
Hi,
Even though u gave more than 100 chars it will trucate the chars after 100th char and it will pass the first 100 chars only. |
|
Back to top |
|
|
sonu_winks
New User
Joined: 23 Nov 2005 Posts: 23
|
|
|
|
i think SYSIN can carry more values..even it has got some limitations...other way is to put u'r input in a file and read it .. |
|
Back to top |
|
|
papun123123
New User
Joined: 27 Mar 2006 Posts: 2
|
|
|
|
hi kumaresh.M,
you are write u can pass only 100 byte to the application program,
and you can pass upto 2GB through SYSIN.
Do u have any quiery plz let me know
|
|
Back to top |
|
|
superk
Global Moderator
Joined: 26 Apr 2004 Posts: 4652 Location: Raleigh, NC, USA
|
|
|
|
I don't think anyone here is thinking this through enough. I'm not buying that 100 bytes is the limit that a COBOL program can accept from a parameter via the LINKAGE SECTION. Yes, the limit of a JCL PARM= statement is 100 bytes - that's a documented fact. However, it seems to me that that's not the only way to pass parameter values to a program.
So, to test this all out, I whipped up a small program with a parm of 255-bytes. It compiled OK, so obviously that is an acceptable value. Next, I had to figure out a way to get around the 100-byte JCL limit, so I used the TSO CALL command instead:
Code: |
/* REXX */
parm = Copies("*",255)
"CALL 'MY.LOADLIB(MYPROG)' '"parm"'"
|
This process actually truncates the parm with the message:
"IKJ56003I PARM FIELD TRUNCATED TO 100 CHARACTERS"
so that wouldn't work either. So, I tried an ISPF SELECT PGM call:
Code: |
/* REXX */
"ISPEXEC LIBDEF ISPLLIB DATASET ID('MY.LOADLIB')"
parm = Copies("*",255)
"ISPEXEC SELECT PGM(MYPROG) PARM('"parm"')"
|
Guess what? This works just fine. So far, I've tested with a parm value up to 4K (4096 bytes) without a problem. |
|
Back to top |
|
|
|