Portal | Manuals | References | Downloads | Info | Programs | JCLs | Master the Mainframes
IBM Mainframe Computers Forums Index
 
Register
 
IBM Mainframe Computers Forums Index Mainframe: Search IBM Mainframe Forum: FAQ Memberlist Usergroups Profile Log in to check your private messages Log in
 

 

Rexx: Can rexx get screen size of session

 
Post new topic   Reply to topic    IBMMAINFRAMES.com Support Forums -> TSO/ISPF
View previous topic :: :: View next topic  
Author Message
James Emerson

New User


Joined: 26 Mar 2009
Posts: 5
Location: Brisbane

PostPosted: Wed Jul 04, 2012 2:21 pm    Post subject: Rexx: Can rexx get screen size of session
Reply with quote

Greetings,

Details:
I use IBM Communications, Personal Communications, Session Manager Version 5.5 for Windows.
I have 2 sessions set up, one for 43/80 and 24/80. I prefer 43/80, but most people at my work use 24/80.

Bad news:
ISPF Dialog Error - Panel definition too large, greater than screen size.

Good news:
I know the panel has too many lines. My panels are made for a 43 line screen. Other people get the above error. And I get the error as well when I jump out and into my 24/80 session, I can reduce the lines in the panel to 24 and it works no problem.

I would like to design 2 panels, one for 43line users like myself, and one for 24line users.

Bad news:
- I figured I could use some command to get screen size. I couldn't figure this one out.
- I figured I could display the 43line screen, then just trap/catch the error and display the 24line version. I couldn't figure this one out.

I can't figure out the fix. And fresh out of ideas.
My preference would be to get screen size, determine which i should display. Back up would be to trap the error after attempting to display the 43 line panel.

Would anyone have any ideas please?


My Rexx to display the panel

Code:
   CURLOC = 'ZCMD'                                                     
   CPANEL = 'TEST43'                                                   

   DO UNTIL PFRC > 0                                                   
     "DISPLAY PANEL("CPANEL") CURSOR("CURLOC")"                         
     PFRC = RC                                                         
                                                                       
     IF RC = 0 THEN DO                                                 
                                                                       
            CURLOC = 'ZCMD'                                             
            ZEDSMSG =  'DONE. PF3 EXIT'                                 
            ZEDLMSG =  'MEMBERS HAVE BEEN PROCESSED. PF3 TO EXIT.'     
            "SETMSG MSG(ISRZ000)"                                       
     END /* IF RC = 0 */                                               
                                                                       
   END /* DO UNTIL */                                                   


Thank you
Back to top
View user's profile Send private message

Akatsukami

Global Moderator


Joined: 03 Oct 2009
Posts: 1753
Location: Bloomington, IL

PostPosted: Wed Jul 04, 2012 6:37 pm    Post subject:
Reply with quote

I believe that the ZSCRMAXD (screen depth -- i.e., number of lines) and ZSCRMAXW (screen width in characters) variables are what you're looking for.
Back to top
View user's profile Send private message
dbzTHEdinosauer

Global Moderator


Joined: 20 Oct 2006
Posts: 6966
Location: porcelain throne

PostPosted: Wed Jul 04, 2012 7:15 pm    Post subject:
Reply with quote

bookmark/favorite these two urls:

ispf variables

system variables
Back to top
View user's profile Send private message
Marso

REXX Moderator


Joined: 13 Mar 2006
Posts: 1226
Location: Israel

PostPosted: Wed Jul 04, 2012 7:23 pm    Post subject: Reply to: Rexx: Can rexx get screen size of session
Reply with quote

Check also the "Scrollable Areas" in this excellent document: ISPF Panels Beyond the Basics

ISPF Panels Beyond the Basics wrote:
Why use scrollable areas?
Applications with large panels can run on small screens
Back to top
View user's profile Send private message
James Emerson

New User


Joined: 26 Mar 2009
Posts: 5
Location: Brisbane

PostPosted: Thu Jul 05, 2012 2:36 pm    Post subject:
Reply with quote

Greetings,

Thank you very much peoples. It worked and I can now proceed with this little panel I am writing.

Also, very nice links, thank you.

For the next person that comes along, you can copy and paste this code to test it. =)

Code:
ADDRESS ISPEXEC       
                     
"VGET (ZSCRMAXD)"     
"VGET (ZSCRMAXW)"     
SAY 'ZSCRMAXD' ZSCRMAXD
SAY 'ZSCRMAXW' ZSCRMAXW

EXIT 




Thank you
Back to top
View user's profile Send private message
Stefan

Active User


Joined: 12 Jan 2006
Posts: 110
Location: Germany

PostPosted: Fri Jul 06, 2012 1:24 pm    Post subject: Re: Reply to: Rexx: Can rexx get screen size of session
Reply with quote

Marso wrote:
Check also the "Scrollable Areas" in this excellent document: ISPF Panels Beyond the Basics


Please use instead my new web page.
I stopped maintaining the site mentioned by Marso a long time ago. My contract with the provider has finished. So the site might become unavailable.
Back to top
View user's profile Send private message
View previous topic :: :: View next topic  
Post new topic   Reply to topic    IBMMAINFRAMES.com Support Forums -> TSO/ISPF All times are GMT + 6 Hours
Page 1 of 1

 

Search our Forum:

Similar Topics
Topic Author Forum Replies Posted
No new posts Display FTP Session Count within TSO Yolanda Harvey TSO/ISPF 3 Fri Mar 10, 2017 10:31 pm
No new posts REXX cdoe to purge a JOB from spool a... Sulabh Agrawal CLIST & REXX 11 Thu Mar 09, 2017 11:36 am
No new posts Overriding PS data in rexx Shaheen Shaik CLIST & REXX 8 Fri Mar 03, 2017 5:08 pm
No new posts how to send just 10 rows in a CICS sc... Megha Gupta CICS 5 Thu Feb 23, 2017 6:57 pm
No new posts REXX compiled via RXTCOMP sergeyken CLIST & REXX 7 Tue Feb 07, 2017 9:41 pm


Facebook
Back to Top
 
Mainframe Wiki | Forum Rules | Bookmarks | Subscriptions | FAQ | Tutorials | Contact Us