Sabtu, 27 Oktober 2012

Latihan_36_36110034


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