Sabtu, 07 Maret 2015
Sistem Aplikasi Gudang Buku - UAS Pemograman Visual (VB.Net dan Microsoft Access)
Program sederhana ini hanya menggunakan Toolbox: TextBox, Label, Button, ComboBox, DataGridView…
Buatkan dulu databasenya di Ms. Access dengan nama database UAS2015 .
Tabel dengan nama tbl_buku [ID,Judul,Penerbit,Penulis,Tebal,Harga,Stock]
Ini source codenya :
Imports System.Data.OleDb
Public Class Form1
' Added By Redza, 07 Maret 2015
' iniTehKoneksi ke DB
Dim iniTehKoneksi As New OleDb.OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=E:\MR - College\uas\UAS2015.accdb")
Dim alertBerhasilSimpan As String = "Data Berhasil Tersimpan"
Dim alertGagalSimpan As String = "Data Gagal Tersimpan"
Dim alertBerhasilEdit As String = "Data Berhasil Diperbaharui"
Dim alertGagalEdit As String = "Data Gagal Diperbaharui"
Dim alertBerhasilHapus As String = "Data Berhasil Dihapus"
Dim alertGagalHapus As String = "Data Gagal Dihapus"
Dim alertFieldKosong As String = "Field masih ada yang kosong"
Sub tampilkanGrid()
iniTehKoneksi.Close()
iniTehKoneksi.Open()
Me.Tbl_bukuTableAdapter.Fill(Me.UAS2015DataSet.tbl_buku)
Dim da As New OleDb.OleDbDataAdapter("Select * From tbl_buku", iniTehKoneksi)
Dim ds As New DataSet
da.Fill(ds, "tbl_buku")
Tbl_bukuDataGridView.DataSource = ds.Tables("tbl_buku")
Tbl_bukuBindingSource.DataSource = ds.Tables("tbl_buku")
End Sub
Sub kosongkanPerlengkapanTempur()
IDTextBox.Text = String.Empty
JudulTextBox.Text = String.Empty
PenerbitTextBox.Text = String.Empty
PenulisTextBox.Text = String.Empty
TebalTextBox.Text = String.Empty
HargaTextBox.Text = String.Empty
StockTextBox.Text = String.Empty
CariTextBox.Text = String.Empty
ComboBox1.Text = String.Empty
End Sub
Sub matiHidupkanPerlengkapanTempur(Optional ByVal onoff As Boolean = True)
IDTextBox.Enabled = onoff
JudulTextBox.Enabled = onoff
PenerbitTextBox.Enabled = onoff
PenulisTextBox.Enabled = onoff
TebalTextBox.Enabled = onoff
HargaTextBox.Enabled = onoff
StockTextBox.Enabled = onoff
End Sub
Sub matiHidupkanBtn(ByVal a As Boolean, ByVal b As Boolean, ByVal c As Boolean, ByVal d As Boolean)
btnTambah.Enabled = a
btnSimpan.Enabled = b
btnEdit.Enabled = c
btnHapus.Enabled = d
End Sub
Sub combo()
ComboBox1.Items.Clear()
ComboBox1.Items.Add("Judul")
ComboBox1.Items.Add("Penerbit")
End Sub
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Try
'TODO: This line of code loads data into the 'DBInventoryDataSet1.TblBarang’ table. You can move, or remove it, as needed.
Call tampilkanGrid()
Call matiHidupkanPerlengkapanTempur(False)
Call matiHidupkanBtn(True, False, True, True)
Call combo()
Catch ex As Exception
MsgBox(ex.Message.ToString())
End Try
End Sub
Private Sub btnTambah_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnTambah.Click
If btnTambah.Text.ToLower = "tambah" Then
Call kondisiForm()
Call matiHidupkanBtn(True, True, False, False)
ElseIf btnTambah.Text.ToLower = "batal" Then
Call kondisiForm(False)
Call matiHidupkanBtn(True, False, True, True)
btnEdit.Text = "Edit"
End If
End Sub
Sub kondisiForm(Optional ByVal tambah As Boolean = True, Optional ByVal kosongkan As Boolean = True)
If tambah Then
Call matiHidupkanPerlengkapanTempur()
If kosongkan Then
Call kosongkanPerlengkapanTempur()
End If
IDTextBox.Focus()
btnTambah.Text = "Batal"
Else
If kosongkan Then
Call kosongkanPerlengkapanTempur()
End If
IDTextBox.Focus()
btnTambah.Text = "Tambah"
Call matiHidupkanPerlengkapanTempur(False)
Call tampilkanGrid()
End If
End Sub
Sub cekKosongDimana()
If IDTextBox.Text = String.Empty Then
IDTextBox.Focus()
Exit Sub
End If
If JudulTextBox.Text = String.Empty Then
JudulTextBox.Focus()
Exit Sub
End If
If PenerbitTextBox.Text = String.Empty Then
PenerbitTextBox.Focus()
Exit Sub
End If
If PenulisTextBox.Text = String.Empty Then
PenulisTextBox.Focus()
Exit Sub
End If
If TebalTextBox.Text = String.Empty Then
TebalTextBox.Focus()
Exit Sub
End If
If HargaTextBox.Text = String.Empty Then
HargaTextBox.Focus()
Exit Sub
End If
If StockTextBox.Text = String.Empty Then
StockTextBox.Focus()
Exit Sub
End If
End Sub
Sub simpanData()
Dim simpan As New OleDbCommand
iniTehKoneksi.Close()
iniTehKoneksi.Open()
simpan.Connection = iniTehKoneksi
simpan.CommandType = CommandType.Text
simpan.CommandText = "INSERT INTO tbl_buku VALUES ('" & IDTextBox.Text & "', '" & JudulTextBox.Text & "', '" & PenerbitTextBox.Text & "','" & PenulisTextBox.Text & "','" & TebalTextBox.Text & "','" & HargaTextBox.Text & "','" & StockTextBox.Text & "')"
simpan.ExecuteNonQuery()
End Sub
Sub updateData()
iniTehKoneksi.Close()
iniTehKoneksi.Open()
Dim edit As New OleDbCommand
edit.Connection = iniTehKoneksi
edit.CommandType = CommandType.Text
edit.CommandText = "UPDATE tbl_buku set Judul = '" & JudulTextBox.Text & "',Penerbit = '" & PenerbitTextBox.Text & "', Penulis = '" & PenulisTextBox.Text & "', Tebal = '" & TebalTextBox.Text & "', Harga = '" & HargaTextBox.Text & "', Stock = '" & StockTextBox.Text & "' WHERE ID = '" & IDTextBox.Text & "'"
edit.ExecuteNonQuery()
End Sub
Sub hapusData(ByVal id As String)
iniTehKoneksi.Close()
iniTehKoneksi.Open()
Dim hapus As New OleDbCommand
hapus.Connection = iniTehKoneksi
hapus.CommandType = CommandType.Text
hapus.CommandText = "DELETE FROM tbl_buku WHERE ID = '" & id & "'"
hapus.ExecuteNonQuery()
End Sub
Private Sub btnSimpan_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSimpan.Click
Try
If IDTextBox.Text <> String.Empty And JudulTextBox.Text <> String.Empty And PenerbitTextBox.Text <> String.Empty And PenulisTextBox.Text <> String.Empty And TebalTextBox.Text <> String.Empty And HargaTextBox.Text <> String.Empty And StockTextBox.Text <> String.Empty Then
Try
Call simpanData()
MsgBox(alertBerhasilSimpan)
Call kondisiForm(False)
Call matiHidupkanBtn(True, False, True, True)
Catch ex As Exception
MsgBox(alertGagalSimpan)
End Try
Else
MsgBox(alertFieldKosong)
Call cekKosongDimana()
Call matiHidupkanBtn(True, True, False, False)
End If
Catch ex As Exception
MsgBox(ex.Message.ToString())
End Try
End Sub
Private Sub btnCari_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCari.Click
Try
If ComboBox1.Text <> String.Empty And CariTextBox.Text <> String.Empty Then
iniTehKoneksi.Close()
iniTehKoneksi.Open()
If ComboBox1.Text.ToLower = "judul" Then
iniTehKoneksi.Close()
iniTehKoneksi.Open()
'tampilkan ke grid
Dim ca As New OleDb.OleDbDataAdapter("Select * From tbl_buku WHERE Judul LIKE '%" & CariTextBox.Text & "%'", iniTehKoneksi)
Dim cs As New DataSet
ca.Fill(cs, "tbl_buku")
Tbl_bukuDataGridView.DataSource = cs.Tables("tbl_buku")
ElseIf ComboBox1.Text.ToLower = "penerbit" Then
iniTehKoneksi.Close()
iniTehKoneksi.Open()
Dim cari As New OleDbCommand
cari.Connection = iniTehKoneksi
cari.CommandType = CommandType.Text
cari.CommandText = "SELECT * FROM tbl_buku WHERE Penerbit LIKE '%" & CariTextBox.Text & "%'"
Dim dr As OleDbDataReader
dr = cari.ExecuteReader
If dr.HasRows = True Then
dr.Read()
IDTextBox.Text = dr("ID")
JudulTextBox.Text = dr("Judul")
PenerbitTextBox.Text = dr("Penerbit")
PenulisTextBox.Text = dr("Penulis")
TebalTextBox.Text = dr("Tebal")
HargaTextBox.Text = dr("Harga")
StockTextBox.Text = dr("Stock")
Call kondisiForm(True, False)
matiHidupkanBtn(True, False, True, True)
End If
'tampilkan ke grid
Dim ca As New OleDb.OleDbDataAdapter("Select * From tbl_buku WHERE Penerbit LIKE '%" & CariTextBox.Text & "%'", iniTehKoneksi)
Dim cs As New DataSet
ca.Fill(cs, "tbl_buku")
Tbl_bukuDataGridView.DataSource = cs.Tables("tbl_buku")
Else
MsgBox("Filter By '" & ComboBox1.Text & "' Tidak Tersedia")
End If
Else
MsgBox("Silahkan isi field 'Filter By' atau teks pencariannya")
End If
Catch ex As Exception
MsgBox(ex.Message.ToString())
End Try
End Sub
Private Sub btnEdit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEdit.Click
Try
If btnEdit.Text.ToLower = "edit" Then
Dim baris As Integer
With Tbl_bukuDataGridView
baris = .CurrentRow.Index
IDTextBox.Text = .Item(0, baris).Value
JudulTextBox.Text = .Item(1, baris).Value
PenerbitTextBox.Text = .Item(2, baris).Value
PenulisTextBox.Text = .Item(3, baris).Value
TebalTextBox.Text = .Item(4, baris).Value
HargaTextBox.Text = .Item(5, baris).Value
StockTextBox.Text = .Item(6, baris).Value
End With
matiHidupkanBtn(True, False, True, False)
btnEdit.Text = "Update"
btnTambah.Text = "Batal"
Call matiHidupkanPerlengkapanTempur()
IDTextBox.Enabled = False
JudulTextBox.Focus()
ElseIf btnEdit.Text.ToLower = "update" Then
If IDTextBox.Text <> String.Empty And JudulTextBox.Text <> String.Empty And PenerbitTextBox.Text <> String.Empty And PenulisTextBox.Text <> String.Empty And TebalTextBox.Text <> String.Empty And HargaTextBox.Text <> String.Empty And StockTextBox.Text <> String.Empty Then
Try
Call updateData()
MsgBox(alertBerhasilEdit)
Call kondisiForm(False)
Catch ex As Exception
MsgBox(alertGagalSimpan)
Finally
btnEdit.Text = "Edit"
Call matiHidupkanPerlengkapanTempur(False)
Call kosongkanPerlengkapanTempur()
Call matiHidupkanBtn(True, False, True, True)
End Try
Else
MsgBox(alertFieldKosong)
Call cekKosongDimana()
Call matiHidupkanBtn(True, False, True, False)
End If
End If
Catch ex As Exception
MsgBox(ex.Message.ToString())
End Try
End Sub
Private Sub btnHapus_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnHapus.Click
Try
Try
Dim baris As Integer
Dim ID As String
With Tbl_bukuDataGridView
baris = .CurrentRow.Index
ID = .Item(0, baris).Value
End With
Dim q = MsgBox("Data akan dihapus?", MsgBoxStyle.Question + MsgBoxStyle.YesNo, "Konfirmasi")
If q = vbYes Then
hapusData(ID)
End If
Call kondisiForm(False)
MsgBox(alertBerhasilHapus)
Catch ex As Exception
MsgBox(alertGagalHapus)
Finally
matiHidupkanPerlengkapanTempur(False)
kosongkanPerlengkapanTempur()
Call matiHidupkanBtn(True, False, True, True)
End Try
Catch ex As Exception
MsgBox(ex.Message.ToString())
End Try
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
'TODO: This line of code loads data into the 'DBInventoryDataSet1.TblBarang’ table. You can move, or remove it, as needed.
Call tampilkanGrid()
Call kosongkanPerlengkapanTempur()
Call matiHidupkanPerlengkapanTempur(False)
Call matiHidupkanBtn(True, False, True, True)
Call combo()
End Sub
End Class
Langganan:
Posting Komentar (Atom)
Tidak ada komentar:
Posting Komentar