Assalamualikum WR WB
UTS Visual Studio
Rifa Awaliyah
SIFE001 503
Halo apa kabar? Semoga sehat selalu ya. Wah, akhirnya gue
bisa ngeblog lagi.
SISTEM TOKO BUKU
Pembahasan
:
Berikut ini tampilan Utama Sistem Toko Buku:
From Menu :
Coding :
Public Class FrmMenu
Private Sub
Frmmenu_Load(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles MyBase.Load
ToolStripStatusLabel1.Text = Format(Now, "dddd, dd-MMMM-yyyy")
End Sub
Private Sub
Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles
Timer1.Tick
ToolStripStatusLabel2.Text = Format(Now, "hh:mm:ss")
End Sub
Private Sub
BtnBarang_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles BtnBarang.Click
FrmBarang.ShowDialog()
End Sub
Private Sub
BtnMerk_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles BtnMerk.Click
FrmMerk.Text =
"Data Merk"
FrmMerk.ShowDialog()
End Sub
Private Sub
BtnSatuan_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles BtnSatuan.Click
FrmSatuan.Text
= "Data Satuan"
FrmSatuan.ShowDialog()
End Sub
Private Sub BtnTransaksiBeli_Click(ByVal
sender As System.Object, ByVal e As System.EventArgs) Handles
BtnTransaksiBeli.Click
FrmTransaksiBeli.ShowDialog()
End Sub
Private Sub
BtnTransaksiJual_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles BtnTransaksiJual.Click
FrmTransaksiJual.ShowDialog()
End Sub
Private Sub
BtnKeluar_Click(sender As Object, e As EventArgs) Handles BtnKeluar.Click
End
End Sub
End Class
Form Barang :
Coding :
Imports vb = Microsoft.VisualBasic
Public Class FrmBarang
Dim SQL As String
Dim Proses As New
ClsKoneksi
Dim TblBarang As
DataTable
Dim Data As
DataSet
Sub Data_Record()
TblBarang =
Proses.ExecuteQuery("Select * From QryBarang")
DGBarang.DataSource
= TblBarang
DGBarang.Columns(0).Width = 50
DGBarang.Columns(1).Width = 195
DGBarang.Columns(6).Width = 50
End Sub
Sub Data_Merk()
TblBarang =
Proses.ExecuteQuery("Select * From Tblmerk")
If TblBarang.Rows.Count
= 0 Then
Else
CmbMerk.Items.Clear()
With
TblBarang.Columns(1)
For a
= 0 To TblBarang.Rows.Count - 1
CmbMerk.Items.Add("" & .Table.Rows(a).Item(0) &
"/" & .Table.Rows(a).Item(1) & "")
Next a
End With
End If
End Sub
Sub Data_Satuan()
TblBarang =
Proses.ExecuteQuery("Select * From TblSatuan")
If
TblBarang.Rows.Count = 0 Then
Else
CmbSatuan.Items.Clear()
With
TblBarang.Columns(1)
For a
= 0 To TblBarang.Rows.Count - 1
CmbSatuan.Items.Add("" & .Table.Rows(a).Item(0) &
"/" & .Table.Rows(a).Item(1) & "")
Next a
End With
End If
End Sub
Sub Atur()
TxtID.ReadOnly
= False
TxtID.Text =
""
TxtNm.Text =
""
CmbMerk.Text =
""
CmbSatuan.Text
= ""
TxtHrgBeli.Text = ""
TxtHrgJual.Text = ""
TxtStock.Text
= "0"
BtnTambah.Enabled = True
BtnUbah.Enabled = False
BtnHapus.Enabled = False
BtnKoreksiStock.Enabled = False
Call
Data_Merk()
Call
Data_Satuan()
Call
Data_Record()
End Sub
Private Sub
Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles
MyBase.Load
Call Atur()
End Sub
Private Sub
DGBarang_DoubleClick(ByVal sender As Object, ByVal e As System.EventArgs)
Handles DGBarang.DoubleClick
Try
Select Case Me.Text
Case
"Data Barang"
TxtID.Text = DGBarang.SelectedCells(0).Value
TxtNm.Text = DGBarang.SelectedCells(1).Value
CmbMerk.Text = DGBarang.SelectedCells(2).Value
CmbSatuan.Text =
DGBarang.SelectedCells(3).Value
TxtHrgBeli.Text = DGBarang.SelectedCells(4).Value
TxtHrgJual.Text = DGBarang.SelectedCells(5).Value
TxtStock.Text = DGBarang.SelectedCells(6).Value
TxtID.ReadOnly = True
BtnTambah.Enabled = False
BtnUbah.Enabled = True
BtnHapus.Enabled = True
BtnKoreksiStock.Enabled = True
Case "Data Barang Pembelian"
FrmTransaksiBeli.CmbID.Text = "" &
DGBarang.SelectedCells(0).Value & "/" &
DGBarang.SelectedCells(1).Value & ""
Me.Close()
Case
"Data Barang Penjualan"
FrmTransaksiJual.CmbID.Text =
"" & DGBarang.SelectedCells(0).Value & "/" &
DGBarang.SelectedCells(1).Value & ""
Me.Close()
End Select
Catch
End Try
End Sub
Private Sub
BtnTambah_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles BtnTambah.Click
SQL =
"Insert Into Tblbarang Values ('" & TxtID.Text &
"','" & TxtNm.Text & "','" &
vb.Left(CmbMerk.Text, 7) & "','" & vb.Left(CmbSatuan.Text, 7)
& "','" & TxtHrgBeli.Text & "','" &
TxtHrgJual.Text & "','" & TxtStock.Text & "')"
Proses.ExecuteNonQuery(SQL)
MessageBox.Show("Data Baru telah disimpan..!!",
"Penyimpanan Sukses", MessageBoxButtons.OK,
MessageBoxIcon.Information)
Call Atur()
End Sub
Private Sub
BtnUbah_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles BtnUbah.Click
SQL =
"Update tblBarang set Nama ='" & TxtNm.Text & "', hrg_beli = '" & TxtHrgBeli.Text
& "', hrg_jual = '" & TxtHrgJual.Text & "',stock = '"
& TxtStock.Text & "' where id ='" & TxtID.Text &
"'"
Proses.ExecuteNonQuery(SQL)
MessageBox.Show("Data sudah diperbaiki...!!", "Perubahan
Sukses", MessageBoxButtons.OK, MessageBoxIcon.Information)
Call Atur()
End Sub
Private Sub
BtnHapus_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles BtnHapus.Click
SQL =
"delete from tblbarang where ID ='" & TxtID.Text &
"'"
Proses.ExecuteNonQuery(SQL)
MessageBox.Show("Data sudah dihapus...!!", "Penghapusan
Sukses", MessageBoxButtons.OK, MessageBoxIcon.Information)
Call Atur()
End Sub
Private Sub
BtnBatal_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles BtnBatal.Click
Call Atur()
End Sub
Private Sub
BtnKoreksiStock_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles BtnKoreksiStock.Click
Dim Jumlah =
InputBox("Masukkan jumlah barang", "Tambah stock")
On Error GoTo
Pesan
Dim
Tambah_Stock = Val(TxtStock.Text) + Val(Jumlah)
SQL =
"Update tblbarang set stock = '" & Tambah_Stock & "'
where ID ='" & TxtID.Text & "'"
Proses.ExecuteNonQuery(SQL)
MessageBox.Show("Penambahan stock berhasil!!", "Tambah
stock", MessageBoxButtons.OK, MessageBoxIcon.Information)
Call Atur()
Exit Sub
Pesan:
MsgBox("Masukkan Angka")
End Sub
Private Sub
BtnMerk_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles BtnMerk.Click
FrmMerk.Text =
"Data Merk Barang"
FrmMerk.ShowDialog()
End Sub
Private Sub
BtnSatuan_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles BtnSatuan.Click
FrmSatuan.Text
= "Data Merk Satuan"
FrmSatuan.ShowDialog()
End Sub
Private Sub
TxtCari_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles TxtCari.TextChanged
If
RbNama.Checked = True Then
TblBarang
= Proses.ExecuteQuery("Select * From QryBarang where nama like '%"
& TxtCari.Text & "%' order by id asc")
DGBarang.DataSource = TblBarang
DGBarang.Columns(0).Width = 50
DGBarang.Columns(1).Width = 195
DGBarang.Columns(6).Width = 50
ElseIf
RbMerk.Checked = True Then
TblBarang
= Proses.ExecuteQuery("Select * From QryBarang where merk like '%"
& TxtCari.Text & "%' order by id asc")
DGBarang.DataSource = TblBarang
DGBarang.Columns(0).Width = 50
DGBarang.Columns(1).Width = 195
DGBarang.Columns(6).Width = 50
ElseIf
RbSatuan.Checked = True Then
TblBarang
= Proses.ExecuteQuery("Select * From QryBarang where satuan like '%"
& TxtCari.Text & "%' order by id asc")
DGBarang.DataSource = TblBarang
DGBarang.Columns(0).Width = 50
DGBarang.Columns(1).Width = 195
DGBarang.Columns(6).Width = 50
End If
End Sub
End Class
Form Merk :
Coding :
Public Class FrmMerk
Dim SQL As String
Dim Proses As New ClsKoneksi
Dim tblMerk As
DataTable
Sub Data_Record()
tblMerk =
Proses.ExecuteQuery("Select * From TblMerk")
DGMerk.DataSource = tblMerk
DGMerk.Columns(0).Width = 50
DGMerk.Columns(1).Width = 170
End Sub
Sub
Kode_Otomatis()
tblMerk =
Proses.ExecuteQuery("Select * From Tblmerk order by ID desc")
If
tblMerk.Rows.Count = 0 Then
TxtID.Text
= "MRK-001"
Else
With
tblMerk.Rows(0)
TxtID.Text
= .Item("ID")
End With
TxtID.Text
= Val(Microsoft.VisualBasic.Mid(TxtID.Text, 5, 3)) + 1
If
Len(TxtID.Text) = 1 Then
TxtID.Text = "MRK-00" & TxtID.Text & ""
ElseIf
Len(TxtID.Text) = 2 Then
TxtID.Text = "MRK-0" & TxtID.Text & ""
ElseIf
Len(TxtID.Text) = 3 Then
TxtID.Text = "MRK-" & TxtID.Text & ""
End If
End If
End Sub
Sub Atur()
Call
Data_Record()
Call Kode_Otomatis()
BtnTambah.Enabled = True
BtnUbah.Enabled = False
BtnHapus.Enabled = False
TxtID.Enabled
= False
TxtNm.Text =
""
TxtNm.Focus()
End Sub
Private Sub
FrmJenisbarang_Load(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles MyBase.Load
Call Atur()
End Sub
Private Sub
BtnTambah_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles BtnTambah.Click
If TxtNm.Text
= "" Then TxtNm.Focus() : Exit Sub
SQL =
"Insert Into Tblmerk Values ('" & TxtID.Text &
"','" & TxtNm.Text & "')"
Proses.ExecuteNonQuery(SQL)
Call Atur()
End Sub
Private Sub
DGMerk_DoubleClick(ByVal sender As Object, ByVal e As System.EventArgs) Handles
DGMerk.DoubleClick
Select Case
Me.Text
Case
"Data Merk"
TxtID.Text = DGMerk.SelectedCells(0).Value
TxtNm.Text = DGMerk.SelectedCells(1).Value
BtnUbah.Enabled = True
BtnHapus.Enabled = True
BtnTambah.Enabled = False
Case
"Data Merk Barang"
FrmBarang.CmbMerk.Text = "" &
DGMerk.SelectedCells(0).Value & "/" &
DGMerk.SelectedCells(1).Value & ""
Me.Close()
End Select
End Sub
Private Sub
BtnUbah_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles BtnUbah.Click
If TxtNm.Text
= "" Then TxtNm.Focus() : Exit Sub
SQL =
"update Tblmerk set merk = '" & TxtNm.Text & "' where ID
= '" & TxtID.Text & "'"
Proses.ExecuteNonQuery(SQL)
Call Atur()
End Sub
Private Sub
BtnHapus_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles BtnHapus.Click
SQL =
"delete from tblmerk where ID = '" & TxtID.Text &
"'"
Proses.ExecuteNonQuery(SQL)
Call Atur()
End Sub
Private Sub
BtnBatal_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles BtnBatal.Click
Call Atur()
End Sub
Private Sub
DGMerk_CellContentClick(ByVal sender As System.Object, ByVal e As
System.Windows.Forms.DataGridViewCellEventArgs) Handles DGMerk.CellContentClick
End Sub
End Class
Form Penjualan
Coding :
Imports vb = Microsoft.VisualBasic
Public Class FrmTransaksiJual
Dim SQL As String
Dim Proses As New
ClsKoneksi
Dim TblTransaksi
As DataTable
Dim Data As
DataSet
Sub Data_Barang()
TblTransaksi =
Proses.ExecuteQuery("Select * From TblBarang")
If TblTransaksi.Rows.Count
= 0 Then
Else
CmbID.Items.Clear()
With
TblTransaksi.Columns(1)
For a
= 0 To TblTransaksi.Rows.Count - 1
CmbID.Items.Add("" & .Table.Rows(a).Item(0) &
"/" & .Table.Rows(a).Item(1) & "")
Next a
End With
End If
End Sub
Sub
Data_Record_Penjualan()
TblTransaksi =
Proses.ExecuteQuery("Select * From TblTransaksi_Jual_Rinci where No_Faktur
= '" & TxtFaktur.Text & "' ")
DGTransaksi.DataSource
= TblTransaksi
DGTransaksi.Columns(0).Visible = False
DGTransaksi.Columns(2).Width = 295
End Sub
Sub
Faktur_Otomatis()
TblTransaksi =
Proses.ExecuteQuery("Select * From TblTransaksi_Jual order by no_faktur desc")
If
TblTransaksi.Rows.Count = 0 Then
TxtFaktur.Text = "" + Format(Now, "dd/MM/yyyy") +
"-001"
Else
With
TblTransaksi.Rows(0)
TxtFaktur.Text = .Item("no_faktur")
End With
TxtFaktur.Text =
Val(Microsoft.VisualBasic.Mid(TxtFaktur.Text, 12, 3)) + 1
If
Len(TxtFaktur.Text) = 1 Then
TxtFaktur.Text = "" + Format(Now, "dd/MM/yyyy") +
"-00" & TxtFaktur.Text & ""
ElseIf
Len(TxtFaktur.Text) = 2 Then
TxtFaktur.Text = "" + Format(Now, "dd/MM/yyyy") +
"-0" & TxtFaktur.Text & ""
ElseIf
Len(TxtFaktur.Text) = 3 Then
TxtFaktur.Text = "" + Format(Now, "dd/MM/yyyy") +
"" & TxtFaktur.Text & ""
End If
End If
End Sub
Sub Atur()
CmbID.Text =
""
TxtNmBrg.Text
= ""
TxtHrgJualBrg.Text = ""
TxtStockBrg.Text = ""
TxtJml.Text =
""
TxtTotal.Text
= ""
CmbID.Focus()
Call Data_Barang()
Call
Data_Record_Penjualan()
Call
Faktur_Otomatis()
End Sub
Private Sub
Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles
MyBase.Load
Call Atur()
End Sub
Private Sub
CmbID_TextChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles
CmbID.TextChanged
TblTransaksi =
Proses.ExecuteQuery("Select * From Tblbarang where ID = '" &
vb.Left(CmbID.Text, 3) & "'")
If
TblTransaksi.Rows.Count = 0 Then
Else
TxtNmBrg.Text =
TblTransaksi.Rows(0).Item("nama")
TxtHrgJualBrg.Text = TblTransaksi.Rows(0).Item("hrg_jual")
TxtStockBrg.Text = TblTransaksi.Rows(0).Item("stock")
TxtJml.Focus()
End If
End Sub
Private Sub
TxtJml_KeyPress(ByVal sender As Object, ByVal e As
System.Windows.Forms.KeyPressEventArgs) Handles TxtJml.KeyPress
Select Case
e.KeyChar
Case
Chr(47) To Chr(57)
TxtJml.Focus()
Case
Chr(8)
e.KeyChar = Chr(8)
Case
Chr(13)
If
TxtNmPembeli.Text = "" Then TxtNmPembeli.Focus() : Exit Sub
If
Val(TxtStockBrg.Text) < Val(TxtJml.Text) Then MsgBox("Maaf Stock Tidak
Mencukupi") : Exit Sub
Dim Total_Harga = Val(TxtJml.Text) *
Val(TxtHrgJualBrg.Text)
SQL =
"Insert Into TblTransaksi_Jual_Rinci Values ('" & TxtFaktur.Text
& "','" & vb.Left(CmbID.Text, 3) & "','" &
TxtNmBrg.Text & "','" & TxtHrgJualBrg.Text &
"','" & TxtJml.Text & "','" & Total_Harga &
"')"
Proses.ExecuteNonQuery(SQL)
Dim
Stock = Val(TxtStockBrg.Text) - Val(TxtJml.Text)
SQL =
"Update TblBarang set stock = '" & Stock & "' where ID =
'" & vb.Left(CmbID.Text, 3) & "'"
Proses.ExecuteNonQuery(SQL)
CmbID.Text = ""
TxtNmBrg.Text = ""
TxtHrgJualBrg.Text = ""
TxtStockBrg.Text = ""
TxtJml.Text = ""
CmbID.Focus()
Call
Data_Record_Penjualan()
TxtTotal.Text = ""
Dim i
As Integer
i =
DGTransaksi.CurrentRow.Index
For i
= 0 To DGTransaksi.Rows.Count - 1
TxtTotal.Text = Format(Val(Replace(TxtTotal.Text, ".",
"")) + Val(DGTransaksi.Item(5, i).Value), "#,#")
Next
Case Else
e.KeyChar = Chr(0)
End Select
End Sub
Private Sub
BtnProses_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles BtnProses.Click
SQL =
"Insert Into TblTransaksi_Jual Values ('" & TxtFaktur.Text &
"','" & Format(Now, "yyyy/MM/dd") & "','"
& TxtNmPembeli.Text & "','" & TxtTotal.Text &
"')"
Proses.ExecuteNonQuery(SQL)
Call
Faktur_Otomatis()
Call Atur()
End Sub
Private Sub
BtnBatalBeli_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles BtnBatalJual.Click
On Error GoTo
Keluar
Dim i As
Integer
i = DGTransaksi.CurrentRow.Index
For i = 0 To
DGTransaksi.Rows.Count - 1
TblTransaksi = Proses.ExecuteQuery("select * from tblbarang where
ID = '" & DGTransaksi.Item(3, i).Value & "'")
If
TblTransaksi.Rows.Count = 0 Then
Else
Dim
Jumlah = Val(TblTransaksi.Rows(0).Item("stock")) +
Val(DGTransaksi.Item(4, i).Value)
SQL =
"update tblbarang set stock = '" & CInt(Jumlah) & "'
where id = '" & DGTransaksi.Item(3, i).Value & "'"
Proses.ExecuteNonQuery(SQL)
End If
Next
SQL =
"delete from TblTransaksi_jual_rinci where no_faktur ='" &
TxtFaktur.Text & "'"
Proses.ExecuteNonQuery(SQL)
MessageBox.Show("Transaksi sudah dibatalkan...!!",
"Pembatalan Sukses", MessageBoxButtons.OK,
MessageBoxIcon.Information)
Call Atur()
Call
Faktur_Otomatis()
Call
Data_Record_Penjualan()
Keluar:
End Sub
Private Sub
BtnBarang_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles BtnBarang.Click
FrmBarang.Text
= "Data Barang Penjualan"
FrmBarang.ShowDialog()
End Sub
Private Sub
TxtJml_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles TxtJml.TextChanged
End Sub
Private Sub
CmbID_SelectedIndexChanged(sender As Object, e As EventArgs) Handles
CmbID.SelectedIndexChanged
End Sub
End Class
Form Satuan
Coding :
Public Class FrmSatuan
Dim SQL As String
Dim Proses As New
ClsKoneksi
Dim tblMerk As
DataTable
Sub Data_Record()
tblMerk =
Proses.ExecuteQuery("Select * From TblSatuan")
DGSatuan.DataSource = tblMerk
DGSatuan.Columns(0).Width = 50
DGSatuan.Columns(1).Width = 170
End Sub
Sub
Kode_Otomatis()
tblMerk =
Proses.ExecuteQuery("Select * From Tblsatuan order by ID desc")
If
tblMerk.Rows.Count = 0 Then
TxtID.Text
= "STN-001"
Else
With
tblMerk.Rows(0)
TxtID.Text = .Item("ID")
End With
TxtID.Text
= Val(Microsoft.VisualBasic.Mid(TxtID.Text, 5, 3)) + 1
If
Len(TxtID.Text) = 1 Then
TxtID.Text = "STN-00" & TxtID.Text & ""
ElseIf
Len(TxtID.Text) = 2 Then
TxtID.Text = "STN-0" & TxtID.Text & ""
ElseIf
Len(TxtID.Text) = 3 Then
TxtID.Text = "STN-" & TxtID.Text & ""
End If
End If
End Sub
Sub Atur()
Call
Data_Record()
Call
Kode_Otomatis()
BtnTambah.Enabled = True
BtnUbah.Enabled = False
BtnHapus.Enabled = False
TxtID.Enabled
= False
TxtNm.Text =
""
TxtNm.Focus()
End Sub
Private Sub
FrmJenisbarang_Load(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles MyBase.Load
Call Atur()
End Sub
Private Sub
DGSatuan_CellDoubleClick(sender As Object, e As DataGridViewCellEventArgs)
Handles DGSatuan.CellDoubleClick
End Sub
Private Sub DGSatuan_DoubleClick(ByVal
sender As Object, ByVal e As System.EventArgs) Handles DGSatuan.DoubleClick
Select Case
Me.Text
Case
"Data Satuan"
TxtID.Text = DGSatuan.SelectedCells(0).Value
TxtNm.Text = DGSatuan.SelectedCells(1).Value
BtnUbah.Enabled = True
BtnHapus.Enabled = True
BtnTambah.Enabled = False
Case
"Data Satuan Barang"
FrmBarang.CmbSatuan.Text = "" & DGSatuan.SelectedCells(0).Value
& "/" & DGSatuan.SelectedCells(1).Value & ""
Me.Close()
End Select
End Sub
Private Sub
BtnTambah_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles BtnTambah.Click
If TxtNm.Text
= "" Then TxtNm.Focus() : Exit Sub
SQL =
"Insert Into Tblsatuan Values ('" & TxtID.Text &
"','" & TxtNm.Text & "')"
Proses.ExecuteNonQuery(SQL)
Call Atur()
End Sub
Private Sub
BtnHapus_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles BtnHapus.Click
SQL =
"delete from tblsatuan where ID = '" & TxtID.Text &
"'"
Proses.ExecuteNonQuery(SQL)
Call Atur()
End Sub
Private Sub
BtnUbah_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles BtnUbah.Click
If TxtNm.Text
= "" Then TxtNm.Focus() : Exit Sub
SQL =
"update Tblsatuan set satuan = '" & TxtNm.Text & "'
where ID = '" & TxtID.Text & "'"
Proses.ExecuteNonQuery(SQL)
Call Atur()
End Sub
Private Sub
BtnBatal_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles BtnBatal.Click
Call Atur()
End Sub
Private Sub
DGMerk_CellContentClick(ByVal sender As System.Object, ByVal e As
System.Windows.Forms.DataGridViewCellEventArgs) Handles
DGSatuan.CellContentClick
End Sub
End Class
Form Pembelian
Coding :
Imports vb = Microsoft.VisualBasic
Public Class FrmTransaksiBeli
Dim SQL As String
Dim Proses As New
ClsKoneksi
Dim TblTransaksi
As DataTable
Dim Data As
DataSet
Sub Data_Barang()
TblTransaksi =
Proses.ExecuteQuery("Select * From TblBarang")
If
TblTransaksi.Rows.Count = 0 Then
Else
CmbID.Items.Clear()
With TblTransaksi.Columns(1)
For a
= 0 To TblTransaksi.Rows.Count - 1
CmbID.Items.Add("" & .Table.Rows(a).Item(0) &
"/" & .Table.Rows(a).Item(1) & "")
Next a
End With
End If
End Sub
Sub
Data_Record_Pembelian()
TblTransaksi =
Proses.ExecuteQuery("Select * From TblTransaksi_Beli_Rinci where No_Faktur
= '" & TxtFaktur.Text & "' ")
DGTransaksi.DataSource = TblTransaksi
DGTransaksi.Columns(0).Visible = False
DGTransaksi.Columns(2).Width
= 295
End Sub
Sub
Faktur_Otomatis()
TblTransaksi =
Proses.ExecuteQuery("Select * From TblTransaksi_Beli order by no_faktur
desc")
If
TblTransaksi.Rows.Count = 0 Then
TxtFaktur.Text = "" + Format(Now, "dd/MM/yyyy") +
"-001"
Else
With
TblTransaksi.Rows(0)
TxtFaktur.Text = .Item("no_faktur")
End With
TxtFaktur.Text = Val(Microsoft.VisualBasic.Mid(TxtFaktur.Text, 12, 3)) +
1
If Len(TxtFaktur.Text) = 1 Then
TxtFaktur.Text = "" + Format(Now, "dd/MM/yyyy") +
"-00" & TxtFaktur.Text & ""
ElseIf
Len(TxtFaktur.Text) = 2 Then
TxtFaktur.Text = "" + Format(Now, "dd/MM/yyyy") +
"-0" & TxtFaktur.Text & ""
ElseIf
Len(TxtFaktur.Text) = 3 Then
TxtFaktur.Text = "" + Format(Now, "dd/MM/yyyy") +
"" & TxtFaktur.Text & ""
End If
End If
End Sub
Sub Atur()
CmbID.Text =
""
TxtNmBrg.Text
= ""
TxtHrgJualBrg.Text = ""
TxtStockBrg.Text = ""
TxtJml.Text =
""
TxtTotal.Text
= ""
CmbID.Focus()
Call
Data_Barang()
Call
Data_Record_Pembelian()
Call
Faktur_Otomatis()
End Sub
Private Sub
Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles
MyBase.Load
Call Atur()
End Sub
Private Sub
CmbID_TextChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles
CmbID.TextChanged
TblTransaksi =
Proses.ExecuteQuery("Select * From Tblbarang where ID = '" &
vb.Left(CmbID.Text, 3) & "'")
If
TblTransaksi.Rows.Count = 0 Then
Else
TxtNmBrg.Text = TblTransaksi.Rows(0).Item("nama")
TxtHrgJualBrg.Text = TblTransaksi.Rows(0).Item("hrg_beli")
TxtStockBrg.Text = TblTransaksi.Rows(0).Item("stock")
TxtJml.Focus()
End If
End Sub
Private Sub
TxtJml_KeyPress(ByVal sender As Object, ByVal e As
System.Windows.Forms.KeyPressEventArgs) Handles TxtJml.KeyPress
Select Case
e.KeyChar
Case
Chr(47) To Chr(57)
TxtJml.Focus()
Case
Chr(8)
e.KeyChar = Chr(8)
Case
Chr(13)
If
TxtNmPemasok.Text = "" Then TxtNmPemasok.Focus() : Exit Sub
Dim
Total_Harga = Val(TxtJml.Text) * Val(TxtHrgJualBrg.Text)
SQL =
"Insert Into TblTransaksi_Beli_Rinci Values ('" & TxtFaktur.Text
& "','" & vb.Left(CmbID.Text, 3) & "','" &
TxtNmBrg.Text & "','" & TxtHrgJualBrg.Text &
"','" & TxtJml.Text & "','" & Total_Harga &
"')"
Proses.ExecuteNonQuery(SQL)
Dim
Stock = Val(TxtStockBrg.Text) + Val(TxtJml.Text)
SQL =
"Update TblBarang set stock = '" & Stock & "' where ID =
'" & vb.Left(CmbID.Text, 3) & "'"
Proses.ExecuteNonQuery(SQL)
CmbID.Text = ""
TxtNmBrg.Text = ""
TxtHrgJualBrg.Text = ""
TxtStockBrg.Text = ""
TxtJml.Text = ""
CmbID.Focus()
Call
Data_Record_Pembelian()
TxtTotal.Text = ""
Dim i
As Integer
i =
DGTransaksi.CurrentRow.Index
For i
= 0 To DGTransaksi.Rows.Count - 1
TxtTotal.Text = Format(Val(Replace(TxtTotal.Text, ".",
"")) + Val(DGTransaksi.Item(5, i).Value), "#,#")
Next
Case Else
e.KeyChar = Chr(0)
End Select
End Sub
Private Sub
BtnProses_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles BtnProses.Click
SQL =
"Insert Into TblTransaksi_Beli Values ('" & TxtFaktur.Text &
"','" & Format(Now, "yyyy/MM/dd") & "','"
& TxtNmPemasok.Text & "','" & TxtTotal.Text &
"')"
Proses.ExecuteNonQuery(SQL)
Call
Faktur_Otomatis()
Call Atur()
End Sub
Private Sub
BtnBatalBeli_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles BtnBatalBeli.Click
On Error GoTo Keluar
Dim i As
Integer
i =
DGTransaksi.CurrentRow.Index
For i = 0 To
DGTransaksi.Rows.Count - 1
TblTransaksi = Proses.ExecuteQuery("select * from tblbarang where
ID = '" & DGTransaksi.Item(3, i).Value & "'")
If
TblTransaksi.Rows.Count = 0 Then
Else
Dim
Jumlah = Val(TblTransaksi.Rows(0).Item("stock")) -
Val(DGTransaksi.Item(4, i).Value)
SQL =
"update tblbarang set stock = '" & CInt(Jumlah) & "'
where id = '" & DGTransaksi.Item(3, i).Value & "'"
Proses.ExecuteNonQuery(SQL)
End If
Next
SQL =
"delete from TblTransaksi_beli_rinci where no_faktur ='" &
TxtFaktur.Text & "'"
Proses.ExecuteNonQuery(SQL)
MessageBox.Show("Transaksi sudah
dibatalakan...!!", "Pembatalan Sukses", MessageBoxButtons.OK,
MessageBoxIcon.Information)
Call Atur()
Call
Faktur_Otomatis()
Call
Data_Record_Pembelian()
Keluar:
End Sub
Private Sub BtnBarang_Click(ByVal
sender As System.Object, ByVal e As System.EventArgs) Handles BtnBarang.Click
FrmBarang.Text
= "Data Barang Pembelian"
FrmBarang.ShowDialog()
End Sub
Private Sub
CmbID_SelectedIndexChanged(sender As Object, e As EventArgs) Handles
CmbID.SelectedIndexChanged
End Sub
Private Sub
TxtJml_TextChanged(sender As Object, e As EventArgs) Handles TxtJml.TextChanged
End Sub
Private Sub
DGTransaksi_CellContentClick(sender As Object, e As DataGridViewCellEventArgs)
Handles DGTransaksi.CellContentClick
End Sub
End Class
Class Koneksi
Imports System.Data
Imports System.Data.OleDb
Public Class ClsKoneksi
Protected SQL As
String
Protected Cn As
OleDb.OleDbConnection
Protected Cmd As
OleDb.OleDbCommand
Protected Da As
OleDb.OleDbDataAdapter
Protected Ds As
DataSet
Protected Dt As
DataTable
Public Function
OpenConn() As Boolean
Cn = New
OleDb.OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data
Source=BUKU.accdb")
Cn.Open()
If Cn.State
<> ConnectionState.Open Then
Return
False
Else
Return
True
End If
End Function
Public Sub
CloseConn()
If Not
IsNothing(Cn) Then
Cn.Close()
Cn =
Nothing
End If
End Sub
Public Function
ExecuteQuery(ByVal Query As String) As DataTable
If Not
OpenConn() Then
MsgBox("Koneksi Gagal..!!", MsgBoxStyle.Critical, "Access
Failed")
Return
Nothing
Exit
Function
End If
Cmd = New
OleDb.OleDbCommand(Query, Cn)
Da = New
OleDb.OleDbDataAdapter
Da.SelectCommand = Cmd
Ds = New
Data.DataSet
Da.Fill(Ds)
Dt =
Ds.Tables(0)
Return Dt
Dt = Nothing
Ds = Nothing
Da = Nothing
Cmd = Nothing
CloseConn()
End Function
Public Sub
ExecuteNonQuery(ByVal Query As String)
If Not OpenConn()
Then
MsgBox("Koneksi Gagal..!!", MsgBoxStyle.Critical, "Access
Failed..!!")
Exit Sub
End If
Cmd = New
OleDb.OleDbCommand
Cmd.Connection
= Cn
Cmd.CommandType = CommandType.Text
Cmd.CommandText
= Query
Cmd.ExecuteNonQuery()
Cmd = Nothing
CloseConn()
End Sub
End Class
DataBase :








0 komentar:
Posting Komentar