我有一个JCL作业可以为消息自动化表编译多个Netview REXX执行程序:
********************************* Top of Data ******************************
//REXXCOMP JOBCARD
//*--------------------------------------------------------------------
//*
//* BATCH REXX COMPILE
//*
//*--------------------------------------------------------------------
//REXXCOMP PROC
// EXEC REXXC,OPTIONS='XREF OBJECT'
//REXX.SYSIN DD DSN=SYSAOC.PRODNETV.EXECS(&MEMIN),DISP=SHR
//REXX.SYSCEXEC DD DSN=SYSAOC.PRODNETV.CEXEC(&MEMIN),DISP=SHR
// PEND
//*--------------------------------------------------------------------
//S01 EXEC REXXCOMP,MEMIN='MEMBER01'
//S02 EXEC REXXCOMP,MEMIN='MEMBER02'
//S03 EXEC REXXCOMP,MEMIN='MEMBER03'
//S04 EXEC REXXCOMP,MEMIN='MEMBER04'
//S05 EXEC REXXCOMP,MEMIN='MEMBER05'
//S06 EXEC REXXCOMP,MEMIN='MEMBER06'
//S07 EXEC REXXCOMP,MEMIN='MEMBER07'
//S08 EXEC REXXCOMP,MEMIN='MEMBER08'
//S09 EXEC REXXCOMP,MEMIN='MEMBER09'
//S10 EXEC REXXCOMP,MEMIN='MEMBER10'
我想为此作业创建另一个PROC,以触发NCCF MEMSTOUT命令:MEMSTOUT &MEMIN
执行此操作的理想方法是什么?
计时器,路由命令,另一个REXX或JCL作业?
编辑:
理想情况下,我想在PROC中添加以下命令
MVS RO *ALL,%MEMSTOUT &MEMIN
在我们的商店中,Netview命令(%)路由到所有LPARS。
ie
//REXXCOMP PROC
// EXEC REXXC,OPTIONS='XREF OBJECT'
//REXX.SYSIN DD DSN=SYSAOC.PRODNETV.EXECS(&MEMIN),DISP=SHR
//REXX.SYSCEXEC DD DSN=SYSAOC.PRODNETV.CEXEC(&MEMIN),DISP=SHR
// COMMAND 'RO *ALL,%MEMSTOUT ''&MEMIN''
// PEND
我只是不知道如何在COMMAND中合并符号。不断收到JCL运行时错误。
您无法以这种方式做您想做的事。根据documentation ...
因为系统通常会在执行后立即执行流内命令转换后,命令的执行将与输入流中任何作业或作业步骤的执行。至将命令与作业处理同步,告知操作员您要输入的命令以及应在何时发出的命令,然后让操作员从控制台输入它们。
...意味着该命令可能将在执行REXXC的未命名步骤之前执行。
您可以使用IEBGENER通过写INTRDR提交工作来实现您的目标。这也可以解决您的符号替换问题,因为您可以对流内数据使用SYMBOLS参数。
也许像这样...
//REXXCOMP PROC
// EXPORT SYMLIST=*
// EXEC REXXC,OPTIONS='XREF OBJECT'
//REXX.SYSIN DD DSN=SYSAOC.PRODNETV.EXECS(&MEMIN),DISP=SHR
//REXX.SYSCEXEC DD DSN=SYSAOC.PRODNETV.CEXEC(&MEMIN),DISP=SHR
//SUBCMD EXEC PGM=IEBGENER
//SYSUT1 DD *,DLM=$$,SYMBOLS=JCLONLY
//jobname JOB job-parameters
// COMMAND 'RO *ALL,%MEMSTOUT ''&MEMIN''
//*
$$
//SYSUT2 DD SYSOUT=(A,INTRDR)
//SYSIN DD DUMMY
//SYSPRINT DD SYSOUT=*
// PEND
...这只是对您写的内容的徒手修改,但我认为您明白了。