Form Latihan_40B terdapat enam object yaitu Label, Textbox,
Button, DateTimePicker, DataGridView, dan StatusStrip
Object Label
Terdapat
empat object Label (yang bertuliskan No. Transaksi,
Tanggal, Jenis Transaksi dan Total)
Object Textbox
Terdapat tiga object textbox (dua
berstatus input dan satu berstatus ReadOnly).
Status input digunakan untuk
memasukkan angka.
Statua ReadOnly untuk menampilkan
hasil perhitungan.
Object Button
Terdapat satu object
button (Simpan). Tombol simpan digunakan untuk menyimpan data yang telah
diinput ke dalam database (DATA MAJEMUK). Kode barang yang diinput harus
merupakan kode barang yang sudah ada pada tabel kode barang karena nama barang
akan ditampilkan pada textbox readonly sesuai dengan kode barang yang diinput.
Jika kode barang yang diinput tidak ada, maka akan muncul form
Latihan_383940_36110044
Date TimePicker
Terdapat
1 object DateTimePicker yang digunakan untuk memasukkan tanggal terjadinya
transaksi.
DataGridView
Terdapat
1 DataGridView untuk menampilkan data transaksi
StatusStrip
Terdapat satu object statustrip yang
memiliki dua label (yang bertuliskan no transaksi dan -).
Script Unique
Untuk script, silahkan lihat
selengkapnya pada Prosedur Penyelesaian Latihan_40B_36110044
Even
SelectData()
Latihan_40B_36110044_Load
Hitung()
DGV_36110044_CellEndEdit
SIMPAN_36110044_Click
Property
TextBox==>ReadOnly==>True
PROSEDUR PENYELESAIAN:
1.
Klik star lalu pilih Microsoft
Visual Studio 2008
2.
Pilih icon Add New Item
3.
Ubah nama pada lembar “Add New Item”
kemudian add
4.
Buat design form dengan
menggunakan Label, Textbox, Button,
DateTimePicker , DataGridView, dan StatusSrip yang ada dalam
"Toolbox”
5.
Ganti nama Textbox,
Button, DateTimePicker, DataGridView dan StatusStrip menggunakan
"Properties Window"
6.
Klik kanan pada kotak design kemudian
pilih View Code untuk membuka lembar vb
Masukkan rumus berikut untuk menyelesaikan latihan_40B
Masukkan rumus berikut untuk menyelesaikan latihan_40B
Public Class Latihan_40B_36110044
Dim
bridgetiya As New
OleDb.OleDbConnection(" Provider =
microsoft.ace.oledb.12.0; data source = " &
Application.StartupPath & "\DataMajemuk.accdb")
Dim
tabeltiya As New
DataTable
Public Sub SelectData()
Dim
trucktiya As New
OleDb.OleDbDataAdapter
trucktiya = New
OleDb.OleDbDataAdapter("Select
BARANG.KODEBARANG, BARANG.NAMABARANG, UNIT, HARGA, UNIT * HARGA As JUMLAH
" & _
"From
DETAILTRANSAKSI Inner join BARANG on DETAILTRANSAKSI.KODEBARANG =
BARANG.KODEBARANG where NOTRANS = '" & NO_36110044.Text & "'", bridgetiya)
tabeltiya.Rows.Clear()
trucktiya.Fill(tabeltiya)
trucktiya.Dispose()
End Sub
Private Sub Latihan_40B_36110044_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles
Me.Load
SelectData()
DGV_36110044.DataSource = tabeltiya
End Sub
Public Sub Hitung()
Dim
Jumlah As Integer
= 0
For Each row As
DataGridViewRow In DGV_36110044.Rows
Jumlah = Jumlah + row.Cells("Jumlah").Value
Next
TOTAL_36110044.Text = Jumlah
End Sub
Private Sub DGV_36110044_CellEndEdit(ByVal
sender As Object,
ByVal e As
System.Windows.Forms.DataGridViewCellEventArgs) Handles
DGV_36110044.CellEndEdit
If
e.ColumnIndex = 0 Then
DGV_36110044.CurrentRow.Cells("NAMABARANG").Value = ""
DGV_36110044.CurrentRow.Cells("UNIT").Value = 0
DGV_36110044.CurrentRow.Cells("HARGA").Value = 0
DGV_36110044.CurrentRow.Cells("JUMLAH").Value = 0
Dim
Pencari As New
ByIskandar.CariKeDataBaseByIskandar
Pencari.AturPencarianDataBase("BARANG", "KODEBARANG",
DGV_36110044.CurrentRow.Cells("KODEBARANG").Value,
1, bridgetiya)
If Pencari.JumlanBaris = 0 Then
MsgBox("Kode
barang tersebut tidak ada")
If
Latihan_383940_36110044.ShowDialog = Windows.Forms.DialogResult.OK Then
DGV_36110044.CurrentRow.Cells("KODEBARANG").Value
= Latihan_383940_36110044.DGV_36110044.CurrentRow.Cells("KODEBARANG").Value
DGV_36110044.CurrentRow.Cells("NAMABARANG").Value
= Latihan_383940_36110044.DGV_36110044.CurrentRow.Cells("NAMABARANG").Value
Else
DGV_36110044.CurrentRow.Cells("KODEBARANG").Value = ""
End
If
Exit
Sub
End
If
DGV_36110044.CurrentRow.Cells("NAMABARANG").Value =
Pencari.DataTablenya.Rows(0).Item("NAMABARANG")
ElseIf e.ColumnIndex = 2 Or
e.ColumnIndex = 3 Then
DGV_36110044.CurrentRow.Cells("JUMLAH").Value =
DGV_36110044.CurrentRow.Cells("UNIT").Value
* DGV_36110044.CurrentRow.Cells("HARGA").Value
Hitung()
End If
End Sub
Private Sub SIMPAN_36110044_Click(ByVal
sender As Object,
ByVal e As
System.EventArgs) Handles SIMPAN_36110044.Click
If
tabeltiya.Rows.Count = 0 Then
MsgBox("Datanya
Belum Ada, Masukkan Kode Barang, Unit dan harganya")
Exit
Sub
End If
If
NO_36110044.Text <> ToolStripStatus_36110044.Text Then
Dim
Periksa As New
ByIskandar.CariKeDataBaseByIskandar
Periksa.AturPencarianDataBase("MASTERTRANSAKSI", "NOTRANS", NO_36110044.Text, 1,
bridgetiya)
If
Periksa.JumlanBaris > 0 Then
MsgBox("No
Transaksi Sudah Ada, Masukkan No Transaksi yang Lain")
Exit
Sub
End
If
End If
Dim
Hapus As New
OleDb.OleDbCommand
Hapus = New
OleDb.OleDbCommand("Delete * From
MASTERTRANSAKSI Where NOTRANS = '" &
ToolStripStatus_36110044.Text & "'",
bridgetiya)
bridgetiya.Open()
Hapus.ExecuteNonQuery()
bridgetiya.Close()
Hapus = New
OleDb.OleDbCommand("Delete * From
DETAILTRANSAKSI Where NOTRANS = '" &
ToolStripStatus_36110044.Text & "'",
bridgetiya)
bridgetiya.Open()
Hapus.ExecuteNonQuery()
bridgetiya.Close()
Dim
Ambil As New
OleDb.OleDbCommand
Ambil = New
OleDb.OleDbCommand("Insert Into
MASTERTRANSAKSI (NOTRANS, TANGGALTRANSAKSI, JENISTRANSAKSI) " &
_
"Values
('" & NO_36110044.Text & "',
#" & DTP_36110044.Value.Month & "/"
& DTP_36110044.Value.Day & "/"
& DTP_36110044.Value.Year & "#,
'" & JENIS_36110044.Text & "')",
bridgetiya)
bridgetiya.Open()
Ambil.ExecuteNonQuery()
bridgetiya.Close()
Ambil.Dispose()
For Each BarisX As
DataRow In tabeltiya.Rows
Dim
Simpan As New
OleDb.OleDbCommand
Simpan = New
OleDb.OleDbCommand("Insert Into
DETAILTRANSAKSI (NOTRANS, KODEBARANG, UNIT, HARAGA) " & _
"Values
('" & NO_36110044.Text & "',
'" & BarisX("KODEBARANG")
& "', " & BarisX("UNIT") & ",
" & BarisX("HARGA")
& ")", bridgetiya)
bridgetiya.Open()
Simpan.ExecuteNonQuery()
bridgetiya.Close()
Simpan.Dispose()
Next
NO_36110044.Text = ""
JENIS_36110044.Text = ""
tabeltiya.Clear()
Latihan_40A_36110044.Isi()
Hitung()
End Sub
End Class
7. Jalankan program dengan menggunakan “start debugging”
Tidak ada komentar:
Posting Komentar