Latihan_39_46110022
Deskripsi Form Latihan_39 46110022
Dalam
form ini terdapat 4 buah object yaitu object textbox, label, datetimepicker dan
DataGriedView.
Object
Label
Terdapat
4 buah object label yaitu no transaksi, tanggal, jenis transaksi, kode
barang, unit,nama barang, jumlah, total dan harga.
Object
Textbox
Terdapat
3 buah object textbox yang berstatus input yang berfungsi untuk menginput data
ke dalam data table.
Object
DateTimePicker
Terdapat
sebuah object datetimepicker yang digunakkan untuk menginput date pada data
table.
Object DataGriedView
Terdapat
sebuah objek DataGriedView yang berfungsi untuk menampilkan data ke dalam
bentuk tabel yang terdiri dari baris dan kolom.
Object Button
Terdapat
sebuah object button yaitu “simpan” yang berfungsi untuk
menyimpan data yang telah diinput di latihan ini ke dalam database.
Script Unique
1. Mengosongkan data :
dgv46110022.CurrentRow.Cells("NamaBarang").Value = ""
dgv46110022.CurrentRow.Cells("Unit").Value
= 0
2. Mencari data yang ada
di table :
Dim Pencari As New
ByIskandar.CariKeDataBaseByIskandar
Pencari.AturPencarianDataBase("barang", "kodebarang",
dgv46110022.CurrentRow.Cells("kodebarang").Value,
1, alfa)
If
Pencari.JumlanBaris > 0 Then
dgv46110022.CurrentRow.Cells("kodebarang").Value =
Pencari.DataTablenya.Rows(0).Item(0)
dgv46110022.CurrentRow.Cells("namabarang").Value =
Pencari.DataTablenya.Rows(0).Item(1)
Else
MsgBox("the data is not found")
3. Menghitung jumlah dan
total :
ElseIf
e.ColumnIndex = 2 Or e.ColumnIndex = 3 Then
dgv46110022.CurrentRow.Cells("jumlah").Value =
dgv46110022.CurrentRow.Cells("unit").Value
* dgv46110022.CurrentRow.Cells("harga").Value
noldi()
End If
Even
Click
Load
CellContentClick
Langkah-Langkah Membuat Form Latihan 39_46110022
1. Buat form baru
seperti langkah berikut :
2. Input nama form
pada kolom yang tersedia, lalu klik "add" seperti berikut :
3. Buat desain form
seperti gambar berikut :
4. Input script di
bawah ini :
Public Class Latihan_39_46110022
Dim alfa As New
OleDb.OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data
Source =" & Application.StartupPath & "\Datamajemuk.ACCDB")
Dim ega As New DataTable
Private Sub noldi()
Dim
ttotal As Integer
For Each hasil As DataRow
In ega.Rows
ttotal += hasil("Jumlah")
Next
tot46110022.Text = ttotal
End Sub
Private Sub Latihan_39_46110022_Load(ByVal
sender As Object,
ByVal e As
System.EventArgs) Handles Me.Load
Dim
bojel As New
OleDb.OleDbDataAdapter
bojel = New
OleDb.OleDbDataAdapter("SELECT
detailtransaksi.kodebarang,barang.namabarang,detailtransaksi.unit,detailtransaksi.harga,
detailtransaksi.unit * detailtransaksi.harga as jumlah FROM DETAILTRANSAKSI
inner join barang on detailtransaksi.kodebarang=barang.kodebarang where
detailtransaksi.notrans='" & no46110022.Text & "'", alfa)
ega.Rows.Clear()
bojel.Fill(ega)
bojel.Dispose()
ega.Columns("Kodebarang").DefaultValue
= ""
ega.Columns("NamaBarang").DefaultValue
= ""
ega.Columns("unit").DefaultValue
= 0
ega.Columns("harga").DefaultValue
= 0
ega.Columns("jumlah").DefaultValue
= 0
ega.Columns("NamaBarang").ReadOnly
= True
dgv46110022.DataSource = ega
Dim
kabotcibay(2) As DataColumn
kabotcibay(0) = ega.Columns("Kodebarang")
ega.PrimaryKey = kabotcibay
End Sub
Private Sub dgv46110022_CellContentClick(ByVal sender As
System.Object, ByVal e As
System.Windows.Forms.DataGridViewCellEventArgs) Handles
dgv46110022.CellContentClick
If
e.ColumnIndex = 0 Then
dgv46110022.CurrentRow.Cells("NamaBarang").Value = ""
dgv46110022.CurrentRow.Cells("Unit").Value = 0
dgv46110022.CurrentRow.Cells("harga").Value = 0
dgv46110022.CurrentRow.Cells("Jumlah").Value = 0
Dim
Pencari As New
ByIskandar.CariKeDataBaseByIskandar
Pencari.AturPencarianDataBase("barang", "kodebarang",
dgv46110022.CurrentRow.Cells("kodebarang").Value,
1, alfa)
If
Pencari.JumlanBaris > 0 Then
dgv46110022.CurrentRow.Cells("kodebarang").Value =
Pencari.DataTablenya.Rows(0).Item(0)
dgv46110022.CurrentRow.Cells("namabarang").Value =
Pencari.DataTablenya.Rows(0).Item(1)
Else
MsgBox("the
data is not found")
If
Latihan_38_39_40_46110022.ShowDialog = Windows.Forms.DialogResult.OK Then
dgv46110022.CurrentRow.Cells("kodebarang").Value =
Latihan_38_39_40_46110022.dgv46110022.CurrentRow.Cells("KodeBarang").Value
dgv46110022.CurrentRow.Cells("Namabarang").Value
= Latihan_38_39_40_46110022.dgv46110022.CurrentRow.Cells("namabarang").Value
End
If
End
If
ElseIf
e.ColumnIndex = 2 Or e.ColumnIndex = 3 Then
dgv46110022.CurrentRow.Cells("jumlah").Value =
dgv46110022.CurrentRow.Cells("unit").Value
* dgv46110022.CurrentRow.Cells("harga").Value
noldi()
End If
End Sub
Private Sub simpan46110022_Click(ByVal
sender As System.Object, ByVal e As
System.EventArgs) Handles simpan46110022.Click
If
no46110022.Text.Length = 0 Then
MsgBox("Please,
insert the Number of the transaction")
Exit
Sub
End If
If
jenis46110022.Text.Length = 0 Then
MsgBox("Please,
insert the type of the transaction")
Exit
Sub
End If
If
ega.Rows.Count = 0 Then
MsgBox("the
data is none")
Exit
Sub
End If
Dim
search As New
ByIskandar.CariKeDataBaseByIskandar
search.AturPencarianDataBase("mastertransaksi", "notrans", no46110022.Text, 1, alfa)
If
search.JumlanBaris > 0 Then
MsgBox("the
code has been exist")
Exit
Sub
End If
Dim
kacci As New
OleDb.OleDbCommand
kacci = New
OleDb.OleDbCommand("insert into
mastertransaksi (notrans,tanggaltransaksi,jenistransaksi) values ('"
& no46110022.Text & "',#"
& tgl46110022.Value.Month & "/"
& tgl46110022.Value.Day & "/"
& tgl46110022.Value.Year & "#,'"
& jenis46110022.Text & "')",
alfa)
alfa.Open()
kacci.ExecuteNonQuery()
alfa.Close()
For Each syg As DataRow In
ega.Rows
kacci = New
OleDb.OleDbCommand("insert into
detailtransaksi (notrans,kodebarang,unit,harga) values ('" &
no46110022.Text & "','" &
syg("kodebarang") & "'," & syg("unit")
& "," & syg("harga") & ")",
alfa)
alfa.Open()
kacci.ExecuteNonQuery()
alfa.Close()
Next
kacci.Dispose()
no46110022.Text = ""
jenis46110022.Text = ""
ega.Rows.Clear()
Me.Close()
End Sub
End Class
5. Jalankan program dengan cara mengklik start debugging seperti berikut
:
6. Setelah menekan start debug, maka akan tampil hasil dari latihan 39 seperti
berikut :
7.
Selamat mencoba, semoga berhasil :)