Sabtu, 10 November 2012

Organisasi File Pada COBOL

1. FILE SEQUENTIAL
Organisasi file secara urut (sequential) memungkinkan pengaksesan record di file secara berurutan.
 
ENVIRONMENT DIVISION 
Informasi mengenai organisasi file urut disebutkan pada INPUT-OUTPUT SECTION. ASSIGN clause menunjukkan bentuk dari file yang akan dipergunakan yaitu disk-file atau printfile. ORGANIZATION IS LINE SEQUENTIAL atau SEQUENTIAL boleh dipilih salah satu, jika tidak disebutkan dianggap (default) SEQUENTIAL.
FILE STATUS clause digunakan untuk menunjukan jenis kesalahan yang terjadi dari suatu hasil operasi. Jenis kesalahan ini ditunnjukan oleh suatu nilai sepanjang karakter yang disimpan pada nama data yang disebutkan pada clause ini dan sudah disebutkan terlebih dahulu pada WORKING-STORAGE SECTION atau pada LINKAGE SECTION.
                                Nilai status organisasi file urut

Bentuk Umum :
  
DATA DIVISION
Bentuk umum :

PROCEDURE DIVISION
Statement khusus yang dipergunakan dalam PROCEDURE DIVISION yaitu OPEN, CLOSE, READ, WRITE, dan REWRITE.
  • OPEN verb digunakan untuk membuka file yang akan diakses, dengan bentuk umum :
  •  CLOSE verb digunakan untuk menutup file yang digunakan setelah selesai melaksanakan operasi file untuk mecegah rusaknya struktur file, dengan bentuk umum :
             CLOSE nama-file1 [WITH LOCK] [,nama-file2 [WITH LOCK] ]
  • WRITE verb digunakan untuk merekamkan data pada record tertentu difile yang telah dibuka, dengan bentuk umum :
 
  • READ verb digunakan untuk membaca record yang ada di file, dengan bentuk umum :
         READ nama-file RECORD [INTO nama-data] [;AT END statement imperatif]
  • REWRITE verb digunakan untuk merekam ulang record yang sudah pernah direkam / update record, dengan bentuk umum :
         REWRITE nama-record [FROM nama-data]
2. FILE INDEKS
Organisasi file secara indeks adalah jika file tersebut mempunyai indeks atau table yang berisi daftar alamat-alamat dari record di disc, yang disebut dengan control index.
Control index berfungsi sebagai penunjuk/pointer dari posisi record tertentu yang berisi data, sehingga memungkinkan untuk menuju kesuatu lokasi record tertentu dengan cepat. File index ini disimpan terpisah dari file datanya. Pada COBOL organisasi file indeks akan menciptakan 2 file, yaitu file data (yang berisikan data tersimpan) dan file kunci(yang berisikan control indeks).
Agar kedua file tersebut saling berhubungan, maka harus dihubungkan dengan suatu field kunci yang ada pada file data. Field kunci ini ditentukan sendiri oleh pemrogram dan harus unik (setiap data dipastikan mempuyai nilai yang berbeda). Hal ini dideklarasikan pada RECORD KEY clause didalam FILE-CONTROL section.

ENVIRONMENT DIVISION
Hampir sama seperti file urut, informasi mengenai organisasi file pada clause SELECT harus disebutkan ORGANIZATION IS INDEXED. Untuk file yang diorganisasikan secara indexed, dapat di akses secara acak (RANDOM), dan secara DINAMIC (dapat mengakses file tersebut secara random maupun sequential secara berurutan) , sedangkan akses SEQUENTIAL akan dilaksanakan secara berurutan dari kecil ke besar berdasarkan field kuncinya.
RECORD KEY clause menunjukkan nama-data yang dipergunakan sebagai field kunci, yang sudah dideklarasikan terlebih dahulu pada file description entry.
FILE STATUS clause digunakan untuk menunjukan jenis kesalahan yang terjadi dari suatu hasil operasi. Jenis kesalahan ini ditunjukan oleh suatu nilai sepanjang karakter yang disimpan pada nama data yang disebutkan pada clause ini dan sudah disebutkan terlebih dahulu pada WORKING-STORAGE SECTION atau pada LINKAGE SECTION.
                                            Nilai status organisasi file indeks
 Bentuk umum :

DATA DIVISION
Bentuk umum :
  ;LABEL RECORD IS STANDARD
              [;VALUE OF FILE-ID IS nama-file di label]

PROCEDURE DIVISION
Statement khusus yang dipergunakan dalam PROCEDURE DIVISION yaitu OPEN, CLOSE, READ, WRITE, REWRITE, START dan DELETE
  • OPEN verb digunakan untuk membuka file yang akan diakses, dengan bentuk umum :
  • CLOSE Verb, digunakan untuk menutup file yang digunakan setelah selesai melaksanakan operasi file untuk mecegah rusaknya struktur file, dengan bentuk umum :
             CLOSE nama-file1 [WITH LOCK] [,nama-file2 [WITH LOCK] ]
  • WRITE Verb, digunakan untuk merekamkan data pada record tertentu difile yang telah dibuka, dengan bentuk umum :
           WRITE nama-record [FROM nama-data1]
           [;INVALID KEY statement-imperatif]
  • READ Verb, digunakan untuk membaca record yang ada di file, dengan bentuk umum :
    BU 1 :
        READ nama-file [NEXT] RECORD [INTO nama-data] [;AT END statement imperatif]
    BU 2 :
        READ nama-file RECORD [INTO nama-data] [;KEY IS nama-data-2]
        [;;INVALID KEY statement imperatif]
  • REWRITE Verb, digunakan untuk merekam ulang record yang sudah pernah direkam/ update record, dengan bentuk umum :
        REWRITE nama-record [FROM nama-data] [;INVALID KEY statement imperatif]
  • START Verb, digunakan untuk menempatkan pembacaan record mulai record yang mengandung nilai field kunci tertentu, dengan bentuk umum :
  • DELETE Verb
        DELETE nama-file RECORD [;INVALID KEY statement-imperatif]
3. FILE RELATIF
Organisasi file relatif adalah file yang recordnya dibedakan berdasarkan nomor record relatif. Nomor record relatif berkisar dari 1 – 32767. Nomor relatif tidak terekam dalam file. File relatif mempunyai panjang record yang tetap.

ENVIRONMENT DIVISION 
Pada divisi ini, entry pada clause SELECT harus disebutkan ORGANIZATION IS RELATIVE. Organisasi file secara relatif dapat diakses secara urut, acak, maupun dinamik. Pada mode akses urut (sequential access mode) record diakses dengan urutan record relatif dari kecil ke besar.
Pada mode akses acak (random access mode) pengaksesan record diakses tidak diurutkan, tetapi diatur oleh pemrogram. Pada mode akses dinamik (dynamic access mode) pengaksesan record dilakukan dengan terurut dan acak.
RELATIVE KEY clause menunjukan nama-data yang dipergunakan sebagai kunci relatif, yang sudah harus disebutkan terlebih dahulu pada record description entry dalam DATA DIVISION. Clause RELATIVE KEY harus disebutkan untuk mode akses acak dan dinamik, sedangkan pada mode akses urut dapat disebutkan bila akan mempergunakan perintah START.
FILE STATUS clause dipergunakan untuk menunjukan jenis kesalahan yang terjadi dari suatu operasi.Jenis kesalahan ini ditunjukan oleh suatu nilai sepanjang karakter yang disimpan pada nama data yang disebutkan pada clause ini dan sudah disebutkan terlebih dahulu pada WORKING-STORAGE SECTION atau pada LINKAGE SECTION. Untuk nilai status organisasi file relatif lihat tabel file indeks.
Bentuk umum :

DATA DIVISION
Bentuk umum :
      ;LABEL RECORD IS STANDARD
                 [;VALUE OF FILE-ID IS nama-file di label]

PROCEDURE DIVISION
Statement khusus yang dipergunakan dalam PROCEDURE DIVISION yaitu OPEN, CLOSE, READ, WRITE, REWRITE, START dan DELETE
  • OPEN verb digunakan untuk membuka file yang akan diakses, dengan bentuk umum :
  • CLOSE Verb, digunakan untuk menutup file yang digunakan setelah selesai melaksanakan operasi file untuk mecegah rusaknya struktur file, dengan bentuk umum :
           CLOSE nama-file1 [WITH LOCK] [,nama-file2 [WITH LOCK] ]
  • WRITE Verb, digunakan untuk merekamkan data pada record tertentu difile yang telah dibuka, dengan bentuk umum :
           WRITE nama-record [FROM nama-data1] [;INVALID KEY statement-imperatif]
  • READ Verb, digunakan untuk membaca record yang ada di file, dengan bentuk umum :
    BU 1 :
           READ nama-file [NEXT] RECORD [INTO nama-data] [;AT END statement imperatif]
    BU 2 :
           READ nama-file RECORD [INTO nama-data] [;INVALID KEY statement-imperatif]
  • REWRITE Verb, digunakan untuk merekam ulang record yang sudah pernah direkam/ update record, dengan bentuk umum :
          REWRITE nama-record [FROM nama-data] [;INVALID KEY statement imperatif]
  • DELETE Verb
          DELETE nama-file RECORD    [;INVALID KEY statement-imperatif]
  • START Verb, digunakan untuk menempatkan pembacaan record mulai record yang mengandung nilai field kunci tertentu, dengan bentuk umum :




 

 
 

0 komentar:

Posting Komentar