Latihan_12_36110051
Form
Latihan_12 terdapat enam object yaitu Label,Textbox, Button, GroupBox,
DataGridView, dan DateTimePicker:
Object Label
Terdapat
sembilan object Label (yang bernama No.
Pembelian, Nama Barang, Harga Perunit, Unit, Jumlah, No. Barang, No, Pembelian,
Baris Sekarang)
Object Textbox
Terdapat
sembilan object textbox (enam status input; tiga status read only). Status
input digunakan untuk memasukkan data/angka. Status Read Only digunakan untuk
menampilkan hasil perhitungan dari data-data
yang telah diinput.
Object
Button
Terdapat
delapan object button (yang bertuliskan Simpan, Tampilkan (ada tiga tombol),
Hapus (ada tiga tombol), dan tombol Close.)
GroupBox
Terdapat
lima object GroupBox (yang bertuliskan Formulir, Data, Berdasarkan No. Baris,
Berdasarkan No. Pembelian, dan Baris Sekarang)
DataGridView
Terdapat
satu object DataGridView yang berfungsi untuk menampilkan data yang telah
disimpan.
DateTimePicker
Terdapat
satu object DateTimePicker
Script
Unique
Membuat DataTable
Dim table As New
DataTable
Menambahkan kolom pada DataTable
table.Columns.Add(New DataColumn("No. Pembelian", GetType(String)))
Membuat DataSource
dgv_36110051.DataSource = table
Untuk Tombol Simpan
Dim baris As DataRow
baris =
tabel.Rows.Find(nopem36110051.Text)
If baris Is Nothing
Then
baris = tabel.NewRow
baris("NO
PEMBELIAN") = nopem36110051.Text
baris("TGL
PEMBELIAN") = tgl36110051.Value.Date
baris("NAMA
BARANG") = nabar36110051.Text
baris("HARGA
per UNIT") = Val(hpu36110051.Text)
baris("UNIT")
= Val(unit36110051.Text)
baris("JUMLAH")
= Val(jmlh36110051.Text)
Tot36110051.Text = Val(jmlh36110051.Text) +
Val(Tot36110051.Text)
Tu36110051.Text =
Val(unit36110051.Text) + Val(Tu36110051.Text)
tabel.Rows.Add(baris)
nopem36110051.Text = ""
tgl36110051.Text = ""
nabar36110051.Text = ""
hpu36110051.Text = ""
unit36110051.Text = ""
jmlh36110051.Text = ""
Else :
MsgBox("baris sudah ada")
jmlh36110051.Text = ""
End If
End Sub
Untuk tombol Tampilkan
Dim baris As DataRow
If Val(noris36110051.Text) <= tabel.Rows.Count Then
baris =
tabel.Rows(Val(noris36110051.Text) - 1)
nopem36110051.Text = baris("NO PEMBELIAN")
tgl36110051.Value = baris("TGL PEMBELIAN")
nabar36110051.Text = baris("NAMA BARANG")
hpu36110051.Text = baris("HARGA per UNIT")
unit36110051.Text = baris("UNIT")
jmlh36110051.Text = baris("JUMLAH")
Else
MsgBox("baris
terlalu besar")
End If
Private Sub hris36110051_Click(ByVal
sender As System.Object, ByVal e As
System.EventArgs) Handles hris36110051.Click
Dim
baris As DataRow
If
Val(nabar36110051.Text) <= tabel.Rows.Count Then
baris =
tabel.Rows(Val(noris36110051.Text) - 1)
baris.Delete()
Else
MsgBox("no.
baris yang dimasukkan tidak ada")
End If
Untuk tombol Hapus
If Val(nabar36110051.Text) <= tabel.Rows.Count Then
baris =
tabel.Rows(Val(noris36110051.Text) - 1)
baris.Delete()
Else
MsgBox("no.
baris yang dimasukkan tidak ada")
End If
Membuat Pemanggilan
Dim tu, total As Integer
For Each baris As DataRow
In tabel.Rows
tu = tu + baris("unit")
total = total + baris("jumlah")
Next
Tu36110051.Text = tu
Tot36110051.Text = total
End Sub
Even
hpu36110051_TextChanged
simpan36110051_Click
Property
Property TextBox ==> ReadOnly=True
PROSEDUR
PENYELESAIAN:
1.
Klik star lalu pilih Microsoft Visual Studio 2008
2. Pilih Project yang sebelumnya telah dibuat
3.Pada kotak "Solution Explorer" klik kanan
nama project => add => new item
4. Ubah nama pada lembar "Add New Item"
kemudian add
5. Buat design form dengan menggunakan Label,Textbox,
Button, GroupBox, DataGridView, dan DateTimePicker yang ada dalam ToolBox
6. Ganti nama TextBox dan Button menggunakan
"Properties Window
7. Klik 2x pada kotak design untuk membuka lembar vb
Masukkan rumus
berikut untuk menyelesaikan latihan_12
Public Class Latihan_12_36110051
Dim tabel As New DataTable
Private Sub Form12_Load(ByVal
sender As System.Object, ByVal e As
System.EventArgs) Handles MyBase.Load
tabel.Columns.Add(New DataColumn("NO
PEMBELIAN", GetType(String)))
tabel.Columns.Add(New DataColumn("TGL
PEMBELIAN", GetType(Date)))
tabel.Columns.Add(New DataColumn("NAMA
BARANG", GetType(String)))
tabel.Columns.Add(New DataColumn("HARGA
per UNIT", GetType(Double)))
tabel.Columns.Add(New DataColumn("UNIT",
GetType(Integer)))
tabel.Columns.Add(New DataColumn("JUMLAH",
GetType(Double)))
Data36110051.DataSource = tabel
Dim
kolom(1) As DataColumn
kolom(0) = tabel.Columns("NO PEMBELIAN")
tabel.PrimaryKey = kolom
End Sub
Private Sub hpu36110051_TextChanged(ByVal
sender As System.Object, ByVal e As
System.EventArgs) Handles
hpu36110051.TextChanged
jmlh36110051.Text =
Val(hpu36110051.Text) * Val(unit36110051.Text)
End Sub
Private Sub unit36110051_TextChanged(ByVal
sender As System.Object, ByVal e As
System.EventArgs) Handles
unit36110051.TextChanged
jmlh36110051.Text =
Val(hpu36110051.Text) * Val(unit36110051.Text)
End Sub
Private Sub jmlh36110051_TextChanged(ByVal
sender As System.Object, ByVal e As
System.EventArgs) Handles
jmlh36110051.TextChanged
jmlh36110051.Text =
Val(hpu36110051.Text) * Val(unit36110051.Text)
End Sub
Private Sub simpan36110051_Click(ByVal
sender As System.Object, ByVal e As
System.EventArgs) Handles simpan36110051.Click
Dim
baris As DataRow
baris =
tabel.Rows.Find(nopem36110051.Text)
If
baris Is Nothing
Then
baris = tabel.NewRow
baris("NO
PEMBELIAN") = nopem36110051.Text
baris("TGL
PEMBELIAN") = tgl36110051.Value.Date
baris("NAMA
BARANG") = nabar36110051.Text
baris("HARGA
per UNIT") = Val(hpu36110051.Text)
baris("UNIT")
= Val(unit36110051.Text)
baris("JUMLAH")
= Val(jmlh36110051.Text)
Tot36110051.Text = Val(jmlh36110051.Text) +
Val(Tot36110051.Text)
Tu36110051.Text =
Val(unit36110051.Text) + Val(Tu36110051.Text)
tabel.Rows.Add(baris)
nopem36110051.Text = ""
tgl36110051.Text = ""
nabar36110051.Text = ""
hpu36110051.Text = ""
unit36110051.Text = ""
jmlh36110051.Text = ""
Else :
MsgBox("baris sudah ada")
jmlh36110051.Text = ""
End If
End Sub
Private Sub tris36110051_Click(ByVal
sender As System.Object, ByVal e As
System.EventArgs) Handles tris36110051.Click
Dim
baris As DataRow
If
Val(noris36110051.Text) <= tabel.Rows.Count Then
baris =
tabel.Rows(Val(noris36110051.Text) - 1)
nopem36110051.Text = baris("NO PEMBELIAN")
tgl36110051.Value = baris("TGL PEMBELIAN")
nabar36110051.Text = baris("NAMA BARANG")
hpu36110051.Text = baris("HARGA per UNIT")
unit36110051.Text = baris("UNIT")
jmlh36110051.Text = baris("JUMLAH")
Else
MsgBox("baris
terlalu besar")
End If
noris36110051.Text = ""
End Sub
Private Sub hris36110051_Click(ByVal
sender As System.Object, ByVal e As
System.EventArgs) Handles hris36110051.Click
Dim
baris As DataRow
If
Val(nabar36110051.Text) <= tabel.Rows.Count Then
baris =
tabel.Rows(Val(noris36110051.Text) - 1)
baris.Delete()
Else
MsgBox("no.
baris yang dimasukkan tidak ada")
End If
noris36110051.Text = ""
End Sub
Private Sub tbeli36110051_Click(ByVal
sender As System.Object, ByVal e As
System.EventArgs) Handles tbeli36110051.Click
Dim
baris As DataRow
baris =
tabel.Rows.Find(nobeli36110051.Text)
If Not baris Is Nothing Then
nopem36110051.Text = baris("NO PEMBELIAN")
tgl36110051.Value = baris("TGL PEMBELIAN")
nabar36110051.Text = baris("NAMA BARANG")
hpu36110051.Text = baris("HARGA per UNIT")
unit36110051.Text = baris("UNIT")
jmlh36110051.Text = baris("JUMLAH")
Else
MsgBox("no.pembelian
tidak ada")
End If
nobeli36110051.Text = ""
End Sub
Private Sub hbeli36110051_Click(ByVal
sender As System.Object, ByVal e As
System.EventArgs) Handles hbeli36110051.Click
Dim
baris As DataRow
baris =
tabel.Rows.Find(nobeli36110051.Text)
If Not baris Is Nothing Then
baris.Delete()
nobeli36110051.Text = ""
Else
MsgBox("no.
pembelian yang dimasukkan tidak ada")
nobeli36110051.Text = ""
End If
nobeli36110051.Text = ""
End Sub
Private Sub tbaru36110051_Click(ByVal
sender As System.Object, ByVal e As
System.EventArgs) Handles tbaru36110051.Click
Dim
baris As DataRow
baris =
tabel.DefaultView(BindingContext(tabel).Position).Row
nopem36110051.Text = baris("NO PEMBELIAN")
tgl36110051.Value = baris("TGL PEMBELIAN")
nabar36110051.Text = baris("NAMA BARANG")
hpu36110051.Text = baris("HARGA per UNIT")
unit36110051.Text = baris("UNIT")
jmlh36110051.Text = baris("JUMLAH")
End Sub
Private Sub hbaru36110051_Click(ByVal
sender As System.Object, ByVal e As
System.EventArgs) Handles hbaru36110051.Click
Dim baris
As DataRow
baris =
tabel.DefaultView(BindingContext(tabel).Position).Row
baris.Delete()
End Sub
Private Sub Data36110051_CellContentClick(ByVal sender As
System.Object, ByVal e As
System.Windows.Forms.DataGridViewCellEventArgs) Handles
Data36110051.CellContentClick
Dim tu,
total As Integer
For Each baris As DataRow
In tabel.Rows
tu = tu + baris("unit")
total = total + baris("jumlah")
Next
Tu36110051.Text = tu
Tot36110051.Text = total
End Sub
End Class
8.
Jalankan program dengan menggunakan
“start debugging”