Pelajaran modul (1/2)
Definisi File & Kontrol File
Di COBOL, mengelola file eksternal (seperti arsip teks atau catatan biner pada disk) adalah salah satu fitur terpenting untuk aplikasi batch perusahaan. Karena COBOL dirancang jauh sebelum database modern, file disk bertindak sebagai penyimpanan utama.
Menghubungkan file fisik yang disimpan di sistem operasi dengan variabel internal program terjadi dalam dua tahap:
- Asosiasi logis-fisik dalam
ENVIRONMENT DIVISION. - Definisi record data di
DATA DIVISION.
1. Asosiasi: FILE-CONTROL dan SELECT ASSIGN
Dalam bab yang didedikasikan untuk struktur program, kita menjelajahi ENVIRONMENT DIVISION. Di dalamnya, INPUT-OUTPUT SECTION berisi paragraf FILE-CONTROL, yang mendeklarasikan file eksternal yang digunakan oleh program.
Untuk mengaitkan file logis dalam program (misalnya, SALES-FILE) dengan file fisik nyata pada disk (misalnya, sales.dat), gunakan pernyataan SELECT ... ASSIGN TO ...:
ENVIRONMENT DIVISION.
INPUT-OUTPUT SECTION.
FILE-CONTROL.
SELECT SALES-FILE ASSIGN TO "sales.dat"
ORGANIZATION IS LINE SEQUENTIAL.SELECT SALES-FILE: Mendefinisikan nama logis yang akan digunakan program untuk mereferensikan file.ASSIGN TO "sales.dat": Menentukan nama file fisik sebenarnya (atau jalur) pada disk.ORGANIZATION IS LINE SEQUENTIAL(opsional): Menunjukkan bahwa file tersebut adalah file teks biasa yang setiap barisnya mewakili catatan (dipisahkan dengan karakter baris baru).
2. Deklarasi : BAGIAN FILE dan FD
Setelah mengaitkan file di ENVIRONMENT DIVISION, kita harus menentukan struktur catatannya di DATA DIVISION. Untuk melakukan ini, kami menggunakan bagian khusus yang disebut FILE SECTION (yang mendahului WORKING-STORAGE SECTION).
Setiap file yang dipilih harus memiliki entri FD (Deskripsi File) yang mendeklarasikan struktur rekaman:
DATA DIVISION.
FILE SECTION.
FD SALES-FILE.
01 SALES-RECORD.
05 EMP-ID PIC 9(5).
05 EMP-NAME PIC X(20).
05 EMP-SALARY PIC 9(6)V99.FD SALES-FILE.: Mengidentifikasi deskripsi file untuk nama logisSALES-FILE. Perhatikan bahwa ini diakhiri dengan tanda titik.01 SALES-RECORD.: Menentukan struktur grup (catatan) yang terkait dengan file. Setiap operasi baca/tulis akan bertukar data menggunakan struktur memori ini.
Cobalah
Lengkapi DIVISI LINGKUNGAN untuk mendeklarasikan BAGIAN INPUT-OUTPUT dan paragraf FILE-CONTROL, mengaitkan file logis SALES-FILE dengan file fisik 'sales.dat' menggunakan pernyataan SELECT ASSIGN.
Tunjukkan petunjuk
Tulis DIVISI LINGKUNGAN. dan BAGIAN INPUT-OUTPUT. pada kolom 8 (7 spasi), lalu FILE-CONTROL. di kolom 8, dan terakhir SELECT SALES-FILE ASSIGN TO 'sales.dat'. pada kolom 12 (11 spasi).
Solusi tersedia setelah 3 upaya
Deklarasikan DIVISI DATA dan BAGIAN FILE untuk program tersebut. Tentukan File Descriptor (FD) untuk SALES-FILE, kaitkan dengan catatan level 01 bernama SALES-RECORD yang berisi dua bidang bawahan: SALES-ID (4 digit numerik) dan SALES-AMOUNT (5 digit numerik dengan 2 desimal implisit).
Tunjukkan petunjuk
Gunakan DIVISI DATA. dan BAGIAN FILE. pada kolom 8, FD SALES-FILE. pada kolom 8 diikuti dengan 01 CATATAN PENJUALAN. di kolom 8, dan kolom 05 SALES-ID PIC 9(4). dan 05 JUMLAH PENJUALAN PIC 9(5)V99. di kolom 12 pada baris baru.
Solusi tersedia setelah 3 upaya