该官方指南说,使用CMD(your_statement)函数,但我不断收到一个无法识别关键字错误.我正在尝试自定义ISPF主选项菜单,我需要编辑面板,这样当你按'R'时它会运行一个Rexx exec.以下是我正在使用的面板中的一些代码:
%
% ******************
% * *
% * $2 %Edit *
% * $3 %Utility *
% * $6 %Command *
% * $SD %SDSF *
% * $D %Datasets *
% * $X %eXit *
% * $R %REXX *
% * *
% ******************
)PROC
&ZSEL = TRANS ( TRUNC (&ZCMD,'.')
2,'PGM(ISREDIT) PARM(P,ISREDM01) SCRNAME(EDIT)'
3,'PANEL(ISRUTIL) SCRNAME(UTIL)'
D,'PGM(ISRUDL) PARM(ISRUDLP) SCRNAME(DSLIST)'
6,'PGM(ISRPTC) SCRNAME(CMD)'
SD,'PGM(ISFISP) NOCHECK NEWAPPL(ISF) SCRNAME(SDSF)'
R,'CMD(TSO EXEC 'IBM####.REXX(REXXSYSC)')'
' ',' '
X,'EXIT'
*,'?' )
&NEXTOPT = .TRAIL
)END
Run Code Online (Sandbox Code Playgroud)
当我尝试将命令语句分配给'R'时发生错误.我的猜测是引用是干扰的,但TSO命令必须使用这些引用来指定Rexx exec的位置.从指定的文件夹运行这个Rexx exec应该是什么正确的语法?很抱歉代码的缩进有点搞砸了......
从一些非常简短的测试中,看来REXXSYSC必须驻留在一个库中,该库位于ISPF会话的SYSPROC或SYSEXEC级联中,然后语法为
R,'CMD(%REXXSYSC)'
Run Code Online (Sandbox Code Playgroud)