この句は、ソート操作からの出力レコードを選択または変更するためのプロシージャーの名前を指定します。
- プロシージャー名-3
- 出力プロシージャー内の最初の (または唯一の) セクションまたは段落を指定します。
- プロシージャー名-4
- 出力プロシージャー内の最後のセクションまたは段落を識別します。
出力プロシージャーは、ファイル名-1 からのソートされた順序で、RETURN ステートメントによって一度に 1 つずつ使用可能にされるレコードを選択、変更、
またはコピーするのに必要な任意のプロシージャーから構成できます。
出力プロシージャーの範囲には、出力プロシージャー内の CALL、EXIT、GO TO、
および PERFORM ステートメントによる制御権の移動の結果として実行されるすべてのステートメントが含まれます。
また、出力プロシージャー内のステートメントの実行の結果として実行される宣言プロシージャー内のすべてのステートメントも含まれます。
出力プロシージャーの範囲には、MERGE、RELEASE、または SORT ステートメントを含めることはできません。
出力プロシージャーが指定されると、ファイル名-1 が SORT ステートメントによって順序付けられた後で、
制御がこの出力プロシージャーに渡されます。
コンパイラーは、この出力プロシージャー内の最後のステートメントの後に、戻りメカニズムを挿入します。
制御がこのステートメントに渡されると、戻りメカニズムがソート操作を終了させ、SORT ステートメントの後の次の実行可能ステートメントに制御を渡します。
出力プロシージャーに入る前に、ソート・プロシージャーは、ソートされた順序で次のレコードを選択できるポイントに到達します (要求された場合)。
次のレコードを要求するのは、出力プロシージャー内の RETURN ステートメントです。
注: INPUT PROCEDURE 句および OUTPUT PROCEDURE 句は、
基本 PERFORM ステートメントのものと類似しています。
例えば、OUTPUT PROCEDURE 句でプロシージャーを指定すると、
そのプロシージャーは、PERFORM ステートメントで指定された場合と同じように、ソート操作時に実行されます。
PERFORM ステートメントの場合と同様に、プロシージャーの実行は最後のステートメントが実行された後で終了されます。
入力または出力プロシージャーの最後のステートメントは、EXIT ステートメントにすることができます (EXIT ステートメントを参照してください)。
IBM Extension
SORT-RETURN 特殊レジスターには、SORT 操作の成功 (または失敗) を示す戻りコードが入ります。
詳しくは、SORT-RETURN 特殊レジスターを参照してください。
End of IBM Extension