%TLOOKUP(arg : search-table {: alt-table}) %TLOOKUPLT(arg : search-table {: alt-table}) %TLOOKUPGE(arg : search-table {: alt-table}) %TLOOKUPGT(arg : search-table {: alt-table}) %TLOOKUPLE(arg : search-table {: alt-table})
次の関数は、次のように引数 と一致する値を求めて検索テーブル を検索します。
値が指定された条件に一致する場合、検索テーブルの現在のテーブルの要素は条件を満たす要素に設定され、代替テーブルに対する現行テーブル要素が同じ要素に設定され、そして関数が値 *ON を戻します。
指定された条件に一致する値がない場合は、*OFF が戻されます。
最初の 2 つのパラメーターはどんなタイプであっても構いませんが、同じタイプでなければなりません。 これらの長さまたは小数点以下の桁数は、同じである必要はありません。
引数 または検索テーブル が ALTSEQ(*NONE) を指定して定義されている場合を除き、ALTSEQ テーブルが使用されます。
組み込み関数 %FOUND と %EQUAL は %LOOKUP 命令に続けて設定されません。
%TLOOKUPxx 組み込み関数は、 順序テーブル (ASCEND または DESCEND キーワードが指定されたテーブル) を検索するために二分探索を使用します。 正しい順序になっていない順序配列を参照してください。
詳細については、配列命令または組み込み関数を参照してください。
*..1....+....2....+....3....+....4....+....5....+....6....+....7...+.... /FREE *IN01 = %TLOOKUP('Paris':tab1); IF %TLOOKUP('Thunder Bay':tab1:tab2); // code to handle Thunder Bay ENDIF; /END-FREE
(C) Copyright IBM Corporation 1992, 2006. All Rights Reserved.