Mine is a "incomplete" bit of Natural, and I haven't started the CA-7 #card part yet, but in concept, I don't think it'd be that hard to determine the possible schids in one pass and then resolve each one in another pass.
FYI, I do external procs with a recursive call, plan to do inline via a temp pds before the recursive call. Currently, my long term use for this is to identify and eliminate DYL260. I'm still think on how to interface with Endevor :) -----Original Message----- From: IBM Mainframe Discussion List [mailto:[EMAIL PROTECTED] On Behalf Of Joel C. Ewing Sent: Sunday, April 29, 2007 6:48 PM To: [email protected] Subject: Re: parsing JCL with CA-7 "schedule overrides" Some JCL checkers resolve this by requiring that the user invoking the utility specify what schedule ID should be used in evaluating the JCL. To thoroughly validate such JCL, it has to be validated against each ID under which it will be run. McKown, John wrote: > I'm doing weird things again. I've written a JCL parser (work still in > progress) in Perl (yes, I'm quite, quite insane.). It works rather well. > The only "gotcha" is that we use CA-7 and the "schedule override" > capability (#JI, #JO, #JEND / #XI, #XO, #XEND). This is a kind of > "if/then/else" logic in the JCL as to which statements are written to > the INTRDR. As an example: > > //JOBNAME JOB ACCT,PGMR, > #JI,ID=1 > // CLASS=P,MSGCLASS=N > #JO,ID=1 > // CLASS=Q,MSGCLASS=X > #JEND > > This submits the job with CLASS=P,MSGCLASS=N if the schedule id is 1, > but with CLASS=Q,MSGCLASS=X if it is not 1. I'm having a real difficult > time figuring out what to do if this sort of thing is used. Now, at our > shop, this has only caused 8 jobs to have problems out of 7,720 that I > have scanned. But I like to be complete. > > Any ideas as to what I should do in this case? It could become quite > complicated. The simpliest thing is to simply say: "You do this and you > live with the fact that I cannot parse it." But I don't like that, at > all. The difficult thing would be to try to create every possible > combination of statements possible, then parse them each individually. I > have not thought about how to do this, but it "scares" me. > > I think that I can use ignore the other CA-7 "control functions" which > are in line (such as #SCC). > > So far, I've only done the "inline" JCL scanning. I haven't yet tried to > expand PROCs or INCLUDE members. > > -- ---------------------------------------------------------------------- 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

