Latihan_37_36110052
A. Object-object dalam
Latihan_37_36110052 :
1. Object Label
Terdapat
sembilan label (yang bertuliskan no transaksi, tanggal, jenis transaksi, kode
barang, namabarang, unit, harga, jumlah, dan total).
2.
Object Textbox
Terdapat
delapan textbox (lima status input dan tiga status readonly). Status input
digunakan untuk memasukkan nilai: no transaksi, jenis transaksi, kode barang,
unit, dan harga. Status readonly digunakan untuk menampilkan nama barang,
jumlah, dan total.
3.
Object Button
Terdapat
dua object button (Tambah dan Simpan). Tombol tambah digunakan untuk menyimpan
data yang telah diinput pada textbox ke dalam datatabel (yang ditampilkan pada
datagridview). Tombol simpan digunakan untuk menyimpan data yang telah diinput
ke dalam database (DATA MAJEMUK). Pada latihan ini, 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.
4.
Object DateTimePicker
Terdapat
satu object datetimepicker yang digunakan untuk menentukan tanggal transaksi.
5.
Object DataGridView
Terdapat satu object datagridview
yang digunakan untuk menampilkan data yang telah diinput pada textbox.
B. Script Unique
Untuk script, silahkan lihat
selengkapnya pada Langkah-langkah kerja latihan_37_36110052
.
C. Even
TAMBAH_36110052_Click
Latihan_37_36110062_Load
SIMPAN_36110052_Click
ANRA()
UNIT_36110052_TextChanged
HARGA_36110048.TextChanged
KB_36110053_Leave
KB_36110052_TextChanged
D. Property
Property TextBox ==>
ReadOnly=True
Langkah-langkah
kerja latihan_37_36110052
1. Buat
new windows form dengan cara ketik project àadd windows
form pada project yang telah dibuat dan
berikan nama form yang diinginkan
Contoh: latihan_37_36110052
3. Setiap
tools yang diambil pada textbox dapat diubah propertiesnya seperti nama dan
teksnya dengan cara klik kanan-properties
4. Buat
form dengan bentuk seperti ini:
5. Setelah
selesai form, masuk ke lembar Vb dan masukkan script
Public Class LATIHAN_37_36110052
Dim veve As
New ByIskandar.CariKeDataBaseByIskandar
Dim tabel As
New DataTable
Dim via As
New OleDb.OleDbCommand
Dim vee As
New OleDb.OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data
Source='" & Application.StartupPath & "\DataMajemuk.accdb'")
Private Sub
latihan_37_36110052_Load(ByVal sender As System.Object, ByVal
e As System.EventArgs) Handles
MyBase.Load
Dim r As New
OleDb.OleDbDataAdapter
r = New
OleDb.OleDbDataAdapter("select
barang.KODEBARANG, barang.NAMABARANG, detailtransaksi.UNIT,
detailtransaksi.HARGA, detailtransaksi.unit*harga as JUMLAH from barang inner
join detailtransaksi on barang.kodebarang = detailtransaksi.kodebarang where
notrans ='" & nt_36110052.Text & "'",
vee)
tabel.Rows.Clear()
r.Fill(tabel)
r.Dispose()
dgv_36110052.DataSource = tabel
Dim sudar(1)
As DataColumn
sudar(0) = tabel.Columns("kodebarang")
tabel.PrimaryKey = sudar
End Sub
Private Sub
anra()
Dim
anra1 As Integer
= 0
For Each anra2 As DataRow
In tabel.Rows
anra1 += anra2("JUMLAH")
Next
total_36110052.Text = anra1
End Sub
Private Sub
kb_36110052_leave(ByVal sender As System.Object, ByVal
e As System.EventArgs) Handles
kb_36110052.Leave
If
kb_36110052.Text.Length = 0 Then
Exit
Sub
End If
veve.AturPencarianDataBase("barang", "kodebarang",
kb_36110052.Text, 1, vee)
If
veve.JumlanBaris > 0 Then
kb_36110052.Text =
veve.DataTablenya.Rows(0).Item("KODEBARANG")
nb_36110052.Text =
veve.DataTablenya.Rows(0).Item("NAMABARANG")
Else
MsgBox("Kode
barang tidak terdaftar")
Exit
Sub
End If
End Sub
Private Sub
kb_36110052_TextChanged(ByVal sender As System.Object, ByVal
e As System.EventArgs) Handles
kb_36110052.TextChanged
nb_36110052.Text = ""
unit_36110052.Text = ""
harga_36110052.Text = ""
End Sub
Private Sub
tambah_36110052_Click(ByVal sender As System.Object, ByVal
e As System.EventArgs) Handles
tambah_36110052.Click
If
kb_36110052.Text.Length = 0 Then
MsgBox("kode
barang tidak terisi")
ElseIf
Val(unit_36110052.Text) = 0 Then
MsgBox("unit
tidak terisi")
ElseIf
Val(harga_36110052.Text) = 0 Then
MsgBox("harga
barang tidak terisi")
Exit
Sub
End If
Dim dt As DataRow
dt = tabel.Rows.Find(kb_36110052.Text)
If dt Is Nothing Then
dt = tabel.NewRow
dt("KODEBARANG")
= kb_36110052.Text
dt("NAMABARANG")
= nb_36110052.Text
dt("UNIT")
= unit_36110052.Text
dt("HARGA")
= harga_36110052.Text
dt("JUMLAH")
= Val(jumlah_36110052.Text)
tabel.Rows.Add(dt)
kb_36110052.Text = ""
unit_36110052.Text = ""
harga_36110052.Text = ""
Else
MsgBox("kode
barang telah terdaftar,")
End If
anra()
End Sub
Private Sub
simpan_36110052_Click(ByVal sender As System.Object, ByVal
e As System.EventArgs) Handles
simpan_36110052.Click
If
nt_36110052.Text.Length = 0 Then
MsgBox("nomor
transaksi harus terisi")
ElseIf
jt_36110052.Text.Length = 0 Then
MsgBox("Isi
rong Jenis Transaksi na..")
ElseIf
tabel.Rows.Count = 0 Then
MsgBox("data
table tidak boleh kosong")
Exit
Sub
End If
veve.AturPencarianDataBase("mastertransaksi", "notrans", nt_36110052.Text, 1, vee)
If
veve.JumlanBaris > 0 Then
MsgBox("nomor
transaksi telah ada")
Exit
Sub
End If
via = New
OleDb.OleDbCommand("insert into
mastertransaksi(notrans, tanggaltransaksi, jenistransaksi) values ('"
& nt_36110052.Text & "',#"
& tgl_36110052.Value.Month & "/"
& tgl_36110052.Value.Day & "/"
& tgl_36110052.Value.Year & "#,'"
& jt_36110052.Text & "')",
vee)
vee.Open()
via.ExecuteNonQuery()
vee.Close()
For Each x As DataRow In tabel.Rows
via = New
OleDb.OleDbCommand("insert into
detailtransaksi(notrans, kodebarang, unit, harga) values ('" &
nt_36110052.Text & "','" &
x("kodebarang") & "','" & x("unit")
& "','" & x("harga") & "')",
vee)
vee.Open()
via.ExecuteNonQuery()
vee.Close()
Next
via.Dispose()
nt_36110052.Text = ""
jt_36110052.Text = ""
tabel.Rows.Clear()
anra()
End Sub
Private Sub
unit_36110052_TextChanged(ByVal sender As System.Object, ByVal
e As System.EventArgs) Handles
unit_36110052.TextChanged
jumlah_36110052.Text =
Val(unit_36110052.Text) * Val(harga_36110052.Text)
End Sub
Private Sub
harga_36110052_TextChanged(ByVal sender As System.Object, ByVal
e As System.EventArgs) Handles
harga_36110052.TextChanged
jumlah_36110052.Text =
Val(unit_36110052.Text) * Val(harga_36110052.Text)
End Sub
End Class
6.
Uji program dengan mengklik “Start Debbuging” dan save program dengan mengklik
“Save”.
7.
SELESAI

Tidak ada komentar:
Posting Komentar