View previous topic :: View next topic
|
Author |
Message |
ravikanth
New User
Joined: 12 Jan 2006 Posts: 29
|
|
|
|
Hello All,
I am required to capture the user input from the ISPF panel that I have developed for my tool.
I tried doing..
"VGET (ZSCREENI ZSCREENW ZSCREEND)"
QUEUE ZSCREENI
"EXECIO" QUEUED() " DISKW myfile (FINIS)"
The output file has
ZSCREENI
How will i be able to get the screen print into ZSCREENI
I saw the post ibmmainframes.com/viewtopic.php?t=46895
But Could get that working for me.
Thanks In Advance,
Ravikanth Chavali |
|
Back to top |
|
|
ravikanth
New User
Joined: 12 Jan 2006 Posts: 29
|
|
|
|
Thank you all for your time.
The code provided in the link(post) works perfectly. I added "ADDRESS ISPEXEC" to the VGET command and it worked.
Just incase of AddPoP, I just had to capture the screen before we do a RemPoP.
Fyr, So my sample code looks like
address ispexec "VGET (ZSCREENI ZSCREENW ZSCREEND)"
SW = 80
SD = 50
SL = SD * SW
DO I = 1 TO SL
QUEUE SUBSTR(ZSCREENI,I,SW)
I = I+79
END
/*
I have hardcoded the width & depth, if it needs to be dynamic replace
it with the below code.
SW = ZSCREENW
SD = ZSCREEND
SL = ZSCREEND * ZSCREENW
*/
"FREE F(LOGDD)"
"ALLOC F(LOGDD) DA('"PdsNm"(LOGmem)') SHR"
"EXECIO" QUEUED() " DISKW LOGDD (FINIS)"
"FREE F(LOGDD)"
Thank you! |
|
Back to top |
|
|
daveporcelan
Active Member
Joined: 01 Dec 2006 Posts: 792 Location: Pennsylvania
|
|
|
|
Am I missing something here?
If your are displaying the panel in your Rexx program, then the variables populated by the user are available to your program once the enter key is hit.
There is no need to capture the entire screen and process it.
It seems to me that you are creating a lot of extra work for yourself.
Would somebody please correct me if I am wrong.
If you were to show your rexx code where you parse the values on the screen, it may become more clear. |
|
Back to top |
|
|
Pedro
Global Moderator
Joined: 01 Sep 2006 Posts: 2547 Location: Silicon Valley
|
|
|
|
Just use the same variable names in both the rexx and the panel and it should work. |
|
Back to top |
|
|
ravikanth
New User
Joined: 12 Jan 2006 Posts: 29
|
|
|
|
To Create a queue I had used "MAKEBUF"
And when a panel error occured, I had to "DROPBUF" before exit.
/*------------------------------------------------------------*/
/* Load the number of stack items to LOG Member */
/*------------------------------------------------------------*/
"FREE F(LOGDD)"
"ALLOC F(LOGDD) DA('"PdsNm"(MemNm)') SHR"
"EXECIO" QUEUED() " DISKW LOGDD (FINIS)"
"FREE F(LOGDD)"
/*------------------------------------------------------------*/
/* Flush/Empty the external Data queue. */
/*------------------------------------------------------------*/
Do Queued()
Parse Pull tmpDump
End |
|
Back to top |
|
|
dbzTHEdinosauer
Global Moderator
Joined: 20 Oct 2006 Posts: 6966 Location: porcelain throne
|
|
|
|
it seems as if some one has deleted every other post in this thread.
like an acting scene where everbody has a script for a different movie. |
|
Back to top |
|
|
Bill Woodger
Moderator Emeritus
Joined: 09 Mar 2011 Posts: 7309 Location: Inside the Matrix
|
|
|
|
Yes, I think if you add seven instead of 14 it will work how you want.
Matches the rest of the thread now. Really weird. |
|
Back to top |
|
|
|