REXX exec からデータ・セット・リストをオーバーライド
ISPF 変数 CRZDSNX は、カンマ区切りで、ISPF SHARED 変数プールに保存された 1 つ以上のデータ・セット名で入力され、ネストされた呼び出しの拡張検索を指定して、変数で指定されたデータ・セット名を使用します。
例
次の例では、REXX exec は ISPF メンバー・リストを生成します。拡張検索がメンバー・リストから呼び出されると、DSN フィールドは CRZDSNX で見つかったデータ・セット名で入力されます。図 1. 拡張検索にデータ・セット名を提示する例
/* REXX Example providing data set names for enhanced find */
mydsns = "'myhlq.EXEC' 'myhlq.TESTPDS' 'myhlq.TESTPDSE'"
CRZDSNX = "myhlq.EXEC,myhlq.TESTPDS,myhlq.TESTPDSE" /* enhanced find dsns */
ADDRESS TSO
"ALLOC FI(MYDD) DA("mydsns") SHR REUSE"
ADDRESS ISPEXEC
"VPUT (CRZDSNX) SHARED"
"LMINIT DATAID(DID) DDNAME(MYDD) ENQ(SHRW)"
"LMOPEN DATAID("DID")"
"MEMLIST DATAID("DID") CONFIRM(YES)"
"LMFREE DATAID("DID")"
CRZDSNX = " " /* clear variable */
"VPUT (CRZDSNX) SHARED"
ADDRESS TSO
"FREE FI(MYDD)"
注: これらの値が ISPF 共有プールに存在すると、拡張検索がこれらの値の使用を続けるため、REXX exec が終了する前に CRZDSNX を消去します。