Anda di halaman 1dari 59

TUGAS AKHIR SEMESTER

SISTEM TESTING DAN IMPLEMENTASI


SISTEM INFORMASI RESERVASI HOTEL BOROBUDUR JAKARTA
BERBASIS VISUAL STUDIO

DISUSUN OLEH:
Kelompok 1
1. ASKIRATUL MUTTAZI (201220529)
2. ANDI NUR SAFIRA TRI KARTINI (201220524)
3. ANDI RADIAH ADHA ARSYAD (201220525)
4. AINUL AFNI (201220521)
5. PUTRI YASMIN YAKUB (201210515)

UNIVERSITAS SEMBILANBELAS NOVEMBER KOLAKA


FAKULTAS TEKNOLOGI INFORMASI
PROGRAM STUDI SISTEM INFORMASI

Sistem Informasi Hotel Reservasi Borobudur Jakarta I


DAFTAR ISI
HALAMAN JUDUL ...................................................................................... i
DAFTAR ISI................................................................................................... ii
LATAR BELAKANG .................................................................................... 3
TAMPILAN MENU PROGRAM................................................................. 4
1.1 Menu Login ............................................................................................... 4
1.2 Menu Utama ..............................................................................................
1.3 Menu Check In – Out ................................................................................
1.4 Menu Room Service..................................................................................
1.5 Menu Kategori ..........................................................................................
1.6 Menu Data .................................................................................................
1.7 Menu Laporan ...........................................................................................

SUMMERY..................................................................................................... 59

Sistem Informasi Hotel Reservasi Borobudur Jakarta II


LATAR BELAKANG
Perkembangan teknologi pada saat ini telah mengalami kemajuan yang
signifikan. Seiring dengan hal tersebut, manusia sebagai pemakai teknologi
tanpa lelah terus memperbaiki dan memperbaharui teknologi agar sesuai dengan
apa yang diharapkan, yaitu untuk mempermudah aktifitas manusia itu sendiri.
Teknologi telah dapat menembus batas-batas ruang dan waktu. Salah satu
komponen industri pariwisata yang besar peranannya adalah usaha bidang jasa
pehotelan. Dilihat dari fungsi utamanya, produk utama yang dijual oleh usaha
perhotelan adalah jasa penginapan. Sejalan dengan perkembangan tersebut maka
kalau sebelumnya produk atau jasa utama sebuah hotel yang menjadi kebutuhan
utama wisatawan adalah kamar atau penginapan sekarang sudah mengalami
perkembangan.
Konsumen mengharapkan sesuatu yang bukan hanya sekedar kamar
menginap, namun mereka lebih mengharapkan hal lain seperti pelayanan,
kondisi lingkungan yang menyenangkan, sopan santun, dan rasa hormat dari
seluruh karyawannya. Kualitas pelayanan sangat berpengaruh bagi kesuksesan
sebuah perusahaan yang bergerak dibidang jasa untuk mendukung pelayanan
yang ditawarkan, untuk memberikan pelayanan yang baik kepada pelanggan.
Hotel Borobudur adalah salah satu jenis hotel yang ada di Jakarta dan
dilihat dari tingkat huniannya, hotel scarlet termasuk hotel yang memiliki
tingkat hunian yang cukup tinggi. Hotel Borobudur memiliki suatu sistem
informasi yang kurang mendukung tingkat hunian yang ada. Disamping itu juga,
karyawan hotel sering mengalami kesulitan dalam mencari data yang sudah
diolah dikarenakan data masih berupa catatan dalam buku besar. Faktor-faktor
inilah yang menyebabkan penyajian informasi dihotel Borobudur terhambat dan
tidak tepat waktu.
Selain itu pencarian data mengenai kamar yang terisi maupun kosong
juga masih menggunakan dokumen terpisah antara proses check-in dan check-
out sehingga membuat proses pencarian data tamu menjadi lama. Dengan
system pemesanan kamar yang terkomputerisasi ini memungkinkan bagi hotel
scarlet untuk menggunakan teknologi computer sebagai alat melakukan proses
pencatatan data tamu dan pencarian data kamar.
Perusahaan yang bergerak dalam bidang jasa seperti hotel Borobudur
pada operasional kerjanya memiliki cukup banyak masalah yang dijumpai,
seperti pada bagian Receptionist mengalami kesulitan dalam proses pemesanan
kamar sampai pada pembuatan laporan karena masih dilakukan secara tulisan
tangan dan tidak menyajikan info yang dapat diakses langsung oleh manajer.
Secara terintegrasi dan terkomputerisasi dengan baik sehingga memudahkan
dalam penyajian formasi hotel dan pemesanan kamar hotel yang dapat diakses
oleh pengunjung dan bagian manajemen hotel.

Sistem Informasi Hotel Reservasi Borobudur Jakarta 3


Tampilan login

SISTEM INFORMASI MANAJEMENT

HOTEL

Username

Password

Login Sebagai

close login

Syntaks Login

1 Imports System.Data.Odbc
Imports MySql.Data.MySqlClient

Public Class form_login

' fungsi yang merupakan tempat menghapus inputan yang sebelumnya


Sub kosong()
input_username.Clear()
input_pass.Clear()

End Sub

Private Sub btnLogin_Click(sender As Object, e As EventArgs) Handles


2 btnLogin.Click

If cb_akses.Text = "FRONT OFFICE" Then

Call koneksi()
Try
Dim selectDB As String
selectDB = "select * from user where username='" &
input_username.Text & "' and password='" & input_pass.Text & "'"
cmd = New MySqlCommand(selectDB, conn)
dr = cmd.ExecuteReader
dr.Read()

Sistem Informasi Hotel Reservasi Borobudur Jakarta 4


If dr.HasRows Then

MessageBox.Show("Anda berhasil login")


Me.Hide()
5 menu_utama.Show()

Else
4 MessageBox.Show("Username atau password salah")
End If

3 Catch ex As Exception

End Try

End If

End Sub

Private Sub btn_close_Click(sender As Object, e As EventArgs) Handles


btn_close.Click
End
6
End Sub
End Class

Sistem Informasi Hotel Reservasi Borobudur Jakarta 5


Flowchart Menu Login

Mulai

- Username
-Password
-Login Sebagai

Z
-Login
-Close

? Login MU

Close

Sistem Informasi Hotel Reservasi Borobudur Jakarta 6


Flowgraph menu login

1
A

2
B

3
C
F

D
4 5
E

Sistem Informasi Hotel Reservasi Borobudur Jakarta 7


Rumus login

V(6) = (E-N) + 2
=(6-6) +2
=2
V(6) = P+1
=1+1
=2

Path
Path 1 = 1,2,3,4,5,3
Path 2 = 1,2,3,4,6
Matrix login

P=1

P = P+1

P = 1+1

Sistem Informasi Hotel Reservasi Borobudur Jakarta 8


Menu utama

Sistem Informasi Hotel Reservasi Borobudur Jakarta 9


Syntaks Menu Utama
Public Class menu_utama

' fungsi menyembunyikan panel-panel yang berupa sub menu


Sub pnl_sub_hide()
' mengubah warna button menu utama
btn_dashboard.BackColor = Color.Transparent
End Sub
1 Private Sub menu_utama_Load(sender As Object, e As EventArgs) Handles
MyBase.Load
Call pnl_sub_hide()
' memanggil control dashboard
Dim menu_dashboard As control_dashboard = New control_dashboard
pnl_container.Controls.Clear()
pnl_container.Controls.Add(menu_dashboard)
End Sub

Private Sub btn_dashboard_Click(sender As Object, e As EventArgs)


Handlesbtn_dashboard.Click
Call pnl_sub_hide()
' memanggil control menu satu
4 Dim menu1 As control_menu_satu = New control_menu_satu
pnl_container.Controls.Clear()
pnl_container.Controls.Add(menu1)

End Sub

Private Sub btn_logout_Click(sender As Object, e As EventArgs) Handles


btn_logout.Click
13 Me.Close()
form_login.kosong()
form_login.Show()
End Sub

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles


Button1.Click
6 Dim menu2 As control_menu_dua = New control_menu_dua
2
Me.pnl_container.Controls.Clear()
Me.pnl_container.Controls.Add(menu2)
End Sub

Private Sub Button2_Click(sender As Object, e As EventArgs) Handles


Button2.Click
Dim menu3 As control_menu_tiga = New control_menu_tiga
8
Me.pnl_container.Controls.Clear()
Me.pnl_container.Controls.Add(menu3)
End Sub

Private Sub Button3_Click(sender As Object, e As EventArgs) Handles


Button3.Click
Dim menu4 As control_menu_empat = New control_menu_empat
10
Me.pnl_container.Controls.Clear()
Me.pnl_container.Controls.Add(menu4) End Sub

Sistem Informasi Hotel Reservasi Borobudur Jakarta 10


Private Sub Button4_Click(sender As Object, e As EventArgs) Handles
Button4.Click
Dim menu5 As control_menu_lima = New control_menu_lima
12
Me.pnl_container.Controls.Clear()
Me.pnl_container.Controls.Add(menu5)
End Sub

Sistem Informasi Hotel Reservasi Borobudur Jakarta 11


Flowchart Menu Utama

Menu Utama

1.Chekin/Out
2.Room Service
3.Kategori
X
4.Data
5.Laporan
6.Log Out

1 Check in/Out A

2 Room Service B

3 Kategori C

4 Data D

Laporan E
5

Log Out

Sistem Informasi Hotel Reservasi Borobudur Jakarta 12


Flowgraph Menu Utama

E
B

D
K
F

I N

J
Q
L

14

Rumus Menu Utama

V(G) = (E-N) + 2

= (17-13) + 2

=6

V(G) = P+1

= 5+1

Sistem Informasi Hotel Reservasi Borobudur Jakarta 13


=6

Path:
Path 1 : 1,2,3,4,2
Path 2 : 1,2,3,5,6,2
Path 3 : 1,2,3,5,7,8,2
Path 4 : 1,2,3,5,7,9,10,2
Path 5 : 1,2,3,5,7,9,11,12,2
Path 6 : 1,2,3,5,7,9,11,13

Matrix Menu Utama

Sistem Informasi Hotel Reservasi Borobudur Jakarta 14


Menu chek in / out

Syntaks menu chek in / out


Imports System.Data.Odbc
Imports MySql.Data.MySqlClient

Public Class control_check_in

' fungsi untuk menampilkan data kamar yang tersedia


Sub tampilkan2()
Call koneksi()
Try
Dim cek As String
2 cek = "select * from kamar, kategori_kamar where
kamar.kamar_kategori=kategori_kamar.kategori_id_kamar and kamar.kamar_status='TERSEDIA'"
cmd = New MySqlCommand(cek, conn)
dr = cmd.ExecuteReader
3 dr.Read()

If dr.HasRows Then
Try
4 Call koneksi()
Dim tampilkan As String
tampilkan = "select * from kamar, kategori_kamar where
kamar.kamar_kategori=kategori_kamar.kategori_id_kamar and kamar.kamar_status='TERSEDIA'
order by kamar_id desc"
5 cmd = New MySqlCommand(tampilkan, conn)
dr = cmd.ExecuteReader

Do While dr.Read()

Dim list_kamar As control_list_kamar = New control_list_kamar


list_kamar.Dock = DockStyle.Left

list_kamar.lbl_kamar.Text = dr.Item("kamar_no")
list_kamar.lbl_tipe_kamar.Text = dr.Item("kategori_nama_kamar")
list_kamar.btn_pilih.OnHoverForeColor = Color.White

pnl_body.Controls.Add(list_kamar)
list_kamar.pilihan = "1"
Loop

Catch ex As Exception
MessageBox.Show("Gagal2")

Sistem Informasi Hotel Reservasi Borobudur Jakarta 15


End Try

Else ' akan menampilkan pesan bahwa tidak ada kamar yang terpakai

Panel5.Height = 213
GunaLabel1.Hide()

Dim pesan_kosong As control_pesan_kosong = New control_pesan_kosong


6
pnl_body.Controls.Clear()
7 pesan_kosong.lbl_keterangan.Text = "Untuk sementara, tidak ada kamar
yang tersedia"
pnl_body.Controls.Add(pesan_kosong)

End If

Catch ex As Exception
MessageBox.Show("Gagal")
End Try
End Sub

' fungsi utama pada user control


' atau fungsi yang pertama kali di eksekusi
Private Sub control_check_in_Load(sender As Object, e As EventArgs) Handles
MyBase.Load
8 Call tampilkan2()
Call tampilkan_tipeKamar()
End Sub

9 ' fungsi untuk tampilkan tipe kamar


Sub tampilkan_tipeKamar()

Dim temp As String


10 Dim urutan As Integer

temp = ""
urutan = 0
Call koneksi()
Dim tampilkan As String
tampilkan = "select * from kategori_kamar"
cmd = New MySqlCommand(tampilkan, conn)
dr = cmd.ExecuteReader

Do While dr.Read()

urutan = urutan + 1

cb_tipe_kamar.Items.Add(dr.Item("kategori_nama_kamar"))
If urutan = 1 Then
11 temp = dr.Item("kategori_nama_kamar")
End If

Loop

cb_tipe_kamar.SelectedItem = temp
End Sub
12
' fungsi pada combobox
' fungsinya yaitu, akan menampilkan data kamar tersedia berdasarkan tipe kamar
(event selectted item)
Private Sub cb_tipe_kamar_SelectedIndexChanged(sender As Object, e As EventArgs)
Handles cb_tipe_kamar.SelectedIndexChanged

pnl_body2.Controls.Clear()

Call koneksi()
Try
Dim cek As String
cek = "select * from kamar, kategori_kamar where
kamar.kamar_kategori=kategori_kamar.kategori_id_kamar and kamar_status='TERSEDIA' and
kategori_nama_kamar='" & cb_tipe_kamar.Text & "'"
cmd = New MySqlCommand(cek, conn)

Sistem Informasi Hotel Reservasi Borobudur Jakarta 16


dr = cmd.ExecuteReader
dr.Read()

If dr.HasRows Then
Try
Call koneksi()
Dim tampilkan As String
tampilkan = "select * from kamar, kategori_kamar where
13 kamar.kamar_kategori=kategori_kamar.kategori_id_kamar and kategori_nama_kamar='" &
cb_tipe_kamar.Text & "' and kamar.kamar_status='TERSEDIA' order by kamar_id desc"
cmd = New MySqlCommand(tampilkan, conn)
dr = cmd.ExecuteReader

Do While dr.Read()

14 Dim list_kamar As control_list_kamar = New control_list_kamar


list_kamar.Dock = DockStyle.Left

list_kamar.lbl_kamar.Text = dr.Item("kamar_no")
list_kamar.lbl_tipe_kamar.Text = dr.Item("kategori_nama_kamar")
list_kamar.btn_pilih.OnHoverForeColor = Color.White

pnl_body2.Controls.Add(list_kamar)
list_kamar.pilihan = "1"
Loop

Catch ex As Exception
MessageBox.Show("Gagal2")
End Try
15
Else ' akan menampilkan pesan bahwa tidak ada kamar yang terpakai

Dim pesan_kosong As control_pesan_kosong = New control_pesan_kosong

pnl_body2.Controls.Clear()

pesan_kosong.lbl_keterangan.Text = "Untuk sementara, tidak ada kamar


yang tersedia"
pnl_body2.Controls.Add(pesan_kosong)

End If

Catch ex As Exception
MessageBox.Show("Gagal")
End Try

End Sub

Private Sub GunaButton3_Click(sender As Object, e As EventArgs) Handles


GunaButton3.Click
Dim menu1 As control_menu_satu = New control_menu_satu

menu_utama.pnl_container.Controls.Clear()
menu_utama.pnl_container.Controls.Add(menu1)
End Sub

Sistem Informasi Hotel Reservasi Borobudur Jakarta 17


Flowchart menu chek in / out
A

-Check In
-Check Out
-Kembali

-Pilih Kamar
? Check In
-Kembali

-Nama Tamu
-Maks. Tamu/Kamar
? Y Pilih Kamar -Tgl/Waktu check in
-Tgl/Waktu check out
-Jumlah Deposit

T
-Refresh
Kembali -Check in
-Kembali

? Refresh

? Check in Berhasil

Kembali

-Pilih Kamar
? Check out
-Kembali

-Nama Tamu
-Tgl/Waktu check in
? Pilih Kamar -Tgl/Waktu check out
-Maks. Tamu/Kamar
-Rincian Tagihan

-Check out
-Batal

? Check out

? Yes Berhasil

No
Batal

Kembali

Kembali

Sistem Informasi Hotel Reservasi Borobudur Jakarta 18


Flowgraph chek in / out

1
A

2
B
C E
3 4 5
F
G
6 7 I
8
H J

9 N
R
16 K
D
S
10 L
11
T
M
O Q
12 13 14
P

15

U W
17 18 19
X
Y AA
20 21 22
AB

23
AC
AD
24 25
AF
AG AI
26 27 28
AE
AH
AK
32 29
AL
30
AM
AN 31

33

Sistem Informasi Hotel Reservasi Borobudur Jakarta 19


Rumus Chek in / out

V(6) = (E-14) + 2
=(40-33) + 2
=9
V(6) = P+1
= 8+1
=9

Path :
Path 1 : 1,2,3,4,5,6,7,8,9,10,11,8
Path 2 : 1,2,3,4,5,6,7,8,9,10,12,13,14,5
Path 3 : 1,2,3,4,5,6,7,8,9,10,12,15,5
Path 4 : 1,2,3,4,5,6,
Path 5 : 1,2,3,17,18,19,20,21,22,23,24,25,26,27,28,19
Path 6 : 1,2,3,17,18,19,20,21,22,23,24,25,26,29,19
Path 7: 1,2,3,17,18,19,20,21,22,23,24,30,19
Path 8 : 1,2,3,17,18,19,20,31,2
Path 9 : 1,2,3,17,32,33

Matrix menu chek in / out

Sistem Informasi Hotel Reservasi Borobudur Jakarta 20


Menu Room Service

Syntaks Room Service


Imports System.Data.Odbc
1 Imports MySql.Data.MySqlClient

Public Class control_cleaning_room

' fungsi untuk menampilkan data kamar yang kotor


Sub tampilkan2()
Call koneksi()
Try
Dim cek As String
cek = "select * from kamar, kategori_kamar where
kamar.kamar_kategori=kategori_kamar.kategori_id_kamar and kamar.kamar_status='KOTOR'"
2 cmd = New MySqlCommand(cek, conn)
dr = cmd.ExecuteReader
dr.Read()

If dr.HasRows Then
Try
Call koneksi()
Dim tampilkan As String
tampilkan = "select * from kamar, kategori_kamar where
kamar.kamar_kategori=kategori_kamar.kategori_id_kamar and kamar.kamar_status='KOTOR'
order by kamar_id desc"
3 cmd = New MySqlCommand(tampilkan, conn)
dr = cmd.ExecuteReader

Do While dr.Read()

Dim list_kamar As control_list_kamar = New control_list_kamar


list_kamar.Dock = DockStyle.Left

list_kamar.lbl_kamar.Text = dr.Item("kamar_no")
list_kamar.lbl_tipe_kamar.Text = dr.Item("kategori_nama_kamar")

' untuk mengubah warna berdasarkan status kamar


list_kamar.pnl_kamar.BackColor = Color.Orange
list_kamar.btn_pilih.BaseColor = Color.DarkOrange
list_kamar.btn_pilih.OnHoverBaseColor = Color.DarkOrange
list_kamar.btn_pilih.OnHoverForeColor = Color.White

Sistem Informasi Hotel Reservasi Borobudur Jakarta 21


pnl_body.Controls.Add(list_kamar)
list_kamar.pilihan = "3"
Loop

3 Catch ex As Exception
MessageBox.Show("Gagal2")
End Try

Else ' akan menampilkan pesan bahwa tidak ada kamar yang kotor

Panel5.Height = 213
GunaLabel1.Hide()

Dim pesan_kosong As control_pesan_kosong = New control_pesan_kosong

4 pnl_body.Controls.Clear()

pesan_kosong.lbl_keterangan.Text = "Untuk sementara, tidak ada kamar


5 yang kotor"
pnl_body.Controls.Add(pesan_kosong)

End If

Catch ex As Exception
MessageBox.Show("Gagal")
End Try
End Sub

Private Sub control_cleaning_room_Load(sender As Object, e As EventArgs) Handles


MyBase.Load

Call tampilkan2()
6 Call tampilkan_tipeKamar()

End Sub

' fungsi untuk tampilkan tipe kamar


Sub tampilkan_tipeKamar()

Dim temp As String


Dim urutan As Integer

temp = ""
urutan = 0
Call koneksi()
7 Dim tampilkan As String
9 8 tampilkan = "select * from kategori_kamar"
cmd = New MySqlCommand(tampilkan, conn)
dr = cmd.ExecuteReader

Do While dr.Read()

urutan = urutan + 1

cb_tipe_kamar.Items.Add(dr.Item("kategori_nama_kamar"))
If urutan = 1 Then
temp = dr.Item("kategori_nama_kamar")
End If

Loop

cb_tipe_kamar.SelectedItem = temp
End Sub

' function untuk menampilkan data kamar yang kotor berdasarkan tipe kamar
Private Sub cb_tipe_kamar_SelectedIndexChanged(sender As Object, e As EventArgs)
Handles cb_tipe_kamar.SelectedIndexChanged

pnl_body2.Controls.Clear()
9 Call koneksi()
Try
Dim cek As String

Sistem Informasi Hotel Reservasi Borobudur Jakarta 22


cek = "select * from kamar, kategori_kamar where
kamar.kamar_kategori=kategori_kamar.kategori_id_kamar and kamar_status='KOTOR' and
kategori_nama_kamar='" & cb_tipe_kamar.Text & "'"
cmd = New MySqlCommand(cek, conn)
dr = cmd.ExecuteReader
dr.Read()

If dr.HasRows Then

Call koneksi()
Dim tampilkan As String
tampilkan = "select * from kamar, kategori_kamar where
kamar.kamar_kategori=kategori_kamar.kategori_id_kamar and kategori_nama_kamar='" &
cb_tipe_kamar.Text & "' and kamar.kamar_status='KOTOR' order by kamar_id desc"
cmd = New MySqlCommand(tampilkan, conn)
dr = cmd.ExecuteReader

Do While dr.Read()

Dim list_kamar As control_list_kamar = New control_list_kamar


list_kamar.Dock = DockStyle.Left

list_kamar.lbl_kamar.Text = dr.Item("kamar_no")
list_kamar.lbl_tipe_kamar.Text = dr.Item("kategori_nama_kamar")

' untuk mengubah warna berdasarkan status kamar


list_kamar.pnl_kamar.BackColor = Color.Orange
10 list_kamar.btn_pilih.BaseColor = Color.DarkOrange
list_kamar.btn_pilih.OnHoverBaseColor = Color.DarkOrange
list_kamar.btn_pilih.OnHoverForeColor = Color.White

pnl_body2.Controls.Add(list_kamar)
list_kamar.pilihan = "3"
Loop

Else ' akan menampilkan pesan bahwa tidak ada kamar yang kotor

Dim pesan_kosong As control_pesan_kosong = New control_pesan_kosong

pnl_body2.Controls.Clear()

pesan_kosong.lbl_keterangan.Text = "Untuk sementara, tidak ada kamar


yang kotor"
pnl_body2.Controls.Add(pesan_kosong)

End If

Catch ex As Exception
MessageBox.Show("Gagal")
End Try

End Sub

Private Sub GunaButton1_Click(sender As Object, e As EventArgs) Handles


GunaButton1.Click
Dim menu_dua As control_menu_dua = New control_menu_dua

11 menu_utama.pnl_container.Controls.Clear()
menu_utama.pnl_container.Controls.Add(menu_dua)
End Sub
End Class

Sistem Informasi Hotel Reservasi Borobudur Jakarta 23


Flowchart Room Service

Clening Room
Kembali

Y Pilih Kamar
? Clening Room
Kembali

T
No. Kamar
Y Tipe Kamar
Kembali X ? Pilih Kamar
Maks. Tamu
T Status Kamar

Kembali

Update Kamar
Kembali

Y
? Update Kamar Berhasil

Kembali

Sistem Informasi Hotel Reservasi Borobudur Jakarta 24


Flowgraph Room Service

1
A

2
B

C E

R1 3 4 5
D
F

15 G I
6 7 8

R3
J

16 9

R2
H K

L N O

10 11 12
R4

13 P

14 Q

Sistem Informasi Hotel Reservasi Borobudur Jakarta 25


Rumus Room Service
V(6) = (E-N) + 2
=(18-16) + 2
=4

V(6) = P+1
= 3+1
=4
Path
Path 1 = 1,2,3,4,5,6,7,8,9,10,11,12,9
Path 2 = 1,2,3,4,5,6,7,8,9,10,13,5
Path 3 = 1,2,3,4,5,6,14,2
Path 4 = 1,2,3,15,16

Matrikx room service

Sistem Informasi Hotel Reservasi Borobudur Jakarta 26


Kategori

Menu Kategori

Sistem Informasi Hotel Reservasi Borobudur Jakarta 27


Syntax kategori

Imports System.Data.Odbc
1 Imports MySql.Data.MySqlClient

Public Class control_kategori_edit_kamar


Public kode_tipe_kamar As String

Private Sub btn_batal_Click(sender As Object, e As EventArgs) Handles btn_batal.Click


Dim menu_kategori_kamar2 As control_kategori_kamar2 = New
3 2 control_kategori_kamar2

menu_utama.pnl_container.Controls.Clear()
menu_utama.pnl_container.Controls.Add(menu_kategori_kamar2)
End Sub

' function untuk membersihkan data pada inputan


Sub kosong()

inputTipe_kamar.Clear()
inputHarga_kamar.Clear()
4 input_keterangan.Clear()
5
inputTipe_kamar.Focus()

End Sub

Private Sub btn_tambah_Click(sender As Object, e As EventArgs) Handles


btn_tambah.Click

If inputTipe_kamar.Text = "" Or inputHarga_kamar.Text = "" Or input_keterangan.Text =


"" Then
6 MessageBox.Show("Harap diisi semua dulu..!")
Call kosong()

Else

Try
7
Call koneksi()
Dim cek As String
cek = "select * from kategori_kamar where kategori_nama_kamar='" &
kode_tipe_kamar & "'"
cmd = New MySqlCommand(cek, conn)
dr = cmd.ExecuteReader
dr.Read()

If dr.HasRows Then
8 Call koneksi()
Dim update As String
update = "update kategori_kamar set kategori_nama_kamar='" &
inputTipe_kamar.Text & "' ,kategori_harga_kamar='" & inputHarga_kamar.Text & "'
,kategori_keterangan_kamar='" & input_keterangan.Text & "' where kategori_id_kamar='" &
dr.Item("kategori_id_kamar") & "'"
cmd = New MySqlCommand(update, conn)
cmd.ExecuteNonQuery()

Call kosong()
MessageBox.Show("Telah berhasil diubah")
Dim menu_kategori_kamar2 As control_kategori_kamar2 = New
control_kategori_kamar2

menu_utama.pnl_container.Controls.Clear()
menu_utama.pnl_container.Controls.Add(menu_kategori_kamar2)

Else
MessageBox.Show("Gagal diubah")
Call kosong()

End If

Sistem Informasi Hotel Reservasi Borobudur Jakarta 28


Catch ex As Exception
End Try
End If
End SubEnd Class

Sistem Informasi Hotel Reservasi Borobudur Jakarta 29


Flowchart kategori
C

-Kategori kamar
-Kembali
-Tambah Kamar
-Cari
?
Y Kategori
-Edit
kamar
-Hapus
T -Kembali

Kembali
-Nama/Tipe Kamar
?
Y Tambah Kamar
-Harga kamar/
malam
-Keterangan
X

T ?
Y Tambah kamar Berhasil

T
Batal

? Cari

Y -Nama/Tipe Kamar
-Harga kamar/
? Edit
malam
-Keterangan

-Edit kamar
-Batal

Y
T
? Edit kamar Berhasil

Batal

? Hapus

Kembali

Sistem Informasi Hotel Reservasi Borobudur Jakarta 30


Flowgraph kategori

C E

R1 3 4 5

F
D

G
I

6 7 8
26 R2

K M

9 10 11
27 H

L
R3

12 O

R4

13 14 R

S
U
15 16 17 R5

18
AA
T
W

X Z

19 20 21

Y
R6

22 AB

R7

AC AE

23 24

AD R8

25
AF

Sistem Informasi Hotel Reservasi Borobudur Jakarta 31


Rumus Kategori
V(6) = ( E-N) + 2

= (33-27) + 2

=8

V(6) = P+1

= 7+1

=8

Path:
Path 1 = 1,2,3,4,5,6,7,8,9,10,11,5
Path 2 = 1,2,3,4,5,6,7,8,9,12,5
Path 3 = 1,2,3,4,5,6,13,14,5
Path 4=1,2,3,4,5,6,13,15,16,17,18,19,20,21,5
Path 5 = 1,2,3,4,5,6,13,15,16,17,18,19,22,5
Path 6 = 1,2,3,4,5,6,13,15,23,24,5
Path 7 = 1,2,3,4,5,6,13,15,23,25,5
Path 8 = 1,2,3,26,27,27

Matrikx kategori

Sistem Informasi Hotel Reservasi Borobudur Jakarta 32


Data

Sistem Informasi Hotel Reservasi Borobudur Jakarta 33


Menu Buku Tamu

Menu Kamar

Menu Data Pengguna

+ Tambah Tamu

User role Nama user No tlp /telephone


Jabatan

Username

Hapus Kembali

Edit

Sistem Informasi Hotel Reservasi Borobudur Jakarta 34


Syntaks data
Imports System.Data.Odbc
1
Imports MySql.Data.MySqlClient

Public Class control_tambah_kamar

Sub tampilkan_tipeKamar()

Call koneksi()
Dim tampilkan As String
tampilkan = "select * from kategori_kamar"
cmd = New MySqlCommand(tampilkan, conn)
2 dr = cmd.ExecuteReader
3
Do While dr.Read()

cb_tipeKamar.Items.Add(dr.Item("kategori_nama_kamar"))

Loop

End Sub

Private Sub control_tambah_kamar_Load(sender As Object, e As


EventArgs) Handles MyBase.Load
Call tampilkan_tipeKamar()
4 cb_tipeKamar.SelectedItem = "- Pilih Tipe Kamar -"
cb_maxTamu.SelectedItem = "- Pilih Max Tamu -"
End Sub

Private Sub btn_batal_Click(sender As Object, e As EventArgs) Handles


btn_batal.Click

Dim menu_kamar As control_kamar = New control_kamar


5
menu_utama.pnl_container.Controls.Clear()
menu_utama.pnl_container.Controls.Add(menu_kamar)

End Sub

Private Sub btn_tambah_Click(sender As Object, e As EventArgs) Handles


btn_tambah.Click

6 If inputNo_kamar.Text = "" Or cb_tipeKamar.SelectedItem = "- Pilih Tipe


Kamar -" Or cb_maxTamu.SelectedItem = "- Pilih Max Tamu -" Then
MessageBox.Show("Harap diisi semua data")

Else

Call koneksi()
Try
7 Dim cek As String
cek = "select * from kamar where kamar_no='" &
inputNo_kamar.Text & "'"
cmd = New MySqlCommand(cek, conn)
dr = cmd.ExecuteReader
dr.Read()

If dr.HasRows Then

MessageBox.Show("Maaf, nomor kamar ini sudah tersedia


didalam data")

Sistem Informasi Hotel Reservasi Borobudur Jakarta 35


Else

Call koneksi()
Try

Dim cek2 As String


cek2 = "select * from kategori_kamar where kategori_nama_kamar='" &
cb_tipeKamar.Text & "'"
cmd = New MySqlCommand(cek2, conn)
dr = cmd.ExecuteReader
8 dr.Read()
If dr.HasRows Then
Call koneksi()
Try

Dim simpan As String


simpan = "insert into kamar (kamar_no, kamar_kategori,
kamar_jumlah_tamu, kamar_status) values ('" & inputNo_kamar.Text & "','" &
dr.Item("kategori_id_kamar") & "','" & cb_maxTamu.Text & "','TERSEDIA')"
cmd = New MySqlCommand(simpan, conn)
cmd.ExecuteNonQuery()

10 MessageBox.Show("Telah berhasil dsimpan")


Dim menu_kamar As control_kamar = New control_kamar

menu_utama.pnl_container.Controls.Clear()
menu_utama.pnl_container.Controls.Add(menu_kamar)

Catch ex As Exception
MessageBox.Show("Gagal dsimpan")
End Try

End If
Catch ex As Exception
MessageBox.Show("Gagal dsimpan")
inputNo_kamar.Clear()
End Try
End If
End Sub
End Class

Sistem Informasi Hotel Reservasi Borobudur Jakarta 36


Flowchart data

From Data

-Buku tamu
-Kamar
-Data pengguna
-Kembali

Y
D.1
? Buku Tamu

Y D.2
? Kamar

Y D.3
? Data Pengguna

Kembali

Sistem Informasi Hotel Reservasi Borobudur Jakarta 37


Flowgraph Data

1
A

B R2

C
3 4
E
R3
D
F
5 6
R4 H
G
I
7 8

10

Sistem Informasi Hotel Reservasi Borobudur Jakarta 38


Rumus Menu Data

V(6) = (E-N) + 2
=(12-10) +2
=2+2
=4

V(6) = P+1
=3+1
=4
Path
Path 1 = 1,2,3,4,2
Path 2 = 1,2,3,5,6,2
Paht 3 = 1,2,3,5,7,8,2
Path 4 = 1,2,3,5,7,9,10

Sistem Informasi Hotel Reservasi Borobudur Jakarta 39


Flowchart Buku Tamu
D.1

-Tambah tamu
-Cari
-Refresh
-Edit
-Hapus
-Kembali

Nama depan, nama belakang, tipe


identitas, nomor identitas, warga
? Tambah Tamu
negara, alamat, kab/kota, provinsi,
no.Telp, e-mail.

-Clear
-Tambah Tamu
-Batal

? Clear

? Tambah Tamu Berhasil

? Batal

? Cari

? Refresh

Nama depan, nama belakang, tipe


identitas, nomor identitas, warga
? Edit
negara, alamat, kab/kota, provinsi,
no.Telp, e-mail.

-Update kamar
-Batal

? Update kamar Berhasil

Batal

? Hapus

Kembali

Sistem Informasi Hotel Reservasi Borobudur Jakarta 40


Flowgraph Buku Tamu

B E
C
3 4 5

F
R2 R3
D 6 J
G
H
7 8
N

I M
K
9 10 11
L
O R4
12 13
P

Q R5
14 15 S
R1 R R6
T
16 17
V
U Y
W R7
18 19 20
Z

X AA 21
AB AD
22 23 24 AE
AC
R8
25
AF
R9
AG
26 27
AI
AH

28

AJ

29

Sistem Informasi Hotel Reservasi Borobudur Jakarta 41


Rumus Buku tamu

V(G) = (E – N) + 2

= (3 - 29) + 2

=9

PATH :

Path 1 = 1,2,3,4,5,6,7,8,5

Path 2 = 1,2,3,4,5,6,7,8,9,10,11,2

Path 3 = 1,2,3,4,5,6,7,9,12,13,2

Path 4 = 1,2,3,14.15,2

Path 5 = 1,2,3,14,16,17,2

Path 6 = 1,2,3,14,16,18,19.20,21,22,23,24,2

Path 7 = 1,2,3,14,16,18,19,20,21,22,25,2

Path 8 = 1,2,3,14,16,18,26,27,2

Path 9 = 1,2,3,14,16,18,26,28,29

Sistem Informasi Hotel Reservasi Borobudur Jakarta 42


Flowchart Kamar
D.2

-Tambah kamar
-Cari
-Refresh
-Edit
-Hapus
-Kembali

-Nomor kamar
? Tambah kamar -Maks.Tamu/kamar
-Tipe kamar

-Tambah kamar
-Batal

? Tambah kamar Berhasil

Batal

? Cari Kamar, tipe kamar, status kamar

? refresh

-Nomor kamar
-Maks.Tamu/kamar
? Edit
-Tipe kamar
-status kamar

-Update kamar
-Kembali

? Update kamar Berhasil

Kembali

? Hapus

Kembali

Sistem Informasi Hotel Reservasi Borobudur Jakarta 43


Flowgraph Kamar

C E
3 4 5
F

6
K
G

H J
7 8 9
I

L
10

M O P
11 12 13

Q S
14 15

T V
16 17 18
W

19
X

Y AA AB
20 21 22
Z

AC
23

AD AF
24 25

26

27

Sistem Informasi Hotel Reservasi Borobudur Jakarta 44


Rumus Menu Kamar

V(G) = (E-N) +
= (33-27) + 2
=8
V(6) = P+1
= 7+1
=8
Path
Path 1 = 1,2,3,4,5,6,7,8,9,2
Path 2 = 1,2,3,4,5,6,7,10,2
Path 3 = 1,2,3,11,12,13,2
Path 4 = 1,2,3,11,14,15,12
Path 5 = 1,2,3,11,14,16,17,18,19,20,21,22,19
Path 6 = 1,2,3,,11,14,16,17,18,19,20,23,2
Path 7 = 1,2,3,11,14,16,24,25,2
Path 8 = 1,2,3,11,14,16,24,26,27

Sistem Informasi Hotel Reservasi Borobudur Jakarta 45


Flowchart Data Pengguna
Form Data Pengguna

D.3

-Tambah tamu
-Edit
-Hapus
-Kembali

-Nama pengguna
-Batasan akses
-Jabatan
? Tambah Tamu -No. Telp/
Handphone
-Akun baru

-Clear
-Tambah User
-Batal

? Clear

? Tambah User Berhasil

Batal

-Nama pengguna
-Batasan akses
-Jabatan
? Edit
-No. Telp/
Handphone
-Akun baru

-Clear
-Tambah User
-Batal

? Clear

? Tambah User Berhasil

Batal

? Hapus

Kembali

Sistem Informasi Hotel Reservasi Borobudur Jakarta 46


Flowgraph Data Pengguna

E
C
3 4 5

F
R3

R2

6
J
G

D H

7 8
I

M N
K

9 10 11
R4
L

12 O

P R

13 14 15
S

W
16 R5

U R6

Q
17 18
V

Z
X

19 20 21 AA

R7
Y

22 AB

R8

AC

23 24 AE

AD

25

AF

26

Sistem Informasi Hotel Reservasi Borobudur Jakarta 47


Rumus Data Pengguna

V(6) = (E-N)+2
=(32-26)+2
=8

V(6) = P+1
= 7+1
=8

Path :
P1 = 1,2,3,4,5,6,7,8,5
P2 = 1,2,3,4,5,6,7,9,10,11,2
Path 3 = 1,2,3,4,5,6,7,9,12,2
Path 4 = 1,2,3,13,14,15,16,17,18,15
Path 5 = 1,2,3,13,14,15,16,17,19,2,21,22
Path 6 = 1,2,3,13,14,15,16,17,19,22,2
Path 7 = 1,2,3,13,23,24,2
Path 8 = 1,2,3,13,23,25,26

Matriks Data

Sistem Informasi Hotel Reservasi Borobudur Jakarta 48


Matriks Buku Tamu

Sistem Informasi Hotel Reservasi Borobudur Jakarta 49


Matriks Menu kamar

Matriks Data pengguna

Sistem Informasi Hotel Reservasi Borobudur Jakarta 50


Rumus Data
V(G) = (E-N) + 2
=(17-13)+ 2
=6

V(G) = P+1
= 5+1
=6
Path:
Path 1 : 1,2,3,4,2
Path 2 : 1,2,3,5,6,2
Path 3 : 1,2,3,5,7,8,2
Path 4 : 1,2,3,5,7,9,10,2
Path 5 : 1,2,3,5,7,9,11,12,2
Path 6 : 1,2,3,5,7,9,11,13

Sistem Informasi Hotel Reservasi Borobudur Jakarta 51


Menu Laporan

14/06/2022 14/06/2022 Laporan Refresh

NO
TANGGAL TRANSAKSI TOTAL BIAYA KAMAR

Kembali
Total Pendapatan : Rp 0

Sistem Informasi Hotel Reservasi Borobudur Jakarta 52


Syntaks laporan
Imports System.Data.Odbc
1 Imports MySql.Data.MySqlClient

Public Class control_transaksi_kamar


Public temp_harga_kamar, temp_jumlah_tamu As String
Dim arrIdentitas(2000) As String
Dim jumlah_hari As Integer

' fungsi untuk tampilkan nama tamu ke toolbox cb_tamu (comboBox)


Sub tampilkan_tamu()
Dim jumlah As Integer
jumlah = 0
arrIdentitas(0) = "No"
Call koneksi()
Dim tampilkan As String
3 2 tampilkan = "select * from tamu"
cmd = New MySqlCommand(tampilkan, conn)
dr = cmd.ExecuteReader

Do While dr.Read()

jumlah = jumlah + 1
cb_tamu.Items.Add(dr.Item("tamu_nama_depan") & " " &
dr.Item("tamu_nama_belakang"))
arrIdentitas(jumlah) = dr.Item("tamu_id")
Loop
End Sub

' fungsi utama (event load)


Private Sub control_transaksi_kamar_Load(sender As Object, e As
EventArgs) Handles MyBase.Load
Call tampilkan_tamu()
4 cb_tamu.SelectedItem = "- Pilih -"
cb_maxTamu.SelectedItem = lbl_max_tamu.Text
End Sub

' fungsi button batal (event click)


Private Sub btn_batal_Click(sender As Object, e As EventArgs) Handles
btn_batal.Click

cb_tamu.SelectedItem = "- Pilih -"


5 cb_maxTamu.SelectedItem = "- Pilih Max Tamu -"
input_deposit.Clear()
End Sub

' fungsi label untuk link menuju tambah tamu (event click)
Private Sub lbl_link_Click(sender As Object, e As EventArgs) Handles
lbl_link.Click
Dim tambah_tamu As control_tambah_tamu = New control_tambah_tamu

6 menu_utama.pnl_container.Controls.Clear()
menu_utama.pnl_container.Controls.Add(tambah_tamu)
End Sub

Sistem Informasi Hotel Reservasi Borobudur Jakarta 53


' fungsi button untuk transaksi kamar (event click)
Private Sub btn_transaksi_Click(sender As Object, e As EventArgs)
Handles btn_transaksi.Click

' untuk mengambil selisih hari antara check-in dan check-out


Dim datetime1, datetime2 As Date
Dim selisih As TimeSpan

datetime1 = Me.date_checkin.Value
datetime2 = Me.date_checkout.Value
selisih = datetime2.Subtract(datetime1)
jumlah_hari = selisih.Days
7
If date_checkout.Value < date_checkin.Value Then
MessageBox.Show("Maaf, anda salah memasukkan tanggal Check
Out")
ElseIf date_checkout.Value = date_checkin.Value Then
jumlah_hari = jumlah_hari + 1
MessageBox.Show("Maaf, anda harus pesan kamar minimal 1 malam")
Else
jumlah_hari = jumlah_hari
Call transaksi_kamar()
End If
End Sub

Sub transaksi_kamar()

Dim tgl_awal, tgl_akhir, waktu As String

' untuk memformat tanggal transaksi


tgl_awal = Format(date_checkin.Value, "yyyy-MM-dd")
tgl_akhir = Format(date_checkout.Value, "yyyy-MM-dd")
waktu = Format(Now, "HH:mm:ss")

If cb_tamu.Text = "- Pilih -" Or input_deposit.Text = "" Then

MessageBox.Show("Silahkan isi data terlebih dahulu")


cb_tamu.Focus()

Else

Dim kata, temp5 As String


Dim pilihan As Integer

8 kata = cb_maxTamu.Text
temp5 = kata.Substring(0, (kata.Length - 5))
pilihan = cb_tamu.SelectedIndex

If temp5 < (temp_jumlah_tamu + 1) Then

Call koneksi()
Try

Dim cek2 As String


cek2 = "select * from kategori_kamar where
kategori_nama_kamar='" & lbl_tipe_kamar.Text & "'"
cmd = New MySqlCommand(cek2, conn)
dr = cmd.ExecuteReader
dr.Read()

If dr.HasRows Then

Sistem Informasi Hotel Reservasi Borobudur Jakarta 54


' untuk simpan data ke dalam tabel transaksi_kamar
Call koneksi() ' memanggil fungsi koneksi untuk
menghubungkan database
Dim simpan As String
' perintah queri untuk select
simpan = "insert into transaksi_kamar
(transaksi_tanggal, transaksi_id_tamu, transaksi_no_kamar,
transaksi_kategori_kamar, transaksi_jumlah_tamu, transaksi_tgl_checkin,
transaksi_waktu_checkin, transaksi_tgl_checkout, transaksi_waktu_checkout,
transaksi_total_biaya, deposit, transaksi_status) values ('" & tgl_awal &
"','" & arrIdentitas(pilihan) & "','" & lbl_no_kamar.Text & "','" &
dr.Item("kategori_id_kamar") & "','" & temp_jumlah_tamu & "','" & tgl_awal
& "','" & waktu & "','" & tgl_akhir & "','" & (input_waktu_checkout.Text &
":00") & "','" & (temp_harga_kamar * jumlah_hari) & "','" &
input_deposit.Text & "','CHECK-IN')"
cmd = New MySqlCommand(simpan, conn)
cmd.ExecuteNonQuery()

MessageBox.Show("Transaksi Kamar telah berhasil")

' untuk mengubah status kamar yang dipilih menjadi status TERPAKAI
Call koneksi()
Dim update As String
update = "update kamar set kamar_status='TERPAKAI' where kamar_no='"
& lbl_no_kamar.Text & "'"
cmd = New MySqlCommand(update, conn)
9 cmd.ExecuteNonQuery()
Dim check_in As control_check_in = New control_check_in
menu_utama.pnl_container.Controls.Clear()
menu_utama.pnl_container.Controls.Add(check_in)

End If
10
Catch ex As Exception
MessageBox.Show("Gagal dsimpan")
End Try
Else
MessageBox.Show("Maaf, jumlah tamu yang tersedia pada
kamar ini hanya " & lbl_max_tamu.Text)
cb_maxTamu.SelectedItem = lbl_max_tamu.Text

End If

End If

End Sub

Private Sub GunaButton3_Click(sender As Object, e As EventArgs)

End Sub

Private Sub GunaButton1_Click(sender As Object, e As EventArgs)


Handles GunaButton1.Click
Dim menu1 As control_check_in = New control_check_in

menu_utama.pnl_container.Controls.Clear()
menu_utama.pnl_container.Controls.Add(menu1)
End Sub
End Class

Sistem Informasi Hotel Reservasi Borobudur Jakarta 55


Flowchart laporan
E

Laporan Kembali

Y
-Tgl/Waktu Chek in
? Laporan
-Tgl/ Waktu Check out
T

Kembali -Lapran
-Refresh
-Kembali

Y
X
? Laporan
T

Y
? Refresh

Kembali

Sistem Informasi Hotel Reservasi Borobudur Jakarta 56


Flowgraph laporan

B
C E
3 4 5
R1 F
D
6
12 G R2
O
H
7 8
R3 J
I
K
13 9 10 M
L R4

11
N

Sistem Informasi Hotel Reservasi Borobudur Jakarta 57


Rumus Laporan
V(G) = ( E-N) +2
= (15- 13) + 2
=2+2
=4
V(G) = P + 1
=3+1
=4
Path :
Path 1 = 1,2,3,4,5,6,7,8,6
Path 2 = 1,2,3,4,5,6,7,9,10,6
Path 3 = 1,2,3,4,5,6,7,9,11,2
Path 4 = 1,2,3,12,13

Matriks laporan

Sistem Informasi Hotel Reservasi Borobudur Jakarta 58


SUMMERY
Perkembangan sistem ini menjadi langkah awal yang baik untuk
pengembangan sistem hotel Borobudur yang tadinya masih bersifat
konvensional menjadi terdigitalisasi. Sistem usulan dapat membantu pekerjaan
admin dalam mengelola master data dan data reservasi. Sistem ini juga dapat
membantu mengurangi terjadinya kecurangan dalam pencatatan, dimana pada
sistem yang lama, laporan hanya dicatat menggunakan buku manual dan
dipegang oleh satu orang karyawan saja.
Dapat diusulkan untuk pengembangan selanjutnya dari sistem
manajemen pada Hotel Borobudur, yaitu dapat menambahkan metode
pembayaran online secara otomatis sewaktu melakukan pemesanan kamar,
misalnya menggunakan kartu kredit atau e-banking.

Sistem Informasi Hotel Reservasi Borobudur Jakarta 59

Anda mungkin juga menyukai