You are on page 1of 4

IDENTIFICATION DIVISION.

PROGRAM-ID. SRT.
ENVIRONMENT DIVISION.
FILE-CONTROL.
SELECT IN-FILE ASSIGN TO "INPUT.TXT"
ORGANIZATION IS LINE SEQUENTIAL.
SELECT SORT-FILE ASSIGN TO SYSWORK.
SELECT OUT-FILE ASSIGN TO "SORT.TXT"
ORGANIZATION IS LINE SEQUENTIAL.
DATA DIVISION.
FILE SECTION.
FD IN-FILE
LABEL RECORDS ARE STANDARD.
01 IN-REC.
05 ROLLNO PIC 99.
05 NAME1 PIC X(10).
SD SORT-FILE.
01 SORT-REC.
05 NO1 PIC 99.
05
PIC X(10).
FD OUT-FILE
LABEL RECORDS ARE STANDARD.
01 OUT-REC.
05 ROLLNO1 PIC 99.
05 NAME2 PIC X(10).
WORKING-STORAGE SECTION.
01 EOF PIC X VALUE 'N'.
PROCEDURE DIVISION.
BEGIN.
SORT SORT-FILE
ON ASCENDING KEY NO1
INPUT PROCEDURE PARA1
GIVING OUT-FILE
STOP RUN.
PARA1.
OPEN INPUT IN-FILE
PERFORM UNTIL EOF='Y'
READ IN-FILE
AT END MOVE 'Y' TO EOF
NOT AT END
MOVE IN-REC TO SORT-REC
RELEASE SORT-REC
END-READ
END-PERFORM
CLOSE IN-FILE.
************************************ OUTPUT *****************************

INPUT.TXT
01APURVA
04NILAY
03KETAN
SORT.TXT

01APURVA
03KETAN
04NILAY

ENVIRONMENT DIVISION.
INPUT-OUTPUT SECTION.
FILE-CONTROL.
SELECT AGENDA ASSIGN TO RANDOM "AGENDA.DAT"
ORGANIZATION INDEXED ACCESS DYNAMIC
RECORD KEY KEYAGE.
SELECT ORDEN ASSIGN TO SORT.
DATA DIVISION.
FILE SECTION.
FD AGENDA LABEL RECORD STANDARD.
01 REGAGE.
02 KEYAGE.
03 AGECOD PIC 9(4).
02 AGENOM
PIC X(30).
02 AGEDOM
PIC X(30).
02 AGEPOS
PIC 9(5).
02 AGEPOB
PIC X(20).
02 AGEPRO
PIC X(15).
02 AGETEL
PIC X(20).
02 AGEMOV
PIC X(20).
02 AGEMAI
PIC X(30).
02 AGEWEB
PIC X(40).
SD
01

ORDEN.
REGORD.
02 ORDNOM
02 ORDPOB
02 ORDPRO

PIC X(30).
PIC X(30).
PIC X(30).

WORKING-STORAGE SECTION.
01 LINEA.
02 LNOM PIC X(30)BB.
02 LPOB PIC X(20)BB.
02 LPRO PIC X(12).
01 OP PIC X.
...
PROCEDURE DIVISION.
INICIO.
SORT ORDEN
ON ASCENDING ORDPOB
ON DESCENDING ORDNOM
INPUT PROCEDURE CARGAR
OUTPUT PROCEDURE SALIDA.
STOP RUN.

CARGAR SECTION.
INI-CAR.
OPEN INPUT AGENDA.
LEER.
READ AGENDA NEXT RECORD AT END GO FIN-CAR.
MOVE AGENOM TO ORDNOM.
MOVE AGEPOB TO ORDPOB.
MOVE AGEPRO TO ORDPRO.
RELEASE REGORD.
GO LEER.
FIN-CAR.
CLOSE AGENDA.
EXIT.
SALIDA SECTION.
INI-SAL.
RETURN ORDEN AT END GO FIN-SAL.
MOVE ORDNOM TO LNOM.
MOVE ORDPOB TO LPOB.
MOVE ORDPRO TO LPRO.
DISPLAY LINEA LINE 20.
ACCEPT OP LINE 21.
GO INI-SAL.
FIN-SAL.
EXIT.

You might also like