• Tidak ada hasil yang ditemukan

10. OPERASI FILE SEQUENTIAL. Operasi terhadap file yang diorganisir secara sequential hanya dapat dilakukan secara berurutan.

N/A
N/A
Protected

Academic year: 2021

Membagikan "10. OPERASI FILE SEQUENTIAL. Operasi terhadap file yang diorganisir secara sequential hanya dapat dilakukan secara berurutan."

Copied!
17
0
0

Teks penuh

(1)

10. OPERASI FILE SEQUENTIAL

Operasi terhadap file yang diorganisir secara sequential hanya dapat dilakukan secara berurutan.

I. PENYISIPAN RECORD / PENAMBAHAN RECORD BARU

Untuk penambahan record ke dalam suatu file, maka posisi record terakhir harus diketahui, karena record yang baru diletakan pada posisi setelah record terakhir.

Flowchart proses penyimpanan data ke file start NPMO=NPM NM$O=NM$ NILAIO=NILAI END WRITE NPMO,NMO,NILAIO NPM= 0 Input NPM, NM$, NILAI

(2)

Flowchart proses penambahan record baru. start INPUT NM1,UM1, ALM1 /* Read Data NM,UM,ALM NMO= NM1 UMO=UM1 ALMO=ALM1 WRITE NMO,UMO,ALMO END

• Jika yang akan dilakukan adalah menyisipkan recor yang sudah ada, maka diperlukan satu file baru untuk menampung hasil akhir dari penyisipan. • Untuk penyisipan record, posisi yang akan ditempati oleh record baru harus

diketahui dengan jelas

• Posisi ini dpat diketahui dengan cara memeriksa salah satu isi dari suatu record

(3)

• Sedang file yang akan disisipkan data diambil dari FILE01 dan file baru hasil penyisipan adalah FILE 02

FILE 02

FILE 01

II. PENGHAPUSAN RECORD

• Penghapusan dilakukan dengan cara membaca record satu persatu lalu menuliskan kembali ke file baru.

• Namun dalam proses pembacaan tersebut dilakukan pemeriksaan terhadap setiap record.

• Jika pada waktu pembacaan record ditemukan reocrd yang akan dihapus maka record tersebut diabaikan atau tidak ditulis ke file baru.

• Penghapusan record dilakukan terhadap file FILE01. Record yang akan dihapus diinput melalui keyboard. Hasil penghapusan record disimpan di dalam file FILE02.

System flowchart proses penghapusan record

FILE 02

(4)

Flowchart penghapusan record START INPUT NMH 1 READ FILE 01 NM1, UM1, AKM1 /* END NM1= NMH 1 NMO=NM1 UMO=UM1 ALMO=ALM1 WRITE FILE02 NMO,UMO,ALMO

(5)

III. PERUBAHAN ISI RECORD

• Perubahan record merupakan modifikasi terhadap isi record dari suatu file. • Record yang akan dimodifikasi dicari dengan memeriksa isi salah satu field. • Untuk mengadakan perubahan pada record ke – 3 maka proses

pembacaan record dilakukan mulai dari record pertama sampai pada record yang dituju.

Flowchart perubahan record

start Input NAMA$ 1 Baca FILE02 NPM2,NM2$, NILAI /* END NM2= NAMA 2 INPUT NPMB,NMB$, NILAIB NPMO=NPMB NMO$=NMB$ NILAIO=NILAIB 1 WRITE FILE02 NPMO,NMO$,NILAIO 2

(6)

STATEMENT BASIC UNTUK ORGANISASI FILE

Membuka File

Sebelum data yang disimpan dalam file data bisa dibaca, atau untuk menyimpan data ke dalam file data, terlebih dahulu file data tersebut harus dibuka. Pada saat membuka file data akses urut, tentukan terlebih dahulu apakah file tersebut sebagai file input, yaitu file yang isinya akan dibaca, atau sebagai file output, yaitu tempat untuk merekam data.

Bentuk umum statemen untuk membuka file data akses urut adalah sebagai berikut :

OPEN “mode”,[#]nomor file,namafile

Keterangan :

mode : adalah mode operasi dari file yang akan dibuka. Pada file data akses urut, mode file dibedakan menjadi 2, yaitu :

O : menunjukkan output mode, yaitu file akan digunakan untuk diisi dengan data (output akan direkamkan ke file). I : menunjukkan input mode, yaitu file akan digunakan untuk

diambil datanya (input akan diambil dari file).

Nomor file : merupakan bilangan bulat antara 1 sampai dengan 255. Digunakan untuk menyatakan nomor file yang akan dibuka.

(7)

Alternatif lain untuk statemen OPEN adalah :

OPEN nama file FOR mode AS [#]nomor file

Keterangan :

mode : terdiri atas 3 macam, yaitu

OUTPUT sama dengan mode “O”

menunjukkan bahwa file akan dibuka sebagai file output, yaitu file yang akan diisi. Perlu berhati-hati karena jika file yang akan dibuka belum ada, maka file akan dibuat, dan siap diisi data. Tetapi jika nama file sudah ada dalam media eksternal yang dimaksud, maka file tersebut akan dikosongkan terlebih dahulu, yakni dengan menghapus semua isinya, kemudian data yang baru akan dituliskan ke dalam file yang sudah kosong tersebut.

INPUT sama dengan mode “I”

menunjukkanbahwa file akan dibuka sebagai file input, yaitu file yang isinya akan dibaca.

APPEND menunjukkan append mode, yaitu pada waktu file dibuka, posisi file berada di akhir file, sehingga file dapat ditambah dengan data yang baru. Mode ini tidak terdapat pada alternatif pertama. Dalam hal ini, file yang ditunjuk harus sudah ada dalam media eksternal yang dimaksud. Jika pilihan in idigunakan, maka file yang lama akan tetap ada, lengkap dengan datanya, sedangkan data yang baru akan ditambahkanpada posisi setelah data yang lama.

(8)

Contoh penulisan statemen OPEN untuk membuat file yang baru (output mode) : OPEN “O”,#1,”HASIL.DAT”

Atau dapat dituliskan dengan alternatif kedua sebagai berikut : OPEN “HASIL.DAT” FOR OUTPUT AS #1

Artinya : Buat file HASIL.DAT untuk diisi data.

Contoh penulisan statemen OPEN untuk membuka file yang telah ada (input mode) :

OPEN “I”,#1,”C:\Mydocumen\ALAMAT.DAT”

Atau dapat dituliskan dengan alternatif kedua sebagai berikut : OPEN “ALAMAT.DAT” FOR INPUT AS #1

Artinya : Buka file ALAMAT.DAT yang tersimpan pada direktori Mydocument yang ada pada Drive C.

Menutup File

File yang sudah diisi data perlu ditutup. Kegunaannya adalah untuk bahwa pada saat file ditutup, semua data yang ada di dalam penyangga (buffer, yaitu tempat penyimpan data sementara yang menggunakan memori internal) akan dituliskan kedalam file, sehingga menghindari kemungkinan adanya data yang hilang.

Kegunaan yang kedua adalah untuk membebaskan nomor file, sehingga bisa digunakan oleh program yang lain.

(9)

Bentuk umum :

CLOSE [#nomor file]

Dengan nomor file adalah nomor file yang akan ditutup. Jika nomor file tidak dituliskan, maka semua file yang sedang terbuka akan ditutup semuanya.

Menyimpan Data Ke File

Untuk merekam / menyimpan data kedalam file digunakan statemen WRITE#.

Bentuk umumnya :

WRITE #nomor file,dafpar

Keterangan:

Nomor file : menyatakan nomor dari file yang akan digunakan untuk menyimpan rekaman data. File yang akan digunakan harus sudah dibuka dengan menggunakan statemen OPEN dalam bentuk OUTPUT atau APPEND.

Dafpar : merupakan ekspresi string atau numerik yang menyatakan data yang akan disimpan ke dalam file.

Contoh :

WRITE #1, “Zeini”,23,”Jakarta”

Selain penulisan menggunakan statemen WRITE#, terdapat alternatif lain untuk penulisan data, yaitu dengan menggunakan statemen PRINT#.

(10)

Bentuk umumnya :

PRINT #nomor file,dafpar

Keterangan :

nomorfile dan dafpar fungsinya sama dengan nomor file dan dafpar pada statemenWRITE#

Contoh :

PRINT#1,”Zeini”,23,”Jakarta”

Contoh : Menyimpan data ke dalam suatu file dengan nama ALAMAT yang akan disimpan pada direktori MYDATA yang ada pada drive C.

OPEN “C:/MYDATA/ALAMAT” FOR OUTPUT AS #1 WRITE#1,”Zeini”,23,”Jakarta” WRITE#1,”Rudi”,30,”Bandung” WRITE#1,”Supriyatno”,26,”Jakarta” WRITE#1,”Sari”,24,”Jakarta” WRITE#1,”Jhonny”,19,”Jakarta” WRITE#1,”Abdi”,25,”Jakarta” CLOSE#1 END

Setelah program di atas dijalankan, maka pada direktori MYDATA yang ada pada drive C akan terbentuk satu file baru dengan nama ALAMAT. Dengan menggunakan statemen WRITE#, susunan data di dalam file ALAMAT dapat digambarkan sebagai berikut :

(11)

”Sari”,24,”Jakarta” ”Jhonny”,19,”Jakarta” ”Abdi”,25,”Jakarta”

Dari susunan diatas terlihat bahwa data yang disimpan didalam file dipisahkan dengan tanda koma.

Bandingkan dengan jika penulisan data menggunakan statemen PRINT# OPEN “C:/MYDATA/ALAMAT” FOR OUTPUT AS #1

PRINT#1,”Zeini”,23,”Jakarta” PRINT#1,”Rudi”,30,”Bandung” PRINT#1,”Supriyatno”,26,”Jakarta” PRINT#1,”Sari”,24,”Jakarta” PRINT#1,”Jhonny”,19,”Jakarta” PRINT#1,”Abdi”,25,”Jakarta” CLOSE#1 END Hasilnya : Zeini 23 Jakarta Rudi 30 Bandung Supriyatno 26 Jakarta Sari 24 Jakarta Jhonny 19 Jakarta Abdi 25 Jakarta

Dari susunan di atas terlihat bahwa antara field yang satu dengan field yang lainnya tidak dipisahkan oleh tanda koma sebagai pembatas (delimiter). Sehingga dalam satu record akan dianggap hanya terdiri dari satu field saja. Oleh sebab itu,

(12)

agar posisi field-field dalam satu record tetap terjaga maka sebaiknya gunakan statemen WRITE# untuk menulis data ke dalam file.

Mengambil Data Dari File

Untuk membaca atau mengambil data yang tersimpan dalam suatu file maka diperlukan proses pembacaan data. Untuk itu digunakan statemen INPUT#. Bentuk umumnya :

INPUT #nomor file, varlist

Keterangan :

Nomor file : merupakan nomro dari file yang akan dibaca. File yang akan digunakan harus sudah dibuka dengan menggunakan statemen OPEN dalam bentuk INPUT.

Varlist : merupakan nama variabel yang akan digunakan untuk menampung data yang dibaca. Variabel ini dapat berupa variabel string maupun numerik tetapiharus disesuaikan dengan data yang akan dibaca.

Langkah-langkah di dalam menampilkan semua data yang ada didalam filedata akses urut adalah sebagai berikut :

1. File dibuka dengan mode “I” atau INPUT, karena data akan diambil dari file ini.

2. Data diambil atau dibaca dari file mulai dari record pertama sampai dengan record terakhir atau akhir dari file. Akhir dari file dapat dideteksi dengan fungsi EOF dengan sintaks :

EOF(nomor file)

3. Bila belum sampai di akhir file atau belum mencapai record yang terakhir, maka data dapat dibaca dengan menggunakan statemen INPUT#.

(13)

Contoh : Mencetak isi data yang tersimpan di dalam file ALAMAT yang ada pada direktori MYDATA pada drive C. File ini sebelumnya telah dibuat dengan menggunakan statemen WRITE#.

PRINT “DAFTAR ALAMAT KOLEGA “ PRINT

PRINT

PRINT ”---“ PRINT “NAMA UMUR ALAMAT “ PRINT”---“ Items$= “\ \ ## \ \” OPEN “C:\MYDATA\ALAMAT” FOR INPUT AS #1

Do Until EOF(1)

INPUT #1,Nm$,Umur,ALM$ PRINT USING item$; Nm$; Umur;ALM$ LOOP

PRINT”---“ CLOSE

(14)

Hasil setelah dijalankan :

DAFTAR ALAMAT KOLEGA

--- NAMA UMUR ALAMAT

--- Zeini 23 Jakarta Rudi 30 Bandung Supriyatno 26 Jakarta Sari 24 Jakarta Jhonny 19 Jakarta Abdi 25 Jakarta --- Menambah Data

Untuk menambah data di dalam file diperlukan penulisan dengan menggunakan WRITE#, namun dalam file yg diorganisasikansecara urut, akses terhadap recorddata akan dilakukan secara berurutan mulai dari recordpertama sampai dengan terakhir.

Jadi penambahan data dapat menyebabkan data yang telah disimpan sebelumnya akan terhapus. Hal ini disebabkan data yang baru akan ditulis dengan cara menimpa data sebelumnya. Untuk itu penambahan data harus dilakukan dengan memperhatikan record data didalamnya.

Agar dalam penambahan data tidak menyebabkan data yang lama terhapus, maka digunakan mode APPEND pada statemen OPEN sewaktu

(15)

Mode APPEND menyebabkan penunjuk (pointer) record akan ditempatkan diakhir file yaitu record terakhir. Dengan demikian,penambahan record akan dimulai pada record terakhir sehingga tidak menghapus record sebelumnya.

Contoh : Menambah data yang yang akan tersimpan pada file ALAMAT, dimana file ini sebelumnya telah dibuat dengan menggunakan statemenWRITE#. OPEN “C:\MYDATA\ALAMAT” FOR APPEND AS #1

Nama$ = “xxx”

DO UNTIL Nama$=””

INPUT “Nama = “; Nama$ If Nama$=””THEN EXIT DO INPUT “Umur =”;Umur

INPUT “Alamat= “;ALM$

PRINT “---“ WRITE#1, Nama$, Umur, ALM$

LOOP CLOSE END

Hasil setelah dijalankan :

Nama = Iwan Umur = 32

Alamat = Jakarta

---

maka di dalam file ALAMAT akan bertambah satu data baru pada record terakhir sehingga hasilnya jika program untuk membaca isi data pada contoh sebelumnya dijalankan adalah sebagai berikut :

(16)

DAFTAR ALAMAT KOLEGA

--- NAMA UMUR ALAMAT

--- Zeini 23 Jakarta Rudi 30 Bandung Supriyatno 26 Jakarta Sari 24 Jakarta Jhonny 19 Jakarta Abdi 25 Jakarta Iwan 32 Jakarta ---

Record baru menempati posisi record yang terakhir.

SOAL FILE SEQUENTIAL

1. Buat flowchart untuk menyimpan data ke dalam file. Spesifikasi data tersebut adalah : nomor induk pegawai, nama pegawai, alamat dan gaji pokok. Proses input data berakhir jika operator mengisi 0 untuk nomor induk pegawai.

2. Buat flowchart dengan permasalahan soal no.1 namun data pegawai yang disimpan ke file hanya pegawai dengan gaji pokok > 200. Sebaliknya, untuk gaji pokoklebih kecil atau sama dengan 200 dicetak melalui printer.

(17)

3. Perhatikan sistem flowchart sebagai berikut :

Mhsnew.dat

Mhs.dat

File mhs.dat terdiri dari field : nomor induk mahasiswa, nama, alamat, dan ipk. Buat flowchart untuk proses penghapusan record filemhs.dat. Spesifikasi proses adalah sebagai berikut :

- Record yang dihapus ditentukan berdasarkan nomor induk mahasiswa ( NIM ) yang diinput melalui keyboard

- Data di dalam file.mhs.dat telah diurutkan berdasarkan NIM

- Hasil proses penghapusan pada file mhs.dat disimpan ke file mhsnew.dat - Proses selesai jika operator mengetik 0 untuk nomor induk mahasiswa.

Referensi

Dokumen terkait

Variabel LDR, IPR, ROA secara parsial mempunyai pengaruh positif yang signifikan terhadap CAR pada Bank Pembangunan Daerah di Indonesia periode triwulan I 2009

Penelitian yang telah dilakukan memiliki keterbatasan objek penelitian yaitu penelitian ini hanya terbatas pada aktivitas antioksidan pada ekstrak kasar daun jambu

Dari segi teori dapat diketahui pola sintaksis yang digunakan dalam penelitian tersebut dan dari segi cara menganalisis verba ujaran tampak pada penggunaan parafrase yang

Projek yang dicadangkan adalah untuk memberi rekabentuk dan konsep yang baru bagi pawagam Golden Screen Cinema di samping memberikan susana yang lebih praktikal dan

Penerapan tanggung jawab sosial (Corporate Sosial Responsibility) juga berlaku bagi perusahaan-perusahaan yang terdaftar di Bursa Efek Indonesia. Dimana, peneliti

Penyebab dari kenakalan remaja dari faktor internal adalah keinginan untuk terlihat sebagai remaja gaul dan keinginan untuk mencoba sesuatu yang baru..

Penduduk yang kehilangan akses pendidikan, kesehatan, pekerjaan, hingga pangan menunjukkan bahwa program Villagization yang didukung oleh bantuan luar negeri USAID

Dalam Islam menurut konsep al Ghazali, Riya‟ dan „Ujub sebagai konsep pembanding teori pertama, bahwa mahasiswa dalam melakukan swafoto ada indikasi mereka