On Thu, 7 Nov 2013 09:41:40 -0800, Richard Pinion wrote:

>And to throw another twist to this thread, some people say the LRECL and RECFM 
>should not be coded in the JCL.  That way when a change is made to the program 
>source, that affects LRECL and/or RECFM, the corresponding JCL doesn't have to 
>be updated.  What are some opinions about that methodology?
>
If by changing the program source you mean coding LRECL and RECFM in the
DCB, the JCL needn't be changed.  Values coded in the DCB quietly override
any coded in JCL.  Shouldn't a warning of such disagreement be issued?
I believe so, but via what channel?


>-----Original Message-----
>From: Ze'ev Atlas
>Sent: Thu, Nov 7, 2013 8:39 am
>
>Let me add another complains about JCL, it allows changing source code meaning
>n run time and sometimes this is hairy:
>//XXX DD DSN=....
>/  DCB=(LRECL=80,&R
>/...
>The above is legit although I would fire anybody who doed it.  R could be
>esolved to:
>/ EXEC YYY,R='BLKSIZE=8000)'
>or it could be resolved to an early example of cose injection of your choice
>
I applaud languages such as Rexx in which lexical metacharacters are
never recognized in text introduced by variable substitution.  Rexx
provides a workaround in the ever-so-controversial INTERPRET instruction.

My first mentor in JCL had a habit disabling options by defaulting
a PROC parameter to ' ' and enabling them by substituting ''.
E.g.:

FOO  PROC  C=' '  (set C='' to bypass step!)
S    EXEC  PGM=WOMBAT&C,COND=(0,LE)
     PEND

(Now you know how I got to be the way I am.)

-- gil

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN

Reply via email to