ILE COBOL 解説書


RETURN ステートメント

RETURN ステートメントは、ソートまたはマージの操作の最終フェーズから OUTPUT PROCEDURE へレコードを転送します。

RETURN ステートメントは、SORT または MERGE ステートメントと関連する出力プロシージャーの範囲内でしか使用できません。

RETURN ステートメント - 形式
 
>>-RETURN--ファイル名-1--+--------+--+------------+------------->
                         '-RECORD-'  '-INTO--ID-1-'
 
>--+----+--END--命令ステートメント-1---------------------------->
   '-AT-'
 
>--+----------------------------------------+--+------------+--><
   '-NOT--+----+--END--命令ステートメント-2-'  '-END-RETURN-'
          '-AT-'
 
 

OUTPUT PROCEDURE の中には、少なくとも 1 つの RETURN ステートメントを指定しなければなりません。

RETURN ステートメントが実行されると、ファイル名-1 内の次のレコードが OUTPUT PROCEDURE による処理用に使用できるようになります。

ファイル名-1 および ID-1 に対応するレコード域は、同じ記憶域であってはなりません。

レコードは、レコード域と、ID-1 によって参照されるデータ項目の両方で使用可能になります。

ファイル名-1
ファイル名-1 は、データ部の SD 記入項目の中で記述されていなければなりません。

ファイル名-1 に複数のレコード記述が関連付けられている場合には、これらのレコードは自動的に同じ記憶域を共用します。 つまり、それらは暗黙に再定義されます。 RETURN ステートメントが実行された後、現行レコードの内容だけが使用可能になります。 現行レコードの長さを超えて存在するデータ項目がある場合には、それらの内容は未定義となります。

INTO ID-1
この句によって、RETURN INTO ステートメントは次のステートメントと同等になります。
RETURN file-name-1
MOVE record-name TO identifier-1

+----------------------------------IBM 拡張----------------------------------+

ID-1 は、DBCS、浮動小数点、または日時データ項目とすることがで きます。

+------------------------------End of IBM 拡張-------------------------------+

移動は、CORRESPONDING 句のない MOVE ステートメントの規則に従って実行されます。

現行レコードのサイズは、RECORD 文節について指定されている規則によって判別されます。 ファイル記述記入項目に RECORD IS VARYING 文節が含まれている場合には、暗黙の MOVE はグループの移動となります。 ただし、RETURN が成功しなければ、暗黙の MOVE は行われません。

ID-1 に関連する添え字付け、指標付け、または参照変更は、レコードが戻された後、 ID-1 へ移動される直前に評価されます。

次の 1 つまたは両方が真の場合には、RETURN ステートメントに INTO 句を指定できます。


[ ページのトップ | 前ページ | 次ページ | 目次 | 索引 ]