如何通过JCL将参数传递给REXX程序

时间:2009-12-25 08:28:45

标签: mainframe argument-passing jcl rexx

我们可以从JCL传递REXX程序的参数吗?

我想,JCL PARM可用于将参数传递给COBOL程序。请将您的想法放在这里......

4 个答案:

答案 0 :(得分:7)

你想要EXEC PGM=IRXJCL,PARM='member_name exec_args'SYSEXEC应指向包含member name的PDS。 SYSTSINPULL的输入,SYSTSPRTSAY的输出DD

查看"TSO/E Rexx User Guide" book (SA22-7791)中“在TSO / E和其他MVS地址空间中使用REXX ”一章的完整示例。

答案 1 :(得分:3)

补充说明:如果您的REXX执行程序使用ISPF服务,您可以批量运行PGM = IKJEFTxx(xx是变量后缀)并在作业步骤中分配ISPxLIB。

答案 2 :(得分:3)

如果参数与REXX成员名称一起超过100个字节,则Ron Patterson提到的方法将不起作用,因为JCL语法仅允许最大参数长度为100个字节。在这种情况下,我建议使用IKJEFTxx(已由Tony发布)。然后,您必须将REXX程序名称作为实例数据传递给SYSTSIN。该程序的参数可以简单地写在程序名后面。如果需要多行,请使用连字符作为行的最后一个字符,以指示与以下行的串联。 例如:

//EXAMPLE  EXEC PGM=IKJEFT01,REGION=4096K,DYNAMNBR=30
//SYSPRINT DD  SYSOUT=*                              
//SYSEXEC  DD  DISP=SHR,DSN=YOUR.REXX.LIBRARY    
//SYSTSPRT DD  SYSOUT=*                              
//SYSTSIN  DD  *                                     
  SCHLABB PARAMETER1 PARAMETER2 PARAMETER3 -
          VERY_LONG_PARAMETER4             -
          LAST_PARAMETER5                                
/*                                                   
//                                                   

答案 3 :(得分:0)

当我尝试运行IRXJCL时,我获得了基本EXECIO,LIBDEF命令的RC(-3)。我希望有关于IRXJCL可以做什么和不能做什么的更好的文档。

最后按照以下链接的方法,通过将值写入文件并从文件中读取来动态地将值传递给REXX。 How to run dymanic SQL through IKJEFT01 Utility?