Deskripsi Latihan_37_36110038
Form Latihan_37 terdapat lima object
yaitu Label, Textbox, Button, DateTimePicker dan DataGridView:
Object Label
Terdapat sembilan label (No.
Transaksi, Tanggal, jenis Transaksi, Kode Barang, Nama Barang, Unit, Harga, jumlah dan total)
Object Text Box
Terdapat delapan textbox (lima
status input dan 3 status readonly). Status input digunakan untuk memasukkan
nilai/text No. Transaksi, jenis Transaksi, Kode Barang, Unit dan Harga. Sedangkan
status ReadOnly digunakan untuk menampilkan Nama Barang sesuai kode barang yang
telah diinput, Jumlah(hasil perkalian unit dan harga), dan Total dari jumlah.
Object Button
Terdapat dua object button (Tambah
dan Simpan). Tombol Tambah digunakan untuk
menambah data pada objek datagridview. Tombol Simpan digunakan untuk menyimpan
data yang ada pada datagridview ke dalam table yang ada pada access Data
Majemuk.
Object Date TimePicker
Terdapat
satu datetimepicker yang digunakan untuk memasukkan date/tanggal.
Object Data GridView
Terdapat satu data gridview yang
digunakan untuk menampilkan data yang ditambahkan.
Script Unique
Button "Tambah" (tambah_36110038)
If
kobar_36110038.Text.Length = 0 Then
MsgBox("Anda
Harus Masukkan Kode Barangnya")
Exit
Sub
End If
Button "simpan" (simpan_36110038)
If
no_36110038.Text.Length = 0 Then
MsgBox("Anda
Harus Masukkan No Transaksinya")
Exit
Sub
End If
Even
tambah_36110038.Click
simpan_36110038.Click
Proprety
ReadOnly è True
Prosedur penyelesaian
1.
Buka Project_36110038 yang telah
dibuat sebelumnya.
2.
Buka visual basic Kumpulan_Latihan_36110038
yang telah dibuat sebelumnya.
3.
Buat form baru dengan nama
Latihan_37_36110038 sesuai form dibawah ini.
4. Ganti
semua nama objek yang ada selain label menggunakan "Properties
Window" sesuai dengan yang diinginkan dengan menambahkan stambuk
dibelakang nama obyek.
5. Klik
2x pada kotak design untuk membuka lembar VB untuk menuliskan rumusnya. Masukkan
rumus berikut untuk menyelesaikan Latihan_37
Public Class Latihan_37_36110038
Dim connec As New
OleDb.OleDbConnection(" Provider = microsoft.ace.oledb.12.0;
data source = " & Application.StartupPath & "\DataMajemuk.accdb")
Dim tabel As New DataTable
Private Sub perhitungan()
Dim
Jumlah As Integer
= 0
For Each row As DataRow In tabel.Rows
Jumlah = Jumlah + row("Jumlah")
Next
ttl_36110038.Text = Jumlah
End Sub
Private Sub Latihan_37_36110038_Load(ByVal
sender As System.Object, ByVal e As
System.EventArgs) Handles MyBase.Load
Dim
adapter As New
OleDb.OleDbDataAdapter
adapter = 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_36110038.Text & "'", connec)
tabel.Rows.Clear()
adapter.Fill(tabel)
adapter.Dispose()
Dim
KolomPrimary(1) As DataColumn
KolomPrimary(0) = tabel.Columns("KODEBARANG")
tabel.PrimaryKey = KolomPrimary
dgv_36110038.DataSource = tabel
End Sub
Private Sub unit_36110038_TextChanged(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles
unit_36110038.TextChanged, hrg_36110038.TextChanged
jml_36110038.Text =
Val(unit_36110038.Text) * Val(hrg_36110038.Text)
End Sub
Private Sub kobar_36110038_leave(ByVal
sender As System.Object, ByVal e As
System.EventArgs) Handles kobar_36110038.Leave
If
kobar_36110038.Text.Length = 0 Then
Exit
Sub
End If
Dim
cari As New
ByIskandar.CariKeDataBaseByIskandar
cari.AturPencarianDataBase("BARANG", "KODEBARANG",
kobar_36110038.Text, 1, connec)
If
cari.JumlanBaris = 0 Then
MsgBox("Kode
barang tersebut tidak ada")
Exit
Sub
End If
nabar_36110038.Text =
cari.DataTablenya.Rows(0).Item("NAMABARANG")
End Sub
Private Sub Tambah_36110038_Click(ByVal
sender As System.Object, ByVal e As
System.EventArgs) Handles Tambah_36110038.Click
If
kobar_36110038.Text.Length = 0 Then
MsgBox("Anda
Harus Masukkan Kode Barangnya")
Exit
Sub
End If
If
nabar_36110038.Text.Length = 0 Then
MsgBox("Anda
Harus Masukkan Nama Barangnya")
Exit
Sub
End If
If
Val(unit_36110038.Text) = 0 Then
MsgBox("Anda
Harus Masukkan Unit Barangnya")
Exit
Sub
End If
If
Val(hrg_36110038.Text) = 0 Then
MsgBox("Anda
Harus Masukkan Harga Barangnya")
Exit
Sub
End If
If
tabel.Rows.Find(kobar_36110038.Text) Is Nothing Then
tabel.Rows.Add(kobar_36110038.Text,
nabar_36110038.Text, Val(unit_36110038.Text), Val(hrg_36110038.Text),
Val(jml_36110038.Text))
Else
MsgBox("Kode
Barang Sudah Ada, Masukkan Kode Barang yang Lain!")
Exit
Sub
End If
kobar_36110038.Text = ""
unit_36110038.Text = ""
hrg_36110038.Text = ""
perhitungan()
End Sub
Private Sub Simpan_36110038_Click(ByVal
sender As System.Object, ByVal e As
System.EventArgs) Handles Simpan_36110038.Click
If
no_36110038.Text.Length = 0 Then
MsgBox("Anda
Harus Masukkan No Transaksinya")
Exit
Sub
End If
If
jns_36110038.Text.Length = 0 Then
MsgBox("Anda
Harus Masukkan Jenis Transaksinya")
Exit
Sub
End If
If
tabel.Rows.Count = 0 Then
MsgBox("Datanya
Belum Ada, Masukkan Kode Barang, Unit dan harganya")
Exit
Sub
End If
Dim
cari As New
ByIskandar.CariKeDataBaseByIskandar
cari.AturPencarianDataBase("MASTERTRANSAKSI", "NOTRANS", no_36110038.Text, 1, connec)
If
cari.JumlanBaris > 0 Then
MsgBox("No
Transaksi Sudah Ada, Masukkan No Transaksi yang Lain")
Exit
Sub
End If
Dim
comman As New
OleDb.OleDbCommand
comman = New
OleDb.OleDbCommand("Insert Into
MASTERTRANSAKSI (NOTRANS, TANGGALTRANSAKSI, JENISTRANSAKSI) " &
_
"Values
('" & no_36110038.Text & "',
#" & tgl_36110038.Value.Month & "/"
& tgl_36110038.Value.Day & "/"
& tgl_36110038.Value.Year & "#,
'" & jns_36110038.Text & "')",
connec)
connec.Open()
comman.ExecuteNonQuery()
connec.Close()
For Each row As DataRow In tabel.Rows
comman = New
OleDb.OleDbCommand("Insert Into
DETAILTRANSAKSI (NOTRANS, KODEBARANG, UNIT, HARGA) " & _
"Values
('" & no_36110038.Text & "',
'" & row("KODEBARANG")
& "', " & row("UNIT") & ",
" & row("HARGA")
& ")", connec)
connec.Open()
comman.ExecuteNonQuery()
connec.Close()
Next
comman.Dispose()
no_36110038.Text = ""
jns_36110038.Text = ""
tabel.Rows.Clear()
perhitungan()
End Sub
Private Sub kobar_36110038_TextChanged(ByVal sender As
System.Object, ByVal e As
System.EventArgs) Handles kobar_36110038.TextChanged
nabar_36110038.Text = ""
unit_36110038.Text = ""
hrg_36110038.Text = ""
End Sub
End Class
6.
Tekan
F5 pada keyboard untuk menjalankan form.
Tidak ada komentar:
Posting Komentar