Aplikasi Sistem Informasi Hotel dengan V

APLIKASI SEDERHANA
MANAJEMENT HOTEL DENGAN
VISUAL STUDIO DAN SQL SERVER

DI SUSUN OLEH : IRFANNUR DIAH

BLOG.KANGFAND.NET

Membuat Aplikasi Hotel Sederhana Hotel menggunakan Database SQL Server 2012
Dan Visual Studio VB.net 2013 dengan ListView
Oleh : Irfannur Diah (1310000019)
A. Pendahuluan
Di era zaman teknologi sekarang segalanya menggunakan komputer untuk membantu
pekerjaan manusia, maka dari itu aplikasi hotel sederhana ini ialah sebuah aplikasi yang dapat
digunakan untuk Memanajement hotel tersebut dengan keutungan lebih cepat, hemat, simple
dan flexible dari pada system manual. Sebelum lanjut ketahap pembuatan kita harus
mempersiapakan bahan dan perancangan desain database terlebih dahulu agar aplikasi yang
dibuat lebih terarah dan sesuai dengan keingan serta kebutuhan. Untuk itu lakukan tahap
analisa terlebih dahulu aplikasi yang akan dibuat, maka dari berikut tabel serta field yang
dibutuhkan, seperti berikut :


Gambar diatas merupakan skema database yang akan dibuat. Yang dimana alur
prosesnya tamu melakukan chekin dengan registrasi data yang akan ddimintai data diri,
selanjutnya admin memasukkan data pada hotel berupa kamar, tipe, fasilitas. Selanjutnya
admin mengisi form chekout dan pembayaran sesuai dengan keadaan tamu apa hal tersebut
pembayaran atau pemesanan. Dalam konteks aplikasi yang kompleks, aplikasi ini sangat

1|Blog.kangfand.net © 2014

sederhana. Di kesempatan berikutnya kita akan membuat aplikasi berikut dengan software
yang terintegrasi dengan web jadi tamu yang akan memesan dapat melakukan pembokingan
melaui webnya di internet.
B. Tahap Pembuatan Database
Pada proses pembuatan database sebenarnya dapat dilakukan dengan banyak aplikasi
pendukung database namun pada studi kasus ini kita akan fokuskan pada penggunaan SQL
Server. Dalam proses pembuatannya juga kita dapat membuat dengan dua cara yaitu dengan
proses manual query atau langsung dari sql Server atau dengan kata lain wizard dengan hanya
mengklik dan mengisikan. Namun tahap ini kita akan membahas tentang kedua cara tersebut
query dan wizard.
Berikut Langkah – Langkah Pembuatan degan Query Manual:
1. Dalam pembuatan manual dapat digunakan aplikasi editor text lainnya lalu di simpan

dengan extensi *.sql namun juga dapat langsung di buat langsung pada SQL Query di
SQL Server, untuk itu langkah awal buka Aplikasi SQL Server Manajement Studio. Pada
desktop atau start menu Seperti gambar dibawah :

2. Lakukan login connect ke Server dengan type Database Engine dan Server name yang
ada di lokal server dengan mengklik tombol connect. Seperti tampilan berikut :

2|Blog.kangfand.net © 2014

3. Langkah selanjutnnya pilih new query pada toolbar, seperti berikut :

4. Selanjutnya lakukan penulisan Pembuatan Database dengan Query, seperti berikut
create database Hotel
on primary
(
name = N'hotel_primary', /* nama untuk primary */
filename = 'D:\Database Hotel\hotel_primary.mdf', /* Sesuaikan direktorinya
*/
size = 5mb, /* dengan ukuran awal 5mb */
maxsize = unlimited, /* maksimal ukuran tidak terbatas */

filegrowth = 100mb) /* dan pertumbuhan data 100mb */
log on
(
name = N'hotel_log', /* nama untuk log */
filename = 'D:\Database Hotel\hotel_log.ldf', /* Sesuaikan direktorinya */
size = 5mb,
maxsize = unlimited,
filegrowth = 100mb)

3|Blog.kangfand.net © 2014

Script query diaatas bermaksud membuat database dengan nama Hotel. Pada
Filename penyimpanan file anda dapat menggunakan tempat penyimpanan anda sendiri yang
ada pada perangkat pc atau laptop anda. Namun tidak melupakan dengan extensi file primary
dan log on dengan *.mdf dan *.ldf.
5. Ketiklah koding Query diatas dan Lakukan Exsekusi query dengan memblock kode query
yang akan di eksekusi tersebut lalu pilih “Execute” pada toolbar atau dengan menekan
“F5” pada keyboard. Seperti gambar berikut :

Jika pada proses pembuatan table ketika melakukan pengeksekusian Jangan lupa pilih

terlebih dahulu database yang akan di eksekusi. Pada kotak combobox di samping “Execute”
agar tepat exsekusinya.

Selanjutnya Jika pengekusian berhasil maka akan tampak seperti gambar di bawah ini

Jika terjadi kesalahan coba perhatian baik – baik apa yang di eksekusi dan ditulis, Terkadang
sering terjadi kesalahan dalam proses pengeksekusian karena tidak pada tabel atau database
yang tepat atau juga karena kurang teliti. Didalam pengcodingan kita diharuskan teliti. Tapi
pada SQL server jika terdapat kesalahan maka akan muncul pesan error dibawahnya yang
memudahkan kita memperbaikinya, seperti berikut :

4|Blog.kangfand.net © 2014

Kesalahan tersebut mudah di pahami karena ada pesan error, dan kesalahan di atas terjadi
karena directorinya tidak ditemukan atau foldernya tidak ada.
6. Pembuatan Tabel dengan Query, seperti berikut :
create table tbl_prov (
id_prov varchar (10),
nama_prov varchar(20)
constraint pk_id_prov_bcup primary key (id_prov)

)

Pada contoh pembuatan diatas bermaksud membuat table dengan nama “tbl_prov”
dan pada table tersebut memiliki kolom atau field “Id_prov” dengan tipe data “varchar” serta
banyaknya value sebanyak “(10)”. Sedangkan “Constraint pk_id_prov_bckup primary key
(id_prov)” bermaksud membuat “id_prov” sebagai primary key (kunci utama) dengan nama
konstrain “pk_id_prov_bckup”. Selanjutnya Jika anda ingin membuat konstrain foreign key
(kunci tamu) maka pembuatannya “constraint fk_id_prov_tamu foreign key (id_prov)
references tbl_prov(id_prov)” kontrain kunci tamu tersebut memiliki nama fk_id_prov_tamu,
dengan tamu “id_prov” yang di ambil atau refensi pada tabel “tbl_prov” dengan kolom
“id_prov”.
7. Langkah selanjutnya ketikan query Pembuatan Table Hotel dibawah ini dan lakukan
eksekusi seperti langkah ke 5.

5|Blog.kangfand.net © 2014

use Hotel
create table tbl_prov (
id_prov varchar (10),
nama_prov varchar(20)

constraint pk_id_prov_bcup primary key (id_prov)
)
create table tbl_kab (
id_kab varchar (10),
nama_kab varchar (20)
constraint pk_id_kab_bcup primary key (id_kab)
)
create table tbl_tamu(
id_tam varchar (10) not null,
no_ktp varchar(30),
nama_tam varchar(30),
jk varchar(15),
alamat varchar(50),
id_prov varchar (10),
id_kab varchar (10),
kode_pos char(6),
email varchar(30),
no_telp varchar(20)
constraint pk_id_tamu_bcup primary key (id_tam)
constraint fk_id_prov_tamu foreign key (id_prov) references

tbl_prov(id_prov),
constraint fk_id_kab_tamu foreign key (id_kab) references tbl_kab(id_kab)
)
create table tbl_karyawan(
id_kar varchar (10) not null,
no_ktp varchar(30),
nama_kar varchar(30),
jk varchar(15),
alamat varchar(50),
email varchar(30),
no_telp varchar(20),
constraint pk_id_karyawan_bcup primary key (id_kar)
)
create table tbl_kamar (
kd_kam varchar (10) not null,
kd_tipekam varchar (10) not null,
kd_fasilitas varchar (10) not null,
harga_biasa int,
harga_liburan int,
kapasitas varchar(30),

status varchar (20)
constraint pk_kd_kamar_bcup primary key (kd_kam),
constraint fk_kd_tipekam_kamar foreign key (kd_tipekam) references
tbl_tipekam(kd_tipekam),
constraint fk_kd_fasilitas_kamar foreign key (kd_fasilitas) references
tbl_fasilitas(kd_fasilitas)
)

6|Blog.kangfand.net © 2014

create table tbl_tipekam (
kd_tipekam varchar (10) not null,
nama_tipe varchar(30)
constraint pk_id_tipekamar_bcup primary key (kd_tipekam)
)
create table tbl_fasilitas (
kd_fasilitas varchar (10) not null,
nama_fasilitas varchar(30)
constraint pk_id_fasilitas_bcup primary key (kd_fasilitas)
)

create table tbl_menu (
kd_menu varchar (10) not null,
nama_menu varchar (30),
harga int,
constraint pk_kd_menu_bcup primary key (kd_menu),
)
create table tbl_restoran (
kd_res varchar (10) not null,
kd_menu varchar (10) not null,
kd_chekin varchar (10) not null,
jumlah_pesanan int,
tgl_pesan date,
total_bayar money,
constraint pk_kd_restoran_bcup primary key (kd_res),
constraint fk_kd_menu_restoran foreign key (kd_menu) references
tbl_menu(kd_menu)
)
create table tbl_reg_chekin (
kd_chekin varchar (10) not null,
kd_kam varchar (10) not null,

id_tam varchar (10) not null,
id_kar varchar (10) not null,
tgl_chekin date,
lama_tinggal int,
keterangan text,
status_chekin varchar (10)
constraint pk_kd_chekin_bcup primary key (kd_chekin),
constraint fk_kd_kam_chekin foreign key (kd_kam) references
tbl_kamar(kd_kam),
constraint fk_id_tam_chekin foreign key (id_tam) references
tbl_tamu(id_tam),
constraint fk_id_kar_chekin foreign key (id_kar) references
tbl_karyawan(id_kar)
)
create table tbl_reg_chekout (
kd_chekin varchar (10) not null,
kd_chekout varchar (10) not null,
tanggal_chekout date,
keterangan text
constraint pk_kd_chekout_bcup primary key (kd_chekout),

constraint fk_kd_chekin_chekout foreign key (kd_chekin) references
tbl_reg_chekin(kd_chekin)

7|Blog.kangfand.net © 2014

create table tbl_pembayaran (
kd_pembayaran varchar (10) not null,
kd_chekin varchar (10) not null,
kd_chekout varchar (10) not null,
kd_res varchar (10) not null,
total_pembayaran money,
discount int,
denda int,
constraint pk_kd_pembayaran_bcup primary key (kd_pembayaran),
constraint fk_kd_chekin_pembayaran foreign key (kd_chekin) references
tbl_reg_chekin(kd_chekin),
constraint fk_kd_chekout_pembayaran foreign key (kd_chekout) references
tbl_reg_chekout(kd_chekout),
constraint fk_kd_restoran_pembayaran foreign key (kd_res) references
tbl_restoran(kd_res)
)

8. Selanjutnya Jika pada langka 7 telah berhasil di buat atau di eksekusi maka akan muncul
tabel yang telah dibuat pada tab Object Explorer seperti berikut, jika tidak muncul
lakukan refresh pada database dengan melakukan Klik kanan pada database lalu pilih
refresh, seperti berikut :

9. Pada gambar diatas menunjukan tabel telah selesai dibuat, langkah selanjutnya yaitu
pembuatan isi dari tabel tersebut, namun sebenarnya tidak dilakukan pengisian juga tidak
menjadi masalah karena kita akan membuat aplikasi Penginputan data atau yang lebih

8|Blog.kangfand.net © 2014

dikenal dengan CRUD dengan menggunakan Vb.net. untuk mendasari hal tersebut perlu
juga di ketahui pembuatanya dengan manual query, seperti berikut :
insert into namatabel values ('isi1','isi2')

Pada kode diatas adalah proses memasukan data ke tabel namatabel dengan isi
'isi1','isi2' pada pengisian fild di pisahkan oleh koma. Contoh :
insert into tbl_prov values ('prov01','Aceh')

Kode tersebut melakukan proses pengisian ke tabel provinsi dengan kode provinsi
“prov01” dan nama provinsi “Aceh”.
10. Perlu di ketahui yaitu pada query diatas juga ada proses pembuatan primary key dan
relationship atau kunci tamu. Contoh :

create table tbl_restoran (
kd_res varchar (10) not null,
kd_menu varchar (10) not null,
kd_chekin varchar (10) not null,
jumlah_pesanan int,
tgl_pesan date,
total_bayar money,
constraint pk_kd_restoran_bcup primary key (kd_res),
constraint fk_kd_menu_restoran foreign key (kd_menu) references
tbl_menu(kd_menu)
)

Pada query “constraint pk_kd_restoran_bcup primary key (kd_res),” menjelaskan
yaitu pembuatan primary key. “pk_kd_restoran_bcup” adalah nama atau lebel dari primary
key tersebut. Sedangkan “kd_res” berarti colom kd_res yang menjadi kunci utama dari tabel
tersebut. Kunci utama berfungsi untuk menjadi panduan kita nantinya dalam mencari,
menghapus atau mengedit data dan dialah yang menjadi panduannya syarat primary key ialah
tidak boleh ada yang sama valuenya.
Selanjutnya pada query “constraint fk_kd_menu_restoran foreign key (kd_menu)
references tbl_menu(kd_menu)” merupakan kunci tamu atau relasi. “fk_kd_menu_restoran”
merupakan namanya juga sama seperti primary, namun ingat nama tersebut tidak boleh sama
agar mudah dalam menandainya. “foreign key (kd_menu)” bermaksud kd_menu yang
menjadi kunci tamu dari “tbl_menu(kd_menu)” tabel menu. Jadi menu yang ada di restoran
mengambil referensi atau sumber dari tabel menu.
Berikut Langkah – Langkah Pembuatan langsung dengan Interface / wizard :
9|Blog.kangfand.net © 2014

1. Dalam tahap ini langkah pertama yang kita lakukan adalah membuka aplikasi SQL
Manajement, selanjutnya proses login sama seperti langkah di atas. Setelah ini lakukan
klik kanan pada Database di Window Object Explorer lalu pilih New Database, seperti
gambar berikut :

2. Selanjutnya setelah muncul dialog New Database , seperti berikut :

10 | B l o g . k a n g f a n d . n e t © 2 0 1 4

Pada Database Name lakukan pengisian nama database dan pada Database files lakukan
pengisian sama seperti proses manual namun tahap ini kita hanya lakukan dengan tinggal
mengubah value tidak melakukan proses pengkodean lagi.
Keterangan :
a. Logical Name : Nama
b. File Type

: Tipe dari file database apakah itu data atau log

c. Filegroup

: merupakan pendefenisian untuk primary data file

d. Initial Size (MB)

: Ukuran file database yang akan dibuat

e. Autogrowth/Maximasize : pertumbuhan data dan ukuran maksimal yang akan
diciptakan
f. Path

: Letak direktori yang akan disimpan

g. File Name

: Nama file

3. Setelah melakukan pengisian dan klik Ok, maka dengan begitu database sudah di buat.
Langkah berikutnya lakukan pembuatan tabel pada database tersebut. Langkah pilih
11 | B l o g . k a n g f a n d . n e t © 2 0 1 4

database yang telah dibuat pada Object explorer , dan pilih Tables dan klik kanan pada
Tables pilih new Tables seperti berikut :

Lalu akan muncul seperti berikut :

Pada colome name isikan dengan nama kolom tables tersebut dan pada Data Type
merupakan untuk tipe dari penggunaan data tersebut . pada gambar diatas kita
12 | B l o g . k a n g f a n d . n e t © 2 0 1 4

menggunakan “Varchar” dengan jumlah panjang value “50” sedangkan Allow Nulls
merupakan apakah data tersebut boleh kosong atau tidak ketika melakukan proses
pengisian tabel. Lalu tekan oke dengan begitu tabel akan di buat. Proses ini sama dengan
membuat tabel tabel berikutnya.
4. Pembuatan Primary Key dapat dilakukan dengan mengklik kanan pada field yang akan di
buat primary key , seperti gambar berikut :

Lalu pilih “Set Primary Key” maka dengan begitu kolom akan dibuat menjadi kunci
utama atau Primary key.
5. Selanjutnya jika ingin membuat relasi terhadap colom tersebut yaitu dengan cara klik
kalan pada tabel yang telah di buat sama seperti langkah ke 4 di design. Seperti berikut :

13 | B l o g . k a n g f a n d . n e t © 2 0 1 4

Lalu pilih kolom yang ingin di relasikan atau menjadi kunci tamu dan klik kanan pilih
relationship

Maka akan muncul dialog Foreign Key Relationships, seperti berikut :

Gambar di atas, merupakan contoh relationship dari query yang sudah kita eksekusi
sebelumnya pada proses manual. Jika kita ingin menambahkan foregienkey yaitu dengan
Klik Add, dan pilih Selected Relationship yang sudah dibuat. Kemudian pilih Tables And
Columns Specification, lalu tekan button ... , berikut gambar kotak dialog yang muncul :

14 | B l o g . k a n g f a n d . n e t © 2 0 1 4

Gambar contoh tersebut terlihat relasi default yang belum di ubah ketika kita
menambahkannya. Selanjutnya kita tinggal mengubah nama dan kunci utama tabel atau tabel
yang menjadi referensi dan pilih kolom menjadi referensinya atau primary keynya dengan
tabel sudah berelasi.
6. Selanjutnya kita akan Melihat hasil relasi yang sudah kita buat yaitu dengan new query
pada toobal atau dengan CTRL+N dari keyboard. Selanjutnya kita klik kanan pada query
yang kosong tersebut lalu pilih design query in editor , dapat juga dengan CTRL+
Shift+Q seperti berikut :

Cari lain juga dapat dari menu Query lalu Design Query in Editor,

15 | B l o g . k a n g f a n d . n e t © 2 0 1 4

Ketika kotak dialog muncul, lalu add semua tabel dengan mengeblock semua lalu tekan add

Maka dengan itu relasi pun terlihat , seperti berikut :

16 | B l o g . k a n g f a n d . n e t © 2 0 1 4

C. Tahap Pembuatan Aplikasi dengan VB.net
Proses pembuatn pada tahap pertama ini kita membuka aplikasi Visual Studio 2008,
2010 atau 2013. Namun saya sendiri menggunakan Visual Studio 2013. Dalam hal versi sama
saja hanya ada beberapa fitur dari yang 2013 lebih comlite dari sebelumnya.
Klik Start, program lalu pilih software Vs tersebut dan selanjutnya pilih New Project

Ketika muncul kotak dialog seperti dibawah :

17 | B l o g . k a n g f a n d . n e t © 2 0 1 4

Pilih .Net Framework 3.5 karena 3.5 lebih banyak sering digunakan di banding yang versi 4
harus di update terlebih dahulu. Pada bagian name buatlah dengan nama pilihan anda sendiri
begitu juga dengan location direktori penyimpanannya. Lalu pilih ok.
Selanjutnya akan muncul form kosong yang masih belum di design, untuk itu kita akan
melakukan tahap design interface.

Langkah awal kita akan membuat tampilan menu, kita akan menggunakan button, dan label
serta background gambar namun semua tergantung dengan selera design masing – masing.
Disini saya akan membuat seperti gambar dibawah :

18 | B l o g . k a n g f a n d . n e t © 2 0 1 4

Dan setelah di import background dan icon menjadi seperti berikut :

Proses Pengenalan dengan Visual Studio :
Dalam memulai project kita, terlebih dahulu kita harus mengenal penggunaan dasar
dari visual studio ini. Dari cara membuat textbox, button, label, combobox atau form
A. Tahap Pembuatan Button Menu
Pada toolbox cari dan pilih button, lalu lakukan drag ke form. Seperti berikut :

19 | B l o g . k a n g f a n d . n e t © 2 0 1 4

Lalu klik kanan dan pilih properties untuk mengatur pengaturannya, ubah namanya
dengan mengganti pada Text di properties atau juga font background atau forecolor
(warna tulisan).

Jangan lupa mengubah name nya agar mempermudah pengcodingan, sesuikan dengan
gaya tulisan atau kode kalian. Saya sering menggunakan inisial “t” untuk penggunan
textboxt, “btn” untuk pengguaan button.
Selanjutnya tahap coding , klik dua kali pada button tersebut dan tulisan kode berikut,
untuk memanggil form yang akan kita munculkan ketika menekan tombol tersebut :
Private Sub Btn_tamu_Click(sender As Object, e As EventArgs) Handles
Btn_tamu.Click
Frm_tamu.Show()
End Sub

20 | B l o g . k a n g f a n d . n e t © 2 0 1 4

Btn_tamu adalah nama buttonnya, selanjutnya Frm_tamu adalah nama formnya yang akan
kita panggil.
B. Tahap Penambahan Form
Setelah kita selesai membuat menu button pada form pertama, langkah berikutnya kita
membuat sebuah form yang akan kita panggil pada button tersebut yang sudah kita bahas
diatas. Dengan cara Klik kanan pada solution Exprorer, lalu pilih add dan pilih windows
form, seperti gambar berikut :

Selanjutnya ketika muncul kotak dialog, masukkan nama form sesui dengan nanti
studi kasus form – form yang akan kita buat. Lalau pilih ok.

21 | B l o g . k a n g f a n d . n e t © 2 0 1 4

C. Pembuatan Label, Combobox, Textfield, dan Listview
Untuk pembuatan ini langkah pertama pilih toolbox , lalu pilih control yang akan kita
gunakan dan drag ke form selanjutnya ganti propertiesnya seperti langkah A.

Tahap Pembuatan Aplikasi :
A. Pembuatan Modul Koneksi.vb
Langkah ini adalah kita akan membuat model koneksi dari visual studio ke database yang
telah kita buat sebelumnya. Yaitu dengan dengan cara klik kanan pada Solution
Explorer lalu pilih Add Module , namakan modulnya dengan koneksi.vb
Berikut pengkodean pada modul koneksi :

22 | B l o g . k a n g f a n d . n e t © 2 0 1 4

Imports System.Data.SqlClient
Module koneksi
Public sqlconn As New SqlConnection
Public sqlcmd As New SqlCommand
Public sqlldr As SqlDataReader
Public strsql As String
Public sqlda As New SqlDataAdapter
Sub connect()
If sqlconn.State = ConnectionState.Open Then sqlconn.Close()
sqlconn.ConnectionString = "data source = LINKHITAM\KANGFAND ;
initial catalog = Hotel_Metafora; integrated security = true"
sqlconn.Open()
End Sub
End Module

Pada koding diatas menjelaskan tentang membuat sub fungsi koneksi, pada "data
source = LINKHITAM\KANGFAND ; initial catalog = Hotel_Metafora; integrated
security = true" Pada Data source rubahlah dengan nama username anda di sqlserver
dengan mengelihat di propertis atau login masuk sql server. Selanjutnya Initial catalog
seuikan dengan nama database yang telah kita buat sebelumnya. Nama server tersebut
seperti gambar dibawah :

B. Pembuatan Form Provinsi
Tahap ini kita akan membuat form yang langkah pembuatannya sudah kita bahas
sebelumnya, tampilannya seperti berikut :

23 | B l o g . k a n g f a n d . n e t © 2 0 1 4

Pada form ini kita akan membuat :
1. 3 Group Box
2. 3 Text field
3. 3 Label
4. 4 Button
5. 1 Combo Box
6. Dan 1 List view
Langkah selanjutnya rubahlah setiap nama dan text sesuai dengan form diatas.
Setelah selesai, klik dua kali pada form untuk memangil form load.

24 | B l o g . k a n g f a n d . n e t © 2 0 1 4

Tulislah kode pemanggilan koneksinya di form load. Dan selanjutnya kita akan membuat
nama kolom di list view, dengan klik di ujung atas listview.

Pilih view menjadi Details, selanjutnya klik Edit coloms. Pada kotak dialog kolom.

Add dua kolom dan rubah text propertiesnya dengan Id Provinsi dan yang kedua Nama
Provinsi, ini untuk melihat judul dari kolom yang akan di tampilkan.
Langkah selanjutnya tekan f7 atau klik kanan view kode dari form, dan lakukan penulisn
kode pembuatan view di bawah form load, seperti berikut :
Sub keuleh1()
strsql = "select * from tbl_prov"
sqlcmd.CommandText = strsql
sqlcmd.Connection = sqlconn
sqlda.SelectCommand = sqlcmd
sqlldr = sqlcmd.ExecuteReader()
ListView1.Items.Clear()

25 | B l o g . k a n g f a n d . n e t © 2 0 1 4

While (sqlldr.Read())
With ListView1.Items.Add(sqlldr("id_prov"))
.subitems.add(sqlldr("nama_prov"))
End With
End While
sqlldr.Close()
End Sub
Selanjutnya lakukan pemanggilan di form load.
Public Class frm_prov
Private Sub frm_prov_Load(sender As Object, e As EventArgs) Handles MyBase.Load
koneksi.connect()
keuleh1()
End Sub
Setelah itu membuat fungsi bersih atau reset, berguna untuk mereset form agar kosong.
Lakukan penulisan di bawah kode keuleh diatas.
Sub berseh1()
tid_prov.Text = ""
tnama_prov.Text = ""
tid_prov.Enabled = True
btambah1.Enabled = True
bupdate1.Enabled = False
bhapus1.Enabled = False
End Sub
Dan sama juga seperti fungsi diatas lakukan pemanggilan di form load.
Private Sub frm_prov_Load(sender As Object, e As EventArgs) Handles MyBase.Load
koneksi.connect()
keuleh1()
berseh1()
End Sub
Selanjutnya kita akan membuat listview ketika di klik akan memindahkan datanya ke dalam
textbox dan kawannya. Dengan cara Klik dua kali pada list view di form maka akan otomatis
ke koding, dengan tampilan sperti berikut :
26 | B l o g . k a n g f a n d . n e t © 2 0 1 4

dan setelah itu lakukan pengkodingan seperti berikut :
Private Sub ListView_SelectedIndexChanged(sender As Object, e As EventArgs) Handles
ListView1.SelectedIndexChanged
With ListView1.SelectedItems(0)
ctrl1 = .SubItems(0).Text
tid_prov.Text = .SubItems(0).Text
tnama_prov.Text = .SubItems(1).Text
End With
tid_prov.Enabled = False
btambah1.Enabled = False
bhapus1.Enabled = True
bupdate1.Enabled = True
End Sub
Selanjutnya tambahkan deklarasi varibel berikut , dipaling atas setelah Public Class Formnya
Dim ctrl1 As String
Langkah berikutnya ialah membuat proses penginputtan

yaitu dengan klik

double buttonnya di form, selanjutnya tuliskan koding seperti berikut :
Private Sub btambah_Click(sender As Object, e As EventArgs) Handles btambah1.Click
If (tid_prov.Text = "") Or (tnama_prov.Text = "") Then
MsgBox("Data Masih kurang, Lengkapi Data")
Exit Sub
27 | B l o g . k a n g f a n d . n e t © 2 0 1 4

End If
strsql = "insert into tbl_prov (id_prov, nama_prov) values ('" _
& tid_prov.Text & "','" & tnama_prov.Text & "')"
Dim sqlcmd As New SqlClient.SqlCommand
sqlcmd.CommandText = strsql
sqlcmd.Connection = sqlconn
On Error GoTo satu
sqlcmd.ExecuteNonQuery()
MsgBox("Berhasil diSimpan")
keuleh1()
berseh1()
Exit Sub
satu:
MsgBox("Kode Tidak Boleh Sama")
berseh1()
End Sub
Setelah proses pembuatan peinputan selanjutnya pembuatan tombol penghapusan, dengan

klik dua kali button hapus di form ,
Private Sub bhapus_Click(sender As Object, e As EventArgs) Handles bhapus1.Click
strsql = "delete from tbl_prov where id_prov = '" & ctrl1 & "'"
Dim sqlcmd As New SqlClient.SqlCommand
sqlcmd.CommandText = strsql
sqlcmd.Connection = sqlconn
On Error GoTo satu
sqlcmd.ExecuteNonQuery()
MsgBox("Berhasil Di Hapus")
keuleh1()
berseh1()
Exit Sub
satu:
MsgBox("Tidak Dapat Dihapus, Sedang Digunakan")

28 | B l o g . k a n g f a n d . n e t © 2 0 1 4

berseh1()
End Sub
Setelah tombol hapus, selanjutnya tombol reset untuk mereset form agar kosong dan kembali
menampilkan pemanggilan ulang list view dari database,
Private Sub breset_Click(sender As Object, e As EventArgs) Handles breset1.Click
berseh1()
keuleh1()
End Sub
Langkah selanjutnya kita akan membuat koding untuk tombol updatenya, yaitu sama dengan
langkah di atas dengan mengklik buttonnya dua kali,

berikut kodenya :

Private Sub bupdate_Click(sender As Object, e As EventArgs) Handles bupdate1.Click
strsql = "update tbl_prov set nama_prov ='" & tnama_prov.Text & "'" _
& "where id_prov = '" & ctrl1 & "'"
Dim sqlcmd As New SqlClient.SqlCommand
sqlcmd.CommandText = strsql
sqlcmd.Connection = sqlconn
sqlcmd.ExecuteNonQuery()
MsgBox("Berhasil DiUpdate")
keuleh1()
berseh1()
End Sub
Langkah berikutnya pembuatan untuk form pencarian, hal pertama adalah mengatur apa yang
akan kita cari, pertama klik combobox pilihan pencarian dan klik icon diatas lalu pilih edit
items, seperti berikut :

Tuliskan nama kolom yang akan kita cari, pada form provinsi ini, seperti berikut :

29 | B l o g . k a n g f a n d . n e t © 2 0 1 4

Setelah items dari combo box pilihan pencarian telah di isi, kita akan membuat koding untuk
pencarian , dengan double klik button cari dan tulis kode seperti berikut :

Private Sub bcari_Click(sender As Object, e As EventArgs) Handles bcari1.Click
strsql = "select * from tbl_prov where " & cpilihan1.SelectedItem & " LIKE '%" &
tpencarian1.Text & "%' "
sqlcmd.CommandText = strsql
sqlcmd.Connection = sqlconn
sqlda.SelectCommand = sqlcmd
sqlldr = sqlcmd.ExecuteReader()
ListView1.Items.Clear()
While (sqlldr.Read())
With ListView1.Items.Add(sqlldr("id_prov"))
.subitems.add(sqlldr("nama_prov"))
End With
End While
sqlldr.Close()
End Sub
C. Pembuatan Form Kabupaten
Proses ini bisa dibilang hampir sama dengan pembuatan form sebelumnya, tampilan
formnya pun hampir sama hanya saja dalam penamaannya yang berbeda . tammpilan
form seperti berikut :

30 | B l o g . k a n g f a n d . n e t © 2 0 1 4

Pada form kabupaten ini kita akan membuat :
1. 3 Group Box
2. 3 Text field
3. 3 Label
4. 4 Button
5. 1 Combo Box h
6. Dan 1 List view
Langkah selanjutnya rubahlah setiap nama dan text sesuai dengan form diatas dengan
nama sesuai dengan karakteristik anda. Setelah proses itu selesai, klik dua kali pada form
untuk memangil form load.

31 | B l o g . k a n g f a n d . n e t © 2 0 1 4

Selanjutnya lakukan pemanggilan modul koneksi dan fungsi keuleh dan berseh sama
seperti belumnya.
Private Sub frm_prov_Load(sender As Object, e As EventArgs) Handles MyBase.Load
koneksi.connect()
keuleh2()
berseh2()
End Sub
Selanjutnya kita melakukan pembuatan fungsi diatas, keuleh dan berseh. Seperti berikut
dibawah form load :
Sub keuleh2()
strsql = "select * from tbl_kab"
sqlcmd.CommandText = strsql
sqlcmd.Connection = sqlconn
sqlda.SelectCommand = sqlcmd
sqlldr = sqlcmd.ExecuteReader()
ListView2.Items.Clear()
While (sqlldr.Read())
With ListView2.Items.Add(sqlldr("id_kab"))
.subitems.add(sqlldr("nama_kab"))
End With
End While
sqlldr.Close()
End Sub
Sub berseh2()
tid_kab.Text = ""
tnama_kab.Text = ""
tid_kab.Enabled = True
btambah2.Enabled = True
bupdate2.Enabled = False
bhapus2.Enabled = False
End Sub

32 | B l o g . k a n g f a n d . n e t © 2 0 1 4

pada listview di form, klik dua kali dan pilih pada action SelectedIndexChanged, tulis
dengan koding berikut :

Private Sub ListView_SelectedIndexChanged(sender As Object, e As EventArgs) Handles
ListView2.SelectedIndexChanged
With ListView2.SelectedItems(0)
ctrl2 = .SubItems(0).Text
tid_kab.Text = .SubItems(0).Text
tnama_kab.Text = .SubItems(1).Text
End With
tid_kab.Enabled = False
btambah2.Enabled = False
bhapus2.Enabled = True
bupdate2.Enabled = True
End Sub
Selanjutnya buat pendeklarasian variabel sementara untuk menampung data yang di terima
dari listview
Dim ctrl2 As String
Langkah berikutnya melakuka proses button input update dan delete serta reset yang sama
seperti langkah sebelumnya yaitu dengan mengklik double pada buttonnya dan seperti
berikut :

Untuk koding penambahan :
Private Sub btambah_Click(sender As Object, e As EventArgs) Handles btambah2.Click
If (tid_kab.SelectedValue = "") Or (tnama_kab.Text = "") Then
MsgBox("Data Masih kurang, Lengkapi Data")
33 | B l o g . k a n g f a n d . n e t © 2 0 1 4

Exit Sub
End If
strsql = "insert into tbl_kab (id_kab, nama_kab) values ('" _
& tid_kab.SelectedValue & "','" & tnama_kab.Text & "')"
Dim sqlcmd As New SqlClient.SqlCommand
sqlcmd.CommandText = strsql
sqlcmd.Connection = sqlconn
On Error GoTo satu
sqlcmd.ExecuteNonQuery()
MsgBox("Berhasil diSimpan")
keuleh2()
berseh2()
Exit Sub
satu:
MsgBox("Kode Tidak Boleh Sama")
berseh2()
End Sub
Berikutnya Koding button hapus :
Private Sub bhapus_Click(sender As Object, e As EventArgs) Handles bhapus2.Click
strsql = "delete from tbl_kab where id_kab = '" & ctrl2 & "'"
Dim sqlcmd As New SqlClient.SqlCommand
sqlcmd.CommandText = strsql
sqlcmd.Connection = sqlconn
On Error GoTo satu
sqlcmd.ExecuteNonQuery()
MsgBox("Berhasil Di Hapus")
keuleh2()
berseh2()
Exit Sub
satu:
MsgBox("Tidak Dapat Dihapus, Sedang Digunakan")
berseh2()
End Sub
34 | B l o g . k a n g f a n d . n e t © 2 0 1 4

Berikut pada button reset :
Private Sub breset_Click(sender As Object, e As EventArgs) Handles breset2.Click
berseh2()
End Sub
Selanjutnya pada button Update :
Private Sub bupdate_Click(sender As Object, e As EventArgs) Handles bupdate2.Click
strsql = "update tbl_kab set nama_kab ='" & tnama_kab.Text & "'" _
& "where id_kab = '" & ctrl2 & "'"
Dim sqlcmd As New SqlClient.SqlCommand
sqlcmd.CommandText = strsql
sqlcmd.Connection = sqlconn
sqlcmd.ExecuteNonQuery()
MsgBox("Berhasil DiUpdate")
keuleh2()
berseh2()
End Sub
dan pada akhirnya di button pencarian :
Private Sub bcari_Click(sender As Object, e As EventArgs) Handles bcari2.Click
strsql = "select * from tbl_kab where " & cpilihan2.SelectedItem & " LIKE '%" &
tpencarian2.Text & "%' "
sqlcmd.CommandText = strsql
sqlcmd.Connection = sqlconn
sqlda.SelectCommand = sqlcmd
sqlldr = sqlcmd.ExecuteReader()
ListView2.Items.Clear()
While (sqlldr.Read())
With ListView2.Items.Add(sqlldr("id_kab"))
.subitems.add(sqlldr("nama_kab"))
End With
End While
sqlldr.Close()
End Sub
Setelah proses pada button pencarian jangan lupa untuk menambah items pada comboboxnya
sama seperti langkah sebelumnya yang itemsnya seperti berikut :
35 | B l o g . k a n g f a n d . n e t © 2 0 1 4

D. Pembuatan Form Tamu

Pada pembuatan form ini kita akan membuat aksi sama seperti sebelumnya, yang perlu di
persiapkan antaralain :
1. 3 Group Box
2. 7 Text Box
3. 10 Label
4. 4 Button
5. 1 Combo Box h
6. Dan 1 List view

36 | B l o g . k a n g f a n d . n e t © 2 0 1 4

Langkah selanjutnya, masuk ke form load dan lakukan pemanggilan koneksi dan
pemanggilan listview serta reset. Langkang pembuatan form ini sama dengan langkah –
langkah sebelumnya.
Pertama masuk ke koding dan deklarasikan sebuah varial penampung data Id tamu seperti
berikut :
Public Class frm_tamu
Dim ctrl As String
Selanjutnya pada form load panggil koneksi dan fungsi listview serta reset form seperti
berikut :
Private Sub frm_dtamu_Load(sender As Object, e As EventArgs) Handles MyBase.Load
koneksi.connect()
keuleh()
berseh()
End Sub
Sub keuleh()
strsql = "select * from tbl_tamu"
sqlcmd.CommandText = strsql
sqlcmd.Connection = sqlconn
sqlda.SelectCommand = sqlcmd
sqlldr = sqlcmd.ExecuteReader()
ListView.Items.Clear()
While (sqlldr.Read())
With ListView.Items.Add(sqlldr("id_tam"))
.subitems.add(sqlldr("no_ktp"))
.subitems.add(sqlldr("nama_tam"))
.subitems.add(sqlldr("jk"))
.subitems.add(sqlldr("alamat"))
.subitems.add(sqlldr("id_prov"))
.subitems.add(sqlldr("id_kab"))
.subitems.add(sqlldr("kode_pos"))
.subitems.add(sqlldr("email"))
37 | B l o g . k a n g f a n d . n e t © 2 0 1 4

.subitems.add(sqlldr("no_telp"))
End With
End While
sqlldr.Close()
End Sub
Sub berseh()
tid_tam.Text = ""
tno_ktp.Text = ""
tnama_tam.Text = ""
tjk.Text = ""
talamat.Text = ""
tid_prov.SelectedValue = ""
tid_kab.SelectedValue = ""
tkodepos.Text = ""
temail.Text = ""
tno_telp.Text = ""
tid_tam.Enabled = True
btambah.Enabled = True
bupdate.Enabled = False
bhapus.Enabled = False
keuleh()
End Sub

Selanjutnya membuat aksi dengan Klik 2 kali pada button tambah dan tulis koding berikut
untuk menginput data tamu :
Private Sub btambah_Click(sender As Object, e As EventArgs) Handles btambah.Click

38 | B l o g . k a n g f a n d . n e t © 2 0 1 4

If (tid_tam.Text = "") Or (tno_ktp.Text = "") Or (tnama_tam.Text = "") Or (tjk.Text = "")
Or (talamat.Text = "") Or (tid_prov.SelectedValue = "") Or (tid_kab.SelectedValue = "") Or
(tkodepos.Text = "") Or (temail.Text = "") Or (tno_telp.Text = "") Then
MsgBox("Data Masih kurang, Lengkapi Data!")
Exit Sub
End If
strsql = "Insert Into tbl_tamu (id_tam, no_ktp, nama_tam, jk, alamat, id_prov, id_kab,
kode_pos, email, no_telp) values ('" _
& tid_tam.Text & "','" & tno_ktp.Text & "','" & tnama_tam.Text & "','" & tjk.Text & "','"
& talamat.Text & "','" & tid_prov.SelectedValue & "','" & tid_kab.SelectedValue & "','" &
tkodepos.Text & "','" & temail.Text & "','" & tno_telp.Text & "')"
Dim sqlcmd As New SqlClient.SqlCommand
sqlcmd.CommandText = strsql
sqlcmd.Connection = sqlconn
On Error GoTo satu
sqlcmd.ExecuteNonQuery()
keuleh()
berseh()
Exit Sub
satu:
MsgBox("Kode Tidak Boleh Sama")
berseh()
End Sub
Setelah itu berikut untuk button updatenya , klik double pada button update di form tamu ,
seperti berikut :
Private Sub bupdate_Click(sender As Object, e As EventArgs) Handles bupdate.Click
strsql = "update tbl_tamu set no_ktp ='" & tno_ktp.Text & "'," _
& "nama_tam ='" & tnama_tam.Text & "'," _
& "jk ='" & tjk.Text & "'," _
& "alamat ='" & talamat.Text & "'," _
& "id_prov ='" & tid_prov.SelectedValue & "'," _
& "id_kab ='" & tid_kab.Text & "'," _
39 | B l o g . k a n g f a n d . n e t © 2 0 1 4

& "kode_pos ='" & tkodepos.Text & "'," _
& "email ='" & temail.Text & "'," _
& "no_telp ='" & tno_telp.Text & "'" _
& "where id_tam = '" & ctrl & "'"
Dim sqlcmd As New SqlClient.SqlCommand
sqlcmd.CommandText = strsql
sqlcmd.Connection = sqlconn
sqlcmd.ExecuteNonQuery()
MsgBox("Berhasil DiUpdate")
keuleh()
berseh()
End Sub
Pada langkah selanjutnya klik double pada listview di form, lalu pilih action selected Index
Changed

Koding seperti berikut :
Private Sub ListView_SelectedIndexChanged(sender As Object, e As EventArgs) Handles
ListView.SelectedIndexChanged
With ListView.SelectedItems(0)
ctrl = .SubItems(0).Text
tid_tam.Text = .SubItems(0).Text
tno_ktp.Text = .SubItems(1).Text
tnama_tam.Text = .SubItems(2).Text
tjk.Text = .SubItems(3).Text
talamat.Text = .SubItems(4).Text
tid_prov.SelectedValue = .SubItems(5).Text
tid_kab.Text = .SubItems(6).Text
tkodepos.Text = .SubItems(7).Text

40 | B l o g . k a n g f a n d . n e t © 2 0 1 4

temail.Text = .SubItems(8).Text
tno_telp.Text = .SubItems(9).Text
End With
tid_tam.Enabled = False
btambah.Enabled = False
bhapus.Enabled = True
bupdate.Enabled = True
End Sub
Setelah itu tambah kolom pada list view dan ubah listviewnya menjadi detail

Tambahkan kolom headernya, sesuikan dengan database pada textnya

41 | B l o g . k a n g f a n d . n e t © 2 0 1 4

Selanjtnya Klik double pada button hapus, dan berikut kodenya :
Private Sub bhapus_Click(sender As Object, e As EventArgs) Handles bhapus.Click
strsql = "delete from tbl_tamu where id_tam = '" & ctrl & "'"
Dim sqlcmd As New SqlClient.SqlCommand
sqlcmd.CommandText = strsql
sqlcmd.Connection = sqlconn
On Error GoTo satu
sqlcmd.ExecuteNonQuery()
MsgBox("Berhasil Di Hapus")
keuleh()
berseh()
Exit Sub
satu:
MsgBox("Data sedang digunakan")
berseh()
End Sub
Setelah button haspus, klik double pada button reset dan panggil pemanggilan fungsi sub
berseh dan keuleh.
Private Sub breset_Click(sender As Object, e As EventArgs) Handles breset.Click
berseh()
End Sub

Dan pada button cari tulis dengan kode berikut :
Private Sub bcari_Click(sender As Object, e As EventArgs) Handles bcari.Click

42 | B l o g . k a n g f a n d . n e t © 2 0 1 4

strsql = "select * from tbl_tamu where " & cpilihan.SelectedItem & " LIKE '%" &
tpencarian.Text & "%' "
sqlcmd.CommandText = strsql
sqlcmd.Connection = sqlconn
sqlda.SelectCommand = sqlcmd
sqlldr = sqlcmd.ExecuteReader()
ListView.Items.Clear()
While (sqlldr.Read())
With ListView.Items.Add(sqlldr("id_tam"))
.subitems.add(sqlldr("no_ktp"))
.subitems.add(sqlldr("nama_tam"))
.subitems.add(sqlldr("jk"))
.subitems.add(sqlldr("alamat"))
.subitems.add(sqlldr("id_prov"))
.subitems.add(sqlldr("id_kab"))
.subitems.add(sqlldr("kode_pos"))
.subitems.add(sqlldr("email"))
.subitems.add(sqlldr("no_telp"))
End With
End While
sqlldr.Close()
End Sub
Dan jangan lupa untuk menambahkan items pada combobox pencarian

Dengan data seperti sama dengan database, seperti di bawah ini :

43 | B l o g . k a n g f a n d . n e t © 2 0 1 4

E. Pembuatan Form Karyawan
Pada tahap ini kita akan membuat form karyawan yaitu untuk menginput data, filter,
edit dan delete data karyawan. Langkah cara pembuatannya hampir sama dengan yang sudah
kita bahas sebelumnya, tampilan formnya seperti berikut :

Pada pembuatan form ini kita akan membuat aksi sama seperti sebelumnya, yang perlu di
persiapkan antaralain :
1. 3 Group Box
2. 6 Text Box
3. 7 Label
4. 5 Button
44 | B l o g . k a n g f a n d . n e t © 2 0 1 4

5. 2 Combo Box
6. Dan 1 List bea
Langkah selanjutnya adalah dengan masuk ke bagian koding, dengan klik dua kali pada form
maka akan terbuka koding form Load, pada form Load tulis dengan kode berikut :
Private Sub frm_karyawan_Load(sender As Object, e As EventArgs) Handles
MyBase.Load
koneksi.connect()
keuleh()
berseh()
End Sub
Pada kode diatas merupakan pemanggilan dari sub prosedur bersih dan view list
view serta modul koneksi. Selanjutnya kita akan membuat sebuah sub prosedur
nya, berikut kodenya :
Sub keuleh()
strsql = "select * from tbl_karyawan"
sqlcmd.CommandText = strsql
sqlcmd.Connection = sqlconn
sqlda.SelectCommand = sqlcmd
sqlldr = sqlcmd.ExecuteReader()
ListView.Items.Clear()
While (sqlldr.Read())
With ListView.Items.Add(sqlldr("id_kar"))
.subitems.add(sqlldr("no_ktp"))
.subitems.add(sqlldr("nama_kar"))
.subitems.add(sqlldr("jk"))
.subitems.add(sqlldr("alamat"))
.subitems.add(sqlldr("email"))
.subitems.add(sqlldr("no_telp"))
End With
End While
sqlldr.Close()
End Sub
Untuk

kode

menampilkan

data

ke

listview

letakkan

di

bawah

form

load,

selanjutnya adalah sub bersih :
Sub berseh()
tid_kar.Text = ""
tno_ktp.Text = ""
tnama_kar.Text = ""
tjk.Text = ""
talamat.Text = ""
temail.Text = ""
tno_telp.Text = ""
tid_kar.Enabled = True
btambah.Enabled = True
bupdate.Enabled = False
bhapus.Enabled = False
End Sub

Letakkan kode diatas di bawah kode keuleh() diatas. Dan tahap berikutnya adalah
menambahkan Items pada combo box jenis kelamin yaitu :

45 | B l o g . k a n g f a n d . n e t © 2 0 1 4

Dan tambah Itemsnya

Setelah itu, pada list view kita akan menambah nama kolom ,yaitu dengan cara seperti
berikut:

Setelah menjadi “details”, isi pada kolom tersebur sesuikan dengan nama pada database pada
tabel karyawan sebelumnya :

46 | B l o g . k a n g f a n d . n e t © 2 0 1 4

Pada kolom rubah pada text saja dengan nama kolom yang akan dibuat, selanjutnya
melakukan penambahan dengan klik tobol Add, pada gambar diatas dan mengganti text pada
setingan propertiesnya.
Selanjutnya klik dua kali pada lisviewnya dan masukkan kode berikut :
Private Sub ListView_SelectedIndexChanged(sender As Object, e As
EventArgs) Handles ListView.SelectedIndexChanged
With ListView.SelectedItems(0)
ctrl = .SubItems(0).Text
tid_kar.Text = .SubItems(0).Text
tno_ktp.Text = .SubItems(1).Text
tnama_kar.Text = .SubItems(2).Text
tjk.Text = .SubItems(3).Text
talamat.Text = .SubItems(4).Text
temail.Text = .SubItems(5).Text
tno_telp.Text = .SubItems(6).Text
End With
tid_kar.Enabled = False
btambah.Enabled = False
bhapus.Enabled = True
bupdate.Enabled = True
End Sub
Selanjutnya adalah proses pembuatan aksi dan pencarian.

47 | B l o g . k a n g f a n d . n e t © 2 0 1 4

Pada Button “Tambah”, klik dua kali dan isi kode sebagai berikut :
Private Sub btambah_Click(sender As Object, e As EventArgs) Handles
btambah.Click
If (tid_kar.Text = "") Or (tno_ktp.Text = "") Or (tnama_kar.Text = "")
Or (tjk.Text = "") Or (talamat.Text = "") Or (temail.Text = "") Or
(tno_telp.Text = "") Then
MsgBox("Data Masih kurang, Lengkapi Data")
Exit Sub
End If
strsql = "insert into tbl_karyawan (id_kar, no_ktp, nama_kar, jk,
alamat, email, no_telp) values ('" _
& tid_kar.Text & "','" & tno_ktp.Text & "','" & tnama_kar.Text & "','"
& tjk.Text & "','" & talamat.Text & "','" & temail.Text & "','" &
tno_telp.Text & "')"
Dim sqlcmd As New SqlClient.SqlCommand
sqlcmd.CommandText = strsql
sqlcmd.Connection = sqlconn
On Error GoTo satu
sqlcmd.ExecuteNonQuery()
MsgBox("Berhasil diSimpan")
keuleh()
berseh()
Exit Sub
satu:

MsgBox("Kode Tidak Boleh Sama")
berseh()
End Sub

Selanjutnya pada tombol “update” dengan isi kode sebagai berikut :
Private Sub bupdate_Click(sender As Object, e As EventArgs) Handles
bupdate.Click
strsql = "update tbl_karyawan set no_ktp ='" & tno_ktp.Text & "'," _
& "nama_kar ='" & tnama_kar.Text & "'," _
& "jk ='" & tjk.Text & "'," _
& "alamat ='" & talamat.Text & "'," _
& "email ='" & temail.Text & "'," _
& "no_telp ='" & tno_telp.Text & "'" _
& "where id_kar = '" & ctrl & "'"
Dim sqlcmd As New SqlClient.SqlCommand
sqlcmd.CommandText = strsql
sqlcmd.Connection = sqlconn
sqlcmd.ExecuteNonQuery()
MsgBox("Berhasil DiUpdate")
keuleh()
berseh()
End Sub
Apabila sudah melanjutnkan ke tombol “hapus” isi kode sebagai berikut :
Private Sub bhapus_Click(sender As Object, e As EventArgs) Handles
bhapus.Click

48 | B l o g . k a n g f a n d . n e t © 2 0 1 4

satu:

strsql = "delete from tbl_karyawan where id_kar = '" & ctrl & "'"
Dim sqlcmd As New SqlClient.SqlCommand
sqlcmd.CommandText = strsql
sqlcmd.Connection = sqlconn
On Error GoTo satu
sqlcmd.ExecuteNonQuery()
MsgBox("Berhasil Di Hapus")
keuleh()
berseh()
Exit Sub

MsgBox("Maaf, Data Sedang Dipakai")
berseh()
End Sub

Sedangkan button “reset” sebagai berikut :
Private Sub breset_Click(sender As Object, e As EventArgs) Handles
breset.Click
berseh()
keuleh()
End Sub
Dan yang terakhir adalah dengan mengklik button cari pada grup pencarian,
seperti berikut :

Private Sub bcari_Click(sender As Object, e As EventArgs) Handles
bcari.Click
strsql = "select * from tbl_karyawan where " & cpilihan.SelectedItem &
" LIKE '%" & tpencarian.Text & "%' "
sqlcmd.CommandText = strsql
sqlcmd.Connection = sqlconn
sqlda.SelectCommand = sqlcmd
sqlldr = sqlcmd.ExecuteReader()
ListView.Items.Clear()
While (sqlldr.Read())
With ListView.Items.Add(sqlldr("id_kar"))
.subitems.add(sqlldr("no_ktp"))
.subitems.add(sqlldr("nama_kar"))
.subitems.add(sqlldr("jk"))
.subitems.add(sqlldr("alamat"))
.subitems.add(sqlldr("email"))
.subitems.add(sqlldr("no_telp"))
End With
End While
sqlldr.Close()
End Sub
Pada items combo box pencarian , isi items dengan kolom yang akan di cari.
Seperti berikut :

49 | B l o g . k a n g f a n d . n e t © 2 0 1 4

F. Pembuatan Form Tipe Kamar
Proses pembuatan form ini yaitu sana dengan proses dasar sebelumnya yaitu dengan
membuat beberapa komponen pada formnya, dan berikut tampilan formnya :

Pada pembuatan form ini komponen yang dibutuhkan adalah sebagai berikut :
1. Listview (1)
2. Textbox (2)
3. Combobox (1)
4. Button (5)
5. Groupbox (3)

50 | B l o g . k a n g f a n d . n e t © 2 0 1 4

Dari komponen diatas, langkah pernah buat terlebih dahulu sama tampilannya atau
sedikit berbeda namun tetap dengan komponen yang sama seperti tampilan form ditas.
Selanjutnya rubahlah nama design dari setiap komponen dengan nama ciri khas coding
anda sendiri, agar mudah dalam penulisan. Selanjutnya ikuti langkah dibawah ini dan
sesuikan coding dibawah dengan nama komponen anda sendiri.
Selanjutnya pada form, klik dua kali dan akan otomatis menuju ke form load. Pada
form load lakukan pemanggilan koneksi, dan tulis koding berikut :
koneksi.connect()
jangan pernah lupa untuk memanggil koneksi karena di semua form yang kita buat kita
akan menggunakan koneksi ke database yang telah kita buat sebelumnya.
a. Komponen listview
Pertama sekali adalah membuat kolom pada listview yang caranya sama seperti yang kita
lakukan sebelumnya dengan klik kanan pada listview dan pilih properties selanjutnya
ubah viewnya menjadi Details, seperti gambar dibawah :

Setelah itu pilih Edit Colomns

51 | B l o g . k a n g f a n d . n e t © 2 0 1 4

Pada ColumnHeader Collection Editor , tekan Add dan pada properties ubah nama
Text nya pada Misc dan Name pada Design sesuai dengan urutan kolom pada tabel yang
telah kita buat satu persatu, yang nantinya akan menjadi seperti berikut :

Selanjutnya klik dua kali pada listview seperti gambar diatas, dan lakukan penulisan
koding seperti dibawah ini untuk menampilkan data yang ada di dalam listview ke
komponen seperti textbox atau combobox dll, yang telah kita buat diatas. Berikut :
Private Sub ListView_SelectedIndexChanged(sender As Object, e As EventArgs)
Handles ListView1.SelectedIndexChanged
With ListView1.SelectedItems(0)
ctrl1 = .SubItems(0).Text
tkd_tipekam1.Text = .SubItems(0).Text
tnama_tipe1.Text = .SubItems(1).Text
End With
tkd_tipekam1.Enabled = False
btambah1.Enabled = False
bhapus1.Enabled = True
bupdate1.Enabled = True
52 | B l o g . k a n g f a n d . n e t © 2 0 1 4

End Sub
Pada koding diatas tulislah hanya yang di dalam listviewnya saja. Setelah itu jika ada
eror tulisan mereh, berarti nama komponen tidak sama dengan yang di form, maka dari
sesuaikan namanya dengan nama komponen yang ada di form, untuk melihat atau
mengubahnya klik kanan pada komponen lalu pilih Properties , seperti berikut :

Pada komponen inputan yang telah kita buat seperti tampilan design form diatas, seperti
berikut :

b. Pembuatan Sub Prosedur Pemanggilan Data dan Reset
Selanjutnya kita kembali ke koding, dengan klik dua kali pada form, dan kita akan
membuat sub prosedur untuk memanggil data dari database . tulis kode berikut di bawah
end sub form load , seperti berikut :
Sub keuleh1()
strsql = "select * from tbl_tipekam"
sqlcmd.CommandText = strsql
sqlcmd.Connection = sqlconn
sqlda.SelectCommand = sqlcmd
sqlldr = sqlcmd.ExecuteReader()
ListView1.Items.Clear()
While (sqlldr.Read())
With ListView1.Items.Add(sqlldr("kd_tipekam"))
.subitems.add(sqlldr("nama_tipe"))
End With
End While
sqlldr.Close()
End Sub

53 | B l o g . k a n g f a n d . n e t © 2 0 1 4

Setelah itu lakukan pemanggilan sub tersebut pada form load, dengan menulis nama sub
diatas seperti “keuleh()” pada form load, namanya sesuikan dengan koding diatas, harap
teliti dalam penulisan koding. Dengan begitu setiap kali program di jalankan akan
memanggil sub tersebut.
Selanjutkan nya adalah membuat sub reset bertujuan untuk membersihkan komponen dan
mengaktifkan enable komponen yang tidak aktif ketika kita klik data pada listview.
Koding dibawah juga jangan lupa untuk melakukan pemanggilanya di form load tepatnya
setelah sub keuleh() , dengan nama sub “berseh()” , sesuikan seperti koding sub dibawah.
Dan lakukan penulisan koding dibawah tepat di bawah end sub keuleh diatas , seperti
berikut :
Sub berseh1()
tkd_tipekam1.Text = ""
tnama_tipe1.Text = ""
tkd_tipekam1.Enabled = True
btambah1.Enabled = True
bupdate1.Enabled = False
bhapus1.Enabled = False
End Sub
c. Pembuatan Aksi Input
Pada aksi ini adalah melakukan pembuatan tombol input atau tambah yang terdapat pada
grupbox aksi yang terlihat seperti dibawah ini :

Langkahnya adalah lakukan klik dua kali pada button tambah dan lakukan penulisan kode
berikut untuk aksinya :
Private Sub btambah_Click(sender As Object, e As EventArgs) Handles btambah1.Click
If (tkd_tipekam1.Text = "") Or (tnama_tipe1.Text = "") Then
MsgBox("Data Masih kurang, Lengkapi Data")
Exit Sub
End If
strsql = "insert into tbl_tipekam (kd_tipekam, nama_tipe) values ('" _

54 | B l o g . k a n g f a n d . n e t © 2 0 1 4

& tkd_tipekam1.Text & "','" & tnama_tipe1.Text & "')"
Dim sqlcmd As New SqlClient.SqlCommand
sqlcmd.CommandText = strsql
sqlcmd.Connection = sqlconn
On Error GoTo satu
sqlcmd.ExecuteNonQuery()
MsgBox("Berhasil diSimpan")
keuleh1()
berseh1()
Exit Sub
satu:
MsgBox("Kode Tidak Boleh Sama")
berseh1()
End Sub
d. Pembuatan Aksi Hapus
Pada aksi ini adalah melakukan pembuatan tombol hapus, yang akan menghapus data
pada database secara permanen yang terdapat pada grupbox aksi yang terlihat seperti
dibawah ini :

Langkahnya adalah lakukan klik dua kali pada button hapus dan lakukan penulisan kode
berikut untuk aksinya :
Private Sub bhapus_Click(sender As Object, e As EventArgs) Handles bhapus1.Click
strsql = "delete from tbl_tipekam where kd_tipekam = '" & ctrl1 & "'"
Dim sqlcmd As New SqlClient.SqlCommand
sqlcmd.CommandText = strsql
sqlcmd.Connection = sqlconn
sqlcmd.ExecuteNonQuery()
MsgBox("Berhasil Di Hapus")
keuleh1()

55 | B l o g . k a n g f a n d . n e t © 2 0 1 4

berseh1()
End Sub
e. Pembuatan Aksi Reset Form
Pada aksi ini adalah melakukan pembuatan tombol reset, yang akan membersihkan form
yang telah besisi data atau mengaktifkan tombol tambah ketika data telah di klik. pada
grupbox aksi ini yang terlihat seperti berikut :

Langkahnya adalah lakukan klik dua kali pada button Reset dan lakukan penulisan kode
berikut untuk aksinya :
Private Sub breset_Click(sender As Object, e As EventArgs) Handles breset1.Click
berseh1()
keuleh1()
End Sub
f. Pembuatan Aksi Update
Pada aksi ini adalah melakukan pembuatan tombol update, yang akan mengedit data yang
ada didatabase dari data yang telah diinput di pada grupbox aksi yang terlihat seperti
dibawah ini :

Langkahnya adalah lakukan klik dua kali pada button update dan lakukan penulisan kode
berikut untuk aksinya :