View previous topic :: View next topic
|
Author |
Message |
don.leahy
Active Member
Joined: 06 Jul 2010 Posts: 765 Location: Whitby, ON, Canada
|
|
|
|
A little OT, but still on the subject of screen geometry, I grew tired of trying to design my panels to fit on a 24 line screen so I always code them as a (vertical) scrollable area, even when not really needed. ISPF makes this trivial to do using the )AREA statement.
This has freed me to create deeper panels without losing any functionality for the stick-in-the-mud traditionalists who insist on using an obsolete screen size. Let them scroll. |
|
Back to top |
|
|
Willy Jensen
Active Member
Joined: 01 Sep 2015 Posts: 734 Location: Denmark
|
|
|
|
Yup, I do that too. |
|
Back to top |
|
|
don.leahy
Active Member
Joined: 06 Jul 2010 Posts: 765 Location: Whitby, ON, Canada
|
|
|
|
The worst were the 24x80 diehards who also had PFSHOW turned on. |
|
Back to top |
|
|
Lynne
Active User
Joined: 15 Jan 2015 Posts: 107 Location: USA
|
|
|
|
I tried some model variable lines based on the above posts - but I kept getting errors. probably adapting it incorrectly.
so, i decided to start really simple. just 1 variable, and see if I could anything displayed at all.
so, I'm uploading some snaps. snap 1 is what I originally did with creating a display with multiple rows - but I set the panel width to ZSCRMAXW. You can see in snap 2 that it shows a wider screen, but with col 81 on blank because I only define cols 1-80.
snaps 3 and 4 is where I define 1 variable - &big - in the initialization section. I put that one variable in the model line. No scrolling - I just wanted to see if I could get the variable model line to display at all.
and I get the error in screen 4. |
|
Back to top |
|
|
Pedro
Global Moderator
Joined: 01 Sep 2006 Posts: 2594 Location: Silicon Valley
|
|
|
|
You are violating rule #5.
Quote: |
5. All model line variables must be initialized before the table display service is called with a nonblank panel name. Changes to the variables that occur within the panel or the dialog function are not honored until table display is called again with a nonblank panel name. |
You are calling TBDISPL service which then tries to set it in the )INIT section, but it is already too late, per the rule.
See the explanation for message ISPP316:
www.ibm.com/docs/en/zos/2.4.0?topic=isp-ispp316
(google for "ISPP316 site:ibm.com") |
|
Back to top |
|
|
Pedro
Global Moderator
Joined: 01 Sep 2006 Posts: 2594 Location: Silicon Valley
|
|
|
|
fyi. in s3.png, you have defined EXPAND(//) but later use \\ characters instead. Also, the number of 'z's specified is different that the number of zvars named. |
|
Back to top |
|
|
Lynne
Active User
Joined: 15 Jan 2015 Posts: 107 Location: USA
|
|
|
|
I read the IBM 1 sentence explanation. and I didn't understand it.
do they mean I need to initialize the variable in the rexx exec before I display the panel? not in the Init section?
"Dear IBM - it would have been so much simpler to designate a continuation char to continue a model line to describe the rest of a display line on the next physical record line"
If I have 132 chars, I won't need to scroll right. which I don't even want to think about anymore. i just want to be able to display the 132 chars / row |
|
Back to top |
|
|
Pedro
Global Moderator
Joined: 01 Sep 2006 Posts: 2594 Location: Silicon Valley
|
|
|
|
Quote: |
do they mean I need to initialize the variable in the rexx exec before I display the panel? |
Yes. |
|
Back to top |
|
|
Lynne
Active User
Joined: 15 Jan 2015 Posts: 107 Location: USA
|
|
|
|
ok. I thought that was what the )INIT did - set up values before the initial display of the panel, but I guess the variable model lne must need something more.
I will go ahead and try that. |
|
Back to top |
|
|
Pedro
Global Moderator
Joined: 01 Sep 2006 Posts: 2594 Location: Silicon Valley
|
|
|
|
Quote: |
I read the IBM 1 sentence explanation. and I didn't understand it |
I agree that the explanation is very spartan. While the explanation is not very verbose, it is correct. But the Programmer Response section is wrong. I sent feedback email to IBM:
Quote: |
to: ibmdocs@us.ibm.com
subject: ISPF Messages and Codes, SC19-3622, message ISPP316
The Programmer Response section is incorrect! This message refers to the model line variable and not to the model line itself. You have to set the value of the variable outside of the panel, prior to displaying the panel.
My suggestion:
"ISPP316 Model line not defined - The variable model line has not been initialized before the display.
Explanation
All model line variables must be initialized before the table display service, TBDISPL, is called with a nonblank panel name.
Programmer Response
Assign a value to the model line variable in a program or in a different panel. Execute this assignment prior to calling the TBDISPL service.
Assigning a value in the )INIT section of the panel that is the target of TBDISPL is not sufficient."
|
The programmer response is currently incorrect:
Quote: |
Define a model line in the panel. |
|
|
Back to top |
|
|
Lynne
Active User
Joined: 15 Jan 2015 Posts: 107 Location: USA
|
|
|
|
Pedro, I hope they take your suggestion. Your message is much clearer and specific.
I did change the function to create the model line variable in the Rexx and that worked great. I was able to create a much nicer display with the 132 chars.
but I was thinking about this, and to use a 132 record length panel library to begin with is much more straightforward. You can create the model line in the Panel because there the rec length of the panel is the same as the displayed record length.
I thought I would ask the people in charge of the "finished" version of panels if they would consider adding a 132 rec length panel library. Leave the existing panels as is, but add a wider panel pds to ISPPLIB.
so, i set it up.. but when I LIBDEF with STACK specifying DATASETS with 2 panel PDSs of different record lengths - ISPF does NOT like it. Keeps telling me I can't do that. ok. maybe I will try doing LIBDEF with the library option.
but has anyone else set this up? an application with panel libraries with 2 different record lengths? How did you attach your libraries before selecting your application? |
|
Back to top |
|
|
|