# PF key positioning/displacement

**URL:** <https://techcommunity.softwareag.com/t/pf-key-positioning-displacement/91412>\
**Category:** Forum\
**Tags:** Adabas-Natural, Natural, Natural-on-Mainframes, Natural-on-Windows-Unix\
**Created:** [September 29, 2009, 7:29pm UTC](https://techcommunity.softwareag.com/t/pf-key-positioning-displacement/91412 "2009-09-29T19:29:56Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![Mishra](https://avatars.discourse-cdn.com/v4/letter/m/7c8e57/32.png) [@Mishra](https://techcommunity.softwareag.com/u/Mishra)\
**Post date:** [September 29, 2009, 7:29pm UTC](https://techcommunity.softwareag.com/t/pf-key-positioning-displacement/91412/1 "2009-09-29T19:29:56Z")

</div>

Hi,

In my application I am navigating thru multiple screens.

Normally the PF keys are placed at the bolttom of the screen and any text (error/worning/information message) is displayed just above the PF key line.

When I navigate in reverse direction (Page up using PF8 key), in few screens what I find is the PF keys are moving up and the text/field on the screen are displayed below that.

can somebody help me on reasoning this?

Attaching a screen shot of the Map for reference and better understanding of my problem.

Thanks in adavance.  
Mishra  
[PF Key positioning.doc](https://techcommunity.softwareag.com/uploads/short-url/yE74TzBvfgqmB9Z9GqgSOtCjcFn.doc) (165 KB)

---

<div class="post-metadata">

**Author:** ![Douglas\_Kelly](https://sea1.discourse-cdn.com/techcommunity/user_avatar/techcommunity.softwareag.com/douglas_kelly/32/102_2.png) [@Douglas\_Kelly](https://techcommunity.softwareag.com/u/Douglas_Kelly)\
**Post date:** [September 30, 2009, 2:59am UTC](https://techcommunity.softwareag.com/t/pf-key-positioning-displacement/91412/2 "2009-09-30T02:59:11Z")

</div>

Is there a MORE prompt in the hidden part of your screenshot?

If your program is using an AT END OF PAGE/INPUT to put the messages at the bottom of the screen and the pagesize is not defined correctly to correspond with the output. Is there actually more output? The bottom two lines appear to be the same in each screen shot, or are these summary lines output by the AT END OF PAGE?

What is the PF8 key actually set to? from the behaviour shown, it would appear to be mapped to a windowing command (e.g. %W+), which will indeed make the screen scroll oddly if you don’t have a larger window to scroll over.

Try writing a small program with FOR loops to write stuff out to the screen to reproduce your issue so you can post a complete program and screen shot.

---

<div class="post-metadata">

**Author:** ![Mishra](https://avatars.discourse-cdn.com/v4/letter/m/7c8e57/32.png) [@Mishra](https://techcommunity.softwareag.com/u/Mishra)\
**Post date:** [September 30, 2009, 7:19am UTC](https://techcommunity.softwareag.com/t/pf-key-positioning-displacement/91412/3 "2009-09-30T07:19:12Z")

</div>

Hi Douglas,

There is no MORE prompt in the hidden part of the screen. I have made it hidden because these are my customer’s information.

There is no AT END OF PAGE in my program. The Map contains same data. Only I navigated to the next screen and came back to the screen that I have given as screen shot.  
Sorry. The Key was PF7 for page up. PF7 is set to page up.

The Map size is 24_80. I think the default size of the MAP is 23_79. Because of one extra line taken here, the problem comes.

I will see to the programs today and come back to the forum.

Thanks in Advance,  
Mishra

---

<div class="post-metadata">

**Author:** ![Steve\_Robinson](https://sea1.discourse-cdn.com/techcommunity/user_avatar/techcommunity.softwareag.com/steve_robinson/32/107_2.png) [@Steve\_Robinson](https://techcommunity.softwareag.com/u/Steve_Robinson)\
**Post date:** [September 30, 2009, 5:06pm UTC](https://techcommunity.softwareag.com/t/pf-key-positioning-displacement/91412/4 "2009-09-30T17:06:19Z")

</div>

Hard to tell from the information you have given (although the screen snaps do help).

What are LS and PS set to?

Are PF7 and PF8 set to %W- and %W+ ? Why? These only scroll on the current page. If the Map fits on 23 lines, why have them at all?

In your program(s) do you “play” with LS and PS?

As Douglas asked, what is generating the last two lines of “output”, or are they coded in the Map?

Do you have an INPUT NO ERASE?

Are you using windowing at all?

What terminal emulator are you using? I seem to recall there were a few that caused problems with last lines on the screen.

steve

---

<div class="post-metadata">

**Author:** ![Steve\_Robinson](https://sea1.discourse-cdn.com/techcommunity/user_avatar/techcommunity.softwareag.com/steve_robinson/32/107_2.png) [@Steve\_Robinson](https://techcommunity.softwareag.com/u/Steve_Robinson)\
**Post date:** [September 30, 2009, 5:15pm UTC](https://techcommunity.softwareag.com/t/pf-key-positioning-displacement/91412/5 "2009-09-30T17:15:13Z")

</div>

One more question.

When you say "When I navigate in reverse direction (Page up using PF8 key), in few screens what I find is the PF keys are moving up and the text/field on the screen are displayed below that. ":

Do you mean that you simply do a %W- then %W+ and the problem occurs?

Or is there logic in your program that changes the logical screen?

The code that controls the screen contents (WRITE, DISPLAY, INPUT, and AT END OF PAGE stuff, etc) would be quite helpful

steve

---

<div class="post-metadata">

**Author:** ![Steve\_Robinson](https://sea1.discourse-cdn.com/techcommunity/user_avatar/techcommunity.softwareag.com/steve_robinson/32/107_2.png) [@Steve\_Robinson](https://techcommunity.softwareag.com/u/Steve_Robinson)\
**Post date:** [September 30, 2009, 7:51pm UTC](https://techcommunity.softwareag.com/t/pf-key-positioning-displacement/91412/6 "2009-09-30T19:51:27Z")

</div>

One more important point:

You said: "The Map size is 24_80. I think the default size of the MAP is 23_79. Because of one extra line taken here, the problem comes. "

If you go to MSET in the Map editor and define PS as 24, you are allowed to do this (of course). Put “stuff” on all 24 lines; no problem. Now go back to MSET and try to turn Key definitions on; you will immediately get an error message about “overlapping detected”. Natural always tries to reserve the last two physical lines for key definitions.

So, it appears that either the F keys line is hard coded (unlikely), or you do not have map size set to 24\*80.

What platform are you developing on?

steve

---

<div class="post-metadata">

**Author:** ![Douglas\_Kelly](https://sea1.discourse-cdn.com/techcommunity/user_avatar/techcommunity.softwareag.com/douglas_kelly/32/102_2.png) [@Douglas\_Kelly](https://techcommunity.softwareag.com/u/Douglas_Kelly)\
**Post date:** [September 30, 2009, 9:36pm UTC](https://techcommunity.softwareag.com/t/pf-key-positioning-displacement/91412/7 "2009-09-30T21:36:15Z")

</div>

You need to show what your SET KEY statement is for PF7 (or PF8). It doesn’t matter which key you are using, it matters what your program does when the key is pressed.

If the key is set to a windowing command, your program does not get control to react to the key - Natural takes care of moving around the logical window. Given your other comments, this seems unlikely. So then the question would be what the program code is doing when it sees the PF key (IF \*PF-KEY = ‘PF7’ THEN…??).

Again, if you can reproduce the problem in a small program that doesn’t use your customer’s live data, it will help us in the forum to understand what the problem is.

---

<div class="post-metadata">

**Author:** ![Mishra](https://avatars.discourse-cdn.com/v4/letter/m/7c8e57/32.png) [@Mishra](https://techcommunity.softwareag.com/u/Mishra)\
**Post date:** [September 30, 2009, 9:48pm UTC](https://techcommunity.softwareag.com/t/pf-key-positioning-displacement/91412/8 "2009-09-30T21:48:25Z")

</div>

Hi Steve,

Thank you for all your responses.

Here are information that you asked for

In the MSET the LS and PS are 80\*24. In the program we are not playing with the LS or PS.

PF7 and PF8 are set for scroll up and scroll down respectively(These are to jump to previous screen and next screen).

The last 2 lines are not any report output. These 2 lines are coded on the MAP.

What I did is, I have changed the PS to 23(from 24) with PF Keys set to ON, I encountered the Overlapping problem.

The emulator we aer usnig is VivaStation.

I will gather more information related to this problem and share in the forum.

I can share more screen snaps(MSET, handling of PF7 and PF8 in program) only tomorrow as I am back to my home for the day.  
The maps are executed using INPUT USING statement.

Thanks,  
Mishra

---

<div class="post-metadata">

**Author:** ![Mishra](https://avatars.discourse-cdn.com/v4/letter/m/7c8e57/32.png) [@Mishra](https://techcommunity.softwareag.com/u/Mishra)\
**Post date:** [September 30, 2009, 9:57pm UTC](https://techcommunity.softwareag.com/t/pf-key-positioning-displacement/91412/9 "2009-09-30T21:57:29Z")

</div>

Hi Douglas,

Yes I agree with you.

The PF keys are set as named ‘Pg-’ and Pg+ as shown on the screen snaps.

Mostly on pressing these keys, another program is being fetched and the Map executed from the other program is thrown on the terminal.

I’ll check if ther is any windowing done in the program and can revert to the forum tomorrow.

Thank you for all your quick responses and curiosity to sort out my issue.

Regards,  
Mishra

---

<div class="post-metadata">

**Author:** ![Steve\_Robinson](https://sea1.discourse-cdn.com/techcommunity/user_avatar/techcommunity.softwareag.com/steve_robinson/32/107_2.png) [@Steve\_Robinson](https://techcommunity.softwareag.com/u/Steve_Robinson)\
**Post date:** [October 1, 2009, 12:01am UTC](https://techcommunity.softwareag.com/t/pf-key-positioning-displacement/91412/10 "2009-10-01T00:01:27Z")

</div>

You said:

"There is no MORE prompt in the hidden part of the screen. I have made it hidden because these are my customer’s information. "

How did you “hide” the MORE prompt?

Take a look at the following program:

> ```
> > + Program PF01 Lib XSTRO    
> 
> ```

All …+…1…+…2…+…3…+…4…+…5…+…6…+…7…  
0010 DEFINE DATA LOCAL  
0020 1 #A (A10)  
0030 END-DEFINE  
0040 \*  
0050 SET KEY PF7=‘%W-’ PF8=‘%W+’  
0060 \*  
0070 INPUT USING MAP ‘PF02’  
0080 SET CONTROL ‘M’  
0090 INPUT USING MAP ‘PF02’  
0100 \*  
0110 END

The Map PF02 has PS of 24; However, there are only 22 lines which are “used” (just dummy text strings like “LINE 1”)

The SET CONTROL ‘M’ just “flip flops” the line for the error message from top to bottom

If you run the program you will see that the output is basically the same as your problem. Is %MB your installation standard? and did you do something like %M32 to make the message line “disappear”?

If so, that is probably what is causing the problem.

steve

---

<div class="post-metadata">

**Author:** ![Mishra](https://avatars.discourse-cdn.com/v4/letter/m/7c8e57/32.png) [@Mishra](https://techcommunity.softwareag.com/u/Mishra)\
**Post date:** [October 1, 2009, 9:48pm UTC](https://techcommunity.softwareag.com/t/pf-key-positioning-displacement/91412/11 "2009-10-01T21:48:50Z")

</div>

Hi Steve,

Today I have made some time to see the real problem. Let me write what is happening little elaborately here

In the application, I start an act and usually have to traverse thru many screens. Around 10 Maps (PF8 to jump to next screen).  
At any point of time, if I want to jump to a screen that is not very next or last, there is a facility to press the PF10 (named as Navigate) key and from the list of screens (list of all screen headings appear in a window), select one and start working on that.

In the screen where the PF Keys are placed at one line 1 and the map text is below the PF Kyes, I pressed the PF10 key.  
Selected the previous screen from the list. I am now on the screen previous to the problem screen.

Now I pressed PF8 key. Here I see my PF Keys are at 1 line up position.

Just to verify, I started the debugger and tested the screen.

I noticed something strange here.  
When the Debugger is ON, the problem does not appear.  
But when the debugger is OFF, the problem appears.

Attached is the screen shot with the MSET defination, the maps.

Hope this will help you to get some clue on the issue.

Thanks in Advance,  
Mishra

---

<div class="post-metadata">

**Author:** ![Mishra](https://avatars.discourse-cdn.com/v4/letter/m/7c8e57/32.png) [@Mishra](https://techcommunity.softwareag.com/u/Mishra)\
**Post date:** [October 1, 2009, 9:49pm UTC](https://techcommunity.softwareag.com/t/pf-key-positioning-displacement/91412/12 "2009-10-01T21:49:13Z")

</div>

Hi Steve,

Today I have made some time to see the real problem. Let me write what is happening little elaborately here

In the application, I start an act and usually have to traverse thru many screens. Around 10 Maps (PF8 to jump to next screen).  
At any point of time, if I want to jump to a screen that is not very next or just previous, there is a facility to press the PF10 (named as Navigate) key and from the list of screens (list of all screen headings appear in a window), select one and start working on that.

In the screen where the PF Keys are placed at one line 1 and the map text is below the PF Kyes, I pressed the PF10 key.  
Selected the previous screen from the list. I am now on the screen previous to the problem screen.

Now I pressed PF8 key. Here I see my PF Keys are at 1 line up position.

Just to verify, I started the debugger and tested the screen.

I noticed something strange here.  
When the Debugger is ON, the problem does not appear.  
But when the debugger is OFF, the problem appears.

Attached is the screen shot with the MSET defination, the maps.

Hope this will help you to get some clue on the issue.

Thanks in Advance,  
Mishra  
[PF Key positioning.doc](https://techcommunity.softwareag.com/uploads/short-url/zkksOg1iJCfTu0FVRQ5KIR11bwc.doc) (407 KB)

---

<div class="post-metadata">

**Author:** ![Steve\_Robinson](https://sea1.discourse-cdn.com/techcommunity/user_avatar/techcommunity.softwareag.com/steve_robinson/32/107_2.png) [@Steve\_Robinson](https://techcommunity.softwareag.com/u/Steve_Robinson)\
**Post date:** [October 1, 2009, 10:19pm UTC](https://techcommunity.softwareag.com/t/pf-key-positioning-displacement/91412/13 "2009-10-01T22:19:37Z")

</div>

Have you located any code that “plays with” the message line?

steve

---

<div class="post-metadata">

**Author:** ![Mishra](https://avatars.discourse-cdn.com/v4/letter/m/7c8e57/32.png) [@Mishra](https://techcommunity.softwareag.com/u/Mishra)\
**Post date:** [October 1, 2009, 11:13pm UTC](https://techcommunity.softwareag.com/t/pf-key-positioning-displacement/91412/14 "2009-10-01T23:13:17Z")

</div>

Hhe message line is at set to MB. This is our system dafault set up.  
There is no such code in the program to play with the message line.

Thanks,  
Mishra

---

<div class="post-metadata">

**Author:** ![Steve\_Robinson](https://sea1.discourse-cdn.com/techcommunity/user_avatar/techcommunity.softwareag.com/steve_robinson/32/107_2.png) [@Steve\_Robinson](https://techcommunity.softwareag.com/u/Steve_Robinson)\
**Post date:** [October 2, 2009, 1:59am UTC](https://techcommunity.softwareag.com/t/pf-key-positioning-displacement/91412/15 "2009-10-02T01:59:41Z")

</div>

Are there any %Y commands (e.g. %YC or %YH) which make the key menu just one line and make the keys cursor sensitive?

steve

---

<div class="post-metadata">

**Author:** ![Steve\_Robinson](https://sea1.discourse-cdn.com/techcommunity/user_avatar/techcommunity.softwareag.com/steve_robinson/32/107_2.png) [@Steve\_Robinson](https://techcommunity.softwareag.com/u/Steve_Robinson)\
**Post date:** [October 2, 2009, 2:05am UTC](https://techcommunity.softwareag.com/t/pf-key-positioning-displacement/91412/16 "2009-10-02T02:05:39Z")

</div>

You said you got rid of MORE. This is displayed on the message line. The way most people do this is to use the %M command to move the message line off of the screen. If you did not do this; what did you do to get rid of MORE?

steve

---

<div class="post-metadata">

**Author:** ![Mishra](https://avatars.discourse-cdn.com/v4/letter/m/7c8e57/32.png) [@Mishra](https://techcommunity.softwareag.com/u/Mishra)\
**Post date:** [October 2, 2009, 8:17am UTC](https://techcommunity.softwareag.com/t/pf-key-positioning-displacement/91412/17 "2009-10-02T08:17:20Z")

</div>

Hi Steve,

There is no YC in my program and I assume that the YC will work in Windows Natural and not in Mainframes.

If the YC is tyrned on also, the PF Key should be positioned at the cursor position, why there?

There was no MORE prompt in my application. I start with a transaction ID, then choose the Menu options and go filling the map screens, finally at the end I press PF4( Named Enregistrement in French) to store the info in database.

I m really sorry to trouble you all. You are willing to sort out my problem, but I think the inputs about my problem is not sufficient to the forum.

Let me see to the programs.

Thanks,  
Mishra

---

<div class="post-metadata">

**Author:** ![Steve\_Robinson](https://sea1.discourse-cdn.com/techcommunity/user_avatar/techcommunity.softwareag.com/steve_robinson/32/107_2.png) [@Steve\_Robinson](https://techcommunity.softwareag.com/u/Steve_Robinson)\
**Post date:** [October 2, 2009, 3:52pm UTC](https://techcommunity.softwareag.com/t/pf-key-positioning-displacement/91412/18 "2009-10-02T15:52:52Z")

</div>

Hi Mishra;

%YC works just fine on the mainframe.

“If the YC is tyrned on also, the PF Key should be positioned at the cursor position, why there?”

I think you misinterpreted the documentation. What %YC does is make the PF Key lines cursor sensitive. Thus, to hit PF5, I move the cursor to PF5 (or the name for PF5), and hit enter. This is equivalent to hitting PF5. With %YH you can eliminate the line which shows the PF5 and there will only be one line which has the names for the PF keys;  
For example: ADD UPDAT DELET SCAN etc

Not my favorite feature, but I have seen it used. One advantage is that you could change PF key assignments without changing maps (you would use \*PF-NAME rather than \*PF-key).

RE MORE; I apparently misinterpreted what you said in your response to Douglas.

There is no MORE prompt in the hidden part of the screen. I have made it hidden because these are my customer’s information. "

I interpreted that as meaning you had hidden MORE; upon re-reading it; that is not what it says.

If you eventually discover there is a problem in Natural (rather than the code), please inform Software AG (so they can fix it) and this list (so we can avoid falling into the same trap)

good luck

steve

---

<div class="post-metadata">

**Author:** ![Mishra](https://avatars.discourse-cdn.com/v4/letter/m/7c8e57/32.png) [@Mishra](https://techcommunity.softwareag.com/u/Mishra)\
**Post date:** [October 2, 2009, 10:24pm UTC](https://techcommunity.softwareag.com/t/pf-key-positioning-displacement/91412/19 "2009-10-02T22:24:32Z")

</div>

Hi Steve,

Thank you for your suggestions and sharing few things about PF Key positioning with %Y terminal command.

I still consider my problem is in the code. Because similar things already there in the system and all are working fine.

I think because of a little mistake somewhere, which is not so easily catchable. I just have to put my full time effort on it to trace the root cause of the problem.

I will definately share the findings on such issue in the forum.

Thank you and all once again. 🙂  
Mishra

---

<div class="post-metadata">

**Author:** ![Mishra](https://avatars.discourse-cdn.com/v4/letter/m/7c8e57/32.png) [@Mishra](https://techcommunity.softwareag.com/u/Mishra)\
**Post date:** [November 5, 2009, 9:00pm UTC](https://techcommunity.softwareag.com/t/pf-key-positioning-displacement/91412/20 "2009-11-05T21:00:49Z")

</div>

Hi All,

I have traced the reason of my problem.

When the user press PF10=Navigation to list all the screen names and select a screen to jump to, at that time there is a terminal command coded as SET CONTROL ‘M23’, because of which the Message was sitting on line#23.  
This was splitting the PFKey lines(23 and 24) and the first line was moving top (line#22) and 2nd PFkey line at line#24.

Thanks,  
Mishra

[Next page](https://techcommunity.softwareag.com/t/pf-key-positioning-displacement/91412.md?page=2)
