View previous topic :: View next topic |
Author |
Message |
serobinson Beginner
Joined: 22 Sep 2006 Posts: 11 Topics: 5
|
Posted: Wed Nov 22, 2006 10:51 pm Post subject: Automate research |
|
|
Basically, I want to search every member in a PDS. Within each member I want to identify DD statements that catalog a dataset with a specified length.
When that criteria is is met I want to write a record to an output file. I want the output grouped first by member name, then by STEP name, then by DD name. Also, I want to identify the SYSIN member when an EXEC statement executes a utility. I want this job to work with any piece of JCL. This is how I see the output:
Code: |
MCAACDL1
STEP001 PGM=ABC123
FILEA ABC.PROD.DATA.SET LRECL=1234
FILEB ABC.PROD.DATA.SET2 LRECL=3456
FILEC ABC.PROD.DATA.SET3 LRECL=4567
STEP002 PGM=UTILITY
SORTOUT1 ABC.PROD.DATA.SET4 LRECL=1234
SORTOUT2 ABC.PROD.DATA.SET5 LRECL=3456
SORTOUT3 ABC.PROD.DATA.SET6 LRECL=4567
SYSIN ABC.PROD.SYSIN(SORT07)
|
Is it possible to code a program or use a utility to do this? |
|
Back to top |
|
|
superk Advanced
Joined: 19 Dec 2002 Posts: 684 Topics: 5
|
Posted: Wed Nov 22, 2006 11:26 pm Post subject: |
|
|
Yes, it's possible. I'm doubtful that it would be easy, though.
Last edited by superk on Thu Nov 23, 2006 12:21 am; edited 1 time in total |
|
Back to top |
|
|
semigeezer Supermod
Joined: 03 Jan 2003 Posts: 1014 Topics: 13 Location: Atlantis
|
Posted: Wed Nov 22, 2006 11:40 pm Post subject: |
|
|
It is certainly possible to write this (it is only code ) and it would be easy, if a bit tedious, to do for inline JCL. However, if you are calling PROCs and have to resolve step names within procs, then it will become much more complex.
The easiest ways that come to mind are ISPF services (LMMLIST for names, edit macros for searches, etc) or straight Rexx (DSLIST for names, EXECIO for searches). Then you'd use the DSLIST command or similar to get the particular info.
I suspect that if you have one of those products that does JCL scanning, it might produce reports you can use, but I've never seen one of those products so I can't say for sure. |
|
Back to top |
|
|
serobinson Beginner
Joined: 22 Sep 2006 Posts: 11 Topics: 5
|
Posted: Thu Nov 23, 2006 2:09 am Post subject: |
|
|
hmm... I'm new to Rexx. Does any one have a REXX script/program that has some of the logic I am looking for? I'm not really picky about the format of the output. This may be easier:
Code: |
MCAACD81 STEP001 ABC123 FILEA ABC.PROD.DATA.SET1 1234
MCAACD81 STEP001 ABC123 FILEB ABC.PROD.DATA.SET2 3456
MCAACD81 STEP001 ABC123 FILEC ABC.PROD.DATA.SET3 4567
MCAACD81 STEP002 UTILITY SORTOUT1 ABC.PROD.DATA.SET4 1234
MCAACD81 STEP002 UTILITY SORTOUT2 ACB.PROD.DATA.SET5 3456
MCAACD81 STEP002 UTILITY SORTOUT3 ABC.PROD.DATA.SET6 4567
MCAACD81 STEP002 UTILITY SYSIN ABC.SYSIN(SORT07)
|
|
|
Back to top |
|
|
ofer71 Intermediate
Joined: 12 Feb 2003 Posts: 358 Topics: 4 Location: Israel
|
Posted: Thu Nov 23, 2006 4:56 am Post subject: |
|
|
JCLCheck provides a powerfull REXX interface. You can invoke it as a user-exit when scanning the JCL. During invocation, JCLCheck creates REXX variables with valuable data like: PROCNAME, STEPNAME, DSNAME, DISP etc.
To invoke this user exit, you simply run JCLCheck with the STDREXX parameter.
O.
________
vaporizers |
|
Back to top |
|
|
|
|