書き方 2 の SEARCH 文を用いると、非逐次表引き処理が行われる。このとき、一意名-1 用の指標データ項目の初期値は無視され、表引き処理につれて指標データ項目の値は変化する。ただし、その値が許される最大値よりも大きくなることも、許される最小値よりも小さくなることもない。表の大きさについては、「OCCURS 句」に説明してある。許容範囲内のどの指標値に関しても WHEN 句に指定された条件のうちで満たされないものがある場合、AT END 指定が書いてあれば、その無条件文-1 に制御が移される。AT END 指定が書いてなければ、次の実行完結文に制御が移される。どちらの場合も、指標データ項目の最後の値はどうなるかわからない。すべての条件が満たされたときは、そのときの要素の出現番号が指標データ項目に記録され、制御は無条件文-2 に移される。
書き方 2 では、表引き処理に使用される指標名は、一意名-1 の INDEXED BY 句の中の最初の (または唯一の) 指標名だけである。一意名-1 用のその他の指標名の指標データ項目の内容は変わらない。
無条件文-2も NEXT SENTENCE 指定も必要ない。これらが指定されていないと、SEARCH 文は表の中の条件に一致した値に指標を設定する。
説明:
図 1 に、WHEN 指定が 2 つ含まれる書き方 1 の表引き処理の流れ図を示す。