Snippet

Prosedure Division


Merupakan divisi ke 4 dan yang terakhir dari program COBOL. Semua instruksi-instruksi ditulis pada PROCEDURE DIVISION, sehingga divisi ini merupakan inti dari program COBOL.Statement yang ada di PROCEDURE DIVISION dibentuk dari verb (Kata kerja).

M  MOVE verb
Adalah perintah yang penting didalam program COBOL. Verb ini berguna untuk memindahkan data dari satu field ke lokasi field yang lain, sehingga input data dapat dimanipulasi untuk menghasilkan output.
Bentuk dari statement MOVE :


 







Contoh :
01              KIRIM.
02              UNIT            PIC 9(3).
02      HARGA     PIC 9(5).
01              TERIMA.
02              UNIT-OUT          PIC 9(3).
02      HARGA-OUT      PIC 9(7).

Statement dalam PROCEDURE DIVISION sebagai berikut :
§  MOVE UNIT TO UNIT-OUT.
·        Akan memindahkan nilai data dari field UNIT ke field UNIT-OUT
§  MOVE KIRIM TO TERIMA.
·        Akan memindahkan 8 karakter dari field group item KIRIM ke 10 karakter secara bersamaan ke field group item TERIMA.Group item yang dipindahkan akan diperlakukan sebagai nilai alphanumerik,tidak memandang bentuk dari PICTURE masing-masing elemen data item.Sehingga bersifat Left-justified.

Bentuk yang khusus dari MOVE verb adalah MOVE CORRSPONDING, dengan bentuk:


MOVE CORRESPONDING nama-data-1 TO nama-data-2.
 
 



MOVE CORRESPONDING digunakan untuk memindahkan data dari group data item ke group data item yang lain yang bernama sama.

Contoh:
Pada DATA DIVISION :
01      RECORD-A.
          02      A       PIC 9(3).
          02      B       PIC X(5).
          02      C       PIC A(9).
          02      D       PIC 9(4).
01              RECORD-B.
02              A                PIC 9(3).
02      FILLER      PIC X(5).
02      B                 PIC X(6).
02      D                PIC 9(4).
02      E                 PIC $$$.99.
02      FILLER      PIC X(5).
Statement :
MOVE CORRESPONDING RECORD-A TO RECORD-B.
 Artinya :
          Akan memindahkan group item RECORD-A ke group data item RECORD-B yang mempunyai nama data yang sama.
Bentuk data yang dapat dipindahkan :
Bentuk data pengirim
Bentuk data penerima
Alphabetik
Alphanumerik
Numerik integer
Numerik non integer
Numerik yang di-edit
Alphabetik
Bisa
Bisa
Tidak
Alphanumerik
Bisa
Bisa
Bisa
Numerik integer
Tidak
Bisa
Bisa
Numerik non integer
Tidak
Tidak
Bisa
Numerik yang di-edit
Tidak
Bisa
Tidak
Keterangan :
·        Bila data mengandung tanda + atau - , maka tanda tersebut akan diabaikan.

M DISPLAY verb
Dipergunakan untuk menampilkan hasil di layar ataupun di printer.
Ada 3 bentuk statement DISPLAY :
Bentuk Statement DISPLAY ke-1 :


DISPLAY  nama-layar
 
 


Bentuk Statement DISPLAY ke-2 :


 



§  Nama data adalah nama dari data item yang telah disebutkan pada DATA DIVISION, yang panjang nilai datanya tidak boleh lebih dari 1920 karakter.
§  Literal adalah bentuk yang akan ditampilkan, berupa bentuk yang sudah tetap, terletak diantara tanda petik dua (“ “) atau terletak di antara tanda petik tunggal(‘‘).
§  UPON Clause dipergunakan bilamana hasil tidak ingin ditampilkan di layar, tetapi akan dicetak di printer.
§  Nama-mnemonik adalah nama yang dibentuk oleh programmer sebagai penunjuk alat cetakan, yaitu printer.Nama-mnemonik ini harus sudah disebutkan pada CONFIGURATION SECTION dalam SPECIAL NAMES, PRINTER IS nama-mnemonik.
Bentuk Statement DISPLAY ke-3 :
 





-        Posisi-tampilan merupakan posisi baris dan kolom tertentu dari hasil yang akan ditampilkan di layar di printer.
Posisi tampilan ini mempunyai bentuk :


 





§  LIN and COL adalah register khusus MS-COBOL, yang merupakan COBOL reserved words, jadi tidak disebutkan pada DATA DIVISION.
§  Setelah koma “,” harus diikuti oleh 1 blank untuk memisahkan letak posisi baris dan posisi kolomnya.
§  Contoh :
DISPLAY (15, 5) “HALLO SAYA KOMPUTER”.
-                     ERASE adalah COBOL reserved word, yang kalau dipergunakan dalam DISPLAY dan posisi- tampilan ditentukan,maka mulai dari posisi tampilan tersebut untuk 1 baris akan dihapus dari tampilan sebelumnya.
Contoh :
DISPLAY (3, 10) ERASE.







M  ACCEPT verb
Digunakan untuk memasukkan data lewat layar sewaktu program tersebut dijalankan(pada waktu runtime).
Ada 4 bentuk statement ACCEPT :
Bentuk statement ACCEPT ke-1 :


ACCEPT nama-data
 
 



Data yang dimasukkan, akan ditempatkan pada nama-data setelah ACCEPT, yang bentuk, jenis dan panjangnya sudah ditentukan dalam DATA DIVISION.
Bentuk Statement ACCEPT ke-2 :


ACCEPT nama-layar [ON ESCAPE statement-imperative ]
 
 



Apabila ON ESCAPE diikutsertakan, maka statement-imperative yang mengikutinya akan dikerjakan.
Bentuk Statement ACCEPT yang ke-3 :


 













§  Posisi-layar menunjukkan letak dari posisi data yang akan dimasukkan pada layar.
Posisi-layar ini mempunyai bentuk :


 





§  ZERO-FILL phrase
Bila posisi-posisi field data-item penerima data tidak diisi dengan data (langsung di tekan tombol RETURN), maka akan terisi dengan nilai nol.


§  SPACE FILL phrase
Bila posisi-posisi field data-item di layar tidak diisi dengan data (langsung ditekan tombol RETURN), maka akan terisi dengan nilai nol.
§  LEFT-JUSTIFY phrase
Tidak berfungsi dalam MS-COBOL.
§  RIGHT-JUSTIFY phrase
Menyebabkan setelah data dimasukkan, hasil akhir yang tampak dilayar akan rata di sebelah kanan.
§  TRAILING – SIGN phrase
Menyebabkan tanda operasi + atau – tampak diposisi paling kanan dari field data input. Biasanya tanda tersebut akan menempati posisi paling kiri.
§  PROMPT phrase
Menyebabkan tampilan untuk field data-item penerima berbentuk nol untuk posisi digit,titik untuk decimal point dan spasi untuk tanda operasi + atau -.
§  UPDATE phrase
Menyebabkan tampilan untuk field data-item penerima berbentuk nilai awal dari field penerima tersebut.UPDATE phrase ini berfungsi sama dengan FORM dan TO atau USING clause pada SCREEN SECTION dalam DATA DIVISION.
§  LENGTH-CHECK phrase
Menyebabkan penekanan tombol carriage-return tidak berfungsi kalau semua posisi field penerima belum penuh semua.
LENGTH-CHECK phrase berfungsi sama dengan FULL clause pada SCREEN SECTION dalam DATA DIVISION.
§  EMPTY-CHECK phrase
Menyebabkan penekanan tombol carriage-return tidak berfungsi kalau tidak paling sedikit sebuah karakter atau angka yang bukan sifatnya terminator sudah dimasukkan.
EMPTY – CHECK phrase berfungsi sama dengan REQUIRED clause pada SCREEN SECTION dalam DATA DIVISION.
§  AUTO-SKIP phrase
Menyebabkan proses pemasukkan data bergeser ke field penerima data lain berikutnya, bila posisi field penerima sudah penuh terisi tanpa harus ditekan tombol carriage-return atau tombol terminator yang lainnya.
AUTO-SKIP berfungsi sama dengan AUTO clause pada SCREEN SECTION dalam DATA DIVISION.
§  NO-ECHO phrase
Menyebabkan data yang dimasukkan, tidak tampak di layar.
NO-ECHO berfungsi sama dengan SECURE clause pada SCREEN SECTION dalam DATA DIVISION.
§  BEEP phrase
Menyebabkan bunyi bel sewaktu data dimasukkan.
BEEP berfungsi sama dengan BELL clause pada SCREEN SECTION dalam DATA DIVISION.
Bentuk Statement ACCEPT yang ke-4 :
 





§  DATE, akan mendapatkan 6 digit nilai standard dengan bentuk TTBBHH ( 2 digit untuk tahun. 2 digit untuk bulan dan 2 digit untuk hari) dari system-date.
§  DAY,akan mendapatkan 5 digit nilai “Julian Date” dengan bentuk TTJJJ ( 2 digit untuk tahun dan 3 Digit menunjukkan jumlah hari dalam setahun untuk tanggal tersebut) dari System-date.
§  TIME, akan mendapatkan 8 digit nilai dengan bentuk JJMMDDSS.
JJ menunjukkan 2 digit jam, berkisar dari nilai 00 sampai dengan bentuk 23.
MM menunjukkan 2 digit menit, berkisar dari nilai 00 sampai dengan 59.
DD menunjukkan 2 digit detik, berkisar dari nilai 00 sampai dengan 59.
SS menunjukkan 2 digit seperseratus detik,berkisar dari 00 sampai dengan 99.
§  ESCAPE KEY, akan mendapatkan 2 digit kode yang dihasilkan dari hasil penekanan tombol-tombol terminator.Terminator adalah tombol yang digunakan untuk mengakhiri pengerjaan statement ACCEPT.

Contoh Program Bentuk statement ACCEPT :
IDENTIFICATION DIVISION.
PROGRAM-ID.   SISDT.
AUTHOR.. RANI.
ENVIRONMENT DIVISION.
DATA DIVISION.
WORKING-STORAGE SECTION.
01              SISTEM-DATE-TIME.
02              TANGGAL          PIC 9(6).
02      JULIAN               PIC 9(5).
02      JAM                     PIC 9(8).
PROCEDURE DIVISION.
MULAI.
          ACCEPT TANGGAL FROM DATE
          ACCEPT JULIAN FROM DAY
ACCEPT JAM FROM TIME.
TAMPILKAN.
          DISPLAY ‘ TANGGAL ADALAH  : ‘, TANGGAL.
          DISPLAY ‘ JULIAN ADALAH        : ‘, JULIAN.
          DISPLAY ‘ JAM ADALAH             : ‘, JAM.
          STOP RUN.
 
 





















OUTPUT :
TANGGAL ADALAH   : 860807
JULIAN ADALAH        : 86219
JAM ADALAH             : 15305834

M STOP verb
Digunakan untuk menghentikan program baik secara permanen maupun secara sementara saja, yang kemudian proses program dapat dianjurkan kembali.
Bentuknya :


 




STOP RUN akan menyebabkan proses program berhenti secara permanen, sedang bentuk STOP yang diikuti oleh literal proses akan berhenti secara permanen. Bila menekan sembarang tombol, maka proses dilanjutkan.

Contoh :
STOP “ TEKAN SEMBARANG TOMBOL”.