%OCCUR (データ構造のオカレンスの設定/取り出し)

%OCCUR(dsn-name)

%OCCUR は、複数オカレンス・データ構造の現在位置の設定や入手を行ないます。

この関数は、その値について評価を受けた場合、指定されたデータ構造の現在のオカレンス番号を戻します。これは符号なしの数値になります。

この関数が EVAL ステートメントの左側に指定された時は、指定されている数値が現在のオカレンス番号になります。これは、小数部ゼロの非浮動数値である必要があります。例外 00122 は、この値が 1 より小さいか、またはオカレンスの合計数よりも大きい場合に出されます。

複数オカレンス・データ構造および OCCUR 命令コードについては、OCCUR (データ構造のオカレンスの設定/取り出し)を参照してください。

図 211. %OCCUR の例
 *..1....+....2....+....3....+....4....+....5....+....6....+....7...+....
D mds             DS                  OCCURS(10)

  /FREE
   n = %OCCUR(mds);
   // n = 1

   %OCCUR(mds) = 7;

   n = %OCCUR(mds);
   // n = 7
 /END-FREE