• Tidak ada hasil yang ditemukan

12. Organisasi File Random - 12. Organisasi File Random

N/A
N/A
Protected

Academic year: 2018

Membagikan "12. Organisasi File Random - 12. Organisasi File Random"

Copied!
12
0
0

Teks penuh

(1)

12. Organisasi File Random

I. PENYISIPAN RECORD

• Akses pada file random dapat dilakukan secara acak. Jadi akses data tidak dilakukan dengan membaca data satu per satu mulai dari record pertaa tapi

dilakukan dengan nomor record,

• Pencarian record data dapat dilakukan dengan pindah dari record terakhir ke

reocrd awal atau record lainnya.

Flowchart proses penyimpanan data ke file

start

2

Read Mast1.dat NIM1,NM$, AL1$

END

/*

3

N= N + 1

N = 0

Read Mast2.DTA Record ke-N NIM2,NM2$,AL2$

1

(2)

1

/*

/ *

Write

MAST.DTA NIMO, NMO, ALO

2

NIMO=NIM 1

NMO = NM 1

ALO = AL 1

3

System flowchar penyisipan record

MAST 1.DTA MAST2. DTA

‰ Data di MAST1.DTA di tambahkan ke MAST2.DTA dengan ketentuan , jika

data MAST1.DTA sudah ada di MAST2.DT maka data tersebut diabaikan

atau tidak di simpan ke MAST2..DTA

‰ Akses terhadap file random dapat dilakukan dengan mengunakan nomor

record, sehingga dari satu record dapat pindah ke record lainnya tergantung

dari nomor record tersebut.

(3)

II. PENGHAPUSAN RECORD

• Penghapusan dilakukan dengan membentuk file baru. Dimana file baru ini

merupakan file berisiskan record dari file lama.

• Namun record dari file lama tersebut hanya terbatas pada record yang tidak sama dengan data yang akan dihapus.

• Sedangkan record yang sama dengan data yang akan dihapus diabaikan

• System flowcart penghapusan record

MASTER.DTA

NEW. DTA

TRANS. DTA

• Record yang dihapus pada file MASTER.DTA ditentukan berdasarkan data

yang terdapat di file TRANS. DTA

• Hasil penghapusan record disimpan di dalam file NEW.DTA . Jadi isi TRANS.

DTA merupakan isi MASTER.DTA setelah mengalami penghapusan record.

Struktur record file MASTER.DTA terdiri dari field :

• Nomor induk mahasiswa

• Nama mahasiswa

• Alamat mahasiswa

Struktur file TRANS.DTA hanya terdiri dari field Nomor Induk Mahasiswa . Field

ini menunjukkan record di MASTER.DTA yang akan di hapus.

(4)
(5)

III. PERUBAHAN ISI RECORD

• Perubahan record dilakukan dengan mencari record yang akan diubah lalu

mengadakan perubahan terhadap isinya.

• Selanjutnya record tersebut disimpan kembali tanpa mengubah posisi record.

• Proses pencarian dilakukan dengan membaca record satu persatu mulai dari awal record sampai record terakhir.

• Setiap record yang dibaca dibandingkan melalui field yang berfungsi sebagai key.

• System flowchart perubahan record

TRANS . DTA INDUK.DTA

• File INDUK.DTA dan TRANS.DTA terdiri dari field Nomor Induk Mahasiswa, nama dan alamat

• Data di INDUK.DTA akan diubah berdasarkan data di TRANS. DTA. Field key yang dipakai adalah nomor induk mahasiswa.

(6)

2

/*

3

NIM2=

NIM 1

4

Write INDUK.DTA RECORD KE – M NIM2,NM2,AL2

3

NIM2=NIM1 AL2 = AL1

IMPLEMENTASI KE PROGRAM BASIC

Berikut adalah prosedur penyimpanan data ke dalam berkas data masup acak :

1. Buka file

2. Siapkan buffer data

3. Untuk data numeric harus dikonversi ke alfabetik/string

4. Simpan data ke dalam buffer

5. Lakukan penulisan ke dalam file

(7)

Membuka File

Perintah yang diperlukan adalah : OPEN

Bentuk Umum :

OPEN “R”, #nomfile, namafile, reclen

atau

OPEN namafile FOR RANDOM ACCESS akses AS #nomfile LEN = reclen

Dimana:

nomfile : bilangan bulat antara 1 sampai 255. Digunakan untuk menyatakan

nomor file yang akan dibuka

namafile : ekspresi string untuk menunjukkan nama file

reclen : bilangan bulat antara 1 sampai 32.676. Digunakan untuk menyatakan

jumlah byte setiap record. Parameter ini bersifat pilihan, jika tidak

dipakai, maka jumlah byte per record dianggap 512 byte.

akses : Parameter yang menyatakan bentuk operasinya, berupa :

READ : menyebabkan file untuk pembacaan saja.

WRITE : menyebabkan file untuk penulisan saja.

READWRITE : menyebabkan file untuk pembacaan dan penulisan.

Parameter ini bersifat pilihan. Jika tidak ditulis, maka diasumsikan file

random digunakan untuk membaca dan menulis.

Contoh-contoh :

OPEN “R”, #1, “B:DataNama”

OPEN “R”, #2, “DataMhs”, 250

OPEN “DataMhs” FOR RANDOM AS #2 LEN 250

OPEN “B:DataMhs” FOR RANDOM ACCESS READ AS #2 LEN 50

(8)

Penyediaan Buffer Data

Dalam file random, perlu disiapkan suatu area penampungan sementara untuk data

yang akan diakses dari file tersebut, yang disebut dengan “RANDOM BUFFER”.

Untuk membentuknya digunakan statement FIELD.

Bentuk Umum :

FIELD #nomfile, lebarfield AS varstring [, lebarfield1 AS varstring 2, …]

Dimana:

nomfile : bilangan sesuai dengan nomor file yang dibuka dengan statement

OPEN

lebarfield,

lebarfield1 : bilangan yang menyatakan panjang variabel (data) yang akan disimpan

varstring,

varstring1 : nama variabel string yang akan digunakan untuk data yang akan

diakses.

Catatan:

Data yang disimpan ke dalam file harus dalam bentuk string.

Contoh :

Data Mahasiswa akan disimpan ke dalam file random, dengan item-item sebagai

berikut :

Item Tipe Jumlah karakter

NPM Alpanumerik 8 karakter

NAMA Alpanumerik 20 karakter

ALAMAT Alpanumerik 25 karakter

NILAI Numerik 1 digit

(9)

Total jumlah byte yang diperlukan berdasarkan tabel 1 di atas adalah 55 byte

meliputi, 8 byte untuk NPM, 20 byte untuk NAMA, 25 byte untuk ALAMAT dan 2 byte

untuk NILAI.

Penyediaan buffer yang diperlukan adalah :

OPEN “R”, #1, “DataMHS”, 55

FIELD #1, 8 AS NPM$, 20 AS NAMA$, 25 AS ALAMAT$, 2 AS NILAI

Konversi Data

Berikut ini adalah tabel fungsi konversi data.

Konversi Numerik ke Karakter

Nama Fungsi Bentuk Umum

MKI$ Konversi numerik integer MKI$(ekspresi integer)

MKL$ Konversi numerik Long integer MKL$(ekspresi long integer)

MKS$ Konversi numerik single precission MKS$(ekspresi single prec.)

MKD$ Konversi numerik Double precission MKL$(ekspresi double prec.)

Konversi Karakter ke Numerik

Nama Fungsi Bentuk Umum

CVI Konversi karakter 2 byte ke integer CVI(2-byte string)

CVL Konversi karakter 4 byte ke long integer CVL(4-byte string)

CVS Konversi karakter 4 byte ke single precission. CVS(4-byte string)

CVD Konversi karakter 8 byte ke double precission. CVD(8-byte string)

(10)

Penyimpanan Data ke Buffer

Ada dua bentuk perintah untuk meletakkan data ke dalam buffer :

LSET : meletakkan data ke dalam buffer dengan posisi merapat ke kiri

RSET : meletakkan data ke dalam buffer dengan posisi merapat ke kanan

Bentuk Umum :

dimana,

varstring : nama variabel yang telah didefinisikan dengan FIELD

ekspstring : variabel string atau ekspresi string yang akan ditempatkan dalam

buffer

Contoh :

OPEN “R”, #1, “DataMHS”, 55

FIELD #1, 8 AS NPM$, 10 AS Nama$

LSET Nama$ = “Andi”

RSET NPM$ = “5523”

Hasil dalam buffer:

A N D I

5 5 2 3

RSET varstring = ekspstring

LSET varstring = ekspstring

(11)

Penulisan Data ke Dalam File

Untuk menuliskan data ke dalam file digunakan statement PUT.

Bentuk Umum :

PUT #nomFile [, nomRec]

dimana,

nomFile : nomor file yang akan digunakan untuk menyimpan data

nomRec : bilangan bulat antara 1 sampai 2.147.483.647 yang

menyatakan nomor record tempat data disimpan

Contoh :

Menyimpan data pada posisi record ke-2

PUT #1, 2

Contoh Aplikasi 1

Pembuatan file random untuk menyimpan data mengenai nama, alamat, dan nomor

telepon. Nama filed yang akan dibuata adalah TELEPON.DTA. Isi record file adalah

:

Item Jenis Jumlah karakter

Nama Alpanumerik 20 karakter

Alamat Alpanumerik 30 karakter

Telepon Numerik 7 digit

(12)

‘====================================================

‘Program : RANDOM1.BAS

‘Keterangan : Contoh penulisan data ke file random

‘====================================================

OPEN “R”, #1, “C:\DATA\TELEPON.DTA”, 57

FIELD #1, 20 AS Nama$, 30 AS Alamat$, 7 AS Telepon$

LOCATE 6, 19: LINE INPUT Alm$

LOCATE 7, 19: LINE INPUT Tlp$

Referensi

Dokumen terkait

Jika isinya tidak sama maka proses kembali ke langkah 6 untuk membaca record berikutnya di file INDUK.DTA. Sebaliknya, jika isinya sama maka lanjutkan ke langkah 10 untuk

Sama seperti penghapusan, proses pencarian ini dilakukan dengan membaca record satu per satu mulai dari awal record sampai record terakhir8. Setiap record yang

Baca record dari FILE01, variable yang digunakan untuk menampung data dari file ini adalah :.. Periksa isi record, jika isinya sama dengan /* maka

Dalam hal ini, tempat penyimpanan data sudah diatur sedemikian rupa, sehingga setiap data akan tersimpan didalam tempat-tempat yang telah ditentukan sesuai dengan nomor data

 Merupakan cara untuk mengorganisasikan record-record dalam suatu file dengan mengidentifikasikan record dengan nilai key yang diperlukan..  Record tidak perlu tersortir secara

Meskipun berasal dari software yang sama namun jenis file csv memiliki kualitas yang lebih baik dibandingkan dengan jenis file xlsx jika dilihat dari

Jika nilai yang didelete lebih dari satu pada file master, maka pada file indeks, nilai yang didelete tidak perlu dihapus.  Pada sparse

Pada setiap teks hapus, tujukan link ke sebuah halaman dengan mengirimkan parameter nilai kunci pada setiap link yang bertujuan untuk menghapus record/data-data yang akan dihapus..