REXX 語言環境可以解譯 Net.Data 巨集之 FUNCTION 區塊中指定的插入式(inline)REXX 程式, 也可以執行儲存在個別檔案中外部的 REXX 程式。 外部 REXX 程式的呼叫是由 FUNCTION 區塊中的陳述式加以識別,例如:
%EXEC{ REXX-program-file-name [optional parameters] %}
REXX 語言環境使用 RexxStart() API 來告訴 REXX 直譯器 執行指定的檔案,接著將後面跟有檔案名稱的參數傳遞給程式,就像您生前在 命令行上輸入的一般。 對於 REXX 程式,所有的參數都是透過 ARG[1] 來接收。
授權要訣: 請確定 Net.Data 執行下的使用者 ID 有權可以存取任何被這個語言環境參考的外部執行檔。相關資訊,請參閱 Net.Data 管理及程式設計手冊的架構章節中, 有關指定 Web 伺服器對 Net.Data 檔案存取權的段落。
變數替代:
只有在 FUNCTION 區塊的可執行陳述式區段中才會執行變數替代。不過, REXX 程式可存取參數, 不論程式是定義在內部的 FUNCTION 區塊或外部的個別檔案。REXX 語言環境使用 REXX 語言處理器的 RexxVariablePool() 函數來和 REXX 程式共用 Net.Data 變數。 這樣可容許 REXX 程式直接處理參數列示中識別的 Net.Data 變數。
REXX 程式可存取表格參數的值並當作 REXX 主變數(stem variable)。 就 REXX 程式而言,表格 T 的欄位標題為 T_N.i, 欄位值為 T_V.i.j。 表格 T 中的列數及直欄數為 T_ROWS 及 T_COLS。
改進 AIX 作業系統的執行效能:
若您在 AIX 系統多次呼叫 REXX 語言環境, 您可考慮將 RXQUEUE_OWNER_PID 環境變數設定為 0。 可多次呼叫 REXX 語言環境的巨集可以很容易地產生許多處理程序及大量的系統資源。
您可以將環境變數設定成下列三種方式的其中之一:
@DTW_rSETENV("RXQUEUE_OWNER_PID", "0")
/etc/environment: RXQUEUE_OWNER_PID = 0
這個方法會影響 REXX 對整個機器的行為。
InheritEnv RXQUEUE_OWNER_PID = 0
這個方法會影響 REXX 對 Web 伺服器的行為。