View previous topic :: View next topic
|
Author |
Message |
milochanzy
New User
Joined: 28 Aug 2006 Posts: 7 Location: India
|
|
|
|
Hi,
Can someone suggest something for a situation where:
1)Display 1st Panel
2)Display 2nd Panel
3)Find if any PF key say 'PF03' is pressed.
4)If no then go to step 1 else go to step 5.
5)Exit.
PFB some code that i am trying aint working:
Code: |
/* REXX */
ADDRESS ISREDIT "MACRO PROCESS"
DO FOREVER
ADDRESS ISPEXEC
"LIBDEF ISPPLIB DATASET ID ('MY.REXX.LIB')"
"CONTROL DISPLAY LOCK"
"DISPLAY PANEL (PANEL1)"
ADDRESS ISPEXEC
"LIBDEF ISPPLIB DATASET ID ('MY.REXX.LIB')"
"CONTROL DISPLAY LOCK"
"DISPLAY PANEL (PANEL2)"
ADDRESS ISPEXEC "VGET ZPFKEY"
IF ZPFKEY == PF03 THEN
EXIT 1
END
|
Regards,
Milan |
|
Back to top |
|
|
superk
Global Moderator
Joined: 26 Apr 2004 Posts: 4652 Location: Raleigh, NC, USA
|
|
|
|
I don't understand what you want to do with steps 3 & 4.
If you display PANEL2 with CONTROL DISPLAY LOCK still active, then, as documented, any user interaction with the panel is ignored. So, you definitely need to disable the DISPLAY LOCK first.
Then, you want to check if ANY key is pressed? Normally, if a panel is displayed via the DISPLAY service, pressing ENTER will end the DISPLAY service with a RC of zero. Entering END or EXIT, or, pressing a PF Key that is associated to the END or EXIT commands will end the DISPLAY service with a RC of 8. The DISPLAY service won't end until the user presses some appropriate PF key or enters something appropriate on the command line. |
|
Back to top |
|
|
milochanzy
New User
Joined: 28 Aug 2006 Posts: 7 Location: India
|
|
|
|
Hi Kelvin,
Thanks for response.
Here's what is intended. I want to keep sending some screen on ISPF until someone interrupts it.
Hope this has clarified the Steps you mentioned.
Please try if you can help me with this.
Thanks and Regards,
Milan
superk wrote: |
I don't understand what you want to do with steps 3 & 4.
If you display PANEL2 with CONTROL DISPLAY LOCK still active, then, as documented, any user interaction with the panel is ignored. So, you definitely need to disable the DISPLAY LOCK first.
Then, you want to check if ANY key is pressed? Normally, if a panel is displayed via the DISPLAY service, pressing ENTER will end the DISPLAY service with a RC of zero. Entering END or EXIT, or, pressing a PF Key that is associated to the END or EXIT commands will end the DISPLAY service with a RC of 8. The DISPLAY service won't end until the user presses some appropriate PF key or enters something appropriate on the command line. |
|
|
Back to top |
|
|
ofer71
Global Moderator
Joined: 27 Dec 2005 Posts: 2358 Location: Israel
|
|
|
|
The only way I know to interrupt a CONTROL DISPLAY LOCK is with the ATTN key.
O. |
|
Back to top |
|
|
|