View previous topic :: View next topic |
Author |
Message |
mcpja01 Beginner
Joined: 29 Aug 2005 Posts: 2 Topics: 1
|
Posted: Mon Aug 29, 2005 4:46 pm Post subject: ispf vget service during TSO logon |
|
|
Hi,
I have been trying to use ISPF variables for making allocation determinations during TSO logon but can't seem to get to the variable pool during logon.
In my TSO logon clist I attempt to retrieve certain (preveiously set) ISPF variables with an 'ISPEXEC VGET' command to determine what datasets to allocate. This gives users many options during logon and reduces the total number of datasets that need to be coded in the logon proc.
Can any one confirm if ISPF services are available during the TSO logon? Or recommend a potential workaround.
Thanks in advance. _________________ Jim McPhillips |
|
Back to top |
|
|
Phantom Data Mgmt Moderator
Joined: 07 Jan 2003 Posts: 1056 Topics: 91 Location: The Blue Planet
|
Posted: Tue Aug 30, 2005 12:28 am Post subject: |
|
|
mcpja01,
ISPF services will work only when ISPF is active - which happens only after logon. But when you issue ISPF in your logon script, it will go directly to the ISPF main panel and any command written after ISPF will work only during LOGOFF.
In you case you need to invoke ISPSTART - which is another way of invoking ISPF. Try this.
Define your ISPF services in the pgm-xxxx and invoke that pgm using ISPSTART.
Hope this solves your problem.
Thanks,
Phantom |
|
Back to top |
|
|
mcpja01 Beginner
Joined: 29 Aug 2005 Posts: 2 Topics: 1
|
Posted: Tue Aug 30, 2005 12:35 pm Post subject: |
|
|
That's along the lines that I was thinking, ISPSTART CMD() and have a seperate rexx exec that issues the vget and then pass the variables back to the logon clist.
Can't get it to work though.
As I understand it.
ISPSTART should create the ISPF environment to execute the command or program and then return to the caller when it's completed.
Possible causes for not being able to retrieve variables:
isptlib allocation? ispstart with out a newappl specified? _________________ Jim McPhillips |
|
Back to top |
|
|
Phantom Data Mgmt Moderator
Joined: 07 Jan 2003 Posts: 1056 Topics: 91 Location: The Blue Planet
|
Posted: Wed Aug 31, 2005 2:23 am Post subject: |
|
|
mcpja01,
I had this problem with VGET command sometime back. It was because the VPUT command saved the information in ISR profile pool and so VGET was failing if I invoke my panel from a different profile.
The VGET will work fine if I invoke my program from a EDIT/VIEW screen (ISR profile). The same code will fail when I invoke it from SDSF screen / Fileaid / Endevor screen since they use different profile pools.
I did the following to get around this. Invoke your program using ISPSTART and re-start the same program with NEWAPPL(ISR).
Code: |
Program Name: mypgm
/* REXX */
"ISPEXEC VGET ZAPPLID PROFILE SHARED"
CMD = '%mypgm'
IF ZAPPLID <> 'ISR' THEN
DO
"ISPEXEC SELECT CMD("CMD") NEWAPPL(ISR)"
EXIT 0
END
"ISPEXEC VGET (data) SHARED PROFILE"
|
Hope this helps,
Thanks,
Phantom |
|
Back to top |
|
|
semigeezer Supermod
Joined: 03 Jan 2003 Posts: 1014 Topics: 13 Location: Atlantis
|
Posted: Wed Aug 31, 2005 8:12 am Post subject: |
|
|
Hi Jim. The clist running under ISPF will have a different variable 'pool' than the main program. You'll probably have to write the data to a temp (prefereably VIO) file and read them back in in the calling CLIST. Maybe something with GLOBAL variables will work, but I doubt it. |
|
Back to top |
|
|
|
|