p5

Document Sample
p5 Powered By Docstoc
					 Qualification
Qualifier untuk membedakan keunikan pada nama – data , yang nantinya akan tampak
pada PROCEDURE DIVISION.Sehingga nama-data +yang telah dipergunakan dapat
dipergunakan lagi untuk nilai yang lain.
Bentuk Umumnya :

          Nama – data       OF   nama record
                            IN
Contoh :
Pada DATA DIVISION :

01     MASTER.
       02  BARANG-A.
           03  JUMLAH        PIC 9(3).
           03   HARGA-SATUAN PIC 9(5).
       02  BARANG-B.
           03  JUMLAH        PIC9(3).
           03   HARGA-SATUAN PIC 9(4).
01     TRANSAKSI.
       02  BARANG-A.
           03  JUMLAH        PIC 9(3).
           03   HARGA-SATUAN PIC 9(5).
       02  BARANG-B.
           03  JUMLAH        PIC 9(3).
           03   HARGA-SATUAN PIC 9(4).

Pada PROCEDURE DIVISION :

COMPUTE TOTAL-B = JUMLAH OF BARANG-B OF
         TRANSAKSI * HARGA SATUAN OF
         BARANG-B OF TRANSAKSI.

Ket : Maksimum jumlah tingkatan qualification untuk nama-data adalah sejumlah 5
tingkat.
 misalnya :

A OF B OF C OF D OF E OF F
ATAU :
A IN B IN C IN D IN E IN F

TPT-1 / COBOL / Ronggo P.                                                  Page 1
 RECORD DATA JAMAK
  Record data yang jamak (multiple data records) adalah record data yang
  lebih dari 1 pada file yang sama. Record yang satu dengan record yang
  lainnya akan mempunyai posisi di storage yang sama.
  Record data jamak ini digunakan untuk data yang direkamkan di file, baik
  organisasinya secara sequential maupun organisasinya secara indexed.

   Contoh Program Record Data Jamak :
     DATA DIVISION.
     FILE SECTION.
     FD STOCK-FILE
          RECORD CONTAINS 50 CHARACTERS
          LABEL RECORD ARE STANDARD
         VALUE OF FILE-ID IS “STOCK”
         DATA RECORDS ARE PEMBELIAN, PENJUALAN.
     01 PEMBELIAN.
          02 KODE-BARANG             PIC 9(4).
          02 KODE-TRAN           PIC 9.
          02 JUMLAH                  PIC 9(5).
          02 HARGA-SATUAN-BELI       PIC 9(5).
          02 NAMA-SUPLIER            PIC A(15).
          02 ALAMAT-SUPLIER          PIC A(20).
     01    PENJUALAN.
           02 KODE-BARANG            PIC 9(4).
           02 KODE-TRAN          PIC 9.
           02 JUMLAH                 PIC 9(3).
           02 HARGA-SATUAN-JUAL PIC 9(6).
           02 KODE-LANGGANAN         PIC X(6).
           02 KETERANGAN             PIC (20).
           02 FILLER             PIC X(10).

Ket :Pada program diatas terdapat 2 record yaitu record PEMBELIAN dan
record PENJUALAN, direkamkan pada 1 file yaitu STOCK-FILE.




TPT-1 / COBOL / Ronggo P.                                            Page 2
 Nama Kondisi
 Nama kondisi adalah nama yang dibuat oleh programmer yang berada pada
 DATA DIVISION sebagai fasilitas proses di PROCEDURE DIVISION.
 Nama kondisi ditulis dimulai dengan level number 88.
 Bentuk Umumnya :
                            VALUE IS        LITERAL 1 [LITERAL2]
 88    NAMA KONDISI                                THRUGH
                                            [         LIT2]
                             VALUE ARE      LITERAL1      THRU

CONTOH :
       01     SEX PIC A.
              88 LAKI VALUE IS ‘L’.
              88 WANITA VALUE IS ‘W’.
Didalam PROCEDURE DIVISION dapat dilakukan penyelesaian sebagai
berikut :
      IF SEX = ‘L’ GO TO PROSES-L.
      IF SEX = ‘W’ GO TO PROSES-W.
Dengan dipergunakannya nama-kondisi, bentuk penyeleksian dapat juga
langsung berupa :

      IF LAKI GO TO PROSES-L.
      IF WANITA GO TO PROSES-W.

Keterangan :
Nama Kondisi tidak mempunyai PICTURE, karena PICTUREnya mengikuti
elemen data yang diikutinya.Sehingga nilai literal yang dimasukkan ke nama-
kondisi harus sesuai dengan field dan type data itemnya.

Contoh :
02 STATUS   PIC X .                  02 STATUS   PIC X .
     88 KAWIN VALUE 1.                     88 KAWIN VALUE ‘1’.
     88 BELUM VALUE 2.                     88 BELUM VALUE ‘2’.



TPT-1 / COBOL / Ronggo P.                                             Page 3
 VALUE Clause
   Digunakan untuk memasukkan nilai awal pada storage.
   Biasanya terdapat pada WORKING-STORAGE SECTION.
   Bentuk Umum :

                            LITERAL
        VALUE IS
                            FIGURATIVE KONSTANT

       Contoh Penggunaan Value Clause :

       01    JUDUL PIC A(15) VALUE ‘PROGRAM COBOL’.
       01    FILLER PIC X(15)  VALUE SPACES.
       01    TOTAL PIC 9(5) VALUE ZERO.
       01    KETERANGAN VALUE IS ‘LUNAS’ PIC A(15).
       77    COUNTER PIC 99 VALUE 0.
       77    GARIS PIC X(80) VALUE ALL ‘-‘.

 REDEFINES CLAUSE.
 Digunakan untuk menempatkan nama data yang berlainan pada lokasi
 storage yang sama. Dengan kata lain satu lokasi storage ditempati lebih dari
 1 nama data.

   Contoh Penggunaan Redefines Clause :
     DATA DIVISION.
     FILE SECTION.
     FD HUT-PIUT
         LABEL RECORD IS STANDARD
         VALUE OF FILE –ID IS “HUT-PIUT.DAT”.
     01   HUTANG-PIUTANG.
          02   HUTANG.
               03   KODE-SUPLIER         PIC 9(3).
               03   NAMA-SUPLIER         PIC X(16).
               03   NILAI-HUTANG         PIC 9(4)V99.
          02   PIUTANG REDEFINES HUTANG .
               03   KODE-LANGGANAN PIC 9(4).
               03   NAMA-LANGGANAN PIC X(14).
               03   NILAI-PIUTANG        PIC 9(5)V99.


TPT-1 / COBOL / Ronggo P.                                               Page 4
Keterangan :
1. REDEFINES clause dapat digunakan untuk group data item, tetapi tidak
   boleh digunakan pada level number 01 yang nama recordnya sudah disebut
   di FILE SECTION.
   Bila hal ini diinginkan,maka harus digunakan multiple data records, yang
   mempunyai efek sama dengan REDEFINES.
2. REDEFINES juga tidak boleh terdapat pada level number 66 atau 88.
   REDEFINES clause tidak dapat digunakan untuk data item individu yang
   lainnya.
3. Bila ada Clause yang lain, REDEFINES clause harus merupakan clause
   yang pertama pada data-description atau pada record-description entry.
4. REDEFINES clause tidak dapat dipergunakan untuk nama data yang
   levelnya berbeda. Level disini yang dimaksud bukan level number, tetapi
   jenjangnya.Level number boleh berbeda,asal level (tingkatan jenjangnya)
   sama.
5. Value clause tidak boleh ada bersama-sama dengan REDEFINES clause.

 Renames Clause
 Menyediakan programmer kemampuan untuk memberikan tambahan
 deskripsi tentang penggolongan kembali elemen-elemen data item.
 Dimulai dengan Level Number 66.
 Contoh :
             01 RECORD-A.
                  02 A PIC A(2).
                  02 B PIC 9(3).
                  02 C PIC 9(4).
                  02 D PIC X(2).
             66 RECORD-B RENAMES B THROUGH C.
    RECORD-B adalah posisi dari storage yang terdiri dari field B dan C, yang
    juga dimiliki oleh RECORD-A
      01      PERSEDIAAN.
              02  JENIS.
                  03   NAMA PIC C(8).
                  03     KODE PIC X(3).
              02  HARGA.
                  03   BELI       PIC 9(5)V99.
                  03     JUAL     PIC 9(5).
              02 KETERANGAN PIC X.
      66      PERSEDIAAN-OUT RENAMES KODE THRU JUAL.
TPT-1 / COBOL / Ronggo P.                                               Page 5
      67
    Keterangan :
    1. RENAMES clause hanya dapat dipakai untuk elemen-elemen data item
       yang berurutan.
    2. RENAMES clause harus berada pada posisi paling akhir dari deskripsi
       record ( record description).
    3. Untuk MS-COBOL , RENAMES clause tidak tersedia.

    BLANK WHEN ZERO clause
     Dipakai untuk menghilangkan bentuk seperti : -0 atau + atau – saja (
     pemakaian pada picture editing). Bentuk tersebut akan memperjelek
     penampilan output.
     Contoh :

     Data Picture                                              Hasil output
     000 02 HASIL PIC ++++                                     +
     000 02 HASIL-OUT PIC ++++ BLANK WHEN ZERO                 blank

    JUSTIFIED RIGHT clause
      Digunakan hanya untuk data item alphabetik atau alphanumerik saja.
      Seperti telah kita ketahui data alphabetik dan alphanumerik disimpan
       di storage dengan posisi rata sebelah kiri.Bila diinginkan posisi yang
       rata disebelah kanan,maka digunakan clause ini.
     Contoh :
     Sebelum : 77 NAMA PIC X(9) VALUE ‘RANI’.

                    D E W I

       Sesudah : 77 NAMA PIC X(9) VALUE ‘ RANI’ JUSTIFIED RIGHT.
                                   Atau
                  77 NAMA PIC X(9) VALUE ‘RANI’ JUST RIGHT.

                               D E W I
       Contoh lainnya :

       02 JUDUL PIC X(10) JUST RIGHT.
       MOVE ‘ NERACA’ TO JUDUL.

TPT-1 / COBOL / Ronggo P.                                               Page 6
 SYNCHRONIZED clause
     Digunakan untuk mengalokasikan data secara efektif di storage.
     Tidak boleh digunakan pada group data item.
     Untuk MS-COBOL, clause ini tidak berfungsi, tetapi boleh ditulis
      sebagai dokumen saja.
     Bentuk Umumnya :
                      SYNCHRONIZED             LEFT
                      SYNC                               RIGHT


       Contoh :

          01RECORD-A.
           02 FIELD-1     PIC X(4).
           02 FIELD-2     PIC X(3).
           02 FIELD-3     PIC X(5).
Statemen berikutnya :
       MOVE ‘AAAA’ TO FIELD-1
       MOVE ‘BBB’ TO FIELD-2
       MOVE ‘CCCCC’ TO FIELD-3.

OUTPUTNYA :

                   AAAABB     BCCCCC
                   1 WORD     1 WORD

Contoh pemakaian SYNC :
   01 RECORD-A.
        02 FIELD-1                PIC X(4) SYNC LEFT.
        02 FIELD-2                PIC X(3) SYNC LEFT.
        02 FIELD-3                PIC X(5) SYNC RIGHT.

OUTPUTNYA:

                   AAAA     BBB    CCCCC



TPT-1 / COBOL / Ronggo P.                                         Page 7
 USAGE Clause
   Menunjukkan bentuk dari data yang disimpan di memory komputer.
   Data numerik dapat ditempatkan pada memori komputer dengan 2
     cara, yaitu :
     1. Mode Karakter (Character mode) dengan DISPLAY
     2. Mode Numerik (Numeric mode) dengan COMPUTATIONAL
   Bentuk Umum :
                                       DISPLAY
                                       COMPUTATIONAL
                      [USAGE IS]       COMP
                                       COMPUTATIONAL-3
                                       CPM-3
                                       INDEX

    COMPUTATIONAL dapat disingkat menjadi COMP.
   Keterangan :
    DISPLAY digunakan untuk menyimpan data yang bentuknya bersifat
       mode karakter.
    COMPUTATIONAL untuk menyimpan data numerik ke dalam kode
       binary.

           Pangkat          Desimal   Binary
           20               1         1
           21               2         10
           22               4         100
           23               8         1000
           24               16        10000
           25               32        100000
           26               64        1000000
           27               128       10000000
           28               256       100000000
           29               512       1000000000
           210              1024      10000000000
           Dst              Dst       dst




TPT-1 / COBOL / Ronggo P.                                      Page 8
    COMPUTATIONAL-1.
     Digunakan untuk menyimpan data numerik dalam bentuk mode
     numerik floating point ketepatan tunggal. Bentuk ini jarang sekali
     digunakan dan tidak tersedia pada MS-COBOL.
    COMPUTATIONAL-2.
     COMPUTATIONAL-2, sama dengan bentuk COMPUTATIONAL-1
     tetapi dengan ketepatan yang lebih kecil. Juiga jarang digunakan dan
     tidak tersedia pada MS-COBOL.
    COMPUTATIONAL-3.
     Digunakan untuk menyimpan data numerik yang digitnya dalam
     bentuk dipak(packed), yang maksudnya tiap byte tidak berisi dengan 1
     digit tetapi dapat berisi 2 digit. Data numerik yang disimpan dalam
     bentuk ini disebut dengan packed decimal atau internal decimal.
    INDEX
     USAGE IS INDEX menunjukkan bahwa data-item akan digunakan
     sebagai indeks dan akan disimpan dalam bentuk kode binary seperti
     pada USAGE IS COMPUTATIONAL-0. Kalau USAGE IS INDEX
     dipergunakan, maka PICTURE clause tidak boleh digunakan.

 SIGN clause
  Digunakan untuk mengatur tanda operasi yang ada pada data numerik
  untuk data-item external decimal ( dengan USAGE IS DISPLAY).
  Clause ini digunakan hanya untuk data-item numerik yang mempunyai
  PICTURE karakter S.

    Bentuk Umum :


                              LEADING
            [;    [SIGN IS]              [SEPARATE CHARACTER ] ]
                              TRAILING




TPT-1 / COBOL / Ronggo P.                                           Page 9
Keterangan :
1. SIGN IS LEADING
   Tanda operasi (+ atau - ) diletakkan pada posisi paling kiri tanpa adanya
   posisi storage tambahan.
   Contoh :
   02 NILAI PIC S9(4) SIGN IS LEADING.

2. SIGN IS LEADING SEPARATE CHARACTER.
   Tanda operasi ( + atau -) diletakkan pada posisi paling kiri dengan
   menambahkan sebuah posisi storage tambahan.
   Contoh :
   02 NILAI PIC S9(4) SIGN IS LEADING SEPARATE.

3. SIGN IS TRAILING
   Tanda operasi (+ atau - ) diletakkan pada posisi paling kanan tanpa adanya
   posisi storage tambahan.
   Contoh :
   02 NILAI PIC S9(4) SIGN IS TRAILING. Atau
   02 NIALI PIC S9(4).
   Note :
   Kalau SIGN clause tidak dipergunakan maka dianggap sebagai SIGN IS
   TRAILING.

4. SIGN IS TRAILING SEPARATE CHARACTER
   Tanda operasi ( + atau -) diletakkan pada posisi paling kanan dengan
   menambah sebuah posisi storage tambahan.
   Contoh :
   02 NILAI PIC S9(4) SIGN IS TRAILING SEPARATE..

Penjelasan :
a. Penggunaan SEPARATE CHARACTER akan menyebabkan bertambahnya
   ukuran storage dari data item dengan 1 byte karakter, jadi akan lebih
   boros,dianjurkan untuk tidak menggunakannya.
b. Penggunaan LEADING akan menyebabkan operasi object program kurang
   efektif, jadi dianjurkan tidak menggunakannya.
c. Yang terbaik adalah tidak menggunakan clause ini atau menggunakan
   SIGN IS TRAILING.

TPT-1 / COBOL / Ronggo P.                                              Page 10
 OCCURS clause
  Digunakan untuk tujuan mengulang data-item didalam suatu record
  beberapa kali, yang membentuk suatu label.
  Bentuk:

    [; OCCURS integer TIMES
         ASCENDING
         DESCENDING KEY IS nama-data-1 [, nama-data-2] ….

            INDEXED BY nama-index-1 [, nama-index-2]….


   - OCCURS clause tidak boleh digunakan pada level number 01 atau level
     number 77. Digunakan pada FILE SECTION, WORKING-STORAGE
     SECTION atau LINKAGE SECTION.
   - Integer TIMES menunjukkan berapa kali data-item akan diulang
     didalam suatu record.
   - ASCENDING atau DESCENDING, menunjukkan bagaimana data
     tersebut diatur tergantung dari nilainya, apakah urut dari kecil ke besar (
     ASCENDING) atau dari besar ke kecil ( DESCENDING).
   - KEY IS dan INDEXED BY menunjukkan nama kunci yang
     dipergunakan pada statement SEARCH untuk mencari data yang ada di
     tabel.

   OCCURS clause digunakan untuk membentuk suatu tabel (table) atau
   kumpulan (list) dari data-item atau larik (array).

   Tabel (table)adalah sekumpulan nilai data yang membentuk suatu set.
   Bentuk Tabel sbb :
   1. Tabel beridmensi Satu ( one-dimensional table)
   2. Tabel berdimensi dua ( two-dimensional table).
   3. Tabel berdimensi Tiga (three-dimensional table).




TPT-1 / COBOL / Ronggo P.                                                 Page 11

				
DOCUMENT INFO
Tags:
Stats:
views:8
posted:11/25/2012
language:
pages:11
Description: Enjoy!