Page History
[ |../../index.htm#lansa/get_keyword_string.htm]
現在地:
| Anchor | ||||
|---|---|---|---|---|
|
注意: 9.1 組み込み関数の規則 &<a href="ladtgub1_0056.htm"&>利用オプション&</a&>利用オプション
1つのESF (外部ソース形式)ステートメントが含まれる文字列から、キーワードとその値を取得します。
引数
...
例
ESFスタイルのステートメントが入ったリストが作られました。これはRECORDステートメントであることがわかっています。FILENAMEの値、つまりキーワードの値が1つ必要です。
DEFINE FIELD(#KWD) TYPE(*CHAR) LENGTH(10) DEFINE FIELD(#KWDTYPE) TYPE(*CHAR) LENGTH(1) DEFINE FIELD(#LINE) TYPE(*CHAR) LENGTH(70) DEFINE FIELD(#KWDSTR) TYPE(*DEC) LENGTH(3) DECIMALS(0) DEFINE FIELD(#KWDEND) TYPE(*DEC) LENGTH(5) DECIMALS(0) DEFINE FIELD(#VALTYPE) TYPE(*CHAR) LENGTH(1) DEFINE FIELD(#VALALPHA) TYPE(*CHAR) LENGTH(50) DEFINE FIELD(#VALNUM) TYPE(*DEC) LENGTH(30) DECIMALS(0) DEFINE FIELD(#FILENAME) TYPE(*CHAR) LENGTH(10) DEFINE FIELD(#LEFTCOUNT) TYPE(*DEC) LENGTH(5) DECIMALS(0) DEF_LIST NAME(#KWDSRCH) FIELDS((#KWD) (#KWDTYPE)) TYPE(*WORKING) DEF_LIST NAME(#STRSRCH) FIELDS((#LINE)) TYPE(*WORKING) DEF_LIST NAME(#KWDFND) FIELDS((#KWD) (#KWDSTR) (#KWDEND) TYPE(*WORKING) DEF_LIST NAME(#VALFND) FIELDS((#VALTYPE) (#VALALPHA) (#VALNUM)) TYPE(*WORKING) DEF_LIST NAME(#STRLEFT) FIELDS((#LINE)) TYPE(*WORKING) COUNTER(#LEFTCOUNT) ********** Construct list containing ESF:RECORD statement . . . . . . . . . . . . . . . . ********** Clear the keyword search list CLR_LIST NAMED(#KWDSRCH) ********** Put in search keywords CHANGE FIELD(#KWD) TO(FILENAME) CHANGE FIELD(#KWDTYPE) TO(S) ADD_ENTRY TO_LIST(#KWDSRCH) ********** Get the keywords from the string USE BUILTIN(GET_KEYWORD_STRING) WITH_ARGS(#STRSRCH #KWDSTR #KWD #KWDSRCH) TO_GET(#KWDFND #VALFND #STRLEFT) ********** Handle error IF COND('#LEFTCOUNT > 0') ********** error processing . . . . . . . . . . . . . . . . ELSE ********** Get the value for the file name keyword GET_ENTRY NUMBER(1) FROM_LIST(#VALFND) GET_ENTRY NUMBER(#KWDSTR) FROM_LIST(#VALFND) CHANGE FIELD(#FILENAME) TO(#VALALPHA) ********** Use the file name . . . . . . . . . . . . . . . . ENDIF
[ |../../index.htm#lansa/get_keyword_string.htm]