通过使用 REXX 语言环境,您可以执行内联的 REXX 程序或外部的 REXX 程序。内联的 REXX 程序是这样 一种 REXX 程序,它在宏中具有 REXX 程序的源代码。外部的 REXX 程序在外部文件中具有 REXX 程序的源代码。
要执行内联的 REXX 程序:
定义一个使用 REXX (DTW_REXX) 语言环境的函数,并且该函数中包含 REXX 代码。
例子:一个包含内联 REXX 程序的函数
%function(DTW_REXX) helloWorld() {
SAY 'Hello World'
%}
要运行外部的 REXX 程序:
定义一个使用 REXX (DTW_REXX) 语言环境的函数,并且其中包含一个要在 EXEC 语句中运行的 REXX 程序的路径。
例子:一个包含指向外部程序的 EXEC 语句的函数
%function(DTW_REXX) externalHelloWorld() {
%EXEC{ /QSYS.LIB/REXX.LIB/REXXSRC.FILE/HELLOWORLD.MBR%}
%}
如果使用 EXEC_PATH 配置变量来定义至包含程序的目录的路径,则可以缩短至该程序的路径。 请参阅EXEC_PATH,以学习如何定义 EXEC_PATH 配置变量。
限制:如果您运行的是 OS/400 V3R2 或 V3R7, 并且 REXX 程序使用 SAY REXX 指令写至 stdout,则在字符串的开头插入 12 个空格。例如:
SAY ' STARTOFDATA'
这里的 12 个空格将被忽略, 但是如果没有插入这些空格,则可能会出现不可预测的结果。