You are on page 1of 17

Presented By-

Vaibhav Pandey
Files-
Collection of Records.

Types of VSAM Files

1. ESDS
2. KSDS
3. RRDS

000001 ID DIVISION.
000002 PROGRAM-ID. KSDSTOPS.
000003 ENVIRONMENT DIVISION.
000004 INPUT-OUTPUT SECTION.
000005 FILE-CONTROL.
000006 SELECT KSDFILE ASSIGN TO KDR
000007 ORGANIZATION IS INDEXED
000008 ACCESS MODE IS SEQUENTIAL
000009 RECORD KEY IS KEID
000010 FILE STATUS IS KFS.
000011 SELECT PSFILE ASSIGN TO PDR
000012 ORGANIZATION IS SEQUENTIAL
000013 ACCESS MODE IS SEQUENTIAL
000014 FILE STATUS IS FS.
000015 DATA DIVISION.
000016 FILE SECTION.
000017 FD KSDFILE.
000018 01 KSREC.
000019 02 KEID PIC X(4).
000020 02 FILLER PIC X(2).
000021 02 KENAME PIC 9(7).
000022 02 FILLER PIC X(2).
000023 02 KESAL PIC 9(3).
000024 02 FILLER PIC X(62).
000025 FD PSFILE.
000026 01 PSREC.
000027 02 E-ID PIC X(4).
000028 02 FILLER PIC X(2).
000029 02 ENAME PIC 9(7).
000030 02 FILLER PIC X(2).
000031 02 ESAL PIC 9(3).
000032 02 FILLER PIC X(62).
000033 WORKING-STORAGE SECTION.
000034 01 KFS PIC 9(2).
000035 01 FS PIC 9(2).
000036 PROCEDURE DIVISION.
000037 OPEN INPUT KSDFILE.
000038 DISPLAY KFS.
000039 OPEN OUTPUT PSFILE.
000040 DISPLAY FS.
000041 PERFORM PARA-WRITE UNTIL KFS = 10.
000042 CLOSE KSDFILE PSFILE.
000043 STOP RUN.
000044 PARA-WRITE.
000045 READ KSDFILE INTO PSREC.
000046 WRITE PSREC.
000047 DISPLAY PSREC.
000001 ID DIVISION.
000002 PROGRAM-ID. KSDTOKSD.
000003 ENVIRONMENT DIVISION.
000004 INPUT-OUTPUT SECTION.
000005 FILE-CONTROL.
000006 SELECT KSDFILE1 ASSIGN TO KDR1
000007 ORGANIZATION IS INDEXED
000008 ACCESS MODE IS SEQUENTIAL
000009 RECORD KEY IS EID1
000010 FILE STATUS IS KFS1.
000011 SELECT KSDFILE2 ASSIGN TO KDR2
000012 ORGANIZATION IS INDEXED
000013 ACCESS MODE IS SEQUENTIAL
000014 RECORD KEY IS EID2
000015 FILE STATUS IS KFS2.
000016 DATA DIVISION.
000017 FILE SECTION.
000018 FD KSDFILE1.
000019 01 KSREC1.
000020 02 EID1 PIC X(4).
000021 02 FILLER PIC X(2).
000022 02 KENAME1 PIC 9(7).
000023 02 FILLER PIC X(2).
000024 02 KESAL1 PIC 9(3).
000025 02 FILLER PIC X(62).
000026 FD KSDFILE2.
000027 01 KSREC2.
000028 02 EID2 PIC X(4).
000029 02 FILLER PIC X(2).
000030 02 KENAME2 PIC 9(7).
000031 02 FILLER PIC X(2).
000032 02 KESAL2 PIC 9(3).
000033 02 FILLER PIC X(62).
000034 WORKING-STORAGE SECTION.
000035 01 KFS1 PIC 9(2).
000036 01 KFS2 PIC 9(2).
000037 PROCEDURE DIVISION.
000038 OPEN INPUT KSDFILE1.
000039 DISPLAY KFS1.
000040 OPEN OUTPUT KSDFILE2.
000041 DISPLAY KFS2.
000042 PERFORM PARA-WRITE UNTIL KFS1 = 10.
000043 CLOSE KSDFILE1 KSDFILE2.
000044 STOP RUN.
000045 PARA-WRITE.
000046 READ KSDFILE1 INTO KSREC2.
000047 WRITE KSREC2.
000048 DISPLAY KSREC2.
000001 ID DIVISION.
000002 PROGRAM-ID. KSD2RRDS.
000003 ENVIRONMENT DIVISION.
000004 INPUT-OUTPUT SECTION.
000005 FILE-CONTROL.
000006 SELECT KSDFILE1 ASSIGN TO KDR1
000007 ORGANIZATION IS INDEXED
000008 ACCESS MODE IS RANDOM
000009 RECORD KEY IS EID1
000010 FILE STATUS IS KFS1.
000011 SELECT RDSFILE2 ASSIGN TO RDR2
000012 ORGANIZATION IS RELATIVE
000013 ACCESS MODE IS SEQUENTIAL
000014 FILE STATUS IS RFS2.
000015 DATA DIVISION.
000016 FILE SECTION.
000018 01 KSREC1.
000019 02 EID1 PIC X(4).
000020 02 FILLER PIC X(2).
000021 02 KENAME1 PIC 9(7).
000022 02 FILLER PIC X(2).
000023 02 KESAL1 PIC 9(3).
000024 02 FILLER PIC X(62).
000025 FD RDSFILE2.
000026 01 RSREC2.
000027 02 EID2 PIC X(4).
000028 02 FILLER PIC X(2).
000029 02 KENAME2 PIC 9(7).
000030 02 FILLER PIC X(2).
000031 02 KESAL2 PIC 9(3).
000032 02 FILLER PIC X(62).
000033 WORKING-STORAGE SECTION.
000034 01 KFS1 PIC 9(2).
000035 01 RFS2 PIC 9(2).
000036 PROCEDURE DIVISION.
000037 OPEN INPUT KSDFILE1.
000038 DISPLAY KFS1.
000039 OPEN OUTPUT RDSFILE2.
000040 DISPLAY RFS2.
000041 PERFORM PARA-WRITE UNTIL KFS1 = 10.
000042 CLOSE KSDFILE1 RDSFILE2.
000043 STOP RUN.
000044 PARA-WRITE.
000045 READ KSDFILE1 INTO RSREC2.
000046 WRITE RSREC2.
000047 DISPLAY RSREC2.
000001 ID DIVISION.
000002 PROGRAM-ID. KSD2RRD1.
000003 ENVIRONMENT DIVISION.
000004 INPUT-OUTPUT SECTION.
000005 FILE-CONTROL.
000006 SELECT KSDFILE1 ASSIGN TO KDR1
000007 ORGANIZATION IS INDEXED
000008 ACCESS MODE IS RANDOM
000009 RECORD KEY IS EID1
000010 FILE STATUS IS KFS1.
000011 SELECT RDSFILE2 ASSIGN TO RDR2
000012 ORGANIZATION IS RELATIVE
000013 ACCESS MODE IS SEQUENTIAL
000014 FILE STATUS IS RFS2.
000015 DATA DIVISION.
000016 FILE SECTION.
000017 FD KSDFILE1.
000018 01 KSREC1.
000019 02 EID1 PIC X(4).
000020 02 FILLER PIC X(2).
000021 02 KENAME1 PIC 9(7).
000022 02 FILLER PIC X(2).
000023 02 KESAL1 PIC 9(3).
000024 02 FILLER PIC X(62).
000025 FD RDSFILE2.
000026 01 RSREC2.
000027 02 EID2 PIC X(4).
000028 02 FILLER PIC X(2).
000029 02 KENAME2 PIC 9(7).
000030 02 FILLER PIC X(2).
000031 02 KESAL2 PIC 9(3).
000032 02 FILLER PIC X(62).
000033 WORKING-STORAGE SECTION.
000034 01 KFS1 PIC 9(2).
000035 01 RFS2 PIC 9(2).
000036 PROCEDURE DIVISION.
000037 OPEN INPUT KSDFILE1.
000038 DISPLAY KFS1.
000039 OPEN OUTPUT RDSFILE2.
000040 DISPLAY RFS2.
000041 PERFORM PARA-WRITE.
000042 CLOSE KSDFILE1 RDSFILE2.
000043 STOP RUN.
000044 PARA-WRITE.
000045 READ KSDFILE1 INTO RSREC2 KEY IS EID1.
000046 WRITE RSREC2.
000047 DISPLAY RSREC2.
000001 ID DIVISION.
000002 PROGRAM-ID. RRD2RRDS.
000003 ENVIRONMENT DIVISION.
000004 INPUT-OUTPUT SECTION.
000005 FILE-CONTROL.
000006 SELECT RRDFILE1 ASSIGN TO RDR1
000007 ORGANIZATION IS RELATIVE
000008 ACCESS MODE IS SEQUENTIAL
000009 FILE STATUS IS RFS1.
000010 SELECT RRDFILE2 ASSIGN TO RDR2
000011 ORGANIZATION IS RELATIVE
000012 ACCESS MODE IS SEQUENTIAL
000013 FILE STATUS IS RFS2.
000014 DATA DIVISION.
000015 FILE SECTION.
000016 FD RRDFILE1.
000017 01 RSREC1.
000018 02 EID1 PIC X(4).
000019 02 FILLER PIC X(2).
000020 02 KENAME1 PIC 9(7).
000021 02 FILLER PIC X(2).
000022 02 KESAL1 PIC 9(3).
000023 02 FILLER PIC X(62).
000024 FD RRDFILE2.
000025 01 RSREC2.
000026 02 EID2 PIC X(4).
000027 02 FILLER PIC X(2).
000028 02 KENAME2 PIC 9(7).
000029 02 FILLER PIC X(2).
000030 02 KESAL2 PIC 9(3).
000031 02 FILLER PIC X(62).
000032 WORKING-STORAGE
SECTION.
000033 01 RFS1 PIC 9(2).
000034 01 RFS2 PIC 9(2).
000035 PROCEDURE DIVISION.
000036 OPEN INPUT RRDFILE1.
000037 DISPLAY RFS1.
000038 OPEN OUTPUT RRDFILE2.
000039 DISPLAY RFS2.
000040 PERFORM PARA-WRITE UNTIL RFS1 = 10.
000041 CLOSE RRDFILE1 RRDFILE2.
000042 STOP RUN.
000043 PARA-WRITE.
000044 READ RRDFILE1 INTO RSREC2.
000045 WRITE RSREC2.
000046 DISPLAY RSREC2.
000001 ID DIVISION.
000002 PROGRAM-ID. KSDRRDDY.
000003 ENVIRONMENT DIVISION.
000004 INPUT-OUTPUT SECTION.
000005 FILE-CONTROL.
000006 SELECT KSDFILE1 ASSIGN TO KDR1
000007 ORGANIZATION IS INDEXED
000008 ACCESS MODE IS DYNAMIC
000009 RECORD KEY IS EID1
000010 FILE STATUS IS KFS1.
000011 SELECT RDSFILE2 ASSIGN TO RDR2
000012 ORGANIZATION IS RELATIVE
000013 ACCESS MODE IS SEQUENTIAL
000014 FILE STATUS IS RFS2.
000015 DATA DIVISION.
000016 FILE SECTION.
000017 FD KSDFILE1.
000018 01 KSREC1.
000019 02 EID1 PIC X(4).
000020 02 FILLER PIC X(2).
000021 02 KENAME1 PIC 9(7).
000022 02 FILLER PIC X(2).
000023 02 KESAL1 PIC 9(3).
000024 02 FILLER PIC X(62).
000025 FD RDSFILE2.
000026 01 RSREC2.
000027 02 EID2 PIC X(4).
000028 02 FILLER PIC X(2).
000029 02 KENAME2 PIC 9(7).
000030 02 FILLER PIC X(2).
000031 02 KESAL2 PIC 9(3).
000032 02 FILLER PIC X(62).
000033 WORKING-STORAGE
SECTION.
000034 01 KFS1 PIC 9(2).
000035 01 RFS2 PIC 9(2).
000036 01 EOF PIC A.
000037 PROCEDURE DIVISION.
000038 OPEN INPUT KSDFILE1.
000039 DISPLAY KFS1.
000040 MOVE 1002 TO EID1.
000041 START KSDFILE1 KEY IS GREATER THAN EID1 INVALID KEY
000042 DISPLAY 'RIGHT KEY'
000043 NOT INVALID KEY DISPLAY 'WRONG KEY'
000044 END-START.
000045 OPEN OUTPUT RDSFILE2.
000046 DISPLAY RFS2.
000047 PERFORM PARA-WRITE UNTIL EOF = 'Y'.
000048 CLOSE KSDFILE1 RDSFILE2.
000049 STOP RUN.
000050 PARA-WRITE.
000051 READ KSDFILE1 NEXT INTO RSREC2 AT END MOVE 'Y' TO EOF.
000052 WRITE RSREC2.
000053 DISPLAY RSREC2.
000001 ID DIVISION.
000002 PROGRAM-ID. RRD2KSD.
000003 ENVIRONMENT DIVISION.
000004 INPUT-OUTPUT SECTION.
000005 FILE-CONTROL.
000006 SELECT RRDFILE ASSIGN TO RDR
000007 ORGANIZATION IS RELATIVE
000008 ACCESS MODE IS SEQUENTIAL
000009 RELATIVE KEY IS RRN1
000010 FILE STATUS IS RFS.
000011 SELECT KSDFILE ASSIGN TO KDR
000012 ORGANIZATION IS INDEXED
000013 ACCESS MODE IS SEQUENTIAL
000014 RECORD KEY IS EID2
000015 FILE STATUS IS KFS.
000016 DATA DIVISION.
000017 FILE SECTION.
000018 FD RRDFILE.
000019 01 RSREC1.
000020 02 EID1 PIC X(4).
000021 02 FILLER PIC X(2).
000022 02 KENAME1 PIC 9(7).
000023 02 FILLER PIC X(2).
000024 02 KESAL1 PIC 9(3).
000025 02 FILLER PIC X(62).
000026 FD KSDFILE.
000027 01 KSREC2.
000028 02 EID2 PIC X(4).
000029 02 FILLER PIC X(2).
000030 02 KENAME2 PIC 9(7).
000031 02 FILLER PIC X(2).
000032 02 KESAL2 PIC 9(3).
000033 02 FILLER PIC X(62).
000034 WORKING-STORAGE SECTION.
000035 01 RFS PIC 9(2).
000036 01 KFS PIC 9(2).
000037 01 RRN1 PIC 9.
000038 PROCEDURE DIVISION.
000039 OPEN INPUT RRDFILE.
000040 DISPLAY RFS.
000041 OPEN OUTPUT KSDFILE.
000042 DISPLAY KFS.
000043 MOVE 2 TO RRN1.
000044 PERFORM PARA-WRITE UNTIL RFS = 10.
000045 CLOSE RRDFILE KSDFILE.
000046 STOP RUN.
000047 PARA-WRITE.
000048 READ RRDFILE INTO KSREC2.
000049 WRITE KSREC2.
000050 DISPLAY KSREC2.

You might also like