Page History
[ |../../index.htm#lansa/get_sysvar_list.htm]
現在地:
...
9.111 GET_SYSVAR_LIST
| Note |
|---|
注意 |
...
: 9.1 |
...
システム変数、その記述、プログラム、およびプログラム・タイプのリストを取得して、呼び出し元のRDMLファンクションに可変長の作業リストで戻します。 システム変数、その記述、プログラム、およびプログラム・タイプのリストを取得して、呼び出し元のRDMLファンクションに可変長の作業リストで戻します。
この BIF は、9.2 開発環境のみで使用される組み込み関数 です。
引数
番号 | タイプ | 必須/任意 | 記述 | 最小長 | 最大長 | 最小小数桁数 | 最大小数桁数 |
|---|---|---|---|---|---|---|---|
1 | A | 必須 | ポジショニング・システム変数 |
戻されるリストは、ディレクトリの中で、この引数で渡された値よりも大きく、かつ一番近い名前のシステム変数から始まります。 | 1 | 20 |
戻り値
番号 | タイプ | 必須/任意 | 記述 | 最小長 | 最大長 | 最小小数桁数 | 最大小数桁数 |
|---|---|---|---|---|---|---|---|
1 | L | 必須 | システム変数の情報を含める作業リスト リストは以下のエントリー数を越えてはいけません。 |
IBM |
iで9999項目 |
呼び出し元のRDMLファンクションは、項目の長さの合計が正確に80バイトの作業リストを提供しなければなりません。 |
戻されるそれぞれのリスト項目は、次のような形式にする必要があります。 開始 - 終了 説明 |
20 システム変数名 |
60 システム変数の記述 | 80 | 80 |
2 | A | 任意 | リストの最後のシステム変数 |
通常、この値は次にこの組み込み関数を呼び出す時に、ポジショニング用の引数として使用されます。 | 1 | 20 |
3 | A | 任意 | 戻りコード OK = システム変数の詳細のリスト (満載または一部) |
が戻された。リストに戻された以上のシステム変数は存在しない OV = リスト (満載) |
が戻された。ただしリストに収まらなかったシステム変数がさらに存在する。通常、スタイル・リストを表示する時に、この値を使ってページに次のシステム変数があることを示す NR = リストは空で戻された。リストの最後のシステム変数がブランクで戻される | 2 | 2 |
例
すべてのシステム変数のリストを印刷します。 すべてのシステム変数のリストを印刷します。
DEF_
...
LIST NAME(#VARLST)
...
FIELDS(#VARNAM #VARDES #VARPGM #VARTYP #SPARE)
TYPE(*WORKING)
...
ENTRYS(1000)
...
**********
...
-Define the report layout-
DEF_REPORT PRT_FILE(QSYSPRT)
...
DEF_
...
HEAD NAME(#HEAD01)
...
FIELDS(#TEXT #PAGE . . . )
DEF_LINE NAME(#VARPRT) FIELDS(#VARNAM #VARDES #VARPGM #VARTYP)
**********
...
-Set start system variable to blanks-
CHANGE FIELD(#STRVAR)
...
TO(*BLANKS)
...
**********
...
-Get list of system variables-
USE BUILTIN(GET_SYSVAR_LIST)
...
WITH_ARGS(#STRVAR)
...
TO_GET(
...
#VARLST #LAST #RETCOD)
**********
...
-If return code is OK then process list-
IF COND('#RETCOD *EQ OK')
SELECTLIST NAMED(#VARLST)
**********
...
-Print system variables-
PRINT LINE(#VARPRT)
ENDSELECT
**********
...
-Otherwise issue an error-
ELSE
MESSAGE MSGTXT('An error has occurred. Report not produced.')
ENDIF
**********
...
-Close printer file-
ENDPRINT