Sabtu, 26 Desember 2009

FILE URUT (Sequential File)
1. PENDAHULUAN
Organisasi file secara urut memungkinkan pengaksesan record di file secara berurutan
Ada 2 macam organisasi file secara urut :
1. Bentuk organisasi SEQUENTIAL merupakan bentuk default file yang dibuat oleh program MS-COBOL
2. Bentuk organisasi LINE SEQUENTIAL yaitu organisasi file yang tiap recordnya diakhiri dengan carriage return atau pembatas line feed
FILE STATUS clause dipergunakan untuk menunjukkan jenis kesalahan yang terjadi dari suatu hasil proses operasi file.
Tabel 1. Nilai status organisasi file urut
Nilai Status
Jenis Kesalahan
00
Tidak terjadi kesalahan
10
Akhir dari file (End Of File)
30
File tidak ada (File not found)
34
Disk penuh ( Disk Space Full)
91
Struktur file rusak
Nilai status kesalahan dapat diseleksi pada :
• AT END option pada statement READ
• INVALID KEY option pada statement WRITE, READ, REWRITE, START atau DELETE
• DECLARATIVES region jika dipergunakan
Contoh 1 :
IDENTIFICATION DIVISION.
PROGRAM-ID. RELASI.
AUTHOR. KELAS 3KA.
ENVIRONMENT DIVISON.
INPUT-OUTPUT SECTION.
FILE-CONTROL.
SELECT REKAMAN ASSIGN TO DISK
FILE STATUS IS STATUS-SALAH
ORGANIZATION IS SEQUENTIAL.
2. DATA DIVISION pada FILE URUT
DATA DIVISION pada file urut harus mengandung file description entry sbb:
;LABEL RECORD IS STANDARD
RECORD ARE OMITTED
{;VALUE OF FILE-ID IS nama-file di label}
Contoh 2.
IDENTIFICATION DIVISION.
PROGRAM-ID. RELASI.
AUTHOR. KELAS 3KA.
ENVIRONMENT DIVISON.
INPUT-OUTPUT SECTION.
FILE-CONTROL.
SELECT REKAMAN ASSIGN TO DISK
FILE STATUS IS STATUS-SALAH
ORGANIZATION IS SEQUENTIAL.
SELECT CETAKAN ASSIGN TO PRINTER.
DATA DIVISON.
FILE SECTION.
FD REKAMAN
LABEL RECORD IS STANDARD
VALUE OF FILE-ID IS ‘NAMA.DAT’
DATA RECORD IS RECORD-RELASI.
01 RECORD-RELASI.
02 NAMA-RELASI PIC X(25).
02 ALAMAT-RELASI PIC X(25).
02 KOTA-RELASI PIC X(15).
02 TELP-RELASI PIC X(8).
FD CETAKAN
LABEL RECORD IS OMITTED
DATA RECORD IS BARIS-CETAK.
01 BARIS-CETAK.
WORKING-STORAGE SECTION.
77 STATUS-SALAH PIC XX.
3. PROCEDURE DIVISION pada FILE URUT
a. OPEN verb
Digunakan untuk membuka file yang akan diakses.
Bentuk Umum statement OPEN
INPUT nama-file-1 [, nama-file-2] …
INPUT nama-file-3 [, nama-file-4] …
OPEN I-O nama-file-5 [, nama-file-6] …
EXTEND nama-file-7 [, nama-file-8] …
Contoh 3.
OPEN INPUT REKAMAN
→ Menunjukkan file REKAMAN dibuka sbg file input, data akan dibaca dari file ini
OPEN INPUT REKAMAN
PIUTANG
→ Menunjukkan dua file yang akan dibuka sebagai file input, yaitu file REKAMAN
data file PIUTANG
OPEN OUTPUT BARANG
→ File BARANG dibuka sebagai file output, data akan direkamkan pada file ini
OPEN INPUT REKAMAN
OUTPUT CETAKAN
→ Menunjukkan file REKAMAN dibuka sebagai file input dan file CETAKAN dibuka
sebagai file bersamaan
OPEN I-O HUTANG
→ Menunjukkan file HUTANG dibuka sebagai file input dan file output sekaligus
b. CLOSE verb
Digunakan untuk menutup file untuk mencegah rusaknya struktur file.
Bentuk Umum statement CLOSE
CLOSE nama-file-1 [WITH LOCK][, nama-file-2 [WTH LOCK]]
LOCK digunakan jika diingikan file yang sudah ditutup tidak dapat dibuka kembali pada saat proses masih berlangsung.
Contoh 4.
CLOSE REKAMAN, CETAKAN.
c. WRITE verb
Digunakan untuk merekamkan data pada record tertentu di file yang telah dibuka dengan statement OPEN
Bentuk Umum statement WRITE
WRITE nama-record [FROM nama-data-1]
BEFORE ADVANCING nama-file-2 [LINE]
AFTER integer [LINES]
PAGE
AT END of PAGE statement-imperatif
EOP
Contoh 5.
WRITE BARIS-CETAK FROM JUDUL-TABEL
AFTER ADVANCING PAGE.
JUDUL-TABEL akan dicetak pada print-file yaitu di printer setelah berganti halaman baru.
Contoh 6.
IDENTIFICATION DIVISION.
PROGRAM-ID. RELASI.
AUTHOR. KELAS 3KA.
ENVIRONMENT DIVISON.
INPUT-OUTPUT SECTION.
FILE-CONTROL.
SELECT REKAMAN ASSIGN TO DISK
FILE STATUS IS STATUS-SALAH
ORGANIZATION IS SEQUENTIAL.
SELECT CETAKAN ASSIGN TO PRINTER.
DATA DIVISON.
FILE SECTION.
FD REKAMAN
LABEL RECORD IS STANDARD
VALUE OF FILE-ID IS ‘NAMA.DAT’
DATA RECORD IS RECORD-RELASI.
01 RECORD-RELASI.
02 NAMA-RELASI PIC X(25).
02 ALAMAT-RELASI PIC X(25).
02 KOTA-RELASI PIC X(15).
02 TELP-RELASI PIC X(8).
FD CETAKAN
LABEL RECORD IS OMITTED
DATA RECORD IS BARIS-CETAK.
01 BARIS-CETAK.
WORKING-STORAGE SECTION.
77 STATUS-SALAH PIC XX.
01 RECORD-RELASI-IN
02 NAMA-IN PIC X(25).
02 ALAMAT-IN PIC X(25).
02 KOTA-IN PIC X(15).
02 TELP-IN PIC X(8).
Untuk merekamkan data relasi pada record file yang berupa disk-file dalam PROCEDURE DIVISION :
REKAMKAN.
WRITE RECORD-RELASI.
Atau
REKAMKAN.
WRITE RECORD-RELASI FROM RECORD-RELASI-IN.
d. READ verb
Digunakan untuk membaca record yang ada di file
Bentuk Umum statement READ
READ nama-file RECORD [INTO nama-data]
[;AT END statement-imperatif]
Perbedaan pokok statement READ dan WRITE adalah :
• WRITE diikuti nama-record dengan level number 01
• READ diikuti nama-file
Contoh 7.
BUKA-FILE.
OPEN INPUT FILE-KAS.
BACA-DATA.
READ REKAMAN INTO RECORD-RELASI-OUT
AT END GO TO HABIS.
TAMPILKAN.
DISPLAY RECORD-RELASI-OUT
GO TO BACA-DATA.
HABIS.
CLOSE FILE-KAS
STOP RUN.
e. REWRITE verb
Digunakan untuk merekam ulang record yang sudah pernah direkam (update)
Bentuk Umum statement REWRITE
REWRITE nama-record [FROM nama-data]
Contoh 8.
REWRITE RECORD-RELASI.
Record RECORD-RELASI akan direkamkan ulang dengan nilai baru yang ada pada lokasi storage RECORD-RELASI.
REWRITE RECORD-RELASI FROM RECORD-RELASI-IN.
Record RECORD-RELASI akan direkamkan ulang dengan nilai baru yang ada pada lokasi storage RECORD-RELASI-IN.
4. CONTOH PENGGUNAAN FILE URUT
4.1 Memasukkan Data
4.2 Menambah Data
4.3 Mencetak Semua Data
4.4 Mencetak Data Tertentu
4.5 Koreksi Data