Hemmm.......baru dapat inspirasi nih buat lanjutin pembuatan aplikasi yang sebelumnya saya buat, sekarang saya mau lanjutin lagi........mari kita mulai aja deh.........
Read more ...
Gambar
Tampilan tambah barang pada form Transaksi Penjualan
Object Name Properties Value
Panel1 Name Pnl_tmbah_jual
Label1 Text Data Barang
Label2 Text Cari berdasarkan
ComboBox1 Name,Text, Items Cb_cariBrg,Pilih Pencarian,NO
ISBN,JUDUL,PENGARANG
TAHUN
PENERBIT
Label3 Text Item
Tersedia=
Label4 Text,Name Item ,Lbl_jml_item
ListView1 Name Lsv_Brg
Label5 Text Selected
Item =
TextBox1 Name Tb_SelectedBrg
Label6 Text Jumlah=
TextBox2 Name Tb_Jmlbrg
Button1 Name,Text Btn_close , Close
Button2 Name,Text Btn_tmbh , Tambah
Prosedur
Close
Prosedur ini
digunakan untuk menutup halaman data barang, berikut kode untuk prosedur
close:
PrivateSub btnCloseBrg_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs)
Handles btnCloseBrg.Click
pnlTambahJual.Hide()
btnHapusJual.Enabled
= True
btnBayarJual.Enabled
= True
EndSub
Prosedur
Tambah
PrivateSub btnTambahBrg_Click(ByVal sender As System.Object, ByVal e
As System.EventArgs) Handles btnTambahBrg.Click
Dim c AsInteger
Dim subtot AsDouble
c =
LV_jual.Items.Count
Dim item AsInteger = Val(lblJmlItem.Text)
If tbJmlbrg.Text = ""Then
MsgBox("Anda belum mengisi jumlah barang!!!")
ElseIf IsNumeric(tbJmlbrg.Text) = FalseThen
MsgBox("Jumlah yang anda masukkan salah. Jumlah harus
berupa
angka!!!")
ElseIf Val(tbJmlbrg.Text) > item Then
MsgBox("Jumlah yang anda masukkan lebih dari item
tersedia!!!")
Else
LV_jual.Items.Add(lv_brg.SelectedItems(0).SubItems(0).Text)
LV_jual.Items(c).SubItems.Add(lv_brg.SelectedItems(0).SubItems(1).Text)
LV_jual.Items(c).SubItems.Add(lv_brg.SelectedItems(0).SubItems(5).Text)
LV_jual.Items(c).SubItems.Add(tbJmlbrg.Text)
subtot =
Val(tbJmlbrg.Text) *
Val(lv_brg.SelectedItems(0).SubItems(5).Text)
LV_jual.Items(c).SubItems.Add(subtot)
'Menghitung
Jumlah barang
If brg = 0 Then
brg =
Val(tbJmlbrg.Text)
Else
brg +=
Val(tbJmlbrg.Text)
EndIf
pnlTambahJual.Hide()
hitungTot()
btnHapusJual.Enabled
= True
btnBayarJual.Enabled
= True
EndIf
EndSub
Keterangan:
Label,
digunakan untuk menampilkan teks pada aplikasi, Berada pada toolbox
Button,
digunakan untuk membuat sebuah tombol.
Text
Box, adalah komponen yang digunakan sebagai inputan.
Combo
Box, adalah komponen yang digunakan sebagai inputanyang berupa
pilihan.
List
View, berfungsi untuk menampilkan data dari suatu tabel tertentu
Prosedur
Tambah
Prosedur ini
digunakan untuk menambah data yang diinputkan oleh kasir ke tabel transaksi
penjualan. Berikut
ini kode untuk tombol Tambah :
PrivateSub btnTambahJual_Click(ByVal sender As System.Object, ByVal e
As System.EventArgs) Handles btnTambahJual.Click
pnlTambahJual.Show()
btnHapusJual.Enabled
= False
btnBayarJual.Enabled
= False
btnTambahBrg.Enabled
= False
lblJmlItem.Text
= "0"
tbCariBrg.Text
= ""
cbCariBrg.Text
= "Pilih Pencarian"
tbJmlbrg.Text
= ""
lv_brg.Items.Clear()
getData("select * from t_buku")
EndSub
Prosedur
Hapus
Prosedur ini
digunakan untuk menghapus total belanja yang terdapat pada tabel transaksi
penjualan. Berikut
kode untuk prosedur Hapus
PrivateSub btnHapusJual_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs)
Handles btnHapusJual.Click
Dim i AsInteger = LV_jual.CheckedItems.Count
Dim a AsInteger
For a = 1 To i
LV_jual.CheckedItems(0).Remove()
Next a
hitungTot()
EndSub
Object Name Propertise Value
Label1 Text No. Nota
Label2 Text Petugas Kasir
Label3 Text Tanggal
Label4 Text Total Belanja
Label5 Text Form
Pembayaran
lblTotal Text lblTotal
TextBox1 Name tbNoNotaJual
TextBox2 Name tbKasirJual
Button1 Text ,Name &Tambah ,btnTambahJual
Button2 Text ,Name &Hapus ,btnHapusJual
Keterangan:
Label, digunakan
untuk menampilkan teks pada aplikasi, Berada pada toolbox
Button, digunakan untuk
membuat sebuah tombol.
Text Box, adalah
komponen yang digunakan sebagai inputan.
Combo Box, adalah
komponen yang digunakan sebagai inputanyang berupa pilihan.
Object Name Propertise Value
Label1 Text No. Nota
Label2 Text Petugas Kasir
Label3 Text Tanggal
Label4 Text Total Belanja
Label5 Text Form
Pembayaran
Label6 Text No Nota
lblnonota Text no nota
Label7 Text Total Barang
Label8 Text Total Belanja
Label9 Text Bayar
Label10 Text Kembalian
lblTotal Text lblTotal
TextBox1 Name tbNoNotaJual
TextBox2 Name tbKasirJual
TextBox3 Name tbTotBrg
TextBox4 Name tbTotbelanja
TextBox5 Name tbBayarJual
ComboBox1 Name dtpJual
Button1 Text,Name &Tambah ,btnTambahJual
Button2 Text Name &Hapus ,btnHapusJual
Button3 Text,Name &Bayar ,btnBayarJual
Button4 Text ,Name &Close,btnCloseBayar
Button5 Text, Name &Printbtn, PrintJual
Button6 Text,Name &Simpanbtn,SimpanJual
Prosedur
Bayar
Prosedur ini
digunakan untuk proses pembayaran pada transaksi penjualan. Berikut kode
untuk prosedur Bayar
:
PrivateSub btnBayarJual_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs)
Handles btnBayarJual.Click
pnlByarJual.Show()
pnlByarJual.BringToFront()
btnHapusJual.Enabled
= False
btnTambahJual.Enabled
= False
pnlTambahJual.Hide()
tbTotBrg.Text
= Trim(Str(brg))
tbTotbelanja.Text
= Trim(lblTotal.Text)
tbTotbelanja.Enabled
= False
tbTotBrg.Enabled
= False
tbBayarJual.Text
= ""
tbBayarJual.Focus()
lblnonota.Text
= tbNoNotaJual.Text
btnPrintJual.Enabled
= False
EndSub
Prosedur
Close
Prosedur ini
digunakan untuk menutup menu pada transaksi penjualan. Berikut kode
untuk prosedur Close
:
PrivateSub btnCloseBayar_Click(ByVal sender As System.Object, ByVal e
As System.EventArgs) Handles btnCloseBayar.Click
pnlByarJual.Hide()
btnTambahJual.Enabled
= True
btnHapusJual.Enabled
= True
EndSub
Prosedur
Print
Prosedur ini
digunakan untuk mencetak nota pembayaran pada transaksi penjualan.
Berikut kode untuk
prosedur Print :
PrivateSub btnPrintJual_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs)
Handles btnPrintJual.Click
LapJual.TextBox1.Text
= lblnonota.Text
btnSimpanJual_Click(sender,
e)
LapJual.Show()
btnCloseBayar_Click(sender,
e)
LV_jual.Items.Clear()
lblTotal.Text
= "0"
autonota()
EndSub
Prosedur
Simpan
Prosedur ini
digunakan untuk menyimpan data pembayaran pada transaksi penjualan.
Berikut kode untuk
prosedur Simpan :
PrivateSub btnSimpanJual_Click(ByVal sender As System.Object, ByVal e
As System.EventArgs) Handles btnSimpanJual.Click
Dim cmd AsNew SqlCommand()
Dim server, noisbn, stok AsString
server =
"server=Nureal\sqlexpress;Database=toko_buku;integrated
security=true"
Dim con AsNew SqlClient.SqlConnection(server)
con.Open()
cmd.Connection
= con
cmd.CommandText
= "Insert into t_penjualan values('" +
tbNoNotaJual.Text
+ "','" _
+ dtpJual.Text
+ "','" + ktp + "','" + lblTotal.Text
+ "')"
cmd.ExecuteNonQuery()
Dim x AsInteger = LV_jual.Items.Count
For i AsInteger = 0 To x - 1
'Mencari
no isbn dan stok awal
cmd.CommandText
= "select no_isbn,stok_awal from t_buku
where
no_isbn='" + LV_jual.Items(i).SubItems(0).Text +
"'"
Dim da(i) As SqlDataReader
da(i) =
cmd.ExecuteReader
da(i).Read()
noisbn =
da(i)!no_isbn
stok =
da(i)!stok_awal
Dim stk, kurang AsInteger
stk =
Val(stok)
kurang =
Val(LV_jual.Items(i).SubItems(3).Text)
stk = stk -
kurang
'Mengurangi
stok barang
con.Close()
con.Open()
cmd.CommandText
= "update t_buku set stok_awal=" + Str(stk)
+ " where no_isbn='" + noisbn + "'"
cmd.ExecuteNonQuery()
'Masuk ke
tabel penjualan detail
cmd.CommandText = "insert into t_penjualan_detail values('"
+
tbNoNotaJual.Text + "','" +
LV_jual.Items(i).SubItems(0).Text
+ "','" _
+
LV_jual.Items(i).SubItems(3).Text + "','"
+
LV_jual.Items(i).SubItems(2).Text
+ "','" _
+
LV_jual.Items(i).SubItems(4).Text + "')"
cmd.ExecuteNonQuery()
Next
'MsgBox("Data
telah disimpan")
EndSub
Pembuatan Form Pembelian Barang
Langkah pembuatan from diatas,
tambahakan komponen-komponen ke dalam form tersebut
sperti pada daftar table di bawah
ini, kemudian atur propetiesnya :
NO Component Properties Nilai Propeties
1 Form1 Name frPembelian
2 MenuStips1 Name
Item
Menupilihan
Save
F2-Add Item
F3-Del.Item
Exit
3 Label1 Text No Faktur
4 Label2 Text Tanggal Faktur
5 Label3 Text Supplier
6 Label4 Text Total
7 Label5 Text Rp.
8 Label6 Text 0
Name LbTotal
10 ListView1 Name LV_Beli
11 Label7 Text Daftar yang dibeli
12 Label8 Text Scan Barcode
13 TextBox1 Name TnoFaktur
14 DateTimePicker Name dTanggal
15 ComboBox1 Name CSupplier
16 TextBox2 Name tBarcode
17 Label9 Text Nama Barang
18 Label10 Text Pencarian Barang
Deklarasi
Variabel Public
Public ktp As String
Public no_spl As String
Fungsi
fungsi
pada form Pembelian
'fungsi
Pencarian Nama
Nama
supplier
Private Sub getSupplier()
Dim cmd As New SqlCommand("select Nama from t_Supplier order by nama
Asc")
Dim server, nama As String
server = "server=LAB3-FAF54F5981;Database=toko_buku;integrated
security=true"
Dim con As New SqlClient.SqlConnection(server)
con.Open()
cmd.Connection
= con
Dim dr As SqlDataReader
dr =
cmd.ExecuteReader()
'menampilkan
isi combobox dari database
cSupplier.Items.Clear()
Do While dr.Read()
cSupplier.Items.Add(dr!nama)
Loop
dr.Close()
con.Close()
End Sub
'fungsi
Pencarian No supplier sesuai dengan combobox
Private Sub getNoSupplier()
Dim cmd As New SqlCommand("select * from t_supplier where
nama='"
+ cSupplier.Text + "'")
Dim server, nama As String
server = "server=LAB3-FAF54F5981;Database=toko_buku;integrated
security=true"
Dim con As New SqlClient.SqlConnection(server)
con.Open()
cmd.Connection
= con
Dim dr As SqlDataReader
dr = cmd.ExecuteReader()
If dr.HasRows Then
dr.Read()
no_spl =
dr.Item(0)
Else
MsgBox("No data available!")
End If
con.Close()
End Sub
'fungsi
Pencarian data buku yang di tampilkan pada list Barang
Private Sub getData(ByVal command As String)
Dim server As String = "server=LAB3-
FAF54F5981;Database=toko_buku;integrated
security=true"
Dim konek As New SqlClient.SqlConnection
konek.ConnectionString
= server
konek.Open()
Dim cmd As New SqlClient.SqlCommand(command)
Dim da As SqlClient.SqlDataReader
cmd.Connection
= konek
da =
cmd.ExecuteReader
Dim i As Integer = 0
Do While da.Read()
lv_brg.Items.Add(da!no_isbn)
lv_brg.Items(i).SubItems.Add(da!judul)
lv_brg.Items(i).SubItems.Add(da!pengarang)
lv_brg.Items(i).SubItems.Add(da!penerbit)
lv_brg.Items(i).SubItems.Add(da!th_terbit)
Dim harga(i) As Double
harga(i) =
da!harga
lv_brg.Items(i).SubItems.Add(harga(i))
lv_brg.Items(i).SubItems.Add(da!stok_awal)
i += 1
Loop
konek.Close()
konek.Dispose()
End Sub
'fungsi
menghitung total pembelian
Private Sub hitungTot()
Dim tot As Double = 0
For x As Integer = 0 To LV_Beli.Items.Count
- 1
tot +=
Val(LV_Beli.Items(x).SubItems(4).Text)
Next
lbTotal.Text
= Str(tot)
End Sub
Prosedur
form on load sebagai berikut:
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As
System.EventArgs)
Handles MyBase.Load
tNoFaktur.Focus()
End Sub
Prosedur
ComboBox on event Mouse Down sebagai berikut:
Private Sub cSupplier_MouseDown(ByVal sender As System.Object, ByVal e
As System.Windows.Forms.MouseEventArgs) Handles cSupplier.MouseDown
getSupplier()
End Sub
Prosedur
Button Tambah
Kode untuk
menambahkan item adalah sebagai berikut:
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs)
Handles btTambah.Click
Dim c As Integer
Dim subtot As Double
Try
c =
LV_Beli.Items.Count
LV_Beli.Items.Add(lv_brg.SelectedItems(0).SubItems(0).Text)
LV_Beli.Items(c).SubItems.Add(lv_brg.SelectedItems(0).SubItems(1).Text)
LV_Beli.Items(c).SubItems.Add(lv_brg.SelectedItems(0).SubItems(5).Text)
LV_Beli.Items(c).SubItems.Add(tQty.Text)
subtot =
Val(tQty.Text) *
Val(lv_brg.SelectedItems(0).SubItems(5).Text)
LV_Beli.Items(c).SubItems.Add(subtot)
hitungTot()
Panel1.Visible
= False
Catch ex As Exception
MsgBox("Select item terlebih dahulu !!!")
End Try
End Sub
Prosedur
Save
Prosedur yang
digunakan untuk menyimpan record baru ke dalam database, berikut source
untuk save:
Private Sub SaveToolStripMenuItem_Click(ByVal sender As System.Object,
ByVal e As System.EventArgs)
Handles SaveToolStripMenuItem.Click
Dim cmd As New SqlCommand()
Dim server, noisbn, stok As String
server = "server=LAB3-FAF54F5981;Database=toko_buku;integrated
security=true"
getNoSupplier()
Try
Dim con As New SqlClient.SqlConnection(server)
con.Open()
cmd.Connection
= con
cmd.CommandText
= "Insert into t_pembelian values('" +
tNoFaktur.Text
+ "','" _
+
dTanggal.Text + "','" + ktp + "','" + no_spl +
"','"
+ lbTotal.Text + "')"
cmd.ExecuteNonQuery()
Dim x As Integer = LV_Beli.Items.Count
For i As Integer = 0 To x – 1
'Mencari
no isbn dan stok awal
cmd.CommandText
= "select no_isbn,stok_awal from t_buku
where
no_isbn='" + LV_Beli.Items(i).SubItems(0).Text +
"'"
Dim da(i) As SqlDataReader
da(i) =
cmd.ExecuteReader
da(i).Read()
noisbn =
da(i)!no_isbn
stok =
da(i)!stok_awal
Dim stk, tambah As Integer
stk =
Val(stok)
tambah =
Val(LV_Beli.Items(i).SubItems(3).Text)
stk = stk +
tambah
'Mengurangi
stok barang
con.Close()
con.Open()
cmd.CommandText
= "update t_buku set stok_awal=" +
Str(stk) + " where no_isbn='" + noisbn + "'"
cmd.ExecuteNonQuery()
'Masuk ke
tabel pembelian detail
cmd.CommandText
= "insert into t_pembelian_detail values('" _
+
tNoFaktur.Text + "','" +
LV_Beli.Items(i).SubItems(0).Text
+ "','" _
+
LV_Beli.Items(i).SubItems(3).Text + "','"
+
LV_Beli.Items(i).SubItems(2).Text
+ "','" _
+
LV_Beli.Items(i).SubItems(4).Text + "')"
cmd.ExecuteNonQuery()
Next
MsgBox("Data telah disimpan")
Catch ex As Exception
MsgBox("Data tidak tersimpan")
End Try
End Sub
Prosedur
Add-Item
Prosedur yang
digunakan untuk menambahkan record baru ke dalam database, berikut source
untuk Add-item:
Private Sub TambahItemToolStripMenuItem_Click(ByVal sender As
System.Object,
ByVal e As System.EventArgs) Handles
TambahItemToolStripMenuItem.Click
Panel1.Visible
= True
tQty.Text =
"1"
lv_brg.Items.Clear()
getData("select * from t_buku")
End Sub
Prosedur
Delete-Item
Prosedur yang digunakan untuk menghapus
record baru ke dalam database, berikut source untuk
Delete-item:
Private Sub DelItemToolStripMenuItem_Click(ByVal sender As
System.Object,
ByVal e As System.EventArgs) Handles
DelItemToolStripMenuItem.Click
Dim i As Integer = LV_Beli.CheckedItems.Count()
Dim a As Integer
For a = 1 To i
LV_Beli.CheckedItems(0).Remove()
Next a
hitungTot()
End Sub
Prosedur
Exit
Prosedur yang
digunakan untuk keluar dari Form Penjualan, berikut source untuk prosedur
Exit:
Private Sub ExitToolStripMenuItem_Click(ByVal sender As System.Object,
ByVal e As System.EventArgs)
Handles ExitToolStripMenuItem.Click
If Panel1.Visible = True Then
Panel1.Visible
= False
Else
End
End If
End Sub
Setelah Membuat sciprt di atas kita
tambahkan Panel untuk menampilkan barang