入力ファイルのレコードを、ソート・プログラムに渡す前に処理する必要がない場合は、SORT...USING を使用します。 SORT...USING ファイル名 を使用した場合、そのファイルをオープンし、レコードを読み取り、 そのレコードをソート・プログラムに渡し、そのファイルをクローズするための入力プロシージャーが ILE COBOL コンパイラーによって生成されます。
SORT ステートメントが実行されている時は入力ファイルをオープンしないでください。 入力ファイルのレコードを、ソート・プログラムに渡す前に処理したい場合は、SORT ステートメントの INPUT PROCEDURE オプションを使用してください。
各入力プロシージャーは、段落またはセクションのどちらかでなければなりません。 たとえば、WORKING-STORAGE セクションのテーブルのレコードをソート・ファイルに渡すには、以下のようにします。
PROCEDURE DIVISION.
·
·
·
SORT SORT-FILE ON ASCENDING KEY SORT-KEY INPUT PROCEDURE 600-SORT3-INPUT-PROC
·
·
·
600-SORT3-INPUT-PROC SECTION. PERFORM WITH TEST AFTER VARYING X1 FROM 1 BY 1 UNTIL X1 = 100 RELEASE SORT-RECORD FROM TABLE-ENTRY(X1) END-PERFORM.
入力プロシージャーには、レコードを処理してソート操作に渡すためのコードが含まれます。 入力プロシージャーを使用して、次の処理を行えます。
レコードをソート・ファイルに転送する際には、 すべての入力プロシージャーに少なくとも 1 つの RELEASE または RELEASE FROM ステートメントが含まれていなければなりません。
(C) Copyright IBM Corporation 1992, 2006. All Rights Reserved.