Page 1 of 1

length of Parm Parameter

PostPosted: Thu Apr 28, 2011 7:03 am
by electrox
The maximum limit for parm parameter is 100 characters ,when input length exceeds waht shall be done , I'm asked to use parm parameter to pass input?

Re: Parm Parameter

PostPosted: Thu Apr 28, 2011 7:16 am
by MrSpock
A limit is a limit. Come up with another plan.

Re: Parm Parameter

PostPosted: Thu Apr 28, 2011 11:54 am
by steve-myers
As Mr Spock says, a limit is a limit; you need another plan. I can think of several options. All have been used at one time or another.
  • Abbreviations. This often makes the option text more or less unintelligible, but ... You have to alter the program to use the abbreviations.
  • Provide an options dataset. The downside here is you can't use JCL symbols to form the option text, and you have to alter the program to use the dataset.

Re: Parm Parameter

PostPosted: Thu Apr 28, 2011 12:29 pm
by BillyBoyo
If you have some options which are basically "static" you can combine approaches. Put the static options on a dataset, keep the varying options on the PARM (abbreviating as necessary, as Steve suggested). The extra code to work with both is minimal, and it would allow any paramaterisation of your paramameters to continue through the JCL.

As Mr Spock and Steve have indicated, you have absolutely zero chance of somehow finding a method to go beyond 100 on the parm itself.

Re: Parm Parameter

PostPosted: Fri Apr 29, 2011 4:52 pm
by electrox
Thanks.. One of my trainee said some kind of Arith Code can be used along with Parm parameter when input limit exceeds than 100.He said only working people handle with this method.

Re: Parm Parameter

PostPosted: Fri Apr 29, 2011 5:16 pm
by BillyBoyo
So, tell him to put-up-or-shut-up. If you find anything interesting, update us.

Re: Parm Parameter

PostPosted: Fri Apr 29, 2011 5:22 pm
by enrico-sorichetti
Thanks.. One of my trainee said some kind of Arith Code can be used along with Parm parameter when input limit exceeds than 100.He said only working people handle with this method.


ok for the language barrier, but too much is too much ,
would You care to translate to an intelligible sentence!

anyway trying to submit a job/jcl with a parm longer than 100 chars will result in a jcl error

works
000001 //ENRICO1  JOB NOTIFY=&SYSUID,
000002 //             REGION=0M,
000003 //             MSGLEVEL=(1,1),CLASS=A,MSGCLASS=X
000004 //*
000005 //IEF     EXEC PGM=IEFBR14,
=COLS> ----+----1----+----2----+----3----+----4----+----5----+----6----+----7--
000006 // PARM='12345678901234567890123456789012345678901234567890123456789012
000007 //             34567890123456789012345678901234567890'


does not ( jcl error)
000001 //ENRICO1  JOB NOTIFY=&SYSUID,
000002 //             REGION=0M,
000003 //             MSGLEVEL=(1,1),CLASS=A,MSGCLASS=X
000004 //*
000005 //IEF     EXEC PGM=IEFBR14,
=COLS> ----+----1----+----2----+----3----+----4----+----5----+----6----+----7--
000006 // PARM='12345678901234567890123456789012345678901234567890123456789012
000007 //             345678901234567890123456789012345678901'


look out for the long parm continuation rule ...
fill the first line up to column 71
start the second line at column 16

Re: Parm Parameter

PostPosted: Fri Apr 29, 2011 5:38 pm
by enrico-sorichetti
follow on...
I forgot to post ...
-  29 APR 2011 JOB EXECUTION DATE
-            7 CARDS READ
-           24 SYSOUT PRINT RECORDS
-            0 SYSOUT PUNCH RECORDS
-            1 SYSOUT SPOOL KBYTES
-         0.00 MINUTES EXECUTION TIME
1 //ENRICO1  JOB NOTIFY=&SYSUID,
//             REGION=0M,
//             MSGLEVEL=(1,1),CLASS=A,MSGCLASS=X
//*
IEFC653I SUBSTITUTION JCL - NOTIFY=ENRICO,REGION=0M,MSGLEVEL=(1,1),CL
2 //IEF     EXEC PGM=IEFBR14,
// PARM='123456789012345678901234567890123456789012345678901234567890
//             345678901234567890123456789012345678901'
STMT NO. MESSAGE
-
2 IEF642I EXCESSIVE PARAMETER LENGTH IN THE PARM FIELD