Sistem Informasi Perpustakaan.
i
Universitas Kristen Maranatha
SISTEM INFORMASI PERPUSTAKAAN
Novianus John T / 0827027
Jurusan Sistem Komputer, Fakultas Teknik Universitas Kristen Maranatha Jalan Prof. drg. Surya Sumantri, MPH 65
Bandung
ABSTRAK
Perpustakaan adalah suatu tempat para mahasiswa memperoleh akses terhadap informasi dan pengetahuan. Perpustakaan merupakan fasilitas pendukung proses pengajaran dan pembelajaran melalui penyediaan bahan pustaka.
Tugas akhir ini bertujuan untuk membantu petugas perpustakaan agar dapat melakukan tugasnya dengan lebih mudah dan cepat. Sistem yang dirancang ini mempunyai kelebihan dalam membantu user atau admin untuk memperoleh informasi lebih cepat, tepat dan akurat mengenai data anggota, data buku, data peminjaman, dan data pengembalian.
(2)
ii
Universitas Kristen Maranatha
LIBRARY INFORMATION SYSTEM
Novianus/0827027
Jurusan Sistem Komputer, Fakultas Teknik Universitas Kristen Maranatha Jalan Prof. drg. Surya Sumantri, MPH 65
Bandung
ABSTRACT
Library is a place where students have access to information and knowledge. The library is a facility of supporting the teaching and learning process by providing literatures.
This report aims to assist the librarians in order to do their job easier and faster. This system is designed to have advantages in helping the user or administrators to get information faster, more precise and accurate information about the members data, books data, lending data, and returning data.
(3)
iv
Universitas Kristen Maranatha
DAFTAR ISI
Abstrak ... i
Abstract ... ii
Kata Pengantar ... iii
Daftar Isi ... iv
Daftar Gambar ... vi
BAB I. PENDAHULUAN ... 1
1.1. Latar Belakang ... 1
1.2. Identifikasi Masalah ... 2
1.3. Tujuan ... 2
1.4. Pembatasan Masalah ... 2
1.5. Sistematika Penulisan ... 3
BAB II. LANDASAN TEORI ... 5
2.1. Sistem Informasi ... 5
2.2. Basis Data ... 5
2.3. Definisi Perpustakaan ... 7
2.4. Microsoft SQL Server 2008 ... 8
2.7. Microsoft Visual Basic 2010 ... 10
BAB III. PERANCANGAN... 14
3.1. Tentang Program ... 14
3.2.
Data Flow Diagram
... 153.3. Perancangan Database ... 16
3.4. Relasi Antar Tabel Dalam Database... 20
3.5. Perancangan Program ... 21
3.6 Perancangan Report ... 29
BAB IV. PEMBAHASAN ... 32
(4)
v
Universitas Kristen Maranatha
4.2. Proses Pencarian Data ... 38
4.3. Tampilan Laporan... 42
BAB V. KESIMPULAN DAN SARAN ... 44
5.1. Kesimpulan ... 45
5.2. Saran ... 45
Daftar Pustaka ... 46 Lampiran ... A-1
(5)
vi
Universitas Kristen Maranatha
DAFTAR GAMBAR
Gambar 2.4.1 Tampilan Microsoft SQL Server 2008...10
Gambar 2.5.1 Tampilan Microsoft Visual Studio 2010...12
Gambar 3.2.1 Data Flow Diagram ... 15
Gambar 3.3.1 Tabel Buku ... 17
Gambar 3.3.2 Tabel Anggota ... 17
Gambar 3.3.3 Tabel Petugas ... 18
Gambar 3.3.4 Table Pinjam ... 19
Gambar 3.3.5 Tabel Detail Pinjam ... 19
Gambar 3.3.6 Tabel Kembali ... 20
Gambar 3.3.7 Tabel Detail Kembali... 20
Gambar 3.4.1 Relasi Antar Tabel ... 21
Gambar 3.5.1 Form Perpustakaan (Main Menu) ... 22
Gambar 3.5.2 Form Perpustakaan (Sub Menu File) ... 23
Gambar 3.5.3 Form Perpustakaan (Sub Menu Master) ... 24
Gambar 3.5.4 Form Perpustakaan (Sub Menu Transaksi) ... 24
Gambar 3.5.5 Form Perpustakaan (Sub Menu Laporan) ... 25
Gambar 3.5.6 Form Login ... 26
Gambar 3.5.7 Form Anggota ... 26
Gambar 3.5.8 Form Buku ... 27
Gambar 3.5.9 Form Petugas ... 27
Gambar 3.5.10 Form Peminjaman ... 28
Gambar 3.5.11 Form Pengembalian ... 29
Gambar 3.6.1 Report Data Stok Buku ... 29
Gambar 3.6.2 Report Data Anggota ... 30
Gambar 3.6.3 Report Data Peminjaman Buku ... 30
(6)
vii
Universitas Kristen Maranatha
Gambar 4.1.1 Input Data Anggota ... 32
Gambar 4.1.2 Data masuk ke database, ditampilkan di Datagridview Anggota 33 Gambar 4.1.3 Input Data Buku ... 33
Gambar 4.1.4 Data masuk ke database, ditampilkan di Datagridview Buku ... 34
Gambar 4.1.5 Input Data Petugas ... 34
Gambar 4.1.6 Data masuk ke database, ditampilkan di Datagridview Petugas 35 Gambar 4.1.7 Input Data Peminjaman ... 36
Gambar 4.1.8 Data masuk ke database, ditampilkan di Datagridview Pinjam .. 36
Gambar 4.1.9 Input Data Pengembalian ... 37
Gambar 4.1.10 Data masuk ke database,ditampilkan di Datagridview Kembali38 Gambar 4.2.1 Data Buku ditampilkan semua di Datagridview Buku ... 38
Gambar 4.2.2 Cari Buku berdasarkan Judul buku ... 39
Gambar 4.2.3 Data Anggota ditampilkan semua di Datagridview Anggota... 39
Gambar 4.2.4 Cari Anggota berdasarkan nama anggota ... 40
Gambar 4.2.5 Data Petugas ditampilkan semua di Datagridview Petugas ... 40
Gambar 4.2.6 Cari Petugas berdasarkan No_Petugas... 41
Gambar 4.2.7 Data Peminjaman ditampilkan semua di Datagridview Pinjam .. 41
Gambar 4.2.8 Cari Peminjaman berdasarkan Judul Buku ... 42
Gambar 4.3.1 Tampilan Laporan Stok Buku ... 42
Gambar 4.3.2 Tampilan Laporan Anggota ... 43
Gambar 4.3.3 Tampilan Laporan Peminjaman Buku ... 43
(7)
A- 1
Lampiran A
Program Form Menu
Public Class Frm_utama Public user As StringPrivate Sub LogoutToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles
LogoutToolStripMenuItem.Click
If MsgBox("Apakah anda ingin Logout?", MsgBoxStyle.YesNo, "Logout ?") = MsgBoxResult.Yes Then
If Not user = "Admin" Then op()
Else op() admin() End If End If End Sub Sub op()
LoginToolStripMenuItem.Enabled = True LogoutToolStripMenuItem.Enabled = False MasterToolStripMenuItem.Enabled = False BukuToolStripMenuItem.Visible = False AnggotaToolStripMenuItem.Visible = True TransaksiToolStripMenuItem.Enabled = False LaporanToolStripMenuItem.Enabled = False End Sub
Sub admin()
MASTERToolStripMenuItem.Enabled = False BukuToolStripMenuItem.Visible = False PetugasToolStripMenuItem.Visible = False TRANSAKSIToolStripMenuItem.Enabled = False LAPORANToolStripMenuItem.Enabled = False End Sub
Private Sub Frm_utama_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
MasterToolStripMenuItem.Enabled = False TransaksiToolStripMenuItem.Enabled = False LaporanToolStripMenuItem.Enabled = False End Sub
(8)
A-2 Private Sub KeluarToolStripMenuItem_Click(ByVal sender As
System.Object, ByVal e As System.EventArgs) Handles KeluarToolStripMenuItem.Click
Me.Close() End Sub
Private Sub AnggotaToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles
AnggotaToolStripMenuItem.Click Frm_Anggota.Show() End Sub
Private Sub BukuToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BukuToolStripMenuItem.Click
Frm_Buku.Show() End Sub
Private Sub PetugasToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles
PetugasToolStripMenuItem.Click Frm_Petugas.Show() End Sub
Private Sub PeminjamanToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles
PeminjamanToolStripMenuItem.Click Frm_Peminjaman.Show() End Sub
Private Sub LoginToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles
LoginToolStripMenuItem.Click Frm_Login.ShowDialog() End Sub
Private Sub PengembalianToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles
PengembalianToolStripMenuItem.Click Frm_Pengembalian.Show() End Sub
Private Sub StokBukuToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles
StokBukuToolStripMenuItem.Click frm_laporanbuku.Show() End Sub
(9)
A-3 Private Sub AnggotaToolStripMenuItem1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles
AnggotaToolStripMenuItem1.Click frm_laporananggota.Show() End Sub
Private Sub LapPeminjamanToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles
LapPeminjamanToolStripMenuItem.Click LapPeminjaman.Show()
End Sub
Private Sub LapPengembalianToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles
LapPengembalianToolStripMenuItem.Click frm_LapKembali.Show()
End Sub End Class
Program Form Anggota
Public Class Frm_Anggota Sub tampil_anggota()Dim adapter As New SqlDataAdapter("Select * from T_anggota", Module1.koneksi)
Dim dt As New DataTable("T_anggota") adapter.Fill(dt)
dg_anggota.DataSource = dt End Sub
Sub bersih()
tb_noanggota.Clear() tb_nama.Clear() tb_alamat.Clear() tb_tlpn.Clear() tb_noktp.Clear() tb_ttl.Clear() End Sub
Sub aktif_button()
btn_simpan.Enabled = True End Sub
Private Sub btn_simpan_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_simpan.Click
Dim sql As String
sql = "exec sp_simpan_anggota '" & tb_noanggota.Text & "','" & tb_nama.Text & "','" & tb_alamat.Text & "','" & tb_tlpn.Text & "','" & tb_noktp.Text & "','" & tb_ttl.Text & "'"
(10)
A-4 cmd.ExecuteNonQuery()
Module1.koneksi.Close() MsgBox("Data di simpan") tampil_anggota()
bersih() End Sub
Private Sub btn_batal_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_batal.Click
If MsgBox("kamu yakin akan membatalkan proses", vbYesNo) = vbYes Then
bersih() Else
btn_batal.Focus() End If
aktif_button() End Sub
Private Sub btn_ubah_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_ubah.Click
Dim sql As String
sql = "update T_anggota set nama= '" & tb_nama.Text & "', alamat='" & tb_alamat.Text & "', tlpn='" & tb_tlpn.Text & "', no_ktp='" & tb_noktp.Text & "', ttl='" & tb_ttl.Text & "' where no_anggota='" & tb_noanggota.Text & "'" Dim cmd As New SqlCommand(sql, Module1.koneksi)
cmd.ExecuteNonQuery() Module1.koneksi.Close() MsgBox("Data Telah Di Ubah") tampil_anggota()
bersih() aktif_button() End Sub
Private Sub Btn_hapus_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Btn_hapus.Click
Dim sql As String
sql = "exec sp_Hapus_anggota '" & tb_noanggota.Text & "'" Dim cmd As New SqlCommand(sql, Module1.koneksi) cmd.ExecuteNonQuery()
Module1.koneksi.Close() MsgBox("Data telah di Hapus") tampil_anggota()
bersih() aktif_button() End Sub
Private Sub dg_anggota_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles dg_anggota.Click
(11)
A-5 tb_noanggota.Focus()
tb_noanggota.Text = dg_anggota.Item(0, dg_anggota.CurrentRow.Index).Value.ToString tb_nama.Text = dg_anggota.Item(1, dg_anggota.CurrentRow.Index).Value.ToString tb_alamat.Text = dg_anggota.Item(2, dg_anggota.CurrentRow.Index).Value.ToString tb_tlpn.Text = dg_anggota.Item(3,
dg_anggota.CurrentRow.Index).Value.ToString tb_noktp.Text = dg_anggota.Item(4, dg_anggota.CurrentRow.Index).Value.ToString tb_ttl.Text = dg_anggota.Item(5,
dg_anggota.CurrentRow.Index).Value.ToString btn_simpan.Enabled = False
btn_ubah.Enabled = True btn_batal.Enabled = True Btn_hapus.Enabled = True End Sub
Private Sub Frm_Anggota_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
tampil_anggota() bersih()
End Sub
Private Sub tb_cari_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles tb_cari.TextChanged
Dim adapter As New SqlDataAdapter("Select * from T_Anggota where nama like '" & tb_cari.Text & "%' ", Module1.koneksi)
Dim dt As New DataTable("T_Anggota") adapter.Fill(dt)
dg_anggota.DataSource = dt End Sub
End Class
Program Form Buku
Public Class Frm_Buku Sub tampil_Buku()Dim adapter As New SqlDataAdapter("Select * from T_Buku1", Module1.koneksi)
Dim dt As New DataTable("T_Buku1") adapter.Fill(dt)
dg_buku.DataSource = dt End Sub
(12)
A-6 Sub bersih()
tb_nobuku.Clear() tb_judul.Clear() tb_tahun.Clear() tb_stok.Clear() tb_penerbit.Clear() tb_pengarang.Clear() tb_noisbn.Clear() tb_norak.Clear() End Sub
Private Sub btn_simpan_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_simpan.Click
Dim sql As String
sql = "exec sp_simpan_Buku1 '" & tb_nobuku.Text & "','" &
tb_judul.Text & "','" & tb_penerbit.Text & "','" & tb_pengarang.Text & "','" & tb_stok.Text & "','" & tb_tahun.Text & "','" & tb_noisbn.Text & "','" &
tb_norak.Text & "'"
Dim cmd As New SqlCommand(sql, Module1.koneksi) cmd.ExecuteNonQuery()
Module1.koneksi.Close() MsgBox("Data di simpan") tampil_Buku()
bersih() End Sub
Sub aktif_button()
btn_simpan.Enabled = True End Sub
Private Sub btn_batal_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_batal.Click
If MsgBox("kamu yakin akan membatalkan proses", vbYesNo) = vbYes Then
bersih() Else
btn_batal.Focus() End If
aktif_button() End Sub
Private Sub btn_ubah_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_ubah.Click
Dim sql As String
sql = "update T_Buku1 set judul= '" & tb_judul.Text & "', penerbit='" & tb_penerbit.Text & "', pengarang='" & tb_pengarang.Text & "', stok='" & tb_stok.Text & "', tahun='" & tb_tahun.Text & "', no_isbn='" &
tb_noisbn.Text & "', no_rak='" & tb_norak.Text & "' where no_Buku='" & tb_nobuku.Text & "'"
(13)
A-7 Dim cmd As New SqlCommand(sql, Module1.koneksi)
cmd.ExecuteNonQuery() Module1.koneksi.Close() MsgBox("Data Telah Di Ubah") tampil_Buku()
bersih() aktif_button() End Sub
Private Sub Btn_hapus_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Btn_hapus.Click
Dim sql As String
sql = "exec sp_Hapus_Buku1 '" & tb_nobuku.Text & "'" Dim cmd As New SqlCommand(sql, Module1.koneksi) cmd.ExecuteNonQuery()
Module1.koneksi.Close() MsgBox("Data telah di Hapus") tampil_Buku()
bersih() aktif_button() End Sub
Private Sub dg_buku_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles dg_buku.Click
tb_nobuku.Focus()
tb_nobuku.Text = dg_buku.Item(0, dg_buku.CurrentRow.Index).Value.ToString tb_judul.Text = dg_buku.Item(1,
dg_buku.CurrentRow.Index).Value.ToString tb_penerbit.Text = dg_buku.Item(2, dg_buku.CurrentRow.Index).Value.ToString tb_pengarang.Text = dg_buku.Item(3, dg_buku.CurrentRow.Index).Value.ToString tb_stok.Text = dg_buku.Item(4,
dg_buku.CurrentRow.Index).Value.ToString tb_tahun.Text = dg_buku.Item(5, dg_buku.CurrentRow.Index).Value.ToString tb_noisbn.Text = dg_buku.Item(6, dg_buku.CurrentRow.Index).Value.ToString tb_norak.Text = dg_buku.Item(7, dg_buku.CurrentRow.Index).Value.ToString btn_simpan.Enabled = False
btn_ubah.Enabled = True btn_batal.Enabled = True Btn_hapus.Enabled = True End Sub
Private Sub Frm_Buku_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
(14)
A-8 bersih()
End Sub
Private Sub tb_cari_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles tb_cari.TextChanged
Dim adapter As New SqlDataAdapter("Select * from T_buku1 where judul like '" & tb_cari.Text & "%' ", Module1.koneksi)
Dim dt As New DataTable("T_Buku1") adapter.Fill(dt)
dg_buku.DataSource = dt End Sub
End Class
Program Form Daftar Petugas
Public Class Frm_Petugas Sub tampil_petugas()Dim adapter As New SqlDataAdapter("Select * from T_petugas", Module1.koneksi)
Dim dt As New DataTable("T_petugas") adapter.Fill(dt)
dg_petugas.DataSource = dt End Sub
Sub bersih()
tb_nopetugas.Clear() tb_password.Clear() End Sub
Sub aktif_button()
btn_simpan.Enabled = True End Sub
Private Sub btn_simpan_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_simpan.Click
Dim sql As String
sql = "exec sp_simpan_petugas '" & tb_nopetugas.Text & "','" & tb_password.Text & "'"
Dim cmd As New SqlCommand(sql, Module1.koneksi) cmd.ExecuteNonQuery()
Module1.koneksi.Close() MsgBox("Data di simpan") tampil_petugas()
bersih() End Sub
Private Sub Btn_hapus_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Btn_hapus.Click
Dim sql As String
sql = "exec sp_Hapus_petugas '" & tb_nopetugas.Text & "'" Dim cmd As New SqlCommand(sql, Module1.koneksi)
(15)
A-9 cmd.ExecuteNonQuery()
Module1.koneksi.Close() MsgBox("Data telah di Hapus") tampil_petugas()
bersih() End Sub
Private Sub btn_batal_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_batal.Click
If MsgBox("kamu yakin akan membatalkan proses", vbYesNo) = vbYes Then
bersih() Else
btn_batal.Focus() End If
aktif_button() End Sub
Private Sub dg_petugas_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles dg_petugas.Click
tb_nopetugas.Focus()
tb_nopetugas.Text = dg_petugas.Item(0, dg_petugas.CurrentRow.Index).Value.ToString tb_password.Text = dg_petugas.Item(1, dg_petugas.CurrentRow.Index).Value.ToString btn_simpan.Enabled = False
btn_ubah.Enabled = True btn_batal.Enabled = True Btn_hapus.Enabled = True End Sub
Private Sub Frm_Petugas_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
tampil_petugas() bersih()
End Sub
Private Sub btn_ubah_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_ubah.Click
Dim sql As String
sql = "update T_petugas set No_petugas= '" & tb_nopetugas.Text & "', password='" & tb_password.Text & "' where no_petugas='" &
tb_nopetugas.Text & "'"
Dim cmd As New SqlCommand(sql, Module1.koneksi) cmd.ExecuteNonQuery()
Module1.koneksi.Close() MsgBox("Data Telah Di Ubah") tampil_petugas()
bersih() aktif_button()
(16)
A-10 End Sub
Private Sub tb_cari_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles tb_cari.TextChanged
Dim adapter As New SqlDataAdapter("Select * from T_Petugas where no_petugas like '" & tb_cari.Text & "%' ", Module1.koneksi) Dim dt As New DataTable("T_Petugas")
adapter.Fill(dt)
dg_petugas.DataSource = dt End Sub
End Class
Program Form Login
Public Class Frm_Login Sub login()Dim adapter As New SqlDataAdapter("select *from T_petugas where no_petugas='" & tb_User.Text & "' and password='Admin'",
Module1.koneksi)
Dim dt As New DataSet adapter.Fill(dt)
If tb_User.Text = "" Then
MsgBox("user harus diisi!", MsgBoxStyle.Information, "Informasi") tb_User.Focus()
ElseIf tb_Password.Text = "" Then
MsgBox("Username harus diisi!", MsgBoxStyle.Information, "Informasi")
tb_Password.Focus()
ElseIf dt.Tables(0).Rows.Count <> 0 Then Frm_utama.user = "0001"
MsgBox("Anda login sebagai Admin", MsgBoxStyle.Information, "Sukses")
op() admin()
Frm_utama.Label2.Text = Frm_utama.user Close()
Else
adapter = New SqlDataAdapter("select *from T_petugas where no_petugas='" & tb_User.Text & "' and password='Operator'",
Module1.koneksi)
dt = New DataSet adapter.Fill(dt)
If dt.Tables(0).Rows.Count <> 0 Then Frm_utama.user = tb_User.Text
MsgBox("anda login sebagai operator", MsgBoxStyle.Information, "Sukses")
(17)
A-11 Frm_utama.Label2.Text = Frm_utama.user
Close() Else
MsgBox("Maaf Login anda belum berhasil..", MsgBoxStyle.Information, "Gagal!")
tb_User.Clear() tb_Password.Clear() tb_User.Focus() End If
End If End Sub Sub op()
Frm_utama.LoginToolStripMenuItem.Enabled = False Frm_utama.LogoutToolStripMenuItem.Enabled = True Frm_utama.MasterToolStripMenuItem.Enabled = True Frm_utama.BukuToolStripMenuItem.Visible = False Frm_utama.PetugasToolStripMenuItem.Visible = False Frm_utama.TransaksiToolStripMenuItem.Enabled = True Frm_utama.LaporanToolStripMenuItem.Enabled = False End Sub
Sub admin()
Frm_utama.MasterToolStripMenuItem.Enabled = True Frm_utama.BukuToolStripMenuItem.Visible = True Frm_utama.PetugasToolStripMenuItem.Visible = True Frm_utama.AnggotaToolStripMenuItem.Visible = True Frm_utama.TransaksiToolStripMenuItem.Enabled = True Frm_utama.LaporanToolStripMenuItem.Enabled = True End Sub
Private Sub Frm_Login_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
tb_User.Clear() tb_Password.Clear() tb_User.Focus() End Sub
Private Sub btn_Login_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_Login.Click
login() End Sub
Private Sub tb_User_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles tb_User.KeyDown If e.KeyCode = Keys.Return Then
SendKeys.Send("{TAB}") e.SuppressKeyPress = True End If
(18)
A-12 Private Sub tb_Password_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles
tb_Password.KeyDown
If e.KeyCode = Keys.Return Then login()
End If End Sub End Class
Program Form Peminjaman
Public Class Frm_Peminjaman Sub tampil_Barang()Dim adapter As New SqlDataAdapter("Select *from T_buku1", Module1.koneksi)
Dim dt As New DataTable("T_buku1") adapter.Fill(dt)
dg_buku.DataSource = dt End Sub
Sub tampil_kodeanggota() Dim kon As SqlConnection
kon = New SqlConnection("Data source= CEPER-PC; initial catalog=perpus; integrated security=true ")
Dim cmd As SqlCommand Dim rdr As SqlDataReader Dim da As New SqlDataAdapter Dim ds As New DataSet
Dim dt As New DataTable
cmd = New SqlCommand("SELECT no_anggota FROM T_anggota", Module1.koneksi)
kon.Open()
cmd.Connection = koneksi()
cmd.CommandType = CommandType.Text cmd.CommandText = "Select * from T_anggota" rdr = cmd.ExecuteReader
If rdr.HasRows Then While rdr.Read()
cb_noanggota.Items.Add(rdr.Item("No_anggota")) End While
End If rdr.Close() koneksi.Close() End Sub
Sub non_aktif()
btn_pinjam.Enabled = False btn_batal.Enabled = True btn_add.Enabled = False
(19)
A-13 End Sub
Sub add()
dg_tbuku.Columns(0).Name = tb_nobuku.Text dg_tbuku.Columns(1).Name = tb_judul.Text dg_tbuku.Columns(2).Name = tb_noisbn.Text dg_tbuku.Columns(3).Name = tb_jumlahpinjam.Text
Dim row As String() = New String() {tb_nobuku.Text, tb_judul.Text, tb_noisbn.Text, tb_jumlahpinjam.Text}
dg_tbuku.Rows.Add(row) End Sub
Sub dtgrd_in_to_detail() Dim txt1, txt4 As String Dim a, b
b = dg_tbuku.RowCount b = b - 2
For a = 0 To b Step 1
txt1 = dg_tbuku.Item(0, a).Value.ToString txt4 = dg_tbuku.Item(3, a).Value.ToString Dim sql As String
sql = "exec Sp_Simpan_Detail_pinjam '" & tb_nopinjam.Text & "', '" & txt1 & "','" & txt4 & "'"
Dim cmd As New SqlCommand(sql, Module1.koneksi) cmd.ExecuteNonQuery()
Next a End Sub Sub bersih()
tb_nobuku.Clear() tb_judul.Clear() tb_penerbit.Clear() Tb_pengarang.Clear() tb_tanggal.Clear() tb_tahun.Clear() tb_norak.Clear() tb_noisbn.Clear() tb_jumlahpinjam.Clear() tb_jumlahpinjam.Clear() tb_cari.Clear()
tb_totalpinjam.Clear() tb_nopinjam.Clear() tb_totalpinjam.Clear() dg_tbuku.Rows.Clear() dg_buku.DataSource = "" cb_noanggota.Text = "" End Sub
Sub coba()
Dim sql As String
Dim read As SqlDataReader Dim cmd As SqlCommand
(20)
A-14 sql = "select No_pinjam from T_pinjam WHERE (No_pinjam
=(SELECT MAX(No_pinjam)FROM T_pinjam))" Try
cmd = New SqlCommand(sql, Module1.koneksi) read = cmd.ExecuteReader
While read.Read
tb_nopinjam.Text = read.Item(0) End While
cmd.Dispose() read.Close()
Catch ex As Exception MsgBox(ex.Message) End Try
End Sub
Private Sub Frm_Peminjaman_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
non_aktif()
tampil_kodeanggota()
tb_tanggal.Text = Format(Now, "yyyy/MM/dd") tb_nopetugas.Text = Frm_utama.Label2.Text End Sub
Private Sub dg_buku_DoubleClick(ByVal sender As Object, ByVal e As System.EventArgs) Handles dg_buku.DoubleClick
tb_nobuku.Text = dg_buku.Item(0, dg_buku.CurrentRow.Index).Value.ToString tb_judul.Text = dg_buku.Item(1,
dg_buku.CurrentRow.Index).Value.ToString tb_penerbit.Text = dg_buku.Item(2, dg_buku.CurrentRow.Index).Value.ToString Tb_pengarang.Text = dg_buku.Item(3, dg_buku.CurrentRow.Index).Value.ToString tb_stok.Text = dg_buku.Item(4,
dg_buku.CurrentRow.Index).Value.ToString tb_tahun.Text = dg_buku.Item(5, dg_buku.CurrentRow.Index).Value.ToString tb_noisbn.Text = dg_buku.Item(6, dg_buku.CurrentRow.Index).Value.ToString tb_norak.Text = dg_buku.Item(7, dg_buku.CurrentRow.Index).Value.ToString tb_jumlahpinjam.Focus()
btn_add.Enabled = True End Sub
Private Sub btn_batal_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_batal.Click
bersih() End Sub
(21)
A-15 Private Sub btn_baru_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
End Sub
Private Sub btn_add_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_add.Click
total() add() non_aktif()
btn_pinjam.Enabled = True tb_nobuku.Clear()
tb_judul.Clear() tb_penerbit.Clear() tb_pengarang.Clear() tb_jumlahpinjam.Clear() tb_stok.Clear()
tb_noisbn.Clear() tb_norak.Clear() tb_tahun.Clear() End Sub
Sub total()
Dim a As Integer
a = Val(tb_jumlahpinjam.Text) + Val(tb_totalpinjam.Text) tb_totalpinjam.Text = a
End Sub
Private Sub btn_pinjam_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_pinjam.Click
Try
If tb_tanggal.Text = "" Or dg_tbuku.RowCount = 0 Then MsgBox("Mohon lengkapi data", MsgBoxStyle.Information, "Information")
Else
Dim sql As String
sql = "exec spr_simpan_pinjam '" & cb_noanggota.Text & "','" & tb_nopetugas.Text & "','" & tb_tanggal.Text & "','" & tb_totalpinjam.Text & "'"
Dim cmd As New SqlCommand(sql, Module1.koneksi) cmd.ExecuteNonQuery()
Module1.koneksi.Close() coba()
dtgrd_in_to_detail()
MsgBox("data telah disimpan", MsgBoxStyle.Information, "Information")
bersih() End If
(22)
A-16 MsgBox(ex.Message)
End Try End Sub
Private Sub ComboBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles
cb_noanggota.SelectedIndexChanged tampil_Barang()
End Sub
Private Sub tb_cari_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles tb_cari.TextChanged
Dim adapter As New SqlDataAdapter("Select * from T_buku1 where judul like '" & tb_cari.Text & "%' ", Module1.koneksi)
Dim dt As New DataTable("T_buku1") adapter.Fill(dt)
dg_buku.DataSource = dt End Sub
End Class
Program Form Transaksi Pengembalian
Public Class Frm_PengembalianSub tampil_Buku()
Dim adapter As New SqlDataAdapter("Select * from VIew_1 where No_pinjam= '" & tb_nopinjam.Text & "'", Module1.koneksi)
Dim dt As New DataTable("View_1") adapter.Fill(dt)
dg_buku.DataSource = dt End Sub
Sub Tampil_anggota() Dim sql As String
Dim red As SqlDataReader Dim cmd As SqlCommand
sql = "Select *from View_2 where No_pinjam='" & tb_nopinjam.Text & "'"
Try
cmd = New SqlCommand(sql, Module1.koneksi) red = cmd.ExecuteReader
While red.Read
tb_noanggota.Text = red.Item(1)
(23)
A-17 cmd.Dispose()
red.Close()
Catch ex As Exception MsgBox(ex.Message) End Try
End Sub Sub coba()
Dim sql As String
Dim red As SqlDataReader Dim cmd As SqlCommand
sql = "select No_kembali from T_Kembali WHERE (No_kembali =(SELECT MAX(No_kembali)FROM T_Kembali))"
Try
cmd = New SqlCommand(sql, Module1.koneksi) red = cmd.ExecuteReader
While red.Read
tb_noKembali.Text = red.Item(0) End While
cmd.Dispose() red.Close()
Catch ex As Exception MsgBox(ex.Message) End Try
End Sub Sub add()
dg_tbuku.Columns(0).Name = tb_nobuku.Text dg_tbuku.Columns(1).Name = tb_judul.Text
dg_tbuku.Columns(2).Name = tb_jumlahkembali.Text dg_tbuku.Columns(3).Name = tb_denda.Text
Dim row As String() = New String() {tb_nobuku.Text, tb_judul.Text, tb_jumlahkembali.Text, tb_denda.Text}
dg_tbuku.Rows.Add(row) End Sub
Sub total()
Dim a As Integer
a = Val(tb_jumlahkembali.Text) + Val(tb_Totalkembali.Text) tb_Totalkembali.Text = a
End Sub
Sub dtgrd_in_to_detail() Dim txt1, txt4 As String Dim a, b
b = dg_tbuku.RowCount b = b - 2
For a = 0 To b Step 1
txt1 = dg_tbuku.Item(0, a).Value.ToString txt4 = dg_tbuku.Item(2, a).Value.ToString Dim sql As String
sql = "exec Sp_Simpan_Detail_kembali '" & tb_noKembali.Text & "', '" & txt1 & "','" & txt4 & "'"
(24)
A-18 Dim cmd As New SqlCommand(Sql, Module1.koneksi)
cmd.ExecuteNonQuery() Next a
End Sub
Private Sub btn_tampil_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_tampil.Click
Tampil_anggota() tampil_Buku() End Sub
Private Sub btn_add_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_add.Click
Dim a, b As Integer a = tb_jumlahpinjam.Text b = tb_jumlahkembali.Text If b > a Then
MsgBox("Data Kelebihan") Else
total() add()
btn_simpan.Enabled = True tb_nobuku.Clear()
tb_judul.Clear() ' tb_denda.Clear()
tb_jumlahkembali.Clear() tb_jumlahpinjam.Clear() End If
End Sub
Private Sub dg_buku_DoubleClick(ByVal sender As Object, ByVal e As System.EventArgs) Handles dg_buku.DoubleClick
tb_nobuku.Text = dg_buku.Item(1, dg_buku.CurrentRow.Index).Value.ToString tb_judul.Text = dg_buku.Item(2,
dg_buku.CurrentRow.Index).Value.ToString tb_jumlahpinjam.Text = dg_buku.Item(3, dg_buku.CurrentRow.Index).Value.ToString tb_stok.Text = dg_buku.Item(5,
dg_buku.CurrentRow.Index).Value.ToString tb_jumlahkembali.Focus()
btn_add.Enabled = True End Sub
Private Sub Frm_Pengembalian_Load(ByVal sender As
System.Object, ByVal e As System.EventArgs) Handles MyBase.Load aktif()
tb_nopetugas.Text = Frm_utama.Label2.Text tb_tanggal.Text = Format(Now, "yyyy/MM/dd")
(25)
A-19 End Sub
Sub bersih()
tb_jumlahkembali.Clear() tb_jumlahpinjam.Clear() tb_nobuku.Clear() tb_noanggota.Clear() tb_nopetugas.Clear() tb_judul.Clear() tb_denda.Clear() tb_nopinjam.Clear() tb_noKembali.Clear() tb_tanggal.Clear() dg_tbuku.Rows.Clear() tb_Totalkembali.Clear() dg_buku.DataSource = "" End Sub
Sub aktif()
btn_simpan.Enabled = False btn_Batal.Enabled = True btn_add.Enabled = True btn_tampil.Enabled = True End Sub
Private Sub btn_simpan_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_simpan.Click
Try
Dim sql As String
sql = "exec sp_simpan_kembali '" & tb_noanggota.Text & "','" & tb_tanggal.Text & "','" & tb_Totalkembali.Text & "','" & tb_denda.Text & "','" & tb_nopetugas.Text & "'"
Dim cmd As New SqlCommand(sql, Module1.koneksi) cmd.ExecuteNonQuery()
Module1.koneksi.Close() coba()
dtgrd_in_to_detail()
MsgBox("data telah disimpan", MsgBoxStyle.Information, "Information")
aktif() bersih()
Catch ex As Exception MsgBox(ex.Message) End Try
End Sub
Private Sub btn_denda_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_denda.Click
(26)
A-20 Dim t_km As Date = DateTimePicker1.Text
Dim ww As Long = DateDiff(DateInterval.Day, t_pj, t_km) If (ww >= 7) Then
tb_denda.Text = (ww * 100) Else
tb_denda.Text = 0
MsgBox("tidak ada denda") End If
End Sub
Private Sub btn_Batal_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_Batal.Click
bersih() aktif() End Sub
Private Sub btn_Tutup_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_Tutup.Click
Me.Close() End Sub
Private Sub dg_buku_CellContentClick(ByVal sender As System.Object, ByVal e As
System.Windows.Forms.DataGridViewCellEventArgs) Handles dg_buku.CellContentClick
End Sub End Class
(27)
1
Universitas Kristen Maranatha
BAB I
PENDAHULUAN
1.1.
Latar Belakang
Perpustakaan merupakan sarana penunjang kegiatan belajar mengajar. Data di perpustakaan lumayan banyak, kebanyakan proses – proses pengolahan peminjaman dan pengembalian buku di perpustakaan masih bersifat manual. Contohnya untuk pencatatan data peminjaman dan pengembalian masih ditulis ke dalam buku besar sehingga menjadi tidak efektif dalam menangani pendataan anggota maupun peminjaman buku pada bagian pelayanan. Penerapan teknologi informasi telah menyebar hampir di semua bidang, tidak terkecuali di bidang perpustakaan. Dengan demikian, ukuran perkembangan perpustakaan banyak diukur dari penerapan teknologi informasi yang digunakan dan bukan dari skala ukuran lain seperti besarnya gedung perpustakaan yang dimiliki, jumlah koleksi yang tersedia maupun jumlah penggunanya. Kebutuhan akan teknologi informasi sangat berhubungan dengan peran perpustakaan sebagai kekuatan dalam penyebaran informasi ilmu pengetahuan dan kebudayaan. Dengan aplikasi ini, akan mempermudah pelayanan dan akses informasi serta pengelolaan data perpustakaan, seperti mempermudah pencarian buku, sistem keanggotaan, materi kuliah, peminjaman dan pengembalian buku. Sehingga, akan diperoleh
(28)
2 Universitas Kristen Maranatha efisiensi pekerjaan staf perpustakaan dalam pengelolaan buku perpustakaan, penyajian informasi yang lebih mudah dan interaktif, memberikan layanan yang lebih baik kepada pengguna layanan perpustakaan.
1.2.
Identifikasi Masalah
Berdasarkan hasil analisis yang telah dilakukan pada sistem informasi perpustakaan yang ada, penulis mengidentifikasikan beberapa permasalahan sebagai berikut :
1. Bagaimana cara membuat sistem informasi perpustakaan?
2. Bagaimana cara mempermudah akses sistem informasi perpustakaan?
1.3.
Tujuan
1. Membuat sistem informasi perpustakaan.
2. Dengan menyediakan form – form pencarian buku, sistem keanggotaan, peminjaman dan pengembalian buku.
1.4.
Pembatasan Masalah
1. Dibuat menggunakan program Microsoft Visual Basic 2010 2. Database dibuat menggunakan aplikasi SQL server 2008
(29)
3 Universitas Kristen Maranatha
1.5.
Sistematika Penulisan
Adapun urutan penulisan laporan ini adalah sebagai berikut :
Bab I Pendahuluan
Bab ini berisi latar belakang masalah, indentifikasi permasalahan, tujuan, pembatasan masalah dan sistematika penulisan.
Bab II Landasan Teori
Dalam bab ini menjelaskan teori tentang permasalahan yang dibahas dalam Tugas Akhir.
Bab III Perancangan
Bab ini digunakan untuk mendefinisikan semua kebutuhan pemakai dan meletakkan dasar-dasar untuk proses perancangan perangkat lunak. Uraian dalam bab ini meliputi gambaran perangkat lunak secara umum,analisis data, analisis fungsional, dan kendala perancangan.
Bab IV Data Pengamatan
Bab ini membahas tentang hasil rancangan database dan aplikasi yang telah dibuat.
(30)
4 Universitas Kristen Maranatha Bab V Kesimpulan dan Saran
Bab ini menjelaskan tentang kesimpulan dari seluruh pembahasan topik serta saran yang mungkin membantu dalam perkembangan aplikasi tersebut.
(31)
45
Universitas Kristen Maranatha
BAB V
KESIMPULAN DAN SARAN
5.1.
Kesimpulan
1. Perancangan sistem informasi database perpustakaan telah dapat direalisasikan.
2.
Sistem ini dapat membuat pencatatan transaksi peminjaman dan pengembalian yang dilakukan di pepustakaan,5.2.
Saran
Program ini masih dapat dikembangkan dengan pencarian data untuk buku dan anggota yang hanya dapat dicari berdasarkan nama buku dan nama anggota.
(32)
46
Universitas Kristen Maranatha
DAFTAR PUSTAKA
Nugroho, Adi. 2011. Perancangan dan Implementasi Sistem Basis Data. Jakarta, PT Elex Media Komputindo
Rusmawan, Uus. 2011.Koleksi Program VB.NET untuk Tugas Akhir dan Skripsi. Jakarta, PT Elex Media Komputindo
http://id.wikipedia.org/wiki/Basis_data, 15/07/2012
http://id.wikipedia.org/wiki/Sistem_informasi, 15/07/2012
http://msdn.microsoft.com/en-us/magazine/ee336135.aspx, 13/07/2012
http://stackoverflow.com/questions/5945360/sql-server-2008-how-to-query-all-databases-sizes, 13/07/2012
(1)
BAB I
PENDAHULUAN
1.1.
Latar Belakang
Perpustakaan merupakan sarana penunjang kegiatan belajar mengajar. Data di perpustakaan lumayan banyak, kebanyakan proses – proses pengolahan peminjaman dan pengembalian buku di perpustakaan masih bersifat manual. Contohnya untuk pencatatan data peminjaman dan pengembalian masih ditulis ke dalam buku besar sehingga menjadi tidak efektif dalam menangani pendataan anggota maupun peminjaman buku pada bagian pelayanan. Penerapan teknologi informasi telah menyebar hampir di semua bidang, tidak terkecuali di bidang perpustakaan. Dengan demikian, ukuran perkembangan perpustakaan banyak diukur dari penerapan teknologi informasi yang digunakan dan bukan dari skala ukuran lain seperti besarnya gedung perpustakaan yang dimiliki, jumlah koleksi yang tersedia maupun jumlah penggunanya. Kebutuhan akan teknologi informasi sangat berhubungan dengan peran perpustakaan sebagai kekuatan dalam penyebaran informasi ilmu pengetahuan dan kebudayaan. Dengan aplikasi ini, akan mempermudah pelayanan dan akses informasi serta pengelolaan data perpustakaan,
(2)
efisiensi pekerjaan staf perpustakaan dalam pengelolaan buku perpustakaan, penyajian informasi yang lebih mudah dan interaktif, memberikan layanan yang lebih baik kepada pengguna layanan perpustakaan.
1.2.
Identifikasi Masalah
Berdasarkan hasil analisis yang telah dilakukan pada sistem informasi perpustakaan yang ada, penulis mengidentifikasikan beberapa permasalahan sebagai berikut :
1. Bagaimana cara membuat sistem informasi perpustakaan? 2. Bagaimana cara mempermudah akses sistem informasi
perpustakaan?
1.3.
Tujuan
1. Membuat sistem informasi perpustakaan.
2. Dengan menyediakan form – form pencarian buku, sistem keanggotaan, peminjaman dan pengembalian buku.
(3)
1.5.
Sistematika Penulisan
Adapun urutan penulisan laporan ini adalah sebagai berikut : Bab I Pendahuluan
Bab ini berisi latar belakang masalah, indentifikasi permasalahan, tujuan, pembatasan masalah dan sistematika penulisan.
Bab II Landasan Teori
Dalam bab ini menjelaskan teori tentang permasalahan yang dibahas dalam Tugas Akhir.
Bab III Perancangan
Bab ini digunakan untuk mendefinisikan semua kebutuhan pemakai dan meletakkan dasar-dasar untuk proses perancangan perangkat lunak. Uraian dalam bab ini meliputi gambaran perangkat lunak secara umum,analisis data, analisis fungsional, dan kendala perancangan.
Bab IV Data Pengamatan
Bab ini membahas tentang hasil rancangan database dan aplikasi yang telah dibuat.
(4)
Bab V Kesimpulan dan Saran
Bab ini menjelaskan tentang kesimpulan dari seluruh pembahasan topik serta saran yang mungkin membantu dalam perkembangan aplikasi tersebut.
(5)
BAB V
KESIMPULAN DAN SARAN
5.1.
Kesimpulan
1. Perancangan sistem informasi database perpustakaan telah dapat direalisasikan.
2.
Sistem ini dapat membuat pencatatan transaksi peminjaman dan pengembalian yang dilakukan di pepustakaan,5.2.
Saran
Program ini masih dapat dikembangkan dengan pencarian data untuk buku dan anggota yang hanya dapat dicari berdasarkan nama buku dan nama anggota.
(6)
DAFTAR PUSTAKA
Nugroho, Adi. 2011. Perancangan dan Implementasi Sistem Basis Data. Jakarta, PT Elex Media Komputindo
Rusmawan, Uus. 2011.Koleksi Program VB.NET untuk Tugas Akhir dan Skripsi. Jakarta, PT Elex Media Komputindo
http://id.wikipedia.org/wiki/Basis_data, 15/07/2012
http://id.wikipedia.org/wiki/Sistem_informasi, 15/07/2012
http://msdn.microsoft.com/en-us/magazine/ee336135.aspx, 13/07/2012
http://stackoverflow.com/questions/5945360/sql-server-2008-how-to-query-all-databases-sizes, 13/07/2012