repository.usd.ac.id · vii halaman motto dalam s’gala perkara, tuhan punya rencana, yang lebih...
TRANSCRIPT
SISTEM INFORMASI UNTUK PERUSAHAAN PERSEWAAN
PERLENGKAPAN PESTA DENGAN J2EE
(STUDI KASUS : UD. ROSARI KLATEN)
SKRIPSI
Diajukan untuk Memenuhi Salah Satu Syarat
Memperoleh Gelar Sarjana Teknik
Program Studi Teknik Informatika
Oleh :
Annis Yunita
NIM : 045314044
PROGRAM STUDI TEKNIK INFORMATIKA
JURUSAN TEKNIK INFORMATIKA
FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS SANATA DHARMA
YOGYAKARTA
2009
ii
INFORMATION SYSTEM FOR CATERING EQUIPMENT
RENTAL COMPANY WITH J2EE
(A CASE STUDY: UD. ROSARI KLATEN)
A THESIS
Presented as Partial Fulfillment of the Requirement
To Obtain Sarjana Teknik Degree
Informatics Engineering Study Program
By :
Annis Yunita
NIM : 045314044
INFORMATICS ENGINEERING STUDY PROGRAM
DEPARTMENT OF INFORMATICS ENGINEERING
FACULTY OF SCIENCE AND TECHNOLOGY
SANATA DHARMA UNIVERSITY
YOGYAKARTA
2009
iii
iv
v
vi
HALAMAN PERSEMBAHAN
Skripsi ini kupersembahkan untuk :
Tuhan Yesus Kristus tercinta, penolong dan kekutanku,
Pakde Pri dan Bude Risti tersayang,
Mbak Ayik tersayang,
Mas Torob tercinta,
Lion of Judah tersayang
vii
HALAMAN MOTTO
Dalam s’gala perkara, Tuhan punya rencana,
Yang lebih besar dari semua yang terpikirkan,
Apapun yang Kau perbuat, tak ada maksud jahat,
S’bab itu ku lakukan, semua dengan-Mu Tuhan
Ku tak akan menyerah pada apapun juga,
Sebelum ku coba semua yang ku bisa,
Tetapi ku berserah kepada kehendak-Mu,
Hatiku percaya Tuhan punya rencana.
viii
ABSTRAK
U.D.ROSARI adalah perusahaan yang bergerak di bidang persewaan
perlengkapan pesta yang menyewakan tenda, kursi, barang pecah belah, dan lain -
lain. Selama ini proses sewa barang, daftar pelanggan yang menyewa, dan pencarian
stok perlengkapan, masih dilakukan secara manual. Jumlah stok per macam barang
mencapai ribuan, sehingga pegawai yang bertugas melakukan pekerjaan tersebut
merasa kesulitan.
Untuk memenuhi kebutuhan UD. ROSARI, penulis membuat sistem informasi
yang mendukung pengelolaan persewaan perlengkapan pesta yang terdiri dari
pencatatan pegawai, pelanggan, perlengkapan, peminjaman dan pengembalian
perlengkapan, transaksi persewaan, pencarian perlengkapan dan stok perlengkapan,
dan berbagai proses lainnya yang mendukung sistem informasi persewaan
perlengkapan pesta. Sistem ini juga dibuat berbasis web, sehingga pelanggan dapat
mengakses pencarian perlengkapan dan stok perlengkapan yang disewakan melalui
internet.
Pengujian sistem dilakukan oleh 20 responden dengan kuesioner. Para
responden terdiri dari 3 pegawai UD. ROSARI dan 17 mahasiswa. Hasil kuesioner
menunjukkan bahwa sistem ini dapat berjalan dengan baik dan memenuhi kebutuhan
pengguna, sehingga dapat diterapkan dalam kondisi yang sesungguhnya.
ix
ABSTRACT
U.D.ROSARI is a catering equipment rental company which rented tents, folded
chairs, glass wares, and others. Until the present days, the renting process, the customer’s
list, and the stock list were still be done manually. The amounts of stock for each
equipment were thousands so that it raised difficulties for the person in charge to record
the stocks when they were rented.
To fulfill the U.D.ROSARI’s needs, the writer designed the information system
which supported all the process in a catering equipment rental company, such as: the
listing of employees, customers, utensils, rental and the return of the equipment, rental
transaction, quest of the stock, and the other process which supported the information
system in a catering equipment rental company. The system was based on the web, so
that the customers were able to access the quest of equipment and stocks through the
internet.
The system’s trial was implemented by twenty respondents and the data were
obtained by questionnaires. The respondents were three of UD. ROSARI’s, employees
and seventeen university students. Based on the data, it could be concluded that the
system could fulfill the customers’ needs so that it could be applied in a real condition.
x
xi
KATA PENGANTAR
Puji dan syukur saya ucapkan kepada Tuhan Yesus Kristus, yang telah melimpahkan
kasih karuniaNya, sehingga saya dapat menyelesaikan skripsi ini. Penulisan skripsi ini
ditujukan untuk memenuhi salah satu syarat memperoleh gelar Sarjana Teknik Jurusan
Teknik Informatika, Fakultas Sains dan Teknologi.
Terselesaikannya penulisan skripsi ini tidak lepas dari peran serta beberapa pihak,
baik secara langsung maupun secara tidak langsung. Oleh karena itu, saya ingin
menyampaikan terima kasih kepada pihak – pihak yang telah ikut membantu dalam penulisan
skripsi ini, baik dalam memberi bimbingan, petunjuk, kerjasama, kritikan, maupun saran,
antara lain kepada:
1. Ibu A. Rita Widiarti, S.Si, M. Kom., selaku dosen pembimbing I skripsi, yang banyak
membantu dalam memberikan saran perbaikan dan masukan.
2. Eko Hari Parmadi, S.Si., M.Kom., dan Drs. Kuntoro Adi SJ, MA, M.Sc., Ph.D selaku
dosen penguji yang memberikan banyak masukan dan inspirasi.
3. Pakde Pri dan Bude Risti, yang selalu mendoakan, memberi spirit, dan dorongan
kepada penulis untuk dapat menyelesaikan penulisan skripsi ini.
4. Pihak UD. ROSARI yang banyak membantu dan mendukung dalam pengerjaan
skripsi ini.
5. Seluruh dosen, staf dan karyawan Universitas Sanata Dharma khususnya Fakultas
Sains dan Teknologi Jurusan Teknik Informatika.
6. Mbak Ayik tersayang, yang selalu mendoakan, memberi kasih, semangat, dan
meminjamkan laptopnya.
xii
7. Mas Torob tercinta, yang selalu mendoakan, memberi semangat, dorongan, dan kasih
sayang.
8. Mbak Ius dan keluarga, yang selalu mendoakan, memberi semangat, dan membantu
kelancaran penyelesaian skripsi ini.
9. Tante Ani dan mbak Nur yang selalu mendoakan dan memberi semangat.
10. Teman – teman Lion of Judah (K’ Chika, Donal, Gita, Dokman, Henny, Sabet, James,
Devi, Nana, Ester), yang selalu mendoakan dan memberi semangat.
11. Teman – teman Jurusan Teknik Informatika (terkhusus buat Vita, Friska, Elis, Ratih,
Dian, Anas, Vera Sala, Verania, Putu) yang selalu memberi semangat dan doa.
12. Teman teman kos Valent (Lisa, Lita, Lian, Lia besar, Lia kecil, Desti, Iis, Niken,
Kiki, Deli), yang selalu memberikan semangat, doa, dan inspirasi.
13. Saudara-saudara di PMK Apostolos USD yang selalu memberi dukungan dan doa
(terkhusus buat Weli, Dhita, Indah, Stefan, Ratih, Mas Antok, K’Jefry, Boy, Stanley).
14. Teman – teman mitra Perpustakaan Universitas Sanata Dharma.
15. Semua pihak yang telah membantu kelancaran pembuatan skripsi ini yang tidak bisa
disebutkan secara satu persatu.
Akhir kata penulis berharap skripsi ini dapat bermanfaat bagi semua pihak yang
tertarik terhadap skripsi ini pada umumnya.
Yogyakarta, 25 Maret 2009
Penulis
Annis Yunita
xiii
DAFTAR ISI HALAMAN JUDUL .................................................................................................. i
HALAMAN PERSETUJUAN PEMBIMBING ………………………………….. .. iii
HALAMAN PENGESAHAN ……………………………………………………. .. iv
PERNYATAAN KEASLIAN KARYA ..................................................................... v
HALAMAN PERSEMBAHAN ……………………………………………………. vi
HALAMAN MOTTO …………………………………………………………… .. vii
ABSTRAK ................................................................................................................ viii
ABSTRACT .............................................................................................................. ix
HALAMAN PERSETUJUAN ……………………………………………………… x
HALAMAN KATA PENGANTAR ……………………………………………… xi
HALAMAN DAFTAR ISI ...................................................................................... xiii
DAFTAR GAMBAR .............................................................................................. xviii
DAFTAR TABEL ................................................................................................... xxiv
BAB I. PENDAHULUAN ...................................................................................... 1
1.1. Latar Belakang Masalah ............................................................................. 1
1.2. Rumusan Masalah ....................................................................................... 1
1.3. Batasan Masalah .......................................................................................... 2
1.4. Tujuan .......................................................................................................... 3
1.5. Manfaat ........................................................................................................ 3
1.6. Metodologi Penelitian .................................................................................. 3
1.7. Sistematika Penulisan .................................................................................. 4
BAB II. LANDASAN TEORI ...................................................................................6
2.1. SISTEM, INFORMASI, SISTEM INFORMASI ........................................6
2.2. J2EE (Java 2 Enterprise Edition) ................................................................. 8
xiv
2.2.1. Komponen – Komponen J2EE ............................................................8
2.2.1.1. Servlet ...........................................................................................9
2.2.1.2. Java Server Pages (JSP) ...............................................................11
2.3. WEB CONTAINER ....................................................................................11
2.3.1. Web Server ..........................................................................................11
2.3.1.1.Tomcat ...........................................................................................12
2.3.2. Protokol HTTP ....................................................................................13
2.3.2.1.Method HTTP Request ..................................................................14
2.3.2.2.Method Request GET ....................................................................14
2.3.2.3.Method Request POST ................................................................. 14
2.3.2.4.Response HTTP ............................................................................ 14
2.3.3. Aplikasi Web ...................................................................................... 15
2.4. MVC (Model-View-Controller) ................................................................. 15
2.4.1. Model .................................................................................................. 16
2.4.2. View ....................................................................................................16
2.4.3. Controller ............................................................................................ 16
2.5. DATABASE SERVER, JDBC, DAN MYSQL ..........................................17
2.5.1. Database Server ...................................................................................17
2.5.2. JDBC ...................................................................................................17
2.5.3. MYSQL ...............................................................................................18
2.6. PEMROGRAMAN BERORIENTASI OBJEK ..........................................20
2.6.1. Pengertian ............................................................................................20
2.6.2. Karakteristik Pemrograman Berorientasi Objek .................................20
2.6.3. Keuntungan Pemrograman Berorientasi Objek ...................................21
2.6.4. Metodologi Pemrograman Berorientasi Objek ....................................21
xv
2.6.4.1.Object Oriented Analysis ..............................................................21
2.6.4.2.Object Oriented Design .................................................................22
2.6.5. UML (Unified Modelling Language) ..................................................23
2.6.6. Use-Case Diagram ..............................................................................24
2.6.7. Class Diagram .....................................................................................26
2.6.8. Sequence Diagram ..............................................................................28
BAB III. ANALISIS DAN PERANCANGAN SISTEM ..........................................29
3.1. Analisa Sistem .............................................................................................29
3.1.1. Gambaran Umum Perusahaan ...........................................................29
3.1.1.1.Sejarah Singkat Perusahaan UD. ROSARI ................................29
3.1.1.2.Struktur Organisasi Perusahaan UD. ROSARI ..........................32
3.1.2. Prosedur dan Metode Pengumpulan Kebutuhan ...............................33
3.1.2.1.Prosedur ......................................................................................33
3.1.2.2.Metode Pengumpulan Kebutuhan ..............................................34
3.1.3. Orang yang terlibat dalam Sistem .....................................................36
3.1.4. Gambaran Umum Sistem ..................................................................36
3.1.5. Kebutuhan Sistem .............................................................................37
3.1.6. Spesifikasi Sistem .............................................................................38
3.1.7. Use Case Diagram ............................................................................39
3.2. Perancangan Sistem ....................................................................................42
3.2.1. Class Diagram ...................................................................................43
3.2.2. Sequence Diagram ............................................................................45
3.2.3. Perancangan Database ......................................................................84
3.2.4. Perancangan User Interface ..............................................................89
3.2.4.1.Perancangan Menu .....................................................................89
xvi
3.2.4.2.Perancangan Input ......................................................................92
3.2.4.3.Perancangan Output .................................................................105
BAB IV. IMPLEMENTASI ....................................................................................138
4.1. Instalasi ......................................................................................................138
4.2. Implementasi Program ..............................................................................139
4.2.1. Implementasi Database ..................................................................139
4.2.2. Implementasi User Interface .........................................................144
4.2.2.1.Proses Menu Utama ...............................................................144
4.2.2.2.Proses Login ..........................................................................149
4.2.2.3.Proses Tambah Data ..............................................................151
4.2.2.4.Proses Ubah Data ..................................................................156
4.2.2.5.Proses Hapus Data .................................................................159
4.2.2.6.Proses Sewa Barang ..............................................................165
4.2.2.7.Proses Pengembalian Barang ................................................172
4.2.2.8.Proses Transaksi Persewaan ..................................................178
4.2.2.9.Proses Detail Transaksi .........................................................183
4.2.2.10. Proses Pencarian .......................................................188
4.2.2.11. Proses Tampil Barang ...............................................196
4.2.2.12. Proses Logout ...........................................................203
BAB V. ANALISA HASIL .................................................................................. 205
5.1. Teknik Pengumpulan Data ...................................................................... 205
5.2. Sasaran Penyebaran Kuesioner ................................................................205
5.3. Form Kuesioner .......................................................................................206
5.4. Hasil dan Pembahasan .............................................................................212
5.5. Analisa Teknologi J2EE ..........................................................................221
xvii
5.6. Kelebihan Sistem .....................................................................................221
5.7. Kekurangan Sistem ..................................................................................222
BAB VI. PENUTUP ...............................................................................................223
6.1. KESIMPULAN ..........................................................................................223
6.2. SARAN ......................................................................................................224
DAFTAR PUSTAKA ................................................................................................225
xviii
DAFTAR GAMBAR Gambar 2.1. Siklus Informasi …………..…………………………………………. 7 Gambar 2.2. J2EE Server dan Container .................................................................. 8
Gambar 2.3 Struktur Direktori Tomcat ..................................................................... 12
Gambar 2.4. Simbol Use Case ................................................................................... 25
Gambar 2.5. Simbol Aktor ..........................................................................................25
Gambar 2.6. Association .....................................................................................…... 25
Gambar 2.7. Use Case depend on Relationship ......................................................... 26
Gambar 2.8. Use Case extend Relationship ............................................................... 26
Gambar 2.9. Class Diagram ....................................................................................... 27
Gambar 2.10. Sequence Diagram ............................................................................. 28
Gambar 3.1. Struktur Organisasi Perusahaan UD. ROSARI ..................................... 32
Gambar 3.2. Global Use Case Diagram ..................................................................... 39
Gambar 3.3. Detail Use Case Diagram ...................................................................... 41
Gambar 3.4. Class Diagram ....................................................................................... 43
Gambar 3.5. Sequence Diagram Login ..................................................................... 45
Gambar 3.6. Sequence Diagram tambah pegawai .................................................... 46
Gambar 3.7. Sequence Diagram ubah pegawai ......................................................... 47
Gambar 3.8. Sequence Diagram hapus pegawai ........................................................48
Gambar 3.9. Sequence Diagram tambah pengguna akses ......................................... 49
Gambar 3.10. Sequence Diagram ubah pengguna akses ........................................... 50
Gambar 3.11. Sequence Diagram hapus pengguna akses .......................................... 51
Gambar 3.12. Sequence Diagram tambah jenis ......................................................... 52
Gambar 3.13. Sequence Diagram ubah jenis ............................................................. 53
Gambar 3.14. Sequence Diagram hapus jenis ............................................................ 54
xix
Gambar 3.15. Sequence Diagram tambah barang ...................................................... 55
Gambar 3.16. Sequence Diagram ubah barang .......................................................... 56
Gambar 3.17. Sequence Diagram hapus barang ......................................................... 57
Gambar 3.18. Sequence Diagram print out brosur ..................................................... 58
Gambar 3.19. Sequence Diagram tambah pelanggan ................................................. 59
Gambar 3.20. Sequence Diagram ubah pelanggan ..................................................... 60
Gambar 3.21. Sequence Diagram hapus pelanggan ................................................... 61
Gambar 3.22. Sequence Diagram tambah sewa ......................................................... 62
Gambar 3.23. Sequence Diagram ubah sewa ............................................................. 63
Gambar 3.24. Sequence Diagram hapus sewa ........................................................... 64
Gambar 3.25. Sequence Diagram sewa barang ......................................................... 65
Gambar 3.26. Sequence Diagram Proses ubah peminjaman barang ......................... 66
Gambar 3.27. Sequence Diagram Proses hapus peminjaman barang ........................ 67
Gambar 3.28. Sequence Diagram Proses tambah pengembalian ............................... 68
Gambar 3.29. Sequence Diagram ubah pengembalian ............................................... 70
Gambar 3.30. Sequence Diagram hapus pengembalian ............................................. 71
Gambar 3.31. Sequence Diagram tambah transaksi ................................................... 72
Gambar 3.32. Sequence Diagram ubah transaksi ....................................................... 73
Gambar 3.33. Sequence Diagram hapus transaksi ..................................................... 74
Gambar 3.34. Sequence Diagram detail transaksi ...................................................... 75
Gambar 3.35. Sequence Diagram Print out nota persewaan ...................................... 76
Gambar 3.36. Sequence Diagram tampil barang ........................................................ 77
Gambar 3.37. Sequence Diagram pencarian perlengkapan berdasarkan nama jenis
barang ................................................................................................. 78
xx
Gambar 3.38. Sequence Diagram pencarian perlengkapan berdasar
nama barang ....................................................................................... 79
Gambar 3.39. Sequence Diagram pencarian perlengkapan berdasar bulan ............... 81
Gambar 3.40. Sequence Diagram pencarian peminjaman berdasar
nama pelanggan .................................................................................. 83
Gambar 3.41. Form Menu Utama .............................................................................. 89
Gambar 3.42. Form Menu Login .............................................................................. .90
Gambar 3.43. Form Menu Admin .............................................................................. 91
Gambar 3.44. Form Menu Pegawai ............................................................................ 92
Gambar 3.45. Form Login .......................................................................................... 93
Gambar 3.46. Form Tambah Pegawai ........................................................................ 93
Gambar 3.47. Form Tambah Pengguna Akses ........................................................... 94
Gambar 3.48. Form Tambah Pelanggan ..................................................................... 95
Gambar 3.49. Form Tambah Jenis Barang ................................................................. 95
Gambar 3.50. Form Tambah Barang .......................................................................... 96
Gambar 3.51. Form Tambah Sewa ............................................................................. 97
Gambar 3.52. Form Sewa Barang .............................................................................. 98
Gambar 3.53. Form Tambah Pengembalian ............................................................... 99
Gambar 3.54. Form Tambah Transaksi .....................................................................100
Gambar 3.55. Form Pencarian Perlengkapan Berdasarkan
Nama Jenis Barang ........................................................................... 101
Gambar 3.56. Form Pencarian Perlengkapan Berdasarkan
Nama Barang .................................................................................... 102
Gambar 3.57. Form Pencarian Perlengkapan Berdasarkan Bulan ........................... 103
xxi
Gambar 3.58. Form Pencarian Perlengkapan Berdasarkan
Nama Pelanggan .............................................................................. 104
Gambar 3.59. Form Daftar Pegawai ........................................................................ 105
Gambar 3.60. Form Ubah Pegawai .......................................................................... 106
Gambar 3.61. Form Hapus Pegawai ......................................................................... 106
Gambar 3.62. Form Daftar Pengguna Akses ............................................................ 107
Gambar 3.63. Form Ubah Pengguna Akses ............................................................. 108
Gambar 3.64. Form Hapus Pengguna Akses ............................................................ 108
Gambar 3.65. Form Daftar Jenis Barang .................................................................. 109
Gambar 3.66. Form Ubah Jenis Barang ....................................................................110
Gambar 3.67. Form Hapus Jenis Barang .................................................................. 110
Gambar 3.68. Form Daftar Barang ........................................................................... 111
Gambar 3.69. Form Ubah Barang ............................................................................ 112
Gambar 3.70. Form Hapus Barang .......................................................................... 113
Gambar 3.71. Form Print Out Brosur ....................................................................... 114
Gambar 3.72. Form Daftar Pelanggan ...................................................................... 115
Gambar 3.73. Form Ubah Pelanggan ....................................................................... 115
Gambar 3.74. Form Hapus Pelanggan .......................................................................116
Gambar 3.75. Form Daftar Persewaan ..................................................................... 117
Gambar 3.76. Form Ubah Sewa .............................................................................. .117
Gambar 3.77. Form Hapus Persewaan ..................................................................... 118
Gambar 3.78. Form Daftar Peminjaman Barang ...................................................... 119
Gambar 3.79. Form Ubah Peminjaman Barang ....................................................... 120
Gambar 3.80. Form Hapus Peminjaman Barang ...................................................... 121
Gambar 3.81. Form Daftar Pengembalian Barang ................................................... 122
xxii
Gambar 3.82. Form Ubah Pengembalian Barang ..................................................... 123
Gambar 3.83. Form Hapus Pengembalian Barang ....................................................124
Gambar 3.84. Form Daftar Transaksi Persewaan ..................................................... 125
Gambar 3.85. Form Transaksi Pelanggan ................................................................ 126
Gambar 3.86. Form Ubah Transaksi ........................................................................ 126
Gambar 3.87. Form Hapus Transaksi ....................................................................... 127
Gambar 3.88. Form Detail Transaksi ....................................................................... 128
Gambar 3.89. Form Hasil Pencarian Berdasar Nama Jenis Barang ......................... 130
Gambar 3.90. Form Hasil Pencarian Berdasar Nama Barang .................................. 131
Gambar 3.91. Form Hasil Pencarian Stok Berdasar Bulan ...................................... 132
Gambar 3.92. Form Hasil Pencarian Peminjaman Berdasar Nama Pelanggan ........ 133
Gambar 3.93. Form Tampil Barang ......................................................................... 134
Gambar 3.94. Form Logout ……… ......................................................................... 135
Gambar 3.95. Form Lihat Kontak …........................................................................ 136
Gambar 3.96. Form Lihat Galery Foto …................................................................. 137
Gambar 4.1. Form Menu Utama .............................................................................. 144
Gambar 4.2. Form Menu Admin .............................................................................. 146
Gambar 4.3. Form Menu Pegawai ............................................................................ 147
Gambar 4.4. Form Login .......................................................................................... 149
Gambar 4.5. Form Tambah Barang .......................................................................... 151
Gambar 4.6. Form Ubah Barang ............................................................................. 156
Gambar 4.7. Form Daftar Barang ............................................................................ 157
Gambar 4.8. Form Hapus Barang ............................................................................. 162
Gambar 4.9. Form Daftar Sewa ................................................................................ 166
Gambar 4.10. Form Sewa Barang ............................................................................ 167
xxiii
Gambar 4.11. Form Daftar Peminjaman Barang ..................................................... 172
Gambar 4.12. Form Daftar Peminjaman Barang yang Akan Dikembalikan ............ 172
Gambar 4.13. Form Tambah Pengembalian ............................................................. 173
Gambar 4.14. Form Daftar Pengembalian Barang ................................................... 178
Gambar 4.15. Form Daftar Transaksi Pelanggan ..................................................... 178
Gambar 4.16. Form Tambah Transaksi .................................................................... 179
Gambar 4.17. Form Daftar Transaksi ....................................................................... 183
Gambar 4.18. Form Detail Transaksi ....................................................................... 184
Gambar 4.19. Form Cetak Nota ............................................................................... 188
Gambar 4.20. Form Pencarian Perlengkapan Berdasarkan Nama Barang ............... 189
Gambar 4.21. Form Hasil Pencarian Perlengkapan Berdasarkan Nama Barang ..... 196
Gambar 4.22. Form Tampil Barang ......................................................................... 197
Gambar 4.23. Form Cetak Brosur ............................................................................ 202
Gambar 4.24. Form Logout ...................................................................................... 203
Gambar 5.1. Grafik Pernyataan 1 ............................................................................. 212
Gambar 5.2. Grafik Pernyataan 2 ............................................................................. 213
Gambar 5.3. Grafik Pernyataan 3 ............................................................................. 214
Gambar 5.4. Grafik Pernyataan 4 ............................................................................. 215
Gambar 5.5. Grafik Pernyataan 5 ............................................................................. 216
Gambar 5.6. Grafik Pernyataan 6 ............................................................................. 217
Gambar 5.7. Grafik Pernyataan 7 ............................................................................. 218
Gambar 5.8. Grafik Pernyataan 8 ............................................................................. 219
Gambar 5.9. Grafik Pernyataan 9 ............................................................................. 220
xxiv
DAFTAR TABEL Tabel 3.1. Perancangan database untuk tabel userakses …………………………….84 Tabel 3.2. Perancangan database untuk tabel pegawai ...............................................85
Tabel 3.3. Perancangan database untuk tabel jenisbarang ......................................... 85
Tabel 3.4. Perancangan database untuk tabel daftarbarang ....................................... 85
Tabel 3.5. Perancangan database untuk tabel daftarpelanggan ..................................86
Tabel 3.6. Perancangan database untuk tabel daftarsewa ...................................…... 86
Tabel 3.7. Perancangan database untuk tabel sewabarang ........................................ 86
Tabel 3.8. Perancangan database untuk tabel pengembalianbarang .......................... 87
Tabel 3.9. Perancangan database untuk tabel transaksi_sewa ................................... 87
Tabel 3.10. Perancangan database untuk tabel temp_sewabrg .................................. 88
Tabel 3.11. Perancangan database untuk tabel temp_sewabrg2 ................................ 88
Tabel 5.1. Tabel Pernyataan 1 .................................................................................. 212
Tabel 5.2. Tabel Pernyataan 2 .................................................................................. 213
Tabel 5.3. Tabel Pernyataan 3 .................................................................................. 214
Tabel 5.4. Tabel Pernyataan 4 .................................................................................. 215
Tabel 5.5. Tabel Pernyataan 5 .................................................................................. 216
Tabel 5.6. Tabel Pernyataan 6 .................................................................................. 217
Tabel 5.7. Tabel Pernyataan 7 .................................................................................. 218
Tabel 5.8. Tabel Pernyataan 8 .................................................................................. 219
Tabel 5.9. Tabel Pernyataan 9 .................................................................................. 220
1
BAB I
PENDAHULUAN
1.1 LATAR BELAKANG MASALAH
U.D.ROSARI adalah perusahaan yang bergerak di bidang persewaan
perlengkapan pesta yang menyewakan tenda, kursi, barang pecah belah, dan lain –
lain. Perusahaan tersebut mempunyai inventaris perlengkapan pesta yang jumlahnya
kurang lebih 70 macam barang dan jumlah stok per macam barang mencapai ribuan.
Inventaris perlengkapan pesta ini disimpan dalam 1 gudang. Perusahaan tersebut
mempekerjakan 8 orang pegawai untuk bongkar-pasang barang, 1 orang pegawai
sebagai buruh cuci, dan 1 orang pegawai sebagai tenaga administrasi.
Selama ini proses sewa barang, daftar pelanggan yang menyewa, dan pencarian
stok barang, masih dilakukan secara manual. Pegawai yang bertugas melakukan
pekerjaan tersebut merasa kesulitan, karena jumlah barang dan pelanggan yang
semakin bertambah banyak.
Untuk memenuhi kebutuhan UD. ROSARI, penulis membuat sistem informasi
yang mendukung pengelolaan persewaan perlengkapan pesta. Sistem ini juga dibuat
berbasis web, sehingga pelanggan dapat mengakses pencarian perlengkapan dan stok
perlengkapan yang disewakan melalui internet.
1.2 RUMUSAN MASALAH
Berdasarkan latar belakang masalah di atas dapat dibuat rumusan masalahnya
yaitu bagaimana merancang, membuat, dan menyajikan sistem informasi untuk
2
perusahaan persewaaan perlengkapan pesta yang dapat memberikan layanan
informasi dan pengolahan data barang kepada pegawai dan pelanggan.
1.3 BATASAN MASALAH
Sistem informasi untuk perusahaan persewaan perlengkapan pesta ini mempunyai
batasan masalah sebagai berikut:
1. Program dibuat dengan bahasa pemrograman J2EE yaitu dengan JSP (Java Server
Pages) dan Servlet, dan database yang digunakan adalah MySQL 5.0.
2. Sistem informasi yang akan dibangun tidak menangani sistem penggajian
pegawai, dan penambahan stok barang.
3. Sistem informasi yang akan dibangun mempunyai beberapa kemampuan, yaitu:
a. Login Administrator
b. Login Pegawai
c. Pendaftaran pegawai
d. Pendaftaran pengguna akses
e. Pencatatan perlengkapan, meliputi: penambahan, pengubahan, dan
penghapusan data perlengkapan.
f. Laporan daftar perlengkapan yang disewakan
g. Pendaftaran pelanggan baru
h. Pelayanan persewaan perlengkapan
i. Pencarian perlengkapan yang dapat diakses oleh semua pihak yang terlibat
j. Logout
3
1.4 TUJUAN
Membangun suatu sistem informasi untuk perusahaan persewaan perlengkapan
pesta U.D. ROSARI Klaten dengan JSP dan Servlet.
1.5 MANFAAT
Manfaat dari sistem informasi yang akan dibangun ini adalah supaya dapat
memberikan layanan informasi dan pengolahan data perlengkapan yang lebih baik
kepada pegawai dan pelanggan.
1.6 METODOLOGI PENELITIAN
Metodologi penelitian yang digunakan dalam pembuatan sistem informasi ini
adalah metodologi object-oriented (Carol Britton, Jill Doake). Langkah – langkah
metodologi tersebut adalah sebagai berikut:
1. Melakukan studi kasus berupa wawancara yang bertujuan untuk:
a. Mendapatkan contoh informasi detail barang di perusahaan persewaan
perlengkapan pesta U.D. ROSARI, misalnya tentang jenis barang, jumlah
stok barang per jenis barang, daftar pelanggan.
b. Melihat sampai sejauh mana proses persewaan di perusahaan tersebut.
2. Melakukan studi literatur yang bertujuan untuk:
Mempelajari referensi mengenai bahasa pemrograman yang dipakai untuk
pembuatan sistem informasi ini yaitu: J2EE khususnya untuk JSP dan Servlet,
dan database yang digunakan yaitu MySQL.
3. Mengembangkan sistem informasi dengan SDLC(System Development Life Cycle)
(Benyamin L. Sinaga). Tahap – tahap dalam pengembangan sistem yaitu:
a. Analisa Sistem
4
Analisa sistem ini dimaksudkan untuk menentukan apa yang akan
dilakukan oleh sistem. Fungsionalitas atau layanan – layanan apa yang
akan diberikan kepada pengguna sistem.
b. Desain Sistem
Mengembangkan cara untuk mewujudkan sistem yang akan dibuat dengan
perancangan sistem secara umum yaitu class diagram, sequence diagram,
perancangan database, dan perancangan user interface.
c. Implementasi
Hasil perancangan sistem diterjemahkan ke dalam bahasa pemrograman
yang dapat dimengerti oleh mesin.
d. Pengujian
Pengujian yang dilakukan adalah dengan menjalankan kuesioner untuk
mendapatkan kesimpulan umum mengenai sistem informasi yang akan
dibangun apakah secara garis besar sudah menjawab kebutuhan user.
e. Deploymen
Pengguna melakukan instalasi program dan menggunakan program.
f. Pemeliharaan
Melakukan pemeliharaan terhadap sistem berupa perawatan terhadap
sistem. Perawatan ini meliputi perubahan, penambahan fungsi atau
peningkatan informasi.
1.7 SISTEMATIKA PENULISAN
BAB I PENDAHULUAN
Bab ini berisi tentang latar belakang masalah, perumusan masalah, batasan
masalah, metodologi penelitian, tujuan, manfaat dan sistematika penulisan.
5
BAB II LANDASAN TEORI
Bab ini berisi tentang penjelasan mengenai sistem informasi, J2EE, Web
Container, MVC, Database Server, JDBC, MySQL, dan Pemrograman Berorientasi
Objek.
BAB III ANALISA DAN PERANCANGAN SISTEM
Bab ini berisi tentang sejarah singkat perusahaan UD. ROSARI, gambaran
umum tentang sistem informasi yang akan dibangun pada perusahaan persewaan
perlengkapan pesta U.D. ROSARI, analisis sistem yang digambarkan dengan use-case
diagram, perancangan sistem dengan class diagram, sequence diagram, basis data, dan
perancangan user interface yang meliputi: perancangan menu, input, dan output.
BAB IV IMPLEMENTASI
Bab ini berisi tentang pembuatan form – form, pengkodean modul – modul,
pembuatan tabel, dan lain – lain yang diperlukan sistem.
BAB V ANALISA HASIL
Bab ini berisi tentang analisa kelebihan dan kekurangan sistem baru yang telah
berhasil dibuat.
BAB VI PENUTUP
Bab ini berisi tentang kesimpulan yang dapat diambil untuk menjawab
permasalahan yang sudah diajukan dalam BAB I dan saran yang diberikan untuk
pengembangan sistem di masa yang akan datang.
6
BAB II
LANDASAN TEORI
2.1 SISTEM, INFORMASI, SISTEM INFORMASI
Menurut Jogiyanto HM (Jogiyanto, 1990) terdapat dua kelompok pendekatan
di dalam mendefinisikan sistem, yaitu yang menekankan pada prosedur dan
menekankan pada komponen atau elemennya. Pendekatan sistem yang lebih
menekankan pada prosedur mendefinisikan sistem adalah suatu jaringan kerja dari
prosedur – prosedur yang saling berhubungan, berkumpul bersama – sama untuk
melakukan suatu kegiatan atau untuk menyelesaikan suatu sasaran yang tertentu.
Pendekatan sistem yang merupakan jaringan kerja dari prosedur lebih menekankan
urut – urutan operasi di dalam sistem. Pendekatan sistem yang lebih menekankan
pada komponen atau elemennya mendefinisikan sistem adalah kumpulan dari elemen
– elemen yang berinteraksi untuk mencapai suatu tujuan tertentu.
Suatu sistem yang akan terus dikembangkan memerlukan informasi, karena
dengan adanya informasi maka sistem dapat menghindari proses keberakhiran.
Informasi adalah data yang diolah menjadi bentuk yang lebih berguna dan lebih
berarti bagi yang menerimanya. Sumber dari informasi adalah data. Data adalah
kenyataan yang menggambarkan suatu kejadian – kejadian dan kesatuan yang nyata.
Data yang diolah untuk menghasilkan informasi menggunakan suatu model proses
tertentu. Data yang diolah melalui suatu model menjadi informasi, dimana penerima
kemudian menerima informasi tersebut, membuat suatu keputusan dan melakukan
tindakan . Data tersebut akan ditangkap sebagai input, diproses kembali lewat suatu
model dan seterusnya akan membentuk suatu siklus. Siklus ini oleh John Burch
disebut dengan siklus informasi (information cycle). Siklus ini disebut juga dengan
7
siklus pengolahan data (data processing cycles). Siklus informasi dapat dilihat pada
Gambar 2.1.
Gambar. 2.1. Siklus Informasi
Kualitas dari suatu informasi tergantung dari tiga hal, yaitu informasi harus akurat,
tepat pada waktunya, dan relevan (Jogiyanto, 1990).
Informasi dapat diperoleh dari sistem informasi. Sistem informasi adalah suatu
sistem di dalam suatu organisasi yang mempertemukan kebutuhan pengolahan
transaksi harian, mendukung operasi, bersifat manajerial dan kegiatan strategi dari
suatu organisasi dan menyediakan pihak luar tertentu dengan laporan – laporan yang
diperlukan. John Burch dan Gray Grudnitski mengemukakan bahwa sistem informasi
terdiri dari komponen – komponen yang disebut dengan istilah blok bangunan
(building block), yaitu blok masukan (input block), blok model (model block), blok
keluaran (output block), blok teknologi (technology block), blok basis data (database
block) dan blok kendali (controls block). Sebagai suatu sistem, keenam blok tersebut
masing – masing saling berinteraksi satu dengan yang lainnya membentuk satu
kesatuan untuk mencapai sasarannya (Jogiyanto, 1990).
8
2.2. J2EE (Java 2 Enterprise Edition)
J2EE merupakan teknologi Java yang menyediakan platform, library, dan
kerangka kerja untuk membangun aplikasi enterprise. Dalam aplikasi enterprise
tersebut, aplikasi web sering berperan sebagai klien karena memiliki banyak
keunggulan dibanding dengan aplikasi desktop. Aplikasi web ini dapat dihasilkan
dengan teknologi Servlet maupun Java Server Pages (JSP) (Isak Rickyanto, 2003).
2.2.1. Komponen – Komponen J2EE
Aplikasi J2EE terdiri dari beberapa komponen. Komponen di J2EE adalah
sebuah unit program yang dirakit ke aplikasi J2EE sesuai dengan kelas dan filenya
yang berkomunikasi dengan komponen lainnya. Spesifikasi J2EE mendefinisikan
komponen – komponen J2EE sebagai berikut:
a. Komponen klien yang berjalan di komputer klien yaitu aplikasi klien dan
applet.
b. Komponen web yang berjalan di J2EE server yaitu komponen Servlet dan
JSP .
c. Komponen bisnis yang berjalan di J2EE server yaitu komponen EJB.
Komponen web J2EE dapat dilihat pada gambar 2.2:
Gambar 2.2. J2EE Server dan Container
9
2.2.1.1. Servlet
Menurut Isak Rickyanto (Rickyanto, 2003), servlet adalah teknologi Java
untuk aplikasi web. Teknologi servlet merupakan salah satu teknologi penting dari
J2EE karena menjadi dasar dari teknologi JSP (Java Server Pages). Servlet sering
digunakan untuk menghasilkan response berupa halaman HTML, XML, file, dan
sebagainya sesuai request yang berjalan pada protokol HTTP. Servlet juga dipanggil
sebagai HTTP Servlet. Hal ini disebabkan karena servlet biasanya digunakan dengan
HTTP, akan tetapi servlet bukanlah salah satu spesifikasi spesifik dari protokol client
– server.
Kelebihan Servlet:
a. Efisien dan baik dalam kinerja
Kinerja servlet baik dan efisien karena tidak ada proses pembuatan berulang
untuk tiap request dari klien. Setiap request ditangani oleh proses servlet
container. Servlet tidak dibuat dan dihancurkan berulang – ulang, tetapi tetap
tersimpan pada memori untuk menangani request lain yang datang
selanjutnya.
b. Powerfull
Servlet mempunyai kemampuan yang lengkap, antara lain mampu melakukan
penanganan request ke request, penanganan cookie dan session, akses
database dengan JDBC, caching, serta library yang lengkap untuk pembuatan
aplikasi web.
c. Aman
Servlet memiliki fasilitas security yang baik dan merupakan bagian dari
teknologi Java yang sudah dari asalnya didesain dengan security yang baik.
10
d. Portabilitas
Teknologi Java Servlet portable karena dapat dijalankan di berbagai servlet
container, aplikasi server, maupun sistem operasi.
e. Proses development yang lebih cepat
Dengan menggunakan servlet, dapat digunakan library Java yang lengkap dan
komponen yang sudah ada.
f. Tangguh
Servlet merupakan teknologi Java yang memiliki penanganan memori yang
baik dan garbage collection, sehingga menjadi aplikasi web yang tangguh dan
stabil.
g. Telah digunakan dan diakui di dunia.
Servlet merupakan teknologi Java yang telah diterima dan digunakan di
berbagai belahan dunia. Komponen, solusi, dan dukungan dapat ditemukan
secara gratis(open source) maupun komersial.
h. Murah
Dikatakan murah karena JDK Java gratis untuk didownload. Container Servlet
dan JSP juga banyak yang gratis, misalnya Tomcat.
Proses kerja servlet dimulai dari servlet diload ke JVM (Java Virtual
Machine) oleh servlet container apabila terjadi request pertama kali oleh client.
Proses penanganan request dijalankan sebagai thread dari web server atau servlet
container. Setelah diload, maka servlet tetap ada di memori untuk menangani request
berikutnya. Setiap kali menangani request, servlet container membandingkan
timestamp dari servlet dalam memori dengan file class java servlet. Apabila
timestamp file java servlet lebih baru, maka secara otomatis servlet container akan
meload servlet yang baru dari class servlet (Rickyanto, 2003).
11
2.2.1.2. Java Server Pages (JSP)
JSP adalah teks dokumen yang dapat menghasilkan halaman web yang statis
(HTML, XML, Text, dll.) dan dinamis (Kode Java).
Kelebihan JSP:
a. Lebih mudah digunakan untuk menciptakan halaman web yang menarik
b. JSP dapat dibuat dengan editor HTML biasa.
c. Modifikasi JSP dideteksi secara otomatis, sehingga mudah untuk dibangun.
d. JSP merupakan multi-platform yang tidak terpisahkan dan dapat dijalankan
pada berbagai container servlet yang kompatibel, dengan mengabaikan vendor
atau sistem operasinya.
2.3. WEB CONTAINER
Web container ialah sebuah runtime Java yang menyediakan implementasi
dari Java Servlet API, dan fasilitas-fasilitas lainnya untuk JSP. Web container
bertanggung jawab untuk inisialisasi, invoking, dan mengatur daur hidup Servlet dan
JSP.
2.3.1. Web Server
Web server ialah server yang berfungsi menyimpan dokumen web serta
database yang akan diakses melalui intranet, ekstranet maupun internet. Web server
inilah yang akan diakses oleh browser Internet Explorer, Nescape, Mozilla, Konquer
dan lain-lain.
12
2.3.1.1.Tomcat
Menurut Isak Rickyanto (Rickyanto, 2003), Tomcat atau lebih lengkapnya
Apache Tomcat adalah servlet container sekaligus JSP container yang merupakan
standar implementasi dari spesifikasi Servlet dan JSP. Tomcat dapat didownload
secara gratis serta merupakan servlet container paling banyak digunakan di dunia.
Versi Apache Tomcat yang digunakan pada pembuatan sistem informasi perusahaan
persewaan ini adalah apache-tomcat-5.5.17.
Struktur direktori Tomcat dapat dilihat pada gambar 2.3:
Gambar 2.3 Struktur Direktori Tomcat
Penjelasan struktur direktori Tomcat adalah sebagai berikut:
a. bin
direktori untuk menyimpan skrip startup, shutdown dan file lain.
b. classes
direktori untuk menyimpan Class yang tidak diekstrak(masih dipack)
untuk aplikasi web global.
c. conf
direktori untuk menyimpan file konfigurasi Tomcat termasuk
server.xml(file konfigurasi utama Tomcat) dan web.xml global(file
13
deployment descriptor) serta tomcat-users.xml(file konfigurasi user
Tomcat).
d. server
direktori untuk menyimpan file archive Tomcat.
e. lib
direktori untuk menyimpan file class umum dalam bentuk “ .jar” .
f. logs
direktori untuk menyimpan log Tomcat.
g. common
direktori untuk menyimpan file class common untuk Catalina dan aplikasi
web.
h. webapps
direktori untuk meyimpan file-file dari aplikasi web/servlet, JSP, dan
image serta file-file terkait.
i. work
direktori untuk menyimpan file servlet hasil kompilasi dari file JSP.
2.3.2. Protokol HTTP
Pada pengembangan aplikasi terdistribusi, protokol komunikasi level wire
atau aplikasi akan menentukan sifat client dan server. HTTP adalah protokol level
aplikasi yang diimplementasikan melalui koneksi TCP/IP. HTTP adalah protokol
stateless berbasiskan request dan response.
14
2.3.2.1.Method HTTP Request
HTTP menentukan tipe-tipe request yang dikirim client ke server. Protokol
juga menentukan bagaimana request dan response dijalankan. HTTP/1.0 menentukan
3 tipe method request, yaitu GET, POST, dan HEAD. HTTP/1.1 mempunyai 5
method request tambahan, yaitu OPTION, PUT, TRACE, DELETE, dan CONNECT.
Namun, yang umum digunakan adalah method GET dan POST saja.
2.3.2.2.Method Request GET
Method GET adalah method yang termudah dan paling sering digunakan untuk
mengakses sumber statis seperti dokumen HTML, gambar, dan lain-lain. Method
GET dapat juga digunakan untuk mengambil informasi dinamis, dengan
mengggunakan parameter query tambahan pada URL yang diminta.
2.3.2.3.Method Request POST
Method POST digunakan untuk mengakses sumber dinamis. Umumnya, POST
digunakan untuk mengirim informasi yang tergantung pada permintaan, dan
digunakan ketika harus mengirim informasi kompleks yang besar ke server. Method
POST mengizinkan enkapsulasi dari pesan multi bagian ke tubuh request.
2.3.2.4.Response HTTP
Sebagai response dari request HTTP, server merespon dengan status response,
dan beberapa meta-informasi yang menjelaskan response tersebut. Pada HTTP, server
dan client menggunakan MIME (Multi Purpose Internet Mail Extension) untuk
mengindikasikan tipe dari isi request dan response. Contoh dari MIME adalah
text/html, image/gift, dan lain-lain.
15
2.3.3. Aplikasi Web
Aplikasi web adalah aplikasi sisi server. Oleh karena itu, dibutuhkan
persyaratan :
1. Sebuah model pemrograman dan API untuk pengembangan aplikasi
2. Dukungan runtime sisi server
3. Dukungan deployment, yaitu proses menginstal aplikasi ke server.
Aplikasi web mempunyai struktur yang dibagi menjadi 4 bagian, yaitu:
1. direktori umum.
2. file WEB-INF/web.xml
3. direktori WEB-INF/classes
4. direktori WEB-INF/lib
2.4. MVC (Model – View - Controller)
MVC merupakan model arsitektur yang dipakai untuk membangun aplikasi
web dengan logika bisnis dan presentasi yang kompleks. Dalam model arsitektur ini
logika bisnis dipisahkan dari presentasi. Komponen yang mengatur logika dan data
bisnis tidak mengatur presentasi data. Sebaliknya, komponen yang mengatur
presentasi data juga tidak mengatur logika dan data bisnis (Wijono, dkk., 2007).
Dalam MVC, logika bisnis dinyatakan oleh model. Presentasi dinyatakan oleh
view. Pengontrol aliran request dan data dinyatakan oleh controller.
16
2.4.1. Model
Model merupakan implementasi dari logika bisnis dan data bisnis. Model
dapat direalisasi dengan memakai sembarang komponen web (Wijono dkk., 2007).
Model dapat berupa salah satu gabungan dari :
� Sembarang class Java (class standar, servlet, JavaBeans, atau class lain yang
memakai API Java Enterprise Edition).
� Halaman JSP
� Komponen akses data, baik memakai JDBC atau komponen EJB.
2.4.2. View
View merupakan implementasi dari presentasi, yaitu halaman yang akan
dipakai sebagai response untuk dikirimkan kepada client. View akan menampilkan
data bisnis yang telah diolah. Dalam hal ini, halaman JSP digunakan sebagai view
(Wijono dkk., 2007) .
2.4.3. Controller
Controller merupakan pengontrol aliran request dan data. Tugas controller
adalah menerima request yang dikirimkan dari client. Data request akan diolah atau
diteruskan(forward) kepada komponen lain yang mengolah data. Pada akhirnya
request yang diolah akan diserahkan kepada komponen view. Dalam hal ini, servlet
digunakan sebagai controller (Wijono dkk., 2007).
17
2.5. DATABASE SERVER, JDBC, DAN MYSQL
2.5.1. Database Server
Komputer yang bertindak sebagai server umumnya menyediakan
database server yang berfungsi sebagai server yang melayani akses terhadap
database. Database server yang dipakai oleh penulis adalah MySQL.
2.5.2. JDBC
JDBC adalah API (Application Programming Interface) yang dikembangkan
oleh Sun Microsystem untuk menyediakan akses data universal dalam bahasa
pemrograman Java. JDBC merupakan bagian dari Java 2 SDK Standard Edition.
Inti dari JDBC adalah package java.sql dan javax.sql. JDBC menyediakan
mekanisme untuk koneksi database, sintaks untuk mengirimkan query, dan
melakukan transaksi serta struktur data yang mewakili hasil query. JDBC tidak
melakukan standarisasi SQL, tetapi dapat mendukung sintaks SQL sesuai database
vendor.
JDBC bukan database server, tetapi merupakan penyedia mekanisme untuk
berhubungan antara aplikasi Java dengan database server. Dalam JDBC terdapat 7
langkah standar untuk menangani database yaitu:
1. Memanggil atau load driver JDBC
2. Mendefinisikan URL untuk koneksi database
3. Melakukan koneksi database
4. Membuat objek statement
5. Melakukan query atau update
6. Memproses hasil
7. Menutup koneksi
18
2.5.3. MYSQL
MySQL adalah multiuser database yang menggunakan bahasa SQL
(Structured Query Language) yang mampu menangani data yang cukup besar.
SQL(Structured Query Language) adalah bahasa yang telah distandarisasi dan
digunakan dalam pengelolaan semua database yang ada. Menurut Ridwan Sanjaya
(Sanjaya, 2005), di dalam SQL terdapat 3 sub bahasa, yaitu:
1. DDL (Data Definition Language)
DDL adalah perintah – perintah yang digunakan untuk membangun
isi dari database. DDL bertugas untuk membuat objek SQL dan
menyimpan definisinya dalam tabel. Perintah – perintah yang digolongkan
dalam DDL adalah:
a. Create
Perintah ini digunakan untuk membuat database, tabel, dan objek
lain dalam database.
b. Alter
Perintah ini digunakan untuk memodifikasi tabel, seperti
mengganti nama tabel, mengubah jenis / tipe field yang digunakan,
mengubah nama field, menambah field baru atau mengurangi field tertentu.
c. Drop
Perintah ini digunakan untuk menghapus database, tabel, dan objek
yang lain dalam database.
2. DML (Data Manipulation Language)
DML digunakan untuk menampilkan, mengubah, menambah dan
menghapus baris dalam tabel. Perintah – perintah yang digolongkan
dalam DML antara lain:
19
a. Select
Perintah ini digunakan untuk menampilkan isi tabel.
b. Insert
Perintah ini digunakan untuk mengisi atau menambah isi tabel.
c. Update
Perintah ini digunakan untuk mengubah item – item tertentu
dalam 1 tabel.
d. Delete
Perintah ini digunakan untuk menghapus record –record dengan
kriteria tertentu.
3. DCL (Data Control Language)
DCL adalah perintah yang akan membantu mengontrol keamanan
setiap database atau sebagian isi dari database dengan membuat hak –hak
akses tertentu bagi setiap user.
a. Grant
Perintah ini digunakan untuk memberikan hak – hak tertentu kepada
seorang user. Grant diberikan oleh user yang mempunyai hak untuk
memberikan grant atau administrator(root).
b. Revoke
Perintah ini digunakan untuk mencabut hak – hak dari seorang user terhadap
database tertentu atau sebagian isi dari database.
20
2.6. PEMROGRAMAN BERORIENTASI OBJEK
2.6.1. Pengertian
Pemrograman berorientasi objek adalah mengkombinasikan data dan
fungsi untuk mengakses data menjadi sebuah kesatuan unit. Unit ini dikenal dengan
nama objek. Objek sebenarnya mencerminkan pola kerja manusia dalam kehidupan
sehari – hari. Sebuh objek dapat diibaratkan sebagai departemen – departemen di
dalam sebuah perusahaan bisnis. Contoh departemen:
a. Penjualan
b. Akunting
c. Personalia
Objek sebenarnya adalah anggota dari kelas (class). Dengan kata lain, kelas
adalah kumpulan dari beberapa objek yang sama.
2.6.2. Karakteristik Pemrograman Berorientasi Objek
Lima karakteristik dalam pemrograman berorientasi objek adalah sebagai
berikut:
1. Abstraksi (abstraction)
Abstraksi adalah kemampuan manusia untuk mengenali keserupaan di
antara objek – objek, situasi – situasi, atau proses – proses di duni nyata
serta keputusan untuk berkonsenrasi pada keserupaan – keserupaan
tersebut dan mengabaikan perbedaan – perbedaan yang kecil.
2. Enkapsulasi (encapsulation)
Enkapsulasi adalah pengemasan atau pembungkusan beberapa item ke
dalam suatu unit
3. Modularitas
21
Modularitas adalah memecah sesuatu yang kompleks atau rumit menjadi
bagian – bagian kecil yang dapat dikendalikan atau diatur.
4. Polimorfisme (polymorphism)
Polimorfisme adalah kemampuan untuk memperoleh beberapa bentuk.
5. Pewarisan (inheritance)
Pewarisan adalah urutan atau aturan dari tingkatan abstraksi menjadi
seperti struktur pohon.
2.6.3. Keuntungan Pemrograman Berorientasi Objek
Keuntungan dari pemrograman berorientasi objek adalah sebagai berikut:
1. Realistic Modelling
Mengimajinasikan semua bentuk ke dalam bentuk nyata.
2. Reusability
Dapat membuat sebuah objek atau class yang bisa digunakan dalam
proses yang lain, sehingga tidak perlu menulis ulang program. Dengan
demikian dapat menghemat waktu, tenaga, dan biaya.
3. Fleksible
Sistem yang dibangun dimungkinkan untuk mengalami perubahan
jangka waktu tertentu.
2.6.4. Metodologi Pemrograman Berorientasi Objek
2.6.4.1. Object Oriented Analysis
Object oriented analysis merupakan suatu pendekatan yang digunakan untuk
mempelajari objek yang ada untuk melihat bahwa objek tersebut dapat digunakan
kembali atau diadaptasi untuk kegunaan yang baru dan mendefinisikan objek yang
baru atau dimodifikasi yang akan dikombinasikan dengan objek yang ada menjadi
22
suatu aplikasi bisnis yang lebih berguna (Whitten, 2004). Ada 2 aktivitas utama
dalam object oriented analysis yaitu:
1. Memodelkan fungsi dari sistem
Pada saat proses requirement analysis, telah dibangun use case yang
mendokumentasikan kebutuhan fungsional dari sistem. Tujuan dari kegiatan ini
adalah untuk mendapatkan dokumentasi yang cepat untuk seluruh bisnis event
yang terjadi (use case) untuk mendefinisikan dan memvalidasi kebutuhan.
2. Mengorganisasikan objek dan mengidentifikasi relasinya
Pada tahap ini dibuat class diagram tahap analisis yang menggambarkan struktur
objek dari sistem, memperlihatkan class objek dari sistem yang disusun dengan
relasi antar class objeknya.
2.6.4.2. Object Oriented Design
Object oriented design merupakan pendekatan yang digunakan untuk
menspesifikasikan solusi perangkat lunak dalam bentuk kolaborasi objek, atribut, dan
methodnya. Tahap ini merupakan kelanjutan dari proses object oriented anaysis.
Dalam tahap ini, terdapat tiga buah jenis objek, yaitu:
1. Entity Object, merupakan sebuah objek yang berisi informasi yang berhubungan
dengan bisnis dan secara khusus bersifat persisten dan dismpan dalam database.
Simbol :
2. Interface Object, merupakan sebuah objek yang akan disediakan untuk
mengganbarkan bagaimana sebuah aktor akan berkomunikasi dengan sistem.
Contoh: sebuah window, dialog box. Tanggung jawab dari interface object ada dua,
yaitu:
23
a. Menterjemahkan input user ke dalam informasi yang dapat dimengerti oleh
sistem dan menggunakannya untuk memproses kejadian bisnis.
b. Membawa data yang berhubungan ke dalam sebuah kejadian bisnis dan
menterjemahkan data untuk dipresentasikan tepat kepada user.
Simbol :
3. Control Object, merupakan sebuah objek yang berisi aplikasi logik yang bukan
merupakan tanggung jawab entity object. Control Object akan mengkoordinasikan
message antara interface object dan entity object dan mengurutkan message yang
terjadi.
Simbol:
Ketiga jenis objek tersebut akan menggambarkan fakta bahwa responsibilitas dan
behaviour dibutuhkan untuk mendukung fungsi sistem di antara ketiga objek yang
akan bekerja sama untuk mendapatkan layanan terbaik. Ketiga jenis objek tersebut
juga berhubungan dengan model client/server. Client bertanggung jwab untuk aplikasi
logik (control object) dan merepresentasikan method (interface object) dan server
bertanggung jawab terhadap repository (entity object).
2.6.5. UML (Unified Modelling Language)
UML(Unified Modelling Language) adalah sistem arsitektur yang bekerja
dalam OOA(Object Oriented Analysis) dan OOD(Object Oriented Design) dengan
satu bahasa yang telah menjadi standar dalam industri untuk menentukan,
memvisualisasikan, mengkonstruksi, dan mendokumentasikan artifak yang terdapat
24
dalam sistem perangkat lunak. Artifak adalah sepotong informasi yang digunakan
atau dihasilkan dala suatu proses rekayasa perangkat lunak.
Untuk membuat suatu model, UML memiliki diagram grafis sebagai berikut :
1. Use-case diagram
2. Class diagram
3. Behavior diagram :
a. Statechart diagram
b. Activity diagram
c. Interaction diagram :
i. Sequence diagram
ii. Collaboration diagram
4. Implementation diagram
a. Component diagram
b. Deployment diagram
2.6.6. Use-Case Diagram
Use case diagram pada gambar 2.4 adalah sebuah diagram yang
menggambarkan interaksi antara sistem dan eksternal sistem dan pengguna.
Berbasiskan grafik yang menggambarkan siapa yang menggunakan sistem dan
dengan cara bagaimana pengguna berinteraksi dengan sistem. Use case merupakan
bagian dari keseluruhan sistem. Digambarkan secara grafik dengan elips yang
horizontal dengan nama dari use case tertera di atas, di bawah atau di dalam elips.
25
Gambar 2.4. Simbol Use Case
Aktor yang digambarkan pada gambar 2.5 merupakan segala sesuatu yang
dibutuhkan untuk berinteraksi dengan sistem untuk mengubah informasi. Aktor ini
dapat berupa orang, organisasi atau sistem informasi yang lain atau juga suatu waktu
kejadian.
Gambar 2.5. Simbol Aktor
Association yang digambarkan pada gambar 2.6 adalah relasi antara aktor dan
sebuah use case dimana terjadi interaksi antar mereka. Association dengan sebuah
panah menyentuh use case mengidentifikasikan bahwa use case diinisiasi oleh aktor.
Association dengan sebuah panah keluar dari use case menuju aktor berarti aktor
menerima use case.
Gambar 2.6. Association
Use case depends on Relationship yang digambarkan pada gambar 2.7 adalah
sebuah relasi use case yang menentukan bahwa use case yang lain harus dibuat
sebelum use case yang sekarang, dimana digambarkan sebagai anak panah yang
dimulai dari satu use case dan menunjuk ke use case yang depend on kepadanya.
Setiap relasi depend on diberi label “<<depend on>>”.
Simbol Use Case
Pegawaimembuat laporan nota
Pelanggan
Aktor
26
Gambar 2.7. Use Case depend on Relationship
Use case extend Relationship yang digambarkan pada gambar 2.8 adalah
sebuah relasi untuk menambahkan deskripsi use case pada use case yang sudah ada,
memodelkan kondisi tambahan pada urutan aksi suatu use case, digunakan untuk
menunjukkan behaviour yang opsional, behaviour yang terjadi pada kondisi khusus,
dan beberapa sub-flow yang dijalankan berdasarkan pilihan aktor.
Gambar 2.8. Use Case extend Relationship
2.6.7. Class Diagram
Class diagram digunakan untuk memvisualisasikan struktur kelas-kelas dari
suatu sistem dan merupakan tipe diagram yang paling banyak dipakai. Class diagram
Login
membuat laporan nota
<<depend on>>
Daftar Pelanggan
tambah pelanggan ubah pelanggan
detail pelangganhapus pelanggan
<<extend>><<extend>>
<<extend>><<extend>>
27
ini memperlihatkan hubungan antar kelas dan penjelasan detail tiap-tiap kelas di
dalam model desain dari suatu sistem.
Selama proses analisis, class diagram memperlihatkan aturan-aturan dan
tanggung jawab entitas yang menentukan perilaku sistem. Selama tahap desain, class
diagram berperan dalam menangkap struktur dari semua kelas yang membentuk
arsitektur sistem yang dibuat. Contoh Class Diagram digambarkan pada gambar 2.9.
Gambar 2.9. Class Diagram
AdminNoid : Stringnama : String
Pegawai
kodePeg : Stringnama : Stringalamat : Stringnotelp : Stringpassword : String
PelanggankodePel : Stringnama : Stringalamat : Stringnotelp : String
JeniskodeJenis : Stringnama : String
BarangkodeBarang : Stringnama : Stringsatuan : Stringharga : floatstock : floatkodeJenis : String
1
1..*
1
1..*mempunyai
Transaksi_persewaan
kodeSewa : StringkodeBarang : Stringjumlah : floattotalHarga1 : floatuangMuka : floattotalHarga2 : floattransport : float
1
1..*
1
1..*
mempunyai
DaftarSewakodeSewa : StringkodePel : StringtglSewa : datetglHrsKmbali : date1
1
1
1
1
1
1
1
28
2.6.8. Sequence Diagram
Sequence diagram menjelaskan interaksi objek yang disusun dalam suatu
urutan waktu. Diagram ini secara khusus berasosiasi dengan use-case. Sequence
diagram memperlihatkan tahap demi tahap apa yang seharusnya terjadi untuk
menghasilkan sesuatu di dalam use case. Tipe diagram ini baik digunakan di awal
tahap desain atau analisis karena kesederhanaannya dan mudah untuk dimengerti.
Contoh Sequence Diagram dapat dilihat pada gambar 2.10.
Gambar 2.10. Sequence Diagram
: Admin/Pegawai : FormLogin : Servlet Login : admin/pegawai : Form Menu Admin/Pegawai
1: masukkan username dan password
2: username dan password
3: getLogin()
4: cek username, password
5: valid/non valid
6: valid
7: non valid
29
BAB III
ANALISA DAN PERANCANGAN SISTEM
3.1. Analisa Sistem
3.1.1. Gambaran Umum Perusahaan
3.1.1.1.Sejarah Singkat Perusahaan UD. ROSARI
Perusahaan UD. ROSARI adalah perusahaan yang bergerak di bidang jasa
pelayanan persewaan perlengkapan pesta yang menyewakan tenda, kursi, barang
pecah belah, dan lain - lain. UD. ROSARI didirikan pada tahun 1996. Tahun 1998
mendapat nomor ijin untuk menjalankan operasional persewaan dengan nomor ijin:
113/11.12/TDUP/VII/1998. Pada awal mulanya, UD. ROSARI didirikan oleh karena
pemilik UD. ROSARI yang sudah pensiun dari Pegawai Negeri Sipil (PNS) ingin
mencari kesibukan dan pendapatan tambahan. Motivasi dari pemilik UD. ROSARI
untuk memilih usaha persewaan adalah sebagai berikut:
1. Persewaan perlengkapan pesta sampai kapanpun akan dibutuhkan orang
2. Andaikata barang – barang inventaris yang disewakan sampai tidak laku
dan masih dalam kondisi tidak rusak, maka barang – barang tersebut tidak
membutuhkan biaya perawatan yang besar.
Sampai saat ini, UD. ROSARI mempunyai inventaris perlengkapan pesta
yang jumlahnya cukup banyak, kurang lebih 70 macam barang dan jumlah per macam
mencapai ribuan. Inventaris perlengkapan pesta ini disimpan berdasarkan per jenis di
dalam 1 gudang. Jenis tersebut antara lain, tenda, kursi, panggung, taplak meja,
barang pecah belah, dan lain – lain. UD. ROSARI menyediakan ruang khusus sebagai
kantor untuk memberikan contoh – contoh barang yang disewakan beserta proses
terjadinya transaksi persewaan dengan pelanggan. Untuk menunjang pengiriman dan
30
pengembalian barang, maka UD. ROSARI menyediakan alat transportasi yaitu 1
buah truk dan 2 buah pick-up. UD. ROSARI mempekerjakan 1 orang untuk tenaga
administrasi, 8 orang untuk tenaga bongkar-pasang barang, dan 1 orang sebagai
tenaga cuci. UD. ROSARI juga melakukan perbaikan barang – barang yang rusak
seperti meja, tenda, kursi yang dilakukan secara rutin. Buku – buku administrasi yang
digunakan adalah:
1. Buku presensi buruh bongkar-pasang
2. Buku daftar pelanggan
3. Nota persewaan pelanggan
4. Kuitansi pembayaran pelanggan
Sampai saat ini, sistem persewaan UD. ROSARI masih dilakukan secara
manual. Urutan proses manual persewaan UD. ROSARI adalah sebagai berikut:
1. Pelanggan menyodorkan daftar barang – barang yang akan disewa.
2. UD. ROSARI memberikan brosur yang berisi inventaris dan harga sewa per
hari.
3. Kalau persewaan menyangkut tenda, UD. ROSARI melakukan survei ke
tempat tersebut sehingga mengetahui berapa ukuran tenda yang akan dipasang
dengan tepat.
4. UD. ROSARI melakukan pengecekan barang – barang yang tersedia apakah
masih tersedia dalam stock.
5. Kalau barang yang disewa oleh pelanggan masih ada, maka dibuatkan nota
peminjaman dan disertai berapa besar biaya untuk transportasi (diukur dari
jarak jauh-dekatnya pengiriman dan pengembalian barang).
6. Pelanggan diminta untuk memberikan uang muka atau kalau pelanggan ingin
melunasi pembayaran juga diperbolehkan.
31
7. UD. ROSARI mengeluarkan kuitansi pembayaran sesuai dengan jumlah harga
yang dibayar oleh pelanggan.
8. UD. ROSARI mengirim dan atau memasang barang – barang yang disewa
oleh pelanggan sesuai dengan tanggal pemakaian.
9. Kalau pemakaian barang sudah selesai, maka pihak UD. ROSARI melakukan
pengambilan atau pembongkaran.
10. Pelanggan melakukan pembayaran yang merupakan pelunasan atas barang –
barang yang disewa.
11. Setelah peminjaman selesai, pihak UD. ROSARI melakukan pengecekan
jumlah barang – barang yang tersedia, apabila ternyata ada kekurangan
mengenai jumlah yang disebabkan oleh karena pecah, hilang, dan sebagainya,
maka pelanggan dikenai biaya penggantian sesuai dengan harga umum.
12. Dalam hal- hal tertentu (misalnya: kesibukan yang padat sehingga buruh
bongkar-pasang dan alat transportasi tidak ada) maka pelanggan terpaksa
harus mengambil sendiri barang – barang yang akan disewa dan tidak
dikenakan ongkos biaya transportasi.
Secara insidentil, UD. ROSARI perlu menambah barang – barang untuk mengikuti
selera pelanggan dalam hal mengenai mode dan bentuk jenis barang – barang tertentu.
Sedangkan sistem penggajian untuk tenaga administrasi dan para buruh adalah
sebagai berikut:
1. Buruh bongkar-pasang diberlakukan sistem prosentase sebesar 25% dari omset
dan diberikan uang makan.
2. Buruh cuci diberlakukan sistem berapa jumlah barang yang dicuci dimana per
barang sudah ditentukan berapa harganya oleh pihak UD. ROSARI.
3. Tenaga admisintrasi diberlakukan penggajian sesuai UMR yang berlaku.
32
3.1.1.2.Struktur Organisasi Perusahaan UD. ROSARI
Struktur organisasi perusahaan UD. ROSARI dapat digambarkan seperti pada
gambar 3.1.
Gambar 3.1. Struktur Organisasi Perusahaan UD. ROSARI
Keterangan :
a. Pimpinan
Pimpinan merupakan pemilik perusahaan UD. ROSARI yang
bertanggungjawab sepenuhnya atas berbagai aktivitas yang terjadi
dalam proses persewaan perlengkapan pesta.
b. Tenaga Administrasi
Tenaga Administrasi merupakan orang yang bertugas menangani para
pelanggan yang menyewa, dan mengoperasikan sistem persewaan
perlengkapan pesta.
c. Tenaga bongkar-pasang
Tenaga bongkar-pasang merupakan orang yang bertugas mengirim,
memasang, dan membongkar perlengkapan yang disewa ke alamat
pelanggan.
Tenaga bongkar-pasang
Tenaga cuci
Pimpinan
Tenaga Administrasi
33
d. Tenaga cuci
Tenaga cuci merupakan orang yang bertugas untuk mencuci
perlengkapan pesta yang kotor, seperti: taplak dan barang pecah belah.
3.1.2. Prosedur dan Metode Pengumpulan Kebutuhan
3.1.2.1.Prosedur
Prosedur pengumpulan kebutuhan dilakukan dengan wawancara ke perusahaan,
dengan tahap – tahap sebagai berikut :
1. Meminta ijin kepada pimpinan perusahaan
2. Pimpinan memperbolehkan pelaksanaan wawancara
3. Menentukan waktu wawancara
4. Mempersiapkan beberapa pertanyaan
5. Melakukan wawancara disertai dengan dokumentasi
34
3.1.2.2.Metode Pengumpulan Kebutuhan
Perusahaan UD. ROSARI Pimpinan: Albertus Supriyadi
Wawancara Perusahaan ini bergerak di bidang apa? P: Perusahaan ini bergerak di bidang jasa persewaan perlengkapan pesta. Siapa saja yang terlibat di dalam perusahaan ini? P: Orang yang terlibat dapat perusahaan ini adalah saya selaku pimpinan, tenaga administrasi, buruh bongkar-pasang, buruh cuci, dan para pelanggan. Bisakah bapak jelaskan tugas dari setiap orang yang terlibat dalam perusahaan ini? P: Pimpinan perusahaan bertugas untuk mengelola usaha persewaan, tenaga administrasi bertugas sebagai operator yang melayani para pelanggan yang menyewa barang, buruh bongkar-pasang bertugas untuk mengirim barang yang disewa oleh pelanggan sampai pada tujuan kemudian memasang segala perlengkapan yang disewa dan mengambil/membongkar kalau sudah selesai dipakai, buruh cuci bertugas untuk mencuci segala perlengkapan yang kotor setelah dipinjam oleh pelanggan (misalnya: taplak, sendok, piring, gelas, dll.). Bagaimanakah prosedur pelanggan dan perusahaan dalam transaksi persewaan selama ini? P: Prosedurnya adalah seperti:
1. Pelanggan menyodorkan daftar barang – barang yang akan disewa.
2. UD. ROSARI memberikan brosur yang berisi inventaris dan harga sewa per hari.
3. Kalau persewaan menyangkut tenda, UD. ROSARI melakukan survei ke tempat tersebut sehingga mengetahui berapa ukuran tenda yang akan dipasang dengan tepat.
4. UD. ROSARI melakukan pengecekan barang – barang yang tersedia apakah masih tersedia dalam stock.
5. Kalau barang yang disewa oleh pelanggan masih ada, maka dibuatkan nota peminjaman dan disertai berapa besar biaya untuk transportasi (diukur dari jarak jauh-dekatnya pengiriman dan pengembalian barang).
6. Pelanggan diminta untuk memberikan uang muka atau kalau pelanggan ingin melunasi pembayaran juga diperbolehkan.
35
7. UD. ROSARI mengeluarkan kuitansi pembayaran sesuai dengan jumlah harga yang dibayar oleh pelanggan.
8. UD. ROSARI mengirim dan atau memasang barang – barang yang disewa oleh pelanggan sesuai dengan tanggal pemakaian.
9. Kalau pemakaian barang sudah selesai, maka pihak UD. ROSARI melakukan pengambilan atau pembongkaran.
10. Pelanggan melakukan pembayaran yang merupakan pelunasan atas barang – barang yang disewa.
11. Setelah peminjaman selesai, pihak UD. ROSARI melakukan pengecekan jumlah barang – barang yang tersedia, apabila ternyata ada kekurangan mengenai jumlah yang disebabkan oleh karena pecah, hilang, dan sebagainya, maka pelanggan dikenai biaya penggantian sesuai dengan harga umum.
12. Dalam hal- hal tertentu (misalnya: kesibukan yang padat sehingga buruh bongkar-pasang dan alat transportasi tidak ada) maka pelanggan terpaksa harus mengambil sendiri barang – barang yang akan disewa dan tidak dikenakan ongkos biaya transportasi.
Apakah prosedur yang dilakukan mengalami kesulitan selama ini? P: selama ini, yang menjadi kesulitan kami adalah:
1. Pengontrolan stock sisa barang yang ada. Sewaktu ada pelanggan yang meminjam pada tanggal tertentu, kami tidak bisa langsung memberitahu kepada pelanggan apakah barang yang disewa masih atau tidak, dan kami harus mencari dalam daftar pelanggan terlebih dahulu apakah ada pelanggan yang memakai juga pada tanggal tertentu tersebut dan dijumlah keseluruhannya apakah sisa barang di UD. ROSARI memenuhi jumlah barang yang disewa oleh pelanggan lain pada tanggal tertentu tersebut.
Apakah ada keinginan dari bapak untuk mengganti sistem persewaan ini menjadi secara terkomputerisasi? P: Oh, tentu saja ada.
1. Saya ingin ada sistem untuk memberikan informasi tentang pengontrolan stock sisa barang persewaan.
2. Saya ingin sewaktu pelanggan membayar sewa, mereka juga mendapat print out secara langsung dari sistem sebagai bukti nota peminjaman.
Terima kasih atas waktu dan informasi yang bapak berikan. P: Iya, sama-sama. Keterangan: P: Pimpinan perusahaan
36
3.1.3. Orang yang terlibat dalam Sistem
Orang yang terlibat dalam sistem ini adalah sebagai berikut:
1. Admin merupakan orang yang bertugas untuk mengelola keseluruhan sistem.
2. Pegawai merupakan orang yang bertugas untuk melayani daftar sewa,
transaksi persewaan dan pendaftaran pelanggan.
3. Pelanggan merupakan orang yang menyewa perlengkapan pesta.
3.1.4. Gambaran Umum Sistem
Sistem yang dibangun adalah sistem informasi untuk perusahaan persewaan
perlengkapan pesta dengan J2EE. Sistem yang dibangun merupakan sistem persewaan
yang berbasis web dengan memberikan kemungkinan akses dan pemberian informasi
yang lebih lengkap kepada orang yang terlibat di dalam persewaan perlengkapan
pesta ini. Orang yang terlibat adalah admin, pegawai dan pelanggan.
Admin merupakan orang yang bertugas untuk mengelola sistem dan
memberikan username dan password untuk pegawai. Sebelum admin masuk ke
dalam sistem, admin harus melakukan login terlebih dahulu. Jika username dan
password yang dimasukkan salah maka akan ditampilkan pesan kesalahan dan harus
mengulangi proses login kembali. Jika username dan password yang dimasukkan
benar maka admin dapat memanfaatkan sistem yang akan dibangun yaitu mengelola
proses daftar pegawai, daftar pengguna akses, daftar jenis, daftar barang, daftar
pelanggan, persewaan barang, pengembalian barang, transaksi persewaan, pencarian
perlengkapan, dan menampilkan barang yang disewakan secara keseluruhan. Setelah
admin selesai melakukan pengelolaan sistem, maka melakukan logout untuk keluar
dari sistem.
Pegawai merupakan orang yang bertugas untuk mengoperasikan data – data
operasional dalam persewaan. Sebelum pegawai masuk ke dalam sistem, pegawai
37
harus melakukan login terlebih dahulu. Jika username dan password yang
dimasukkan salah maka akan ditampilkan pesan kesalahan dan harus mengulangi
proses login kembali. Jika username dan password yang dimasukkan benar maka
pegawai dapat memanfaatkan sistem yang akan dibangun yaitu mengelola proses
daftar pelanggan, proses persewaan dan pengembalian barang, transaksi persewaan,
pencarian perlengkapan, dan menampilkan barang yang disewakan secara
keseluruhan. Setelah pegawai selesai melakukan pengelolaan sistem, maka melakukan
logout untuk keluar dari sistem.
Pelanggan merupakan orang yang menyewa perlengkapan pesta. Proses sewa
barang dilakukan di UD. ROSARI, dan proses dilakukan oleh pegawai yang bertugas
mengoperasikan persewaan. Hasil dari proses sewa barang diberikan kepada
pelanggan sebagai bukti persewaan, seperti: nota persewaan dan brosur. Pelanggan
juga dapat mengakses pencarian barang dan pencetakan brosur lewat akses internet.
3.1.5. Kebutuhan Sistem
Sistem informasi yang akan dikembangkan mempunyai beberapa kebutuhan sistem
sebagai berikut:
A. Hardware
1. Sistem yang akan dibangun membutuhkan RAM minimal 512MB.
2. Membutuhkan kapasitas harddisk minimal 40GB.
B. Software
1. Sistem yang akan dibangun menggunakan bahasa pemrograman J2EE
(JSP dan Servlet), tool yang digunakan NetBeans 5.5, dan MySQL 5.0
sebagai database.
38
3.1.6. Spesifikasi Sistem
Berdasarkan analisa kebutuhan sistem, maka spesifikasi sistem yang akan
dikembangkan adalah sebagai berikut:
1. Proses Login
2. Pendaftaran pegawai, pengubahan pegawai, dan penghapusan pegawai.
3. Pendaftaran pengguna akses, pengubahan data pengguna akses, dan
penghapusan data pengguna akses.
4. Pendaftaran jenis barang, pengubahan jenis barang, dan penghapusan
jenis barang.
5. Pendaftaran barang, pengubahan barang, penghapusan barang, dan
pencetakan brosur.
6. Pendaftaran pelanggan, pengubahan pelanggan, dan penghapusan
pelanggan.
7. Pendaftaran persewaan, pengubahan persewaan, dan penghapusan
persewaan.
8. Pengembalian barang
9. Transaksi persewaan yang meliputi penambahan transaksi, pengubahan
transaksi, penghapusan transaksi, detail transaksi, dan pencetakan nota
persewaan.
10. Pencarian perlengkapan.
11. Proses menampilkan barang yang disewakan secara keseluruhan.
12. Proses Logout.
39
3.1.7. Use Case Diagram
Use case diagram digambarkan menjadi 2 use case diagram yaitu, use case
diagram secara global dan secara detail. Use case diagram dapat dilihat pada Gambar
3.2, dan Gambar 3.3
Gambar 3.2. Global Use Case Diagram
Pegawai
Admin
Pelanggan
Login
<<depend on>>
Daftar Pegawai Daftar Pengguna Akses
Daftar Jenis Daftar Barang
Logout
Daftar Pelanggan Persewaan
Pengembalian Barang Transaksi Persewaan
pencarian perlengkapan berdasar nama jenis barang
pencarian perlengkapan berdasar nama barang
pencarian stok perlengkapan berdasar bulan
pencarian peminjaman berdasar nama pelanggan
Tampil Barang
pencarian perlengkapan berdasar nama jenis barang
pencarian perlengkapan berdasar nama barang
pencarian stok perlengkapan berdasar bulan
pencarian peminjaman berdasar nama pelanggan
Tampil Barang
40
Gambar 3.2 merupakan diagram yang menggambarkan interaksi antara sistem
dan pengguna secara garis besar. Aktor yang terlibat adalah Admin, Pegawai, dan
Pelanggan. Admin dapat berinteraksi dengan semua use case yang akan dibangun.
Pegawai dapat berinteraksi dengan use case tertentu saja yaitu Login, Daftar
Pelanggan, Persewaan, Pengembalian Barang, Transaksi Persewaan, pencarian
perlengkapan berdasar nama jenis barang, pencarian perlengkapan berdasar nama
barang, pencarian stok perlengkapan berdasar bulan, pencarian peminjaman berdasar
nama pelanggan, Tampil Barang, dan Logout. Pelanggan dapat berinteraksi dengan
use case pencarian perlengkapan berdasar nama jenis barang, pencarian perlengkapan
berdasar nama barang, pencarian stok perlengkapan berdasar bulan, pencarian
peminjaman berdasar nama pelanggan, dan Tampil Barang tanpa melakukan login.
Pelanggan juga menerima hasil bukti dari persewaan yang terjadi.
Dari Gambar 3.2 dihasilkan use case diagram secara lengkap yang
digambarkan pada Gambar 3.3.
41
Gambar 3.3. Detail Use Case Diagram
Pegawai
Pelanggan
Login
<<depend on>>
Admin
tambah pegawai
Daftar Pegawai
hapus pegawai
ubah pegawai
<<extend>>
<<extend>><<extend>>
Print Out Brosur
<<depend on>>
Daftar Barang
tambah barang
<<extend>>
ubah barang
<<extend>>
hapus barang
<<extend>>
detail barang
<<extend>>
tambah pengguna akses
Daftar Pengguna Akses
ubah pengguna akses
hapus pengguna akses
<<extend>>
<<extend>>
<<extend>>
hapus jenis Daftar Jenis
tambah jenis
ubah jenis
<<extend>>
<<extend>>
<<extend>>
Daftar Pelanggan
tambah pelanggan<<extend>>
ubah pelanggan<<extend>>
hapus pelanggan
<<extend>>
tambah sewa hapus sewa
Persewaan
ubah sewa sewa barang
Daftar Peminjaman Barang
hapus peminjaman barang ubah peminjaman barang
<<extend>>
<<extend>>
<<extend>>
<<extend>>
<<extend>> <<extend>>
<<depend on>>
tambah pengembalian ubah pengembalian
Pengembalian Barang
hapus pengembalian
<<extend>>
<<extend>> <<extend>>
Tampil BarangLogout
Print Out Nota Persewaan
Transaksi persewaan
tambah transaksi
<<extend>>
ubah transaksi
<<extend>>
hapus transaksi
<<extend>>
detail transaksi
<<extend>>
<<depend on>>
pencarian perlengkapan berdasar nama jenis barang
pencarian perlengkapan berdasar nama barang
pencarian stok perlengkapan berdasar bulan
pencarian peminjaman berdasar nama pelanggan
Tampil Barangpencarian peminjaman berdasar nama pelanggan
pencarian stok perlengkapan berdasar bulan
pencarian perlengkapan berdasar nama barang
pencarian perlengkapan berdasar nama jenis barang
42
Gambar 3.3 merupakan diagram yang menggambarkan interaksi antara sistem
dan pengguna secara lengkap. Diagram tersebut merupakan perluasan dari gambar
3.2. Aktor yang terlibat adalah Admin, Pegawai, dan Pelanggan. Pelanggan dapat
mengakses pencarian perlengkapan berdasar nama jenis barang, pencarian
perlengkapan berdasar nama barang, pencarian stok perlengkapan berdasar bulan,
pencarian peminjaman berdasar nama pelanggan, dan Tampil Barang di luar proses
persewaan. Pelanggan juga menerima Print Out Brosur dan Print Out nota persewaan
atas proses sewa barang yang terjadi.
3.2. Perancangan Sistem
Setelah melakukan analisa sistem, maka dibuat perancangan sistem yaitu
dengan menggunakan class diagram, sequence diagram, perancangan database, dan
perancangan user interface.
43
UserAkseskodeUser : StringuserNm : Stringpassword : Stringlevel : String
UserAkses()getKodeUser()setKodeUser()getUserNm()setUserNm()getPassword()setPassword()getLevel()setLevel()
temp_sewabrgkodeSewa : integerkodeBrg : StringnamaBrg : Stringjumlah : integerhargaSat : integersubTot : integer
temp_sewabrg()getKodeSewa()setKodeSewa()getKodeBrg()setKodeBrg()getNamaBrg()setNamaBrg()getJumlah()setJumlah()getHargaSat()setHargaSat()getSubTot()setSubTot()
temp_sewabrg2kodeSewa : integerkodePel : StringnamaPel : StringkodeBarang : StringnamaBarang : Stringharga_satuan : integerjumlah : integerSubTotal : integertglSewa : StringtglHarusKembali : String
temp_sewabrg2()getKodeSewa()setKodeSewa()getKodePel()setKodePel()getNamaPel()setNamaPel()getKodeBarang()setKodeBarang()getNamaBarang()setNamaBarang()getHarga_satuan()setHarga_satuan()getJumlah()setJumlah()getSubTotal()setSubTotal()getTglSewa()setTglSewa()getTglHarusKembali()setTglHarusKembali()
PegawaikodePeg : Stringnama : Stringalamat : StringnoTelp : Stringpassword : Stringstatus : String
Pegawai()getKodePeg()setKodePeg()getNama()setNama()getAlamat()setAlamat()getNoTelp()setNoTelp()getPassword()setPassword()getStatus()setStatus()
DaftarPelanggankodePel : Stringnama : Stringalamat : Stringnotelp : String
DaftarPelanggan()getKodePel()setKodePel()getNama()setNama()getAlamat()setAlamat()getNoTelp()setNoTelp()
JenisBarangkodeJenis : Stringnama_jenis : String
JenisBarang()getKodeJenis()setKodeJenis()getNama_jenis()setNama_jenis()
DaftarSewakodeSewa : integerkodePel : StringtglSewa : StringtglHarusKmbali : String
DaftarSewa()getKodeSewa()setKodeSewa()getKodePel()setKodePel()getTglSewa()setTglSewa()getTglHarusKembali()setTglHarusKembali()
1..*1 1..*1
melakukan
DaftarBarangkodeBarang : StringkodeJenis : Stringnama : Stringsatuan : Stringharga : integerhargaDenda : integerstok : integerstok_jan : integerstok_feb : integerstok_mar : integerstok_apr : integerstok_mei : integerstok_jun : integerstok_jul : integerstok_agust : integerstok_sept : integerstok_okt : integerstok_nov : integerstok_des : integer
DaftarBarang()getKodeBarang()setKodeBarang()getKodeJenis()setKodeJenis()getNama()setNama()getSatuan()setSatuan()getHarga()setHarga()getHargaDenda()setHargaDenda()getStok()setStok()getStok_jan()setStok_jan()getStok_feb()setStok_feb()getStok_mar()setStok_mar()getStok_apr()setStok_apr()getStok_mei()setStok_mei()getStok_jun()setStok_jun()getStok_jul()setStok_jul()getStok_agust()setStok_agust()getStok_sept()setStok_sept()getStok_okt()setStok_okt()getStok_nov()setStok_nov()getStok_des()setStok_des()
11..* 11..*
memiliki
TransaksiPersewaankodeTransaksi : integerkodeSewa : integertotalharga : integertransport : integeruangmuka : integertotalbayar : integerdendaRusak : integertotalByr2 : integer
Transaksi_Persewaan()getKodeTransaksi()setKodeTransaksi()getKodeSewa()setKodeSewa()getTotalharga()setTotalharga()getTransport()setTransport()getUangmuka()setUangmuka()getTotalbayar()setTotalbayar()getDendaRusak()setDendaRusak()getTotalByr2()setTotalByr2()
Sewa_KembalikodeSewa : integerkodePel : StringkodeBarang : StringjumlahPinjam : integerjumlahKembali : integerjumBrgRusak_Hilang : integerharga_satuan : integerSubTotal : integertglSewa : StringtglKembali : StringtglHarusKembali : StringdendaRusak : integer
Sewa_Kembali()getKodeSewa()setKodeSewa()getKodePel()setKodePel()getKodeBarang()setKodeBarang()getJumlahPinjam()setJumlahPinjam()getJumlahKembali()setJumlahKembali()getJumBrgRusak_Hilang()setJumBrgRusak_Hilang()getHarga_satuan()setHarga_satuan()getSubTotal()setSubTotal()getTglSewa()setTglSewa()getTglKembali()setTglKembali()getTglHarusKembali()setTglHarusKembali()getDendaRusak()setDendaRusak()
1..*
1..*
1..*
1..*
mendaftar
1..*
1..*
1..*
1..* meminjam
1
1..*
1
1..*
melakukan
3.2.1. Class Diagram
Gambar 3.4. Class Diagram
44
Class diagram pada gambar 3.4 mempunyai 10 class. Masing – masing class
mempunyai beberapa atribut. Gambar 3.4 menjelaskan bahwa 1 pelanggan mendaftar
sebagai penyewa sebanyak 1 kali atau lebih proses peminjaman yang terdapat pada
class DaftarSewa. Penyewa atau lebih dikenal dengan nama pelanggan dapat
menyewa satu atau banyak barang, proses ini digambarkan pada class Sewa_Kembali
dengan class DaftarBarang. Setiap 1 barang atau banyak barang yang disewakan
mempunyai jenis tersendiri, hal tersebut digambarkan pada class DaftarBarang
berhubungan dengan class JenisBarang. Setelah pelanggan melakukan proses sewa
barang, maka pelanggan harus memenuhi transaksi persewaan. Proses tersebut
digambarkan pada class TransaksiPersewaan. Dengan demikian proses persewaan
barang dapat dilakukan sesuai dengan tanggal yang ditetapkan. Ketika proses
persewaan barang telah selesai maka barang dikembalikan, pegawai mengecek
macam dan stok barang yang disewa kemudian melakukan entry data yang
digambarkan pada class Sewa_Kembali.
Class UserAkses, class Pegawai, class temp_sewabrg, class temp_sewabrg2
merupakan class-class pendukung terjadinya class diagram yang digambarkan pada
gambar 3.4.
45
: Form Menu Admin/Pegawai : Admin/Pegawai : Index : Servlet AksesLogin : userakses
1: Masukkan username dan password
2: Username dan password
3: getLogin(userNm,passwd)
4: Cek username dan password
5: Pesan error jika salah
6: Tampil pesan error
7: Valid/Non Valid
8: Valid
9: Non Valid dan tampilkan pesan
3.2.2. Sequence Diagram
1. Login
Gambar 3.5. Sequence Diagram Login
Sequence diagram pada gambar 3.5 menjelaskan bahwa aktor Admin /
Pegawai dalam melakukan login, pertama kali yang harus dilakukan adalah
memasukkan username dan password ke form login yang terdapat pada Index,
lalu username dan password yang dimasukkan dikirim ke servlet AksesLogin,
di dalam servlet AksesLogin ditangani oleh method getLogin(userNm,passwd),
kemudian di dalam entity admin / pegawai diperiksa apakah username dan
46
: Admin : Form Tambah Pegawai : Servlet tambahPegawai : Daftar Pegawai : Form Daftar Pegawai
1: Masukkan data pegawai
2: data pegawai baru
3: tambahPegawai(pegawai)
4: Cek data pegawai
5: Pesan error jika data tidak lengkap
6: Tampil pesan error
7: Berhasil / Gagal disimpan
8: Penambahan pegawai berhasil dan tampil pesan
9: Data pegawai gagal disimpan
10: Tampil pesan gagal disimpan
password yang dimasukkan ada dalam database atau tidak. Pemeriksaan ini
dikirim kembali ke servlet, jika pengisian username dan password salah maka
tertampil pesan error pada halaman Index. Username dan password yang
dimasukkan juga dicek pada servlet apakah valid atau tidak. Jika valid maka
Admin / Pegawai berhasil masuk ke halaman masing – masing menurut level
aksesnya. Sebaliknya, jika tidak valid maka kembali ke Index dan ditampilkan
pesan kesalahan.
2. tambah pegawai
Gambar 3.6. Sequence Diagram tambah pegawai
47
: Admin : Form Ubah Pegawai : Daftar Pegawai : Form Daftar Pegawai
1: Menampilkan data yang akan diubah
2: Masukkan perubahan data pegawai pada form yang disediakan
5: cek data pegawai
11: Tampil pesan gagal diubah
: Servlet simpan_ubahPegawai
3: Data pegawai baru
4: ubahPegawai(pegawai,request.getParameter("data_lama"))
10: Gagal diubah
6: Pesan error jika data tidak lengkap
7: Tampil pesan error
8: Gagal / Berhasil diubah
9: Berhasil diubah dan tampil pesan
Sequence diagram pada gambar 3.6 menjelaskan bahwa aktor admin
melakukan proses penambahan data pegawai. Proses ini dimulai dari
memasukkan data pegawai sesuai dengan form yang disediakan pada Form
Tambah Pegawai, kemudian data pegawai dikirim ke servlet tambahPegawai
dengan method tambahPegawai(pegawai). Di dalam method
tambahPegawai(pegawai) terdapat pengecekan tentang kelengkapan data
pegawai dan data pegawai yang dimasukkan sudah ada sebelumnya dalam
entity DaftarPegawai atau belum. Jika data yang dimasukkan lengkap dan
atau belum ada di dalam entity DaftarPegawai, maka data berhasil disimpan.
Sebaliknya, jika data yang dimasukkan tidak lengkap dan atau sudah ada
dalam entity DaftarPegawai maka data pegawai gagal disimpan dan
ditampilkan pesan gagal disimpan pada Form Tambah Pegawai.
3. ubah pegawai
Gambar 3.7. Sequence Diagram ubah pegawai
48
: Admin : Servlet konfirmHapusPeg
: Daftar Pegawai : Form Daftar Pegawai : Form Hapus Pegawai
1: Menampilkan data pegawai yang akan dihapus
2: Tekan tombol hapus
3: kodePeg
4: hapusPegawai(kodePeg)
5: cek data pegawai
6: Gagal / Berhasil dihapus
7: Tampilkan pesan gagal / berhasil dihapus
Sequence diagram pada gambar 3.7 menjelaskan bahwa aktor admin
melakukan proses pengubahan data pegawai. Proses ini dimulai dari admin
memilih salah satu data pegawai yang akan diubah dengan menekan tombol
ubah pada Form Daftar Pegawai, lalu sistem menampilkan data – data yang
akan diubah yang tertampil pada Form Ubah Pegawai. Admin memasukkan
perubahan data pegawai pada form yang disediakan, kemudian data pegawai
yang baru dikirim ke servlet simpan_ubahPegawai. Method pada servlet yang
menangani pengubahan data pegawai adalah
ubahPegawai(pegawai,request.getParameter(“data_lama”)) , kemudian di
dalam method ini terjadi pengecekan data pegawai yang diubah apakah data
tersebut berhasil diubah atau tidak. Jika berhasil, maka di dalam entity Daftar
Pegawai tersimpan pengubahan data yang dilakukan dan ditampilkan pada
Form Daftar Pegawai. Tetapi jika tidak berhasil maka data gagal diubah dan
ditampilkan pesan gagal diubah pada Form Ubah Pegawai.
4. hapus pegawai
Gambar 3.8. Sequence Diagram hapus pegawai
49
: Admin : Form Tambah Pengguna : Servlet tambahUser : userakses : Form Daftar Pengguna Akses
1: Memasukkan data pengguna
2: Data pengguna baru
3: tambahUser(userakses)
4: Cek data pengguna
5: Pesan error jika data tidak lengkap
6: Tampil pesan error
7: Berhasil/Gagal disimpan
10: Penambahan pengguna baru gagal disimpan
11: Tampil pesan gagal disimpan
8: Penambahan pengguna berhasil disimpan
9: Tampil pesan berhasil disimpan
Sequence diagram pada gambar 3.8 menjelaskan bahwa aktor admin
melakukan proses penghapusan data pegawai. Proses ini dimulai dari menekan
tombol hapus pada baris pegawai yang akan dihapus datanya yang ada pada
Form Daftar Pegawai, lalu sistem menampilkan data – data yang akan dihapus
yang tertampil pada Form Hapus Pegawai. Lalu dari Form Hapus Pegawai
mengirimkan kodePeg ke servlet konfirmHapusPeg. Method yang menangani
hapus sewa adalah hapusPegawai(kodePeg). Dalam method ini data pegawai
yang dihapus adalah berdasarkan pada kodePeg, kemudian dicek apakah data
dengan kodePeg yang dihapus sudah benar – benar terhapus dalam entity
Daftar Pegawai. Jika sudah terhapus maka ditampilkan pesan bahwa data telah
dihapus.
5. tambah pengguna akses
Gambar 3.9. Sequence Diagram tambah pengguna akses
50
: Admin : Servlet simpan_ubahUser : userakses : Form Daftar Pengguna Akses
: Form Ubah Pengguna Akses
1: Menampilkan data pengguna akses yang akan diubah
2: Masukkan pengubahan data
3: userakses,data_lama
4: ubahUser(userakses,request.getParameter("data_lama"));
5: Cek data userakses yang diubah
6: Pesan error jika data tidak lengkap
7: Tampil pesan error
8: Berhasil/Gagal disimpan
9: Tampil pesan berhasil/gagal disimpan
Sequence diagram pada gambar 3.9 menjelaskan bahwa aktor admin
melakukan proses penambahan pengguna akses baru. Proses ini dimulai dari
memasukkan data pengguna akses sesuai dengan form yang disediakan pada
Form Tambah Pengguna, kemudian data pengguna dikirim ke servlet
tambahUser dengan method tambahUser(userakses). Di dalam method
tambahUser(userakses) terdapat pengecekan tentang kelengkapan data
pengguna dan data pengguna yang dimasukkan sudah ada sebelumnya dalam
entity userakses atau belum. Jika data yang dimasukkan lengkap dan atau
belum ada di dalam entity userakses, maka data berhasil disimpan. Sebaliknya,
jika data yang dimasukkan tidak lengkap dan atau sudah ada dalam entity
userakses maka data pengguna gagal disimpan dan ditampilkan pesan gagal
disimpan pada Form Tambah Pegawai.
6. ubah pengguna akses
Gambar 3.10. Sequence Diagram ubah pengguna akses
51
: Admin : Form Hapus Pengguna Akses : Servlet konfirmHapusUser
: userakses : Form Daftar Pengguna Akses
1: Menampilkan data Pengguna Akses yang akan dihapus
2: Tekan tombol hapus
3: kodeUser
4: hapusUser(kodeUser)
5: Cek data yang dihapus
6: Berhasil/Gagal dihapus
7: Tampil pesan berhasil/gagal dihapus
Sequence diagram pada gambar 3.10 menjelaskan bahwa aktor admin
melakukan proses pengubahan data pengguna akses. Proses ini dimulai dari
admin memilih salah satu data pengguna akses yang akan diubah dengan
menekan tombol ubah pada Form Daftar Pengguna, lalu sistem menampilkan
data – data yang akan diubah yang tertampil pada Form Ubah Pengguna
Akses. Admin memasukkan perubahan data pengguna akses pada form yang
disediakan, kemudian data pengguna akses yang baru dikirim ke servlet
simpan_ubahUser. Method pada servlet yang menangani pengubahan adalah
ubahUser(userakses,request.getParameter(“data_lama”)), kemudian di
dalam method ini terjadi pengecekan data pengguna akses yang diubah,
apakah data tersebut berhasil diubah atau tidak. Jika berhasil, maka di dalam
entity userakses tersimpan pengubahan data yang dilakukan dan ditampilkan
pada Form Daftar Pengguna Akses. Tetapi jika tidak berhasil maka data gagal
diubah dan ditampilkan pesan gagal diubah pada Form Ubah Pengguna Akses.
7. hapus pengguna akses
Gambar 3.11. Sequence Diagram hapus pengguna akses
52
: Admin : Form Tambah Jenis : Servlet tambahJenis : JenisBarang : Form Daftar Jenis
1: masukkan data jenis barang
2: data jenis barang
3: tambahJenis(jenisbarang)
4: Cek data JenisBarang
7: Tampil pesan gagal disimpan
5: Pesan error jika data tidak lengkap
6: Tampil psan error
8: Berhasil / Gagal disimpan
9: Penambahan jenis barang berhasil disimpan
10: Tampil pesan berhasil disimpan
11: Penambahan jenis barang gagal disimpan
12: Tampil pesan gagal disimpan
Sequence diagram pada gambar 3.11 menjelaskan bahwa aktor admin
melakukan proses penghapusan data pengguna akses. Proses ini dimulai dari
menekan tombol hapus pada baris pengguna akses yang akan dihapus datanya
yang ada pada Form Daftar Pengguna Akses, lalu sistem menampilkan data –
data yang akan dihapus yang tertampil pada Form Hapus Pengguna Akses.
Lalu dari Form Hapus Pengguna Akses mengirimkan kodeUser ke servlet
konfirmHapusUser. Method yang menangani hapus pengguna akses adalah
hapusUser(kodeUser). Dalam method ini data pengguna yang dihapus adalah
berdasarkan pada kodeUser, kemudian dicek apakah data dengan kodeUser
yang dihapus sudah benar – benar terhapus dalam entity userakses. Jika sudah
terhapus maka ditampilkan pesan bahwa data telah dihapus.
8. tambah jenis
Gambar 3.12. Sequence Diagram tambah jenis
53
: Admin : Form Ubah Jenis : Servlet simpan_ubahJenis
: JenisBarang : Form Daftar Jenis
1: menampilkan data yang akan diubah
2: masukkan perubahan jenis barang pada form yang disediakan
3: data jenis barang baru
4: ubahJenis(jenisbarang,request.getParameter("data_lama"))
5: Cek JenisBarang
10: Tampil pesan berhasil diubah
11: Data gagal diubah
12: Tampil pesan gagal diubah
6: Pesan error jika data tidak lengkap
7: Tampil pesan error
8: Berhasil / Gagal diubah
9: Data berhasil diubah
Sequence diagram pada gambar 3.12 menjelaskan bahwa aktor admin
melakukan proses penambahan data jenis barang. Proses ini dimulai dari
memasukkan data jenis barang sesuai dengan form yang disediakan pada Form
Tambah Jenis, kemudian data jenis barang dikirim ke servlet tambahJenis
dengan method tambahJenis(jenisbarang). Di dalam method
tambahJenis(jenisbarang) terdapat pengecekan tentang kelengkapan data jenis
barang dan data jenis barang yang dimasukkan sudah ada sebelumnya dalam
entity JenisBarang atau belum. Jika data yang dimasukkan lengkap dan atau
belum ada di dalam entity JenisBarang, maka data berhasil disimpan dan
ditampilkan pesan berhasil disimpan pada Form Daftar Jenis. Sebaliknya, jika
data yang dimasukkan tidak lengkap dan atau sudah ada dalam entity
JenisBarang maka data JenisBarang gagal disimpan dan ditampilkan pesan
gagal disimpan pada Form Tambah Jenis.
9. ubah jenis
Gambar 3.13. Sequence Diagram ubah jenis
54
: Admin : Form Hapus Jenis : Servlet konfirmHapusJenis
: JenisBarang : Form Daftar Jenis
1: Menampilkan data jenis barang yang akan dihapus
2: Tekan tombol hapus
3: kodeJenis
4: hapusJenis(kodeJenis)
5: Cek data JenisBarang
6: Gagal / Berhasil dihapus
7: Tampilkan pesan Gagal / Berhasil dihapus
Sequence diagram pada gambar 3.13 menjelaskan bahwa aktor admin
melakukan proses pengubahan data JenisBarang. Proses ini dimulai dari
admin memilih salah satu data JenisBarang yang akan diubah dengan
menekan tombol ubah pada Form Daftar Jenis Barang, lalu sistem
menampilkan data – data yang akan diubah yang tertampil pada Form Ubah
Jenis. Admin memasukkan perubahan data JenisBarang pada form yang
disediakan, kemudian data JenisBarang yang baru dikirim ke servlet
simpan_ubahJenis. Method pada servlet yang menangani pengubahan adalah
ubahJenis(jenisbarang,request.getParameter(“data_lama”)), kemudian di
dalam method ini terjadi pengecekan JenisBarang yang diubah apakah data
tersebut berhasil diubah atau tidak. Jika berhasil, maka di dalam entity
JenisBarang tersimpan pengubahan data yang dilakukan dan ditampilkan pada
Form Daftar Jenis. Tetapi jika tidak berhasil maka data gagal diubah dan
ditampilkan pesan gagal diubah.
10. hapus jenis
Gambar 3.14. Sequence Diagram hapus jenis
55
: Admin : Form Tambah Barang : Servlet tambahBarang : Daftar Barang : Form Daftar Barang
1: Masukkan data barang
2: data barang baru
3: tambahBarang(daftarbarang)
4: Cek daftar barang
7: Berhasil / Gagal disimpan
8: Gagal disimpan
9: Tampil pesan gagal disimpan
11: Tampil pesan berhasil disimpan
5: Pesan error jika data tidak lengkap
6: Tampil pesan error
10: Data berhasil disimpan
Sequence diagram pada gambar 3.14 menjelaskan bahwa aktor Admin
melakukan proses penghapusan data JenisBarang. Proses ini dimulai dari
memilih data yang akan dihapus pada Form Daftar Jenis, lalu dari Form Daftar
Jenis mengirimkan kodeJenis ke servlet hapusJenis, dan hasil data jenis
barang yang akan dihapus ditampilkan pada Form Hapus Jenis. Untuk
menghapus data jenis barang, tekan tombol hapus. Lalu dari Form Hapus
Jenis mengirimkan kodeJenis ke servlet konfirmHapusJenis. Method yang
menangani hapus jenisbarang adalah hapusJenis(kodeJenis). Dalam method
ini data JenisBarang yang dihapus adalah berdasarkan pada kodeJenis,
kemudian dicek apakah kodeJenis yang dihapus sudah benar – benar terhapus
dalam entity JenisBarang. Jika sudah terhapus maka ditampilkan pesan bahwa
data telah dihapus.
11. tambah barang
Gambar 3.15. Sequence Diagram tambah barang
56
: Admin : Form Ubah Barang
: Servlet simpan_ubahBarang : DaftarBarang : Form Daftar Barang
1: Menampilkan data barang
2: Masukkan perubahan data barang pada form yang tersedia
3: data barang baru
4: ubahBarang(daftarbarang, request.getParameter("data_lama"))
5: cek daftar barang
8: Gagal / Berhasil
9: Data gagal diubah
10: Tampilkan pesan gagal diubah
12: Tampil pesan berhasil diubah
6: Pesan error jika data tidak lengkap
7: Tampilkan pesan error
11: Data berhasil diubah
Sequence diagram pada gambar 3.15 menjelaskan bahwa aktor admin
melakukan proses penambahan data barang. Proses ini dimulai dari
memasukkan data barang sesuai dengan form yang disediakan pada Form
Tambah Barang, kemudian data barang dikirim ke servlet tambahBarang
dengan method tambahBarang(daftarbarang). Di dalam method
tambahBarang(daftarbarang) terdapat pengecekan tentang kelengkapan data
barang dan data barang yang dimasukkan sudah ada sebelumnya dalam entity
DaftarBarang atau belum. Jika data yang dimasukkan lengkap dan atau belum
ada di dalam entity DaftarBarang, maka data berhasil disimpan dan
ditampilkan pesan berhasil disimpan pada Form Daftar Barang. Sebaliknya,
jika data yang dimasukkan tidak lengkap dan atau sudah ada dalam entity
DaftarBarang maka data DaftarBarang gagal disimpan dan ditampilkan pesan
gagal disimpan pada Form Tambah Barang.
12. ubah barang
Gambar 3.16. Sequence Diagram ubah barang
57
: Admin : Form Hapus Barang : Servlet konfirmHapusBrg
: DaftarBarang : Form Daftar Barang
1: Menampilkan data barang yang akan dihapus
2: Tekan tombol hapus
3: kodeBrg
4: hapusBarang(kodeBrg)
5: Cek data barang
6: Gagal / Berhasil
7: Tampil pesan data gagal / berhasil dihapus
Sequence diagram pada gambar 3.16 menjelaskan bahwa aktor admin
melakukan proses pengubahan data barang. Proses ini dimulai dari admin
memilih salah satu data barang yang akan diubah dengan menekan tombol
ubah pada Form Daftar Barang, lalu sistem menampilkan data – data yang
akan diubah yang tertampil pada Form Ubah Barang. Admin memasukkan
perubahan data pegawai pada form yang disediakan, kemudian data barang
yang baru dikirim ke servlet simpan_ubahBarang. Method pada servlet yang
menangani pengubahan data barang adalah
ubahBarang(daftarbarang,request.getParameter(“data_lama”)), kemudian di
dalam method ini terjadi pengecekan data barang yang diubah apakah data
tersebut berhasil diubah atau tidak. Jika berhasil, maka di dalam entity Daftar
Barang tersimpan pengubahan data yang dilakukan dan ditampilkan pada
Form Daftar Barang. Tetapi jika tidak berhasil maka data gagal diubah dan
ditampilkan pesan gagal diubah pada Form Ubah Barang.
13. hapus barang
Gambar 3.17. Sequence Diagram hapus barang
58
: Admin : Form Tampil Barang
1: Menampilkan daftar barang yang disewakan
2: Tekan tombol cetak untuk mencetak brosur
3: Brosur berhasil dicetak
Sequence diagram pada gambar 3.17 menjelaskan bahwa aktor admin
melakukan proses penghapusan data barang. Proses ini dimulai dari menekan
tombol hapus pada baris barang yang akan dihapus datanya yang ada pada
Form Daftar Barang, lalu sistem menampilkan data – data yang akan dihapus
yang tertampil pada Form Hapus Barang. Lalu dari Form Hapus Barang
mengirimkan kodeBrg ke servlet konfirmHapusBrg. Method yang menangani
hapus barang adalah hapusBarang(kodeBrg). Dalam method ini data barang
yang dihapus adalah berdasarkan pada kodeBrg, kemudian dicek apakah data
dengan kodeBrg yang dihapus sudah benar – benar terhapus dalam entity
DaftarBarang. Jika sudah terhapus maka ditampilkan pesan bahwa data telah
dihapus.
14. print out brosur
Gambar 3.18. Sequence Diagram print out brosur
Sequence diagram pada gambar 3.18 menjelaskan bahwa aktor Admin
melakukan proses pencetakan brosur perlengkapan pesta yang disewakan,
59
: Admin/Pegawai
: Form Tambah Pelanggan : Servlet tambahPelanggan
: DaftarPelanggan : Form Daftar Pelanggan
2: data pelanggan
3: tambahPelanggan(daftarpelanggan)
4: cek data pelanggan
7: Gagal / Berhasil disimpan
8: Data gagal disimpan
9: Tampil pesan gagal disimpan
1: Masukkan data pelanggan
5: Pesan error jika data tidak lengkap
6: Tampil pesan error
10: Data berhasil disimpan
11: Tampil pesan berhasil disimpan
untuk diberikan kepada pelanggan. Urutan prosesnya adalah admin sudah
berada pada menu Daftar Barang, kemudian admin memilih link ke print out
brosur. Hasil yang ditampilkan adalah berupa Form Tampil Barang yang
menampilkan daftar barang yang disewakan secara keseluruhan (brosur).
Kemudian admin menekan tombol cetak untuk mencetak daftar tersebut.
15. tambah pelanggan
Gambar 3.19. Sequence Diagram tambah pelanggan
Sequence diagram pada gambar 3.19 menjelaskan bahwa aktor admin
melakukan proses penambahan data pelanggan. Proses ini dimulai dari
memasukkan data pelanggan sesuai dengan form yang disediakan pada Form
Tambah Pelanggan, kemudian data pelanggan dikirim ke servlet
tambahPelanggan dengan method tambahPelanggan(daftarpelanggan). Di
60
: Admin/Pegawai
: Form Ubah Pelanggan : Servlet simpan_ubahPelan
: DaftarPelanggan : Form Daftar Pelanggan
1: Menampilkan data pelanggan
2: Masukkan perubahan data pelanggan pada form yang tersedia
3: data pelanggan baru
4: ubahPelanggan(daftarpelanggan,request.getParameter("data_lama"))
5: Cek data pelanggan
8: Gagal/Berhasil diubah
9: Data gagal diubah
10: Tampil pesan gagal diubah
6: Pesan error jika data tidak lengkap
7: Tampil pesan error
11: Data berhasil diubah
12: Tampil pesan berhasil diubah
dalam method tambahPelanggan(daftarpelanggan) terdapat pengecekan
tentang kelengkapan data pelanggan dan data pelanggan yang dimasukkan
sudah ada sebelumnya dalam entity DaftarPelanggan atau belum. Jika data
yang dimasukkan lengkap dan atau belum ada di dalam entity
DaftarPelanggan, maka data berhasil disimpan dan ditampilkan pesan berhasil
disimpan pada Form Daftar Pelanggan. Sebaliknya, jika data yang dimasukkan
tidak lengkap dan atau sudah ada dalam entity DaftarPelanggan maka data
DaftarPelanggan gagal disimpan dan ditampilkan pesan gagal disimpan pada
Form Tambah Pelanggan.
16. ubah pelanggan
Gambar 3.20. Sequence Diagram ubah pelanggan
61
: AdminPegawai
: Form Hapus Pelanggan : Servlet konfirmHapusPelanggan : DaftarPelanggan : Form Daftar Pelanggan
1: Menampilkan data pelanggan yang akan dihapus
2: Tekan tombol hapus
3: kodePel
4: hapusPelanggan(kodePel)
5: Cek data pelanggan
6: Gagal / Berhasil dihapus
7: Tampil pesan data gagal / berhasil dihapus
Sequence diagram pada gambar 3.20 menjelaskan bahwa aktor admin
melakukan proses pengubahan data pelanggan. Proses ini dimulai dari admin
memilih salah satu data barang yang akan diubah dengan menekan tombol
ubah pada Form Daftar Pelanggan, lalu sistem menampilkan data – data yang
akan diubah yang tertampil pada Form Ubah Pelanggan. Admin memasukkan
perubahan data pelanggan pada form yang disediakan, kemudian data
pelanggan yang baru dikirim ke servlet simpan_ubahPelanggan. Method pada
servlet yang menangani pengubahan data pelanggan adalah
ubahPelanggan(daftarpelanggan,request.getParameter(“data_lama”)),
kemudian di dalam method ini terjadi pengecekan data pelanggan yang diubah
apakah data tersebut berhasil diubah atau tidak. Jika berhasil, maka di dalam
entity DaftarPelanggan tersimpan pengubahan data yang dilakukan dan
ditampilkan pada Form Daftar Pelanggan. Tetapi jika tidak berhasil maka data
gagal diubah dan ditampilkan pesan gagal diubah pada Form Ubah Pelanggan.
17. hapus pelanggan
Gambar 3.21. Sequence Diagram hapus pelanggan
62
: Admin/Pegawai
: Form Tambah Sewa : Servlet tambahSewa
: DaftarSewa : Form Daftar Sewa
2: daftarsewa
3: tambahSewa(daftarsewa)
4: Cek data sewa
7: Gagal / Berhasil disimpan
8: Data gagal disimpan
9: Tampil pesan gagal disimpan
5: Pesan error jika data tidak lengkap
6: Tampil pesan error
10: Data berhasil disimpan
11: Tampil pesan berhasil diubah
1: Masukkan data sewa
Sequence diagram pada gambar 3.21 menjelaskan bahwa aktor admin
melakukan proses penghapusan data pelanggan. Proses ini dimulai dari
menekan tombol hapus pada baris pelanggan yang akan dihapus datanya yang
ada pada Form Daftar Pelanggan, lalu sistem menampilkan data – data yang
akan dihapus yang tertampil pada Form Hapus Pelanggan. Lalu dari Form
Hapus Pelanggan mengirimkan kodePel ke servlet konfirmHapusPelanggan.
Method yang menangani hapus pelanggan adalah hapusPelanggan(kodePel).
Dalam method ini data barang yang dihapus adalah berdasarkan pada
kodePel, kemudian dicek apakah data dengan kodePel yang dihapus sudah
benar – benar terhapus dalam entity DaftarPelanggan. Jika sudah terhapus
maka ditampilkan pesan bahwa data telah dihapus.
18. tambah sewa
Gambar 3.22. Sequence Diagram tambah sewa
63
: Admin/Pegawai : Form Ubah Sewa : Servlet
simpan_ubahSewa : DaftarSewa : Form Daftar Persewaan
2: Masukkan perubahan data pada form yang tersedia
3: data sewa baru
4: ubahSewa(daftarsewa, request.getParameter("data_lama"))
5: Cek data sewa
8: Gagal / Berhasil
9: Data gagal diubah
10: Tampilkan pesan gagal diubah
6: Pesan error jika data tidak lengkap
11: Data berhasil diubah
7: Tampil pesan error
12: Tampil pesan berhasil diubah
1: Menampilkan data sewa yang akan diubah
Sequence diagram pada gambar 3.22 menjelaskan bahwa aktor Admin
atau Pegawai melakukan proses penambahan data sewa. Proses ini dimulai
dari memasukkan data pegawai sesuai dengan form yang disediakan pada
Form Tambah Sewa, kemudian data sewa dikirim ke servlet tambahSewa
dengan method tambahSewa(daftarsewa). Di dalam method
tambahSewa(daftarsewa) terdapat pengecekan tentang kelengkapan data sewa,
dan data sewa yang dimasukkan sudah ada sebelumnya dalam entity Daftar
Sewa atau belum. Jika data yang dimasukkan lengkap dan atau belum ada di
dalam entity DaftarSewa, maka data berhasil disimpan. Sebaliknya, jika data
yang dimasukkan tidak lengkap dan atau sudah ada dalam entity DaftarSewa
maka data gagal disimpan dan ditampilkan pesan gagal disimpan pada Form
Tambah Sewa.
19. ubah sewa
Gambar 3.23. Sequence Diagram ubah sewa
64
: Admin/Pegawai : Form Hapus Sewa : Servlet
konfirmHapusSewa : DaftarSewa : Form Daftar Sewa
1: Menampilkan data sewa yang akan dihapus
2: Tekan tombol hapus
3: kode
4: hapusSewa(kode)
5: cek data sewa
6: Berhasil/Gagal dihapus
7: Tampil pesan data berhasil / gagal dihapus
Sequence diagram pada gambar 3.23 menjelaskan bahwa aktor Admin
atau Pegawai melakukan proses pengubahan data sewa. Proses ini dimulai dari
admin memilih salah satu data sewa yang akan diubah dengan menekan
tombol ubah pada Form Daftar Persewaan, lalu sistem menampilkan data –
data yang akan diubah yang tertampil pada Form Ubah Sewa. Admin
memasukkan perubahan data sewa pada form yang disediakan, kemudian data
sewa yang baru dikirim ke servlet simpan_ubahSewa. Method pada servlet
yang menangani pengubahan data sewa adalah ubahSewa(daftarsewa,
request.getParameter(“data_lama”)), kemudian di dalam method ini terjadi
pengecekan data sewa yang diubah apakah data tersebut berhasil diubah atau
tidak. Jika berhasil, maka di dalam entity DaftarSewa tersimpan pengubahan
data yang dilakukan dan ditampilkan pada Form Ubah Sewa. Tetapi jika tidak
berhasil maka data gagal diubah dan ditampilkan pesan gagal diubah.
20. hapus sewa
Gambar 3.24. Sequence Diagram hapus sewa
65
: Admin/Pegawai : Form Sewa Barang : Servlet
simpan_sewaBarang : sewabarang : Form Daftar Peminjaman
2: data sewabarang
3: sewaBarang(sewa_kembali)
4: Cek data sewabarang
7: Gagal/Berhasil dismpan
8: Data gagal disimpan
9: Tampil pesan gagal disimpan
5: Pesan error jika data salah
6: Tampil pesan error
10: Data berhasil disimpan
11: Tampil pesan berhasil disimpan
1: Masukkan data sewabarang
Sequence diagram pada gambar 3.24 menjelaskan bahwa aktor Admin
atau Pegawai melakukan proses penghapusan data sewa. Proses ini dimulai
dari menekan tombol hapus pada baris sewa yang akan dihapus datanya yang
ada pada Form Daftar Sewa, lalu sistem menampilkan data – data yang akan
dihapus yang tertampil pada Form Hapus Sewa. Lalu dari Form Hapus Sewa
mengirimkan kode ke servlet konfirmHapusSewa. Method yang menangani
hapus sewa adalah konfirmHapusSewa(kode). Dalam method ini data sewa
yang dihapus adalah berdasarkan pada kodeSewa, kemudian dicek apakah
kodeSewa yang dihapus sudah benar – benar terhapus dalam entity Daftar
Sewa. Jika sudah terhapus maka ditampilkan pesan bahwa data telah dihapus.
21. sewa barang
Gambar 3.25. Sequence Diagram sewa barang
66
: Admin/Pegawai : Form Ubah Sewa Barang : Servlet
simpan_ubahSewaBrg : sewabarang : Form Daftar Peminjaman
3: data sewabarang baru
4: ubahSewaBrg(jum,kodeSwLama, request.getParameter("kodePelLama"), request.getParameter("kodeBarangLama"),sewa_kembali)
5: Cek data sewabarang
8: Gagal/Berhasil diubah
9: Data gagal diubah
10: Tampil pesan gagal diubah
6: Pesan error jika data tidak lengkap
7: Tampil pesan error
11: Data berhasil diubah
12: Tampil pesan data berhasil diubah
1: Menampilkan data sewabarang yang akan diubah
2: Masukkan perubahan data pada form yang tersedia
Sequence diagram pada gambar 3.25 menjelaskan bahwa aktor Admin
atau Pegawai melakukan proses penambahan data sewabarang. Proses ini
dimulai dari memasukkan data barang yang disewa sesuai dengan form yang
disediakan pada Form Sewa Barang, kemudian data sewabarang dikirim ke
servlet simpan_sewaBarang dengan method sewabarang(sewa_kembali). Di
dalam method sewabarang(sewa_kembali) terdapat pengecekan tentang
kelengkapan data sewabarang, dan data yang dimasukkan sudah ada
sebelumnya dalam entity sewabarang atau belum. Jika data yang dimasukkan
tidak lengkap dan atau sudah ada dalam entity sewabarang maka data gagal
disimpan dan ditampilkan pesan gagal disimpan pada Form Sewa Barang.
Sebaliknya, jika data yang dimasukkan lengkap dan atau belum ada di dalam
entity sewabarang, maka data berhasil disimpan.
22. ubah peminjaman barang
Gambar 3.26. Sequence Diagram Proses ubah peminjaman barang
67
: Admin/Pegawai
: Form Hapus Sewa Barang : Servlet konfirmHapusSewaBrg
: sewabarang : Form Daftar Peminjaman
2: Tekan tombol hapus
3: kodeSewa, kodeBarang
4: hapusSewaBrg(Kd_S,KdB);
5: Cek data sewabarang
6: Gagal/Berhasil dihapus
7: Tampil pesan gagal/berhasil dihapus
1: Menampilkan data sewabarang yang akan dihapus
Sequence diagram pada gambar 3.26 menjelaskan bahwa aktor Admin
atau Pegawai melakukan proses pengubahan data sewabarang. Proses ini
dimulai dari admin memilih salah satu data sewa yang akan diubah dengan
menekan tombol ubah pada Form Daftar Peminjaman, lalu sistem
menampilkan data – data yang akan diubah yang tertampil pada Form Ubah
Sewa Barang. Admin memasukkan perubahan data sewabarang pada form
yang disediakan, kemudian data sewabarang yang baru dikirim ke servlet
simpan_ubahSewaBrg. Method pada servlet yang menangani pengubahan
data sewabarang adalah
ubahSewa(jum,kodeSwLama,request.getParameter(“kodePelLama”),request.
getParameter(“kodeBarangLama”),sewa_kembali), kemudian di dalam
method ini terjadi pengecekan data sewabarang yang diubah berhasil diubah
atau tidak. Jika berhasil, maka di dalam entity sewabarang tersimpan
pengubahan data yang dilakukan dan ditampilkan pada Form Daftar
Peminjaman. Tetapi jika tidak berhasil maka data gagal diubah dan
ditampilkan pesan gagal diubah.
23. hapus peminjaman barang
Gambar 3.27. Sequence Diagram Proses hapus peminjaman barang
68
: Admin/Pegawai : Form Tambah Pengembalian : Servlet
dikembalikan : Form Daftar Pengembalian Barang
: Form Dikembalikan : pengembalianbarang
1: Menampilkan daftar peminjaman yang akan dikembalikan
2: Memilih salah satu pada daftar peminjaman yang akan dikembalikan
3: data sewabarang
4: data sewabarang
5: pengembalian(sewa_kembali)
6: Cek data pengembalian barang
9: Gagal/Berhasil disimpan
10: Data gagal disimpan
11: Tampil pesan gagal disimpan
13: Tampil pesan berhasil disimpan
7: Pesan error jika data tidak lengkap atau salah
8: Tampil pesan error
12: Data berhasil disimpan
Sequence diagram pada gambar 3.27 menjelaskan bahwa aktor Admin
atau Pegawai melakukan proses penghapusan data sewabarang. Proses ini
dimulai dari menekan tombol hapus pada baris sewabarang yang akan dihapus
datanya yang ada pada Form Daftar Peminjaman, lalu sistem menampilkan
data – data yang akan dihapus yang tertampil pada Form Hapus Sewa Barang.
Lalu dari Form Hapus Sewa Barang mengirimkan kodeSewa dan kodeBarang
ke servlet konfirmasiHapusSewaBrg. Method yang menangani hapus
sewabarang adalah hapusSewaBrg(Kd_S,KdB). Dalam method ini data
sewabarang yang dihapus adalah berdasarkan pada kodeSewa dan
kodeBarang, kemudian dicek apakah kodeSewa dan kodeBarang yang
dihapus sudah benar – benar terhapus dalam entity sewabarang. Jika sudah
terhapus maka ditampilkan pesan bahwa data telah dihapus.
24. tambah pengembalian
Gambar 3.28. Sequence Diagram Proses tambah pengembalian
69
Sequence diagram pada gambar 3.28 menjelaskan bahwa aktor Admin
atau Pegawai melakukan proses penambahan data pengembalian barang.
Proses ini dimulai dari membuka Form Tambah Pengembalian, form ini
menampilkan daftar peminjaman barang yang akan dikembalikan.
Selanjutnya, Admin atau Pegawai memilih barang yang dikembalikan pada
daftar peminjaman barang, kemudian sistem akan dikirim ke Form
Dikembalikan. Admin atau Pegawai memasukkan jumlah barang yang
dikembalikan, lalu tekan tombol simpan. Data pengembalianbarang dikirim ke
servlet dikembalikan dengan method pengembalian(sewa_kembali). Di dalam
method pengembalian(sewa_kembali) terdapat pengecekan tentang
kelengkapan data pengembalianbarang, dan data yang dimasukkan sudah ada
sebelumnya dalam entity pengembalianbarang atau belum. Jika data yang
dimasukkan tidak lengkap dan atau sudah ada dalam entity
pengembalianbarang maka data gagal disimpan dan ditampilkan pesan gagal
disimpan pada Form Tambah Pengembalian. Sebaliknya, jika data yang
dimasukkan lengkap dan atau belum ada di dalam entity pengembalianbarang,
maka data berhasil disimpan.
70
: Admin/Pegawai : Form Ubah Pengembalian
: Servlet simpan_ubahPengembalian
: pengembalianbarang : Form pengembalian
1: menampilkan data barang yang dikembalikan
2: masukkan perubahan data pada form yang tersedia
3: data baru, data lama
4: ubahPengembalian(juml,jumlR,kodSwLama, request.getParameter("kodePelLama"), request.getParameter("kodeBarangLama"),sewa_kembali)
5: Cek data pengembalianbarang
8: Gagal/Berhasil diubah
9: Data gagal diubah
10: Tampilkan pesan gagal diubah
6: Pesan error jika data tidak lengkap atau salah
7: Tampil pesan error
11: Data berhasil diubah
12: Tampil pesan berhasil diubah
25. ubah pengembalian
Gambar 3.29. Sequence Diagram ubah pengembalian
Sequence diagram pada gambar 3.29 menjelaskan bahwa aktor Admin
atau Pegawai melakukan proses pengubahan data pengembalianbarang. Proses
ini dimulai dari admin memilih salah satu data pengembalianbarang yang akan
diubah dengan menekan tombol ubah pada Form Pengembalian Barang, lalu
sistem menampilkan data – data yang akan diubah yang tertampil pada Form
Ubah Pengembalian. Admin memasukkan perubahan data
pengembalianbarang pada form yang disediakan, kemudian data
pengembalianbarang yang baru dikirim ke servlet simpan_ubahPengembalian.
Method pada servlet yang menangani pengubahan data pengembalianbarang
adalah
71
: Admin/Pegawai : Form Hapus Pengembalian : Servlet
konfirmHapusPengembalian : pengembalianbarang
: Form pengembalian
1: Menampilkan data pengembalianbarang yang akan dihapus
2: Tekan tombol hapus
3: kodeSewa,kodeBarang
4: hapusPengembalian(Kd_S,KdB)
5: cek data pengembalianbarang
6: Gagal/Berhasil
7: Data berhasil/gagal dihapus dan tampilkan pesan
ubahPengembalian(juml,jumlR,kodSwLama,request.getParameter(kodePelLa
ma), request.getParameter("kodeBarangLama"),sewa_kembali), kemudian di
dalam method ini terjadi pengecekan data pengembalianbarang yang diubah
berhasil diubah atau tidak. Jika berhasil, maka di dalam entity
pengembalianbarang tersimpan pengubahan data yang dilakukan dan
ditampilkan pada Form Pengembalian Barang. Tetapi jika tidak berhasil maka
data gagal diubah dan ditampilkan pesan gagal diubah.
26. hapus pengembalian
Gambar 3.30. Sequence Diagram hapus pengembalian
Sequence diagram pada gambar 3.30 menjelaskan bahwa aktor Admin
atau Pegawai melakukan proses penghapusan data pengembalianbarang.
Proses ini dimulai dari menekan tombol hapus pada baris pengembalianbarang
yang akan dihapus datanya yang ada pada Form Pengembalian Barang, lalu
sistem menampilkan data – data yang akan dihapus yang tertampil pada Form
72
: Form Tambah Transaksi : Admin/Pegawai
: Servlet tambahTransaksi
: transaksi_sewa : Form Daftar Transaksi
2: data transaksi_sewa
3: tambahTransaksi(transaksi_sewa)
4: Cek data transaksi
7: Gagal/Berhasil disimpan
10: Data gagal disimpan
11: Tampil pesan gagal disimpan
5: Pesan error jika data tidak lengkap atau salah
6: Tampil pesan error
8: Data berhasil disimpan
9: Tampil pesan berhasil disimpan
1: Masukkan data transaksi
Hapus Pengembalian. Lalu dari Form Hapus Pengembalian mengirimkan
kodeSewa dan kodeBarang ke servlet konfirmasiHapusPengembalian.
Method yang menangani hapus pengembalianbarang adalah
hapusPengembalian(Kd_S,KdB). Dalam method ini data pengembalianbarang
yang dihapus adalah berdasarkan pada kodeSewa dan kodeBarang, kemudian
dicek apakah kodeSewa dan kodeBarang yang dihapus sudah benar – benar
terhapus dalam entity pengembalianbarang. Jika sudah terhapus maka
ditampilkan pesan bahwa data telah dihapus.
27. tambah transaksi
Gambar 3.31. Sequence Diagram tambah transaksi
Sequence diagram pada gambar 3.31 menjelaskan bahwa aktor Admin
atau Pegawai melakukan proses penambahan data transaksi. Proses ini dimulai
dari memasukkan data transaksi baru sesuai dengan form yang disediakan
73
: Admin/Pegawai : Form Ubah Transaksi : Servlet
simpan_ubahTransaksi
: transaksi_sewa : Form Daftar Transaksi
2: Masukkan perubahan data transaksi pada form yang tersedia
3: data transaksi_sewa baru, data transaksi_sewa lama
4: ubahTransaksi(transaksi_sewa, Integer.parseInt(request.getParameter("data_lama")))
5: Cek data transaksi_sewa
8: Gagal/Berhasil
11: Data gagal diubah
12: Tampil pesan gagal diubah
6: Pesan error jika data tidak lengkap atau salah
7: Tampil pesan error
9: Data berhasil diubah
10: Tampil pesan berhasil diubah
1: Menampilkan data transaksi
pada Form Tambah Transaksi, kemudian data transaksi dikirim ke servlet
tambahTransaksi dengan method tambahTransaksi(transaksi_sewa). Di dalam
method tambahTransaksi(transaksi_sewa) terdapat pengecekan tentang
kelengkapan data transaksi. Jika data yang dimasukkan lengkap dan atau
belum ada di dalam entity transaksi_sewa, maka data berhasil disimpan.
Sebaliknya, jika data yang dimasukkan tidak lengkap dan atau sudah ada
dalam entity transaksi_sewa maka data transaksi gagal disimpan dan
ditampilkan pesan gagal disimpan pada Form Tambah Transaksi.
28. ubah transaksi
Gambar 3.32. Sequence Diagram ubah transaksi
74
: Admin/Pegawai
: Form Hapus Transaksi : Servlet konfirmHapusTrans : transaksi_sewa : Form Daftar Transaksi
3: kodeTransaksi
4: hapusTransaksi(kode)
2: Tekan tombol hapus
5: Cek data transaksi_sewa
6: Gagal/Berhasil
7: Data Gagal/Berhasil dihapus dan tampil pesan
1: Menampilkan data transaksi yang akan dihapus
Sequence diagram pada gambar 3.32 menjelaskan bahwa aktor Admin
atau Pegawai melakukan proses pengubahan data transaksi. Proses ini dimulai
dari admin memilih salah satu data transaksi yang akan diubah dengan
menekan tombol ubah pada Form Daftar Transaksi, lalu sistem menampilkan
data – data yang akan diubah yang tertampil pada Form Ubah Transaksi.
Admin memasukkan pengubahan data transaksi pada form yang disediakan,
kemudian data transaksi yang baru dikirim ke servlet simpan_ubahTransaksi.
Method pada servlet yang menangani pengubahan data transaksi adalah
ubahTransaksi(transaksi_sewa,Integer.parseInt(request.getParameter(“data_
lama”))), kemudian di dalam method ini terjadi pengecekan data transaksi
yang diubah apakah data tersebut berhasil diubah atau tidak. Jika berhasil,
maka di dalam entity transaksi_sewa tersimpan pengubahan data yang
dilakukan dan ditampilkan pada Form Daftar Transaksi. Tetapi jika tidak
berhasil maka data gagal diubah dan ditampilkan pesan gagal diubah.
29. hapus transaksi
Gambar 3.33. Sequence Diagram hapus transaksi
75
: Admin/Pegawai
: Form Daftar Transaksi : Servlet detailTransaksi
: transaksi_sewa : Form Detail Transaksi
1: tekan tombol detail untuk melihat detail data transaksi
2: kode_tran,kode_Sw
3: lihatTransaksi(kode_tran);LihatBarang3(kode_Sw);dataSewaBrg2(kode_Sw);dataSewaBrg5(kode_tran,kode_Sw);lihatKode(kode_Sw)
4: tampilkan detail data transaksi
Sequence diagram pada gambar 3.33 menjelaskan bahwa aktor Admin
atau Pegawai melakukan proses penghapusan data transaksi. Proses ini
dimulai dari menekan tombol hapus pada baris transaksi yang akan dihapus
datanya yang ada pada Form Daftar Transaksi, lalu sistem menampilkan data –
data yang akan dihapus yang tertampil pada Form Hapus Transaksi. Lalu dari
Form Hapus Transaksi mengirimkan kodeTransaksi ke servlet
konfirmasiHapusTrans. Method yang menangani hapus transaksi adalah
hapusTransaksi(kode). Dalam method ini data transaksi yang dihapus adalah
berdasarkan pada kodeTransaksi, kemudian dicek apakah kodeTransaksi yang
dihapus sudah benar – benar terhapus dalam entity transaksi_sewa. Jika sudah
terhapus maka ditampilkan pesan bahwa data telah dihapus.
30. detail transaksi
Gambar 3.34. Sequence Diagram detail transaksi
Sequence diagram pada gambar 3.34 menjelaskan bahwa aktor Admin
atau Pegawai melakukan proses lihat detail data pegawai. Proses ini dimulai
76
: Admin/Pegawai
: Form Detail Transaksi
1: Menampilkan laporan nota transaksi yang akan dicetak
2: Tekan tombol cetak untuk mencetak nota transaksi
3: Nota transaksi berhasil dicetak
dari admin menekan tombol detail untuk melihat data transaksi pada Form
Daftar Transaksi. Pada saat tombol detail ditekan, maka kodeTransaksi
dikirimkan ke servlet detailTransaksi. Method servlet yang menangani proses
ini adalah
lihatTransaksi(kode_tran);lihatBarang3(kode_Sw);dataSewaBrg2(kode_Sw);
dataSewaBrg5(kode_tran,kode_Sw);lihatKode(kode_Sw), dimana data yang
ditampilkan adalah data transaksi secara lengkap yang ada pada entity
transaksi_sewa. Detail data transaksi ditampilkan pada Form Detail Transaksi.
31. Print out nota persewaan
Gambar 3.35. Sequence Diagram Print out nota persewaan
Sequence diagram pada gambar 3.35 menjelaskan bahwa aktor Admin
atau Pegawai melakukan proses mencetak nota transaksi persewaan. Proses ini
dimulai dari admin sudah berada pada Form Detail Transaksi. Pada menu ini
terdapat tombol cetak untuk mencetak nota transaksi persewaan. Pada saat
tombol cetak ditekan, maka ditampilkan fasilitas untuk cetak.
77
: Admin/Pegawai/Pelanggan : Form Tampil Barang : Servlet Brosur : Form Halaman Admin
1: Pilih sub menu Tampil Barang
2: daftarbarang, jenisbarang
3: Menampilkan daftar barang yang disewakan
32. tampil barang
Gambar 3.36. Sequence Diagram tampil barang
Sequence diagram pada gambar 3.36 menjelaskan bahwa aktor Admin
atau Pegawai atau Pelanggan melakukan proses menampilkan daftar barang
yang disewakan secara keseluruhan. Menu untuk menampilkan daftar barang
tersebut ada pada menu utama. Proses ini dimulai dari ketika ketiga aktor
tersebut memilih menu tampil barang, kemudian daftar barang dikirimkan ke
Servlet Brosur, dan hasilnya ditampilkan pada Form Tampil Barang.
78
: Form Pencarian : Servlet cariPerlengkapan
: Daftar Barang : Form Hasil Pencarian :
Admin/Pegawai/Pelanggan
1: pilih radio button berdasarkan nama jenis barang
2: masukkan kata yang dicari
3: tekan tombol cari
4: getCariJenis(masukan)
5: cek daftar barang
6: Pesan kesalahan jika data masukan salah
7: Tampilkan pesan kesalahan
8: Gagal/Berhasil
9: Data Gagal/Berhasil dicari
33. pencarian perlengkapan berdasarkan nama jenis barang
Gambar 3.37. Sequence Diagram pencarian perlengkapan berdasarkan nama
jenis barang
Sequence diagram pada gambar 3.37 menjelaskan bahwa aktor Admin
atau Pegawai atau Pelanggan melakukan proses pencarian perlengkapan
berdasarkan nama jenis barang. Proses pencarian ini dimulai dari pilih radio
button berdasarkan nama jenis barang, lalu memasukkan kata yang dicari,
kemudian tekan tombol cari. Proses pencarian dilakukan pada Form
Pencarian. Kemudian dari Form Pencarian mengirimkan kata yang dicari ke
Servlet cariPerlengkapan, dimana method yang menangani proses pencarian
ini adalah getCariJenis(masukan). Dalam method ini terjadi pengecekan, jika
79
: Admin/Pegawai/Pelanggan : Form Pencarian : Servlet
cariPerlengkapan : Daftar Barang : Form hasil pencarian
1: Pilih radio button berdasarkan nama barang
2: Masukkan kata yang dicari
3: tekan tombol cari
4: CariNama(masukan)
5: Cek data masukan
6: Pesan kesalahan jika data masukan salah
7: Tampilkan pesan kesalahan
8: Gagal/Berhasil
9: Data gagal/berhasil dicari
masukan salah atau tidak lengkap maka ditampilkan pesan kesalahan. Tetapi
jika masukan benar maka ditampilkan daftar barang pada Form Hasil
Pencarian sesuai dengan kata yang dicari.
34. pencarian perlengkapan berdasar nama barang
Gambar 3.38. Sequence Diagram pencarian perlengkapan berdasar
nama barang
Sequence diagram pada gambar 3.38 menjelaskan bahwa aktor Admin
atau Pegawai atau Pelanggan melakukan proses pencarian barang berdasarkan
nama barang. Proses pencarian ini dimulai dari pilih radio button berdasarkan
80
nama barang, lalu memasukkan kata yang dicari, kemudian tekan tombol cari.
Proses pencarian dilakukan pada Form Pencarian. Kemudian dari Form
Pencarian mengirimkan kata yang dicari ke Servlet cariPerlengkapan, dimana
method yang menangani proses pencarian ini adalah CariNama(masukan).
Dalam method ini terjadi pengecekan Dalam method ini terjadi pengecekan,
jika masukan salah atau tidak lengkap maka ditampilkan pesan kesalahan.
Tetapi jika masukan benar maka ditampilkan daftar barang pada Form Hasil
Pencarian sesuai dengan kata yang dicari.
35. pencarian stok perlengkapan berdasar bulan
81
: Admin/Pegawai/Pelanggan : Form Pencarian
: Servlet cariPerlengkapan : DaftarBarang : Form Hasil Pencarian
1: pilih radio button berdasarkan bulan
2: pilih bulan pada drop down
5: bulan yang dipilih
6: Cek bulan
7: Pesan error jika bulan tidak dipilih
8: Tampil pesan gagal dicari9: Jika yang dipilih bulan Januari
3: tekan tombol cari
4: bulan yang dipilih
10: CariStokJan()
11: Tampil hasil stok perlengkapan bulan Januari
12: Jika yang dipilih bulan Februari
13: CariStokFeb()
14: Tampil hasil stok perlengkapan bulan Februari
15: Jika yang dipilih bulan Maret
16: CariStokMar()
17: Tampil hasil stok perelengkapan bulan Maret
18: Jika yang dipilih bulan April
19: CariStokApr()
20: Tampil hasil stok perlengkapan bulan April
21: Jika yang dipilih bulan Mei
22: CariStokMei()
23: Tampil hasil stok perlengkapan bulan Mei
24: Jika yang dipilih bulan Juni
25: CariStokJuni()
26: Tampil hasil stok perlengkapan bulan Juni
27: Jika yang dipilih bulan Juli
28: CariStokJuli()
29: Tampil hasil stok perlengkapan bulan Juli
30: Jika yang dipilih bulan Agustus
31: CariStokAgust()
32: Tampil hasil stok perlengkapan bulan Agustus
33: Jika yang dipilih bulan September
34: CariStokSept()
35: Tampil hasil stok perlengkapan bulan September
36: Jika yang dipilih bulan Oktober
37: CariStokOkt()
38: Tampil hasil stok perlengkapan bulan Oktober
39: Jika yang dipilih bulan November
40: CariStokNov()
41: Tampil hasil stok perlengkapan bulan November
42: Jika yang dipilih bulan Desember
43: CariStokDes()
44: Tampil hasil stok perlengkapan bulan Desember
Gambar 3.39. Sequence Diagram pencarian perlengkapan berdasar bulan
82
Sequence diagram pada gambar 3.39 menjelaskan bahwa aktor Admin
atau Pegawai atau Pelanggan melakukan proses pencarian stok perlengkapan
berdasarkan bulan. Proses pencarian ini dimulai dari pilih radio button
berdasarkan nama barang, memilih bulan pada drop down, kemudian tekan
tombol cari. Proses pencarian dilakukan pada Form Pencarian. Kemudian dari
Form Pencarian mengirimkan bulan yang dipilih ke Servlet cariPerlengkapan.
Bulan yang dipilih dicek, ada dalam entity DaftarBarang atau tidak. Untuk
bulan Januari ditangani oleh method CariStokJan(), bulan Februari oleh
method CariStokFeb(), bulan Maret oleh method CariStokMar(), bulan April
oleh method CariStokApr(), bulan Mei oleh method CariStokMei(), bulan Juni
oleh method CariStokJuni(), bulan Juli oleh method CariStokJuli(), bulan
Agustus oleh method CariStokAgust(), bulan September oleh method
CariStokSept(), bulan Oktober oleh method CariStokOkt(), bulan November
oleh method CariStokNov(), bulan Desember oleh method CariStokDes().
Hasil pencarian ditampilkan pada Form Hasil Pencarian.
83
: Admin/Pegawai/Pelanggan
: Form Pencarian : Servlet cariPerlengkapan
: temp_sewabrg2 : Form Hasil Pencarian
1: Pilih radio button berdasarkan nama pelanggan
2: Masukkan kata yang dicari
3: tekan tombol cari
4: hasil_CariPinjam_NamaPel(masukan)
7: Tampilkan pesan kesalahan
5: Cek data masukan
6: Pesan kesalahan jika masukan salah
8: Gagal / Berhasil
9: Data gagal/berhasil dicari
36. pencarian peminjaman berdasar nama pelanggan
Gambar 3.40. Sequence Diagram pencarian peminjaman berdasar
nama pelanggan
Sequence diagram pada gambar 3.40 menjelaskan bahwa aktor Admin
atau Pegawai atau Pelanggan melakukan proses pencarian peminjaman
berdasarkan nama pelanggan. Proses pencarian ini dimulai dari pilih radio
button berdasarkan nama pelanggan, lalu memasukkan kata yang dicari,
kemudian tekan tombol cari. Proses pencarian dilakukan pada Form
Pencarian. Kemudian dari Form Pencarian mengirimkan kata yang dicari ke
servlet cariPerlengkapan, dimana method yang menangani proses pencarian
ini adalah hasil_CariPinjam_NamaPel(masukan). Dalam method ini terjadi
84
pengecekan, jika masukan salah atau tidak lengkap maka ditampilkan pesan
kesalahan. Tetapi jika masukan benar maka ditampilkan daftar barang pada
Form Hasil Pencarian sesuai dengan kata yang dicari.
3.2.3. Perancangan Database
Dalam tahap ini akan dilakukan proses translasi dari class diagram yang sudah
dibuat pada Gambar 3.4 menjadi fisikal data model yang digambarkan dalam bentuk
tabel – tabel.
Database yang akan digunakan adalah sebanyak 11 tabel yaitu tabel
userakses, tabel pegawai, tabel jenisbarang, tabel daftarbarang, tabel daftarpelanggan,
tabel daftarsewa, tabel sewabarang, tabel pengembalianbarang, tabel transaksi_sewa,
tabel temp_sewabrg, dan tabel temp_sewabrg2.
Fisikal data model dari sistem yang dibuat dapat dilihat sebagai berikut:
1. Tabel userakses
Tabel userakses merupakan tabel yang digunakan untuk menyimpan
data yang diperoleh dari objek class userakses.
Tabel 3.1. Perancangan database untuk tabel userakses
2. Tabel pegawai
Tabel pegawai merupakan tabel yang digunakan untuk menyimpan
data yang diperoleh dari objek class Pegawai.
Nama Kolom Tipe Data Panjang Key kodeUser Varchar 30 Primary Key username Varchar 20 passwd Varchar 12 level Varchar 8
85
Tabel 3.2. Perancangan database untuk tabel pegawai
3. Tabel jenisbarang
Tabel jenisbarang merupakan tabel yang digunakan untuk menyimpan
data yang diperoleh dari objek class JenisBarang.
Tabel 3.3. Perancangan database untuk tabel jenisbarang
4. Tabel daftarbarang
Tabel daftarbarang merupakan tabel yang digunakan untuk menyimpan
data yang diperoleh dari objek class DaftarBarang.
Tabel 3.4. Perancangan database untuk tabel daftarbarang
Nama Kolom Tipe Data Panjang Key kodeBarang Varchar 10 Primary Key kodeJenis Varchar 10 Foreign Key nama Varchar 50 satuan Varchar 10 harga Int 11 hargaDenda Int 11 stok_awal Int 11 stok_jan Int 11 stok_feb Int 11 stok_mar Int 11 stok_apr Int 11 stok_mei Int 11 stok_jun Int 11 stok_jul Int 11 stok_agust Int 11 stok_sept Int 11 stok_okt Int 11
Nama Kolom Tipe Data Panjang Key kodePeg Varchar 20 Primary Key nama Varchar 30 alamat Varchar 50 notelp Varchar 30 status Varchar 30
Nama Kolom Tipe Data Panjang Key kodeJenis Varchar 10 Primary Key nama_jenis Varchar 30
86
stok_nov Int 11 stok_des Int 11
5. Tabel daftarpelanggan
Tabel daftarpelanggan merupakan tabel yang digunakan untuk
menyimpan data yang diperoleh dari objek class daftarpelanggan.
Tabel 3.5. Perancangan database untuk tabel daftarpelanggan
Nama Kolom Tipe Data Panjang Key kodePel Varchar 20 Primary Key nama Varchar 50 alamat Varchar 50 notelp Varchar 30
6. Tabel daftarsewa
Tabel daftarsewa merupakan tabel yang digunakan untuk menyimpan
data yang diperoleh dari objek class DaftarSewa.
Tabel 3.6. Perancangan database untuk tabel daftarsewa
Nama Kolom Tipe Data Panjang Key kodeSewa Int 11 Primary Key kodePel Varchar 20 Foreign Key tglSewa Date tglHrsKembali Date
7. Tabel sewabarang
Tabel sewabarang merupakan tabel yang digunakan untuk menyimpan
data yang diperoleh dari objek class Sewa_Kembali untuk operasi
peminjaman barang.
Tabel 3.7. Perancangan database untuk tabel sewabarang
Nama Kolom Tipe Data Panjang Key kodeSewa Int 11 Primary Key kodePel Varchar 20 Primary Key kodeBarang Varchar 20 Primary Key jumlahPinjam Int 11 jumlahKembali Int 11
87
jumBrgRusak_Hilang Int 11 hargaSatuan Int 11 SubTotal Int 11 tglSewa Date tglHrsKembali Date tglKembali Date dendaRusak_Hilang Int 11
Tabel sewabarang mempunyai tabel – tabel pendukung sebagai
berikut:
a. Tabel pengembalianbarang
Tabel pengembalianbarang merupakan tabel yang digunakan
untuk menyimpan data yang diperoleh dari objek class
Sewa_Kembali untuk operasi pengembalian barang.
Tabel 3.8. Perancangan database untuk tabel
Pengembalianbarang
b.
b. Tabel temp_sewabrg
Tabel temp_sewabrg merupakan tabel yang digunakan untuk
menyimpan data yang diperoleh dari objek class temp_sewabrg.
Tabel 3.9. Perancangan database untuk tabel temp_sewabrg
Nama Kolom Tipe Data Panjang Key kodeSewa Int 11 Primary Key kodeBrg Varchar 30 Primary Key namaBrg Varchar 50 jumlah Int 11
Nama Kolom Tipe Data Panjang Key kodeSewa Int 11 Primary Key kodePel Varchar 20 Primary Key kodeBarang Varchar 20 Primary Key jumlahPinjam Int 11 jumlahKembali Int 11 jumBrgRusak_Hilang Int 11 tglKembali Date dendaRusak_Hilang Int 11
88
hargaSatuan Int 11 SubTotal Int 11
c. Tabel temp_sewabrg2
Tabel temp_sewabrg2 merupakan tabel yang digunakan untuk
menyimpan data yang diperoleh dari objek class temp_sewabrg2.
Tabel 3.10. Perancangan database untuk tabel temp_sewabrg2
Nama Kolom Tipe Data Panjang Key kodeSewa Int 11 Primary Key kodePel Varchar 20 Primary Key namaPel Varchar 50 kodeBarang Varchar 20 Primary Key namaBarang Varchar 50 jumlah Int 11 hargaSatuan Int 11 SubTotal Int 11 tglSewa Int 11 tglHrsKembali Int 11
8. Tabel transaksi_sewa
Tabel transaksi_sewa merupakan tabel yang digunakan untuk
menyimpan data yang diperoleh dari objek class transaksi_sewa.
Tabel 3.11. Perancangan database untuk tabel transaksi_sewa
Nama Kolom Tipe Data Panjang Key kodeTransaksi Int 11 Primary Key kodeSewa Int 11 Primary Key totalHarga Int 11 transport Int 11 uangMuka Int 11 totalBayar Int 11 dendaBrgRusak_Hilang Int 11 totalByr2 Int 11
89
3.2.4. Perancangan User Interface
3.2.4.1.Perancangan Menu
Masing – masing user mempunyai kemampuan akses sendiri – sendiri. Oleh
karena itu, dibuat tampilan menu untuk membedakannya yang dapat dilihat pada
gambar desain menu sebagai berikut:
1. Form Menu Utama
Gambar 3.41. Form Menu Utama
Gambar 3.41 merupakan form menu utama untuk semua user.
Pencarian perlengkapan, tampil barang, lihat kontak, dan lihat gallery foto
boleh dilakukan oleh semua user.
Created by aniez
PERSEWAAN PERLENGKAPAN PESTA
U.D. “ROSARI” TDUP/SIUP NO. : 113/11/12/TDUP/VII/1998
JL. Gelarsena I/3 Jonggrangan Baru, Telp. (0272) 325540,
Klaten 574355
LOGO
MENU ♦ Pencarian Perlengkapan ♦ Tampil Barang ♦ Lihat Kontak ♦ Lihat Galery Foto
90
2. Form Menu Login
Gambar 3.42. Form Menu Login
Gambar 3.42 merupakan form menu login untuk semua pegawai
maupun admin. Halaman login ini berada pada halaman yang terpisah dari
halaman menu utama.
PERSEWAAN PERLENGKAPAN PESTA
U.D. “ROSARI” TDUP/SIUP NO. : 113/11/12/TDUP/VII/1998
JL. Gelarsena I/3 Jonggrangan Baru, Telp. (0272) 325540, Klaten 574355
LOGO
Silakan Login
Login hanya boleh dilakukan oleh petugas UD. ROSARI
Created by aniez
User Name
Password
LOGIN BATAL
91
PERSEWAAN PERLENGKAPAN PESTA
U.D. “ROSARI” TDUP/SIUP NO. : 113/11/12/TDUP/VII/1998
JL. Gelarsena I/3 Jonggrangan Baru, Telp. (0272) 325540,
Klaten 574355
Created by aniez
MENU • Daftar Pegawai • Lihat Daftar Pengguna • Daftar Jenis • Daftar Barang Selamat Datang • Daftar Pelanggan Ini adalah halaman Admin. Admin dapat • Daftar Sewa: melakukan akses – akses seperti yang disedia-
Persewaan kan pada menu di samping. Pengembalian Selamat Bekerja ☺
• Transaksi Persewaan • Pencarian Perlengkapan • Tampil Barang • Logout
3. Form Menu Admin
Gambar 3.43. Form Menu Admin
Setelah Admin berhasil melakukan login, maka akan masuk pada menu
admin. Menu admin terdiri dari beberapa sub menu, yaitu daftar pegawai, lihat
daftar pengguna, daftar jenis, daftar barang, daftar pelanggan, daftar sewa
yang meliputi persewaan dan pengembalian barang, transaksi persewaan,
pencarian perlengkapan, tampil barang, dan logout.
LOGO
92
4. Form Menu Pegawai
Gambar 3.44. Form Menu Pegawai
Setelah Pegawai berhasil melakukan login, maka akan masuk pada
menu Pegawai. Menu Pegawai terdiri dari beberapa sub menu, yaitu daftar
pelanggan, daftar sewa yang terdiri dari persewaan dan pengembalian barang,
transaksi persewaan, pencarian perlengkapan, tampil barang dan logout.
3.2.4.2.Perancangan Input
Perancangan input pada pembuatan sistem informasi ini adalah sebagai
berikut:
MENU
• Daftar Pelanggan • Daftar Sewa : Selamat Datang
Persewaan Ini adalah halaman Pegawai. Pegawai dapat Pengembalian melakukan akses – akses seperti yang disedia-
• Transaksi Persewaan kan pada menu di samping. • Pencarian Perlengkapan Selamat Bekerja ☺ • Tampil Barang • Logout
PERSEWAAN PERLENGKAPAN PESTA
U.D. “ROSARI” TDUP/SIUP NO. : 113/11/12/TDUP/VII/1998
JL. Gelarsena I/3 Jonggrangan Baru, Telp. (0272) 325540,
Klaten 574355
LOGO
Created by aniez
93
1. Form Login
Gambar 3.45. Form Login
Gambar 3.45 merupakan form untuk melakukan login sebelum masuk
ke pengoperasian sistem, dengan memasukkan usename dan password dengan
benar. Tombol login untuk masuk ke sistem, tombol batal untuk membatalkan
proses login.
2. Form Tambah Pegawai
Tambah Pegawai Kode Pegawai : (Nomor KTP) Nama Pegawai : Alamat : No Telpon : Status :
Gambar 3.46. Form Tambah Pegawai
Gambar 3.46 merupakan form untuk mendaftarkan pegawai baru ke
dalam sistem. Tombol “SIMPAN” digunakan untuk menyimpan data pegawai
LOGIN BATAL
LOGIN Username Password
SIMPAN BATAL
94
baru ke dalam sistem, sedangkan tombol “BATAL” digunakan untuk
membatalkan pendaftaran pegawai baru.
3. Form Tambah Pengguna Akses
Tambah Pengguna Akses
Nama Username Password Level
Gambar 3.47. Form Tambah Pengguna Akses
Gambar 3.47 merupakan form untuk mendaftarkan pengguna akses
baru ke dalam sistem. Tombol “SIMPAN” digunakan untuk menyimpan data
pengguna akses baru ke dalam sistem, sedangkan tombol “BATAL”
digunakan untuk membatalkan pendaftaran pengguna akses baru.
SIMPAN BATAL
95
4. Form Tambah Pelanggan
Tambah Pelanggan
Kode Pelanggan (Nomor KTP) Nama Pelanggan Alamat No Telpon
Gambar 3.48. Form Tambah Pelanggan
Gambar 3.48 merupakan form untuk mendaftarkan pelanggan baru ke
dalam sistem. Tombol “SIMPAN” digunakan untuk menyimpan data
pelanggan baru ke dalam sistem, sedangkan tombol “BATAL” digunakan
untuk membatalkan pendaftaran pelanggan baru.
5. Form Tambah Jenis Barang
Tambah Jenis Barang Kode Jenis Nama Jenis
Gambar 3.49. Form Tambah Jenis Barang
Gambar 3.49 merupakan form untuk menambah jenis barang ke dalam
sistem. Tombol “SIMPAN” digunakan untuk menyimpan jenis barang ke
SIMPAN BATAL
SIMPAN BATAL
96
dalam sistem, sedangkan tombol “BATAL” digunakan untuk membatalkan
penambahan jenis barang.
6. Form Tambah Barang
Tambah Barang
Kode Barang Nama Jenis Nama Barang Satuan Buah m2 Unit Harga Harga Denda Stok
Gambar 3.50. Form Tambah Barang
Gambar 3.50 merupakan form untuk menambah barang baru ke dalam
sistem. Tombol “SIMPAN” digunakan untuk menyimpan data barang baru ke
dalam sistem, sedangkan tombol “BATAL” digunakan untuk membatalkan
penambahan barang baru.
SIMPAN BATAL
97
7. Form Tambah Sewa
Pendaftaran Persewaan
Nama Pelanggan Tanggal Sewa Tanggal Harus Kembali
Gambar 3.51. Form Tambah Sewa
Gambar 3.51 merupakan form untuk pendaftaran persewaan ke dalam
sistem. Data – data yang dimasukkan adalah Nama Pelanggan, Tanggal Sewa
dan Tanggal Harus Kembali. Kemudian tekan tombol “SIMPAN” untuk
menyimpan data ke dalam sistem, sedangkan tombol “BATAL” digunakan
untuk membatalkan proses pendaftaran persewaan.
BATAL SIMPAN
Bulan Tahun
Tahun Bulan
Pilih Pelanggan
Tanggal
Tanggal
98
8. Form Sewa Barang
Sewa Barang Kode Sewa Kode Pelanggan Nama Pelanggan Tanggal Sewa Tanggal Harus Kembali Nama Barang Jumlah Pinjam
Gambar 3.52. Form Sewa Barang
Gambar 3.52 merupakan form untuk menyewa barang. Data kode
sewa, kode pelanggan, nama pelanggan, tanggal sewa dan tanggal harus
kembali langsung ditampilkan oleh sistem. Data nama barang bisa dipilih
dengan menggunakan drop down, untuk pilihan kode barang menggunakan
nama barang, sehingga memudahkan admin atau pegawai. Sedangkan untuk
data jumlah pinjam diketik manual. Tombol “SIMPAN” untuk menyimpan
data yang dimasukkan, dan tombol “BATAL” untuk membatalkan proses
pemasukan data.
BATAL SIMPAN
xxxxxxxxxx
Pilih nama barang
xxxxxxxxxx
xxxxxxxxxx
xxxxxxxxxx
xxxxxxxxxx
99
9. Form Tambah Pengembalian
Pengembalian Barang yang Dipinjam
Kode Sewa Kode Pelanggan Kode Barang Jumlah Pinjam Jumlah Kembali Jumlah Barang Rusak/Hilang/Pecah
Gambar 3.53. Form Tambah Pengembalian
Gambar 3.53 merupakan form untuk mengembalikan barang. Data
kode sewa, kode pelanggan, kode barang, dan jumlah pinjam langsung
ditampilkan oleh sistem. Sedangkan untuk data jumlah kembali dan jumlah
barang yang rusak atau hilang diketik manual. Tombol “SIMPAN” untuk
menyimpan data yang dimasukkan, dan tombol “BATAL” untuk membatalkan
proses pemasukan data.
SIMPAN
xxxxxxxxxx
xxxxxxxxxx
xxxxxxxxxx
xxxxxxxxxx
100
10. Form Tambah Transaksi
Transaksi Persewaan
Kode Transaksi Nama Pelanggan Alamat Pelanggan Total Harga Transport (Rp.) Uang Muka (Rp.) *
Keterangan: (*) Harus diisi / tidak boleh kosong atau 0
Gambar 3.54. Form Tambah Transaksi
Gambar 3.54 merupakan form untuk menambah transaksi baru ke
dalam sistem. Data kode transaksi, nama pelanggan, alamat pelanggan, dan
total harga langsung ditampilkan oleh sistem. Sedangkan untuk transport dan
uang muka dimasukkan secara manual. Tombol “SIMPAN” untuk menyimpan
data transaksi yang dimasukkan, sedangkan tombol “BATAL” untuk
membatalkan proses pemasukan data.
SIMPAN BATAL
101
11. Form Pencarian Perlengkapan Berdasarkan Nama Jenis Barang
Pencarian Perlengkapan
Cari Perlengkapan Berdasarkan :
Nama Jenis Barang Nama Barang Cari Stok Perlengkapan Berdasarkan : Bulan Cari Peminjaman Barang Berdasarkan :
Nama Pelanggan
Kata yang dicari:
Gambar 3.55. Form Pencarian Perlengkapan Berdasarkan
Nama Jenis Barang
Gambar 3.55 merupakan form untuk melakukan pencarian berdasarkan
nama jenis barang dengan memilih radio button yang disediakan dan
memasukkan kata yang dicari, kemudian menekan tombol “CARI” untuk
melakukan proses pencarian.
CARI
xxxx
Pilih Bulan
102
12. Form Pencarian Perlengkapan Berdasarkan Nama Barang
Pencarian Perlengkapan
Cari Perlengkapan Berdasarkan :
Nama Jenis Barang Nama Barang Cari Stok Perlengkapan Berdasarkan : Bulan Cari Peminjaman Barang Berdasarkan :
Nama Pelanggan
Kata yang dicari:
Gambar 3.56. Form Pencarian Perlengkapan Berdasarkan
Nama Barang
Gambar 3.56 merupakan form untuk melakukan pencarian berdasarkan
nama barang dengan memilih radio button yang disediakan dan memasukkan
kata yang dicari, kemudian menekan tombol “CARI” untuk melakukan proses
pencarian.
CARI
xxxx
Pilih Bulan
103
13. Form Pencarian Stok Perlengkapan Berdasarkan Bulan
Pencarian Perlengkapan
Cari Perlengkapan Berdasarkan :
Nama Jenis Barang Nama Barang Cari Stok Perlengkapan Berdasarkan : Bulan Cari Peminjaman Barang Berdasarkan :
Nama Pelanggan
Kata yang dicari:
Gambar 3.57. Form Pencarian Perlengkapan Berdasarkan Bulan
Gambar 3.57 merupakan form untuk melakukan pencarian berdasarkan
bulan dengan memilih radio button yang disediakan, kemudian menekan
tombol “CARI” untuk melakukan proses pencarian. Pada gambar 3.55 sebagai
contoh bulan yang dipilih adalah bulan Januari.
CARI
Januari
104
14. Form Pencarian Peminjaman Berdasarkan Nama Pelanggan
Pencarian Perlengkapan
Cari Perlengkapan Berdasarkan :
Nama Jenis Barang Nama Barang Cari Stok Perlengkapan Berdasarkan : Bulan Cari Peminjaman Barang Berdasarkan :
Nama Pelanggan
Kata yang dicari:
Gambar 3.58. Form Pencarian Perlengkapan Berdasarkan
Nama Pelanggan
Gambar 3.58 merupakan form untuk melakukan pencarian berdasarkan
nama pelanggan dengan memilih radio button yang disediakan dan
memasukkan kata yang dicari, kemudian menekan tombol “CARI” untuk
melakukan proses pencarian.
CARI
xxxxx
Pilih Bulan
105
3.2.4.3.Perancangan Output
Perancangan Output dari hasil perancangan input adalah sebagai berikut:
1. Form Daftar Pegawai
Home | Tambah Pegawai
1 | 2 |
Daftar Pegawai
No. Kode Pegawai
Nama Alamat No Telpon
Status Pegawai
Aksi
1. xxxxx xxxxxx xxxxxx xxxxxx xxxxxx Hapus | Ubah 2. xxxxx xxxxxx xxxxxx xxxxxx xxxxxx Hapus | Ubah 3. xxxxx xxxxxx xxxxxx xxxxxx xxxxxx Hapus | Ubah 4. xxxxx xxxxxx xxxxxx xxxxxx xxxxxx Hapus | Ubah
Gambar 3.59. Form Daftar Pegawai
Gambar 3.59 merupakan hasil tampilan dari penambahan pegawai
yang dilakukan sewaktu mendaftarkan pegawai baru. Pada Form Daftar
Pegawai terdapat beberapa pengaksesan program yaitu tambah pegawai, ubah
pegawai, dan hapus pegawai.
106
2. Form Ubah Pegawai
Ubah Pegawai
Kode Pegawai Nama Pegawai Alamat No Telpon Status
Gambar 3.560. Form Ubah Pegawai
Gambar 3.60 merupakan form untuk melakukan pengubahan pegawai.
Ketika menekan link “Ubah” pada form Daftar Pegawai pada pegawai yang
akan diubah datanya, maka ditampilkan keseluruhan data untuk pegawai yang
dipilih. Tombol “SIMPAN” digunakan untuk menyimpan data yang diubah.
3. Form Hapus Pegawai
Home
Hapus Data Pegawai
Kode Pegawai xxxxx Nama Pegawai xxxxx Alamat xxxxx No Telpon xxxxx Status xxxxx
Gambar 3.61. Form Hapus Pegawai
xxxxxxxxxxxx
xxxxxxxxxxxx
xxxxxxxxxxxx
xxxxxxxxxxxx
SIMPAN
xxxxxxxxxxx
HAPUS KEMBALI
xxxxxxxxxxxx
107
Gambar 3.61 merupakan form untuk melakukan penghapusan pegawai.
Ketika menekan link “Hapus” pada form Daftar Pegawai pada pegawai yang
akan dihapus datanya, maka ditampilkan keseluruhan data untuk pegawai
yang dipilih. Tombol “HAPUS” digunakan untuk menghapus data yang
dihapus, tombol “KEMBALI” untuk kembali ke form Daftar Pegawai.
4. Form Daftar Pengguna Akses
Home | Tambah Pengguna Akses
Daftar Pengguna Akses
No. Kode User
Nama User
Username Password Level Aksi
1. xxxxx xxxx xxxxxx xxxxxx xxxxxx Hapus | Ubah 2. xxxxx xxxx xxxxxx xxxxxx xxxxxx Hapus | Ubah 3. xxxxx xxxx xxxxxx xxxxxx xxxxxx Hapus | Ubah 4. xxxxx xxxx xxxxxx xxxxxx xxxxxx Hapus | Ubah
Gambar 3.62. Form Daftar Pengguna Akses
Gambar 3.62 merupakan hasil tampilan dari penambahan pengguna
akses yang dilakukan sewaktu mendaftarkan pengguna akses baru. Pada Form
Daftar Pengguna Akses terdapat beberapa pengaksesan program yaitu tambah
pengguna akses, ubah pengguna akses, dan hapus pengguna akses.
108
xxxxxxxxxxx
5. Form Ubah Pengguna Akses
Ubah Pengguna Akses
Kode User Nama User Username Password Lama Password Baru Level
Gambar 3.63. Form Ubah Pengguna Akses
Gambar 3.63 merupakan form untuk melakukan pengubahan pengguna
akses. Ketika menekan link “Ubah” pada form Daftar Pengguna Akses pada
pengguna akses yang akan diubah datanya, maka ditampilkan keseluruhan
data untuk pengguna akses yang dipilih. Tombol “SIMPAN” digunakan untuk
menyimpan data yang diubah.
6. Form Hapus Pengguna Akses
Home
Hapus Data Pengguna Akses Kode User xxxxxxxx Nama User xxxxxxxx Username xxxxxxxx Password xxxxxxxx Status xxxxxxxx
Gambar 3.64. Form Hapus Pengguna Akses
xxxxxxxxxxxx
xxxxxxxxxxxx
xxxxxxxxxxxx
SIMPAN
xxxxxxxxxxx
HAPUS KEMBALI
xxxxxxxxxxxx
109
Gambar 3.64 merupakan form untuk melakukan penghapusan
pengguna akses. Ketika menekan link “Hapus” pada form Daftar Pengguna
Akses pada pengguna akses yang akan dihapus datanya, maka ditampilkan
keseluruhan data untuk pengguna akses yang dipilih. Tombol “HAPUS”
digunakan untuk menghapus data yang dihapus, tombol “KEMBALI” untuk
kembali ke form Daftar Pengguna Akses.
7. Form Daftar Jenis Barang
Home | Tambah Jenis Barang
Daftar Jenis Barang
No. Kode Jenis Nama Jenis Aksi 1. xxxxx xxxxxx Hapus | Ubah 2. xxxxx xxxxxx Hapus | Ubah 3. xxxxx xxxxxx Hapus | Ubah 4. xxxxx xxxxxx Hapus | Ubah
Gambar 3.65. Form Daftar Jenis Barang
Gambar 3.65 merupakan hasil tampilan dari penambahan pengguna
akses yang dilakukan sewaktu mendaftarkan jenis barang baru. Pada Form
Daftar Jenis Barang terdapat beberapa pengaksesan program yaitu tambah
jenis barang, ubah jenis barang, dan hapus jenis barang.
110
8. Form Ubah Jenis Barang
Ubah Jenis Barang
Kode Jenis Nama Jenis
Gambar 3.66. Form Ubah Jenis Barang
Gambar 3.66 merupakan form untuk melakukan pengubahan jenis
barang. Ketika menekan link “Ubah” pada form Daftar Jenis Barang pada
jenis barang yang akan diubah datanya, maka ditampilkan keseluruhan data
untuk jenis barang yang dipilih. Tombol “SIMPAN” digunakan untuk
menyimpan data yang diubah.
9. Form Hapus Jenis Barang
Home
Hapus Data Jenis Barang
Kode Jenis xxxxxxxx Nama Jenis xxxxxxxx
Gambar 3.67. Form Hapus Jenis Barang
Gambar 3.67 merupakan form untuk melakukan penghapusan jenis
barang. Ketika menekan link “Hapus” pada form Daftar Jenis Barang pada
jenis barang yang akan dihapus datanya, maka ditampilkan keseluruhan data
untuk jenis barang yang dipilih. Tombol “HAPUS” digunakan untuk
menghapus data yang dihapus, tombol “KEMBALI” untuk kembali ke form
Daftar Jenis Barang.
xxxxxxxxxxxx
xxxxxxxxxxxx
SIMPAN
HAPUS KEMBALI
111
10. Form Daftar Barang
Home | Tambah Barang | Print Out Brosur
1|2|3|4|
Daftar Barang
No.
Kode Barang
Nama Barang
Satuan Harga (Rp)
Harga Denda Rusak/Hilang
(Rp)
Stok Awal
Stok Jan
Stok Feb
Stok Mar
Stok Apr
Stok Mei
Stok Jun
Stok Jul
Stok Agust
Stok Sept
Stok Okt
Stok Nov
Stok Des
Aksi
1. xxxxx xxxxx xxxxx xxxx xxxxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx Hapus|Ubah
2. xxxxx xxxxx xxxxx xxxx xxxxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx Hapus|Ubah
3. xxxxx xxxxx xxxxx xxxx xxxxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx Hapus|Ubah
4. xxxxx xxxxx xxxxx xxxx xxxxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx Hapus|Ubah
Gambar 3.68. Form Daftar Barang
112
Gambar 3.68 merupakan hasil tampilan dari penambahan barang yang
dilakukan sewaktu mendaftarkan barang baru. Pada Form Daftar Barang
terdapat beberapa pengaksesan program yaitu tambah barang, ubah jenis
barang, hapus jenis barang dan print out brosur.
.
11. Form Ubah Barang
Ubah Barang Kode Barang Kode Jenis Nama Barang Satuan Buah m2 Unit Harga (Rp.) Harga Denda Rusak / Hilang (Rp.)
Gambar 3.69. Form Ubah Barang
Gambar 3.69 merupakan form untuk melakukan pengubahan barang.
Ketika menekan link “Ubah” pada form Daftar Barang pada barang yang akan
diubah datanya, maka ditampilkan keseluruhan data untuk barang yang
dipilih. Pengubahan satuan dilakukan dengan memilih salah satu radio button
pada form Ubah Barang. Tombol “SIMPAN" digunakan untuk menyimpan
data yang diubah.
xxxxxxxxxx
xxxxxxxxxxxx
xxxxxxxxxxxx
xxxxxxxxxxxx
SIMPAN
xxxxxxxxxxxx
xxxxxxxxxx
xxxxxxxxxxxx
113
12. Form Hapus Barang
Home
Hapus Data Barang Kode Barang xxxxxxxx Kode Jenis xxxxxxxx Nama Barang xxxxxxxx Satuan xxxxxxxx Harga (Rp.) xxxxxx Harga Denda Rusak/Hilang (Rp.) xxxxxx Stok Awal xxxxxx Stok Jan xxxxxx Stok Feb xxxxxx Stok Mar xxxxxx Stok Apr xxxxxx Stok Mei xxxxxx Stok Jun xxxxxx Stok Jul xxxxxx Stok Agust xxxxxx Stok Sept xxxxxx Stok Okt xxxxxx Stok Nov xxxxxx Stok Des xxxxxx
Gambar 3.70. Form Hapus Barang
Gambar 3.70 merupakan form untuk melakukan penghapusan barang.
Ketika menekan link “Hapus” pada form Daftar Barang pada barang yang
akan dihapus datanya, maka ditampilkan keseluruhan data untuk barang yang
dipilih. Tombol “HAPUS” digunakan untuk menghapus data yang dihapus,
tombol “KEMBALI” untuk kembali ke form Daftar Barang.
HAPUS KEMBALI
114
13. Form Print Out Brosur
Gambar 3.71. Form Print Out Brosur
Gambar 3.71 merupakan form untuk menampilkan keseluruhan daftar
barang yang disewakan oleh UD. ROSARI. Pada form ini terdapat fungsi
untuk mencetak daftar barang – barang yang disewakan dengan meng-klik
tombol “Cetak” yang terletak pada bagian paling bawah. Tanda “Kembali”
berfungsi untuk kembali ke halaman sebelumnya.
Daftar Barang
No. Nama
Barang Satuan Harga
(Rp) No. Nama
Barang Satuan Harga
(Rp) Jenis Barang Jenis Barang
PERSEWAAN PERLENGKAPAN PESTA
U.D. “ROSARI” TDUP/SIUP NO. : 113/11/12/TDUP/VII/1998
JL. Gelarsena I/3 Jonggrangan Baru, Telp. (0272) 325540,
Klaten 574355
LOGO
Copyright 2008 Created by aniez | Cetak
Kembali
115
14. Form Daftar Pelanggan
Home | Tambah Pelanggan
1 |
Daftar Pelanggan
No. Kode Pelanggan
Nama Pelanggan
Alamat Pelanggan
No Telp Pelanggan
Aksi
1. xxxxx xxxxxx xxxxxx xxxxxx Hapus | Ubah 2. xxxxx xxxxxx xxxxxx xxxxxx Hapus | Ubah 3. xxxxx xxxxxx xxxxxx xxxxxx Hapus | Ubah 4. xxxxx xxxxxx xxxxxx xxxxxx Hapus | Ubah
Gambar 3.72. Form Daftar Pelanggan
Gambar 3.72 merupakan hasil tampilan dari penambahan pelanggan
yang dilakukan sewaktu mendaftarkan pelanggan baru. Pada Form Daftar
Pelanggan terdapat beberapa pengaksesan program yaitu tambah pelanggan,
ubah pelanggan, dan hapus pelanggan.
15. Form Ubah Pelanggan
Ubah Pelanggan Kode Pelanggan Nama Pelanggan Alamat Pelanggan No Telp Pelanggan
Gambar 3.73. Form Ubah Pelanggan
xxxxxxxxxxxx
xxxxxxxxxxxx
xxxxxxxxxxxx
SIMPAN
xxxxxxxxxxxx
116
Gambar 3.73 merupakan form untuk melakukan pengubahan
pelanggan. Ketika menekan link “Ubah” pada form Daftar Pelanggan pada
pelanggan yang akan diubah datanya, maka ditampilkan keseluruhan data
untuk pelanggan yang dipilih. Tombol “SIMPAN” digunakan untuk
menyimpan data yang diubah.
16. Form Hapus Pelanggan
Home
Hapus Data Pelanggan Kode Pelanggan xxxxxxxx Nama Pelanggan xxxxxxxx Alamat Pelanggan xxxxxxxx No. Telp Pelanggan xxxxxxxx
Gambar 3.74. Form Hapus Pelanggan
Gambar 3.74 merupakan form untuk melakukan penghapusan
pelanggan. Ketika menekan link “Hapus” pada form Daftar Pelanggan pada
pelanggan yang akan dihapus datanya, maka ditampilkan keseluruhan data
untuk pelanggan yang dipilih. Tombol “HAPUS” digunakan untuk
menghapus data yang dihapus, tombol “KEMBALI” untuk kembali ke form
Daftar Pelanggan.
HAPUS KEMBALI
117
17. Form Daftar Persewaan
Home | Tambah Sewa | Daftar Peminjaman Barang
1 |
Daftar Persewaan
No. Kode Sewa
Kode Pelanggan
Nama Pelanggan
Tanggal Sewa
Tanggal Harus
Kembali
Aksi
1. xxxxx xxxxxx xxxxxx xxxxxx xxxxxx Hapus | Ubah | Sewa Barang 2. xxxxx xxxxxx xxxxxx xxxxxx xxxxxx Hapus | Ubah | Sewa Barang 3. xxxxx xxxxxx xxxxxx xxxxxx xxxxxx Hapus | Ubah | Sewa Barang 4. xxxxx xxxxxx xxxxxx xxxxxx xxxxxx Hapus | Ubah | Sewa Barang
Gambar 3.75. Form Daftar Persewaan
Gambar 3.75 merupakan hasil tampilan dari penambahan sewa yang
dilakukan sewaktu mendaftarkan persewaan baru. Pada Form Daftar
Persewaan terdapat beberapa pengaksesan program yaitu tambah sewa, ubah
sewa, hapus sewa, sewa barang dan daftar peminjaman barang.
18. Form Ubah Sewa
Pendaftaran Persewaan
Kode Sewa Kode Pelanggan Nama Pelanggan Tanggal Sewa Tanggal Harus Kembali
Gambar 3.76. Form Ubah Sewa
SIMPAN
Bulan Tahun
Tahun Bulan
xxxxxxxxxx
xxx
xxxxxxxxxxx
xx-xx-xxxx
xx-xx-xxxx
Tanggal
Tanggal
118
Gambar 3.76 merupakan form untuk melakukan pengubahan
persewaan. Ketika menekan link “Ubah” pada form Daftar Persewaan pada
persewaan yang akan diubah datanya, maka ditampilkan keseluruhan data
untuk persewaan yang dipilih. Tombol “SIMPAN” digunakan untuk
menyimpan data yang diubah.
19. Form Hapus Sewa
Home
Hapus Data Persewaan Kode Pelanggan xxxxxxxx Nama Pelanggan xxxxxxxx Alamat Pelanggan xxxxxxxx No. Telp Pelanggan xxxxxxxx
Gambar 3.77. Form Hapus Persewaan
Gambar 3.77 merupakan form untuk melakukan penghapusan
persewaan. Ketika menekan link “Hapus” pada form Daftar Persewaan pada
persewaan yang akan dihapus datanya, maka ditampilkan keseluruhan data
untuk persewaan yang dipilih. Tombol “HAPUS” digunakan untuk
menghapus data yang dihapus, tombol “KEMBALI” untuk kembali ke form
Daftar Persewaan.
HAPUS KEMBALI
119
20. Form Daftar Peminjaman Barang
Home | Kembali
1 |
Daftar Peminjaman Barang
No. Kode Sewa
Kode Pelanggan
Nama Pelanggan
Tanggal Sewa
Tanggal Harus
Kembali
Kode Barang
Nama Barang
Jumlah Barang
Harga Satuan (Rp.)
Sub Total (Rp.)
Aksi
1. xxxxx xxxxxx xxxxxx xx-xx-xxxx xx-xx-xxxx xxxxxx xxxxxx xxx xxxxxx xxxxxx Hapus | Ubah 2. xxxxx xxxxxx xxxxxx xx-xx-xxxx xx-xx-xxxx xxxxxx xxxxxx xxx xxxxxx xxxxxx Hapus | Ubah 3. xxxxx xxxxxx xxxxxx xx-xx-xxxx xx-xx-xxxx xxxxxx xxxxxx xxx xxxxxx xxxxxx Hapus | Ubah 4. xxxxx xxxxxx xxxxxx xx-xx-xxxx xx-xx-xxxx xxxxxx xxxxxx xxx xxxxxx xxxxxx Hapus | Ubah
Gambar 3.78. Form Daftar Peminjaman Barang
120
Gambar 3.78 merupakan hasil tampilan dari penambahan sewa barang
yang dilakukan sewaktu meminjam barang. Pada Form Daftar Peminjaman
Barang terdapat beberapa pengaksesan program yaitu ubah dan hapus
peminjaman barang. Link Kembali berfungsi untuk kembali ke form Daftar
Persewaan, dan Home untuk kembali ke halaman utama Admin atau Pegawai.
21. Form Ubah Peminjaman Barang
Ubah Peminjaman Barang Kode Sewa Kode Pelanggan Nama Pelanggan Kode Barang Nama Barang Harga Satuan
Tanggal Sewa Tanggal Harus Kembali Jumlah Pinjam Sebelumnya Jumlah Pinjam Sekarang
Gambar 3.79. Form Ubah Peminjaman Barang
Gambar 3.79 merupakan form untuk melakukan pengubahan
peminjaman barang. Ketika menekan link “Ubah” pada form Daftar
Peminjaman Barang pada peminjaman barang yang akan diubah datanya,
maka ditampilkan keseluruhan data yang dipilih. Data yang bisa diubah hanya
jumlah pinjam. Data yang lain langsung ditampilkan oleh sistem dan tidak
xxx
xxxxxxxxxxxx
xxxxxxxxxxxx
SIMPAN
xxxxxxxxxxxx
xxxxxxxxxxxx
xxxxxxxxxxxx
xx-xx-xxxx
xx-xx-xxxx
xxx
121
dapat diubah. Tombol “SIMPAN” digunakan untuk menyimpan data yang
diubah.
22. Form Hapus Peminjaman Barang
Home
Hapus Data Peminjaman Barang Kode Sewa xxxxxxxx Kode Pelanggan xxxxxxxx Nama Pelanggan xxxxxxxx Kode Barang xxxxxxxx Nama Barang xxxxxxxxxxx Jumlah Pinjam xxxx Harga Satuan xxxxx Sub Total xxxxx Tanggal Sewa xx-xx-xxxx Tanggal Harus Kembali xx-xx-xxxx
Gambar 3.80. Form Hapus Peminjaman Barang
Gambar 3.80 merupakan form untuk melakukan penghapusan
peminjaman barang. Ketika menekan link “Hapus” pada form Daftar
Peminjaman Barang pada peminjaman yang akan dihapus datanya, maka
ditampilkan keseluruhan data untuk peminjaman barang yang dipilih. Tombol
“HAPUS” digunakan untuk menghapus data yang dihapus, tombol
“KEMBALI” untuk kembali ke form Daftar Peminjaman Barang.
HAPUS KEMBALI
122
23. Form Daftar Pengembalian Barang
Home | Tambah Pengembalian
1 |
Daftar Pengembalian Barang
No. Kode Sewa
Kode Pelanggan
Nama Pelanggan
Kode Barang
Jumlah Pinjam
Jumlah Kembali
Jumlah Barang Rusak/Hilang/Pecah
Tanggal Kembali
Denda Barang Rusak / Hilang /
Pecah (Rp.)
Aksi
1. xxxxx xxxxxx xxxxxx xxxxxx xxxxx xxxxxx xxxxxx xx-xx-xxxx xxxxxx Hapus | Ubah 2. xxxxx xxxxxx xxxxxx xxxxxx xxxxx xxxxxx xxxxxx xx-xx-xxxx xxxxxx Hapus | Ubah 3. xxxxx xxxxxx xxxxxx xxxxxx xxxxx xxxxxx xxxxxx xx-xx-xxxx xxxxxx Hapus | Ubah 4. xxxxx xxxxxx xxxxxx xxxxxx xxxxx xxxxxx xxxxxx xx-xx-xxxx xxxxxx Hapus | Ubah
Gambar 3.81. Form Daftar Pengembalian Barang
123
Gambar 3.81 merupakan hasil tampilan dari pengembalian barang
yang dilakukan sewaktu mengembalikan barang. Pada Form Daftar
Pengembalian Barang terdapat beberapa pengaksesan program yaitu tambah,
ubah dan hapus pengembalian barang.
24. Form Ubah Pengembalian Barang
Ubah Pengembalian Barang Kode Sewa Kode Pelanggan Nama Pelanggan Kode Barang Nama Barang Tanggal Pengembalian Sebelumnya
Jumlah Pinjam Jumlah Pengembalian Sebelumnya Jumlah Pengembalian Sekarang Jumlah Barang Rusak/Hilang/Pecah
Gambar 3.82. Form Ubah Pengembalian Barang
Gambar 3.82 merupakan form untuk melakukan pengubahan
pengembalian barang. Ketika menekan link “Ubah” pada form Daftar
Pengembalian Barang pada pengembalian barang yang akan diubah datanya,
maka ditampilkan keseluruhan data yang dipilih. Data yang bisa diubah hanya
jumlah pengembalian. Data yang lain langsung ditampilkan oleh sistem dan
xxx
xxxxxxxxxxxx
xxxxxxxxxxxx
SIMPAN
xxxxxxxxxxxx
xxxxxxxxxxxx
xx-xx-xxxx
xxx
xxx
x
124
tidak dapat diubah. Tombol simpan digunakan untuk menyimpan data yang
diubah.
25. Form Hapus Pengembalian Barang
Home
Hapus Data Pengembalian Barang
Kode Sewa xxxxxxxx Kode Pelanggan xxxxxxxx Nama Pelanggan xxxxxxxx Kode Barang xxxxxxxx Nama Barang xxxxxxxxxxx Jumlah Pinjam xxxx Jumlah Pengembalian xxxxx Jumlah Barang Rusak/Hilang/Pecah xxxxx Tanggal Pengembalian xx-xx-xxxx
Gambar 3.83. Form Hapus Pengembalian Barang
Gambar 3.83 merupakan form untuk melakukan penghapusan
pengembalian barang. Ketika menekan link “Hapus” pada form Daftar
Pengembalian Barang yang akan dihapus datanya, maka ditampilkan
keseluruhan data untuk pengembalian barang yang dipilih. Tombol "HAPUS”
digunakan untuk menghapus data, tombol kembali untuk “KEMBALI” ke
form Daftar Pengembalian Barang.
HAPUS KEMBALI
125
26. Form Daftar Transaksi Persewaan
Home | Tambah Transaksi
1 |
Daftar Transaksi Persewaan
Kode Transaksi
Kode Sewa
Nama Pelanggan
Total Harga (Rp.)
Transport (Rp. )
Uang Muka (Rp.)
Total Pembayaran
(Rp.)
Denda Barang Rusak / Hilang / Pecah (Rp.)
Total Pembayaran Akhir
(Rp.)
Aksi
xxxxx xxxxxx xxxxxx xxxxxx xxxxx xxxxxx xxxxxx xxxxxx xxxxxx Hapus | Ubah | Detail xxxxx xxxxxx xxxxxx xxxxxx xxxxx xxxxxx xxxxxx xxxxxx xxxxxx Hapus | Ubah | Detail xxxxx xxxxxx xxxxxx xxxxxx xxxxx xxxxxx xxxxxx xxxxxx xxxxxx Hapus | Ubah | Detail xxxxx xxxxxx xxxxxx xxxxxx xxxxx xxxxxx xxxxxx xxxxxx xxxxxx Hapus | Ubah | Detail
Gambar 3.84. Form Daftar Transaksi Persewaan
126
Gambar 3.84 merupakan hasil tampilan dari penambahan transaksi
persewaan. Pada Form Daftar Transaksi Persewaan terdapat beberapa
pengaksesan program yaitu tambah transaksi, ubah, hapus, dan detail
transaksi.
27. Form Transaksi Pelanggan
Home | Kembali 1|
Transaksi Pelanggan
No. Kode Sewa
Kode Pelanggan
Nama Pelanggan
Alamat Pelanggan
Total Harga (Rp.)
Aksi
1. xxxxx xxxxxx xxxxxx xxxxxx xxxxxx transaksi 2. xxxxx xxxxxx xxxxxx xxxxxx xxxxxx transaksi 3. xxxxx xxxxxx xxxxxx xxxxxx xxxxxx transaksi 4. xxxxx xxxxxx xxxxxx xxxxxx xxxxxx transaksi
Gambar 3.85. Form Transaksi Pelanggan
Gambar 3.85 merupakan daftar pengantar untuk melakukan proses
tambah transaksi dengan memilih link “transaksi”.
28. Form Ubah Transaksi
Ubah Transaksi Kode Transaksi Kode Sewa Nama Pelanggan Total Harga (Rp.) Transport (Rp.) Uang Muka (Rp.)
Gambar 3.86. Form Ubah Transaksi
xxx
xxxxxxxxxxxx
xxxxx
SIMPAN
xxxxx
xxx
xxxxx
127
Gambar 3.86 merupakan form untuk melakukan pengubahan transaksi
persewaan. Ketika menekan salah satu link “Ubah” pada form Daftar
Transaksi Persewaan, maka ditampilkan keseluruhan data yang dipilih. Kode
transaksi, kode sewa, dan nama pelanggan ditampilkan langsung oleh sistem
Tombol “SIMPAN” digunakan untuk menyimpan data yang diubah.
29. Form Hapus Transaksi
Home
Hapus Data Transaksi
Kode Transaksi xxxxxxxx Kode Sewa xxxxxxxx Nama Pelanggan xxxxxxxx Total Harga (Rp.) xxxxxxxx Transport (Rp.) xxxxxxxx Uang Muka (Rp.) xxxx Total Bayar (Rp.) xxxxx
Gambar 3.87. Form Hapus Transaksi
Gambar 3.87 merupakan form untuk melakukan penghapusan
transaksi persewaan. Ketika menekan salah satu link “Hapus” pada form
Daftar Transaksi Persewaan, maka ditampilkan keseluruhan data yang dipilih.
Tombol “HAPUS” digunakan untuk menghapus data, dan tombol
“KEMBALI” digunakan untuk kembali ke halaman sebelumnya.
HAPUS KEMBALI
128
30. Form Detail Transaksi
Nota Persewaan
Kode Transaksi Nama Pelanggan
Kode Sewa Tanggal Sewa
Kode Pelanggan Tanggal Harus Kembali
Daftar Peminjaman Barang
Nama Barang Harga
Satuan (Rp.)
Jumlah Pinjam Sub Total (Rp.)
xxxxxxxxxx xxxxxxxx xx xxxxxx
xxxxxxxxxx xxxxxxxx xx xxxxxx
xxxxxxxxxx xxxxxxxx xx xxxxxx
Total xxxxxx
Transport xxxxxx
Uang Muka xxxxxx
Total Pembayaran xxxxxx
Total Denda Barang Rusak / Hilang / Pecah xxxxxx
Total Pembayaran Akhir xxxxxx
U. D. ROSARI
(.........................)
Copyright 2008 Created by aniez | Cetak
Kembali
Gambar 3.88. Form Detail Transaksi
xx
xx
xxxxxxxx
xxxxxxxxxx
xx-xx-xxxx
xx-xx-xxxx
129
Gambar 3.88 merupakan detail transaksi sekaligus nota persewaan
suatu penyewa. Nota persewaan dapat dicetak dengan menekan link “Cetak”
pada bagian paling bawah. Tombol “Kembali” digunakan untuk kembali ke
halaman sebelumnya.
130
31. Form Hasil Pencarian Berdasar Nama Jenis Barang
<<Kembali
Hasil Pencarian Daftar Perlengkapan Persewaan
No. Kode Jenis
Kode Barang
Nama Barang
Satuan Harga (Rp)
Stok Awal
Stok Jan
Stok Feb
Stok Mar
Stok Apr
Stok Mei
Stok Jun
Stok Jul
Stok Agust
Stok Sept
Stok Okt
Stok Nov
Stok Des
1. xxxxx xxxxx xxxxx xxxx xxxxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx 2. xxxxx xxxxx xxxxx xxxx xxxxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx 3. xxxxx xxxxx xxxxx xxxx xxxxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx 4. xxxxx xxxxx xxxxx xxxx xxxxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx
Gambar 3.89. Form Hasil Pencarian Berdasar Nama Jenis Barang
131
32. Form Hasil Pencarian Berdasar Nama Barang
<<Kembali
Hasil Pencarian Daftar Perlengkapan Persewaan
No. Kode Jenis
Kode Barang
Nama Barang
Satuan Harga (Rp)
Stok Awal
Stok Jan
Stok Feb
Stok Mar
Stok Apr
Stok Mei
Stok Jun
Stok Jul
Stok Agust
Stok Sept
Stok Okt
Stok Nov
Stok Des
1. xxxxx xxxxx xxxxx xxxx xxxxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx 2. xxxxx xxxxx xxxxx xxxx xxxxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx 3. xxxxx xxxxx xxxxx xxxx xxxxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx 4. xxxxx xxxxx xxxxx xxxx xxxxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx
Gambar 3.90. Form Hasil Pencarian Berdasar Nama Barang
132
33. Form Hasil Pencarian Stok Berdasar Bulan
<<Kembali
Hasil Pencarian Daftar Perlengkapan Persewaan
No. Kode Jenis
Kode Barang
Nama Barang
Satuan Harga (Rp)
Stok Awal
Stok Jan
Stok Feb
Stok Mar
Stok Apr
Stok Mei
Stok Jun
Stok Jul
Stok Agust
Stok Sept
Stok Okt
Stok Nov
Stok Des
1. xxxxx xxxxx xxxxx xxxx xxxxx xxx xxx 0 0 0 0 0 0 0 0 0 0 0 2. xxxxx xxxxx xxxxx xxxx xxxxx xxx xxx 0 0 0 0 0 0 0 0 0 0 0 3. xxxxx xxxxx xxxxx xxxx xxxxx xxx xxx 0 0 0 0 0 0 0 0 0 0 0 4. xxxxx xxxxx xxxxx xxxx xxxxx xxx xxx 0 0 0 0 0 0 0 0 0 0 0
Gambar 3.91. Form Hasil Pencarian Stok Berdasar Bulan
133
Gambar 3.91 merupakan bentuk hasil pencarian stok berdasar bulan.
Sebagai contoh, bulan yang dipilih adalah bulan Januari, sehingga stok
perlengkapan yang ditampilkan hanya bulan Januari, bulan selain Januari
didefault 0.
34. Form Hasil Pencarian Peminjaman Berdasar Nama Pelanggan
Gambar 3.92. Form Hasil Pencarian Peminjaman Berdasar Nama Pelanggan
Gambar 3.92 merupakan form yang menampilkan hasil pencarian
peminjaman berdasar nama pelanggan. Tanda “<<Kembali” digunakan untuk
kembali ke halaman sebelumnya.
<<Kembali
Hasil Pencarian Daftar Peminjaman Barang
No. Kode Sewa
Kode Pelanggan
Nama Pelanggan
Kode Barang
Nama Barang
Jumlah Harga (Rp.)
Sub Total (Rp.)
Tanggal Sewa
Tanggal Harus
Kembali 1. xxxx xxxxx xxxxx xxxx xxxxx xxx xxx xxx xxx xxx 2. xxxx xxxxx xxxxx xxxx xxxxx xxx xxx xxx xxx xxx 3. xxxx xxxxx xxxxx xxxx xxxxx xxx xxx xxx xxx xxx 4. xxxx xxxxx xxxxx xxxx xxxxx xxx xxx xxx xxx xxx
134
35. Form Tampil Barang
Gambar 3.93. Form Tampil Barang
Gambar 3.93 merupakan form untuk menampilkan daftar perlengkapan
yang disewakan secara keseluruhan. Perlengkapan ditampilkan sesuai dengan
jenis barang masing – masing.
Daftar Barang
No. Nama
Barang Satuan Harga
(Rp) No. Nama
Barang Satuan Harga
(Rp) Jenis Barang Jenis Barang
Copy r igh t 2008
Cr eat ed by aniez | Cet ak K embal i
PERSEWAAN PERLENGKAPAN PESTA
U.D. “ROSARI” TDUP/SIUP NO. : 113/11/12/TDUP/VII/1998
JL. Gelarsena I/3 Jonggrangan Baru, Telp. (0272) 325540,
Klaten 574355
LOGO
135
36. Form Logout
Gambar 3.94. Form Logout
Gambar 3.94 merupakan form untuk menampilkan keluar dari sistem
pengoperasian persewaan perlengkapan pesta.
home
Terima kasih
Anda telah melakukan Log Out.... Copy r igh t 2008
Cr eat ed by aniez | Cet ak K embal i
PERSEWAAN PERLENGKAPAN PESTA
U.D. “ROSARI” TDUP/SIUP NO. : 113/11/12/TDUP/VII/1998
JL. Gelarsena I/3 Jonggrangan Baru, Telp. (0272) 325540,
Klaten 574355
LOGO
136
37. Form Lihat Kontak
Gambar 3.95. Form Lihat Kontak
Gambar 3.95 merupakan form untuk menampilkan alamat dan nomor
telepon pemesanan persewaan perlengkapan. Pemesanan persewaaan
perlengkapan dapat lewat telepon maupun datang ke UD. ROSARI secara
langsung.
PERSEWAAN PERLENGKAPAN PESTA
U.D. “ROSARI” TDUP/SIUP NO. : 113/11/12/TDUP/VII/1998
JL. Gelarsena I/3 Jonggrangan Baru, Telp. (0272) 325540,
Klaten 574355
LOGO
MENU ♦ Pencarian Perlengkapan Untuk Pemesanan hubungi ♦ Tampil Barang Albertus Supriyadi ♦ Lihat Kontak Pimpinan ♦ Lihat Galery Foto
Alamat : JL. Gelarsena I/3, Jonggrangan Baru,
KLaten Utara-57435 Telp: (0272) 325540
Email : [email protected]
Created by aniez
137
38. Form Lihat Galery Foto
Gambar 3.96. Form Lihat Galery Foto
Gambar 3.96 merupakan form untuk menampilkan gallery foto
perlengkapan yang disewakan di UD. ROSARI.
PERSEWAAN PERLENGKAPAN PESTA
U.D. “ROSARI” TDUP/SIUP NO. : 113/11/12/TDUP/VII/1998
JL. Gelarsena I/3 Jonggrangan Baru, Telp. (0272) 325540,
Klaten 574355
LOGO
MENU Selamat Datang ♦ Pencarian Perlengkapan Berikut ini adalah gallery foto perlengkapan ♦ Tampil Barang UD.ROSARI. ♦ Lihat Kontak ♦ Lihat Galery Foto
Foto Tenda
Tenda Plafon
Tenda Centris
Tenda Kanopi
Foto Kursi
Kursi VIP Kursi Lipat
Foto Meja
Meja Tamu Meja Kado Meja Bulat
Created by aniez
138
BAB IV
IMPLEMENTASI
Bab ini berisi implementasi sistem berdasarkan analisa dan perancangan
sistem yang telah dibuat pada bab 3 ke dalam bentuk sistem persewaan perlengkapan
pesta berbasis web. Perangkat lunak yang digunakan untuk membangun sistem
informasi persewaan perlengkapan pesta antara lain :
1. Microsoft Windows XP sebagai sistem operasi.
2. J2SDK1.4.2_04, sebagai tool dari J2SE untuk mengompilasi dan
menjalankan program Java.
3. J2EE 1.4, sebagai komponen web di server.
4. Apache Tomcat 5.5.17, sebagai web application container.
5. Bundled Tomcat 5.5.17, sebagai server di J2EE.
6. Database MySQL 5.0, sebagai database server.
7. SQLyog 5.14, sebagai editor MySQL.
8. mysql-connector-java-3.1.10-bin, sebagai konektor Java ke database
MySQL.
9. NetBeans 5.5, sebagai editor Java (IDE Java).
10. Mozilla Firefox, sebagai web browser.
11. Rational Rose 2000, untuk pembuatan diagram UML pada tahap desain.
4.1. Instalasi
Sebelum dapat mengimplementasikan sistem informasi persewaan
perlengkapan pesta, perlu dilakukan instalasi perangkat lunak yang mendukung
pembuatan sistem informasi persewaan perlengkapan pesta ini. Urutan instalasi
139
perangkat lunak pendukung sistem informasi persewaan perlengkapan pesta adalah
sebagai berikut:
1. Instal NetBeans 5.5
2. Instal MySQL Server 5.0
3. Instal SQLyog 5.14
4. Instal Mozilla Firefox 1.5.0.4
4.2. Implementasi Program
Seperti telah diuraikan pada bab 3, yaitu tentang analisa dan perancangan
sistem, implementasi sistem ini melibatkan bahasa pemrograman Java sebagai tool
dan MySQL 5.0 sebagai database.
Pada implementasi program ini akan dijelaskan tahap pembuatan program –
program sistem interface.
4.2.1. Implementasi Database
Implementasi database berisi tentang script program untuk pembuatan
database dan tabel – tabel yang mendukung sistem informasi persewaan perlengkapan
pesta. Script program untuk pembuatan tabel – tabel yang diperlukan (sesuai dengan
bab 3) adalah :
1. Pembuatan Database ud_rosari
create database if not exists `ud_rosari`; USE `ud_rosari`;
2. Pembuatan tabel
a. Tabel userakses
CREATE TABLE `userakses` ( `kodeUser` varchar(30) NOT NULL, `username` varchar(20) NOT NULL,
140
`passwd` varchar(12) NOT NULL, `level` varchar(8) NOT NULL, PRIMARY KEY (`kodeUser`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
b. Tabel pegawai
CREATE TABLE `pegawai` ( `kodePeg` varchar(20) NOT NULL, `nama` varchar(30) NOT NULL, `alamat` varchar(50) NOT NULL, `notelp` varchar(30) NOT NULL, `status` varchar(30) NOT NULL, PRIMARY KEY (`kodePeg`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
c. Tabel jenisbarang
CREATE TABLE `jenisbarang` ( `kodeJenis` varchar(10) NOT NULL, `nama_jenis` varchar(30) NOT NULL, PRIMARY KEY (`kodeJenis`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
d. Tabel daftarbarang
CREATE TABLE `daftarbarang` ( `kodeBarang` varchar(10) NOT NULL, `kodeJenis` varchar(10) NOT NULL, `nama` varchar(50) NOT NULL, `satuan` varchar(10) NOT NULL, `harga` int(11) NOT NULL, `hargaDenda` int(11) NOT NULL, `stok_awal` int(11) NOT NULL, `stok_jan` int(11) default NULL, `stok_feb` int(11) default NULL, `stok_mar` int(11) default NULL, `stok_apr` int(11) default NULL, `stok_mei` int(11) default NULL, `stok_jun` int(11) default NULL, `stok_jul` int(11) default NULL, `stok_agust` int(11) default NULL, `stok_sept` int(11) default NULL, `stok_okt` int(11) default NULL, `stok_nov` int(11) default NULL, `stok_des` int(11) default NULL, PRIMARY KEY (`kodeBarang`), KEY `FK_kodeJenis` (`kodeJenis`),
141
CONSTRAINT `daftarbarang_ibfk_1` FOREIGN KEY (`kodeJenis`) REFERENCES `jenisbarang` (`kodeJenis`) ON UPDATE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
e. Tabel daftarpelanggan
CREATE TABLE `daftarpelanggan` ( `kodePel` varchar(20) NOT NULL, `nama` varchar(50) NOT NULL, `alamat` varchar(50) NOT NULL, `notelp` varchar(30) NOT NULL, PRIMARY KEY (`kodePel`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
f. Tabel daftarsewa
CREATE TABLE `daftarsewa` ( `kodeSewa` int(11) NOT NULL auto_increment, `kodePel` varchar(20) NOT NULL, `tglSewa` date NOT NULL, `tglHrsKembali` date NOT NULL, PRIMARY KEY (`kodeSewa`), KEY `FK_kodePel` (`kodePel`), CONSTRAINT `daftarsewa_ibfk_1` FOREIGN KEY (`kodePel`) REFERENCES `daftarpelanggan` (`kodePel`) ON UPDATE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
g. Tabel sewabarang
CREATE TABLE `sewabarang` ( `kodeSewa` int(11) NOT NULL, `kodePel` varchar(20) NOT NULL, `kodeBarang` varchar(20) NOT NULL, `jumlahPinjam` int(11) NOT NULL, `jumlahKembali` int(11) default NULL, `jumBrgRusak_Hilang` int(11) default NULL, `hargaSatuan` int(11) NOT NULL, `SubTotal` int(11) NOT NULL, `tglSewa` date NOT NULL, `tglHrsKembali` date NOT NULL, `tglKembali` date default NULL, `dendaRusak_Hilang` int(11) default NULL, PRIMARY KEY (`kodeSewa`,`kodePel`,`kodeBarang`), KEY `FK_kodePel` (`kodePel`), KEY `FK_sewabarang` (`kodeBarang`),
142
CONSTRAINT `sewabarang_ibfk_1` FOREIGN KEY (`kodeSewa`) REFERENCES `daftarsewa` (`kodeSewa`), CONSTRAINT `sewabarang_ibfk_2` FOREIGN KEY (`kodePel`) REFERENCES `daftarpelanggan` (`kodePel`), CONSTRAINT `sewabarang_ibfk_3` FOREIGN KEY (`kodeBarang`) REFERENCES `daftarbarang` (`kodeBarang`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
h. Tabel pengembalianbarang
CREATE TABLE `pengembalianbarang` ( `kodeSewa` int(11) NOT NULL, `kodePel` varchar(20) NOT NULL, `kodeBarang` varchar(20) NOT NULL, `jumlahPinjam` int(11) NOT NULL, `jumlahKembali` int(11) NOT NULL, `jumBrgRusak_Hilang` int(11) default NULL, `tglKembali` date NOT NULL, `dendaRusak_Hilang` int(11) default NULL, PRIMARY KEY (`kodeSewa`,`kodePel`,`kodeBarang`), KEY `FK_kodeBarang` (`kodeBarang`), KEY `FK_kodePel` (`kodePel`), CONSTRAINT `FK_kodeBarang` FOREIGN KEY (`kodeBarang`) REFERENCES `daftarbarang` (`kodeBarang`), CONSTRAINT `FK_kodePel` FOREIGN KEY (`kodePel`) REFERENCES `daftarpelanggan` (`kodePel`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
i. Tabel transaksi_sewa
CREATE TABLE `transaksi_sewa` ( `kodeTransaksi` int(11) NOT NULL auto_increment, `kodeSewa` varchar(10) NOT NULL,
`totalHarga` int(11) NOT NULL, `transport` int(11) NOT NULL, `uangMuka` int(11) NOT NULL, `totalBayar` int(11) NOT NULL, `dendaBrgRusak_Hilang` int(11) default NULL, `totalByr2` int(11) NOT NULL, PRIMARY KEY (`kodeTransaksi`,`kodeSewa`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
143
j. Tabel temp_sewabrg
CREATE TABLE `temp_sewabrg` ( `kodeSewa` int(11) NOT NULL, `kodeBrg` varchar(30) NOT NULL, `namaBrg` varchar(50) NOT NULL, `jumlah` int(11) NOT NULL, `hargaSatuan` int(11) NOT NULL, `SubTotal` int(11) NOT NULL, PRIMARY KEY (`kodeSewa`,`kodeBrg`), KEY `FK_kodeBarang` (`kodeBrg`), CONSTRAINT `temp_sewabrg_ibfk_1` FOREIGN KEY (`kodeBrg`) REFERENCES `daftarbarang` (`kodeBarang`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
k. Tabel temp_sewabrg2
CREATE TABLE `temp_sewabrg2` ( `kodeSewa` int(11) NOT NULL, `kodePel` varchar(20) NOT NULL, `namaPel` varchar(50) NOT NULL, `kodeBarang` varchar(20) NOT NULL, `namaBarang` varchar(50) NOT NULL, `jumlah` int(11) NOT NULL, `hargaSatuan` int(11) NOT NULL, `SubTotal` int(11) NOT NULL, `tglSewa` date NOT NULL, `tglHrsKembali` date NOT NULL, PRIMARY KEY (`kodeSewa`,`kodePel`,`kodeBarang`), KEY `FK_kodePel` (`kodePel`), KEY `FK_kodeBarang` (`kodeBarang`), CONSTRAINT `temp_sewabrg2_ibfk_1` FOREIGN KEY (`kodePel`) REFERENCES `daftarpelanggan` (`kodePel`), CONSTRAINT `temp_sewabrg2_ibfk_2` FOREIGN KEY (`kodeBarang`) REFERENCES `daftarbarang` (`kodeBarang`), CONSTRAINT `temp_sewabrg2_ibfk_3` FOREIGN KEY (`kodeSewa`) REFERENCES `daftarsewa` (`kodeSewa`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
144
4.2.2. Implementasi User Interface
Implementasi user interfase berisi tentang listing program untuk pembuatan
form – form yang mendukung sistem informasi persewaan perlengkapan pesta, yang
disesuaikan dengan perancangan sistem pada bab 3.
4.2.2.1.Proses Menu Utama
1. Form Menu Utama
Program ini akan mulai berjalan dari file jsp, yang akan menampilkan
form seperti pada gambar 4.1.
Gambar 4.1. Form Menu Utama
Gambar 4.1 merupakan form menu utama untuk semua pengguna.
Pencarian perlengkapan, tampil barang, lihat kontak, dan lihat gallery foto
boleh dilakukan oleh semua pengguna.
Listing JSP untuk menampilkan Form Menu Utama seperti pada gambar 4.1
adalah:
<%@page contentType="text/html" pageEncoding="UTF-8 "%> <%@include file="style_1.jsp" %> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transi tional//EN" "http://www.w3.org/TR/html4/loose.dtd">
145
<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Menu Utama</title></head> <body id="b"><table border="1" align="center"> <marquee behavior="alternate" direction="left" alig n="right"> <%@ include file = "head.jsp" %></marquee> <tr><tr><td><%@ include file = "tanggalSekarang.jsp " %> <table border="0" cellpadding="0" cellspacing="0" w idth="100%"> <tr><td width="30%" valign="top"> <table><td valign="top" align="center" id="menu" class="colormenu" height="50px" width="100px"> <table border="0" cellpadding="0" cellspacing=2" id ="menu"> <tr class="isi2"><td align="center" id="menu" class="colormenu2">MENU</td></tr> <tr align="left"><td><b> <li><a class="submenu" href="./index.jsp">Home</a>< /li> <li><a class="submenu" href="./cariPerlengkapan3.js p"> Pencarian Perlengkapan</a></li> <li><a class="submenu" href="./Brosur">Tampil Baran g</a></li> <li><a class="submenu" href="./Kontak.jsp">Lihat Ko ntak</a></li> <li><a class="submenu" href="./Galery.jsp">Lihat Ga lery Foto</a></li> </td></tr></table><table border="0" cellpadding="0" cellspacing="2"> <td valign="top" align="center" id="menu" class="co lormenu" height="50px" width="100px"> <form><td width="50%" valign="top" align="center" h eight="100%"> <%@ include file="isi3.jsp" %></td></form> <form><td width="20%" valign="top" align="right" he ight="100%"> <p align="center"><image src="image/Vip.jpg" width= "300px" height="200px"><br><b>Contoh Tenda VIP Centris</p>< /td></form> </tr></table></td></tr> <br><tr><td align="center"> <table class="image2" id="bawah3" width="100%"> <tbody class="isi4"><tr><td>© Copyright 2008 </td> </tr> <tr><td>Created by aniez</td></tr></tbody></table>< /td></tr> </table></body></html>
146
2. Form Menu Admin
Gambar 4.2. Form Menu Admin
Form Menu Admin merupakan halaman utama untuk pengguna akses
sebagai admin. Menu akses admin antara lain, Daftar Pegawai, Lihat
Pengguna Akses, Daftar Jenis, Daftar Barang, Daftar Pelanggan, Daftar Sewa
yang meliputi : Persewaan dan Pengembalian, Daftar Transaksi, Pencarian
Perlengkapan, Tampil Barang, dan Logout.
Listing JSP untuk menampilkan Form Menu Admin seperti pada gambar 4.2
adalah :
<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Menu Admin</title></head> <body id="b"> <table border="0" align="center" class="image3"> <tr><%@ include file = "head.jsp" %> <tr><td> <%@ include file = "tanggalSekarang.jsp" %> <table border="0" cellpadding="0" cellspacing="0" w idth="100%"> <tr><td width="30%" valign="top"> <table><td valign="top" align="center" id="menu" class="colormenu" height="50px" width="100px"> <table border="0" cellpadding="0" cellspacing="10" id="menu">
147
<tr class="isi2"><td align="center" id="menu" class="colormenu2">MENU</td></tr> <tr align="left"><td><b><li><a class="submenu" href="./daftarPegawai">Daftar Pegawai</a></li> <li><a class="submenu" href="./lihatUserAkses">Liha t Pengguna Akses</a></li> <li><a class="submenu" href="./daftarJenis">Daftar Jenis </a></li> <li><a class="submenu" href="./daftarBarang">Daftar Barang </a></li> <li><a class="submenu" href="./daftarPelanggan">Daf tar Pelanggan </a></li> <li><a class="submenu" >Daftar Sewa :</a></li> Δ<a class="submenu" href="./daftarPersewaan"> Persewaan</a> Δ<a class="submenu" href="./daftarPengembalia n"> Pengembalian</a> <li><a class="submenu" href="./daftarTransaksi"> Daftar Transaksi</a></li> <li><a class="submenu" href="./cariPerlengkapan.jsp "> Pencarian Perlengkapan</a></li> <li><a class="submenu" href="./Brosur">Tampil Baran g</a></li> <li><a class="submenu" href="Logout.jsp">Logout</a> </li> </td></tr></table></table></td> <td width="70%" valign="top" align="center" height= "100%"> <table border="0" cellpadding="4" cellspacing="0" width="70%" > <tr><td align="center" width="70%"><%@ include file ="isi.jsp"%> </td></tr></table></td></tr> </table></td></tr> <tr><td align="center"><table class="image2" id="ba wah3" width="100%"> <tbody class="isi4"><tr><td>© Copyright 2008 </td> </tr> <tr><td>Created by aniez</td></tr> </tbody></table></td></tr></table> </body></html>
3. Form Menu Pegawai
Gambar 4.3. Form Menu Pegawai
148
Form Menu Pegawai merupakan halaman utama untuk pengguna akses
sebagai pegawai. Menu akses pegawai antara lain, Daftar Pelanggan, Daftar
Sewa yang meliputi : Persewaan dan Pengembalian, Daftar Transaksi,
Pencarian Perlengkapan, Tampil Barang, dan Logout.
Listing JSP untuk menampilkan Form Menu Pegawai seperti pada gambar 4.3
adalah :
<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Menu Pegawai</title> </head> <body id="b"> <table border="0" align="center" bgcolor="#BEDFFC"> <tr><%@ include file = "head.jsp" %></table></tr> <tr><td><%@ include file = "tanggalSekarang.jsp" %> <table border="0" cellpadding="0" cellspacing="0" w idth="100%"> <tr><td width="30%" valign="top"> <table> <td valign="top" align="center" id="menu" class="co lormenu" height="50px" width="80px"><table border="0" cellpa dding="0" cellspacing="10" id="menu"><tr class="isi2"><td ali gn="center" id="menu" class="colormenu2">MENU</td></tr> <tr align="left"><td><b><li><a class="submenu" href="./daftarPelangg">Daftar Pelanggan</a></li> <li><a class="submenu" >Daftar Sewa :</a></li> Δ<a class="submenu" href="./daftarPersewaan2">Persewaan</a> Δ<a class="submenu" href="./daftarPengembalia n2"> Pengembalian</a> <li><a class="submenu" href="./daftarTransaksi2">Da ftar Transaksi </a></li> <li><a class="submenu" href="./cariPerlengkapan2.js p"> Pencarian Perlengkapan</a></li> <li><a class="submenu" href="./Brosur">Tampil Baran g</a></li> <li><a class="submenu" href="Logout.jsp">Logout</a> </li> </td> </tr></table></td></table></td> <td width="70%" valign="top" align="center" height= "100%"> <table class="colorhead" border="0" cellpadding="4" cellspacing="0" width="70%"> <tr><td align="center" width="70%"> <%@ include file="isi2.jsp" %> </td></tr></table></td></tr></table></td></tr> <tr><td align="center"><table class="image2" id="ba wah9" width="100%"> <tbody class="isi4"><tr><td>© Copyright 2008 </td> </tr> <tr><td>Created by aniez</td></tr></tbody> </table></td></tr></table></body></html>
149
4.2.2.2.Proses Login
Gambar 4.4. Form Login
Gambar 4.4 merupakan form login untuk admin dan pegawai.
Listing JSP untuk Form Login seperti pada gambar 4.5 adalah:
<marquee behavior="alternate" direction="left" alig n="right"> <%@ include file = "head.jsp" %> </marquee> <tr> <tr><td> <%@ include file = "tanggalSekarang.jsp" %> <table border="0" cellpadding="0" cellspacing="0" w idth="100%"> <tr> <form method="post" action="./AksesLogin"> <td width="70%" valign="top" align="center" height= "100%"> <%@ include file="AksesLogin.jsp" %> </td></form></tr></table></td></tr>
Listing JSP untuk mengirim hasil masukan username dan password adalah: <form method="post" action="./AksesLogin"> <td width="70%" valign="top" align="center" heigh t="100%"> <%@ include file="AksesLogin.jsp" %></td></form >
Pada gambar 4.4 setelah admin maupun pegawai memasukkan username dan
password, lalu menekan tombol “Login”, maka program akan mengirimkan request
ke servlet “AksesLogin”.
150
Listing program servlet AksesLogin.java yang menangani proses Login dapat
dilihat sebagai berikut:
protected void processRequest(HttpServletRequest re quest, HttpServletResponse response) throws ServletException, IOException {
String userNm = request.getParameter("ID"); String passwd = request.getParameter("txtPassword") ; RequestDispatcher dis = null; HttpSession sess = request.getSession(true); UserAksesBO bo = new UserAksesBO(); UserAkses user = bo.getLogin(userNm,passwd);
if(userNm.equalsIgnoreCase("")||passwd.equalsIgnore Case("")){ System.out.println("Level : "+user.getLevel()); javax.swing.JOptionPane.showMessageDialog(null,"Per iksa
Lagi Data yang anda masukkan!"); dis = request.getRequestDispatcher("./index.jsp"); } else if(user.getLevel().equals("admin")){ System.out.println("Level : "+user.getLevel()); dis = request.getRequestDispatcher("./home_admin. jsp"); } else if(user.getLevel().equals("pegawai")) { System.out.println("Level : "+user.getLevel()); dis = request.getRequestDispatcher("./home_pegawai. jsp"); } sess.setAttribute("userAkses", user); dis.forward(request, response); }
Parameter username dan password yang dikirimkan ke servlet, ditangkap oleh
servlet dengan metode request.getParameter(“ID”) untuk username dan
request.getParameter(“txtPassword”) untuk password. Username disimpan dalam
variabel userNm yang bertipe String dan password disimpan dalam variabel passwd
yang bertipe String. Setelah itu dilakukan pengecekan data username dan password
dengan semua data pengguna akses yang ada di tabel userakses pada database
ud_rosari. Semua data pada tabel userakses diambil dengan metode
getLogin(userNm,passwd) yang ada pada class UserAkses dan disimpan dalam sebuah
UserAksesBO(). Dalam servlet AksesLogin.java terdapat pengecekan masukan. Jika
masukan username dan password salah atau tidak lengkap, maka mengirimkan
response ke halaman index.jsp atau ke servlet AksesLogin.java untuk menampilkan
pesan error. Tetapi jika username dan password yang dimasukkan merupakan data
151
admin, maka mengirimkan response ke “home_admin.jsp” yaitu menu admin.
Demikian juga jika username dan password yang dimasukkan merupakan data
pegawai, maka mengirimkan response ke “home_pegawai.jsp” yaitu menu pegawai.
4.2.2.3.Proses Tambah Data
Proses tambah data pada sistem informasi persewaan perlengkapan pesta ini,
hampir sama pada umumnya. Sama seperti proses login saat form disimpan, maka
sistem akan mengirimkan request ke servlet. Karena proses tambah data pada
umumnya hampir sama, maka di sini hanya akan mengambil contoh satu proses
tambah data, yaitu tambah barang.
Gambar 4.5. Form Tambah Barang
Gambar 4.5 merupakan form untuk mendaftarkan barang baru ke dalam
sistem. Listing JSP untuk menampilkan Form Tambah Barang seperti pada gambar
4.5 adalah :
<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Menu Tambah Barang</title></head> <body id="b"> <%
152
boolean ada_kesalahan = false; Connection con = null; try{ Class.forName("com.mysql.jdbc.Driver"); } catch (Exception ex){ ada_kesalahan = true; }if (!ada_kesalahan){ // Bentuk koneksi con = null; try{ con = DriverManager.getConnection("jdbc:mysql://localhost :3306/ud_rosari", "root", "kingdom"); } catch (Exception ex){ ada_kesalahan = true; }} if (ada_kesalahan){ String pesan = "Database tidak dapat ditemukan"; response.sendRedirect("tambahBarang.jsp?pesan="+pes an); } ResultSet hasilQuery = null; %> <% String kodeBrg = request.getParameter("kodeBarang" ); String kodeJenis = request.getParameter("kodeJeni s"); String nama = request.getParameter("nama"); String satuan = request.getParameter("satuan"); String harga = request.getParameter("harga"); String hargaD = request.getParameter("hargaDenda"); String stok = request.getParameter("stok"); String juml = request.getParameter("jumlah"); %> <table border="0" align="center" bgcolor="#BEDFFC"> <tr> <%@ include file = "head.jsp" %> <table border="0" cellpadding="0" cellspacing="0" w idth="100%"> <tr><td align="center"><a class="submenu" href="./home_admin.jsp">Home</a> | <a class="submenu" href="./pageBarang.jsp">Kembali< /a> <hr></td></tr></table> <%if(request.getAttribute("pesan")!=null) out.println(request.getAttribute("pesan").toString( )); %> <br><%if(request.getAttribute("pesan1")!=null) out.println(request.getAttribute("pesan1").toString ()); %><br><%if(request.getAttribute("pesan2")!=null) out.println(request.getAttribute("pesan2").toString ()); %> <form method="post" action="./tambahBarang"> <td width="70%" valign="top" align="right"> <table class="isi" id="colormenu" border="0" cellpa dding="4" cellspacing="0" width="500px" align="center" height ="100%"> <tr><td align="center" width="70%"> <tr><td align="center" class="colormenu" colspan="3 "> <h1 class="isi2">Pendaftaran Barang</h1> <hr></td></tr> <tr class="colormenu"> <td>Kode Barang</td> <td>:</td> <td><input type="text" name="txtkodeBrg" size="20" maxlength="50"
153
value="<% if((kodeBrg!=null)&&(kodeBrg!="")) out.print(kodeBrg); %>"> </td></tr><tr class="colormenu"> <td>Nama Jenis</td> <td>:</td> <td><select name="kodeJenis"> <option value="0" selected >Pilih Jenis <% //----Bentuk daftar pilihan kode jenis hasilQuery = null; try{ Statement stm = con.createStatement(); hasilQuery = stm.executeQuery( "select kodeJenis, nama_jenis from jenisbarang orde r by nama_jenis asc ");} catch (Exception ex){ ada_kesalahan = true; } if(!ada_kesalahan){ try{ while (hasilQuery.next()){ String kodeJen = hasilQuery.getString("kodeJenis"); String nama_jen = hasilQuery.getString("nama_jenis" ); String sel; if(kodeJen.equals(kodeJen)) sel = "selected"; else sel = ""; out.print("<option value=\""+ kodeJen + "\""+ sel + ">" + nama_jen); }} catch (Exception ex){ ada_kesalahan = true; }}%></option></select></td></tr> <tr class="colormenu"> <td>Nama Barang</td> <td>:</td> <td><input type="text" name="txtnama" size="40" max length="50" value="<% if((nama!=null)&&(nama!="")) out.print(na ma); %>"> </td></tr> <tr class="colormenu"> <td>Satuan</td> <td>:</td><td> <input type="radio" name="satuan" value="Buah" />Bu ah <input type="radio" name="satuan" value="m2"/>m2 &n bsp; <input type="radio" name="satuan" value="Unit"/>Uni t</td></tr> <tr class="colormenu"> <td>Harga (Rp.)</td> <td>:</td> <td><input type="number" name="numharga" size="40" maxlength="50" value="<% if((harga!=null)&&(harga!=""))out.print(harga); %>" > </td></tr><tr class="colormenu"> <td>Harga Denda Rusak/Hilang (Rp.)</td> <td>:</td><td><input type="number" name="hargaDen" size="40" maxlength="50" value="<% if((hargaD!=null)&&(harga D!="")) out.print(hargaD); %>"></td></tr><tr class="colormenu"><td>StokAwal</td> <td>:</td>
154
<td><input type="number" name="numstock" size="25" maxlength="50" value="<% if((stok!=null)&&(stok!="" )) out.print(stok); %>"></td></tr> <tr class="colormenu"> <td colspan="3" align="center"> <input type="submit" name="Submit" value="Simpan"> <input type="reset" name="Reset" value="Batal"></td></tr></table></form></table></tr ></td></tr> <br><br><br><tr><td align="center"> <table class="image2" id="bawah3" width="100%"> <tbody class="isi4"><tr><td>© Copyright 2008 </td></tr><tr><td>Created by aniez</td></tr></tbody ></table> </td></tr></table></body></html>
Setelah admin memasukkan data – data pada form yang telah disediakan,
maka dengan menekan tombol “Simpan”, sistem akan mengirimkan request ke
servlet “tambahBarang” . Listing program untuk servlet “tambahBarang” adalah :
protected void processRequest(HttpServletRequest re quest, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html;charset=UTF-8"); PrintWriter out = response.getWriter(); RequestDispatcher dis = null; String kodeJenis = request.getParameter("kodeJenis" ); String kodeBrg = request.getParameter("txtkodeBrg") ; String nama = request.getParameter("txtnama"); String satuan = request.getParameter("satuan"); String harga = request.getParameter("numharga"); int hargaBrg=0; String hargaD = request.getParameter("hargaDen"); int harga_denda=0; String stok = request.getParameter("numstock"); int stokBrg = 0; if(request.getParameter("numharga").equals("")){ request.setAttribute("pesan", "Pendaftaran Gagal!") ; request.setAttribute("pesan1", " Lengkapi data !"); dis = request.getRequestDispatcher("./error.jsp"); } else { hargaBrg = Integer.parseInt(harga); } if(request.getParameter("hargaDen").equals("")){ request.setAttribute("pesan", "Pendaftaran Gagal!") ; request.setAttribute("pesan1", " Lengkapi data !"); dis = request.getRequestDispatcher("./error.jsp"); } else { harga_denda = Integer.parseInt(hargaD); } if(request.getParameter("numstock").equals("")){ request.setAttribute("pesan", "Pendaftaran Gagal !" ); request.setAttribute("pesan1", " Lengkapi data !"); dis = request.getRequestDispatcher("./error.jsp"); } else { stokBrg = Integer.parseInt(stok); } DaftarBarang daftarbarang = new DaftarBarang(); daftarbarang.setKodeJenis(kodeJenis); daftarbarang.setKodeBarang(kodeBrg);
155
daftarbarang.setNama(nama); daftarbarang.setSatuan(satuan); daftarbarang.setHarga(hargaBrg); daftarbarang.setHargaDenda(harga_denda); daftarbarang.setStok(stokBrg); HttpSession sess = request.getSession(true); if((daftarbarang.getKodeBarang().equalsIgnoreCase(" "))|| (daftarbarang.getKodeJenis().equalsIgnoreCase("0")) || (daftarbarang.getNama().equalsIgnoreCase(""))|| (request.getParameter("satuan")==null)|| (daftarbarang.getHarga()==0)||(daftarbarang.getHarg aDenda()==0)||(daftarbarang.getStok()==0)|| (request.getParameter("numstock").equals(""))){ System.out.println("Pendaftaran gagal sekali!"); request.setAttribute("pesan1", "Penambahan Barang G agal!!!"); request.setAttribute("pesan2", "Lengkapi Data!!!"); dis = request.getRequestDispatcher("./error.jsp"); } else if((daftarbarang.getKodeBarang().equals(kodeBr g))&& (daftarbarang.getKodeJenis().equals(kodeJenis))&& (daftarbarang.getNama().equals(nama))&& (daftarbarang.getSatuan().equals("Buah"))&& (daftarbarang.getHarga()== hargaBrg) && (daftarbarang.getHargaDenda()== harga_denda)&& (daftarbarang.getStok()== stokBrg)){ DaftarBarangBO bo = new DaftarBarangBO(); int x = bo.tambahBarang(daftarbarang); dis = request.getRequestDispatcher("./pageBarang.js p"); } else if((daftarbarang.getKodeBarang().equals(kodeBr g))&& (daftarbarang.getKodeJenis().equals(kodeJenis))&& (daftarbarang.getNama().equals(nama))&& (daftarbarang.getSatuan().equals("m2"))&& (daftarbarang.getHarga()== hargaBrg)&& (daftarbarang.getHargaDenda()== harga_denda)&& (daftarbarang.getStok()== stokBrg)){ DaftarBarangBO bo = new DaftarBarangBO(); int x = bo.tambahBarang(daftarbarang); dis = request.getRequestDispatcher("./pageBarang.js p"); }else if((daftarbarang.getKodeBarang().equals(kodeB rg))&& (daftarbarang.getKodeJenis().equals(kodeJenis))&& (daftarbarang.getNama().equals(nama))&& (daftarbarang.getSatuan().equals("Unit"))&& (daftarbarang.getHarga()== hargaBrg)&& (daftarbarang.getHargaDenda()== harga_denda)&& (daftarbarang.getStok()== stokBrg)){ DaftarBarangBO bo = new DaftarBarangBO(); int x = bo.tambahBarang(daftarbarang); dis = request.getRequestDispatcher("./pageBarang.js p"); } sess.setAttribute("tambahBarang", daftarbarang); dis.forward(request,response); }
Request yang ditangkap pada servlet “tambahBarang” kemudian dikirimkan
ke servlet “daftarBarang”. Pada servlet “daftarBarang” mengirimkan request ke
halaman “pageBarang.jsp” yaitu halaman Daftar Barang. Jika data – data yang
156
dimasukkan salah atau tidak lengkap, maka ditampilkan pesan error. Ada fasilitas
tombol lain yang dapat dipilih admin, yaitu tombol “Kembali” untuk kembali ke
halaman Daftar Barang, tombol “Home” untuk kembali ke halaman utama admin.
4.2.2.4.Proses Ubah Data
Proses ubah data pada sistem informasi persewaan perlengkapan pesta pada
umumnya hampir sama, oleh karena itu di sini hanya akan mengambil contoh satu
proses ubah data, yaitu ubah barang.
Gambar 4.6. Form Ubah Barang
Gambar 4.6 merupakan form untuk melakukan pengubahan jenis barang. Data
yang ditampilkan pada gambar 4.6 merupakan hasil request ke servlet “ubahBarang”.
Listing program servlet “ubahBarang” adalah :
protected void processRequest(HttpServletRequest re quest, HttpServletResponse response) throws ServletException, IOException { String kode = request.getParameter("kode"); DaftarBarangBO bo=new DaftarBarangBO(); RequestDispatcher dis = null; DaftarBarang daftarbarang=bo.dataBarang(kod e); System.out.println(daftarbarang.getKodeBara ng()); request.setAttribute("daftarbarang",daftarb arang); dis = request.getRequestDispatcher("./ubahB arang.jsp"); dis.forward(request,response); }
157
Dengan demikian secara otomatis dapat ditampilkan semua data pada saat memilih
salah satu jenis barang yang akan diubah yang terdapat pada form Daftar Barang
(gambar 4.7).
Gambar 4.7. Form Daftar Barang
Listing JSP untuk menampilkan Form Ubah Barang seperti pada gambar 4.6 adalah :
<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Halaman Ubah Barang</title></head> <body> <body id="b"> <% boolean ada_kesalahan = false; Connection con = null; try{ Class.forName("com.mysql.jdbc.Driver"); } catch (Exception ex){ ada_kesalahan = true; } if (!ada_kesalahan){ // Bentuk koneksi con = null;
158
try{ con = DriverManager.getConnection("jdbc:mysql://loc alhost:3306/ ud_rosari", "root", "kingdom"); } catch (Exception ex){ ada_kesalahan = true; }} if (ada_kesalahan){ String pesan = "Database tidak dapat ditemukan"; } ResultSet hasilQuery = null; %> <table border="0" align="center" bgcolor="#CAFEFF"> <%@ include file = "head.jsp" %> <tr><table class="colorhead" border="0" width="100% "> <tr><td align="center"><a class="submenu" href="./home_admin.jsp">Home</a> | <a cla ss="submenu" href="./pageBarang.jsp">Kembali</a></td></tr></tabl e></tr> <hr><br><tr><td><table border="0" cellpadding="0" cellspacing="0" width="100%"> <tr><%if(request.getAttribute("pesan")!=null) out.println(request.getAttribute("pesan").toString( )); %> <%if(request.getAttribute("pesan1")!=null) out.println(request.getAttribute("pesan1").toString ()); %> <%out.println(request.getAttribute("pesan2").toStri ng()); %><form action="./simpan_ubahBarang" method="post"> <td width="70%" valign="top" align="right"> <table class="isi" id="colormenu" border="0" cellpa dding="4" cellspacing="0" width="500px" align="center" height ="100%"> <tr><td align="center" width="70%"> <tr><td align="center" class="colormenu" colspan="3 "> <h1 class="isi2">Ubah Data Barang</h1> <hr></td></tr><%DaftarBarang daftarbarang=null; if(request.getAttribute("daftarbarang")!=null){ daftarbarang=(DaftarBarang)request.getAttribute("da ftarbarang"); }%> <tr class="colormenu"> <td>Kode Barang</td> <td>:</td> <td><input type="text" value="<%=daftarbarang.getKo deBarang()%>" readonly></td></tr> <tr class="colormenu"> <td>Kode Jenis</td> <td>:</td> <td><input type="text" size="20" value="<%=daftarbarang.getKodeJenis()%>" readonly> &nb sp; <select name="kodeJenis" > <option value="0" selected>Pilih Jenis <% //----Bentuk daftar pilihan kode Pelanggan hasilQuery = null; try{ Statement stm = con.createStatement(); hasilQuery = stm.executeQuery( "select kodeJenis, nama_jenis from jenisbarang orde r by nama_jenis asc "); } catch (Exception ex){ ada_kesalahan = true;
159
} if(!ada_kesalahan){ try{ while (hasilQuery.next()){ String kodeJen = hasilQuery.getString("kodeJenis"); String nama _jen = hasilQuery.getString("nama_jenis"); String sel; if(kodeJen.equals(kodeJen)) sel = "selected"; else sel = ""; out.print("<option value=\""+ kodeJen + "\""+ sel + ">" + nama_jen); } } catch (Exception ex){ ada_kesalahan = true; }}%> </option></select></td></tr> <tr class="colormenu"> <td>Nama Barang</td> <td>:</td> <td><input type="text" name="nama" size="50" value="<%=daftarbarang.getNama()%>"/> </td></tr><tr class="colormenu"> <td>Satuan</td> <td>:</td> <td><input type="text" readonly value="<%=daftarbarang.getSatuan()%>"/><br> <input type="radio" name="satuan" value="Buah" />Bu ah <input type="radio" name="satuan" value="m2"/>m2 &n bsp; <input type="radio" name="satuan" value="Unit"/>Uni t </td></tr> <tr class="colormenu"> <td>Harga (Rp.)</td> <td>:</td> <td><input type="number" name="hargaBrg" value="<%=daftarbarang.getHarga()%>"/> </td></tr> <tr class="colormenu"> <td>Harga Denda Rusak/Hilang (Rp.)</td> <td>:</td> <td><input type="number" name="hargaDen" value="<%=daftarbarang.getHargaDenda()%>"/> </td></tr> <tr class="colormenu" ><td colspan="3" align="cente r"> <input type="hidden" name="data_lama" value="<%=daftarbarang.getKodeBarang()%>"> <input type="submit" value="Simpan" ></td> </tr></td></tr></table></td></form></tr></table></t d></tr> </table></tr></td></tr><br><br><br> <tr><td align="center"> <table class="image2" id="bawah3" width="100%"> <tbody class="isi4"><tr><td>© Copyright 2008 </td> </tr> <tr><td>Created by aniez</td></tr></tbody></table>< /td></tr> </body></html>
Setelah admin menekan tombol “Simpan”, maka sistem akan mengirimkan request ke
servlet “simpan_ubahBarang”. Listing program servlet “simpan_ubahBarang” adalah:
160
protected void processRequest(HttpServletRequest re quest, HttpServletResponse response) throws ServletException, IOException { String kodeJenis = request.getParameter("kodeJenis" ); String nama = request.getParameter("nama"); String satuan = request.getParameter("satuan"); String hargaBrg = request.getParameter("hargaBrg"); int harga=0; harga = Integer.parseInt(hargaBrg); String hargaD = request.getParameter("hargaDen"); int harga_D=0; harga_D = Integer.parseInt(hargaD); DaftarBarang daftarbarang = new DaftarBarang(); daftarbarang.setKodeJenis(kodeJenis); daftarbarang.setNama(nama); daftarbarang.setSatuan(satuan); daftarbarang.setHarga(harga); daftarbarang.setHargaDenda(harga_D); HttpSession sess = request.getSession(true); if((daftarbarang.getKodeJenis().equalsIgnoreCase("0 "))&& (daftarbarang.getNama().equalsIgnoreCase(""))&& (daftarbarang.getSatuan().equalsIgnoreCase(""))&& (daftarbarang.getHarga()==0)&& (daftarbarang.getHargaDenda()==0)){ System.out.println("Pendaftaran gagal!"); request.setAttribute("pesan1", "Data gagal disimpan !!!"); request.setAttribute("pesan2", "Silakan Lengkapi da ta!!!"); RequestDispatcher dis = null; dis = request.getRequestDispatcher("./error.jsp"); dis.forward(request,response); } else if((daftarbarang.getKodeJenis().equalsIgnoreCa se("0"))|| (daftarbarang.getNama().equalsIgnoreCase(""))|| (request.getParameter("satuan")==null)|| (request.getParameter("hargaBrg").equals(""))|| (request.getParameter("hargaDen").equals(""))){ System.out.println("Pendaftaran gagal!"); request.setAttribute("pesan1", "Data gagal disimpan !!!"); request.setAttribute("pesan2", "Silakan Lengkapi da ta!!!"); RequestDispatcher dis = null; dis = request.getRequestDispatcher("./error.jsp"); dis.forward(request,response); } else if((daftarbarang.getKodeJenis().equalsIgnoreCa se("0"))&& (daftarbarang.getNama().equalsIgnoreCase(""))&& (request.getParameter("satuan").equals("Buah")&& (hargaBrg.equals(""))&&(hargaD.equals("")))){ System.out.println("Pendaftaran gagal!"); request.setAttribute("pesan1", "Data gagal disimpan !!!"); request.setAttribute("pesan2", "Silakan Lengkapi da ta!!!"); RequestDispatcher dis = null; dis = request.getRequestDispatcher("./error.jsp"); dis.forward(request,response); } else if((daftarbarang.getKodeJenis().equalsIgnoreCa se("0"))&& (daftarbarang.getNama().equalsIgnoreCase(""))&& (request.getParameter("satuan").equals("m2")&& (daftarbarang.getHarga()==0)||(hargaBrg.equals("")) || (hargaD.equals("")))){ System.out.println("Pendaftaran gagal!");
161
request.setAttribute("pesan1", "Data gagal disimpan !!!"); request.setAttribute("pesan2", "Silakan Lengkapi da ta!!!"); RequestDispatcher dis = null; dis = request.getRequestDispatcher("./error.jsp"); dis.forward(request,response); } else if((daftarbarang.getKodeJenis().equalsIgnoreCa se("0"))&& (daftarbarang.getNama().equalsIgnoreCase(""))&& (request.getParameter("satuan").equals("Unit")&& (daftarbarang.getHarga()==0)||(hargaBrg.equals("")) || (hargaD.equals("")))){ System.out.println("Pendaftaran gagal!"); request.setAttribute("pesan1", "Data gagal disimpan !!!"); request.setAttribute("pesan2", "Silakan Lengkapi da ta!!!"); RequestDispatcher dis = null; dis = request.getRequestDispatcher("./error.jsp"); dis.forward(request,response); } else if((daftarbarang.getKodeJenis().equals(kodeJen is))&& (daftarbarang.getNama().equals(nama))&& (request.getParameter("satuan").equals("Buah"))&& (daftarbarang.getHarga()==harga)&& (daftarbarang.getHargaDenda()==harga_D)){ DaftarBarangBO bo = new DaftarBarangBO(); int x = bo.ubahBarang(daftarbarang, request.getParameter("data_lama")); RequestDispatcher dis = null; dis = request.getRequestDispatcher("./pageBarang.js p?"); dis.forward(request,response); } else if((daftarbarang.getKodeJenis().equals(kodeJen is))&& (daftarbarang.getNama().equals(nama))&& (request.getParameter("satuan").equals("m2"))&& (daftarbarang.getHarga()==harga)&& (daftarbarang.getHargaDenda()==harga_D)){ DaftarBarangBO bo = new DaftarBarangBO(); int x = bo.ubahBarang(daftarbarang, request.getParameter("data_lama")); RequestDispatcher dis = null; dis = request.getRequestDispatcher("./pageBarang.js p?"); dis.forward(request,response); } else if((daftarbarang.getKodeJenis().equals(kodeJen is))&& (daftarbarang.getNama().equals(nama))&& (request.getParameter("satuan").equals("Unit"))&& (daftarbarang.getHarga()==harga)&& (daftarbarang.getHargaDenda()==harga_D)){ DaftarBarangBO bo = new DaftarBarangBO(); int x = bo.ubahBarang(daftarbarang, request.getParameter("data_lama")); RequestDispatcher dis = null; dis = request.getRequestDispatcher("./pageBarang.js p?"); dis.forward(request,response); } sess.setAttribute("ubahBarang", daftarbarang); }
Pada servlet “simpan_ubahBarang” terjadi pengecekan data – data yang
dimasukkan. Jika data yang dimasukkan salah atau tidak lengkap, maka dikirim ke
162
halaman error yang menampilkan pesan error. Jika data yang dimasukkan benar atau
lengkap, maka dikirim ke servlet “daftarBarang”. Pada servlet “daftarBarang”
mengirimkan data ke halaman “pageBarang.jsp” yaitu halaman Daftar Barang. Ada
fasilitas tombol lain yang dapat dipilih admin, yaitu tombol “Kembali” untuk kembali
ke halaman Daftar Barang, tombol “Home” untuk kembali ke halaman utama admin.
4.2.2.5.Proses Hapus Data
Proses hapus data pada sistem informasi persewaan perlengkapan pesta pada
umumnya hampir sama, oleh karena itu di sini hanya akan mengambil contoh satu
proses hapus data, yaitu hapus barang.
Gambar 4.8. Form Hapus Barang
Gambar 4.8 merupakan form untuk melakukan penghapusan barang. Data
yang ditampilkan pada gambar 4.8 merupakan hasil request ke servlet “hapusBarang”.
Listing program servlet “hapusBarang” adalah :
protected void processRequest(HttpServletRequest re quest, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html;charset=UTF-8"); PrintWriter out = response.getWriter(); String kode = request.getParameter("kode"); DaftarBarangBO bo=new DaftarBarangBO();
163
DaftarBarang daftarbarang=bo.dataBarang(kode); RequestDispatcher dis = null; request.setAttribute("daftarbarang",daftarbarang); dis = request.getRequestDispatcher("./hapusBarang.j sp"); dis.forward(request,response); }
Dengan demikian secara otomatis dapat ditampilkan semua data pada saat memilih
salah satu barang yang akan dihapus yang terdapat pada form Daftar Barang (gambar
4.7). Listing JSP untuk menampilkan Form Hapus Barang seperti pada gambar 4.8
adalah :
<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Halaman Hapus Pegawai</title> </head> <body> <body id="b"> <table border="0" align="center" bgcolor="#CAFEFF"> <%@ include file = "head.jsp" %> <tr> <table class="colorhead" border="0" width="100%"><t r><td align="center"><a class="submenu" href="./home_admin.jsp">Home</a></td></tr></table>< /tr> <hr><br><tr><td><table border="0" cellpadding="0" cellspacing="0" width="100%"> <tr><%if(request.getAttribute("pesan2")!=null) out.println(request.getAttribute("pesan2").toString ()); %><form action="./konfirmHapusBrg" method="post"> <td width="70%" valign="top" align="right"> <table class="isi" id="colormenu" border="0" cellpa dding="4" cellspacing="0" width="500px" align="center" height ="100%"> <tr><td align="center"><table border="1" width="100 %"> <tr><td align="center" class="colormenu" colspan="3 " > <h1 class="isi2">Hapus Data Barang</h1> <hr></td></tr> <%DaftarBarang daftarbarang=null; if(request.getAttribute("daftarbarang")!=null){ daftarbarang=(DaftarBarang)request.getAttribute("da ftarbarang"); }%> <tr class="colormenu"><td>Kode Barang </td><td > <%= daftarbarang.getKodeBarang() %></td></tr> <tr class="colormenu"><td >Kode Jenis </td><td > <%= daftarbarang.getKodeJenis()%></td></tr> <tr class="colormenu"><td >Nama Barang </td><td > <%= daftarbarang.getNama() %></td></tr> <tr class="colormenu"><td >Satuan </td><td > <%= daftarbarang.getSatuan() %></td></tr> <tr class="colormenu"><td >Harga (Rp.)</td><td > <%= daftarbarang.getHarga() %></td></tr> <tr class="colormenu"><td >Harga Denda Rusak/Hilang (Rp.)</td><td ><%= daftarbarang.getHargaDenda() %>< /td></tr> <tr class="colormenu"><td >Stok Awal</td><td > <%= daftarbarang.getStok()%></td></tr> <tr class="colormenu"><td >Stok Jan </td><td >
164
<%= daftarbarang.getStok_jan()%></td></tr> <tr class="colormenu"><td >Stok Feb </td><td > <%= daftarbarang.getStok_feb()%></td></tr> <tr class="colormenu"><td >Stok Mar </td><td > <%= daftarbarang.getStok_mar()%></td></tr> <tr class="colormenu"><td >Stok Apr </td><td > <%= daftarbarang.getStok_apr()%></td></tr> <tr class="colormenu"><td >Stok Mei </td><td > <%= daftarbarang.getStok_mei()%></td></tr> <tr class="colormenu"><td >Stok Jun </td><td > <%= daftarbarang.getStok_jun()%></td></tr> <tr class="colormenu"><td >Stok Jul </td><td > <%= daftarbarang.getStok_jul()%></td></tr> <tr class="colormenu"><td >Stok Ags </td><td > <%= daftarbarang.getStok_agust()%></td></tr> <tr class="colormenu"><td >Stok Sep </td><td > <%= daftarbarang.getStok_sept()%></td></tr> <tr class="colormenu"><td >Stok Okt </td><td > <%= daftarbarang.getStok_okt()%></td></tr> <tr class="colormenu"><td >Stok Nov </td><td > <%= daftarbarang.getStok_nov()%></td></tr> <tr class="colormenu"><td >Stok Des </td><td > <%= daftarbarang.getStok_des()%></td></tr> <tr class="colormenu" > <td colspan="3" align="center"> <input type="hidden" name="kode" value="<%=daftarbarang.getKodeBarang()%>"> <input type="submit" value="Hapus" ><input type="bu tton" value="Kembali" onclick="self.history.back();" ></t d></table> </td></tr></table></td></form></tr></table></td></t r></table> </tr></td></tr><br><br><br> <tr><td align="center"> <table class="image2" id="bawah3" width="100%"> <tbody class="isi4"><tr><td>© Copyright 2008 </td>< /tr> <tr><td>Created by aniez</td></tr></tbody></table>< /td></tr> </body></html>
Setelah admin menekan tombol “Hapus”, maka sistem akan mengirimkan request ke
servlet “konfirmHapusBarang”. Listing program servlet “konfirmHapusBarang”
adalah :
protected void processRequest(HttpServletRequest re quest, HttpServletResponse response) throws ServletException, IOException { String kode = request.getParameter("kode"); DaftarBarangBO bo=new DaftarBarangBO(); int x=bo.hapusBarang(kode); RequestDispatcher dis = null; if(x>0){ dis = request.getRequestDispatcher("./pageBarang.js p"); }else{ dis = request.getRequestDispatcher("./pageBarang.js p"); } dis.forward(request,response); }
165
Pada servlet “konfirmHapusBarang” terjadi pengecekan data – data yang
dihapus. Data yang dapat dihapus maupun tidak dapat dihapus dikirim ke servlet
“daftarBarang”. Dalam servlet “daftarBarang” mengirimkan data ke halaman
“pageBarang.jsp” yaitu halaman Daftar Barang. Jika data tidak dapat dihapus maka
ditampilkan pesan gagal dihapus. Ada fasilitas tombol lain yang dapat dipilih admin,
yaitu tombol “Kembali” untuk kembali ke sebelum halaman Hapus Barang, tombol
“Home” untuk kembali ke halaman utama admin.
4.2.2.6.Proses Sewa Barang
Proses sewa barang merupakan proses pencatatan perlengkapan yang akan
dipinjam oleh pelanggan. Proses ini dilakukan oleh petugas UD. ROSARI.
Penjelasan gambar dan listing program proses persewaan sewa barang adalah sebagai
berikut:
166
Gambar 4.9. Form Daftar Sewa
Proses sewa barang dimulai dari memilih link “sewabarang” yang terdapat
pada Daftar Sewa (gambar 4.9), ketika dipilih maka form akan memanggil
servlet “sewabarang”.
Listing servlet “sewabarang” adalah sebagai berikut:
protected void processRequest(HttpServletRequest re quest, HttpServletResponse response) throws ServletException, IOException { String kode = request.getParameter("kode"); int kod = Integer.parseInt(kode); DaftarSewaBO bo=new DaftarSewaBO(); DaftarSewaBO bo2=new DaftarSewaBO(); DaftarBarang daftarbarang = new DaftarBaran g(); HttpSession sess = request.getSession(true) ; RequestDispatcher dis = null; DaftarSewa daftarsewa=bo.dataSewa(kod); DaftarPelanggan daftarsewa2=bo.dataSewa2(ko d); System.out.println(daftarsewa.getKodeSewa() ); request.setAttribute("daftarsewa",daftarsew a); request.setAttribute("daftarsewa2",daftarse wa2); dis = request.getRequestDispatcher("./sewaB arang.jsp"); dis.forward(request,response); }
167
Pada listing servlet “sewabarang” mengirim request ke halaman
“sewaBarang.jsp” yaitu halaman untuk melakukan pencatatan barang – barang
yang akan dipinjam.
Gambar 4.10. Form Sewa Barang
Listing JSP untuk menampilkan halaman “sewaBarang.jsp” seperti
pada gambar 4.10 adalah sebagai berikut:
<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Halaman Sewa Barang</title> </head> <body id="b"> <% boolean ada_kesalahan = false; Connection con = null; try{ Class.forName("com.mysql.jdbc.Driver"); } catch (Exception ex){ ada_kesalahan = true; } if (!ada_kesalahan){ // Bentuk koneksi con = null; try{ con = DriverManager.getConnection("jdbc:mysql://localhost :3306/ ud_rosari", "root", "kingdom"); } catch (Exception ex){ ada_kesalahan = true; } }
168
if (ada_kesalahan){ String pesan4 = "Database tidak dapat ditem ukan"; response.sendRedirect("sewaBarang.jsp?pesan 4="+pesan4); } ResultSet hasilQuery = null; %> <% String jumB = request.getParameter("jumlahP injam"); %> <table border="0" align="center" bgcolor="#CAFE FF"> <%@ include file = "head.jsp" %> <tr> <table class="colorhead" border="0" width="100%"> <tr><td align="center"> <a class="submenu" href="./home_admin.jsp">Home</a> | <a class="submenu" href="./pagePersewaan.jsp">Kembali</a></td></tr></t able></tr> <hr><br><tr><td><table border="0" cellpadding="0" cellspacing="0" width="100%"> <tr><%if(request.getAttribute("pesan")!=null) out.println(request.getAttribute("pesan").toString( )); %> <% if(request.getAttribute("pesan1")!=null) out.println(request.getAttribute("pesan1").toString ()); %> <% if(request.getAttribute("pesan2")!=null) out.println(request.getAttribute("pesan2").toString ()); %> <form action="./simpan_sewaBarang" method="post"> <td width="70%" valign="top" align="right"> <table class="isi" id="colormenu" border="0" cellpa dding="4" cellspacing="0" width="500px" align="center" height ="100%"> <tr><td align="center" width="70%"> <tr><td align="center" class="colormenu" colspan="3 "> <h1 class="isi2">Sewa Barang</h1> <hr></td></tr> <%DaftarSewa daftarsewa=null; if(request.getAttribute("daftarsewa")!=null){ daftarsewa=(DaftarSewa)request.getAttribute("daftar sewa"); } %> <% DaftarPelanggan daftarsewa2=null; if(request.getAttribute("daftarsewa2")!=null){ daftarsewa2= (DaftarPelanggan)request.getAttribute("daftarsewa2" );} %> <tr class="colormenu"><td>Kode Sewa</td> <td>:</td> <td><input type="text" name="txtkodeSewa" size="10" maxlength="10" value="<%=daftarsewa.getKodeSewa()%> " readonly/></td></tr> <tr class="colormenu"> <td>Kode Pelanggan</td> <td>:</td> <td><input type="text" name="txtkodePel" size="30" maxlength="30" value="<%=daftarsewa.getKodePel()%>" readonly/></td></tr> <tr class="colormenu"> <td>Nama Pelanggan</td> <td>:</td> <td><input type="text" size="40" maxlength="50"
169
value="<%=daftarsewa2.getNama()%>" readonly/></td>< /tr> <tr class="colormenu"> <td>Tanggal Sewa</td> <td>:</td> <td><input type="text" name="txttglSewa" size="10" maxlength="10" value="<%=daftarsewa.getTglSewa()%>" readonly/></td></tr> <tr class="colormenu"> <td>Tanggal Harus Kembali</td> <td>:</td> <td><input type="text" name="txttglKembali" size="1 0" maxlength="10" value="<%=daftarsewa.getTglHarusKemb ali()%>" readonly/></td> </tr> <tr class="colormenu"> <td>Kode Barang</td> <td>:</td> <td><select name="kodeBarang"> <option value="0" selected >Pilih Kode Barang <% //---- Bentuk daftar pilihan kode Barang hasilQuery = null; try{ Statement stm = con.createStatement(); hasilQuery = stm.executeQuery( "select kodeBarang, nama, harga from daftarbarang o rder by nama asc "); } catch (Exception ex){ ada_kesalahan = true; } if(!ada_kesalahan){ try{ while (hasilQuery.next()){ String kodeBarang = hasilQuery.getString("kodeBaran g"); String nama = hasilQuery.getString("nama"); Stri ng harga = hasilQuery.getString("harga"); String sel; if(kodeBarang.equals(kodeBarang)) sel = "selected"; else sel = ""; out.print("<option value=\""+ kodeBarang + "\ ""+ harga + "\ ""+ sel + ">" + nama); } } catch (Exception ex){ ada_kesalahan = true; }}%> </option></select></td> </tr> <tr class="colormenu"><td>Jumlah Pinjam</td> <td>:</td> <td><input type="numerik" name="juml" size="5" maxl ength="5" value="<% if((jumB!=null)&&(jumB!="")) out.print(jumB);%>"></td></tr> <tr class="colormenu"><td colspan="5" align="center "> <input type="submit" name="Submit" value="Simpan"> <input type="reset" name="Reset" value="Batal"> </td></tr></td></tr></table></td></form></tr></tabl e></td></tr></table></tr></td></tr><br><br><br> <tr><td align="center"> <table class="image2" id="bawah3" width="100%"> <tbody class="isi4"><tr><td>© Copyright 2008 </td> </tr>
170
<tr><td>Created by aniez</td></tr></tbody></table>< /td></tr> </body></html>
Setelah pengguna akses memasukkan data – data pada form yang telah
disediakan, maka dengan menekan tombol “Simpan”, sistem akan
mengirimkan request ke servlet “simpan_sewaBarang” . Listing program
untuk servlet “simpan_sewaBarang” adalah sebagai berikut:
protected void processRequest(HttpServletRequest re quest, HttpServletResponse response) throws ServletException, IOException { PrintWriter out = response.getWriter(); String kodeSewa = request.getParameter("txt kodeSewa"); int kodeS = Integer.parseInt(kodeSewa); String kodePel = request.getParameter("txtk odePel"); String tglSewa = request.getParameter("txtt glSewa"); String tglKembali = request.getParameter("txttglKembali"); String kodBrg = request.getParameter("kodeB arang"); String jumBrg = request.getParameter("juml" ); int jum = 0; if(request.getParameter("juml").equals("")) { RequestDispatcher dis = null; request.setAttribute("pesan2", "Silakan lengkapi data!!!"); dis = request.getRequestDispatcher("./e rror.jsp"); } else { jum = Integer.parseInt(jumBrg); } DaftarBarang daftarbarang = new DaftarBaran g(); Sewa_Kembali sewa_kembali = new Sewa_Kembal i(); sewa_kembali.setKodeSewa(kodeS); sewa_kembali.setKodePel(kodePel); sewa_kembali.setTglSewa(tglSewa); sewa_kembali.setTglHarusKembali(tglKembali) ; sewa_kembali.setKodeBarang(kodBrg); sewa_kembali.setJumlahPinjam(jum); HttpSession sess = request.getSession(true) ; RequestDispatcher dis = null; if((sewa_kembali.getKodeSewa()==kodeS)&& (sewa_kembali.getKodePel().equals(kodePel))&& (sewa_kembali.getTglSewa().equals(tglSewa))&& (sewa_kembali.getTglHarusKembali().equals(tglKembal i))&& (sewa_kembali.getKodeBarang().equals(kodBrg)) && (sewa_kembali.getJumlahPinjam()==0)){ System.out.println("Pendaftaran gagal bok!"); request.setAttribute("pesan1", "Data gagal di simpan!!!"); request.setAttribute("pesan2","Silakan lengka pi data!!"); dis = request.getRequestDispatcher("./error.j sp"); } else
171
if((sewa_kembali.getKodeSewa()==kodeS)&& (sewa_kembali.getKodePel().equals(kodePel))& & (sewa_kembali.getTglSewa().equals(tglSewa))& & (sewa_kembali.getTglHarusKembali().equals(tg lKembali))&& (sewa_kembali.getKodeBarang().equals(kodBrg) )&& (sewa_kembali.getJumlahPinjam()==jum)){ SewaKembaliBO bo = new SewaKembaliBO(); int x = bo.sewaBarang(sewa_kembali); dis = request.getRequestDispatcher("./DaftarPeminjam an.jsp"); } else{ System.out.println("Pendaftaran gagal bok!"); request.setAttribute("pesan1", "Data gagal disi mpan!!!"); request.setAttribute("pesan2", "Silakan lengkap i data!!!"); dis = request.getRequestDispatcher("./error.jsp "); } sess.setAttribute("peminjaman", sewa_kembali); dis.forward(request,response);}
Request yang ditangkap pada servlet “simpan_sewaBarang” kemudian
dikirimkan ke halaman “DaftarPeminjaman.jsp” yaitu halaman hasil
pencatatan peminjaman barang seperti pada gambar 4.11. Jika data – data
yang dimasukkan salah atau tidak lengkap, maka ditampilkan pesan error. Ada
fasilitas tombol lain yang dapat dipilih pengguna akses, yaitu tombol
“Kembali” untuk kembali ke halaman Daftar Sewa, tombol “Home” untuk
kembali ke halaman utama pengguna akses.
172
Gambar 4.11. Form Daftar Peminjaman Barang
4.2.2.7.Proses Pengembalian Barang
Proses pengembalian barang dalam sistem informasi persewaan perlengkapan
pesta ini merupakan proses mencatat barang yang dikembalikan. Penjelasan gambar
dan listing program proses pengembalian barang adalah sebagai berikut:
Gambar 4.12. Form Daftar Peminjaman Barang yang Akan Dikembalikan
173
Proses pengembalian barang dimulai dari memilih link “dikembalikan”
yang terdapat pada gambar 4.12, ketika dipilih maka form akan memanggil
servlet “tambahPengembalian”.
Listing servlet “tambahPengembalian” adalah sebagai berikut:
protected void processRequest(HttpServletRequest re quest, HttpServletResponse response) throws ServletException, IOException { String KodSewa = request.getParameter("kodeS"); int Kod_Sewa = Integer.parseInt(KodSewa); String KodPel = request.getParameter("kodeP"); String KodBrg = request.getParameter("kodeBrg") ; SewaKembaliBO bo=new SewaKembaliBO(); SewaKembaliBO bo2=new SewaKembaliBO(); SewaKembaliBO bo3=new SewaKembaliBO(); RequestDispatcher dis = null; Sewa_Kembali sewa_kembali=bo.dataSewaBrg(Kod_Se wa, KodPel, KodBrg); DaftarPelanggan sewa_kembali2=bo2.dataSewaBrg2( Kod_Sewa); DaftarBarang sewa_kembali3=bo3.dataSewaBrg3(Kod Brg); System.out.println(sewa_kembali.getKodeSewa()); System.out.println(sewa_kembali.getKodePel()); System.out.println(sewa_kembali.getKodeBarang() ); request.setAttribute("sewa_kembali",sewa_kembal i); request.setAttribute("sewa_kembali2",sewa_kemba li2); request.setAttribute("sewa_kembali3",sewa_kemba li3); dis = request.getRequestDispatcher("./dikembal ikan.jsp"); dis.forward(request,response); }
Pada listing servlet “tambahPengembalian” mengirim request ke
halaman “dikembalikan.jsp” yaitu halaman untuk melakukan pengembalian
barang – barang yang telah selesai dipinjam.
Gambar 4.13. Form Tambah Pengembalian
174
Listing JSP untuk menampilkan halaman “dikembalikan.jsp” seperti
pada gambar 4.13 adalah sebagai berikut:
<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Pengembalian Barang yang Dipinjam</title> </head> <body> <body id="b"> <% boolean ada_kesalahan = false; Connection con = null; try{ Class.forName("com.mysql.jdbc.Driver"); } catch (Exception ex){ ada_kesalahan = true; } if (!ada_kesalahan){ // Bentuk koneksi con = null; try{ con = DriverManager.getConnection("jdbc:mysql://local host:3306/ ud_rosari", "root", "kingdom"); } catch (Exception ex){ ada_kesalahan = true; } } if (ada_kesalahan){ String pesan3 = "Database tidak dapat ditemu kan"; response.sendRedirect("ubahSewa.jsp?pesan3=" +pesan3); } ResultSet hasilQuery = null; %> <% String juml = request.getParameter("jumlahPinjam" ); String jumR = request.getParameter("jumBrgRusak_H ilang"); %> <table border="0" align="center" bgcolor="#CAFEFF "> <%@ include file = "head.jsp" %> <tr> <table class="colorhead" border="0" width="100%"><t r><td align="center"><a class="submenu" href="./home_admin.jsp">Home</a> | <a class="submenu" onclick="self.history.back()">K embali</a> </td></tr></table></tr> <hr><br><tr><td> <table border="0" cellpadding="0" cellspacing="0" w idth="100%"> <tr> <% if(request.getAttribute("pesan")!=null) out.println(request.getAttribute("pesan").toStrin g()); %> <%
175
if(request.getAttribute("pesan1")!=null) out.println(request.getAttribute("pesan1").toStrin g()); %> <%if(request.getAttribute("pesan2")!=null) out.println(request.getAttribute("pesan2").toString ()); %> <form action="./dikembalikan" method="post"> <td width="70%" valign="top" align="right"> <table class="isi" id="colormenu" border="0" cellpa dding="4" cellspacing="0" width="500px" align="center" height ="100%"> <tr><td align="center" width="70%"> <tr><td align="center" class="colormenu" colspan="6 "> <h1 class="isi2">Pengembalian Barang yang Dipinjam< /h1> <hr></td></tr> <%Sewa_Kembali sewa_kembali=null; if(request.getAtt ribute("sewa_kembali")!=null){ sewa_kembali= (Sewa_Kembali)request.getAttribute("sewa_kembali"); } %> <% DaftarPelanggan sewa_kembali2=null; if(request.getAttribute("sewa_kembali2")!=null){ sewa_kembali2= (DaftarPelanggan)request.getAttribute("sewa_kembali 2"); } %> <%DaftarBarang sewa_kembali3=null; if(request.getAttribute("sewa_kembali3")!=null){ sewa_kembali3= (DaftarBarang)request.getAttribute("sewa_kembali3") ; } %> <tr class="colormenu"> <td>Kode Sewa</td> <td>:</td> <td><input type="text" name="kodeS" value="<%=sewa_kembali.getKodeSewa()%>" readonly></ td></tr> <tr class="colormenu"> <td>Kode Pelanggan</td> <td>:</td> <td><input type="text" size="30" maxlength="30" nam e="kodePel" value="<%=sewa_kembali.getKodePel()%>" readonly></t d></tr> <tr class="colormenu"> <td>Nama Pelanggan</td> <td>:</td> <td><input type="text" size="30" value="<%=sewa_kembali2.getNama()%>" readonly></td> </tr> <tr class="colormenu"> <td>Kode Barang</td> <td>:</td> <td><input type="text" name="kodeBrg" value="<%=sewa_kembali.getKodeBarang()%>" readonly> </td></tr> <tr class="colormenu"> <td>Nama Barang</td> <td><input type="text" size="30" value="<%=sewa_kembali3.getNama()%>" readonly></td> </tr> <tr class="colormenu"> <td>Jumlah Pinjam</td> <td>:</td> <td><input type="text" value="<%=sewa_kembali.getJumlahPinjam()%>" readonl y></td></tr> <tr class="colormenu">
176
<td>Jumlah Kembali</td> <td>:</td> <td><input type="numerik" name="juml" size="20" max length="20" value="<% if((juml!=null)&&(juml!="")) out.print(ju ml); %>"></td></tr> <tr class="colormenu"><td>Jumlah Barang Rusak/Hilan g/Pecah</td> <td>:</td> <td><input type="numerik" name="jumR" size="20" max lengt h="20" value="<% if((jumR!=null)&&(jumR!="")) out.print(ju mR); %>"></td></tr> <tr class="colormenu"><td colspan="6" align="center "> <input type="submit" value="Simpan"></td></tr></td> </tr> </table></td></form></tr></table></td></tr></table> </tr></td> </tr><br><br><br> <tr><td align="center"><table class="image2" id="ba wah3" width="100%"><tbody class="isi4"><tr><td>© Copyrig ht 2008 </td></tr><tr><td>Created by aniez</td></tr></tbody ></table> </td></tr></body></html>
Setelah pengguna akses memasukkan data – data pada form yang telah
disediakan, maka dengan menekan tombol “Simpan”, sistem akan
mengirimkan request ke servlet “dikembalikan” . Listing program untuk
servlet “dikembalikan” adalah sebagai berikut:
protected void processRequest(HttpServletRequest re quest, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html;charset= UTF-8"); PrintWriter out = response.getWriter(); String kodSewa = request.getParameter("kode S"); int kod_Sewa = Integer.parseInt(kodSewa); String kodPel = request.getParameter("kodeP el"); String kodBrg = request.getParameter("kodeB rg"); String jumKembali = request.getParameter("j uml"); String jumRusak = request.getParameter("jum R"); int jumK = 0; int jumR = 0; RequestDispatcher dis = null; if(request.getParameter("juml").equals("")) { dis = request.getRequestDispatcher("./error .jsp"); } else { jumK = Integer.parseInt(jumKembali); } if(request.getParameter("jumR").equals("")) { dis=request.getRequestDispatcher("./err or.jsp"); } else { jumR = Integer.parseInt(jumRusak); } Sewa_Kembali sewa_kembali = new Sewa_Kembal i(); sewa_kembali.setKodeSewa(kod_Sewa); sewa_kembali.setKodePel(kodPel); sewa_kembali.setKodeBarang(kodBrg); sewa_kembali.setJumlahKembali(jumK);
177
sewa_kembali.setJumBrgRusak_Hilang(jumR); HttpSession sess = request.getSession(true) ; if(request.getParameter("juml").equalsIgnoreCase( "")|| jumK==0){ System.out.println("Jumlah tidak boleh 0!"); request.setAttribute("pesan1","Jumlah tidak bole h 0!" ); request.setAttribute("pesan2","Jumlah harus diis i" ); dis = request.getRequestDispatcher("./error.jsp" ); } else if((sewa_kembali.getKodeSewa()==kod_Sewa)&& (sewa_kembali.getKodePel().equals(kodPel))&& (sewa_kembali.getKodeBarang().equals(kodBrg)) && (sewa_kembali.getJumlahKembali()==jumK)&& (sewa_kembali.getJumBrgRusak_Hilang()==jumR)){ SewaKembaliBO bo = new SewaKembaliBO(); int x = bo.pengembalian(sewa_kembali); dis = request.getRequestDispatcher("./pengemb alian.jsp"); } sess.setAttribute("lihatPinjamBarang", sewa_kemb ali); dis.forward(request,response); }
Request yang ditangkap pada servlet “dikembalikan” kemudian
dikirimkan ke halaman “pengembalian.jsp” yaitu halaman hasil pencatatan
pengembalian barang seperti pada gambar 4.14. Jika data – data yang
dimasukkan salah atau tidak lengkap, maka ditampilkan pesan error. Ada
fasilitas tombol lain yang dapat dipilih pengguna akses, yaitu tombol
“Kembali” untuk kembali ke halaman Daftar Peminjaman Barang yang Akan
Dikembalikan (gambar 4.12), tombol “Home” untuk kembali ke halaman
utama pengguna akses.
178
Gambar 4.14. Form Daftar Pengembalian Barang
4.2.2.8.Proses Transaksi Persewaan
Proses transaksi persewaan dalam sistem informasi persewaan perlengkapan
pesta ini merupakan proses mencatat transaksi peminjaman barang. Penjelasan
gambar dan listing program proses transaksi adalah sebagai berikut:
Gambar 4.15. Form Daftar Transaksi Pelanggan
179
Proses transaksi dimulai dari memilih link “transaksi” yang terdapat
pada gambar 4.15, ketika dipilih maka form akan memanggil servlet
“transaksi”.
Listing servlet “transaksi” adalah sebagai berikut:
protected void processRequest(HttpServletRequest re quest, HttpServletResponse response) throws ServletException, IOException { String KdSewa = request.getParameter("kodeSewa"); int Kd_Sewa = Integer.parseInt(KdSewa); SewaKembaliBO bo=new SewaKembaliBO(); SewaKembaliBO bo2=new SewaKembaliBO(); RequestDispatcher dis = null; HttpSession sess = request.getSession(true); Sewa_Kembali sewa_kembali=bo.lihatTotH(Kd_Sewa); DaftarPelanggan sewa_kembali2= bo2.dataSewaBrg2(Kd _Sewa); System.out.println(sewa_kembali.getKodeSewa()); System.out.println(sewa_kembali2.getNama()); System.out.println(sewa_kembali.getKodeBarang()); request.setAttribute("sewa_kembali",sewa_kembali); request.setAttribute("sewa_kembali2",sewa_kembali2 ); dis = request.getRequestDispatcher("./tambahTransa ksi.jsp"); dis.forward(request,response); }
Pada listing servlet “transaksi” mengirim request ke halaman
“tambahTransaksi.jsp” yaitu halaman untuk melakukan pencatatan transaksi
persewaan.
Gambar 4.16. Form Tambah Transaksi
180
Listing JSP untuk menampilkan halaman “tambahTransaksi.jsp”
seperti pada gambar 4.16 adalah sebagai berikut:
<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Halaman Tambah Transaksi</title> </head> <body id="b"> <% boolean ada_kesalahan = false; Connection con = null; try{ Class.forName("com.mysql.jdbc.Driver"); } catch (Exception ex){ ada_kesalahan = true; } if (!ada_kesalahan){ // Bentuk koneksi con = null; try{ con = DriverManager.getConnection("jdbc:mysql://loc alhost:3306/ ud_rosari", "root", "kingdom"); } catch (Exception ex){ ada_kesalahan = true; } } if (ada_kesalahan){ String pesan4 = "Database tidak dapat ditem ukan"; response.sendRedirect("tambahTransaksi.jsp?pesan 4="+pesan4); } ResultSet hasilQuery = null; %> <% String transport = request.getParameter("tr ansport"); String uangM = request.getParameter("uangMu ka"); %> <table border="0" align="center" bgcolor="#CAFE FF"> <%@ include file = "head.jsp" %> <tr> <table class="colorhead" border="0" width="100%"><t r> <td align="center"> <a class="submenu" href="./home_admin.jsp">Home</a> | <a class="submenu" href="./TransaksiPelanggan.jsp"> Kembali</a> </td></tr></table></tr> <hr><br><tr><td><table border="0" cellpadding="0" cellspacing="0" width="100%"> <tr><%if(request.getAttribute("pesan")!=null) out.println(request.getAttribute("pesan").toString( )); %> <%if(request.getAttribute("pesan1")!=null) out.println(request.getAttribute("pesan1").toString ()); %>
181
<% if(request.getAttribute("pesan2")!=null) out.println(request.getAttribute("pesan2").toString ()); %> <form action="./tambahTransaksi" method="post"> <td width="70%" valign="top" align="right"> <table class="isi" id="colormenu" border="0" cellpa dding="4" cellspacing="0" width="500px" align="center" height ="100%"> <tr><td align="center" width="80%"> <tr><td align="center" class="colormenu" colspan="5 "> <h1 class="isi2">Transaksi Persewaan</h1><hr></td>< /tr> <%Sewa_Kembali sewa_kembali=null; if(request.getAttribute("sewa_kembali")!=null){ sewa_kembali= (Sewa_Kembali)request.getAttribute("sewa_kembali"); } %> <%DaftarPelanggan sewa_kembali2=null; if(request.getAttribute("sewa_kembali2")!=null){ sewa_kembali2= (DaftarPelanggan)request.getAttribute("sewa_kembali 2"); } %> <tr class="colormenu"><td>Kode Sewa</td> <td>:</td> <td><input type="text" name="kodeS" size="5" maxlen gth="10" value="<%=sewa_kembali.getKodeSewa()%>" readonly></ td></tr> <tr class="colormenu"><td>Nama Pelanggan</td> <td>:</td> <td><input type="text" name="namaPel" size="40" max length="40" value="<%=sewa_kembali2.getNama()%>" readonly></td> </tr> <tr class="colormenu"><td>Alamat Pelanggan</td> <td>:</td> <td><input type="text" name="alamat" size="40" maxl ength="50" value="<%=sewa_kembali2.getAlamat()%>" readonly></t d></tr> <tr class="colormenu"><td>Total Harga (Rp.)</td> <td>:</td> <td><input type="text" name="totH" size="15" maxlen gth="20" value="<%=sewa_kembali.getSubTotal()%>" readonly></ td></tr> <tr class="colormenu"><td>Transport (Rp.) *</td> <td>:</td> <td><input type="numerik" name="transport" size="1 5" maxlength="20" value="<% if((transport!=null)&&(transport!="")) out.print(transport); %>"></td></tr> <tr class="colormenu"> <td>Uang Muka (Rp.) *</td> <td>:</td> <td><input type="numerik" name="uangMuka" size="15" maxlength="20" value="<% if((uangM!=null)&&(uangM!="")) out.print( uangM); %>"></td></tr> <tr class="colormenu"><td colspan="5" align="center "> <input type="submit " name="Submit" value="Simpan"> <tr class="colormenu"><td class="isi7">Keterangan : </td></tr> <tr><td class="isi7">(*) Harus diisi/tidak boleh ko song atau 0 </td></tr></td></tr></table></td></form></tr></tabl e></td></tr> </table></tr></td></tr><br><br><br> <tr><td align="center"> <table class="image2" id="bawah3" width="100%"> <tbody class="isi4"><tr><td>© Copyright 2008 </td> </tr> <tr><td>Created by aniez </td></tr></tbody></table> </td></tr> </body></html>
182
Setelah pengguna akses memasukkan data – data pada form yang telah
disediakan, maka dengan menekan tombol “Simpan”, sistem akan
mengirimkan request ke servlet “tambahTransaksi” . Listing program untuk
servlet “tambahTransaksi” adalah sebagai berikut:
protected void processRequest(HttpServletRequest re quest, HttpServletResponse response) throws ServletException, IOException { String kodeSewa = request.getParameter("kod eS"); int kode_Sewa = Integer.parseInt(kodeSewa); String transp = request.getParameter("trans port"); int transport = 0; String uangM = request.getParameter("uangMu ka"); int uangMuka = 0; if(transp.equals("")){ } else { transport = Integer.parseInt(transp); } if(uangM.equals("")){ } else { uangMuka = Integer.parseInt(uangM); } TransaksiPersewaan transaksi_sewa = new TransaksiPe rsewaan(); transaksi_sewa.setKodeSewa(kode_Sewa); transaksi_sewa.setTransport(transport); transaksi_sewa.setUangmuka(uangMuka); HttpSession sess = request.getSession(true) ; RequestDispatcher dis = null; if((transaksi_sewa.getKodeSewa()==0)&& (transaksi_sewa.getTransport()==0)&& (transaksi_sewa.getUangmuka()==0)){ System.out.println("Pendaftaran gagal!"); request.setAttribute("pesan1", "Data gagal di simpan!!!"); request.setAttribute("pesan2", "Anda belum me masukkan data!!!"); dis = request.getRequestDispatcher("./error.j sp"); } else if((transaksi_sewa.getKodeSewa()==0)|| (transaksi_sewa.getTransport()==0)|| (transaksi_sewa.getUangmuka()==0)){ System.out.println("Pendaftaran gagal!"); request.setAttribute("pesan1", "Data gagal disimp an!!!"); request.setAttribute("pesan2", "Lengkapi Data And a!!!"); dis = request.getRequestDispatcher("./error.jsp") ; } else{ if((transaksi_sewa.getKodeSewa()==kode_Sewa)&& (transaksi_sewa.getTransport()==transport)&& (transaksi_sewa.getUangmuka()==uangMuka)){ TransaksiPersewaanBO bo = new TransaksiPersewaanB O(); int x = bo.tambahTransaksi(transaksi_sewa); dis = request.getRequestDispatcher("./pageTransak si.jsp"); }}sess.setAttribute("tambahTransaksi", transaksi_s ewa); dis.forward(request,response);}
183
Request yang ditangkap pada servlet “tambahTransaksi” kemudian
dikirimkan ke halaman “pageTransaksi.jsp” yaitu halaman hasil pencatatan
transaksi persewaan seperti pada gambar 4.17. Jika data – data yang
dimasukkan salah atau tidak lengkap, maka ditampilkan pesan error. Ada
fasilitas tombol lain yang dapat dipilih pengguna akses, yaitu tombol
“Kembali” untuk kembali ke halaman Transaksi Pelanggan (gambar 4.15),
tombol “Home” untuk kembali ke halaman utama pengguna akses.
Gambar 4.17. Form Daftar Transaksi
4.2.2.9.Proses Detail Transaksi
Proses detail transaksi merupakan proses untuk menampilkan transaksi
persewaan secara lengkap. Hasil dari detail transaksi ini dipakai sebagai nota
persewaan. Penjelasan gambar dan listing program proses detail transaksi adalah
sebagai berikut:
184
Gambar 4.18. Form Detail Transaksi
Proses detail transaksi dimulai dari memilih link “detail” yang terdapat
pada gambar 4.17, ketika dipilih maka form akan memanggil servlet
“detailTransaksi”.
Listing servlet “detailTransaksi” adalah sebagai berikut:
protected void processRequest(HttpServletRequest re quest, HttpServletResponse response) throws ServletException, IOException { String kodeTr = request.getParameter("kodeT "); int kode_tran = Integer.parseInt(kodeTr); String kodeSw = request.getParameter("kodeS "); int kode_Sw = Integer.parseInt(kodeSw); TransaksiPersewaan transaksi_sewa = null; TransaksiPersewaan transaksi_sewa2 = null; Sewa_Kembali sewa_kembali = null; Sewa_Kembali sewa_kembali3 = null; DaftarPelanggan daftarpelanggan = null; List<Sewa_Kembali> listSewa_Kembali = null; List<DaftarBarang> listSewa_Kembali2 = null ; List<temp_sewabrg> listTemp_sewabrg = null; TransaksiPersewaanBO bo=new TransaksiPersew aanBO(); SewaKembaliBO bo2 = new SewaKembaliBO(); transaksi_sewa = bo.lihatTransaksi(kode_tra n); listSewa_Kembali = bo2.LihatBarang(kode_Sw) ; listTemp_sewabrg = bo2.LihatBarang3(kode_Sw ); daftarpelanggan = bo2.dataSewaBrg2(kode_Sw) ; sewa_kembali3 = bo2.lihatKode(kode_Sw); RequestDispatcher dis = null; HttpSession sess = request.getSession(true) ; request.setAttribute("listSewa_Kembali",listSewa_Ke mbali);
185
request.setAttribute("listSewa_Kembali2",listSewa_K embali2); request.setAttribute("listTemp_sewabrg",listTemp_se wabrg); request.setAttribute("daftarpelanggan",daftarpelang gan); request.setAttribute("sewa_kembali",sewa_ke mbali); request.setAttribute("sewa_kembali3",sewa_k embali3); request.setAttribute("transaksi_sewa",trans aksi_sewa); request.setAttribute("transaksi_sewa2",transaksi_se wa2); System.out.println("Datane ditampilkan koq" ); dis = request.getRequestDispatcher("./detailTransak si.jsp"); dis.forward(request,response); }
Pada listing servlet “detailTransaksi” mengirim request ke halaman
“detailTransaksi.jsp” yaitu halaman untuk menampilkan transaksi persewaan
secara lengkap.
Listing JSP untuk menampilkan halaman “detailTransaksi.jsp” seperti
pada gambar 4.18 adalah sebagai berikut:
<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Lihat Detail Transaksi</title> </head> <body id="b"> <table border="0" align="left" bgcolor="#BEDFFC"> <tr> <%@ include file = "head.jsp" %> <tr><td><table border="0" cellpadding="0" cellspaci ng="0" width="100%"><tr> <td align="center" class="isi10" class="submenu">No ta Persewaan </td></tr></table> <hr><%if(request.getAttribute("pesan")!=null) out.println(request.getAttribute("pesan").toString( )); %> <%if(request.getAttribute("pesan2")!=null) out.println(request.getAttribute("pesan2").toString ()); %> <%if(request.getAttribute("pesan3")!=null) out.println(request.getAttribute("pesan3").toString ()); %> <%Sewa_Kembali sewa_kembali3=null; if(request.getAttribute("sewa_kembali3")!=null){ sewa_kembali3= (Sewa_Kembali)request.getAttribute("sewa_kembali3") ; } %> <%DaftarPelanggan daftarpelanggan=null; if(request.getAttribute("daftarpelanggan")!=null){ daftarpelanggan= (DaftarPelanggan)request.getAttribute("daftarpelang gan"); }
186
%> <%TransaksiPersewaan transaksi_sewa=null; if(request.getAttribute("transaksi_sewa")!=null){ transaksi_sewa= (TransaksiPersewaan)request.getAttribute("transaksi _sewa"); } %> <table border="0" width="30%" align="left"> <tr class="colormenu"><td width="50%"> <h1 class="isi3"> Kode Transaksi</h1></td> <td width="25%"><input type="text" value="<%=transaksi_sewa.getKodeTransaksi()%>" read only></ td> </tr> <tr class="colormenu"><td width="50%"> <h1 class="isi3">Kode Sewa</h1></td> <td width="25%"><input type="text" value="<%=sewa_kembali3.getKodeSewa()%>" readonly>< /td></tr> <tr class="colormenu"><td width="50%"> <h1 class="isi3">Kode Pelanggan</h1></td> <td width="25%"><input type="text" value="<%=sewa_kembali3.getKodePel()%>" readonly></ td></tr> </table><table border="0" width="35%" align="left"> <tr class="colormenu"> <td width="50%"><h1 class="isi3">Nama Pelanggan</h 1></td> <td width="25%"><input type="text" value="<%=daftarpelanggan.getNama()%>" readonly></t d></tr> <tr class="colormenu"><td width="50%"> <h1 class="isi3">Tanggal Sewa</h1></td> <td width="25%"><input type="text" value=" <%= sewa_kembali3.getTglSewa().substring(8)%>-<%=sewa_kembali3.getTglSewa().substring(5,7)%>- <%= sewa_kembali3.getTglSewa().substring(0,4)%>" re adonly></td> </tr> <tr class="colormenu"> <td width="50%"> <h1 class="isi3">Tanggal Harus Kembali</h1></td> <td width="25%"><input type="text" value=" <%= sewa_kembali3.getTglHarusKembali().substring(8) %>-<%=sewa_kembali3.getTglHarusKembali().substring(5,7 )%>- <%= sewa_kembali3.getTglHarusKembali().substring(0, 4)%>" readonly></td></tr></table> <table border="1" cellpadding="3" cellspacing="0" a lign="left" class="isi" id="colorisi"> <tr><td colspan="6" class="colormenu"><h1 class="is i2" align="center">Daftar Peminjaman Barang</h1></td></ tr> <tr><td class="colormenu" width="200px"> <h1 class="isi5" align="center">Nama Barang</h1></t d> <td class="colormenu" width="200px"><h1 class="isi 5" align="center">Harga Satuan (Rp.)</h1></td> <td class="colormenu" width="200px"><h1 class="isi 5" align="center">Jumlah Pinjam</h1></td> <td class="colormenu" width="200px"><h1 class="isi 5" align="center">Sub Total (Rp.)</h1></td></tr> <%List<temp_sewabrg> listTemp_sewabrg =(ArrayList<temp_sewabrg>) request.getAttribute("listTemp_sewabrg"); for(temp_sewabrg tempSewaBrg:listTemp_sewabrg){ %> <tr class="isi3"><td class="colormenu"> <%= tempSewaBrg.getNamaBrg() %></td> <td class="colormenu" align="right"> <%= tempSewaBrg.getHargaSat() %></a></td> <td class="colormenu" align="right"> <%= tempSewaBrg.getJumlah() %></td>
187
<td class="colormenu" align="right"><%= tempSewaBrg .getSubTot() %></td></tr> <%} %> <tr class="isi3"><td class="colormenu" align="right " colspan="3">Total</td><td class="colormenu" align=" right"> <%= transaksi_sewa.getTotalharga() %></td></tr> <tr class="isi3"><td class="colormenu" align="right " colspan="3">Transport</td> <td class="colormenu" align="right"> <%= transaksi_sewa.getTransport()%></td></tr> <tr class="isi3"><td class="colormenu" align="right " colspan="3">Uang Muka</td><td class="colormenu" align="right"><%= transaksi_sewa.getUangmuka() %></ td></tr> <tr class="isi3"><td class="colormenu" align="right " colspan="3">Total Pembayaran</td><td class="colorme nu" align="right"><%= transaksi_sewa.getTotalBayar() %> </td></tr> <tr class="isi3"><td class="colormenu" align="right " colspan="3">Total Denda Barang Rusak/Hlang/Pecah</t d><td class="colormenu" align="right"> <%= transaksi_sewa.getDendaRusak() %></td></tr> <tr class="isi3"><td class="colormenu" align="right " colspan="3">Total Pembayaran Akhir</td><td class="c olormenu" align="right"><%= transaksi_sewa.getTotalBayar2() % ></td></tr> </table> <table border="0" width="63%" align="left" cellpadd ing="5px" > <tr><td><br><br><br></td></tr> <tr><td align="right"><b>U.D. ROSARI </td></tr> <tr><td><br><br></td></tr> <tr><td align="right"><b>(......................... .) </td></tr></table></td></tr> <tr><td align="center"> <table class="image2" id="bawah8" align="left"> <tbody class="isi4" width="10%"> <tr><td>© Copyright 2008 </td></tr> <tr><td>Created by aniez |<a href="#" onclick="window.print();return false">Cetak</a> | < a onclick="self.history.back();">Kembali</a></td></tr > </tbody></table></td></tr></table></body></html>
Pada halaman detail transaksi ini ada fasilitas untuk cetak nota persewaan.
Ketika link “Cetak” dipilih, maka akan ditampilkan form untuk cetak nota seperti
pada gambar 4.19. Tombol lain yang dapat dipilih pengguna akses, yaitu tombol
“Kembali” untuk kembali ke halaman Daftar Transaksi (gambar 4.17), tombol
“Home” untuk kembali ke halaman utama pengguna akses.
188
Gambar 4.19. Form Cetak Nota
4.2.2.10. Proses Pencarian
Proses pencarian pada sistem informasi persewaan perlengkapan pesta ini
mempunyai beberapa pilihan pencarian, yaitu pencarian perlengkapan berdasarkan
nama jenis barang, nama barang. Pencarian stok perlengkapan berdasarkan bulan,
pencarian peminjaman barang berdasarkan nama pelanggan. Proses pencarian ini pada
umumnya hampir sama, maka di sini hanya akan mengambil contoh satu proses
pencarian, yaitu pencarian perlengkapan berdasarkan nama jenis barang. Penjelasan
gambar dan listing program adalah sebagai berikut:
189
Gambar 4.20. Form Pencarian Perlengkapan Berdasarkan Nama Barang
Form pada gambar 4.20 merupakan pencarian perlengkapan berdasarkan nama
barang. Listing JSP untuk menampilkan Form Pencarian Perlengkapan seperti pada
gambar 4.20 adalah sebagai berikut:
<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Menu Pencarian Perlengkapan</title> </head> <body id="b"> <table border="0" align="center" bgcolor="#BEDFFC"> <tr> <%@ include file = "head.jsp" %> <table border="0" cellpadding="0" cellspacing="0" w idth="100%"> <tr><td align="center"><a class="submenu" href="./home_admin.jsp">Home</a><hr></td></tr> <form method="post" action="./cariPerlengkapan"> <td width="70%" valign="top" align="center"> <table class="isi" id="colormenu" border="0" cellpa dding="4" cellspacing="0" width="500px" align="center" height ="80%"> <%if(request.getAttribute("pesan")!=null) out.println(request.getAttribute("pesan").toString( )); %> <tr><td align="center" width="80%"> <tr><td align="center" class="colormenu" colspan="3 "> <h1 class="isi2">Pencarian Perlengkapan</h1> <hr></td></tr><tr class="colormenu" > <td class="isi7">Cari Perlengkapan Berdasarkan :</ td></tr>
190
<tr class="colormenu"><td class="isi7"> <input type="radio" name="cek" value="1"/>Nama Jeni s Barang<br> <input type="radio" name="cek" value="2"/>Nama Bara ng </td></tr> <tr class="colormenu" > <td class="isi7">Cari Stok Perlengkapan Berdasarkan :</td><br> </tr><tr class="colormenu"><td class="isi7"> <input type="radio" name="cek" value="3" />Bulan <select name="bulan"><option value="0" selected>Bul an <%String[] terpilih = new String[13]; int bln; for(bln = 1; bln<13; bln++){ terpilih[bln] = ""; if(request.getParameter("bulan")== null || request.getParameter("bulan").equals("")); else if(bln == Intege r.valueOf(request.getParameter("bulan"))) terpilih[bln] = "selected"; } out.print("<OPTION VALUE=\"1\ ""+terpilih[1]+">Januari"); out.print("<OPTION VALUE=\"2\""+terpilih[2]+">Febru ari"); out.print("<OPTION VALUE=\"3\ ""+terpilih[3]+">Maret"); out.print("<OPTION VALUE=\"4\""+terpilih[4]+">Apr il"); out.print("<OPTION VALUE=\"5\ ""+terpilih[5]+">Mei"); out.print("<OPTION VALUE=\"6\ ""+terpilih[6]+">Juni"); out.print("<OPTION VALUE=\"7\ ""+terpilih[7]+">Juli"); out.print("<OPTION VALUE=\"8\ ""+terpilih[8]+">Agustus"); out.print("<OPTION VALUE=\"9\""+terpilih[9] +">September"); out.print("<OPTION VALUE=\"10\ ""+terpilih[10]+">Oktober"); out.print("<OPTION VALUE=\"11\""+terpilih[11]+">Nov ember"); out.print("<OPTION VALUE=\"12\ ""+terpilih[12]+">Desember"); %> </option></select></td></tr> <tr class="colormenu" > <td class="isi7">Cari Peminjaman Barang Berdasarkan :</td> </tr> <tr class="colormenu"><td class="isi7"> <input type="radio" name="cek" value="4"/>Nama Pela ngga</td></tr> <tr class="colormenu" ><td class="isi7">Kata yang d icari :<br> <input type="text" name="in put" size="40"/></td><br></tr> <tr class="colormenu"><td colspan="3" align="center "><hr> <input type="submit" name="Submit" value="Cari"></t d></tr></td></tr> </table></td></form></table></tr></table></td></tr> <br><br><br> <tr><td align="center"><table class="image2" id="ba wah3"width="100%"> <tbody class="isi4"><tr><td>© Copyright 2008 </td> </tr> <tr><td>Created by aniez</td></tr></tbody></table>< /td></tr> </body></html>
Pencarian perlengkapan dimulai dari dengan memilih radio button pada
pilihan nama barang, kemudian memasukkan kata yang dicari, lalu tekan tombol
“Cari”. Ketika tombol “Cari” ditekan, maka form akan memanggil servlet
“cariPerlengkapan”. Listing servlet “cariPerlengkapan” adalah sebagai berikut:
protected void processRequest(HttpServletRequest re quest, HttpServletResponse response) throws ServletException, IOException {
191
String masukan = request.getParameter("input"); DaftarBarang daftarbarang = null; List<DaftarBarang> listDaftarBarang = null; List<temp_sewabrg2> listTemp_sewabrg2 = null; DaftarBarangBO bo = new DaftarBarangBO(); SewaKembaliBO bo2 = new SewaKembaliBO(); RequestDispatcher dis = null; HttpSession sess = request.getSession(true); if((request.getParameter("cek")==null)){ System.out.println("Tesss. Data belum diisi"); request.setAttribute("pesan", "Data gagal dicari!") ;
dis = request.getRequestDispatcher("./cariPerleng kapan.jsp"); } else if((request.getParameter("cek").equals("1"))&& (masukan.equalsIgnoreCase(""))){ System.out.println("Tesss. Pengisian harus sesuai!" ); request.setAttribute("pesan", "Data berdasarkan Nam a Jenis Barang gagal dicari!");
dis = request.getRequestDispatcher("./cariPerleng kapan.jsp"); } else if((request.getParameter("cek").equals("2"))&& (masukan.equalsIgnoreCase(""))){ System.out.println("Tesss. Pengisian harus sesuai! "); request.setAttribute("pesan", "Data berdasarkan Nam a Barang gagal dicari!");
dis = request.getRequestDispatcher("./cariPerleng kapan.jsp"); } else if((request.getParameter("cek").equals("3"))&& (request.getParameter("bulan").equals("0"))&& (masukan.equalsIgnoreCase(masukan))){ System.out.println("Tesss. Pengisian harus sesuai! "); request.setAttribute("pesan", "Data berdasarkan Bul an gagal dicari!");
dis = request.getRequestDispatcher("./cariPerleng kapan.jsp"); } else if((request.getParameter("cek").equals("4"))&& (masukan.equalsIgnoreCase(""))){ System.out.println("Tesss. Pengisian harus sesuai! "); request.setAttribute("pesan", "Data berdasarkan Nam a Pelanggan gagal dicari!");
dis = request.getRequestDispatcher("./cariPerleng kapan.jsp"); } else { if((request.getParameter("cek").equals("1"))&& (masukan.equals(masukan))){ listDaftarBarang=bo.getCariJenis(masukan);
request.setAttribute("listDaftarBarang",listDaf tarBarang); dis=request.getRequestDispatcher("./tampilNamaBrg. jsp"); } if((request.getParameter("cek").equals("2"))&& (masukan.equals(masukan))){ listDaftarBarang=bo.CariNama(masukan);
request.setAttribute("listDaftarBarang",listDaftarB arang); dis=requ est.getRequestDispatcher("./tampilNamaBrg.jsp"); } if((request.getParameter("cek").equals("3"))&& (request.getParameter("bulan").equals("1"))){ if(masukan.equals("")){ listDaftarBarang=bo.CariStokJan();
request.setAttribu te("listDaftarBarang",listDaftarBarang); dis=request.getRequestDispatcher("./tampilNam aBrg.jsp");}
192
else if(masukan.equals(masukan)){ request.setAttribute("pesan", "Data berdasar kan Bulan gagal dicari!"); dis = request.getRequestDispatcher("./cariPerleng kapan.jsp");
}} if((request.getParameter("cek").equals("3"))&&
(request.getParameter("bulan").equals("2"))){ if(masukan.equals("")){ listDaftarBarang=bo.CariStokFeb(); request.setAttribute("listDaftarBarang", listDaftarBarang); dis=request.getRequestDispatcher("./tampilNamaBrg.j sp");} else if(masukan.equals(masukan)){ request.setAttribute("pesan", "Data berdasarkan Bul an gagal dicari!");
dis = request.getRequestDispatcher("./cariPerleng kapan.jsp"); }}
if((request.getParameter("cek").equals("3"))&& (request.getParameter("bulan").equals("3"))){ if(masukan.equals("")){ listDaftarBarang=bo.CariStokMar(); request.setAttribute("listDaftarBarang", listDaftarBarang); dis=request.getRequestDispatcher("./tampilNamaBrg.j sp");} else if(masukan.equals(masukan)){ request.setAttribute("pesan", "Data berdasarkan Bul an gagal dicari!");
dis = request.getRequestDispatcher("./cariPerleng kapan.jsp"); }} if((request.getParameter("cek").equals("3"))&& (request.getParameter("bulan").equals("4"))){ if(masukan.equals("")){ listDaftarBarang=bo.CariStokApr(); request.setAttribute("listDaftarBarang", listDaftarBarang); dis=request.getRequestDispatcher("./tampilNamaBrg.j sp");} else if(masukan.equals(masukan)){ request.setAttribute("pesan", "Data berdasarkan Bul an gagal dicari!");
dis = request.getRequestDispatcher("./cariPerleng kapan.jsp"); }} if((request.getParameter("cek").equals("3"))&& (request.getParameter("bulan").equals("5"))){ if(masukan.equals("")){ listDaftarBarang=bo.CariStokMei();
request.setAttribute("listDaftarBarang",listDaftarB arang); dis=request.getRequestDispatcher("./tampilNam aBrg.jsp");}
else if(masukan.equals(masukan)){ request.setAttribute("pesan", "Data berdasarkan Bulan gagal dicari!"); dis = request.getRequestDispatcher("./cariPerleng kapan.jsp");
}} if((request.getParameter("cek").equals("3"))&& (request.getParameter("bulan").equals("6"))){ if(masukan.equals("")){ listDaftarBarang=bo.CariStokJun();
request.setAttribute("listDaftarBarang",listDaftarB arang); dis=request.getRequestDispatcher("./tampilNam aBrg.jsp"); else if(masukan.equals(masukan)){
request.setAttribute("pesan", "Data berdasarkan Bul an gagal dicari!");
dis = request.getRequestDispatcher("./cariPerleng kapan.jsp"); }}
193
if((request.getParameter("cek").equals("3"))&& (request.getParameter("bulan").equals("7"))){ if(masukan.equals("")){ listDaftarBarang=bo.CariStokJul();
request.setAttribute("listDaftarBarang",listDaftarB arang); dis=request.getRequestDispatcher("./tampilNam aBrg.jsp");}
else if(masukan.equals(masukan)){ request.setAttribute("pesan", "Data berdasarkan Bul an gagal dicari!");
dis = request.getRequestDispatcher("./cariPerleng kapan.jsp"); }} if((request.getParameter("cek").equals("3"))&& (request.getParameter("bulan").equals("8"))){ if(masukan.equals("")){ listDaftarBarang=bo.CariStokAgust();
request.setAttribute("listDaftarBarang",listDaftarB arang); dis=request.getRequestDispatcher("./tampilNamaB rg.jsp");}
else if(masukan.equals(masukan)){ request.setAttribute("pesan", "Data berdasarkan Bul an gagal dicari!");
dis = request.getRequestDispatcher("./cariPerleng kapan.jsp"); }} if((request.getParameter("cek").equals("3"))&& (request.getParameter("bulan").equals("9"))){ if(masukan.equals("")){ listDaftarBarang=bo.CariStokSept();
request.setAttribute("listDaftarBarang",listDaftarB arang); dis=request.getRequestDispatcher("./tampilNam aBrg.jsp");}
else if(masukan.equals(masukan)){ request.setAttribute("pesan", "Data berdasarkan Bul an gagal dicari!");
dis = request.getRequestDispatcher("./cariPerleng kapan.jsp"); }} if((request.getParameter("cek").equals("3"))&& (request.getParameter("bulan").equals("10"))){ if(masukan.equals("")){ listDaftarBarang=bo.CariStokOkt();
request.setAttribute("listDaftarBarang",listDaft arBarang); dis=request.getRequestDispatcher("./tampilNamaBr g.jsp");}
else if(masukan.equals(masukan)){ request.setAttribute("pesan", "Data berdasarkan Bul an gagal dicari!");
dis = request.getRequestDispatcher("./cariPerleng kapan.jsp"); }} if((request.getParameter("cek").equals("3"))&& (request.getParameter("bulan").equals("11"))){ if(masukan.equals("")){ listDaftarBarang=bo.CariStokNov();
request.setAttribute("listDaftarBarang",listDaft arBarang); dis=request.getRequestDispatcher("./tampilNamaBr g.jsp");}
else if(masukan.equals(masukan)){ request.setAttribute("pesan", "Data berdasarkan Bul an gagal dicari!");
dis = request.getRequestDispatcher("./cariPerleng kapan.jsp"); }} if((request.getParameter("cek").equals("3"))& & (request.getParameter("bulan").equals("12"))){ if(masukan.equals("")){ listDaftarBarang=bo.CariStokDes();
request.setAttribute("listDaftarBarang",listDaftarB arang); dis=request.getRequestDispatcher("./tampilNam aBrg.jsp");}
else if(masukan.equals(masukan)){ request.setAttribute("pesan", "Data berdasarkan Bul an
194
gagal dicari!"); dis = request.getRequestDispatcher("./cariPerleng kapan.jsp");
}} if((request.getParameter("cek").equals("4"))&& (masukan.equals(masukan))){
listTemp_sewabrg2 = bo2.hasil_CariPinjam_NamaP el(masukan); request.setAttribute("listTemp_sewabrg2", listTemp_ sewabrg2); dis=request.getRequestDispatcher("./tampilPemin jaman.jsp");
}} dis.forward(request, response); }
Pada listing servlet “cariPerlengkapan” mengirim request ke banyak halaman
sesuai dengan pilihan yang dimasukkan. Oleh karena pencarian perlengkapan yang
diambil contoh adalah pencarian perlengkapan berdasarkan nama barang, maka dari
servlet “cariPerlengkapan” mengirim request ke halaman “tampilNamaBrg.jsp” yaitu
halaman yang menampung hasil pencarian perlengkapan. Pada servlet
“cariPerlengkapan” juga ada penanganan error jika data yang dimasukkan salah atau
tidak lengkap. Listing JSP untuk menampilkan hasil pencarian perlengkapan
berdasarkan nama barang seperti pada gambar 4.21 adalah sebagai berikut:
<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Hasil Pencarian Berdasar Nama Jenis Barang</ title> </head> <body id="b"> <table border="0" align="left" bgcolor="#BEDFFC"> <tr><%@ include file = "head.jsp" %> <tr><td> <table border="0" cellpadding="0" cellspacing="0" width="100%"><tr align="center"><td><a class="subme nu" onclick="self.history.back()">< Kembali</a></td></t able></tr> <hr><% int no=1;%> <table border="1" cellpadding="3" cellspacing="0" align="center" class="isi" id="colorisi"> <tr><td colspan="20" class="colormenu"><h1 class="i si2" align="center">Hasil Pencarian Daftar Perlengkapan Persewaan </h1></td></tr> <tr><td class="colormenu" width="200px"> <h1 class="isi5" align="center">No.</h1></td> <td class="colormenu" width="200px"> <h1 class="isi5" align="center">Kode Barang</h1></t d> <td class="colormenu" width="200px"> <h1 class="isi5" align="center">Kode Jenis</h1></td > <td class="colormenu" width="300px"> <h1 class="isi5" align="center">Nama Barang</h1></t d> <td class="colormenu" width="200px"> <h1 class="isi5" align="center">Satuan</h1></td>
195
<td class="colormenu" width="300px"> <h1 class="isi5" align="center">Harga (Rp.)</h1></t d> <td class="colormenu" width="300px"> <h1 class="isi5" align="center">Stok Awal</h1></td> <td class="colormenu" width="300px"> <h1 class="isi5" align="center">Stok Jan</h1></td> <td class="colormenu" width="300px"> <h1 class="isi5" align="center">Stok Feb</h1></td> <td class="colormenu" width="300px"> <h1 class="isi5" align="center">Stok Mar</h1></td> <td class="colormenu" width="300px"> <h1 class="isi5" align="center">Stok Apr</h1></td> <td class="colormenu" width="300px"> <h1 class="isi5" align="center">Stok Mei</h1></td> <td class="colormenu" width="300px"> <h1 class="isi5" align="center">Stok Jun</h1></td> <td class="colormenu" width="300px"> <h1 class="isi5" align="center">Stok Jul</h1></td> <td class="colormenu" width="300px"> <h1 class="isi5" align="center">Stok Agust</h1></td > <td class="colormenu" width="300px"> <h1 class="isi5" align="center">Stok Sept</h1></td> <td class="colormenu" width="300px"> <h1 class="isi5" align="center">Stok Okt</h1></td> <td class="colormenu" width="300px"> <h1 class="isi5" align="center">Stok Nov</h1></td> <td class="colormenu" width="300px"> <h1 class="isi5" align="center">Stok Des</h1></td>< /tr> <%List<DaftarBarang> listDaftarBarang=(ArrayList<Da ftarBarang>) request.getAttribute("listDaftarBarang"); for(DaftarBarang daftarbarang:listDaftarBarang){%> <tr class="isi3"><td class="colormenu"><%= no++ %>< /td> <td class="colormenu"><%= daftarbarang.getKodeBaran g() %></td> <td class="colormenu"><%= daftarbarang.getKodeJenis () %></a></td> <td class="colormenu"><%= daftarbarang.getNama() %> </td> <td class="colormenu"><%= daftarbarang.getSatuan() %></td> <td class="colormenu" align="right"><%= daftarbaran g.getHarga() %></td> <td class="colormenu" align="right"> <%= daftarbarang.getStok() %></td> <td class="colormenu" align="right"> <%= daftarbarang.getStok_jan()%></td> <td class="colormenu" align="right"> <%= daftarbarang.getStok_feb() %></td> <td class="colormenu" align="right"> <%= daftarbarang.getStok_mar() %></td> <td class="colormenu" align="right"> <%= daftarbarang.getStok_apr() %></td> <td class="colormenu" align="right"> <%= daftarbarang.getStok_mei() %></td> <td class="colormenu" align="right"> <%= daftarbarang.getStok_jun() %></td> <td class="colormenu" align="right"> <%= daftarbarang.getStok_jul() %></td> <td class="colormenu" align="right"> <%= daftarbarang.getStok_agust() %></td> <td class="colormenu" align="right"> <%= daftarbarang.getStok_sept() %></td> <td class="colormenu" align="right"> <%= daftarbarang.getStok_okt() %></td> <td class="colormenu" align="right"> <%= daftarbarang.getStok_nov() %></td>
196
<td class="colormenu" align="right"> <%= daftarbarang.getStok_des() %></td></tr> <%} %> </table></tr></td></tr></table><br><br><br> <tr align="left"><td align="center"> <table class="image2" id="bawah8" align="left"> <tbody class="isi4" width="10%"><tr><td>© Copyrigh t 2008 </td></tr><tr><td>Created by aniez</td></tr> </tbody></table></td></tr></table></body></html>
Hasil pencarian perlengkapan berdasarkan nama barang digambarkan sebagai
berikut:
Gambar 4.21. Form Hasil Pencarian Perlengkapan Berdasarkan Nama Barang
4.2.2.11. Proses Tampil Barang
Proses tampil barang dalam sistem informasi persewaan perlengkapan pesta
ini merupakan proses untuk menampilkan daftar barang yang disewakan oleh UD.
ROSARI secara lengkap. Hasil dari tampil barang ini dipakai sebagai brosur
197
persewaan. Penjelasan gambar dan listing program proses tampil barang adalah
sebagai berikut:
Gambar 4.22. Form Tampil Barang
Proses tampil barang dimulai dari memilih sub menu tampil barang yang terdapat
pada halaman utama masing – masing pengguna akses. Ketika sub menu tampil
barang dipilih, maka form akan memanggil servlet “Brosur”. Listing program untuk
servlet “Brosur” adalah sebagai berikut:
protected void processRequest(HttpServletRequest re quest, HttpServletResponse response)
198
throws ServletException, IOException { DaftarBarang daftarbarang = null; DaftarBarang daftarbarang2 = null; DaftarBarang daftarbarang3 = null; DaftarBarang daftarbarang4 = null; DaftarBarang daftarbarang5 = null; DaftarBarang daftarbarang6 = null; DaftarBarang daftarbarang7 = null; List<DaftarBarang> listDaftarBarang = null; List<DaftarBarang> listDaftarBarang2 = null ; List<DaftarBarang> listDaftarBarang3 = null ; List<DaftarBarang> listDaftarBarang4 = null ; List<DaftarBarang> listDaftarBarang5 = null ; List<DaftarBarang> listDaftarBarang6 = null ; List<DaftarBarang> listDaftarBarang7 = null ; JenisBarang jenisbarang = null; JenisBarang jenisbarang2 = null; JenisBarang jenisbarang3 = null; JenisBarang jenisbarang4 = null; JenisBarang jenisbarang5 = null; JenisBarang jenisbarang6 = null; JenisBarang jenisbarang7 = null; DaftarBarangBO bo=new DaftarBarangBO(); JenisBarangBO bo2 = new JenisBarangBO(); listDaftarBarang = bo.tampilBarang1(); jenisbarang = bo2.tampilJenis1(); listDaftarBarang2 = bo.tampilBarang2(); jenisbarang2 = bo2.tampilJenis2(); listDaftarBarang3 = bo.tampilBarang3(); jenisbarang3 = bo2.tampilJenis3(); listDaftarBarang4 = bo.tampilBarang4(); jenisbarang4 = bo2.tampilJenis4(); listDaftarBarang5 = bo.tampilBarang5(); jenisbarang5 = bo2.tampilJenis5(); listDaftarBarang6 = bo.tampilBarang6(); jenisbarang6 = bo2.tampilJenis6(); listDaftarBarang7 = bo.tampilBarang7(); jenisbarang7 = bo2.tampilJenis7(); RequestDispatcher dis = null; request.setAttribute("daftarbarang",daftarb arang); request.setAttribute("daftarbarang2",daftar barang2); request.setAttribute("daftarbarang3",daftar barang3); request.setAttribute("daftarbarang4",daftar barang4); request.setAttribute("daftarbarang5",daftar barang5); request.setAttribute("daftarbarang6",daftar barang6); request.setAttribute("daftarbarang7",daftar barang7); request.setAttribute("listDaftarBarang",listDa ftarBarang); request.setAttribute("listDaftarBarang2",listDaftar Barang2); request.setAttribute("listDaftarBarang3",listDaftar Barang3); request.setAttribute("listDaftarBarang4",listDaftar Barang4); request.setAttribute("listDaftarBarang5",listDaftar Barang5); request.setAttribute("listDaftarBarang6",listDaftar Barang6); request.setAttribute("listDaftarBarang7",listDaftar Barang7); request.setAttribute("jenisbarang",jenisbar ang); request.setAttribute("jenisbarang2",jenisba rang2); request.setAttribute("jenisbarang3",jenisba rang3); request.setAttribute("jenisbarang4",jenisba rang4); request.setAttribute("jenisbarang5",jenisba rang5);
199
request.setAttribute("jenisbarang6",jenisba rang6); request.setAttribute("jenisbarang7",jenisba rang7); dis = request.getRequestDispatcher("./Brosu r.jsp"); dis.forward(request,response); }
Pada listing servlet “Brosur” mengirim request ke halaman “Brosur.jsp” yaitu
halaman untuk menampilkan hasil daftar barang yang disewakan secara lengkap.
Daftar barang yang disewakan ditampilkan berdasarkan jenis – jenisnya.
Listing JSP untuk menampilkan Form Tampil Barang seperti pada gambar
4.22 adalah sebagai berikut:
<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Lihat Brosur</title> </head> <body id="b"> <table border="0" align="left" bgcolor="#BEDFFC"> <tr> <%@ include file = "head.jsp" %> <tr><td> <table border="0" cellpadding="0" cellspacing="0" w idth="100%"> <tr><td align="center" class="isi7" class="submenu" >Daftar Barang <td></tr></table> <hr> <% JenisBarang jenisbarang=null; if(request.getAttribute("jenisbarang")!=null){ jenisbarang=(JenisBarang)request.getAttribute("jeni sbarang"); } JenisBarang jenisbarang2=null; if(request.getAttribute("jenisbarang2")!=null){ jenisbarang2=(JenisBarang)request.getAttribute("jen isbarang2"); } JenisBarang jenisbarang3=null; if(request.getAttribute("jenisbarang3")!=null){ jenisbarang3=(JenisBarang)request.getAttribute("jen isbarang3"); } JenisBarang jenisbarang4=null; if(request.getAttribute("jenisbarang4")!=null){ jenisbarang4=(JenisBarang)request.getAttribute("jen isbarang4"); } JenisBarang jenisbarang5=null; if(request.getAttribute("jenisbarang5")!=null){ jenisbarang5=(JenisBarang)request.getAttribute("jen isbarang5"); } JenisBarang jenisbarang6=null; if(request.getAttribute("jenisbarang6")!=null){ jenisbarang6=(JenisBarang)request.getAttribute("jen isbarang6"); }
200
JenisBarang jenisbarang7=null; if(request.getAttribute("jenisbarang7")!=null){ jenisbarang7=(JenisBarang)request.getAttribute("jen isbarang7"); } int no=1; %> <table border="0"> <table border="1" cellpadding="3" cellspacing="0" a lign="left" class="isi" id="colorisi" width="54%"> <tr> <td class="colormenu" width="5%"> <h1 class="isi9" align="center">No</h1></td> <td class="colormenu" width="25%"> <h1 class="isi9" align="center">Nama Barang</h1></t d> <td class="colormenu" width="5%"> <h1 class="isi9" align="center">Satuan</h1></td> <td class="colormenu" width="10%"> <h1 class="isi9" align="center">Harga (Rp.)</h1></t d> <tr class="isi7" ><td class="colormenu2" align="cen ter" colspan="4"> <%= jenisbarang.getNama_jenis() %></td ></tr></tr> <%List<DaftarBarang> listDaftarBarang = (ArrayList<DaftarBarang>) request.getAttribute("listDaftarBarang"); for(DaftarBarang daftarbarang:listDaftarBarang){ %> <tr class="isi8"> <td class="colormenu"><%= no++ %></td> <td class="colormenu" align="left"><%= daftarbarang .getNama() %></td> <td class="colormenu" align="left"><%= daftarbarang .getSatuan() %></td> <td class="colormenu" align="right"><%= daftarbaran g.getHarga() %></a></td></tr> <%} %> <tr><tr class="isi7" ><td class="colormenu2" align= "center" colspan="4"><%= jenisbarang2.getNama_jenis() %></td ></tr></tr> <%List<DaftarBarang> listDaftarBarang2 = (ArrayList<DaftarBarang>) request.getAttribute("listDaftarBarang2"); for(DaftarBarang daftarbarang2:listDaftarBarang2) { %><tr class="isi8"> <td class="colormenu"><%= no++ %></td> <td class="colormenu" align="left"><%= daftarbarang 2.getNama() %></td> <td class="colormenu" align="left"><%= daftarbarang2.getSatuan() %></td> <td class="colormenu" align="right"><%= daftarbarang2.getHarga() %></a></td></tr> <%} %><tr> <tr class="isi7" ><td class="colormenu2" align="cen ter" colspan="4"><%= jenisbarang3.getNama_jenis() %></td ></tr></tr> <%List<DaftarBarang> listDaftarBarang3 = (ArrayList<DaftarBarang>) request.getAttribute("listDaftarBarang3"); for(DaftarBarang daftarbarang3:listDaftarBarang3){ %> <tr class="isi8"><td class="colormenu"><%= no++ %>< /td> <td class="colormenu" align="left"><%= daftarbarang 3.getNama() %></td><td class="colormenu" align="left"> <%= daftarbarang3.getSatuan() %></td> <td class="colormenu" align="right"><%= daftarbarang3.getHarga() %></a></td></tr>
201
<%} %><tr><tr class="isi7" ><td class="colormenu2" align="center" colspan="4"> <%= jenisbarang4.getNama_jenis() %></td></tr></tr> <%List<DaftarBarang> listDaftarBarang4 = (ArrayList<DaftarBarang>) request.getAttribute("listDaftarBarang4"); for(DaftarBarang daftarbarang4:listDaftarBarang4) { %><tr class="isi8"><td class="colormenu"><%= no++ % ></td> <td class="colormenu" align="left"><%= daftarbarang 4.getNama() %></td><td class="colormenu" align="left"> <%= daftarbarang4.getSatuan() %></td> <td class="colormenu" align="right"><%= daftarbarang4.getHarga() %></a></td></tr> <%} %><tr> <tr class="isi7" ><td class="colormenu2" align="cen ter" colspan="4"> <%= jenisbarang5.getNama_jenis() %></td></tr> </tr> <%List<DaftarBarang> listDaftarBarang5 = (ArrayList<DaftarBarang>) request.getAttribute("listDaftarBarang5"); for(DaftarBarang daftarbarang5:listDaftarBarang5){ %> <tr class="isi8"> <td class="colormenu"><%= no++ %></td> <td class="colormenu" align="left"><%= daftarbarang 5.getNama() %></td><td class="colormenu" align="left"> <%= daftarbarang5.getSatuan() %></td> <td class="colormenu" align="right"><%= daftarbarang5.getHarga() %> </a></td></tr> <%} %> <tr><tr class="isi7" ><td class="colormenu2" align= "center" colspan="4"><%= jenisbarang7.getNama_jenis()%></td> </tr></tr> <%List<DaftarBarang> listDaftarBarang7 = (ArrayList<DaftarBarang>) request.getAttribute("listDaftarBarang7"); for(DaftarBarang daftarbarang7:listDaftarBarang7){ %> <tr class="isi8"><td class="colormenu"><%= no++ %>< /td> <td class="colormenu" align="left"><%= daftarbarang 7.getNama() %></td><td class="colormenu" align="left"> <%= daftarbarang7.getSatuan() %></td> <td class="colormenu" align="right"><%= daftarbarang7.getHarga() %></a></td></tr> <%} %></table> <table border="1" cellpadding="3" cellspacing="0" align="center" class="isi" id="colorisi" width="45% "> <tr><td class="colormenu" width="20px"> <h1 class="isi9" align="center">No</h1></td> <td class="colormenu" width="100px"> <h1 class="isi9" align="center">Nama Barang</h1></t d> <td class="colormenu" width="50px"> <h1 class="isi9" align="center">Satuan</h1></td> <td class="colormenu" width="50px"> <h1 class="isi9" align="center">Harga (Rp.)</h1></t d> <tr class="isi7" ><td class="colormenu2" align="cen ter" colspan="4"> <%= jenisbarang6.getNama_jenis() %></t d></tr></tr> <% List<DaftarBarang> listDaftarBarang6 = (ArrayList<DaftarBarang>) request.getAttribute("listDaftarBarang6"); for(DaftarBarang daftarbarang6:listDaftarBarang6 ){ %> <tr class="isi8"> <td class="colormenu"><%= no++ %></td>
202
<td class="colormenu" align="left"><%= daftarbarang 6.getNama() %></td> <td class="colormenu" align="left"><%= daftarbarang6.getSatuan() %></td> <td class="colormenu" align="right"><%= daftarbarang6.getHarga() %></a></td></tr> <%} %></table><br> <tr class="isi9" align="left">• Harga tersebut belum termasuk biaya transportasi</t r><br> <td class="isi9" align="left">&bu ll; Biaya transportasi disesuaikan jarak</tr><br> <td class="isi9" align="left">&bu ll; Berlaku mulai tanggal 1 Juli 2008</tr><br></table></tr></td></tr><br> <br><br><tr><td align="left"> <table class="image2" id="bawah5" width="100%" alig n="left"> <tbody class="isi4"><tr><td>© Copyright 2008 </td> </tr> <tr><td>Created by aniez |<a href="#" onclick="window.print();return false">Cetak</a> |<a onclick="self.history.back();">Kembali</a></td> </tr> </tbody></table></td></tr></table></body></html>
Pada Form Tampil Barang seperti pada gambar 4.22 ada fasilitas untuk
mencetak brosur, dan kembali ke halaman utama pengguna akses. Ketika link “Cetak”
dipilih, maka ditampilkan form untuk mencetak brosur seperti pada gambar 4.23.
Gambar 4.23. Form Cetak Brosur
203
4.2.2.12. Proses Logout
Proses Logout dalam sistem informasi persewaan perlengkapan pesta ini
merupakan proses untuk keluar dari sistem. Penjelasan gambar dan listing program
adalah sebagai berikut :
Gambar 4.24. Form Logout
Listing JSP untuk menampilkan Form Logout seperti pada gambar 4.24 adalah
sebagai berikut:
<% session.invalidate(); %> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Good Bye...</title> </head> <body id="b"> <table border="0" align="center" bgcolor="#BEDFFC"> <tr> <%@ include file = "head.jsp" %> </tr> <tr><table class="colorhead" border="0" width="100% "><tr><td align="center"><a class="submenu" href="/UD_ROSARI/index.jsp">home</a></td></tr></tab le></tr> <hr> <tr>
204
&nb sp; &nb sp; &nb sp; &nb sp; &nb sp; &nb sp; &nb sp; &nb sp; <td><image src="image/thx.gif" width="300px" height="40px"></td><br><br><br> <h2 align="center">Anda telah melakukan Log Out...< /h2><br> </tr> <tr><br><br><br></tr> <tr><td align="center"> <table class="image2" id="bawah3b" width="100% "> <tbody class="isi4"><tr><td>© Copyright 2008 </td></tr> <tr><td>Created by aniez</td></tr></tbody></table>< /td></tr> </table></body></html>
205
BAB V
ANALISA HASIL
5.1. Teknik Pengumpulan Data
1. Pembuatan Kuesioner
Pembuatan kuesioner dilakukan selama satu hari.
2. Penyebaran Kuesioner
Penyebaran kuesioner dilakukan dalam waktu 1 minggu pada bulan
Februari. Waktu pelaksanaan penyebaran kuesioner disesuaikan dengan
waktu luang dari para responden. Penyebaran dilakukan di UD. ROSARI
dan di kampus.
3. Penarikan Kuesioner
Penarikan kuesioner dilakukan saat itu juga, setelah responden selesai
menggunakan Sistem Informasi Persewaan Perlengkapan Pesta.
5.2. Sasaran Penyebaran Kuesioner
Sasaran penyebaran kuesioner adalah pegawai UD. ROSARI, khususnya
bagian administrasi dan mahasiswa.
206
5.3. Form Kuesioner
KUESIONER
SISTEM INFORMASI PERSEWAAN PERLENGKAPAN PESTA
DENGAN J2EE (JSP, SERVLET, DAN MYSQL)
Studi Kasus : U D. ROSARI KLATEN
1. Berilah tanda centang (√) pada kotak
2. Pilihan penilaian terdiri dari :
a. SS : Sangat Setuju
b. S : Setuju
c. KS : Kurang Setuju
d. TS : Tidak Setuju
3. Alasan untuk jawaban yang anda centang bersifat opsional, tidak wajib diisi.
4. Contoh :
Apa anda pergi bekerja menggunakan sepeda?
� SS
� S
� KS
� TS
207
Alasan anda :
Ramah lingkungan, irit ongkos, olahraga_________________________________
__________________________________________________________________
__________________________________________________________________
5. Silahkan menulis identitas anda di bawah ini :
Nama :_______________________________________________________
NIM / NIP :_______________________________________________________
Jabatan :_______________________________________________________
1. Sistem Informasi Persewaan Perlengkapan Pesta ini secara keseluruhan mudah
digunakan.
� SS
� S
� KS
� TS
Alasan anda :
__________________________________________________________________
__________________________________________________________________
__________________________________________________________________
2. Tampilan antarmuka (User Interface) Sistem Informasi Persewaan Perlengkapan
Pesta nyaman dilihat dan sesuai tema.
� SS
� S
� KS
� TS
208
Alasan anda :
__________________________________________________________________
__________________________________________________________________
__________________________________________________________________
3. Sistem Informasi Persewaan Perlengkapan Pesta adalah sistem yang interaktif
dengan user.
� SS
� S
� KS
� TS
Alasan anda :
__________________________________________________________________
__________________________________________________________________
__________________________________________________________________
4. Sebagai seorang petugas, apakah anda dimudahkan dengan Sistem Informasi
Persewaan Perlengkapan Pesta ?
� SS
� S
� KS
� TS
209
Alasan anda :
__________________________________________________________________
__________________________________________________________________
__________________________________________________________________
5. Apakah navigasi Sistem Informasi Persewaan Perlengkapan Pesta jelas bagi anda?
� SS
� S
� KS
� TS
Alasan anda :
__________________________________________________________________
__________________________________________________________________
__________________________________________________________________
6. Penyajian data pada Sistem Informasi Persewaan Perlengkapan Pesta sudah cukup
bagus.
� SS
� S
� KS
� TS
210
Alasan anda :
__________________________________________________________________
__________________________________________________________________
__________________________________________________________________
7. Sistem Informasi Persewaan Perlengkapan Pesta berfungsi untuk mempermudah
pengelolaan data – data dan pembuatan laporan – laporan yang terkait dengan
aktivitas dalam sirkulasi perlengkapan. Apakah tujuan tersebut tercapai?
� SS
� S
� KS
� TS
Alasan anda :
__________________________________________________________________
__________________________________________________________________
__________________________________________________________________
8. Sistem ini dapat menggantikan sistem yang sebelumnya berjalan (sistem manual) .
� SS
� S
� KS
� TS
211
Alasan anda :
__________________________________________________________________
__________________________________________________________________
__________________________________________________________________
9. Apakah ada hal – hal yang perlu diperhatikan oleh pembuat aplikasi mengenai
aplikasi Sistem Informasi Persewaan Perlengkapan Pesta ini?
� SS
� S
� KS
� TS
Catatan tambahan untuk Sistem Informasi Persewaan Perlengkapan Pesta ini :
__________________________________________________________________
__________________________________________________________________
__________________________________________________________________
Apakah dengan diterapkan sistem ini, dapat meningkatkan efisiensi dan akurasi
pemantauan perlengkapan?
__________________________________________________________________
__________________________________________________________________
__________________________________________________________________
☺ Terima kasih Atas Partisipasi Anda ☺
Annis Yunita
212
Sangat Setuju
Setuju
Kurang Setuju
Tidak Setuju
5.4. Hasil dan Pembahasan
Dari 20 orang responden yang dijadikan contoh dalam pengujian sistem
informasi persewaan perlengkapan pesta, hasilnya dapat dijelaskan sebagai berikut:
1. Sistem Informasi Persewaan Perlengkapan Pesta ini secara keseluruhan mudah
digunakan.
Tabel 5.1. Tabel Pernyataan 1
Jawaban Frekuensi Total (%)
Sangat Setuju 4 20
Setuju 16 80
Kurang Setuju 0
Tidak Setuju 0
Gambar 5.1. Grafik Pernyataan 1
213
Sangat Setuju
Setuju
Kurang Setuju
Tidak Setuju
Dari hasil perhitungan di atas, dapat disimpulkan bahwa pengguna sistem
tidak merasa kesulitan dalam menjalankan program. Para pengguna menilai bahwa
sistem yang dibuat mudah digunakan.
2. Tampilan antarmuka (User Interface) Sistem Informasi Persewaan Perlengkapan
Pesta nyaman dilihat dan sesuai tema.
Tabel 5.2. Tabel Pernyataan 2
Jawaban Frekuensi Total (%)
Sangat Setuju 2 10
Setuju 18 90
Kurang Setuju 0
Tidak Setuju 0
Gambar 5.2. Grafik Pernyataan 2
Dari hasil perhitungan di atas, dapat disimpulkan bahwa sistem memiliki
tampilan antarmuka yang nyaman dilihat dan sesuai dengan tema, baik dari segi
warna dan gambr yang digunakan.
214
Sangat Setuju
Setuju
Kurang Setuju
Tidak Setuju
3. Sistem Informasi Persewaan Perlengkapan Pesta adalah sistem yang interaktif
dengan user.
Tabel 5.3. Tabel Pernyataan 3
Jawaban Frekuensi Total (%)
Sangat Setuju 1 5
Setuju 18 90
Kurang Setuju 1 5
Tidak Setuju 0
Gambar 5.3. Grafik Pernyataan 3
Dari hasil perhitungan di atas, dapat disimpulkan bahwa sebagian besar
responden menilai bahwa sistem bersifat interaktif terhadap user. Terdapat pesan –
pesan yang menuntun pengguna ketika melakukan kesalahan, misalnya dalam
memasukkan data.
215
Sangat Setuju
Setuju
Kurang Setuju
Tidak Setuju
4. Sebagai seorang petugas, apakah anda dimudahkan dengan Sistem Informasi
Persewaan Perlengkapan Pesta ?
Tabel 5.4. Tabel Pernyataan 4
Jawaban Frekuensi Total (%)
Sangat Setuju 7 35
Setuju 11 55
Kurang Setuju 2 10
Tidak Setuju 0
Gambar 5.4. Grafik Pernyataan 4
Dari hasil perhitungan di atas, dapat disimpulkan bahwa sebagian besar
responden menilai bahwa dengan diterapkan sistem ini akan memudahkan petugas
kaitannya dengan proses persewaan perlengkapan.
216
Sangat Setuju
Setuju
Kurang Setuju
Tidak Setuju
5. Apakah navigasi Sistem Informasi Persewaan Perlengkapan Pesta jelas bagi anda?
Tabel 5.5. Tabel Pernyataan 5
Jawaban Frekuensi Total (%)
Sangat Setuju 4 20
Setuju 16 80
Kurang Setuju 0
Tidak Setuju 0
Gambar 5.5. Grafik Pernyataan 5
Dari hasil perhitungan di atas, dapat disimpulkan bahwa sistem ini memiliki
navigasi yang cukup baik. Dengan adanya menu – menu yang disediakan sangat
membantu memudahkan pencarian informasi yang berkaitan dengan persewaan
perlengkapan.
217
Sangat Setuju
Setuju
Kurang Setuju
Tidak Setuju
6. Penyajian data pada Sistem Informasi Persewaan Perlengkapan Pesta sudah cukup
bagus.
Tabel 5.6. Tabel Pernyataan 6
Jawaban Frekuensi Total (%)
Sangat Setuju 9 45
Setuju 11 55
Kurang Setuju 0
Tidak Setuju 0
Gambar 5.6. Grafik Pernyataan 6
Dari hasil perhitungan di atas, dapat disimpulkan bahwa sistem ini memiliki
penyajian data yang cukup baik.
218
Sangat Setuju
Setuju
Kurang Setuju
Tidak Setuju
7. Sistem Informasi Persewaan Perlengkapan Pesta berfungsi untuk mempermudah
pengelolaan data – data dan pembuatan laporan – laporan yang terkait dengan
aktivitas dalam sirkulasi perlengkapan. Apakah tujuan tersebut tercapai?
Tabel 5.7. Tabel Pernyataan 7
Jawaban Frekuensi Total (%)
Sangat Setuju 6 30
Setuju 14 70
Kurang Setuju 0
Tidak Setuju 0
Gambar 5.7. Grafik Pernyataan 7
Dari hasil perhitungan di atas, dapat disimpulkan bahwa responden menilai
sistem ini mempermudah pengelolaan data – data dan pembuatan laporan – laporan
yang terkait dengan aktivitas dalam sirkulasi persewaan perlengkapan pesta.
219
Sangat Setuju
Setuju
Kurang Setuju
Tidak Setuju
8. Sistem ini dapat menggantikan sistem yang sebelumnya berjalan (sistem manual) .
Tabel 5.8. Tabel Pernyataan 8
Jawaban Frekuensi Total (%)
Sangat Setuju 11 55
Setuju 9 45
Kurang Setuju 0
Tidak Setuju 0
Gambar 5.8. Grafik Pernyataan 8
Dari hasil perhitungan di atas, dapat disimpulkan bahwa sistem ini dapat
menggantikan sistem yang selama ini berjalan yaitu sistem yang manual.
220
Sangat Setuju
Setuju
Kurang Setuju
Tidak Setuju
9. Apakah ada hal – hal yang perlu diperhatikan oleh pembuat aplikasi mengenai
aplikasi Sistem Informasi Persewaan Perlengkapan Pesta ini?
Tabel 5.9. Tabel Pernyataan 9
Jawaban Frekuensi Total (%)
Sangat Setuju 5 25
Setuju 13 65
Kurang Setuju 2 10
Tidak Setuju 0
Gambar 5.9. Grafik Pernyataan 9
Dari hasil perhitungan di atas, dapat disimpulkan bahwa sistem pada dasarnya
sudah berjalan dengan baik. Namun akan lebih baik lagi jika dilakukan
penyempurnaan di setiap bagian yang diperlukan. Sebagai contoh, sistem dilengkapi
dengan gambar – gambar setiap macam barang yang disewakan, pesan kesalahan
secara detail untuk tiap proses ketika pengguna salah memasukkan data.
221
5.5. Analisa Teknologi J2EE
Setelah melakukan proses implementasi, ada beberapa kelebihan dari Servlet
dan Java Server Pages (JSP). Kelebihan – kelebihan dari Servlet dan Java Server
Pages (JSP) adalah sebagai berikut:
1. Servlet
Kelebihan Servlet antara lain:
a. servlet memiliki kemampuan untuk melakukan penanganan request
dan memberikan response HTTP, penanganan session, akses ke
database dengan JDBC, dan library yang lengkap untuk
pembuatan aplikasi web.
b. proses development menjadi lebih cepat, karena servlet
menyediakan library Java yang lengkap.
2. Java Server Pages (JSP)
Kelebihan JSP antara lain:
a. pembuatan dan manajemen halaman web dinamis menjadi lebih
mudah dengan JSP.
b. JSP mudah dipelajari, karena terdiri dari tag – tag HTML dan
script – script JSP yang berbentuk bahasa Java.
5.6. Kelebihan Sistem
Mengingat bahwa program yang ada sebelumnya dilakukan secara manual,
maka dengan adanya sistem ini semua transaksi untuk pencatatan perlengkapan,
sirkulasi peminjaman dan pengembalian perlengkapan, dan pencarian stok
perlengkapan dapat dilakukan secara terkomputerisasi. Pekerjaan – pekerjaan manual
seperti pencatatan perlengkapan, peminjaman dan pengembalian perlengkapan, dan
pencarian stok perlengkapan yang dikerjakan dengan waktu yang lama, sekarang
222
dapat dilakukan dengan cepat dan otomatis, sehingga pemanfaatan perlengkapan yang
tersedia di gudang dapat dioptimalkan. Sistem ini disertai dengan gambar – gambar
perlengkapan yang disewakan. Sistem ini juga dilengkapi dengan cetak brosur dan
nota persewaan yang otomatis. Sistem ini juga merupakan sistem persewaan yang
berbasis web, sehingga pelanggan dapat mengakses pencarian stok perlengkapan yang
tersedia, melihat daftar barang yang disewakan oleh UD. ROSARI serta dapat
mencetaknya, dan dapat mengetahui dengan siapa dan di mana pelanggan dapat
menghubungi pihak UD. ROSARI.
5.6. Kekurangan Sistem
Saat ini sistem yang dibuat belum bisa menangani tentang penambahan stok
perlengkapan lama, sistem yang dibuat hanya bisa menambah data perlengkapan baru
beserta stoknya. Pesan kesalahan untuk pencatatan persewaan masih belum lengkap.
Sistem ini juga belum bisa menangani jumlah peminjaman barang yang melebihi stok
di gudang tanpa harus menolak pelanggan yang akan menyewa. Penanganan stok
belum dapat berdasarkan per-minggu. Pelanggan belum dapat menyewa perlengkapan
lewat internet.
223
BAB VI
PENUTUP
6.1. KESIMPULAN
Kesimpulan yang dapat diambil setelah sistem informasi persewaan
perlengkapan pesta ini dibangun dan diujikan adalah sebagai berikut:
1. Sistem yang ditujukan bagi UD. ROSARI telah berhasil dibangun dengan
menggunakan J2EE khususnya untuk Servlet dan Java Server Pages (JSP).
2. Proses yang dapat dilakukan pada sistem ini antara lain:
a. Proses Login.
b. Pendaftaran pegawai, pengubahan pegawai, dan penghapusan pegawai.
c. Pendaftaran pengguna akses, pengubahan data pengguna akses, dan
penghapusan data pengguna akses.
d. Pendaftaran jenis barang, pengubahan jenis barang, dan penghapusan
jenis barang.
e. Pendaftaran barang, pengubahan barang, penghapusan barang, dan
pencetakan brosur.
f. Pendaftaran pelanggan, pengubahan pelanggan, dan penghapusan
pelanggan.
g. Pendaftaran persewaan, pengubahan persewaan, dan penghapusan
persewaan.
h. Pencatatan pengembalian barang.
i. Transaksi persewaan yang meliputi penambahan transaksi, pengubahan
transaksi, penghapusan transaksi, detail transaksi, dan pencetakan nota
laporan.
224
j. Pencarian perlengkapan berdasarkan kategori tertentu, terutama untuk
pencarian stok perlengkapan berdasarkan tiap bulannya.
k. Menampilkan barang yang disewakan secara keseluruhan
l. Proses Logout.
3. Setelah diuji coba dan dilakukan penyebaran kuesioner, diperoleh hasil bahwa
sistem sudah berjalan dengan baik, sistem memiliki tampilan antarmuka yang
nyaman dan sesuai dengan tema, baik dalam segi warna maupun gambar, dan
sistem juga dapat diakses lewat internet.
6.2. SARAN
Saran bagi pengembangan sistem informasi persewaan pelengkapan pesta ini
adalah sebagai berikut:
1. Sistem dapat menangani tentang penambahan stok perlengkapan lama.
2. Sistem dapat menampilkan pesan kesalahan secara lengkap
3. Sistem dapat menangani jumlah peminjaman barang yang melebihi stok di
gudang.
4. Tampilan sistem dibuat lebih menarik.
5. Penanganan stok dapat berdasarkan per-minggu.
6. Pelanggan dapat menyewa perlengkapan lewat internet.
225
DAFTAR PUSTAKA
Britton, Carol & Doake, Jill. (2001). Object- Oriented Systems Development: a gentle
introduction. McGraw-Hill Companies.
Budiharto, Widarto. (2004). Pemrograman Web Menggunakan J2EE. Jakarta: PT Elex
Media Komputindo.
Dian Sano, Alb.V. (2005). 24 Jam Menguasai HTML, JSP, dan MySQL. Yogyakarta:
Andi Offset.
H.M, Jogiyanto. (1990). Analisis & Disain Sistem Informasi: Pendekatan Terstruktur
Teori dan Praktek Aplikasi Bisnis.Yogyakarta: Andi Offset.
Kadir, Abdul. (2004). Dasar Pemrograman Web Dinamis dengan JSP (Java Server
Pages). Yogyakarta : ANDI OFFSET.
Rickyanto, Isak. (2003). Pemrograman Web dengan Java Servlet.Yogyakarta: Andi
Offset.
Sanjaya, Ridwan. (2005). Pengolahan Database MySQL 5 dengan Java 2. Yogyakarta:
Andi Offset.
Sinaga, Benyamin L. (2005). Pemrograman Berorientasi Objek dengan Java.
Yogyakarta: Gava Media.
Whitten, Jeffrey L. (2004). Systems Analysis and Design Methods. New York: McGraw-
Hill Companies.
Wijono, Sri Hartati dkk. (2007). Pemrograman Java; Servlet dan JSP dengan NetBeans.
Yogyakarta: C. V ANDI OFFSET.