%ELEM (要素数の検索)

%ELEM(table_name)
%ELEM(array_name)
%ELEM(multiple_occurrence_data_structure_name)

%ELEM は、指定された配列、テーブル、または複数オカレンス・データ構造の中の要素の 数を戻します。 戻り値は符号なし整数形式 (タイプ U) です。 これは、数値定数が使用できる定義仕様書または拡張演算項目 2 フィールドの 式のどこにでも指定することができます。

パラメーターは、配列、テーブル、または複数オカレンス・データ構造の名前としなけれ ばなりません。

詳細については、配列命令または組み込み関数を参照してください。

図 192. %ELEM の例
 *..1....+....2....+....3....+....4....+....5....+....6....+....7...+....
D*Name++++++++++ETDsFrom+++To/L+++IDc.Keywords+++++++++++++++++++++++++
D arr1d           S             20    DIM(10)
D table           S             10    DIM(20) ctdata
D mds             DS            20    occurs(30)
D num             S              5p 0

 * like_array will be defined with a dimension of 10.
 * array_dims will be defined with a value of 10.
D like_array      S                   like(arr1d) dim(%elem(arr1d))
D array_dims      C                   const (%elem (arr1d))

 /FREE
    num = %elem (arr1d);  // num is now 10
    num = %elem (table);  // num is now 20
    num = %elem (mds);    // num is now 30
 /END-FREE