• Tidak ada hasil yang ditemukan

SISTEM PENCATATAN PEMAKAIAN FASILITAS MENGGUNAKAN VISUAL BASIC 6.0

N/A
N/A
Protected

Academic year: 2019

Membagikan "SISTEM PENCATATAN PEMAKAIAN FASILITAS MENGGUNAKAN VISUAL BASIC 6.0"

Copied!
86
0
0

Teks penuh

(1)

SKRIPSI

Diajukan untuk Memenuhi Salah Satu Syarat

Memperoleh Gelar Sarjana Teknik

Program Studi Teknik Informatika

Oleh:

Ni Nengah Armoni

995314081

PROGRAM STUDI TEKNIK INFORMATIKA

JURUSAN TEKNIK INFORMATIKA

FAKULTAS TEKNIK

UNIVERSITAS SANATA DHARMA

YOGYAKARTA

(2)
(3)
(4)

memuat karya atau bagian karya orang lain, kecuali yang telah disebutkan dalam

kutipan dalam daftar pustaka, sebagaimana layaknya karya ilmiah.

Yogyakarta,

5

Januari

2007

Penulis

(5)

Berdasarkan jumlah warnet yang ada menyebabkan besarnya persaingan

untuk menarik pengguna. Warnet-warnet tersebut saling berlomba-lomba

menawarkan berbagai fasilitas guna mendukung kenyamanan dan kemudahan

penggunanya. Pada umumnya fasilitas yang ditawarkan oleh warnet-warnet hampir

sama, tetapi ada beberapa warnet yang telah menerapkan fasilitas yang lebih

memudahkan pelayanan, salah satunya, yaitu Billing warnet.

Dalam tugas akhir ini, akan dikembangkan program billing warnet yang

digunakan menjamin keakuratan data pada pembayaran sewa warnet. Selain

memberikan kemudahan bagi seorang kasir untuk penghitungan biaya sewa warnet

oleh pengguna program ini juga dapat memberikan informasi bagi pengguna tentang

sewa yang harus dibayar.

(6)

Segala puji dan syukur kehadirat Ida Sang Hyang Widi Wasa atas anugrah

dan berkat-Nya sehingga penulis dapat menyelesaikan tugas akhir ini dengan judul

Sistem Pencatatan Pemakaian Fasilitas menggunakan Visual Basic 6.0

” ini

dengan baik. Penyusunan tugas akhir ini merupakan salah satu syarat untuk

menyelesaikan program sarjana (S-1) yang ada di Jurusan Teknik Informatika

Fakultas Teknik Universitas Sanata Dharma Yogyakarta.

Terwujudnya laporan tugas akhir ini berkat bantuan dan dorongan dari

berbagai pihak. Oleh sebab itu, pada kesempatan ini penulis ingin mengucapkan

terimakasih yang sebesar-besarnya atas segala bantuan dan jasa yang diberikan dalam

menyelesaikan tugas akhir ini, khususnya kepada:

1.

Rm. Greg. Helairko, selaku Dekan Fakultas Teknik atas bantuannya selama

ini.

2.

Ibu Agnes Maria Polina, S.Kom., M.Sc. selaku Ketua Jurusan Teknik

Informatika, atas bantuan dan dorongan serta semangat yang ibu berikan.

Terimakasih bu... karena ibu tidak pernah bosan membimbing kami.

3.

Drs. Haris Sriwindono, Skom, Selaku Dosen Pembimbing atas masukannya.

4.

Bapak Yudianto Asmoro, S.T. selaku dosen pembimbing akademik yang

banyak membantu dalam menyelesaikan kuliah.

(7)

7.

Ngebee “

Bentet

” makasih ya udah nemenin aku selama ini, makasi juga atas

dorongan dan semangatnya.

8.

Buat sahabatku DC, makasih atas semua bantuannya.

9.

Buat temen-temen di pondok Mapasadha atas suka dukanya selama ini. Untuk

Galih Thanx’s banget udah ngasi gratis ngenet diwarnetmu.

10.

Teman-teman seperjuanganku, Gogon, Anna, Piere, Irma, Kyky, Agus, Wisnu

Djawa dan yang lainnya. Eks TI 99 Wisnu “Jongos”, VQ, Indrug.

Teman-teman TI 99, untuk kebersamaanya selama ini.

11.

Teman-teman di kos 20e, Rino, Lodong, Kucrit, Maz Polo, Kepek, Jenggot,

Kumprung, Heru, dan Mandul.

Penulis menyadari masih ada banyak kekurangan dalam menyusun Tugas

akhir ini. Kritik dan saran yang bersifat membangun untuk perbaikan kegiatan pada

masa mendatang sangat diharapkan. Semoga Tugas Akhir ini dapat bermanfaat bagi

pembaca khususnya mahasiswa Teknik Informatika Universitas Sanata Dharma.

Yogyakarta, Januari 2007

(8)

BAB I

PENDAHULUAN

1.1

Latar Belakang

Sejak ditemukan komputer pertama kali, perkembangan teknologi dan

ilmu pengetahuan mengalami kemajuan yang semaki pesat hampir disegala

penjuru dunia. Kemajuan teknologi komputer yang begitu dominan menggebrak

dunia masih terus berlanjut hingga kini.

Kehadiran komputer tidak dapat disangkal lagi, yang membawa pengaruh

cukup besar terhadap kehidupan manusia. Sebelum adanya komputer pekerjaan

dilakukan secara manual dan membutuhkan waktu yang cukup lama, dan juga

keakuratan data kurang terjamin, tetapi dengan adanya komputer

kendala-kendala tersebut sudah dapat diatasi.

(9)

1.2

Rumusan Masalah

Dari uraian diatas, penulis mencoba untuk mempelajari bagaimana

membuat suatu program sistem pencatatan pemakian fasilitas yang

memperhatikan kemudahan bagi kasir dan pengguna dalam memperoleh

informasi biaya sewa pemakaian pada sebuah fasilitas.

1.3

Batasan Masalah

Supaya ruang lingkup penelitian tidak terlalu luas, maka program sistem

pencatatan pemakian fasilitas yang akan dibuat dibatasi oleh:

1.

Program ini hanya untuk perhitungan biaya sewa yang harus

dibayarkan pengguna kepada kasir.

2.

Kasir tidak bisa mengupdate data, ataupun menginputkan data. Yang

bisa mengupdate atau memasukkan data adalah administrator.

3.

Untuk keamanan, database hanya bisa diakses melalui

local host

.

4. Pengaksesan database menggunakan hak akses.

1.4

Tujuan Penelitian

Penulisan ini bertujuan dan bermanfaat untuk:

1.

Memudahkan pelayanan kepada pengguna fasilitas, yaitu dengan

memberikan informasi mengenai biaya sewa pemakian fasilitas dan

lamanya pemakaian.

(10)

3.

Memberikan kontribusi (pemikiran maupun program) mengenai

pemrograman khususnya sistem pencatatan pemakaian fasilitas

dengan menggunakan bahasa pemrograman Visual Basic 6.0

1.5

Metodelogi Penelitian

Metode penulisan yang digunakan adalah:

1.

Pengumpulan bahan sebagai dasar pembuatan program.

2.

Merancang program antara lain merancang sistem secara umum,

merancang menu, merancang tampilan yang dipergunakan.

3.

Membuat program, mengkonversikan rancangan kebentuk nyata satu

program utuh.

4.

Menganalisa dan menguji program.

1.6

Sistematika Penulisan

Sistematika penulisan yang digunakan adalah sebagai berikut:

BAB I

PENDAHULUAN

Mencakup Latar Belakang Masalah, Rumusan Masalah,

Batasan Masalah, Tujuan dan Manfaat Penulisan, Metode

Penulisan dan Sistematika Penulisan.

BAB II

LANDASAN TEORI

(11)

BAB III

ANALISIS dan PERANCANGAN SISTEM

Menjelaskan tentang analisis dan perancangan pembuatan

program yang meliputi rancangan sistem secara umum,

rancangan antarmuka/

interface

, dan rancangan

input/output

.

BAB IV

IMPLEMENTASI SISTEM dan HASIL PROGRAM

Bab ini berisi implementasi masing-masing tampilan atau

antarmuka, dan pembahasan.

BAB V

ANALISIS IMPLEMENTASI

Berisi tentang analisis program yang dibuat dan analisis

metode yang digunakan untuk merancang dan membuat

sistem

BAB VI

PENUTUP

Berisi tentang kesimpulan dan saran terhadap penulisan dan

penelitian.

DAFTAR PUSTAKA

(12)

2.1 Visual Basic

Visual basic merupakan salah satu bahasa pemrograman berbasis

windows yang memiliki fasilitas OOP (

Object Oriented Programming

) yang

menyediakan objek-objek yang sangat kuat,

powerfful

, dan mudah digunakan

dalam mendesain suatu aplikasi program (Halvorson, M, 2000). Kata “visual”

menunjukan cara yang digunakan untuk membuat GUI (

Grafical User Interface

)

dimana penulisan instruksi pemrograman tidak lagi dituliskan dalam kode-kode

baris tetapi dengan melakukan

drag

dan

drop

objek-objek yang akan digunakan

sehingga mempermudah dalam pemrograman, sedangkan “basic” merupakan

bagian bahasa BASIC (

Beginners All Purpose Symbolic Instruction Code

), yaitu

sebuah bahasa pemrograman yang dalam sejarahnya sudah banyak digunakan oleh

programer untuk menyusun aplikasi. Visual basic dikembangkan dari bahasa

pemrograman basic yang berisi banyak

statement

fungsi dan

keyword

, diantaranya

terhubung ke windows GUI.

2.1.1 Variabel

(13)

dimasukan oleh pemakai pada saat program dijalankan, hasil dari perhitungan

tertentu, atau data yang ingin ditampilkan pada form yang dibuat. Untuk

mendeklarasikan variabel digunakan

statement Dim

disertai dengan nama

variabelnya.

Berikut ini tata cara yang digunakan untuk mendeklarasikan sebuah

variabel:

o

Jika anda mendeklarasikan sebuah variabel lokal dengan

keyword

static,

maka variabel tersebut dapat menjaga nilainya, prosedur tempat

mendeklarasikannya sudah berakhir.

o

Jika mendeklarasikan sebuah variabel dalam bagian

declarations

pada

sebuah form, modul

standart

atau modul kelas membuat variabel tersebut

dapat digunakan pada semua prosedur dalam modul.

o

Jika mendeklarasikan sebuah variabel dengan menggunakan

keyword public

,

maka variabel ini akan dapat digunakan dalam lingkup aplikasi

(Halvorson,M., 2000)

2.1.2. Tipe Data

(14)

Tabel 2.1 Tabel jenis Tipe Data Visual Basic

Tipe Data Ukuran Range

Integer 2 byte -32,768 sampai 32,767

Long Integer 4 byte -2,147,483,648 sampai 2,147, 483,647

Single-prescion

floating point

4 byte -3.402823E38 sampai 3.402823E38

Doble-prescion

floating point

8 byte -1.79769313486232D308 sampai

1.797693148623D308

Currency 8 byte -922337203685477.5808 sampai

922337203685477.5807

String 1 byte per karakter 0 sampai 65,535

Boolean 2 byte True atau false

Date 8 byte 1 januari 100 sampai 31 desember 9999

Variant 16 byte (untuk angka);

22 byte + 1 byte per

karakter (untuk string)

2.1.3 Operator

(15)

Tabel 2.2 Tabel Operator yang disediakan Visual Basic

Operator Operator Matematika

+ Penjumlahan

- Pengurangan

* Perkalian

/ Pembagian

\ Pembagian Integer (angka bulat)

Mod Sisa pembagian

^ Pangkat

& Penggabungan string

2.1.4

Struktur Keputusan

Struktur keputusan merupakan ekspresi berkondisi pada blok

pernyataan khusus yang digunakan untuk mengendalikan apakah program akan

djalankan atau tidak.

1.

Struktur keputusan

If ... Then

Struktur keputusan

If ... Then

mengizinkan untuk mengevaluasi

sebuah kondisi program dan melakukan tindakan berdasarkan hasilnya.

Dalam bentuk yang paling sederhana, struktur keputusan

If ... Then

ditulis

dalam satu baris tunggal:

If condition Then Statemen

t

(16)

ekspresi berkondisi. Blok pernyataan ini panjangnya bisa beberapa baris dan

mengandung kata-kata kunci yang penting seperti

elseIf, else

dan

end If

.

2.

Struktur keputusan

select case

Struktur

select case

serupa dengan

If...Then...ElseIf

, tetapi lebih efisien

apabila percabangan bergantung pada satu variabel kunci atau

test case.

Berikut ini sintaks penulisan struktur keputusan

select case

adalah sebagai

berikut:

Select Case variable

Case value 1

Program statements executed if value1 matches variable

Case value 2

Program statements executed if value1 matches variable

Case value 3

Program statements executed if value1 matches variable

. .

End select

2.1.5

Struktur Perulangan

Struktur perulangan (

loop

) memberikan kesempatan pada program untuk

mengulang proses eksekusi terhadap satu baris atau beberapa baris kode.

1

. Do … loop

.

(17)

Do while condition

Statemens

Loop

2.

For … next

.

Struktur pengulangan

for..next

juga menggunakan variabel yang

dihubungkan dengan sebuah counter yang akan menaikkan atau menurunkan

nilai setiap pengulangan berlangsung. Struktur pengulangan

for..next

ini

digunakan jika diketahui jumlah statemen yang harus dieksekusi. Format

penulisan perintah ini adalah sebagai berikut:

For counter = start To end [step increment]

Statemens

Next [counter]

Argumen

increment

dapat bernilai positif atau negatif. Jika

increment

bernilai positif maka argumen start harus lebih kecil atau sama dengan nilai

argumen

end

, jika tidak demikian, maka statemen loop tidak akan

dieksekusi. Jika argumen

Step

tidak anda set, nilai argumen

increment

secara

otomatis di set ke nilai default yaitu 1.

3.

For each … next

.

Struktur pengulangan ini mengulang sebuah group statemen dalam setiap

elemen dalam sekelompok objek atau dalam array, yang diharapkan

mengulang statemen sebanyak angka yang dispesifikasikan. Format dari

statemen ini, adalah sebagai berikut:

For Each elemen In group

Statemens

(18)

Untuk keluar dari kontrol struktur perulangan sebelum proses tersebut

selesai dikerjakan dapat digunakan perintah

Exit For dan Exit Do

(Halvorson, M.,

2000).

2.1.6

Objek

Timer

Dalam visual Basic terdapat fasilitas yang mengijinkan pemrogram untuk

mengeksekusi sekelompok pernyataan dalam jangka waktu tertentu menggunakan

objek

timer

. Objek

timer

adalah sebuah

stopwatch

(pengukur waktu) tersembunyi

yang memberikan akses ke dalam waktu sistem dari program yang dibuat. Objek

timer

memiliki keakuratan hingga 1

milidetik

atau 1/1000 detik. Walaupun

timer

tidak kelihatan saat program berjalan, setiap

timer

berhubungan dengan

event

procedure

yang akan berjalan setiap kali waktu

interval timer

berakhir.

(Halvorson, M., 2000)

2.2

Access 2002

(19)

2.3

Sistem

Sistem secara sederhana dapat dijelaskan, yaitu berupa seperangkat

elemen-elemen yang digabungkan menjadi satu bagian dengan yang lain untuk

mencapai satu tujuan bersama, dan suatu sub sistem adalah bagian dari sistem

yang lebih besar.

Didalam

mendefinisikan

sistem terdapat dua pendekatan, yaitu pendekatan

yang menekankan pada komponen atau elemen-elemennya dan pendekatan yang

menekankan pada prosedurnya. Berikut penjelasan dari masing-masing definisi

sistem berdasarkan pendekatannya :

1.

Pendekatan pada komponen atau pada elemen-elemennya

Adalah kumpulan dari komponen atau elemen-elemen yang saling

berinteraksi untuk mencapai tujuan

” (Richard F.Neuschel, 1960).

2.

Pendekatan pada prosedur sistem itu sendiri

Suatu sistem adalah suatu jaringan kerja dari prosedur-prosedur yang saling

berhubungan dan berkumpul bersama-sama untuk melakukan suatu kegiatan

atau menyelesaikan suatu sasaran yang telah ditentukan

”.(Jerry FitzGerald,

Arda F FitzGerald, Warren D. Stallings, Jr.,1981).

2.4 Billing

(20)

2.5 Sistem

Pencatatan

Sistem pencatatan pemakaian fasilitas merupakan sistem yang berfungsi

untuk mengetahui besarnya

cost

/ tagihan yang harus dibayar oleh pengguna

fasilitas dan untuk mengetahui lamanya pemakaian. Sistem pencatatan pemakian

fasilitas berguna untuk memudahkan pelayanan kepada pengguna karena dengan

sistem pencatatan pemakaian fasilitas pengguna dapat dengan mudah dan fleksibel

membayar tagihan sewa pemakaian fasilitas. Dengan adanya sistem pencatatan

pemakaian fasilitas, akan lebih memudahkan seorang kasir dalam

mantenance

data, keakuratan data yang tercatat lebih terjamin.

Penghitungan biaya sewa dilakukan berdasarkan lamanya waktu

pemakaian. Menit pertama pengguna login penghitungan biaya sudah dimulai, dan

penambahan biaya sewa akan bertambah pada menit berikutnya.

(21)

BAB III

ANALISIS dan PERANCANGAN SISTEM

3.1

Analisis

3.1.1 Analisis

Sistem

Sistem yang akan dikembangkan adalah informasi mengenai lama

pemakian dan sewa yang harus dibayar pengguna pada sebuah fasilitas dengan

menggunakan Visual Basic 6.0 sebagai bahasa pemrogramannya. Tujuan

pengembangan sistem ini adalah untuk menjamin keakuratan data pada

pembayaran sewa pada sebuah fasilitas. Selain memberikan informasi bagi

pengguna tentang biaya sewa, program ini juga dapat memberikan kemudahan

bagi seorang kasir untuk menghitung biaya sewa pengguna.

3.1.2 Analisis Sumber Daya

3.1.2.1 Analisis Perangkat Keras (Hardware)

Konfigurasi perangkat keras (hardware) dibawah ini merupakan

konfigurasi hardware minimal dari komputer agar dapat berjalan dengan normal.

Konfigurasi hardware pada komputer adalah sebagai berikut :

Prosesor

Prosesor merupakan otak dari komputer yang terpasang pada

komputer server minimal adalah generasi Pentium Pro / seratus MHz

Memori Utama

(22)

Video Graphic Accelerator

Video Graphic Accelerator (VGA) sebagai perangkat untuk

menampilkan output ke layer monitor minimal memiliki besar

memori satu Mbyte

Network Interface Card

Network Interface Card (NIC) yang digunakan berjenis Ethernet/Fast

Ethernet sepuluh/seratus Mbyte

Media Penyimpanan (Harddisk)

3.1.2.2 Analisis Teknologi

1.

Teknologi yang digunakan yaitu Access 2002 memudahkan pemrosesan

database.

2.

Bahasa pemrograman yang digunakan adalah Visual Basic versi 6.0.

3.1.3 Analisis hak Pengguna

Sistem ini memiliki dua kategori pengguna yaitu:

1.

Administrator, merupakan pengguna yang berhak melakukan

update

pada

database sistem. karena memiliki

password

yang diperlukan untuk mengakses

proses

update

data.

(23)

3.1.4 Analisis Kebutuhan Sistem

Analisis kebutuhan sistem ini digunakan untuk mengumpulkan kebutuhan

administrator dan kasir, dan mengetahui fasilitas yang harus disediakan sistem.

Kebutuhan sistem akan dibahas dari dua sisi yaitu:

a. Sisi

Administrator

Peran sistem yang dibutuhkan adalah sebagai berikut:

Menambah data kasir

Sistm harus mampu untuk memberikan fasilitas untuk membuat

account

baru bagi kasir yang belum terdaftar. Pendaftaran akan dilakuakn oleh

administrator.

Menghapus data kasir

Selain mampu menambah data kasir, administrator dapat menghapus data

kasir jika administrator menganggap bahwa sebuah data perlu untuk

dihapus.

b. Sisi

Kasir

Fasilitas yang dibutuhkan sistem bagi kasir adalah:

Login

Berfungsi untuk menyaring kasir apakah sudah teregistrasi atau belum

untuk dapat mengakses sistem lebih lanjut.

Masukkan nama pengguna

(24)

Melihat biaya

Setelah nama pengguna dimasukkan kasir bias mengetahui besarnya

biaya sewa pemakaian.

Melihat status pengguna

Fasilitas ini digunakan untuk melihat jumlah pengguna yang sedang

berkunjung, lama pemakian fasilitas dan sewa pemakian.

Data penggunaan

Data penggunaan digunakan untuk menyimpan data-data pengguna yang

pernah memakai fasilitas. Data-data yang disimpan yaitu: nama pengguna,

waktu mulai, lama pemakaian, dan biaya sewa.

3.2 Perancangan

3.2.1 Perancangan Sistem

(25)

3.2.1.1 Diagram Arus Data (DAD) Rancangan Sistem

DAD lebih tepat digunakan untuk menggambarkan sistem yang akan

dibuat, diagram ini tidak menekankan pada bagaimana sistem diterapkan, tetapi

penekananya hanya pada logika dari kebutuhan-kebutuhan sistem, yaitu proses

yang secara logika dibutuhkan oleh sistem.

3.2.1.2

Contex

Diagram

Contex

diagram menggambarkan suatu proses yang mewakili proses

dari seluruh sistem dan menggambarkan hubungan masukan dan keluaran antara

sistem dan kesatuan luar.

Id dan password admin,

Data Biaya, lama

Data

terupdate Nama

Nama

Gambar 3.1 Contex Diagram Sistem.

0

Proses Sistem pencatata n

akaian a

in

3.2.1.3 Diagram

Berjenjang

Diagram berjenjang digunakan untuk mempersiapkan penggambaran

DAD ke level-level lebih bawah lagi. Diagram berjenjang untuk sistem ini adalah

seperti terlihat pada gambar 3.2.

Pem Fsilitas Adm

(26)

0 Proses Sistem Pencatatan Pemakian Fasilitas

5 Penghitungan

biaya 2.P

Update password 1

Gambar 3.2 Diagram Berjenjang Sistem

input & update data

3.P Cek data pengguna

1.2..P Input & update

Jumlah komputer 5.2.P

Isi nama pengguna

(27)

3.2.1.4

Overview

Diagram

Sketsa DAD untuk

overview

diagram berdasarkan proses pada diagram

berjenjang adalah seperti terlihat pada gambar 3.3.

3.2.1.5

Diagram Level 1 (Proses 1)

Untuk diagram level 1 untuk proses 1 terlihat pada gambar 3.4.

d2 fasilitas

d3 kasir

1

Input & Update, Data

fasilitas

Info fasilitas

Input & update Data

kasir kasir 1.1.P

input & update fasilitas a

admin

Gambar 3.4 Diagram level 1 (Proses 1)

Info kasir

1.2.P

(28)

3.2.1.6

Diagram Level 1 (Proses 5)

Berikut ini diagram level 1 untuk proses 5 adalah sebagai berikut:

d4 pengguna

Id kasir, nama pengguna

5

5.1.P

Nama

b

kasir

Info biaya, lama

info biaya, lama

Gambar 3.5 Diagram level 1 (Proses 5)

3.2.1.7 DAD

Lengkap

Id dan password admin, Id dan password admin

Data fasilitas Info admin d1 admin

Data terupdate Data fasilitas d2 fasilitas

Id dan password admin, Id dan password admin Data admin/kasir Info admin d1 admin

Data terupdate Data kasir d3 kasir

Id dan password admin Id dan password admin,

Password baru password baru d1 admin

Password baru Info admin

Data pengguna

Info data penggunaan Data pengguna d4 pengguna Admin

1.1.P Input&update

fasilitas

1.2.P Input&update

kasir

2.P

Update pasword

3..P

cek data

(29)

nama pengguna

id kasir

Info biaya, lama

d4 pengguna

5.1.P

nama b

kasir

Info biaya, lama, durasi

Gambar 3.6 DAD lengkap

3.2.2 Perancangan Database

Database adalah kelompok data yang saling berhubungan yang

diorganisasi sedemikian rupa agar kelak dapat dimanfaatkan kembali dengan

cepat dan mudah. Database merupakan komponen yang sangat penting dalam

sebuah sistem, hal ini dikarenakan database berfungsi sebagai penyedia informasi

yang dibutuhkan bagi para pemakainya

3.2.2.1 Identifikasi Kesatuan Luar (

External Entities

)

Kesatuan luar pada sistem ini terdiri dari:

1.

Administrator

(30)

3.2.2.2 Identifikasi Masukan dan Keluaran Sistem

Masukan dan keluaran dalam sistem yang terlibat dengan kesatuan luar

adalah sebagai berikut:

Tabel 3.1 Tabel identifikasi masukan dan keluaran sistem

Kesatuan Luar Masukan Keluaran

Administrator Id dan password admin, data

kasir, data admin

Data terupdate

Kasir Id kasir, nama pengguna Lama penggunaan, biaya

3.2.2.3 E-R Diagram

(31)

nama

Admin

Nama

Alamat Jabatan

password Id admin

Password

No Pengguna

Lama Kasir

Data Penggunaan Diisi

Waktu mulai Biaya sewa

Nama pengguna

Id Kasir

Alamat

Hak

akses

NIP

Jabatan

Hak akses

NIP

Gambar 3.7 E-R Diagram

3.2.2.4 Perancangan

Tabel

(32)

Table 3.2 Tabel Administrator

Nama field Tipe data Ukuran Id admin nama Alamat Password Hak Akses Jabatan NIP Text Text Text Text Text Text Text 10 10 50 15 15 15 3

Tabel 3.3 Tabel data penggunaan

Nama field Tipe data Ukuran No Pengguna Nama Waktu mulai Lama Biaya sewa Text Text Time / date Time / date Money

3 10

Tabel 3.4 Tabel Kasir

Nama field Tipe data Ukuran Id Kasir Nama Alamat Password Hak akses NIP Jabatan Text Text Text Text Text Text Text 10 10 50 15 15 3 15

3.2.3 Perancangan Antar Muka

(33)

3.2.3.1 Desain Antar-muka untuk Administrator

Dalam perancangan antar-muka perangkat-lunak untuk administrator,

terdapat beberapa fasilitas yang dapat memberikan kemudahan bagi administrator

untuk melakukan pengolahan data yang terdapat dalam database sistem ini.

Fasilitas yang disediakan antara lain,

add

(untuk menambah data ke dalam

database),

edit

(untuk mengubah data yang telah ada di dalam database),

delete

(untuk menghapus data yang telah ada di dalam database). Pada perancangan

antar-muka halaman pertama muncul untuk pengguna, yang berguna untuk

memasuki pemrosesan

update

data. Penggunaan password dimaksudkan agar

orang yang tidak berkepentingan tidak dapat melakukan proses

update

data.

Halaman Utama

(34)

Halaman

Login

Administrator

Gambar 3.9 Login Administrator

Pada perancangan halaman

login

untuk administrator ini, jika

administrator salah dalam memasukkan

password

, maka akan muncul pesan

kesalahan. Administrator akan masuk ke halaman pemilihan tabel bila

password

yang dimasukan benar.

Gambar 3.10 Halaman sukses login admin

Halaman Ganti

Password

(35)

Gambar 3.11 Halaman Ganti Password

Halaman Data Kasir

(36)

Gambar 3.12 Halaman Data User

3.2.3.2 Desain Antar-muka untuk Kasir

Halaman Login kasir

Halaman login kasir sama dengan halaman login pada admin.

(37)

Halaman Status Pengguna

Gambar 3.15 Halaman Status Komputer

Pada rancangan halaman ini, sorang kasir bias mengetahui jumlah pemakai

fasilitas. Melalui halaman ini kasir bisa mengetahui mengenai biaya yang harus

dibayarkan pengguna sebuah fasilitas dan juga lamanya waktu penggunaan.

Halaman

Input

Nama

(38)
(39)

BAB IV

IMPLEMENTASI SISTEM

Implementasi adalah tahap yang dilakukan setelah perancangan, implementasi

merupakan pengkodean dari hasil perancangan. Sistem pencatatan pemakaian

fasilitas untuk menghitung biaya sewa pada sebuah fasilitas diimplementasikan dalam

bahasa Visual Basic 6.0.

4.1 Lingkungan Implementasi

Pada tahap ini pengembang mendefinisikan lingkungan perangkat pendukung.

a. Lingkungan perangkat Lunak

Perangkat lunak yang digunakan dalam implementasi

ƒ

Sistem Operasi

: Windows XP

ƒ

Database

: Microsoft Access 2002

ƒ

Kakas Pengembang

: Visual Basic 6.0

b. Lingkungan Perangkat Keras

Perangkat keras yang digunakan dalam implementasi:

ƒ

Komputer PIV

ƒ

Memory 256 MB

ƒ

Hardisk 20 GB

(40)

ƒ

Alat masukan yaitu mouse dan keyboard

4.2 Karakteristik Pengguna

Aplikasi sistem pencatatan pemakian fasilitas dibuat untuk penghitungan

biaya sewa pada sebuah fasilitas yang harus dibayarkan pengguna kepada kasir.

Untuk menjamin keakuratan data pada pembayaran sewa pada sebuah fasilitas, dan

juga memberi kemudahan bagi kasir untuk penghitungan biaya sewa pada sebuah

fasilitas oleh pengguna.

4.3 Implementasi Database

Tabel-tabel yang dirancang dalam bab sebelumnya diimplementasikan

menggunakan Microsoft Access 2002 dalam lingkungan sistem operasi windows.

Dalam kakas pengembang Visual Basic, Microsoft Access 2002 belum dapat

terhubung. Untk menghubungkan Microsoft Access 2002 dengan sistem maka

digunakan sintaks seperti berikut ini

Dalam melakukan koneksi, dua variabel yang dideklarasikan adalah:

Set dbDAO = OpenDatabase(App.Path & "\Data.mdb", False, False,

";pwd=bontet")

Set rec = dbDAO.OpenRecordset("T_User", dbOpenTable)

ƒ

Database

: digunakan untuk menunjuk nama tabel yang diakses

ƒ

Password

: adalah password administrator database Microsoft Access

(41)

4.4 Implementasi Program

4.4.1 Modul Administrator

a. Menu Utama

Menu utama sistem pencatatan pemakian fasilitas merupakan tampilan

pertama bagi administrator yang akan ditampilkan oleh sistem. Melalui menu utama

ini akan dapat diketahui menu apa saja yang dimiliki oleh sistem, yaitu menu

login

,

menu administrator, menu ganti

password

, menu biaya, menu

logout

dan menu keluar

untuk mengakhiri program. Menu yang aktif adalah menu

login

, menu biaya dan

menu keluar. Untuk mengaktifkan semua menu terlebih dahulu administrator harus

melakukan

login.

(42)

Prosedur untuk tampilan diatas adalah:

Private Sub Form_Load() Dim Ahari

Dim SHari As String

Ahari = Array("Minggu", "Senin", "Selasa", "Rabu", "Kamis", "Jumat", "Sabtu") SHari = Ahari(Abs(Weekday(Date) - 1))

StatusBar1.Panels(4).Text = "" & SHari & ", " & Format(Date, "dd-mm-yyyy") StatusBar1.Panels(5).Text = Time

Timer1.Enabled = True cmdkasir.Enabled = False cmdAdmin.Enabled = False cmdGantiPassword.Enabled = False cmdLogout.Enabled = False End Sub

b. Menu Login

Dalam menu ini akan dilakukan proses otentikasi, langkah awal sebelum

melakukan proses adalah menu ini akan membuka tabel

user

yang berisi data

userid

dan

password

yang benar dan terenkripsi

.

Set dbDAO = OpenDatabase(App.Path & "\Data.mdb", False, False, ";pwd=bontet ") Set rec = dbDAO.OpenRecordset("T_User", dbOpenTable)

Setelah data

userid

dan

password

telah terenkripsi maka akan dilakukan proses

pencocokan, script untuk mencocokan dat masukkan dengan data sebenarnya adalah

sebagai berikut:

If SuksesUser = True And SuksesPassword = True Then

Jika data yang dimasukan yaitu

userid

dan

password

salah maka sistem tidak dapat

dilanjutkan dan akan kembali lagi ke menu utama.

(43)

If SuksesUser = True And SuksesPassword = False Then

Dan jika data yang dimasukan benar maka sistem akan membuat sebuah file yang

berisi

username

dan

password

. Setelah file terbentuk maka sistem akan melakukan

koneksi dengan database.

c. Menu Administrator

Menu ini digunakan untuk melihat data

user

yang telah terdaftar didalam

database. Di dalam menu ini dapat melakukan peng-update-an data

user

, yaitu

dengan tombol tambah, tombol edit, tombol hapus dan juga dapat mengganti

password

selain lewat tombol ganti

password

, serta dapat juga melacak password

user

. Update data yang dilakukan

hanya sampai pada tingkat database.

(44)

Modul update

Prosedure untuk update data yaitu:

Private Sub cmdUpdate_Click() Dim i As Integer

Dim HasilCari As String On Error GoTo UpdateErr cmdUpdate.Default = False

Jhlrecord = adoPrimaryRS.RecordCount If Len(txtFields(0).Text) = 0 Then

MsgBox "Nama user masih kosong", vbCritical, "Nama Kosong" txtFields(0).SetFocus

Exit Sub

ElseIf Len(txtFields(1).Text) = 0 Then

MsgBox "Nippos masih kosong", vbCritical, "Nippos Kosong" txtFields(1).SetFocus

Exit Sub

ElseIf Len(txtFields(2).Text) = 0 Then

MsgBox "Jabatan masih kosong", vbCritical, "Jabatan Kosong" txtFields(2).SetFocus

Exit Sub

ElseIf Len(txtFields(3).Text) = 0 Then

MsgBox "UserID masih kosong", vbCritical, "UserID Kosong" txtFields(5).SetFocus

Exit Sub

ElseIf Len(txtFields(6).Text) = 0 Then

MsgBox "Password masih kosong", vbCritical, "Password Kosong" txtFields(6).SetFocus

Exit Sub

ElseIf Len(txtPassword.Text) = 0 Then

MsgBox "Konfirmasi password tidak sama!", vbCritical, "Password Tidak Valid" txtPassword.SetFocus

Exit Sub End If

For i = 1 To JlhRecord

If txtFields(5).Text = cekUser(i).User And mbAddNewFlag = True Then

MsgBox "UserID sudah ada! Ganti dengan yang lain.", vbCritical, "UserID Dobel" txtFields(5).SetFocus SendKeys "{Home}+{End}" Exit Sub Else End If Next i

If txtFields(6).Text <> txtPassword.Text Then

MsgBox "Konfirmasi password tidak sama", vbCritical, "Password Tidak Valid" txtPassword.SetFocus

SendKeys "{Home}+{End}" Exit Sub

(45)

mbEditFlag = False mbAddNewFlag = False SetButtons True

grdDataGrid.Enabled = True cmdGantiPassword.Enabled = True mbDataChanged = False

TutupKonfirmasi KunciEntri

lblStatus.Caption = "Record ke-" & CStr(adoPrimaryRS.AbsolutePosition) Exit Sub

UpdateErr:

MsgBox Err.Description End Sub

"atau klik panah lalu pilih salah satu!", vbCritical, "Hak Akses" cmbHakAkses.SetFocus

Exit Sub End If

txtFields(4).Text = cmbHakAkses.Text DataString = txtFields(6).Text

Translate

txtFields(6).Text = Temp$

adoPrimaryRS.UpdateBatch adAffectAll adoPrimaryRS.MoveLast

If mbAddNewFlag = True Then

Call RekamKegiatan("Tambah user '" & txtFields(5).Text & "'") End If

Call RekamKegiatan("Simpan perubahan user '" & txtFields(5).Text & "'") mbEditFlag = False

mbAddNewFlag = False SetButtons True

grdDataGrid.Enabled = True cmdGantiPassword.Enabled = True mbDataChanged = False

TutupKonfirmasi KunciEntri

lblStatus.Caption = "Record ke-" & CStr(adoPrimaryRS.AbsolutePosition) Exit Sub

UpdateErr:

(46)

Prosedur untuk tomol tambah data

user

adalah sebagai berikut:

Private Sub cmdAdd_Click()

On Error GoTo AddErr BukaKunciEntri BukaKonfirmasi PeriksaUserID

cmbHakAkses.Text = "Kasir" cmdGantiPassword.Enabled = False grdDataGrid.Enabled = False txtFields(0).SetFocus With adoPrimaryRS

If Not (.BOF And .EOF) Then mvBookMark = .Bookmark End If

.AddNew

lblStatus.Caption = "Tambah data user..." mbAddNewFlag = True

SetButtons False

End With

Data yang dimasukkan dalam proses tambah data harus lengkap, bila tidak lengkap

akan ada pesan kesalahan. Penambahan data akan diproses apabila semua

textbox

sudah terisi.

Prosedure untuk tombol hapus data

user

adalah sebagai berikut:

Dim Jawab As Integer

On Error GoTo DeleteErr

If adoPrimaryRS.RecordCount = 1 Then

MsgBox "Anda tidak dapat menghapus record ini!" & Chr(13) & _ "Minimal harus ada satu record di tabel" & Chr(13) & _

"User dengan hak akses Admin.", vbCritical, "Record Tinggal Satu" Exit Sub

End If

If adoPrimaryRS.EOF Then

MsgBox "Data user masih kosong!", vbCritical, "Data Kosong" Exit Sub

End If

Jawab = MsgBox("Yakin akan menghapus record ini?", vbQuestion + vbDefaultButton2 + vbYesNo, "Hapus Data User")

(47)

Call RekamKegiatan("Hapus user '" & txtFields(5).Text & "'") .Delete

.MoveNext

If .EOF Then .MoveLast End With

Exit Sub

Exit Sub

End If DeleteErr:

MsgBox Err.Description End Sub

Penghapusan data

user

pada menu ini yaitu penghapusan data

user

hanya sampai

pada tingkat database. Pada halaman ini administrator dapat melakukan penghapusan

satu atau lebih data

user

. Data

user

yang sudah terdaftar tidak boleh semuanya

dihapus, harus ada satu

record

yang tersisa yaitu

record

administrator.

If adoPrimaryRS.RecordCount = 1 Then

Tombol edit digunakan oleh administrator untuk melakukan perubahan pada

data yang telah tersimpan didalam database.

Prosedure yang digunakan untuk melakukan edit data adalah sebagai berikut:

Private Sub cmdEdit_Click() On Error GoTo EditErr BukaKonfirmasi BukaKunciEntri

txtFields(5).Enabled = False DataString = txtFields(6).Text Translate

txtFields(6).Text = Temp$

txtPassword.Text = txtFields(6).Text lblStatus.Caption = "Edit data user..." mbEditFlag = True

SetButtons False

(48)

txtFields(0).SetFocus

Exit Sub

EditErr:

MsgBox Err.Description End Sub

Prosedur untuk tombol ganti

password

seperti berikut ini.

Private Sub cmdGantiPassword_Click()

On Error GoTo GantiErr

cmdGantiPassword.Enabled = False BukaKonfirmasi

BukaPassword

DataString = txtFields(6).Text Translate

txtFields(6).Text = Temp$

txtPassword.Text = txtFields(6).Text lblStatus.Caption = "Edit data user..." mbEditFlag = True

SetButtons False txtFields(6).SetFocus

grdDataGrid.Enabled = False

Exit Sub

GantiErr:

MsgBox Err.Description

End Sub

Tombol lacak

password

digunakan untuk melacak

password

user

yang sudah

terdaftar di database. Lacak password dipakai karena data

password

yang tersimpan

dienkripsi sebelumnya, jadi untuk mengetahui password sesungguhnya harus

menekan tombol tersebut.

Prosedur yang digunakan untuk lacak

password

adalah seperti berikut ini:

Private Sub cmdLacakPassword_Click()

DataString = txtFields(6).Text Translate

MsgBox "UserID = " & txtFields(5).Text & " " & Chr(13) & _

(49)

d. Menu Ganti

Password

Menu

ganti

password

dapat digunakan untuk mengganti

password

yang sudah

tersimpan didalam database. Selain digunakan oleh administrator menu ini juga dapat

digunak oleh kasir, dengan memilih menu login terlebih dahulu.

Sebelum proses penggantian

password

dapat dilaksanakan sebelumnya sistem

akan melakukan pencarian ke database mengenai data user yang melakukan

penggantian password. Apabila data ditemukan maka sistem akan mengizinkan

penggantian password tersebut.

Prosedur berikut digunakan untuk mengosongkan

textbox

Sub KosongkanTeks() txtUserID.Text = "" txtNama.Text = "" txtNippos.Text = "" txtJabatan.Text = "" txtAlamat.Text = "" txtHakAkses.Text = "" txtPasswordLama.Text = "" txtPasswordBaru1.Text = "" txtPasswordBaru2.Text = "" txtUserID.SetFocus

Prosedur pencariannya adalah sebagai berikut:

Private Sub cmdGanti_Click()

Dim Jawab As Integer Dim KeyAscii As Integer On Error GoTo GantiErr

If Len(Trim(txtPasswordLama.Text)) = 0 Then

MsgBox "Password lama masih kosong!", vbCritical, "Password Lama Salah" txtPasswordLama.SetFocus

Exit Sub End If

DataString = Pasw Translate

If txtPasswordLama.Text <> Temp$ Then

(50)

Exit Sub End If

DataString = Pasw Translate

If txtPasswordLama.Text <> Temp$ Then

MsgBox "Password lama salah!", vbCritical, "Password Lama Salah" txtPasswordLama.SetFocus

SendKeys "{Home}+{End}" Exit Sub

End If

If Len(Trim(txtPasswordBaru1.Text)) = 0 Then

MsgBox "Password baru masih kosong", vbCritical, "Password Kosong" txtPasswordBaru1.SetFocus

Exit Sub End If

If txtPasswordBaru1.Text <> txtPasswordBaru2.Text Then

MsgBox "Konfirmasi password tidak sama", vbCritical, "Password Tidak Valid" txtPasswordBaru2.SetFocus

SendKeys "{Home}+{End}" Exit Sub

End I

Jawab = MsgBox("Yakin password akan diganti?", vbQuestion + vbYesNo, "Ganti Password")

If Jawab = vbYes Then

DataString = txtPasswordBaru1.Text Translate

txtPasswordBaru1.Text = Temp$ DataString = txtPasswordBaru2.Text Translate

txtPasswordBaru2.Text = Temp$ rec.Edit

rec!password = txtPasswordBaru2.Text rec.Update

Call RekamKegiatan("Berhasil ganti password.")

MsgBox "Password telah diganti!", vbInformation, "Sukses Ganti Password"

cmdGanti.Enabled = False

cmdCari.Enabled = True KosongkanTeks

txtUserID.Locked = False

Exit Sub

ElseIf Jawab = vbNo Or KeyAscii = 27 Then

Exit Sub

End If GantiErr:

(51)

Prosedur ganti password

Private Sub cmdGanti_Click() Dim Jawab As Integer Dim KeyAscii As Integer On Error GoTo GantiErr

If Len(Trim(txtPasswordLama.Text)) = 0 Then

MsgBox "Password lama masih kosong!", vbCritical, "Password Lama Salah" txtPasswordLama.SetFocus

Exit Sub End If

DataString = Pasw Translate

If txtPasswordLama.Text <> Temp$ Then

MsgBox "Password lama salah!", vbCritical, "Password Lama Salah" txtPasswordLama.SetFocus

SendKeys "{Home}+{End}" Exit Sub

End If

If Len(Trim(txtPasswordBaru1.Text)) = 0 Then

MsgBox "Password baru masih kosong", vbCritical, "Password Kosong" txtPasswordBaru1.SetFocus

Exit Sub End If

If txtPasswordBaru1.Text <> txtPasswordBaru2.Text Then

MsgBox "Konfirmasi password tidak sama", vbCritical, "Password Tidak Valid" txtPasswordBaru2.SetFocus

SendKeys "{Home}+{End}" Exit Sub

End If

Jawab = MsgBox("Yakin password akan diganti?", vbQuestion + vbYesNo, "Ganti Password")

If Jawab = vbYes Then

DataString = txtPasswordBaru1.Text Translate

txtPasswordBaru1.Text = Temp$ DataString = txtPasswordBaru2.Text Translate

txtPasswordBaru2.Text = Temp$ rec.Edit

rec!password = txtPasswordBaru2.Text rec.Update

Call RekamKegiatan("Berhasil ganti password.")

MsgBox "Password telah diganti!", vbInformation, "Sukses Ganti Password" cmdGanti.Enabled = False

cmdCari.Enabled = True KosongkanTeks

txtUserID.Locked = False

Exit Sub

(52)

e. Menu Biaya

Menu biaya digunakan untuk melihat data pengguna, biaya sewa, dan

lamanya waktu pemakian.

f. Menu Logout

Menu

logout

ini digunakan administrator untuk keluar dari koneksi dengan database.

cmdLogout.Enabled = False

Call RekamKegiatan("Logout.")

g. Menu Keluar

Digunakan untuk mengakhiri Program.

4.4.2 Menu Kasir

a. Menu Utama

(53)

Gambar 4.3. Menu Utama

Prosedur untuk tampilan diatas adalah:

Private Sub Form_Load() Dim Ahari

Dim SHari As String

Ahari = Array("Minggu", "Senin", "Selasa", "Rabu", "Kamis", "Jumat", "Sabtu") SHari = Ahari(Abs(Weekday(Date) - 1))

StatusBar1.Panels(4).Text = "" & SHari & ", " & Format(Date, "dd-mm-yyyy") StatusBar1.Panels(5).Text = Time

(54)

b. Menu Login

Dalam menu ini akan dilakukan proses otentikasi, langkah awal sebelum melakukan

proses adalah menu ini akan membuka tabel

user

yang berisi data

userid

dan

password

yang benar dan terenkripsi

.

Sintaks yang dipakai untuk membuka database adalah:

Set dbDAO = OpenDatabase(App.Path & "\Data.mdb", False, False, ";pwd=bontet ") Set rec = dbDAO.OpenRecordset("T_User", dbOpenTable)

Setelah data

userid

dan

password

telah terenkripsi maka akan dilakukan proses

pencocokan, script untuk mencocokan dat masukkan dengan data sebenarnya adalah

sebagai berikut:

If SuksesUser = True And SuksesPassword = True Then

Jika data yang dimasukan yaitu

userid

dan

password

salah maka sistem tidak dapat

dilanjutkan dan akan kembali lagi ke menu utama.

Script

yang digunakan untuk kembali ke halaman login adalah:

If SuksesUser = True And SuksesPassword = False Then

(55)

d. Menu Ganti

Password

Menu

ganti

password

dapat digunakan untuk mengganti

password

yang sudah

tersimpan didalam database. Selain digunakan oleh administrator menu ini juga dapat

digunak oleh kasir, dengan memilih menu login terlebih dahulu.

Sebelum proses penggantian

password

dapat dilaksanakan sebelumnya sistem

akan melakukan pencarian ke database mengenai data user yang melakukan

penggantian password. Apabila data ditemukan maka sistem akan mengizinkan

penggantian password tersebut.

Prosedur yang digunakan untuk mengosongkan

Sub KosongkanTeks()

txtUserID.Text = ""

textbox

adalah:

txtNama.Text = ""

txtNippos.Text = "" txtJabatan.Text = "" txtAlamat.Text = "" txtHakAkses.Text = "" txtPasswordLama.Text = "" txtPasswordBaru1.Text = "" txtPasswordBaru2.Text = "" txtUserID.SetFocus

End Sub

Prosedur yang digunakan untuk mengganti password adalah:

Private Sub cmdGanti_Click() Dim Jawab As Integer Dim KeyAscii As Integer On Error GoTo GantiErr

If Len(Trim(txtPasswordLama.Text)) = 0 Then

MsgBox "Password lama masih kosong!", vbCritical, "Password Lama Salah" txtPasswordLama.SetFocus

Exit Sub End If

(56)

If txtPasswordLama.Text <> Temp$ Then

MsgBox "Password lama salah!", vbCritical, "Password Lama Salah" txtPasswordLama.SetFocus

SendKeys "{Home}+{End}" Exit Sub

End If

If Len(Trim(txtPasswordBaru1.Text)) = 0 Then

MsgBox "Password baru masih kosong", vbCritical, "Password Kosong" txtPasswordBaru1.SetFocus

Exit Sub End If

If txtPasswordBaru1.Text <> txtPasswordBaru2.Text Then

MsgBox "Konfirmasi password tidak sama", vbCritical, "Password Tidak Valid" txtPasswordBaru2.SetFocus

SendKeys "{Home}+{End}" Exit Sub

End I

e. Menu Biaya

Menu billing digunakan untuk melihat data pengguna, biaya sewa, dan lama

pemakaian.

f. Menu Logout

Menu

logout

ini digunakan administrator untuk keluar dari koneksi dengan database.

cmdLogout.Enabled = False

g. Menu Keluar

(57)

4.4.3 Modul Pengguna

a. Menu nama pengguna

Pada halaman ini pengguna diminta untuk memasukkan namanya. Yang

kemudian akan tercatat pada halaman biaya.

Gambar 3.17 Halaman input nama

Prosedur yang digunakan untuk melakukan penghitungan biaya adalah sebagai

berikut:

Dim Awal, Akhir, Lama As Single

Dim dtkAwal, dtkAkhir As Single Private Sub Command1_Click() If Command1.Caption = "Start" Then

nama = InputBox("Masukan Nama anda:", "Nama") nama = Replace(nama, "", vbNullString)

If (StrPtr(nama) = 0) Or (nama = "") Then Exit Sub

End If

Text5.Text = nama Text4.Text = 0 dtkAwal = Time Awal = Now

(58)

ElseIf Command1.Caption = "Stop" Then Timer1.Enabled = False

Akhir = Now Lama = Akhir - Awal

Text3.Text = Format(Lama, "hh:mm:ss") Command1.Caption = "Selesai"

ElseIf Command1.Caption = "Selesai" Then Adodc1.RecordSource = "select * from pengguna" Adodc1.Refresh

If Text4.Text <> "" Then With Adodc1.Recordset If .RecordCount <> 0 Then .MoveLast

no = !nomor .AddNew !nomor = no + 1

n:

!nama = Text5.Text !mulai = Text1.Text !sekarang = Text2.Text !durasi = Text3.Text !biaya = Text4.Text .Update

!nomor = 1: GoTo n Else

.AddNew End If End With End If

Text2.Text = "" Text3.Text = "" Text4.Text = "" Text5.Text = ""

Form3.Show: Unload Me

End If

End Sub

Private Sub Timer1_Timer()

If Command1.Caption = "Stop" Then dtkAkhir = Time

If Second(dtkAkhir - dtkAwal) = 30 Then

dtkAwal = dtkAkhir

Text4.Text = Format(Text4.Text + 25, "Rp #,#") End If

Text2.Text = Format(Now, "hh:mm:ss") Text3.Text = Format(Now - Awal, "hh:mm:ss") End If

(59)

BAB V

ANALISIS IMPLEMENTASI

Pada bab ini akan dibahas mengenai analisis rekayasa perangkat lunak dan

penggunaan kakas pengembang Visual Basic 6.0

5.1 Analisis Metode Rekayasa Perangkat Lunak

Metode yang digunakan dalam pembuatan program sistem pencatatan

pemakaian fasilitas menggunakan visual basic adalah metode perangkat lunak

berorientasi objek, dimana metode ini memiliki tahapan-tahapan, yaitu:

1.

Analisis Sistem

2.

Perancangan Sistem

3.

Implementasi

Tahapan analisis digunakan untuk menganalisis kebutuhan-kebutuhan dan

fungsi sistem yang akan dibuat, menggambarkan hubungan antar

entity

, untuk

mempermudah pengembang dalam mengidentifikasikan kesalahan.

Tahap perancangan sistem, pengembang akan mendapat kemudahan dalam

menentukan fungsifungsi yang digunakan dalam pembuatan sistem.

(60)

5.2 Analisis Kakas Pengembang

Dalam pembuatan sistem ini digunakan beberapa perangakat lunak yaitu:

1. Visual Basic 6.0 digunakan untuk membangun sistem pencatatan pemakain

fasilitas, karena:

Visual Basic 6.0 yang telah didukung pemrograman berorientasi objek

lebih memudahkan untuk mengembangkan , memelihara sistem.

Dapat berjalan dalam berbagai sistem operasi

2. Acces sebagai salah satu perangkat lunak RDBMS mampu menampung dan

mengolah data pada tabel.

(61)

54

6.1 Kesimpulan

Kesimpulan yang dapat diambil dari pembuatan sistem pencatatan pemakian

fasilitas menggunakan visual basic 6.0 ini adalah:

1.

Sistem ini memberikan kemudahan bagi pengguna untuk mengetahui sewa

pemakian fasilitas yang harus dibayarkan.

2.

Kasir bisa mengetahui biaya sewa yang harus dibayar oleh pemakai fasilitas.

6.2 Saran

Penyusun tidak menyangkal adanya kekurangan dalam sistem ini. Maka dari

itu, untuk memperbaiki sistem ini, penyusun memiliki saran supaya dapat menjadi

masukan untuk pengembangan lebih lanjut di masa mendatang, yaitu:

(62)

Firdaus, 2006, “

SQL Server dengan Visual Basic 6 untuk Orang awam”

, Penerbit

Maxikom, Palembang

Halvorson, Michael, 2001, “

Step by Step Microsoft Visual Basic 6.0 Profesiona”l

,

alih bahasa oleh Adi Kurniadi, Penerbit PT Elex Media Komputindo, Jakarta

Jogyanto, HM., 1990, “

Analisis dan Desain Sistem Informasi

: Pendekatan Terstruktur

Teori dan Praktek Aplikasi Bisnis”, Penerbit Andi Offset, Yogyakarta.

Kusumo, Aryo S., 2002, “

Tips dan Trik Unik Visual Basic

”, Penerbit PT Elex Media

Komputindo, Jakarta

Petroutsos, Evangelos, 2002,

Menguasai Pemrograman Database dengan Visual

Basic 6

, Buku 1, alih bahasa oleh Adi Kurniadi, Penerbit PT Elex Media

Komputindo, Jakarta

Rusmawan, Uus, 2004,

Mengolah Database dengan SQL dan Crystal Report dalam

VISUAL BASIC 6.0

, Penerbit PT Elex Media Komputindo, Jakarta

(63)

Private Sub cmdAbout_Click()

Call RekamKegiatan End Sub

Private Sub cmdbilling_Click() bill.Show

End Sub

Private Sub cmdLogout_Click() Dim i As Integer

cmdLogin.Enabled = True cmdkasir.Enabled = False cmdAdmin.Enabled = False cmdGantiPassword.Enabled = False cmdLogout.Enabled = False Call RekamKegiatan("Logout.") With StatusBar1

For i = 1 To 3 .Panels(i).Text = "" Next i

End With

Timer2.Enabled = False End Sub

Private Sub cmdkasir_Click()

Call RekamKegiatan("Masuk ke menu Operator.")

MsgBox "Selamat datang, Kasir!", vbInformation, "Sukses Kasir" Call RekamKegiatan("Keluar dari menu Operator.")

End Sub

Private Sub cmdGantiPassword_Click()

Call RekamKegiatan("Masuk ke menu Ganti Password.") frmGantiPassword.Show 1

End Sub

Private Sub cmdGantiPassword_KeyDown(KeyCode As Integer, Shift As Integer) Select Case KeyCode

Case vbKeyEscape End

Case Else End Select End Sub

Private Sub cmdKeluar_Click() Dim Jawab As Integer

Jawab = MsgBox("Yakin mau keluar dari program?", vbQuestion + vbYesNo + vbDefaultButton2, "Keluar Program")

(64)

End Else End If End Sub

Private Sub cmdLogin_Click() Screen.MousePointer = vbHourglass frmLogin.Show 1

End Sub

Private Sub cmdLogin_KeyDown(KeyCode As Integer, Shift As Integer) Select Case KeyCode

Case vbKeyEscape End

Case Else End Select End Sub

Private Sub cmdUser_KeyDown(KeyCode As Integer, Shift As Integer) Select Case KeyCode

Case vbKeyEscape End

Case Else End Select End Sub

Private Sub cmdAdmin_Click() Screen.MousePointer = vbHourglass

Call RekamKegiatan("Masuk ke menu Administrator.") frmUser.Show 1

End Sub

Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer) Select Case KeyCode

Case vbKeyEscape End

Case Else End Select End Sub

Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer) Call RekamKegiatan("Keluar dari program.")

End Sub

Private Sub Timer1_Timer() With StatusBar1

.Panels(5).Text = Time End With

End Sub

(65)

.Panels(3).Text = Format(Time - CDate(.Panels(2).Text), "hh:mm:ss") End With

End Sub

Private Sub Form_Load() Dim Ahari

Dim SHari As String

Ahari = Array("Minggu", "Senin", "Selasa", "Rabu", "Kamis", "Jumat", "Sabtu") SHari = Ahari(Abs(Weekday(Date) - 1))

StatusBar1.Panels(4).Text = "" & SHari & ", " & Format(Date, "dd-mm-yyyy") StatusBar1.Panels(5).Text = Time

Timer1.Enabled = True cmdkasir.Enabled = False cmdAdmin.Enabled = False cmdGantiPassword.Enabled = False cmdLogout.Enabled = False End Sub

Private Sub Form_Unload(Cancel As Integer) Dim i As Integer

For i = Forms.Count - 1 To 1 Step -1 Unload Forms(i)

Next End End Sub

Dim WithEvents adoPrimaryRS As Recordset Dim mbChangedByCode As Boolean

Dim mvBookMark As Variant Dim mbEditFlag As Boolean Dim mbAddNewFlag As Boolean Dim mbDataChanged As Boolean Dim HasilBatal As Boolean Dim Db As Connection

Dim JlhRecord, Nomor, NomorCari As Integer

Private Sub cmbHakAkses_Click() txtFields(4).Text = cmbHakAkses.Text End Sub

Private Sub cmbHakAkses_KeyPress(KeyAscii As Integer) If mbEditFlag = True Then

If KeyAscii = 13 Then txtFields(6).SetFocus Else

If KeyAscii = 13 Then txtFields(5).SetFocus End If

End Sub

(66)

On Error GoTo GantiErr

cmdGantiPassword.Enabled = False BukaKonfirmasi

BukaPassword

DataString = txtFields(6).Text Translate

txtFields(6).Text = Temp$

txtPassword.Text = txtFields(6).Text lblStatus.Caption = "Edit data user..." mbEditFlag = True

SetButtons False txtFields(6).SetFocus DataGrid1.Enabled = False Exit Sub

GantiErr:

MsgBox Err.Description End Sub

Private Sub Form_Load() On Error GoTo Pesan Set Db = Nothing

Set Db = New Connection Db.CursorLocation = adUseClient

Db.Open "PROVIDER=MSDataShape;Data PROVIDER=Microsoft.Jet.OLEDB.3.51;Data Source=" & App.Path & "\Data.mdb;Jet OLEDB:Database Password=masino2002; "

Set adoPrimaryRS = New Recordset

adoPrimaryRS.Open "SHAPE {select Nama,Alamat,HakAkses,UserID,Password from T_User Order by UserID} AS ParentCMD APPEND ({select Nama,Alamat,HakAkses,UserID,Password from T_User Order by UserID } AS ChildCMD RELATE UserID TO UserID) AS ChildCMD", Db, adOpenStatic, adLockOptimistic

HasilBatal = False Dim oText As TextBox For Each oText In Me.txtFields

Set oText.DataSource = adoPrimaryRS Next

cmbHakAkses.Text = txtFields(4).Text

Set DataGrid1.DataSource = adoPrimaryRS.DataSource mbDataChanged = False

mbAddNewFlag = False KunciEntri

Screen.MousePointer = vbDefault Exit Sub

Pesan:

MsgBox Err.Number & vbCrLf & Err.Description Unload Me

End Sub

(67)

End Sub

Private Sub Form_Resize() On Error Resume Next

fraEntri.Width = Me.ScaleWidth DataGrid1.Width = Me.ScaleWidth

DataGrid1.Height = Me.ScaleHeight - grdDataGrid.Top - 30 - picButtons.Height - picStatBox.Height lblStatus.Width = Me.Width - 1500

cmdNext.Left = lblStatus.Width + 700 cmdLast.Left = cmdNext.Left + 340 End Sub

Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer) If mbEditFlag Or mbAddNewFlag Then Exit Sub

Select Case KeyCode Case vbKeyEscape cmdClose_Click Case vbKeyEnd cmdLast_Click Case vbKeyHome cmdFirst_Click

Case vbKeyUp, vbKeyPageUp If Shift = vbCtrlMask Then cmdFirst_Click

Else

cmdPrevious_Click End If

Case vbKeyDown, vbKeyPageDown If Shift = vbCtrlMask Then

cmdLast_Click Else cmdNext_Click End If Case Else End Select End Sub

Private Sub adoPrimaryRS_MoveComplete(ByVal adReason As ADODB.EventReasonEnum, ByVal pError As ADODB.Error, adStatus As ADODB.EventStatusEnum, ByVal pRecordset As

ADODB.Recordset)

Nomor = adoPrimaryRS.AbsolutePosition

lblStatus.Caption = "Data User ke-" & CStr(Nomor) & " dari " & adoPrimaryRS.RecordCount End Sub

Private Sub adoPrimaryRS_WillChangeRecord(ByVal adReason As ADODB.EventReasonEnum, ByVal cRecords As Long, adStatus As ADODB.EventStatusEnum, ByVal pRecordset As

ADODB.Recordset) Dim bCancel As Boolean

(68)

Case adRsnClose Case adRsnDelete Case adRsnFirstChange Case adRsnMove Case adRsnRequery Case adRsnResynch Case adRsnUndoAddNew Case adRsnUndoDelete Case adRsnUndoUpdate Case adRsnUpdate End Select

If bCancel Then adStatus = adStatusCancel End Sub

Private Sub cmdAdd_Click() On Error GoTo AddErr BukaKunciEntri BukaKonfirmasi PeriksaUserID

cmbHakAkses.Text = "Kasir" cmdGantiPassword.Enabled = False DataGrid1.Enabled = False

txtFields(0).SetFocus With adoPrimaryRS

If Not (.BOF And .EOF) Then mvBookMark = .Bookmark End If

.AddNew

lblStatus.Caption = "Tambah data user..." mbAddNewFlag = True

SetButtons False End With Exit Sub AddErr: MsgBox Err.Description End Sub

Private Sub cmdDelete_Click() Dim Jawab As Integer

On Error GoTo DeleteErr

If adoPrimaryRS.RecordCount = 1 Then

MsgBox "Anda tidak dapat menghapus record ini!" & Chr(13) & _ "Minimal harus ada satu record di tabel" & Chr(13) & _

"User dengan hak akses Admin.", vbCritical, "Record Tinggal Satu" Exit Sub

End If

If adoPrimaryRS.EOF Then

(69)

Jawab = MsgBox("Yakin akan menghapus record ini?", vbQuestion + vbDefaultButton2 + vbYesNo, "Hapus Data User")

If Jawab = vbYes Then With adoPrimaryRS

Call RekamKegiatan("Hapus user '" & txtFields(5).Text & "'") .Delete

.MoveNext

If .EOF Then .MoveLast End With Exit Sub Else Exit Sub End If DeleteErr: MsgBox Err.Description End Sub

Private Sub cmdRefresh_Click() On Error GoTo RefreshErr

cmbHakAkses.Text = txtFields(4).Text TutupKonfirmasi

If HasilBatal = True Then SetButtons True HasilBatal = False End If

cmdAdd.Enabled = True cmdEdit.Enabled = True cmdUpdate.Enabled = True cmdDelete.Enabled = True cmdCancel.Enabled = True cmdRefresh.Enabled = True SetButtons True

mbEditFlag = False mbAddNewFlag = False

Set DataGrid1.DataSource = Nothing adoPrimaryRS.Requery

Set DataGrid1.DataSource = adoPrimaryRS.DataSource Exit Sub

RefreshErr:

cmdAdd.Enabled = False cmdEdit.Enabled = False cmdUpdate.Enabled = False cmdDelete.Enabled = False cmdCancel.Enabled = False cmdRefresh.Enabled = True mbEditFlag = False

(70)

adoPrimaryRS.Bookmark = mvBookMark Else

adoPrimaryRS.MoveFirst End If

mbDataChanged = False HasilBatal = True cmdRefresh_Click Exit Sub

End Sub

Private Sub cmdEdit_Click() On Error GoTo EditErr BukaKonfirmasi BukaKunciEntri

txtFields(5).Enabled = False DataString = txtFields(6).Text Translate

txtFields(6).Text = Temp$

txtPassword.Text = txtFields(6).Text lblStatus.Caption = "Edit data user..." mbEditFlag = True

SetButtons False

cmdGantiPassword.Enabled = False DataGrid1.Enabled = False

txtFields(0).SetFocus Exit Sub

EditErr:

MsgBox Err.Description End Sub

Private Sub cmdCancel_Click() On Error Resume Next TutupKonfirmasi KunciEntri cmdRefresh_Click If HasilBatal = True Then SetButtons True Exit Sub End If

If mbEditFlag = True Then DataString = txtFields(6).Text Translate

txtFields(6).Text = Temp$ End If

SetButtons True

cmdGantiPassword.Enabled = True mbEditFlag = False

mbAddNewFlag = False adoPrimaryRS.CancelUpdate If mvBookMark <> 0 Then

(71)

adoPrimaryRS.MoveFirst End If

mbDataChanged = False DataGrid1.Enabled = True End Sub

Private Sub cmdUpdate_Click() Dim i As Integer

Dim HasilCari As String On Error GoTo UpdateErr cmdUpdate.Default = False

Jhlrecord = adoPrimaryRS.RecordCount If Len(txtFields(0).Text) = 0 Then

MsgBox "Nama user masih kosong", vbCritical, "Nama Kosong" txtFields(0).SetFocus

Exit Sub

ElseIf Len(txtFields(3).Text) = 0 Then

MsgBox "Alamat rumah masih kosong", vbCritical, "Alamat Kosong" txtFields(3).SetFocus

Exit Sub

ElseIf Len(cmbHakAkses.Text) = 0 Then

MsgBox "Hak Akses masih kosong", vbCritical, "Hak Akses Kosong" cmbHakAkses.SetFocus

Exit Sub

ElseIf Len(txtFields(5).Text) = 0 Then

MsgBox "UserID masih kosong", vbCritical, "UserID Kosong" txtFields(5).SetFocus

Exit Sub

ElseIf Len(txtFields(6).Text) = 0 Then

MsgBox "Password masih kosong", vbCritical, "Password Kosong" txtFields(6).SetFocus

Exit Sub

ElseIf Len(txtPassword.Text) = 0 Then

MsgBox "Konfirmasi password tidak sama!", vbCritical, "Password Tidak Valid" txtPassword.SetFocus

Exit Sub End If

For i = 1 To JlhRecord

If txtFields(5).Text = cekUser(i).user And mbAddNewFlag = True Then

MsgBox "UserID sudah ada! Ganti dengan yang lain.", vbCritical, "UserID Dobel" txtFields(5).SetFocus SendKeys "{Home}+{End}" Exit Sub Else End If Next i

If txtFields(6).Text <> txtPassword.Text Then

MsgBox "Konfirmasi password tidak sama", vbCritical, "Password Tidak Valid" txtPassword.SetFocus

(72)

End If

If cmbHakAkses.Text <> "Admin" And _ cmbHakAkses.Text <> "Kasir" Then

MsgBox "Isi dengan Kasir atau Admin" & Chr(13) & _

"atau klik panah lalu pilih salah satu!", vbCritical, "Hak Akses" cmbHakAkses.SetFocus

Exit Sub End If

txtFields(4).Text = cmbHakAkses.Text DataString = txtFields(6).Text

Translate

txtFields(6).Text = Temp$

adoPrimaryRS.UpdateBatch adAffectAll adoPrimaryRS.MoveLast

If mbAddNewFlag = True Then

Call RekamKegiatan("Tambah user '" & txtFields(5).Text & "'") End If

Call RekamKegiatan("Simpan perubahan user '" & txtFields(5).Text & "'") mbEditFlag = False

mbAddNewFlag = False SetButtons True

DataGrid1.Enabled = True

cmdGantiPassword.Enabled = True mbDataChanged = False

TutupKonfirmasi KunciEntri

lblStatus.Caption = "Record ke-" & CStr(adoPrimaryRS.AbsolutePosition) Exit Sub

UpdateErr:

MsgBox Err.Description End Sub

Private Sub cmdClose_Click() On Error Resume Next cmdClose.SetFocus Db.Close

Unload Me End Sub

Private Sub cmdFirst_Click() On Error GoTo GoFirstError adoPrimaryRS.MoveFirst mbDataChanged = False

cmbHakAkses.Text = txtFields(4).Text Exit Sub

GoFirstError:

(73)

On Error GoTo GoLastError adoPrimaryRS.MoveLast mbDataChanged = False

cmbHakAkses.Text = txtFields(4).Text Exit Sub

GoLastError:

MsgBox Err.Description End Sub

Private Sub cmdNext_Click() On Error GoTo GoNextError

If Not adoPrimaryRS.EOF Then adoPrimaryRS.

Gambar

Tabel 2.1 Tabel jenis Tipe Data Visual Basic
Tabel 2.2 Tabel Operator yang disediakan Visual Basic
Gambar 3.1 Contex Diagram Sistem.
Gambar 3.2 Diagram Berjenjang Sistem
+7

Referensi

Dokumen terkait

Alhamdulillah Puji syukur penulis ucapkan ke hadirat Allah SWT yang telah memberikan rahmat dan hidayah-Nya, sehingga penulis dapat menyelesaikan tugas akhir

Hasil dari penelitian ini adalah (1) Sistem Informasi Arsip Elektronik dikembangkan menggunakan Visual Basic 6 dan MSQL dengan fitur: tambah surat, cari surat,

Alhamdulillah Puji syukur penulis ucapkan ke hadirat Allah SWT yang telah memberikan rahmat dan hidayah-Nya, sehingga penulis dapat menyelesaikan tugas akhir

Untuk menyusun Tugas Akhir dari Sistem Informasi Resep Masakan Indonesia Menggunakan Visual Basic 6.0, penulis melakukan penerapan metode penitian dalam memperoleh

Demikian diterangkan untuk digunakan melengkapi syarat pendaftaran Ujian Meja Hijau Tugas Akhir Mahasiswa bersangkutan di Departemen Matematika FMIPA USU Medan. Komputer

menyediakan layanan informasi pendataan secara akurat. Adira Multifinance ini, sistem pencatatan mulai pendataan pendapatan dan biaya pengeluran masih dilakukan secara

Pada tugas akhir ini quadcopter terintegrasi dengan sebuah camera yang berfungsi untuk mendeteksi sebuah objek dan mengikuti (tracking) pergerakan objek

Dari latar belakang tersebut maka pada tugas akhir ini akan dibangun sebuah Aplikasi Crowdsourcing Pelaporan Kerusakan Fasilitas Umum menggunakan teks, foto dan titik