Sistem Informasi Perpustakaan.

(1)

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

... 15

3.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 String

Private 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_Pengembalian

Sub 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