Teknik Pemrograman Terstruktur (COBOL)

Teknik Pemrograman Terstruktur (COBOL)

* DATA DIVISION *
Divisi ini menjelaskan tentang input & output data yg digunakan serta semua
keterangan ttg file, record, nama data serta bentuk format yg akan digunakan dalam
PROCEDURE DIVISION.
DATA DIVISION terdiri dari beberapa section :

I.



FILE SECTION



WORKING-STORAGE SECTION



SCREEN SECTION




LINKAGE SECTION



REPORT SECTION

FILE SECTION
Menerangkan tentang file yg dipakai dalam program, meliputi nama-file, cara perekaman,
jumlah record per block, jumlah karakter per record, label serta nama dari record tersebut.
Bentuk umum :

DATA DIVISION.
FILE SECTION.
FD nama-file
[ BLOCK CONTAINS [ int1 TO int2 ] { CHARACTERS/RECORDS } ]
[ RECORD CONTAINS [ int3 TO int4 ] CHARACTERS ]
LABEL {RECORD IS/RECORDS ARE} {STANDARD/OMITTED}

[VALUE OF FILE-ID IS nama-file-di-label ]
[DATA {RECORD IS/RECORDS ARE} nama-rec1 [ , nama-rec2] ]

Created by Rani Puspita / 2004/DATA DIVISION

1

Teknik Pemrograman Terstruktur (COBOL)
Keterangan :
 BLOCK CONTAINS clause
Menunjukkan ukuran record di dalam file untuk tiap-tiap blocknya. Clause ini
biasanya digunakan untuk file yg berupa tape magnetik, sifatnya optional. Bila tidak
ditulis maka dianggap setiap block berisi 1 record.
 RECORD CONTAINS clause
Menunjukkan banyaknya karakter untuk tiap-tiap record di dalam file. Jika clause ini
tidak ditulis, maka panjang record diambil dari record description entry. Jika panjang
record tetap, maka panjang record ini ditunjukkan oleh nilai dari int1.
 LABEL RECORD atau LABEL RECORDS clause
Menunjukkan apakah file yg dipergunakan mempunyai label atau tidak.
OMMITED digunakan untuk card-file atau print-file yang tidak mempunyai file.

STANDARD digunakan untuk disk-file yg mempunyai label
Clause ini harus ditulis jika FILE SECTION ada.
 VALUE OF FILE-ID clause
Berisi informasi mengenai file yg mempunyai label di disk. Label di disk ini berupa
suatu nama-file yg berisi data yg direkam di dalam disk tsb.
 DATA RECORD atau DATA RECORDS clause
Menunjukkan nama-record di dalam file, sifatnya optional.
II. WORKING-STORAGE SECTION
Section ini digunakan untuk pemesanan tempat di internal memori (STORAGE) yg
diperlukan pd proses program. Pemesanan tempat ini biasanya digunakan untuk :

 Bentuk, nilai dan nama data yg diperlukan di dalam proses yg belum disebutkan pd FILESECTION

 Persiapan penulisan judul. Format judul dipersiapkan terlebih dahulu pd WORKINGSTORAGE SECTION yg nantinya jika akan dicetak atau ditampilkan pd PROCEDURE
DIVISION menggunakan perintah WRITE atau DISPLAY.

 Pemesanan tempat untuk data output yg akan ditampilkan.

Created by Rani Puspita / 2004/DATA DIVISION


2

Teknik Pemrograman Terstruktur (COBOL)
Bentuk umum :

WORKING-STORAGE SECTION.
[77 level data description entry
[ record description entry

]
]

Keterangan :
 Data item individu ditunjukkan oleh level number 77 (hanya ada pd WORKINGSTORAGE SECTION), penulisan mulai dari Area A.
 Group data item (yg membentuk suatu record) diawali dg level number 01

III. SCREEN SECTION
Section ini digunakan untuk menunjukkan bentuk format dari layar terminal untuk
menampilkan atau memasukkan data.
Bentuk umum :


SCREEN SECTION.
Level-number [nama-layar]
[ BLANK SCREEN]
[ LINE NUMBER IS [PLUS] integer-1]
[ COLUMN NUMBER IS [PLUS] integer-2]
[ BLANK LINE]
[ BELL]
[ { UNDERLINE / REVERSE VIDEO / HIGHLIGHT / BLINK }]
[ VALUES IS literal-1]
[ {PICTURE / PIC }is karakter-string [FROM {literal-2/nama-data-1} /
USING nama-data-2]
[ BLANK WHEN ZERO]
[ AUTO]
[ SECURE]
[ REQUIRED]
[ FULL]

Created by Rani Puspita / 2004/DATA DIVISION


3

Teknik Pemrograman Terstruktur (COBOL)
Keterangan :


BLANK SCREEN Clause
Digunakan untuk membersihkan layar dan menempatkan cursor pd posisi kiri atas
( baris1, kolom1 )
Contoh :

IDENTIFICATION DIVISION.
PROGRAM – ID. PROGR.
AUTHOR. RANI.
ENVIRONMENT DIVISION.
SCREEN SECTION.
01 HAPUS-LAYAR.
02 BLANK SCREEN.
PROCEDURE DIVISION.
MEMBERSIHKAN-LAYAR.

DISPLAY HAPUS-LAYAR.
STOP RUN.


LINE NUMBER IS PLUS int1
Digunakan untuk menempatkan cursor pd posisi baris tertentu di layar.
Contoh :



2

LINE NUMBER IS 5 VALUE ‘INI DI BARIS 5’. atau

2

LINE 5 VALUE ‘INI DI BARIS 5’.

COLUMN NUMBER IS PLUS int2
Digunakan untuk menempatkan cursor pd posisi kolom tertentu di layar.

Contoh:
02 BLANK SCREEN
02 COLUMN 15 VALUE ‘FAKULTAS ILKOM’
02 COLUMN PLUS 2 VALUE ‘GUNADARMA’



BLANK LINE clause
Digunakan untuk menghapus tampilan pada baris tertentu di layar.
Contoh:
02 LINE 15 BLANK LINE.

Created by Rani Puspita / 2004/DATA DIVISION

4

Teknik Pemrograman Terstruktur (COBOL)




BELL clause
Digunakan untuk menimbulkan suara bel.
Contoh :
02 LINE 22 COLUMN 20 VALUE ‘SALAH!!!’ BELL.



UNDERLINE, REVERSE-VIDEO,HIGHLIGHT dan BLINK clause
Digunakan untuk menampilkan dengan suatu efek tertentu pada tampilan.
UNDERLINE clause digunakan untuk memberi garis bawah pada tampilan.
REVERSE-VIDEO clause digunakan untuk membalik warna dari tampilannya,
warna dasar menjadi warna tampilannya dan sebaliknya.
HIGHLIGHT clause digunakan untuk menampilkan tampilan dengan bentuk yang
lebih terang.
BLINK clause digunakan untuk membuat kedap kedip bentuk tampilan.

Created by Rani Puspita / 2004/DATA DIVISION

5


Teknik Pemrograman Terstruktur (COBOL)

Contoh :

IDENTIFICATION DIVISION.
PROGRAM-ID. PILIHAN.
AUTHOR. RANI.
ENVIRONMENT DIVISION.
DATA DIVISION.
SCREEN DIVISION.
01 LAYAR-PILIHAN.
02 BLANK SCREEN.
02 LINE 2 COLUMN 25 VALUE ‘ ’ UNDERLINE.
2

LINE 5 COLUMN 25 VALUE ‘1.MENAMBAH DATA’.

02 LINE 7 COLUMN 25 VALUE ‘ 2.MENCETAK DATA ’.
02 LINE 9 COLUMN 25 VALUE ‘3. KOREKSI DATA’ HIGHLIGHT.
2


LINE 11 COLUMN 25 VALUE ‘4. SELESAI’ BLINK.

2

LINE 18 COLUMN 25 VALUE ‘PILIH NOMER (1 –

4) ?’ REVERSE-VIDEO.
PROCEDURE DIVISION.
MULAI.
DISPLAY LAYAR-PILIHAN.
STOP RUN.

Created by Rani Puspita / 2004/DATA DIVISION

6

Teknik Pemrograman Terstruktur (COBOL)

Bila Program dijalankan akan terdapat tampilan sebagai berikut :

>

Garis bawah
(underline)

1. MENAMBAH DATA
2. MENCETAK DATA
Lebih terang

3. KOREKSI DATA

(highlight)
Kedap-kedip
(blink)

4. SELESAI

warna dasar gelap

PILIH NOMER (1-4) ?


(reserve-video)

BLANK WHEN ZERO clause
Digunakan untuk menampilkan spasi (blank) bila suatu data numeric mengandung
nilai 0.
Contoh:
02 COLUMN 20 PIC 9(6) USING AWAL BLANK WHEN ZERO.



AUTO, SECURE, REQUIRED dan FULL clause


AUTO clause Digunakan untuk membuat pergeseran cursor secara otomatis ke
field berikutnya, bila field data item sudah penuh terisi. Bila tidak menggunakan
clause ini, kalau akan menggeser ke field berikutnya menggunakan ENTER.
Contoh:
05 COLUMN PLUS 1 PIC 999 TO UNIT-BARANG AUTO.

Created by Rani Puspita / 2004/DATA DIVISION

7



Teknik Pemrograman Terstruktur (COBOL)
SECURE clause Digunakan untuk membuat supaya suatu nilai data yang
dimasukkan pada field data item tertentu tidak tampak di layar sewaktu diketik.
Akan ditampilkan karakter ‘*’.
Contoh :
05 COLUMN PLUS 1 PIC 9(6) TO HARGA-BARANG SECURE.



REQUIRED clause Digunakan kalau suatu field data item harus diisi oleh suatu
nilai, tidak boleh dilewati.
Contoh :
05 COLUMN PLUS 1 PIC X(5) TO KODE-BARANG REQUIRED.



FULL clause digunakan untuk suatu field data item yang diisi dengan suatu data
sampai penuh untuk tempat yang disediakan. Bila tidak diisi atau tidak penuh
maka tidak bias berpindah ke field lain
Contoh:
05 COLUMN PLUS 1 PIC X(15) TO NAMA-BARANG FULL.

Created by Rani Puspita / 2004/DATA DIVISION

8

Teknik Pemrograman Terstruktur (COBOL)

Adalah suatu nomer yang menunjukkan jenjang dari data item dalam suatu record. Makin
besar nomer levelnya, makin rendah jenjang tingkatannya.
 Level Number 01  untuk mengawali keterangan dari record.
 Level number 02 – 49  digunakan untuk mengawali keterangan dari data
item. Contoh :

Data Division.
Working-Storage Section.
01 Data-Masukkan.
02 Nama Pic A(10).
02 Gaji.
03 Gaji-Pokok Pic 9(6).
03 Tunjangan Pic 9(6).
02 Total-Gaji Pic 9(7).
 Level number 66 untuk RENAMES
Contoh :

01 Data-Masukkan.
02 Nama
Pic A(10).
02 Alamat
Pic X(15).
02 Kelas
Pic X(5).
66 Data-Pegawai Renames Nama thru Alamat.
 Level number 77 untuk mengawali data item yang berdiri sendiri
 Level number 88 untuk mengawali suatu nama kondisi
Contoh :

Data Division.
Working-Storage Section.
01 Data-Masukkan.
02 Tanya Pic A.
88 Lagi value is ‘Y’, ‘y’.
88 Tidak value is ‘T’, ‘t’.
77 Nama Pic A(20).

Created by Rani Puspita / 2004/DATA DIVISION

9

Teknik Pemrograman Terstruktur (COBOL)
CONTOH PROGRAM PENGGUNAAN LEVEL NUMBER

IDENTIFICATION DIVISION.
PROGRAM-ID. LEVEL-NUMBER.
ENVIRONMENT DIVISION.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 DATA-MASUKKAN.
02 NAMA PIC A(10).
02 GAJI.
03 GAJI-POKOK PIC 9(6).
03 TUNJANGAN PIC 9(6)
02 TOTAL-GAJI PIC 9(7).
02 TANYA PIC A.
88 LAGI VALUE IS ‘Y’, ‘y’.
88 TIDAK VALUE IS ‘T’, ‘t’.
SCREEN SECTION.
01 HAPUS-LAYAR.
49 BLANK SCREEN.
PROCEDURE DIVISION.
MULAI.
HAPUS-LAYAR.
DISPLAY (1, 1) ‘NAMA ANDA
: ‘.
ACCEPT NAMA.
DISPLAY(2, 1) ‘GAJI POKOK
: Rp. ‘.
ACCEPT GAJI-POKOK.
DISPLAY(3, 1) ‘BESARNYA TUNJANGAN : Rp. ’.
ACCEPT TUNJANGAN.
COMPUTE TOTAL-GAJI = GAJI-POKOK + TUNJANGAN.
DISPLAY HAPUS-LAYAR.
DISPLAY ‘ >>> GAJI ANDA UNTUK BULAN INI