"Frank Swarbrick" <[EMAIL PROTECTED]> wrote in message news:<[EMAIL PROTECTED]>... > My mention of being a new z/OS with IMS shop got a few surprised replies, so > I thought I'd give a bit more information... >
Frank, I liked reading your entire posting, it displays an open and unprejudiced view on z/OS. And I think it is a very interesting task you have there. Maybe I can help you on some of your questions: > > 1) Symbolic parameter support is better on VSE. In VSE you can set a parm > and then programatically query it. In z/OS the parms are resolved to their > actual values during JCL resolution (or whatever it's called) so it doesn't > even really exist at the time the program executes. Or something like > that. Having something similar in z/OS could also possibly solve my DATE card > issue. Specifically, something like this: > > // SET DATE=20081001 > //STEP01 EXEC PGM=PGM1 > //STEP02 EXEC PGM=PGM2 > // > > In VSE PGM1 and PGM2 can use a VSE macro to query the value of the DATE > symbolic parameter. And yes, I do realize that you can do something like the > following: > // SET DATE=20081001 > //STEP01 EXEC PGM=PGM1,PARM=&DATE > //STEP02 EXEC PGM=PGM2,PARM=&DATE > // > > The problem with this is that it will not work for IMS batch, since the program > that is executed is the IMS driver program, DFSRRC00. The parm date is not > passed to the Cobol program that the IMS program executes. z/OS has a thing called System Symbols. I think this is what you are looking for. Enter the 'D SYMBOLS' command on any console. They are defined at the system level, some static for the life of the IPL, others modifiable programmatically when needed. Their value is system wide, I am not sure what the scope of your // SET DATE= card in VSE is. They can be queried programmatically, so for the Cobol program this can be made working similar to the VSE environment. > > 2) z/OS's conditional processing (whether using the COND clause on the EXEC > statement or using IF/ELSE/ENDIF) can only check the results of jobs (return > code, did it abend, did it run at all?). You can't check the value of a > symbolic parameter (I'm guessing since, as I stated above, the symbolic parm > has already been resolved and doesn't really exist as a parm by then). Yes, you can: // SET SYMB=1 // IF &SYMB=1 THEN //S1 EXEC S1 // ELSE //S1 EXEC S2 // ENDIF > Anyway, I'll probably be posting many questions from this point forward. Do! We are here to help you. Kees. ********************************************************************** For information, services and offers, please visit our web site: http://www.klm.com. This e-mail and any attachment may contain confidential and privileged material intended for the addressee only. If you are not the addressee, you are notified that no part of the e-mail or any attachment may be disclosed, copied or distributed, and that any other action related to this e-mail or attachment is strictly prohibited, and may be unlawful. If you have received this e-mail by error, please notify the sender immediately by return e-mail, and delete this message. Koninklijke Luchtvaart Maatschappij NV (KLM), its subsidiaries and/or its employees shall not be liable for the incorrect or incomplete transmission of this e-mail or any attachments, nor responsible for any delay in receipt. Koninklijke Luchtvaart Maatschappij N.V. (also known as KLM Royal Dutch Airlines) is registered in Amstelveen, The Netherlands, with registered number 33014286 ********************************************************************** ---------------------------------------------------------------------- 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

