Deskripsi Form Latihan 40A dan 40B
*Pada Latihan_40A_46110037 terdapat 2 object yaitu DataGridView
dan Button.
*Pada Latihan_40B_46110037 Terdapat 5 object yaitu Label;
DataGridView; DateTimePicker, Textbox; Buttondan ToolStrip.
Object DataGridView
*Pada Latihan_40A_46110037 terdapat 2 DataDridView yang akan menampilkan data table.
*Pada Laatihan_40B_46110037 Terdapat 1 DataGridView yang
akan menampilkan data table.
Object Button
*Pada Latihan_40A_46110037 terdapat 3 button yaitu Tombol Delete, Add dan Edit. Ketika Tombol
Add atau Edit di click maka Form Latihan_40B_46110037 akan muncul.
*Pada Latihan_40B_46110037 terdapat 1 button yaitu tombol Save. Apabila tombol ini diclick
maka data yang di input akan tersimpan pada form yang telah ditentukan.
Object Label
*Pada Latihan_40B_46110037 terdapat 4 Label yaitu
No.Transaksi; Tanggal; Jenis Transaksi dan Total
Object StatusStrip
*Pada Latihan_40B_46110037 terdapat 1 StatusStrip yaitu No. Transaksi Lama
Object Textbox
*Pada Latihan_40B_46110037 terdapat 2 textbox yang berstatus Input yaitu No.Transaksi; Jenis Transaksi; sedangkan
Textbox yang berstatus ReadOnly Total
Script Unique
Tidak ada script unique pada latihan ini karena scriptnya
hampir sama dengan Latihan-latihan sebelumnya
Even
Load
Property
Default
Langkah-Langkah Menjalankan Form Latihan
40A dan 40B
Click Start Debugging untuk menjalankan Script Latihan_40A_46110037,
kemudian click tombol “Delete” maka data yang dipilih akan terhapus. Jika
tombol “Add”, maka Form Latihan_40B_46110037 akan muncul, setelah itu input
data pada form Latihan_40B_46110037 kemudian click tombol “Save”, maka data
akan tersimpan. Click tombol “Edit” , maka Form Latihan_40B_46110037 akan
muncul, kemudian ubahlah data yang ingin diedit click save untuk menyimpan
data.
Langkah-langkah
Menyelesaikan Form Latihan 40A dan 40B
- Buka project yang telah dibuat.
- Buat form baru, caranya click Project pada Toolbar pilih Add Windows Form
kemudian ketik nama form yang diinginkan lalu click Add
- Buat desain form seperti gambar di atas (Latihan_40A_46110037 dan Latihan_40B_46110037) dengan
menggunakan DataGridView, Textbox, Label; StatusStrip; DateTime Picker dan
Button
- Ganti nama DataGridView, Textbox, StatusStrip; dan DateTimePicker Button di
properties-Name,
- Click Kanan pada design Latihan_40A_46110037 lalu pilih View Code kemudian buatlah
Script seperti dibawah ini:
Public Class LATIHAN_40A_46110037
Dim go As New OleDb.OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data
Source =" & Application.StartupPath & "\Datamajemuk.ACCDB")
Dim INNAdetail As New DataTable
Dim INNAmaster As New DataTable
Dim MUTHMILDS As New DataSet
Dim bsdetail As New BindingSource
Dim bsmaster As New BindingSource
Public Sub grabdata()
INNAdetail.Rows.Clear()
INNAmaster.Rows.Clear()
Dim master As New OleDb.OleDbDataAdapter
master = New OleDb.OleDbDataAdapter("select*
from mastertransaksi", go)
master.Fill(INNAmaster)
master.Dispose()
Dim detail As New OleDb.OleDbDataAdapter
detail = New OleDb.OleDbDataAdapter("select*
from detailtransaksi", go)
detail.Fill(INNAdetail)
detail.Dispose()
End Sub
Private Sub
Latihan40a_083_Load(ByVal sender As System.Object, ByVal
e As System.EventArgs) Handles
MyBase.Load
grabdata()
INNAmaster.TableName = "YUHA"
INNAdetail.TableName = "RIRIN"
Look146110037.DataSource = bsmaster
Look246110037.DataSource = bsdetail
MUTHMILDS.Tables.Add(INNAmaster)
MUTHMILDS.Tables.Add(INNAdetail)
MUTHMILDS.Relations.Add(New
DataRelation("relasi",
MUTHMILDS.Tables("YUHA").Columns("notrans"), MUTHMILDS.Tables("RIRIN").Columns("notrans")))
bsmaster.DataSource
= MUTHMILDS
bsmaster.DataMember = "YUHA"
bsdetail.DataSource = bsmaster
bsdetail.DataMember = "relasi"
End Sub
Private Sub
Ganti_Click(ByVal sender As System.Object, ByVal
e As System.EventArgs) Handles
Ganti46110037.Click
LATIHAN_40B_46110037.Show()
LATIHAN_40B_46110037.replace.Text = Look146110037.CurrentRow.Cells("notrans").Value
LATIHAN_40B_46110037.NT46110037.Text = Look146110037.CurrentRow.Cells("notrans").Value
LATIHAN_40B_46110037.DTP46110037.Text
= Look146110037.CurrentRow.Cells("tanggaltransaksi").Value
LATIHAN_40B_46110037.JT46110037.Text = Look146110037.CurrentRow.Cells("jenistransaksi").Value
LATIHAN_40B_46110037.makecolumn()
LATIHAN_40B_46110037.HITUNG()
End Sub
Private Sub
Tambah_Click(ByVal sender As System.Object, ByVal
e As System.EventArgs) Handles
Tambah46110037.Click
LATIHAN_40B_46110037.Show()
LATIHAN_40B_46110037.NT46110037.Text = ""
LATIHAN_40B_46110037.JT46110037.Text = ""
LATIHAN_40B_46110037.replace.Text = "-"
LATIHAN_40B_46110037.makecolumn()
End Sub
Private Sub
Hapus_Click(ByVal sender As System.Object, ByVal
e As System.EventArgs) Handles
Hapus46110037.Click
If MsgBox("seriously
want to delete the record???", MsgBoxStyle.YesNo) = MsgBoxResult.No
Then
Exit Sub
End If
Dim MOBIL As New OleDb.OleDbCommand
MOBIL = New OleDb.OleDbCommand("delete*
from mastertransaksi where notrans='" &
Look146110037.CurrentRow.Cells("notrans").Value
& "'", go)
go.Open()
MOBIL.ExecuteNonQuery()
go.Close()
MOBIL = New OleDb.OleDbCommand("delete*
from detailtransaksi where notrans='" &
Look146110037.CurrentRow.Cells("notrans").Value
& "'", go)
go.Open()
MOBIL.ExecuteNonQuery()
go.Close()
grabdata()
End Sub
End Class
- Selesaikan juga Script pada Latihan_40B_46110037dengan
cara:
- Pilih design form Latihan_40B_46110037,
kemudian Click kanan dan pilih View Code, setelah itu ketik script seperti
dibawah ini:
Public Class LATIHAN_40B_46110037
Dim Jalan As New OleDb.OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data
Source =" & Application.StartupPath & "\Datamajemuk.ACCDB")
Dim INNA As New DataTable
Dim baru(1) As
DataColumn
Public Sub HITUNG()
Dim ttotal As Integer
For Each hasil As DataRow In
INNA.Rows
ttotal +=
hasil("Jumlah")
Next
Total46110037.Text = ttotal
End Sub
Public Sub
makecolumn()
Dim MOTOR As New OleDb.OleDbDataAdapter
MOTOR = 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='" & NT46110037.Text & "'", Jalan)
INNA.Rows.Clear()
MOTOR.Fill(INNA)
MOTOR.Dispose()
INNA.Columns("Kodebarang").DefaultValue = ""
INNA.Columns("NamaBarang").DefaultValue = ""
INNA.Columns("unit").DefaultValue = 0
INNA.Columns("harga").DefaultValue = 0
INNA.Columns("jumlah").DefaultValue = 0
INNA.Columns("NamaBarang").ReadOnly = True
baru(0) =
INNA.Columns("kodebarang")
INNA.PrimaryKey
= baru
Showme46110037.DataSource
= INNA
End Sub
Private Sub
LATIHAN_40B_46110037_Load(ByVal sender As System.Object, ByVal
e As System.EventArgs) Handles
MyBase.Load
makecolumn()
End Sub
Private Sub
Showme46110037_CellEndEdit(ByVal sender As System.Object, ByVal
e As
System.Windows.Forms.DataGridViewCellEventArgs) Handles
Showme46110037.CellEndEdit
If e.ColumnIndex = 0 Then
Showme46110037.CurrentRow.Cells("NamaBarang").Value
= ""
Showme46110037.CurrentRow.Cells("Unit").Value
= 0
Showme46110037.CurrentRow.Cells("harga").Value
= 0
Showme46110037.CurrentRow.Cells("Jumlah").Value
= 0
Dim Pencari As New ByIskandar.CariKeDataBaseByIskandar
Pencari.AturPencarianDataBase("barang",
"kodebarang",
Showme46110037.CurrentRow.Cells("kodebarang").Value,
1, Jalan)
If Pencari.JumlanBaris > 0 Then
Showme46110037.CurrentRow.Cells("kodebarang").Value
= Pencari.DataTablenya.Rows(0).Item(0)
Showme46110037.CurrentRow.Cells("namabarang").Value
= Pencari.DataTablenya.Rows(0).Item(1)
Else
MsgBox("the data is not found")
If LATIHAN_383940_46110037.ShowDialog = Windows.Forms.DialogResult.OK
Then
Showme46110037.CurrentRow.Cells("kodebarang").Value
= LATIHAN_383940_46110037.view46110037.CurrentRow.Cells("KodeBarang").Value
Showme46110037.CurrentRow.Cells("Namabarang").Value
= LATIHAN_383940_46110037.view46110037.CurrentRow.Cells("namabarang").Value
End If
End If
ElseIf e.ColumnIndex = 2 Or
e.ColumnIndex = 3 Then
Showme46110037.CurrentRow.Cells("jumlah").Value
= Showme46110037.CurrentRow.Cells("unit").Value
* Showme46110037.CurrentRow.Cells("harga").Value
HITUNG()
End If
End Sub
Private Sub
Simpan46110037_Click(ByVal sender As System.Object, ByVal
e As System.EventArgs) Handles
Simpan46110037.Click
If NT46110037.Text.Length = 0 Then
MsgBox("Please, insert the Number of the transaction")
Exit Sub
End If
If JT46110037.Text.Length = 0 Then
MsgBox("Please, insert the type of the transaction")
Exit
Sub
End If
If INNA.Rows.Count = 0 Then
MsgBox("the data is none")
Exit Sub
End If
If replace.Text <> NT46110037.Text Then
Dim PENCARI As New ByIskandar.CariKeDataBaseByIskandar
PENCARI.AturPencarianDataBase("mastertransaksi",
"notrans", NT46110037.Text, 1,
Jalan)
If PENCARI.JumlanBaris > 0 Then
MsgBox("The data has been exist please insert new
data")
Exit
Sub
End If
End If
Dim data As Integer = Val(replace.Text)
Dim MOBIL As New OleDb.OleDbCommand
MOBIL = New OleDb.OleDbCommand("delete
* from mastertransaksi where notrans='" & replace.Text & "'", Jalan)
Jalan.Open()
MOBIL.ExecuteNonQuery()
Jalan.Close()
MOBIL = New OleDb.OleDbCommand("delete
* from detailtransaksi where notrans='" & replace.Text & "'", Jalan)
Jalan.Open()
MOBIL.ExecuteNonQuery()
Jalan.Close()
MOBIL = New OleDb.OleDbCommand("insert
into mastertransaksi (notrans,tanggaltransaksi,jenistransaksi) values ('"
& NT46110037.Text & "',#"
& DTP46110037.Value.Month & "/"
& DTP46110037.Value.Day & "/"
& DTP46110037.Value.Year & "#,'"
& JT46110037.Text & "')",
Jalan)
Jalan.Open()
MOBIL.ExecuteNonQuery()
Jalan.Close()
For Each MUTH As DataRow In
INNA.Rows
MOBIL = New OleDb.OleDbCommand("insert
into detailtransaksi (notrans,kodebarang,unit,harga) values ('"
& NT46110037.Text & "','"
& MUTH("kodebarang") & "'," & MUTH("unit")
& "," & MUTH("harga") & ")",
Jalan)
Jalan.Open()
MOBIL.ExecuteNonQuery()
Jalan.Close()
Next
MOBIL.Dispose()
NT46110037.Text
= ""
JT46110037.Text
= ""
INNA.Rows.Clear()
LATIHAN_40A_46110037.grabdata()
Me.Close()
End Sub
End Class
- Save dan Click Start Debugging untuk menjalankan form
Tidak ada komentar:
Posting Komentar