Anda di halaman 1dari 24

ORGANISASI FILE

(OPERASI FILE SEQUENTIAL)

File adalah kumpulan semua catatan data atau data record yang
berhubungan dengan suatu subyek tertentu
Contoh : File data mahasiswa menjelaskan data-data mahasiswa per fakultas
atau jurusan

Istilah-istlah pada file adalah Elemen Data dan Record.


Elemen Data (Field) merupakan unit data terkecil yang tidak dapat dibagi
lagi menjadi unit yang berarti.
Contoh : elemen data (field) dalam record mahasiswa adalah nama
mahasiswa, umur dan alamat

Record (Catatan), terdiri dari semua elemen data yang berhubungan


dengan suatu objek atau kegiatan tertentu

Operasi File sequential Terdiri dari : Penyisipan Record, Penghapusan Record


dan Perubahan Isi Record

Penyisipan Record
File merupakan berkas yang berisi data. Dimana didalamnya terdapat
record yang memuat informasi. Di bawah ini terlampir data yang akan
disimpan ke dalam file

NAMA MAHASISWA UMUR ALAMAT


Bimbi 15 Setia Budi, Jakarta
Anang 27 Grogol, Jakarta
Ikram 31 Kebayoran, Jakarta
Dewi 24 Dago, Bandung
John Fair 19 Sunter, Jakarta
Shelli 32 Pd. Bambu, Jakarta

Data diatas terdiri atas tiga item yaitu nama, umur dan alamat. Untuk proses
penyimpanan ke file maka perlu disiapkan variable yang dipakai sebagai
variable input dan output. Proses ini digambarkan melalui flowchart berikut :
Gambar 7.1: Flowchart penyimpanan data ke file

Start

Input
NM, UM, ALM

NM = ‘ ‘ End

NMO = NM
UMO = UM
ALMO = ALM

Write
NMO, UMO, ALMO

Berdasarkan flowchart di atas, variable yang berfungsi sebagai input adalah :


NM : Data Nama
UM : Data Umur
ALM : Data Alamat
Sedangkan variable yang berfungsi sebagai output adalah :
NMO : Data Nama
UMO : Data Umur
ALMO: Data Alamat
Setelah semua data tersimpan di dalam file, isi file secara logika dapat
digambarkan seperti berikut :

Bimbi 15 Setia Budi, Jakarta Record 1

Anang 27 Grogol, Jakarta Record 2

Ikram 31 Kebayoran, Jakarta Record 3

Dewi 24 Dgo, Bandung Record 4

John Fair 19 Sunter, Jakarta Record 5

Shelli 32 Pd. Bambu, Jakarta Record 6

/* Record Akhir

Tanda /* biasanya digunakan sebagai tanda dari record sebagai tanda dari
record yang terakhir. Selain tanda /* juga sering dipakai sebagai akhir file
adalah EOF (end of file).

File yang diorganisir secara sequential hanya dapat diakses secara


berurutan. Misalnya jika ingin mengadakan perubahan pada record ke-5
maka proses pembacaan record dilakukan mulai dari record pertama
sampai pada record yang dituju.

Misalnya, untuk penambahan record ke dalam suatu file, maka posisi record
terakhir harus diketahui. Karena record baru diletakkan pada posisi setelah
record terakhir. Berikut ini terlampir flowchart yang memperlihatkan proses
penambahan record baru (gambar 7.2).
Gambar 7.2: Flowchart penambahan record

Start

Read Data
NM, UM, ALM

T /*

Y
Input
NM1, UM1, ALM1

NMO = NM1
UMO = UM1
ALMO = ALM1

Write
NMO, UMO, ALMO

End

Berdasarkan flowchart diatas terlihat bahwa proses pertama kali membaca


record didalam file secara berurutan.
Proses dilakukan berulang sampai ditemukan tanda dari akhir file yaitu /*.
Setelah itu, proses berikutnya adalah menunggu input data yang akan
ditambahkan sebagai record baru didalam file.
Penambahan record baru tersebut diletakkan pada posisi akhir dari file.
Proses ini hanya menambahkan record baru dan menempatkannya pada
posisi record terakhir.

Bagaimana halnya jika record baru disisipkan di antara dua record yang ada
didalam file? Misalnya record baru dengan data sebagai berikut :
Nama = Faisal
Umur = 25 tahun
Alamat = Rawamangun, Jakarta

Akan disisipkan pada posisi record seperti yang terlihat pada gambar
dibawah ini :

Bimbi 15 Setia Budi, Jakarta Record 1

Anang 27 Grogol, Jakarta Record 2

Ikram 31 Kebayoran, Jakarta Record 3


……….Posisi record yang akan disisipkan ………..
Dewi 24 Dago, Bandung Record 4

John Fair 19 Sunter, Jakarta Record 5

Shelli 32 Pd. Bambu, Jakarta Record 6

/* Record Akhir

Untuk penyisipan record, posisi yang akan ditempati oleh record baru harus
diketahui dengan jelas. Posisi ini dapat diketahui dengan cara memeriksa
salah satu isi field dari suatu record.

Dari ilustrasi gambar di atas terlihat bahwa data yang akan disisipkan
diletakkan pada posisi setelah record dengan file NAMA yang berisi IKRAM.

Proses penyisipan record juga memerlukan satu file baru untuk menampung
hasil akhir dari penyisipan.
Dibawah ini terlampir system flowchart yang memperlihatkan proses tersebut.

System flowchart untuk penyisipan record

FILE
02

FILE
01

System flowchart diatas memperlihatkan bahwa data yang akan disisipkan


diinput melalui keyboard.

File yang akan disisipkan data tersebut diambil dari FILE01, sedangkan file
baru hasil penyisipan adalah FILE02.
Berikut ini terlampir flowchart yang memperlihatkan proses penyisipan record
secara rinci.

Start

Input
NMS, UMS, ALMS

Read FILE01
NM, UM, ALM

/* End

NMO = NM y
UMO = UM
ALMO = ALM

Write FILE02
NMO, UMO, ALMO
t

NMO = NM
NM=
UMO = UM
’IKRAM’
ALMO = ALM

Write FILE02
NMO, UMO, ALMO
Dari flowchart di atas, proses penyisipan dapat diurutkan sebagai berikut :
1. Proses pertama adalah menunggu input data dari keyboard. Input ini
berupa data yang akan disisipkan ke dalam file. Variabel yang dipakai
sebagai input adalah :
NMS : Variabel Nama
UMS : Variabel Umur
ALMS : Variabel Alamat

2. Baca record dari FILE01, variable yang digunakan untuk menampung


data dari file ini adalah :
NM : Variabel Nama
UM : Variabel Umur
ALM : Variabel Alamat

3. Periksa isi record, jika isinya sama dengan /* maka proses berakhir

4. Pindahkan record dari FILE01 yang tersimpan didalam variabel NM, UM,
ALM ke variable penampung untuk FILE02. Variabel penampung
tersebut adalah :
NMO : Variabel Nama
UMO : Variabel Umur
ALMO: Variabel Alamat

5. Pindahkan data di variable penampung ke dalam file FILE02

6. Periksa isi variable NM, jika isi NM tidak sama dengan ‘IKRAM’ maka
proses kembali ke langkah 2 untuk membaca record selanjutnya.
Jika isi NM = ‘IKRAM’ maka lakukan langkah 7

7. Pindahkan data yang akan disisipkan ke variable penampung untuk


FILE02. Data yang akan disisipkan ini tersimpan di dalam variable NMS,
UMS, ALMS

8. Pindahkan data di dalam variable penampung ke dalam file FILE02

9. Kembali ke langkah 2 untuk data berikutnya


Setelah proses di atas dilakukan maka terbentuk satu file baru yaitu FILE02.
File ini berasal dari file sebelumnya yaitu FILE01 namun telah disisipkan satu
data.

Susunan record FILE02 dapat dilihat di bawah ini.

Bimbi 15 Setia Budi, Jakarta Record 1

Anang 27 Grogol, Jakarta Record 2

Ikram 31 Kabayoran, Jakarta Record 3

Faisal 25 Rawamangun, Jakarta Record 4

Dewi 24 Dago, Bandung Record 5

John Fair 19 Sunter, Jakarta Record 6

Shelli 32 Pd. Bambu, Jakarta Record 7

/* Record Akhir

Penghapusan Record

Penghapusan record hampir serupa dengan proses penyisipan record. Proses


penghapusan dilakukan dengan cara membaca record satu per satu lalu
menuliskan kembali ke file baru. Namun dalam proses pembacaan tersebut,
dilakukan pemeriksaan terhadap setiap record. Jika pembacaan tersebut,
dilakukan pemeriksaan terhadap setiap record. Jika pada waktu
pembacaan record ditemukan record yang akan dihapus maka record
tersebut diabaikan atau tidak ditulis ke file baru.
Record yang akan dihapus dapat diketahui dengan cara memeriksa salah
satu isi field dari suatu record. Dibawah ini terlampir system flowchart yang
memperlihatkan proses penghapusan record (lihat keterangan gambar 7.5)
System Flowchart Penghapusan Record (Gambar 7.5)

Penghapusan record dilakukan terhadap FILE01. Record yang akan dihapus


diinput melalui keyboard. Hasil penghapusan record disimpan didalam file
FILE02.

Di bawah ini terlampir struktur file dari FILE01 yang akan dihapus.

Bimbi 15 Setia Budi, Jakarta Record 1

Anang 27 Grogol, Jakarta Record 2

Ikram 31 Kebayoran, Jakarta Record 3

Faisal 25 Rawamangun, Jakarta Record 4

Dewi 24 Dago, Bandung Record 5

John Fair 19 Sunter, Jakarta Record 6

Shelli 32 Pd. Bambu, Jakarta Record 7

/* Record Akhir
Record nomor 5 dengan field nama yang berisi ‘DEWI’ akan dihapus.
Flowchart untuk proses penghapusan adalah sebagai berikut :

Start

Input
NMH

Read FILE01
NM1, UM1, ALM1

/* End

y
NM1 =
1
NMH

t
NMO = NM1
UMO = UMO1
ALMO = ALM1

Write FILE02
NMO, UMO, ALMO

Berdasarkan flowchart di atas, proses penghapusan record dapat


diurutkan sebagai berikut :
1. Proses pertama adalah menunggu input data dari keyboard. Data ini
menunjukkan record data yang akan di hapus dan disimpan didalam
variable NMH. Berdasarkan contoh ini maka variable NMH diisi dengan
nama ‘DEWI”
2. Baca record dari FILE01. Variabel yang digunakan untuk menampung
data dari file ini adalah :
NM1 : Variabel Nama
UM1 : Variabel Umur
ALM1 : Variabel Alamat
3. Periksa isi record, jika isinya sama dengan /* maka proses berakhir
4. Periksa isi variable NM1. Jika isi NM1 = NMH berarti record yang
telahdibaca dari file FILE01 merupakan record yang akan dihapus.
Oleh karena itu record ini diabaikan atau tidak perlu ditulis ke file baru
dan proses kembali ke langkah 2 untuk membaca record selanjutnya.
Sebaliknya jika NM1 tidak sama dengan NMH maka lakukan langkah 5
untuk menulis record tersebuit ke file baru yaitu FILE02.
5. Pindahkan record dari FILE01 yang tersimpan di dalam variable NM1,
UM1, ALM1 ke variable penampung untuk FILE02. Variabel penampung
tersebut adalah :
NMO : Variabel Nama
UMO : Varaibel Umur
ALMO: Variabel Alamat
6. Pindahkan data di variable penampung ke dalam file FILE02
7. Kembali ke langkah 2 untuk membaca data berikutnya

Setelah proses di atas dilakukan maka terbentuk satu file baru yaitu FILE02.
File ini merupakan file dari FILE01 yang telah mengalami proses
penghapusan satu record.
Susunan record file FILE02 menjadi seperti yang terlihat berikut .

Bimbi 15 Setia Budi, Jakarta Record 1

Anang 27 Grogol, Jakarta Record 2

Ikram 31 Kebayoran, Jakarta Record 3

Faisal 25 Rawamangun, Jakarta Record 4

John Fair 19 Sunter, Jakarta Record 5

Shelli 32 Pd. Bambu, Jakarta Record 6

/* Record Akhir

Perubahan Isi Record

Perubahan record merupakan modifikasi terhadap isi record dari satu file.
Proses ini hampir serupa dengan proses yang telah di jelaskan sebelumnya.
Record yang akan dimodifikasi di cari dengan memeriksa isi salah satu field.

Misalnya dari file sebelumnya yaitu FILE02 akan dilakukan perubahan isi
record yaitu record ke-4 dengan field nama sama dengan ‘FAISAL’. Maka
flowchartnya adalah (lihat gambar 7.6)
Flowchart Perubahan Data (Gambar 7.6)

Start

Input
NM1

Read FILE02
NM2, UM2, ALM2

/* End 1

NM2 = NM1 Y Input


NMB, UMB, ALMB

NMO = NMB
UMO = UMB
ALMO = ALMB

Write FILE02
NMO, UMO, ALMO

Berdasarkan flowchart diatas, proses perubahan data dapat diurutkan


sebagai berikut :
1. Proses pertama adalah menunggu input data dari keyboard. Data ini
menunjukkan record data yang akan diuabh. Berdasarkan contoh ini
maka variable NM1 diisi dengan nama ‘FAISAL’.
2. Baca record dari FILE02. Variabel yang digunakan untuk menampung data
dari file ini adalah :
NM2 : Variabel Nama
UM2 : Variabel Umur
ALM2 : Variabel Alamat
3. Periksa isi record, jika isinya sama dengan /* maka proses berakhir
4. Periksa isi variable NM2. Jika isi NM2 tidak sama dengan NM1 berarti
record yang telah dibaca dari file FILE02 bukan merupakan record yang
akan diubah. Maka langkah selanjutnya adalah kembali ke langkah 2
untuk membaca record yang lain. Sebaliknya, jika isi NM2 sama dengan
NM1 maka lanjutkan ke langkah 5.
5. Lakukan proses input data. Data ini merupakan data baru yang akan
mengubah data didalam record yang akan diubah. Masing-masing data
dimasukkan di dalam variable :
NMB : Variabel Nama
UMB : Variabel Umur
ALMB : Variabel Alamat
Dalam contoh ini variable tersebut diisi sebagai berikut :
NMB : HARRY
UMB : 30
ALMB : Tebet, Jakarta
6. Perbaharui data yang lama dengan data baru dengan cara
memindahkan data baru ke tempat penampungan data. Variabel yang
digunakan sebagai penampung data adalah :
NMO : Variabel Nama
UMO : Variabel Umur
ALMO : Variabel Alamat
7. Pindahkan data divariabel penampung ke dalam file FILE02
8. Proses selesai

Setelah proses di atas dilakukan maka isi file FILE02 mengalami perubahan
yaitu pada record ke-4.
Dibawah ini terlampir ilustrasi isi file tersebut.

Bimbi 15 Setia Budi, Jakarta Record 1

Anang 27 Grogol, Jakarta Record 2

Ikram 31 Kebayoran, Jakarta Record 3

Harry 30 Tebet, Jakarta Record 4

Dewi 24 Dago, Bandung Record 5

John Fair 19 Sunter, Jakarta Record 6

Shelli 32 Pd. Bambu, Jakarta Record 7

/* Record Akhir
OPERASI FILE RANDOM

Penyisipan Record
Berbeda dengan file sequential, akses pada file random dapat dilakukan
secara acak. Jadi, akses data tidak dilakukan dengan membaca data satu
persatu mulai dari record pertama. Tapi dilakukan dengan nomor record.

Pada prinsipnya, pengisian data ke suatu file random hampir sama dengan
file sequential. Namun akses datanya lebih fleksibel. Karena pencarian record
data dapat dilakukan dengan pindah dari record terakhir ke record awal
atau record lainnya. Perhatikan contoh berikut :

MAST1.DTA MAST2.DTA

File MAST1.DTA dan MAST2.DTA terdiri dari field berikut :


• nomor induk mahasiswa
• nama mahasiswa
• alamat

Data di MAST1.DTA ditambahkan ke MAST2.DTA dengan ketentuan : jika data


MAST1.DTA sudah ada di MAST2.DTA maka data tersebut diabaikan atau
tidak disimpan ke MAST2.DTA. Flowchart untuk proses tersebut dapat
digambarkan sebagai berikut (lihat keterangan gambar 1) :
Gambar 1

Start
1

Read
MAST1.DTA,
NIM1,NM1,AL1

Y
/* End
T

N=0

N=N+1

Read MAST2.DTA
(Record ke N),
NIM2,NM2,AL2

NIMO = NIM1
Write
/* NMO = NM1
MAST2.DTA,NIMO,
ALO = AL1
Y NMO,ALO
T

NIM2 1

Proses-proses yang diperlihatkan melalui flowchart di atas dapat diurutkan


NIM1

sebagai :
1. Proses pertama adalah membaca data di file MAST1.DTA. Variabel
input yang digunakan adalah :
NIM1 : Nomor Induk Mahasiswa
NM1 : Nama Mahasiswa
AL1 : Alamat Mahasiswa
2. Periksa isi record, jika isinya sama dengan /* maka proses berakhir
3. Persiapkan variable untuk menentukan nomor record yaitu N =0.
Nomor record ini menunjukkan record di file MAST2 yang akan diakses.
Dengan diisinya variable N dengan nilai 0 maka pencarian record di
file MAST2.DTA dimulai dari record pertama
4. Variabel N ditambah 1. Proses ini berfungsi sebagai kounter untuk
nomor record
5. Baca record di file MAST2.DTA. Nomor record yang dibaca sesuai
dengan nilai di variable N. Variabel input yang digunakan untuk
menampung data dari file MAST2.DTA adalah :
NIM2 : Nomor Induk Mahasiswa
NM2 : Nama Mahasiswa
AL2 : Alamat Mahasiswa
6. Periksa isi record MAST2.DTA. Jika isinya bukan /* maka lakukan :
• Pembandingan isi record MAST2.DTA dengan record dari
MAST1.DTA. Pembandingan ini dilakukan untuk mengetahui apakah
record di MAST1.DTA sudah terdapat di MAST2.DTA. Jika isinya sama
maka record dari MAST2 diabaikan dan proses kembali ke langkah
1 untuk membaca record berikutnya di file MAST1.DTA. Sebaliknya,
jika isi record MAST2.DTA tidak sama dengan record MAST1.DTA.
Setelah itu kembali ke langkah 1 untuk membaca record berikutnya
di file MAST2.DTA.

Jika isi record MAST2.DTA ternyata sama dengan /* berarti semua record di
MAST2.DTA telah dibandingkan dengan record dari MAST1.DTA. Sehingga
dapat diketahui bahwa record dari MAST1.DTA tidak ada di MAST2.DTA.
Maka simpan data tersebut ke file MAST2.DTA. Setelah itu kembali ke langkah
1 untuk membaca record berikutnya di file MAST1.DTA.

Berdasarkan contoh di atas terlihat bahwa akses terhadap file random


dapat dilakukan dengan menggunakan nomor record. Sehingga dari satu
record dapat pindah ke record lainnya tergantung dari nomor record
tersebut.
Penghapusan Record
Proses penghapusan dilakukan dengan membentuk file baru. Dimana file
baru ini merupakan file berisikan 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 (match) dengan data
yang akan dihapus diabaikan.

Untuk mengetahui record yang akan dihapus diperlukan proses pembacaan


record satu per satu mulai dari record awal sampai record akhir. Lalu record
yang dibaca dibandingkan dengan data yang akan dihapus.
Pembandingan ini dilakukan dengan membandingkan salah satu field kunci
dari record yang dibaca. Jika isi field tersebut ternyata sama (match)
dengan data yang akan dihapus maka record tersebut tidak disimpan ke file
baru. Berikut ini terlampir proses penghapusan record data didalam file
random.

Master.DTA

NEW.DTA
TRASN.DTA
System Flowchart diatas menunjukkan garis besar proses penghapusan
record yang ada di file MASTER.DTA. Record yang dihapus ditentukan
berdasarkan data yang terdapat di file TRANS.DTA. Hasil penghapusan
disimpan di file NEW.DTA. Jadi isi TRANS.DTA merupakan isi MASTER.DTA
setelah mengalamai penghapusan record.

Struktur record file MASTER.DTA terdiri dari field berikut :


• Nomor Induk Mahasiswa
• Nama Mahasiswa
• Alamat Mahasiswa
Sedangkan struktur record file TRANS.DTA hanya terdiri dari field nomor induk
mahasiswa. Field ini menunjukkan record di MASTTER.DTA yang akan dihapus.
Berdasarkan system flowchart dan struktur record file di atas, dapat disusun
flowchart untuk proses penghapusan record seperti berikut :

Flowchart penghapusan record

1
Start

N=0 3 M=M+1

2 N=N+1 Read
TRANS.DTA 2
(Record ke-M),
NIM2
Read MASTER.DTA
(Record
ke-N), Y NIMO = NIM1
NIM1,NM1,AL1
/* NMO = NM1
ALO = AL1
T
NIM2 =
Y /* T NIM1
End Write
T NEW.DTA,NIMO,
3 NMO,ALO
Y
1 M=0
2

Dari flowchart di atas, proses penghapusan record dapat diurutkan sebagai


berikut :
1. Proses pertama kali mempersiapkan variable N=0. Variabel ini
digunakan untuk menentukan nomor record yag dibaca dari file
MASTER.DTA
2. Variabel N ditambah 1. Proses ini berfungsi sebagai kounter untuk
nomor record di MASTER.DTA
3. Baca Record di MASTER.DTA dengan nomor record sesuai dengan isi
variabel N. Variabel yang digunakan sebagai input adalah :
NIM1 : Nomor Induk Mahasiswa
NM1 : Nama Mahasiswa
AL1 : Alamat Mahasiswa
4. Periksa isi record, jika isinya sama dengan /* maka proses berakhir
5. Persiapkan variable untuk menentukan nomor record yang akan
dibaca dari TRANS.DTA yaitu M=0
6. Variabel M ditambah 1. Proses ini berfungsi sebagai kounter untuk
nomor record
7. Baca record di TRANS.DTA dengan nomor record sesuai dengan isi
variable M. Variabel yang digunakan sebagai input adalah : NIM2
untuk Nomor Induk Mahasiswa yang akan dihapus
8. Periksa isi record dari file TRANS.DTA. Jika isinya bukan /* maka lakukan :
• Pembandingan isi record MASTER.DTA dengan record dari TRANS.DTA.
Pembandingan ini dilakukan untuk mengetahui apakah record di
MASTER.DTA ada di TRANS.DTA. Jika isinya sama maka record ini harus
dihapus atau diabaikan. Berarti record ini tidak disimpan di file
NEW.DTA dan proses selanjutnya adalah kembali ke langkah 2 untuk
membaca record berikutnya di file MASTER.DTA. Sebaliknya jika isi
record MASTER.DTA tidak sama dengan record TRANS.DTA maka proses
kembali ke langkah 6 untuk membaca record berikutnya di file
TRANS.DTA

Jika isi record TRANS.DTA ternyata sama dengan /* berarti semua record
di TRANS.DTA telah dibandingkan dengan record dari MASTER.DTA.
Sehingga dapat diketahui bahwa record di MASTER.DTA tidak ada di
TRANS.DTA. Selanjutnya simpan data tersebut ke file NEW.DTA. Setelah itu
kembali ke langkah 2 untuk membaca record berikutnya di file
MASTER.DTA

Perubahan Isi Record


Perubahan isi record dilakukan dengan mencari record yang akan diubah
lalu mengadakan perubahan terhadap isinya. Selanjutnya record tersebut
disimpan kembali tanpa mengubah posisi record.
Sama seperti penghapusan, proses pencarian ini dilakukan dengan
membaca record satu per satu mulai dari awal record sampai record
terakhir. Setiap record yang dibaca dibandingkan melalui field yang
berfungsi sebagai kunci (key). Berikut ini terlampir contoh proses untuk
melakukan perubahan isi 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 kunci (key) yang dipakai adalah Nomor Induk
Mahasiswa. Maka flowchart untuk proses perubahan tersebut adalah

1
Start
3

N=0 M=M+1
2

N=N+1 Read INDUK.DTA


Record Ke-M,
NIM2,NM2,AL2
Read MASTER.DTA
(Record Ke-N)
NIM1,NM1,AL1
/* 2

/*
End
NIM2 = NM2 = NM1
NIM1 AL2 = AL1
1 M=0
Write INDUK.DTA
3 (Record Ke.M)
NIM2,NM2,AL2

2
Dari flowchart di atas, proses perubahan dapat diurutkan sebagai berikut :
1. Proses pertama kali mempersiapkan variable N=0. Variabel ini dipakai untuk
menentukan nomor record yang akan dibaca dari file TRANS.DTA
2. Variabel N ditambah 1. Proses ini berfungsi sebagai kounter untuk nomor
record di TRANS.DTA
3. Baca record di TRANS.DTA dengna nomor record sesuai dengan isi variable N.
Variabel yang digunakan sebagai input adalah :
NIM1 : Nomor Induk Mahasiswa
NM1 : Nama Mahasiswa
AL1 : Alamat Mahasiswa
4. Periksa isi record, jika isinya sama dengan /* maka proses berakhir
5. Persiapkan variable untuk menentukan nomor record yang akan dibaca dari
INDUK.DTA yaitu M=-0
6. Variabel M ditambah 1. Proses ini berfungsi sebagai kounter untuk nomor
record INDUK.DTA
7. Baca record di INDUK.DTA dengan nomor record sesuai dengan isi variable
M. Variabel yang digunakan sebagai input adalah :
NIM2 : Nomor Induk Mahasiswa
NM2 : Nama Mahasiswa
AL2 : Alamat Mahasiswa
8. Periksa isi record, jika isinya sama dengan /* proses kembali ke langkah 2
untuk membaca record berikutnya di TRANS.DTA. Sebaliknya jika isi record
tidak sama dengan /* maka proses dilanjutkan ke langkah 9
9. Bandingkan isi record yang dibaca dari INDUK.DTA dengan record dari
TRANS.DTA. Untuk pembandingan ini digunakan record NIM1 dan NIM2
sebagai field kunci. 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 melakukan perubahan isi record di
file INDUK.DTA
10. Pindahkan isi record dari TRANS.DTA ke INDUK.DTA untuk mengubah isi record
yang lama
11. Simpan record yang telah diubah ke file INDUK.DTA\
12. Kembali ke langkah 2 untuk membaca record berikutnya di file TRANS.DTA

Anda mungkin juga menyukai