bab 3 - file sequenstial, file inseks dan file relatif

8
Bab 3 – File Sequential, File Indeks dan File Relatif 27 Modul Praktikum Algoritma & Pemrograman 3 – IT045123 BAB 3 FILE SEQUENTIAL, FILE INDEKS DAN FILE RELATIF TUJUAN PRAKTIKUM 1. Mengetahui organisasi file pada program COBOL. 2. Mengetahui pemakaian file pada Program COBOL berupa File Sequential, File Indeks, dan File Relatif. TEORI PENUNJANG 3.1 File Sequential Organisasi file secara urut (sequential file) memungkinkan pengaksesan record di file secara berurutan. Urutan data record yang direkamkan di file sama dengan urutan sewaktu data itu direkamkan. Urutan tidak berubah walaupun data baru ditambahkan. Data baru yang direkamkan akan menempati urutan record selanjutnya setelah record terakhir yang telah ada. Ada 2 macam organisasi file secara urut, yaitu: 1. Sequential mempunyai panjang record yang tetap, 2. Line Sequential bisa berbeda-beda, setiap record terdapat pembatas berupa carriage return (CR) dan line feed (LF). 3.1.1 Definisi ENVIRONMENT DIVISION pada File Sequential Pada ENVIRONMENT DIVISION yang membedakan adalah dalam Input-Output Section pada file control. INPUT-OUTPUT SECTION FILE-CONTROL SELECT nama-file-1 ASSIGN TO DISK [ ORGANIZATION IS [LINE] SEQUENTIAL ] [ ACCESS MODE IS SEQUENTIAL ] [ FILE STATUS IS nama-data-1 ]

Upload: muhammad-raditya-noor

Post on 04-Aug-2015

122 views

Category:

Documents


5 download

TRANSCRIPT

Page 1: Bab 3 - File Sequenstial, File Inseks Dan File Relatif

Bab 3 – File Sequential, File Indeks dan File Relatif 27

Modul Praktikum Algoritma & Pemrograman 3 – IT045123

BAB 3

FILE SEQUENTIAL, FILE INDEKS DAN FILE RELATIF

TUJUAN PRAKTIKUM

1. Mengetahui organisasi file pada program COBOL.

2. Mengetahui pemakaian file pada Program COBOL berupa File Sequential,

File Indeks, dan File Relatif.

TEORI PENUNJANG

3.1 File Sequential

Organisasi file secara urut (sequential file) memungkinkan pengaksesan

record di file secara berurutan.

Urutan data record yang direkamkan di file sama dengan urutan sewaktu data

itu direkamkan. Urutan tidak berubah walaupun data baru ditambahkan. Data baru

yang direkamkan akan menempati urutan record selanjutnya setelah record

terakhir yang telah ada. Ada 2 macam organisasi file secara urut, yaitu:

1. Sequential à mempunyai panjang record yang tetap,

2. Line Sequential à bisa berbeda-beda, setiap record terdapat pembatas

berupa carriage return (CR) dan line feed (LF).

3.1.1 Definisi ENVIRONMENT DIVISION pada File Sequential

Pada ENVIRONMENT DIVISION yang membedakan adalah dalam

Input-Output Section pada file control.

INPUT -OUTPUT SECTION FILE-CONTROL

SELECT nama-file-1 ASSIGN TO DISK [ ORGANIZATION IS [LINE] SEQUENTIAL ] [ ACCESS MODE IS SEQUENTIAL ] [ FILE STATUS IS nama-data-1 ]

Page 2: Bab 3 - File Sequenstial, File Inseks Dan File Relatif

Bab 3 – File Sequential, File Indeks dan File Relatif 28

Modul Praktikum Algoritma & Pemrograman 3 – IT045123

3.1.2 Definisi DATA DIVISION pada File Sequential

DATA DIVISION pada file urut harus mengandung file description entry

(FD) sebagai berikut:

FD nama-file-1 LABEL { RECORD {ARE/IS} } {STANDARD} VALUE OF FILE-ID IS { nama-data-1 }

3.1.3 Statement untuk Operasi File Sequential

Pernyataan dalam Cobol yang berhubungan dengan operasi file sequential adalah:

1. Pernyataan OPEN

§ OPEN INPUT digunakan untuk membuka file yang isinya hendak dibaca.

§ OPEN OUTPUT digunakan untuk menciptakan file baru.

§ OPEN I-O memungkinkan data record di dalam file diperbaharui.

§ OPEN EXTEND digunakan untuk membuka file sequential dan isinya

dapat ditambah.

INPUT nam a-file-1……. OPEN OUTPUT nama-file-2……

I-O nama-file-3…… Extend nama-file-4……

2. Pernyataan CLOSE

Pernyataan ini digunakan untuk menutup file atau mengakhiri pemrosesan pada

file.

Bentuk Umum :

CLOSE { nama-file-1 } …

3. Pernyataan READ

Pernyataan ini digunakan untuk membaca data record yang dilakukan secara

berurutan (sequential). READ hanya dapat digunakan pada file yang dibuka

dengan model OPEN INPUT atau OPEN I-O.

Bentuk Umum :

READ nama-file-1 RECORD [ INTO nama-data ] [ AT END statement-imperative-1 ]

Frase RECORD digunakan sebagai dokumentasi.

Page 3: Bab 3 - File Sequenstial, File Inseks Dan File Relatif

Bab 3 – File Sequential, File Indeks dan File Relatif 29

Modul Praktikum Algoritma & Pemrograman 3 – IT045123

Frase INTO digunakan untuk menempatkan data record yang dibaca ke

identifier1.

4. Pernyataan REWRITE

Pernyataan REWRITE digunakan untuk mengubah data record yang sudah ada

pada file. Pernyataan ini hanya dapat digunakan pada file disk yang dibuka

dengan model OPEN I-O.

Bentuk Umum :

REWRITE nama-record-1 [ FROM nama-data ]

Jika frase FROM disertakan, data dari identifier -1 yang akan menggantikan

record lama.

5. Pernyataan WRITE

Pernyataan ini digunakan untuk menuliskan data record baru ke file. Statement

WRITE hanya dapat digunakan pada file yang dibuka dengan model OPEN

OUTPUT atau OPEN EXTEND.

Bentuk Umum :

WRITE nama-record-1 [ FROM nama-data-1 ]

3.1.4 FILE STATUS

Status file biasa dipakai dalam program untuk mendeteksi keberhasilan

operasi pada file. Misalnya pada operasi OPEN INPUT keberadaan file yang

dibuka bisa diperiksa melalui nilai pada file status.

KODE FILE STATUS :

00 : Operasi berhasil

10 : Akhir file

30 : File tidak ada

34 : Disk penuh

39 : Deskripsi antara file aktual dan program tidak sama

91 : Struktur rusak

Page 4: Bab 3 - File Sequenstial, File Inseks Dan File Relatif

Bab 3 – File Sequential, File Indeks dan File Relatif 30

Modul Praktikum Algoritma & Pemrograman 3 – IT045123

3.2 File Indeks

File indeks merupakan jenis file yang banyak dipakai dalam program

aplikasi. Dengan menggunakan file index memiliki banyak kelebihan, antara lain:

1. Pembacaan data dapat dilakukan dengan cepat.

2. Data dapat diurutkan secara ascending berdasarkan sebuah field atau

sejumlah field.

3. Isi file dapat dimodifikasi atau dihapus dengan cepat tanpa harus

mengakses record-record lain.

Pengaksesan pada file index dapat dilakukan dengan cepat disebabkan

adanya kunci (key). Pada MS-Cobol, key dari record disimpan dalam file yang

terpisah dengan file data record. File key mempunyai extention berupa .KEY.

Kunci utama dari record pada file index bersifat unik yang artinya setiap kunci

record memiliki nilai yang berlainan.

3.2.1 Definisi ENVIRONMENT DIVISION pada File Indeks

Definisi awal dari semua jenis file terletak pada ENVIRONMENT

DIVISION dalam paragraf FILE CONTROL sama seperti file sequential.

FILE-CONTROL

SELECT nama-file-1 ASSIGN TO DISK ORGANIZATION IS INDEXED ACCESS MODE IS { SEQUENTIAL / RANDOM / DYNAMIC }

RECORD KEY IS nama-data-1 [FILE STATUS IS nama-data-3]

File indeks ditentukan oleh statement entri : ORGANIZATION IS INDEXED.

Untuk ACCESS MODE yang digunakan adalah :

1. SEQUENTIAL, menyatakan bahwa pengaksesan secara berurut.

2. RANDOM, menyatakan pengaksesan record hanya dapat

dilakukan secara random, yaitu dengan cara mengisikan nilai

kunci record.

3. DYNAMIC, memungkinkan pengaksesan secara random dan

sequential.

Page 5: Bab 3 - File Sequenstial, File Inseks Dan File Relatif

Bab 3 – File Sequential, File Indeks dan File Relatif 31

Modul Praktikum Algoritma & Pemrograman 3 – IT045123

Klausa RECORD KEY digunakan untuk menyatakan nama data yang menjadi

kunci record.

Klausa FILE STATUS digunakan untuk menyatakan nama data guna menampung

status dari operasi pada file index. Misalnya untuk mengetahui ada tidaknya file

pada disk, melihat keberhasilan penulisan ke disk dan sebagainya.

3.2.2 Definisi DATA DIVISION pada File Indeks

Data Division pada file urut harus mengandung file description entry (FD)

sebagai berikut :

FD nama-file-1 LABEL { RECORD {ARE/IS} } {STANDARD} VALUE OF FILE-ID IS { nama-data-1 }

3.2.3 Statement untuk Operasi File Indeks

Statement untuk operasi File Indeks adalah :

1. Pernyataan OPEN

§ OPEN INPUT digunakan untuk membuka file yang isinya hendak dibaca.

§ OPEN OUTPUT digunakan untuk menciptakan file baru.

§ OPEN I-O memungkinkan data record di dalam file diperbaharui.

INPUT nama-file-1…….

OPEN OUTPUT nama-file-2…… I-O nama-file-3……

2. Pernyataan CLOSE

Pernyataan ini digunakan untuk menutup file atau mengakhiri pemrosesan pada

file.

CLOSE { nama-file-1 } …

3. Pernyataan WRITE

Pernyataan ini berguna untuk merekamkan data pada record tertentu di file

yang telah dibuka.

WRITE nama-record-1 [ FROM nama-data-1 ]

Page 6: Bab 3 - File Sequenstial, File Inseks Dan File Relatif

Bab 3 – File Sequential, File Indeks dan File Relatif 32

Modul Praktikum Algoritma & Pemrograman 3 – IT045123

4. Pernyataan READ

Pernyataan ini digunakan untuk membaca record yang ada di file.

Ada 2 bentuk statement READ:

Bentuk 1 :

READ nama-file [ next ] RECORD [ into nama-data ] [ AT END statement-imperatip ]

Bentuk 2 :

READ nama-file [ next ] RECORD [ into nama-data-1 ] [ KEY is nama-data-2 ] [ INVALID KEY statement-imperatip ]

5. Pernyataan START

Statement start digunakan untuk menempatkan pembacaan record mulai pada

record yang mengandung nilai field kunci tertentu.

Bentuk umumnya :

is EQUAL to is = is GREATHER THAN KEY is > is NT LESS THAN is NOT > [ INVALID KEY statement-imperatip ]

3.3 File Relatif

Organisasi file secara relatif adalah file yang recordnya dibedakan dengan

dasar suatu nomor record relatif. Nomor record relatif dapat berkisar dari nomor

record 1 sampai dengan 32767. Nomor record relatif ini tidak turut direkamkan

dalam file, sehingga panjang recordnya adalah sepanjang record yang ditentukan

tanpa nomor record relatif. Panjang record untuk file relatif adalah tetap.

3.3.1 IDENTIFICATION DIVISION pada File Relatif

ID pada file relatif sama dengan ID pada program yang tidak

menggunakan file untuk merekamkan datanya.

START nama-file Nama-data

Page 7: Bab 3 - File Sequenstial, File Inseks Dan File Relatif

Bab 3 – File Sequential, File Indeks dan File Relatif 33

Modul Praktikum Algoritma & Pemrograman 3 – IT045123

3.3.2 ENVIRONMENT DIVISION pada File Relatif

FILE-CONTROL SELECT nama-file ASSIGN TO DISK

; ORGANIZATION IS RELATIVE S EQUENTIAL [ , RELATIVE KEY IS nama-data-1 ]

[ ; ACCESS MODE IS RANDOM DYNAMIC [ , RELATIVE KEY IS nama-data-1 ]

[ ; FILE STATUS IS nama-data-2 ]

3.3.3 DATA DIVISION pada File Relatif

LABEL RECORD IS STANDARD VALUE OF FILE-ID IS nama-file di label

3.3.4 PROCEDURE DIVISION pada File Relatif

Statement khusus yang dipergunakan pada file relatif di dalam

PROCEDURE DIVISION sama dengan yang ada di file index, yaitu dapat

dibentuk dari verb OPEN, READ, CLOSE, WRITE, REWRITE, START DAN

DELETE.

1. OPEN verb

INPUT nama-file-1 [ , nama-file-2 ] …. OPEN OUTPUT nama-file-3 [ , nama-file-4 ] …. I-O nama-file-5 [ , nama-file6 ] ….

2. CLOSE verb

CLOSE nama-file-1 [ WITH LOCK ] [ , nama-file-2 [ WITH LOCK ]]

3. WRITE verb

WRITE nama-record [ FROM nama-data ] [ ; INVALID KEY statement-imperatip ]

4. READ verb ada 2 yaitu :

Bentuk 1 :

READ nama-file [ NEXT ] RECORD [ INTO nama-data ] [ ;AT END statement imperatip ]

Page 8: Bab 3 - File Sequenstial, File Inseks Dan File Relatif

Bab 3 – File Sequential, File Indeks dan File Relatif 34

Modul Praktikum Algoritma & Pemrograman 3 – IT045123

Bentuk 2 :

READ nama-file RECORD [ INTO nam a-data ] [ ;INVALID KEY statement imperatip ]

5. START verb

is EQUAL to is = is GREATHER THAN KEY is > is NT LESS THAN is NOT > [ INVALID KEY statement-imperatip ]

6. DELETE verb

DELETE nama-file RECORD [ ;IN VALID KEY statement imperatip ]

LATIHAN

1. Apa yang dimaksud dengan organisasi file sequential, file indeks, dan file

relatif ?

2. Sebutkan & jelaskan statement untuk operasi file sequential ?

3. Sebutkan Status file pada file sequential ?

4. Sebutkan definisi Environment Division pada file Sequential, file indeks,

dan file relatif ?

5. Sebutkan kelebihan menggunakan file indeks ?

START nama-file Nama-data