Friendly people:
I have been RTFM and trying various approaches, but have been getting
nowhere. I'm not the greatest REXX expert, but I've written a number of REXX
routines, so I've got some familiarity with REXX, but I've never tried
compiling them before. Now, for performance reasons, I'm trying to compile a
REXX that works fine when interpreted, but goes zooey when compiled and
executed.
Where I'm at now, I can get the routine to display an ISPF panel, but it
apparently is unable to recognize the ZCMD that comes back from the panel in
the REXX, but it's there when it performs the SETMSG service.
Here's a snippet of the code:
select
when ( ZCMD = '0' ) then
call SET_USER_PROFILE
<snip>
otherwise
"SETMSG MSG(MDFS001A)"
end /* End Select */
E.g. I enter '0', and it tells me 'Test type ( 0 ) invalid'.
(NB: MDFS001A = MDFS001A 'Test type ( &ZCMD ) invalid')
OK, so I'm told I need to do a VDEFINE to get a copy of the ZCMD variable.
VDEFINE only works over the CALL ISPLINK interface, not the ISPEXEC
interface. OK. But none of the following calls work:
call isplink 'VDEFINE ','ZCMD', ZCMD, 'CHAR',8;
x = isplink('VDEFINE ','ZCMD', ZCMD, 'CHAR',8);
Both (using only one per version, of course :-) generate the following
dialog box:
ISPS101
Service name missing
No dialog service request name found.
Any advice would be appreciated. TIA