View previous topic :: View next topic
|
Author |
Message |
Raghur
New User
Joined: 18 Mar 2016 Posts: 9 Location: India
|
|
|
|
Hi All,
I am trying to develop a REXX tool which will extract all the programs used in a set of jobs (around 1500 jobs).
I have tried the standard coding procedure by considering the various scenarios, but the execution is taking a very long time which is literally hanging out my session.
My shop has the DCMS/XREF analysis tool. The DCMS/XREF tool is very fast in extracting the results but can be used only on a single component at a time.
I was trying to get the source code of this tool, so that I can iterate it on my job list and get the results, but failed to do so.
The XREF tool in my shop is as below:
ADDRESS ISPEXEC "SELECT CMD(%XREFIN)"
ADDRESS ISPEXEC "VGET (ISPLLIB ISPMLIB ISPPLIB ISPSLIB ISPTLIB)"
ADDRESS ISPEXEC "SELECT PGM(GSXR0108) NEWAPPL(XREF) PASSLIB"
ADDRESS ISPEXEC "SELECT CMD(%XREFOUT)"
Now, I want to know where this GSXR0108 resides?
Any advice on how to find this is highly appreciated.
Thanks in Advance!! |
|
Back to top |
|
|
enrico-sorichetti
Superior Member
Joined: 14 Mar 2007 Posts: 10873 Location: italy
|
|
|
|
Code: |
ADDRESS ISPEXEC "SELECT PGM(GSXR0108) NEWAPPL(XREF) PASSLIB" |
since GSXR0108 is a program I doubt that You will be able to look at the source
anyway try ...
split the screen
type
type
it should tell in which library GSXR0108 resides
( if the library is still allocated )
or ask Your support |
|
Back to top |
|
|
Raghur
New User
Joined: 18 Mar 2016 Posts: 9 Location: India
|
|
|
|
Hi enrico,
I guess my shop does not have isrddn.
When I type TSO ISRDDN on my command line, it says "COMMAND ISRDDN NOT FOUND".
Do you have any other alternative??
Thanks in Advance!! |
|
Back to top |
|
|
Nic Clouston
Global Moderator
Joined: 10 May 2007 Posts: 2455 Location: Hampshire, UK
|
|
|
|
ISRDDN is a basic part of TSO/ISPF. You must have typed it wrongly or it is in a command list that is not available to you.. Check with your support.
Rexx will be slow as it is interpreted - but not that slow unless you have coded it wrongly. The program you are seeking is compiled/assembled. If it is owned by your company then the source will, possibly, be available. Again, check with your support. If it is from a thord paty then it will probablyh be copyrighted and you will not have the source and it will be proprietary and any attempt to reverse engineer the load module would be illegal.
Finally, why not write your exec to simply repeat your xref any number of times? |
|
Back to top |
|
|
Terry Heinze
JCL Moderator
Joined: 14 Jul 2008 Posts: 1249 Location: Richfield, MN, USA
|
|
|
|
You might try TSO ISRFIND but that might result in the same error msg. |
|
Back to top |
|
|
Raghur
New User
Joined: 18 Mar 2016 Posts: 9 Location: India
|
|
|
|
Hi Nic,
I have TSO ISRFIND working for me, but not TSO ISRDDN (no typing mistake there, but I guess it is available in a different command list.)
When I have checked for the source using TSO ISRFIND, it threw me a number of datasets, but none of them had the source. Those libraries only had members with the string "GSXR0108" in them.
Regarding the third party ownership, yes this is an IBM tool, so I think it is copyrighted.
And, you have guessed it right, I did think of reverse engineering initially, but then backed off keeping the copyright in mind.
Finally, do you have any references where I can code an exec to use xref multiple times, cause I have never seen that before.
The XREF tool is a pretty complicated tool though.
The source code generates PANEL1, which prompts the user for an input and then further displays another panel PANEL2 asking for the specifics and then displays the results in another panel PANEL3.
I only need the job portion in this tool which I had provided in the attachments. I will provide the job name as the input and need the program names as the output.
All this happens in a single source (it might be calling other sources from here.) So, do you think what you are saying can still be done?
I will be really glad if it can be done!!
Thanks in Advance!! |
|
Back to top |
|
|
Nic Clouston
Global Moderator
Joined: 10 May 2007 Posts: 2455 Location: Hampshire, UK
|
|
|
|
Please do not post attachments - a simple cut'n'paste (using the code tags) would be sufficient, is easier, takes less screen real estate etc etc |
|
Back to top |
|
|
Raghur
New User
Joined: 18 Mar 2016 Posts: 9 Location: India
|
|
|
|
I am really sorry for that.... I just wanted to make sure that my question is explained in detail...
So, any suggestions??? |
|
Back to top |
|
|
daveporcelan
Active Member
Joined: 01 Dec 2006 Posts: 792 Location: Pennsylvania
|
|
|
|
You could check for the BATCH option offered by the utility.
There may be an option from the Main menu.
Once you get a Job submitted, you have JCL you can modify to query on multiple modules.
When all else fails, read the manual. |
|
Back to top |
|
|
Raghur
New User
Joined: 18 Mar 2016 Posts: 9 Location: India
|
|
|
|
Is there a way where I can provide inputs to panel without entering keys from the keyboard ??
For example, if I execute the xref tool and the Panel 1 is displayed.
Can I provide input 'PBST400D' as shown in the first attachment through Rexx and direct it to Panel 2 instead of entering the value through the keyboard and then pressing enter.. ?
Thanks in advance!! |
|
Back to top |
|
|
daveporcelan
Active Member
Joined: 01 Dec 2006 Posts: 792 Location: Pennsylvania
|
|
|
|
Quote: |
Is there a way where I can provide inputs to panel without entering keys from the keyboard ??
|
Perhaps, but I am not sure where that will get you (not very far).
I think as though you already have a design and a plan.
Based on this statement of yours:
Quote: |
I am trying to develop a REXX tool which will extract all the programs used in a set of jobs (around 1500 jobs).
|
I really believe you should re-asses your design, and use the batch approach. With this, you can supply your Job list to your JCL, and get a report in the output (either sysout or a dataset).
I have not worked with your particular product, but have done something similar with another. |
|
Back to top |
|
|
Raghur
New User
Joined: 18 Mar 2016 Posts: 9 Location: India
|
|
|
|
Hi Dave,
The only reason that I am not very inclined to the batch processing option is that
1. The report generated through the batch processing is very huge (for 1500 jobs and I need to get all the scenarios covered as there are also legacy codes written in 1970's which can get pretty messy sometimes) and processing it to get the required results will take a lot of time.
2. On the other hand, the xref tool in my shop is really fast (in the order of micro seconds and is 100% accurate). If I can somehow get the inputs into the panels then there is a healthy chance that I can iterate the process and get my thing done.
Any suggestions in that direction will help me a lot... |
|
Back to top |
|
|
daveporcelan
Active Member
Joined: 01 Dec 2006 Posts: 792 Location: Pennsylvania
|
|
|
|
I am suggesting using YOUR XREF tool in BATCH mode.
You should be able to get the results written to a dataset.
You can pass that through your SORT utility and create any output you need.
In order to accomplish it the way you desire, you need to trace though each program and panel to see what data is passed and how, and what programs and panels are called.
I am done giving suggestions.
The cover of the book says to me: I want to do it one way and one way only. I will only accept suggestion for that way. |
|
Back to top |
|
|
Pedro
Global Moderator
Joined: 01 Sep 2006 Posts: 2547 Location: Silicon Valley
|
|
|
|
Quote: |
extract all the programs used in a set of job |
I think you should call SUPERC to search for 'PGM='. |
|
Back to top |
|
|
Raghur
New User
Joined: 18 Mar 2016 Posts: 9 Location: India
|
|
|
|
Hi Pedro,
It is not that straight forward. There are ims programs too where the load is used as a parameter to a proc for executing it and many other such scenarios.
If anybody can suggest me how to pass input data from one screen to an ispf panel's input fields displayed in another screen, it would be helpful. It will also help me reuse the existing tool.
Thanks in advance!!! |
|
Back to top |
|
|
PeterHolland
Global Moderator
Joined: 27 Oct 2009 Posts: 2481 Location: Netherlands, Amstelveen
|
|
|
|
I understand DCMS/XREF is monitoring a system and putting all the data into a database. So that's why queries are very fast. I also understand there is a batch utility to create reports from that database.
I suggest you consult your manuals and/or the DCMS/XREF support people. |
|
Back to top |
|
|
Pedro
Global Moderator
Joined: 01 Sep 2006 Posts: 2547 Location: Silicon Valley
|
|
|
|
Quote: |
how to pass input data |
It seems like you know what your search arguments are. My suggestion is to use SUPERC to search for them. Call SUPERC multiple times if you need to.
I cannot provide advice for DCMS/XREF as I am not familiar with it. |
|
Back to top |
|
|
daveporcelan
Active Member
Joined: 01 Dec 2006 Posts: 792 Location: Pennsylvania
|
|
|
|
Quote: |
I also understand there is a batch utility to create reports from that database. |
Oh Peter, that is not what the OP has asked for. |
|
Back to top |
|
|
|