9.78 GET_CHAR_AREA
注意: 9.1 組み込み関数の規則 &<a href="bifcat2_06.htm"&>利用オプション&</a&>
文字データ・エリアから文字列を取得します。
引数
番号 |
タイプ |
必須/任意 |
記述 |
最小長 |
最大長 |
最小小数桁数 |
最大小数桁数 |
1 |
A |
必須 |
データ・エリア名 |
1 |
10 |
|
|
2 |
A |
任意 |
ライブラリ名 |
1 |
10 |
|
|
3 |
A |
任意 |
データ・エリアのロック |
1 |
1 |
|
|
4 |
N |
任意 |
取得開始位置。デフォルト:1桁目 |
1 |
5 |
0 |
0 |
|
|
必須 |
データ・エリアが*LDAまたは*GDAの場合 |
|
|
|
|
5 |
N |
任意 |
取得長さ |
1 |
4 |
0 |
0 |
|
|
必須 |
データ・エリアが*LDAまたは*GDAの場合 |
|
|
|
|
注:開始位置、長さを指定する場合は、必ず「両方」の値を引数に指定する必要があります。
戻り値
番号 |
タイプ |
必須/任意 |
記述 |
最小長 |
最大長 |
最小小数桁数 |
最大小数桁数 |
1 |
A |
任意 |
戻される値 |
1 |
2000 |
|
|
例
COMPIDという名前のデータ・エリアから会社名を取得します。ジョブの現在のライブラリ・リストを使ってデータ・エリアを検索します。
USE BUILTIN(GET_CHAR_AREA) WITH_ARGS(COMPID) TO_GET(#COMPANY)
QTEMPライブラリのUSERINFOというデータ・エリアの101から110バイト目までのデータを取得して、結果を#OUTQというフィールドに挿入します。
USE BUILTIN(GET_CHAR_AREA)
WITH_ARGS(USERINFO QTEMP N 101 10) TO_GET(#OUTQ)
注意:LDAまたは*GDAを処理する場合は、開始位置と長さを指定する必要があります。これらの引数が指定されていない場合、プログラムは異常終了します。 ローカル・データ・エリア(*LDA)の1バイト目から30バイトの情報を取得します。注:ファンクションの引数でロックするように指定されていても、*LDAデータ・エリアはロックされません。
DEFINE FIELD(#RETVAL) TYPE(*CHAR) LENGTH(30)
USE BUILTIN(GET_CHAR_AREA) WITH_ARGS('''*LDA''' '''*LIBL''' N 1 30) TO_GET(#RETVAL)
グループ・ジョブのあるジョブがグループ・データ・エリア(*GDA)に渡したいくつかの情報を取得します。情報は*GDAの20バイト目から50バイト目に入っています。
DEFINE FIELD(#RETVAL) TYPE(*CHAR) LENGTH(30)
USE BUILTIN(GET_CHAR_AREA) WITH_ARGS('''*GDA''' '''*LIBL''' N 20 30) TO_GET(#RETVAL)