The SEQUENCE clause is used to define the ordering of data within COBOL files. It specifies how records are organized and accessed, ensuring consistent data ordering for efficient processing.
The SEQUENCE clause is used in the FILE-CONTROL paragraph of the ENVIRONMENT DIVISION.
12345678910111213141516171819202122232425262728293031323334353637* Basic SEQUENCE syntax SELECT file-name ASSIGN TO physical-file-name ORGANIZATION IS SEQUENTIAL ACCESS MODE IS SEQUENTIAL SEQUENCE IS ASCENDING KEY key-field. * Complete example IDENTIFICATION DIVISION. PROGRAM-ID. SEQUENCE-EXAMPLE. ENVIRONMENT DIVISION. INPUT-OUTPUT SECTION. FILE-CONTROL. SELECT SEQUENTIAL-FILE ASSIGN TO 'DATA/SEQUENTIAL.DAT' ORGANIZATION IS SEQUENTIAL ACCESS MODE IS SEQUENTIAL SEQUENCE IS ASCENDING KEY CUSTOMER-ID. DATA DIVISION. FILE SECTION. FD SEQUENTIAL-FILE. 01 FILE-RECORD. 05 CUSTOMER-ID PIC 9(6). 05 CUSTOMER-NAME PIC X(30). 05 CUSTOMER-BAL PIC 9(8)V99. WORKING-STORAGE SECTION. 01 WS-FILE-STATUS PIC XX. PROCEDURE DIVISION. MAIN-LOGIC. OPEN INPUT SEQUENTIAL-FILE READ SEQUENTIAL-FILE CLOSE SEQUENTIAL-FILE STOP RUN.
SEQUENCE defines data ordering in files.
Examples of using the SEQUENCE clause in different scenarios.
123456* Ascending sequence by customer ID SELECT CUSTOMER-FILE ASSIGN TO 'CUSTOMER.DAT' ORGANIZATION IS SEQUENTIAL ACCESS MODE IS SEQUENTIAL SEQUENCE IS ASCENDING KEY CUSTOMER-ID.
SEQUENCE for ascending order by customer ID.
123456* Descending sequence by date SELECT TRANSACTION-FILE ASSIGN TO 'TRANSACT.DAT' ORGANIZATION IS SEQUENTIAL ACCESS MODE IS SEQUENTIAL SEQUENCE IS DESCENDING KEY TRANSACTION-DATE.
SEQUENCE for descending order by date.
1234567* Multiple key sequence SELECT ORDER-FILE ASSIGN TO 'ORDER.DAT' ORGANIZATION IS SEQUENTIAL ACCESS MODE IS SEQUENTIAL SEQUENCE IS ASCENDING KEY CUSTOMER-ID DESCENDING KEY ORDER-DATE.
SEQUENCE with multiple keys.
Understanding best practices ensures effective use of the SEQUENCE clause.
1. What is the primary purpose of the SEQUENCE clause in COBOL?
2. In which COBOL division is the SEQUENCE clause typically used?
3. What types of files can use the SEQUENCE clause?
4. How does SEQUENCE affect file processing?
5. What is the relationship between SEQUENCE and SORT?