View previous topic :: View next topic
|
Author |
Message |
chaoj
Active User
Joined: 03 Jun 2010 Posts: 103 Location: Dalian
|
|
|
|
I saw someone create a REXX PGM and that REXX could display a ISPF panel and message , and he write the panel and message in the REXX , then you don't need to create another ISPP LIB and PSPM LIB , but I searched for a long time and can not find it anymore .......
Please help and tell me what the point that could write panel and message in the REXX . Thanks ! |
|
Back to top |
|
|
enrico-sorichetti
Superior Member
Joined: 14 Mar 2007 Posts: 10873 Location: italy
|
|
|
|
a panel,msg,skel in the rexx code is not directly usable,
it is trick FOR SELDOM USED APPLICATIONS to not distribute the libraries but just one member/source with the REXX code anfd the other data needed to run the application.
REXX is just used as a container
what happens is that there is a prolog that allocates the libraries, writes the relevant parts of the source as members of the library issues the appropriate libdefs
and AT THIS point the application is invoked
so for frequently used commands the overhead is not reasonable |
|
Back to top |
|
|
chaoj
Active User
Joined: 03 Jun 2010 Posts: 103 Location: Dalian
|
|
|
|
enrico-sorichetti wrote: |
a panel,msg,skel in the rexx code is not directly usable,
it is trick FOR SELDOM USED APPLICATIONS to not distribute the libraries but just one member/source with the REXX code anfd the other data needed to run the application.
REXX is just used as a container
what happens is that there is a prolog that allocates the libraries, writes the relevant parts of the source as members of the library issues the appropriate libdefs
and AT THIS point the application is invoked
so for frequently used commands the overhead is not reasonable |
Thank you enrico , I got it.
(Before asking I wonder how to allocate a library as a temp dataset , but after your answer , I found that I don't need to allocate a temp dataest , cause temp dataset also a dataset which must be allocated , same as the allocation by NEW CATLG , unfortunately what I create is just a SELDOM USED APPLICATION , I will use the trick you mentioned , I think I could allocate a USERID.XXX.ISPP and USERID.XXX.ISPM before display the panel. Thank you again ! ) |
|
Back to top |
|
|
superk
Global Moderator
Joined: 26 Apr 2004 Posts: 4652 Location: Raleigh, NC, USA
|
|
|
|
You can use the sections of my code from this post. |
|
Back to top |
|
|
chaoj
Active User
Joined: 03 Jun 2010 Posts: 103 Location: Dalian
|
|
|
|
superk wrote: |
You can use the sections of my code from this post. |
Thank you superk ! It works well .
I found that when you allocate the panel LIB , you did not use the DATASET parm .
Code: |
"ALLOC DD("ddname") NEW REU RECF(F B) LRECL(80) DIR(2) SP(1) TR"
|
and also there's no FREE command for this DD, I read the allocate command reference and can not find the description that what happened when DATASET parm omitted , I guess it's a temp dataset that no need to FREE and it will be deleted when EXEC ends. Am I right ? |
|
Back to top |
|
|
|