Don’t wall yourself in, use screens
Once upon a time ISPF could manage just a couple of split screens, and we were fine with that. Then after a while we could do 8 logical screens, and now we can technically go as high as 32, though the default limit is still 8, talk to your Sysprog if you NEED more (as it may impact region size).
But with all that potential few people use more than two, citing problems from “getting lost”, “it takes up a precious line of screen space” or even “it takes too long to log off”.
Well the good news is, all of those problems are things of the past, well at least once you are as far as z/OS 2.1, when the last few pieces in the puzzle slotted in place.
So let’s look at a few of those problems.
If you open screens as you need them then yes, chances are you can get lost remembering what is on each screen. To a limited degree help is on hand with the SWAP LIST command. Which gives you a pop-up window showing you all the active screens. Assuming your PF9 key is set to the LIST command, then an easy way to bring up the list is type LIST on the command line and press PF9. You also might consider setting PF21 to SWAP LIST, then SHIFT+PF9 gives you this list.
It looks something like this -
The * next to the screen ID tells you which is the current active screen, and the - tells you which screen you will swap to when you press PF9 from the current active screen. The Name column may or may not have something useful in it, and the Panelid column might give you some clues if you recognise the panel names.
So assuming that’s enough to let you know what is where, you can select the screen from here by entering S next to the panelid of your choice, or, once you become familiar with what is on each logical screen, you can swap directly from one screen to another by entering the screen number on the command line before pressing PF9. So 2+PF9 would take you to panel ISFPCU41 (SDSF).
Of course it would be much nicer if those names meant something, well you CAN name each screen yourself. Go to each screen and type SCRNAME accompanied by a name, and it will appear against that screen in the list e.g. SCRNAME SUBMIT will name that screen SUBMIT. Then your list can look something like this –
Of course now you can also use the names to get around, so DATA+PF9 will take me to screen 4 directly. Note that some panels like EDIT and DSLIST automatically set the screen name, which will override your screen names if you visit them after you have set the name. To make your name permanent use the PERM argument e.g. SCRNAME SUBMIT PERM.
Now you might have thought using SCRNAME against every screen, and in fact setting up each logical screen in an order you are familiar with, might take a little time each time you logon.
From z/OS 2.1 think again. The new ZSTART profile variable is executed every time you start ISPF, so you can effectively create your own start-up actions. Some people have already managed to do some of this by putting a sequence of commands on a PF key, but you are limited how much you can fit on one PF key. With the ZSTART variable, and a little REXX, you can be much more creative.
Here’s the REXX I use to set up my screens –
/* REXX */
ZSTART = "ISPF;2;SCRNAME JCL PERM;",
"START SD;SCRNAME SDSF PERM;",
"START 3.4;SCRNAME SOURCE PERM;",
"START 3.4;SCRNAME DATA PERM;",
"START TWS;SCRNAME IWS PERM;",
"START 3.4;SCRNAME UTILS PERM;",
"START 6;SCRNAME COMMAND PERM;"
ADDRESS ISPEXEC "VPUT (ZSTART) PROFILE"
The rules are simple –
- The variable must start with either the ISPF or ISPSTART.
- Each command must be separated by the ISPF command delimiter (if you’re not sure what that is type SETTINGS, and it’s over on the right of the panel).
Then just imagine what sequence of commands you would type on your ISPF command line to start each screen and give it a name.
Then go to your ISPF primary panel and execute your REXX e.g. TSO EX ‘MY.REXX.LIB(SETSTART)’
Exit ISPF, and when you come back you’ll have your screens set up just how you like them, and every other time you log on. You’ll only need that REXX again if you want to change ZSTART.
Now you have all your screens set up, there’s one more trick to help you find your way, and that’s SWAPBAR. Type SWAPBAR on your command line and you get a handy little action bar with the name of all your screens at the bottom –
Now you can put the cursor on any of those screen names and hit enter to swap to them. Of course of your terminal emulator is set up to send ENTER when you double click with the mouse then swapping screens has never been easier, just double click on the screen name, and you’re there.
Notice also that * and - mark the current active and alternate screen, just as on SWAP LIST.
It takes up a precious line of screen space
One common complaint about split screen is that the “split line”, that row of dots usually at the top of bottom of your split screen, wastes a valuable line of screen real estate.
Well if you don’t want to see dots before your eyes you can turn it off by entering SETTINGS on the command line and remove the slash next to “Always show split line” –
Then the next time you enter a SPLIT command (PF2) then the split line will disappear.
If you’ve already tried SWAPBAR then you may have noticed that the split line disappears with SWAPBAR. That’s because the split line and SWAPBAR are mutually exclusive. So if you want to get rid of both the SWAPBAR and the split line, then you must first enter the SWAPBAR command again to turn of the SWAPBAR and then issue the SETTINGS command. If you try it the other way around the “Always show split line” option is “grayed-out”.
It takes too long to log off
With great power comes great tedium. So if you’ve opened 8 logical screens, that means typing =X at least 8 times to log off. It could be more if on some of those screens you have entered applications with a primary panel, as the =X will only take you out of the application, not the screen as well.
But help is at hand, again with z/OS 2.1 a new ISPF command comes to the rescue =XALL
Yes that does what you think it does, you type it once and it exits everything on every screen.
The only proviso is that each ISPF application you are in must support the =X option to exit. If it doesn’t then you must exit that option yourself (and go and slap the application developer until they correct it), but =XALL will work for everything else.
So there you go, once you’ve found your perfect screen combination and set up your ZSTART variable you will be happily whizzing about between panels and logging off with almost zero effort. You’ll be wondering why you didn’t do it sooner.