You won't find any description of LE environmental parameters in the
semantics of the "CALL" statement because it has nothing to do with the
CALL statement -- interpretation of the PARMS field is totally up to the called program. If the called program was implemented via a
high-level language that uses the LE runtime libraries, then it is the
LE runtime that enforces this convention, and it should be documented in the Programmers Guide for those languages. Be aware that in some cases (COBOL), it is an installation LE customization option that determines whether the LE environmental parameters come before or after the "/".

As you are discovering, the CLIST language is a notoriously bad language for dealing with variables with values containing special characters, most of which have special meaning as delimiters or operators in the CLIST language. You have to use a liberal sprinkling of the "&STR" function all over the place, both when setting and using such variables, and if you allow such values to be based on user input, resolving all "bugs" of this nature is practically impossible using CLISTs. I would suggest you consider learning REXX. I have refused to do any new development using CLISTs for over ten years and never regretted it.

Terry Schwarz wrote:
[EMAIL PROTECTED] (Don Poitras) wrote in
news:[EMAIL PROTECTED]:
Ok ... that worked ... thank you.

I looked around a small bit and could find
 CALL dsn(pgm) 'xxxxxxxxx' supports anything JCL PARMS supports

but in turn couldn't find anything that said anything likes PARMS can be a string and if it contains a slash the left portion is for environment conditions such as ENVAR() and the right portion is sent to the program as argument values. I suppose it is buried somewhere in some obscure section of some obscure document.

I actually have (hopefully) a small follow up question that is purely about making the clist pretty such as CALL dsn(pgm) '&MYPARMS' (vs CALL dsn(pgm) '{actualstring}/'). When I try to do SET MYPARMS = XXX=YYY the clist parser complains about illegal operators. Basically SET MYPARMS = = is illegal, so how to you embed equal signs and slash (which I'd assume I'd eventually hit).

 that explicitly said anything like
Pretty much the same syntax in TSO.

tso call ibm(ibmenv) 'envar("AA=howdy")/'

A program that did a getenv("AA") would return "howdy". If the program
is written in COBOL, put the slash at the beginning.





--
Joel C. Ewing, Fort Smith, AR        [EMAIL PROTECTED]

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html

Reply via email to