RELEASE statement

The RELEASE statement transfers records from an input/output area to the initial phase of a sorting operation.

The RELEASE statement can be used only within the range of an INPUT PROCEDURE associated with a SORT statement.

Format: RELEASE

Read syntax diagramSkip visual syntax diagramRELEASErecord-name-1FROMidentifier-1

Within an INPUT PROCEDURE, at least one RELEASE statement must be specified.

When the RELEASE statement is executed, the current contents of record-name-1 are placed in the sort file. This makes the record available to the initial phase of the sorting operation.

record-name-1
Must specify the name of a logical record in a sort-merge file description entry (SD). record-name-1 can be qualified.
FROM phrase
The result of the execution of the RELEASE statement with the FROM identifier-1 phrase is equivalent to the execution of the following statements in the order specified.

MOVE identifier-1 to record-name-1.
RELEASE record-name-1.

The MOVE is performed according to the rules for the MOVE statement without the CORRESPONDING phrase.

identifier-1
identifier-1 must reference one of the following items:
  • An entry in the WORKING-STORAGE SECTION, the LOCAL-STORAGE SECTION, or the LINKAGE SECTION
  • A record description for another previously opened file
  • An alphanumeric or national function.

identifier-1 must be a valid sending item with record-name-1 as the receiving item in accordance with the rules of the MOVE statement.

identifier-1 and record-name-1 must not refer to the same storage area.

Start of changeidentifier-1 must not be a dynamic-length group item or a dynamic-length elementary item.End of change

After the RELEASE statement is executed, the information is still available in identifier-1. (See INTO and FROM phrases under "Common processing facilities".)

If the RELEASE statement is executed without specifying the SD entry for file-name-1 in a SAME RECORD AREA clause, the information in record-name-1 is no longer available.

If the SD entry is specified in a SAME RECORD AREA clause, record-name-1 is still available as a record of the other files named in that clause.

When FROM identifier-1 is specified, the information is still available in identifier-1.

When control passes from the INPUT PROCEDURE, the sort file consists of all those records placed in it by execution of RELEASE statements.

Restriction: Start of changeIf a RELEASE statement appears in a nested program, it cannot be for a SORT statement in a program that contains the nested program.End of change