The following
/*REXX*/
ADDRESS ISPEXEC
ISR = "NEWAPPL(ISR) SUSPEND"
SELP = "SELECT PGM(ISPSTRT) "
SELP "PARM(SCRNAME ENDEVOR P;U.10.9;1;E;SWAP) " ISR
SELP "PARM(SCRNAME NDVRQWIK P;U;10;9;1;E;1;U;K;SWAP) " ISR
SELP "PARM(SCRNAME SDSF P;U.10.4;SWAP;SCRNAME ISPFPOP P) " ISR
EXIT 0
Comes fairly close to what I'm after, if executed after ISPF is up.
SWAP LIST gives
Active ISPF Logical Sessions
. Start a new screen
. Start a new application
Application Name
_____________________________________________
ID Name Panelid Applid Session Type
. 1* ISR@PRIM ISR 3270
. 2 ENDEVOR C1SM1100 CTLI 3270
. 3 NDVRQWIK NDVRT101 CTLI 3270
. 4- SDSF ISFPCU41 ISF 3270
As you can see, the final "SCRNAME ISPFPOP P" command did not work.
ALso when I put the above REXX into BC.NDVR.RXJ67.ISPREXX(SOX506)
which is in my SYSEXEC concatination and then put
/*REXX*/
IF SYSVAR('SYSISPF') = 'NOT ACTIVE' THEN DO
QUEUE "ISPF CMD(%SOX506)"
QUEUE
EXIT 0
END
into BC.NDVR.RXJ67.ISPREXX(SOX505)
and Command ===> exec 'BC.NDVR.RXJ67.ISPREXX(SOX505)'
on my TSO/E LOGON panel I get
*** ISPF Main task abend ***
EXEC ENDED DUE TO ERROR+
System abend code 878, reason code 00000016.
Abend in host command SELECT or address environment routine ISPEXEC.
System abend code 878, reason code 00000016.
Abend in host command SELECT or address environment routine ISPEXEC.
Any suggestions?
Remember split screens require a very large region to support it.
What version of z/OS are you running?
Lizette
So you are getting an S878-10
You might also look in SYSLOG at the time of the failure. There might be additional messages there.
However, REGION Size for the TSO ID is where you need to start.
Lizette
Can easily get 8 splits if I run the REXX after getting the ISPF POP.
Even with APS in each one. The only thing that fails in an AFTER POP
execution is the final SCRNAME.
Am trying to make it a TSO logon screen to simplify life for a customer or two.
Here's a slightly approach that works for me.
I hope I understand what you're seeking.
If you want to start-up ISPF and have 4 different sessions in split
screens automatically created on startup, this should do it.
1. Create a Rexx program that assigns your for sessions.
2. Modify your ISPF primary panel to assign a selection to the program
in step 1.
3 Start PDF with a parm invoking the selection in step 2.
(Proper credit for starting a program like this in step 3 goes to
Michelle Rutherford, if I recall correctly)
For step 1. I do this using the handly old technique of passing a
command to the DISPLAY panel command.
-------------------------------------------
/* Rexx */
cmd='START 2;START 3.4;START S.DA;START 11'
Address 'ISPEXEC'
'DISPLAY PANEL (ISRTSO) COMMAND('"cmd"') RETBUFFR('bufname')
RETLGTH('lngname')'
-------------------------------------------
Note that I just use the ISPF Start command. You should be able to do
the same.
For step 2. I add the # sign to the &ZSEL list as a selection invoking
program above.
#,'CMD(SPFSTART)'
Then step 3 merely requires my logon command to issue:
" PDF #"
And Bob's your uncle.
Dave
The contents of this e-mail are intended for the named addressee only. It contains information that may be confidential. Unless you are the named addressee or an authorized designee, you may not copy or use it, or disclose it to anyone else. If you received it in error please notify us immediately and then destroy it.