CORRESPONDING (CORR) 句を使用すると、ADD、SUBTRACT、および MOVE の操作を同じ名前の基本データ項目に対して行うことができます。 ただし、その場合それらのデータ項目が属する英数字グループ項目または国別グループ項目が指定されている必要があります。CORRESPONDING 句が使用されているときには、国別グループはグループ項目として処理されます。
キーワード CORRESPONDING の後に置かれる 2 つの ID は、グループ項目の名前を指名しなければなりません。 次の説明では、これらの ID は ID-1 および ID-2 として参照されます。 ID-1 は送り出しグループ項目を参照します。ID-2 は受け取りグループ項目を参照します。
2 つの従属データ項目は、1 つは ID-1 から、もう一方は ID-2 からのもので、次に示す条件が真であれば対応します。
ただし、ID-1 および ID-2 は、 REDEFINES 節や OCCURS 節をその記述中に含む項目を含んだり、またはそれに従属することはできます。
ID-1、ID-2、またはその両方は、FILLER 項目に従属することができます。
例えば、2 つのデータ階層が次のように定義されているものとします。
05 ITEM-1 OCCURS 6. 10 ITEM-A PIC S9(3). 10 ITEM-B PIC +99.9. 10 ITEM-C PIC X(4). 10 ITEM-D REDEFINES ITEM-C PIC 9(4). 10 ITEM-E USAGE COMP-1. 10 ITEM-F USAGE INDEX. 05 ITEM-2. 10 ITEM-A PIC 99. 10 ITEM-B PIC +9V9. 10 ITEM-C PIC A(4). 10 ITEM-D PIC 9(4). 10 ITEM-E PIC 9(9) USAGE COMP. 10 ITEM-F USAGE INDEX.
ADD CORR ITEM-2 TO ITEM-1(x) が指定された場合、ITEM-A と ITEM-A(x)、ITEM-B と ITEM-B(x)、および ITEM-E と ITEM-E(x) は対応するものとみなされ、共に加算されます。ITEM-C および ITEM-C(x) は、この処理に含まれません。これは数字ではないからです。ITEM-D および ITEM-D(x) は含まれません。これは ITEM-D(x) が REDEFINES 節をそのデータ記述中に含むからです。ITEM-F および ITEM-F(x) は、この処理に含まれません。これは指標データ項目だからです。ITEM-1が ID-1 または ID-2 どちらとして有効である点に注意してください。
ADD CORRESPONDING ステートメント内の個々の操作のいずれかにおいてサイズ・エラー条件が発生した場合、 ON SIZE ERROR 句の中の命令ステートメント-1 は、個々の加算がすべて完了するまで実行されません。