View previous topic :: View next topic
|
Author |
Message |
SANTHOSH TURAGA
New User
Joined: 17 Aug 2012 Posts: 2 Location: USA
|
|
|
|
Hello All,
This is my first post in this forum. My requirement is to change ISRUDLP panel to include last used 10 datasets DSAPET01 thru DSAPET10 right above the DSN Groupbox of ISRUDLP Panel.
First to build my own knowledge on reading and displaying the ISPF tables, I created my own panel to display the table succesfully. I was able to accomplish by creating CLIST Panel and with below REXX code.
Now my goal is to integrate this to ISRUDLP ISPF panel.When I tried to change the panel I am getting Panel errors on the screen.
I have read it in manual that this can be accomplished using dynamic areas in ISPF panels,
But since I am new, any help would be appreciated.
Below is my Rexx code:
ADDRESS ISPExec "TBTOP ISRPLIST"
ADDRESS ISPExec "TBSKIP ISRPLIST NUMBER(+1) POSITION(TBCRP)"
ADDRESS ISPExec "TBGET ISRPLIST POSITION(TBCRP)"
ADDRESS ISPExec "TBDISPL ISRPLIST PANEL(MY PANEL)"
ADDRESS ISPExec "VGET (ZSCREENI ZSCREENC)"
cursor = ZSCREENC + 1
If substr(ZSCREENI,CURSOR,1) = ' ' then
say 'Invalid cursor position'
else
do until substr(ZSCREENI,cursor,1) = ' ' | cursor = 1
cursor = cursor - 1
end
cursor = cursor + 1
fld_len = pos(' ',ZSCREENI,cursor) - cursor
dsn = substr(ZSCREENI,cursor,fld_len)
ADDRESS TSO "dslist "dsn""
Below is my invoking method of ISRUDLP.
"ispexec libdef ispplib dataset id('xxxxxx.ispplib')"
"ispexec display panel(ISRUDLP)" |
|
Back to top |
|
|
dick scherrer
Moderator Emeritus
Joined: 23 Nov 2006 Posts: 19244 Location: Inside the Matrix
|
|
|
|
Hello and welcome to the forum,
Suggest you continue to use your "custom panel". Many (most) organizations do not want people changing any of the system standard components. . .
Some have even terminated people for doing this sort of thing without written permission. |
|
Back to top |
|
|
SANTHOSH TURAGA
New User
Joined: 17 Aug 2012 Posts: 2 Location: USA
|
|
|
|
Hi Dick,
Thanks for your reply. I am changing this panel only in my profile. I would appreciate any help regarding this. |
|
Back to top |
|
|
dick scherrer
Moderator Emeritus
Joined: 23 Nov 2006 Posts: 19244 Location: Inside the Matrix
|
|
|
|
Hello,
I believe you will find that these are ISPF panels rather than CLIST panels.
What have you tried for the new effort? What happened? Where are you stuck? If an error is raised, posting the output from a trace would be useful. |
|
Back to top |
|
|
Pedro
Global Moderator
Joined: 01 Sep 2006 Posts: 2547 Location: Silicon Valley
|
|
|
|
Quote: |
I am getting Panel errors on the screen. |
What are the details of your error?
Quote: |
My requirement is to |
Your requirement was not entirely clear. I assume that, in addition to displaying ten datasets, that you still want DSLIST processing to work.
Code: |
"ispexec display panel(ISRUDLP)" |
Use ISPF option 3.9 and look at the command table for application ID of ISP. It will show you have to invoke DSLIST correctly. But once you invoke it, you loose much of your control over what is displayed in the panel.
Perhaps display the panel as you do, then use the LMDDISP service with the PANEL() parameter instead. |
|
Back to top |
|
|
Josh Keller
New User
Joined: 08 Oct 2007 Posts: 36 Location: Columbia, SC
|
|
|
|
As Dick said, continue to use your custom panel. Then you could call DSLIST directly when you want to use it from your panel. Much easier than trying to trick ISPF into using your modified panel. At least that's what I would do.
Code: |
DSLEVEL = "THIS.IS.MY.DSN"
"ISPEXEC SELECT PGM(ISRDSLST) PARM(DSL '"DSLEVEL"') ",
"SUSPEND SCRNAME(DSLIST)" |
|
|
Back to top |
|
|
|