Deskripsi
penyelesaian
Form
Latihan_36_36110034
terdapat dua object yaitu DataGreatView ,button, lebel, textbox, dan datetimepeker
:
Object lebel
Terdapat enam objek lebel yang
bertuliskan ( No.transaksi, tanggal, jenis transaksi, kode barang, unit, harga).
Object textbox
Terdapat lima textbox yang bertuliskan (
No.transaksi, tanggal, jenis transaksi, kode barang, unit, harga).
Dimana text box ini berstatus input dan dapat memasukkan data.
Object datetimepeker
Terdapat satu objek datetimepeker yang berfungsi sebagai penyedia tanggal
secara kalender.
Object DataGreatview
Terdapat satu object datagreatview yang akan menampilkan table yang
kolomnya berasal dari datamajemuk ,
yaitu kode barang ,unit, dan harga yang datanya berasal dari tabel DETAIL
TRANSAKSI yang sebulumnya tersedia dan hanya
dapat dilihat dengan menggunakan MS. Access.
Object Button
Terdapat dua objek button yang bertuliskan TAMBAH dan SIMPAN. tombol tambah
jika di klik akan menambah data pada
table yang terdapat dalam datagreatview yang sebelumnya telah di input di
setiap textbox, sedangkan tombol simpan jika di klik akan menyimpan perubahan
terjadi pada form tersebut seperti penambahan data pada table.
Script Unique
Buttom
"Tambah”
If KB_36110034.Text.Length = 0 Then
MsgBox("kode
barang tidak terisi")
ElseIf
Val(UN_36110034.Text) = 0 Then
MsgBox("unit
tidak terisi")
ElseIf
Val(HAR_36110034.Text) = 0 Then
MsgBox("harga
barang tidak terisi")
Exit
Sub
End If
Dim dt As DataRow
dt = dini.Rows.Find(KB_36110034.Text)
If dt Is Nothing Then
dt = dini.NewRow
dt("KODEBARANG")
= KB_36110034.Text
dt("UNIT")
= UN_36110034.Text
dt("HARGA")
= HAR_36110034.Text
dini.Rows.Add(dt)
KB_36110034.Text = ""
UN_36110034.Text = ""
HAR_36110034.Text = ""
Else
MsgBox("kode
barang telah terdaftar,")
End If
End Sub
Buttom
"Simpan”
If NT_36110034.Text.Length = 0 Then
MsgBox("nomor
transaksi harus terisi")
ElseIf
Val(JT_36110034.Text) = 0 Then
MsgBox("jenis
transaksi harus terisi")
ElseIf
dini.Rows.Count = 0 Then
MsgBox("data
tabel tidak boleh kosong")
Exit
Sub
End If
andini.AturPencarianDataBase("MASTERTRANSAKSI", "NOTRANS", NT_36110034.Text, 1, ardian)
If
andini.JumlanBaris > 0 Then
MsgBox("nomor
transaksi telah ada")
Exit
Sub
End If
Dim
kusuma As New
OleDb.OleDbCommand
kusuma = New
OleDb.OleDbCommand("insert into
MASTERTRANSAKSI(NOTRANS, TANGGALTRANSAKSI, JENISTRANSAKSI) values ('"
& NT_36110034.Text & "', #"
& TGL_36110034.Value.Month & "/"
& TGL_36110034.Value.Day & "/"
& TGL_36110034.Value.Year & "#,'"
& JT_36110034.Text & "')",
ardian)
ardian.Open()
kusuma.ExecuteNonQuery()
ardian.Close()
For Each X As DataRow In dini.Rows
kusuma = New
OleDb.OleDbCommand("insert into
DETAILTTRANSAKSI(NOTRANS, KODEBARANG, UNIT, HARGA) values ('" &
NT_36110034.Text & "','" &
X("KODEBARANG") & "','" & X("UNIT")
& "','" & X("HARGA") & "')",
ardian)
ardian.Open()
kusuma.ExecuteNonQuery()
ardian.Close()
Next
kusuma.Dispose()
NT_36110034.Text = ""
JT_36110034.Text = ""
dini.Rows.Clear()
End Sub
End Class
Property
Property
Datagreatview => name => ok
Prosedur penyelesaian
1.
buka project yang telah dibuat
sebelumnya klik add new item => add windows form => ganti nama project
=> add.
2.
membuat
form dengan menggunakan
DataGreatView,button, lebel, textbox, dan datetimepeker yang
ada dalam "Toolbox”.
3.
ganti nama textbox dan
button menggunakan "Properties Window".
4. membuka lembar vb Masukkan rumus berikut untuk
menyelesaikan latihan_36_36110034.
Public Class latihan_36_36110034
Dim andini As
New ByIskandar.CariKeDataBaseByIskandar
Dim ardian As
New OleDb.OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data
Source=" & Application.StartupPath & "\DataMajemuk.accdb;jet oledb:database
password=2304")
Dim dini As
New DataTable
Private Sub
latihan_36_36110034_Load(ByVal sender As Object, ByVal e As
System.EventArgs) Handles Me.Load
Dim aw As
New OleDb.OleDbDataAdapter
aw = New OleDb.OleDbDataAdapter("select KODEBARANG, UNIT, HARGA from DETAILTRANSAKSI
where NOTRANS = '" & NT_36110034.Text & "'", ardian)
aw.Fill(dini)
aw.Dispose()
DGV_36110034.DataSource = dini
Dim dian(1) As
DataColumn
dian(0) = dini.Columns("KODEBARANG")
dini.PrimaryKey = dian
End Sub
Private Sub
TAM_36110034_Click(ByVal sender As Object, ByVal e As
System.EventArgs) Handles TAM_36110034.Click
If KB_36110034.Text.Length = 0 Then
MsgBox("kode
barang tidak terisi")
ElseIf Val(UN_36110034.Text) = 0 Then
MsgBox("unit
tidak terisi")
ElseIf Val(HAR_36110034.Text) = 0 Then
MsgBox("harga
barang tidak terisi")
Exit
Sub
End If
Dim dt As
DataRow
dt = dini.Rows.Find(KB_36110034.Text)
If dt Is
Nothing Then
dt = dini.NewRow
dt("KODEBARANG")
= KB_36110034.Text
dt("UNIT")
= UN_36110034.Text
dt("HARGA")
= HAR_36110034.Text
dini.Rows.Add(dt)
KB_36110034.Text = ""
UN_36110034.Text = ""
HAR_36110034.Text = ""
Else
MsgBox("kode
barang telah terdaftar,")
End If
End Sub
Private Sub
SIM_36110034_Click(ByVal sender As Object, ByVal e As
System.EventArgs) Handles SIM_36110034.Click
If NT_36110034.Text.Length = 0 Then
MsgBox("nomor
transaksi harus terisi")
ElseIf Val(JT_36110034.Text) = 0 Then
MsgBox("jenis
transaksi harus terisi")
ElseIf dini.Rows.Count = 0 Then
MsgBox("data
tabel tidak boleh kosong")
Exit
Sub
End If
andini.AturPencarianDataBase("MASTERTRANSAKSI",
"NOTRANS", NT_36110034.Text, 1,
ardian)
If andini.JumlanBaris > 0 Then
MsgBox("nomor
transaksi telah ada")
Exit
Sub
End If
Dim kusuma As
New OleDb.OleDbCommand
kusuma = New OleDb.OleDbCommand("insert into MASTERTRANSAKSI(NOTRANS,
TANGGALTRANSAKSI, JENISTRANSAKSI) values ('" & NT_36110034.Text
& "', #" &
TGL_36110034.Value.Month & "/"
& TGL_36110034.Value.Day & "/"
& TGL_36110034.Value.Year & "#,'"
& JT_36110034.Text & "')",
ardian)
ardian.Open()
kusuma.ExecuteNonQuery()
ardian.Close()
For Each
X As DataRow In
dini.Rows
kusuma = New
OleDb.OleDbCommand("insert into DETAILTTRANSAKSI(NOTRANS,
KODEBARANG, UNIT, HARGA) values ('" & NT_36110034.Text & "','" & X("KODEBARANG")
& "','" & X("UNIT") & "','"
& X("HARGA") & "')", ardian)
ardian.Open()
kusuma.ExecuteNonQuery()
ardian.Close()
Next
kusuma.Dispose()
NT_36110034.Text = ""
JT_36110034.Text = ""
dini.Rows.Clear()
End Sub
End Class
5. Jalankan
program dengan “start debugging”.
Tidak ada komentar:
Posting Komentar