Jumat, 02 Desember 2011

LATIHAN 36

Public Class LATIHAN_036_361_09_075
    Dim PUTRY As New OleDb.OleDbConnection("Provider=microsoft.ACE.OLEDB.12.0;data source=" & Application.StartupPath & "\DataMajemuk.accdb")
    Dim tb As New DataTable
    Dim tr As DataRow

    Private Sub LATIHAN_036_361_09_075_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Dim Z As New OleDb.OleDbDataAdapter
        Z = New OleDb.OleDbDataAdapter("Select KODEBARANG, UNIT, HARGA from DETAILTRANSAKSI WHERE NOTRANS= '" & NT075.Text & "'", PUTRY)
        Z.Fill(tb)
        Z.Dispose()

        Dim dataPrimary(1) As DataColumn
        dataPrimary(0) = tb.Columns("KODEBARANG")
        tb.PrimaryKey = dataPrimary

        DGV075.DataSource = tb

    End Sub

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles tambah.Click
        'a'
        If KB075.Text.Length = 0 Then
            MsgBox("Kode barang sudah ada")
            Exit Sub
        End If

        If Val(U075.Text) = 0 Then
            MsgBox("Masukkan Harga barang")
            Exit Sub
        End If

        If Val(HRG075.Text) = 0 Then
            MsgBox("Masukkan jumlah barang")
            Exit Sub
        End If

        'b'
        tr = tb.Rows.Find(KB075.Text)

        If tr Is Nothing Then
            tr = tb.NewRow
            tr("KODEBARANG") = KB075.Text
        Else
            MsgBox("Maaf kode barang sudah ada")
            Exit Sub
        End If

        'c'
        tr = tb.NewRow
        tr("KODEBARANG") = KB075.Text
        tr("UNIT") = U075.Text
        tr("HARGA") = HRG075.Text

        tb.Rows.Add(tr)

        'd'
        KB075.Text = ""
        U075.Text = ""
        HRG075.Text = ""


    End Sub

    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles simpan.Click
        'a'
        If NT075.Text.Length = 0 Then
            MsgBox("No. transaksi sudah ada")
            Exit Sub
        End If

        If JT075.Text.Length = 0 Then
            MsgBox("Jenis transaksi sudah ada")
            Exit Sub
        End If

        'b'
        If tb.Rows.Count = 0 Then
            MsgBox("Jumlah baris tidak terisi")
            Exit Sub
        End If

        'c'
        Dim pencari As New ByIskandar.CariKeDataBaseByIskandar
        pencari.AturPencarianDataBase("MASTERTRANSAKSI", "NOTRANS", NT075.Text, 1, PUTRY)
        If pencari.JumlanBaris > 0 Then
            MsgBox("data tersebut sudah ada")
            Exit Sub
        End If

        'd'
        Dim WH As New OleDb.OleDbCommand
        WH = New OleDb.OleDbCommand("INSERT INTO MASTERTRANSAKSI (NOTRANS, TANGGALTRANSAKSI, JENISTRANSAKSI) VALUES ('" & NT075.Text & "', #" & DTP075.Value.Month & "/" & DTP075.Value.Day & "/" & DTP075.Value.Year & "#, '" & JT075.Text & "')", PUTRY)
        PUTRY.Open()
        WH.ExecuteNonQuery()
        PUTRY.Close()

        'e'
        For Each Z As DataRow In tb.Rows
            WH = New OleDb.OleDbCommand("INSERT INTO DETAILTRANSAKSI (NOTRANS, KODEBARANG, UNIT, HARGA) VALUES ('" & NT075.Text & "','" & Z("KODEBARANG") & "', " & Z("UNIT") & ", " & Z("HARGA") & ")", PUTRY)
            PUTRY.Open()
            WH.ExecuteNonQuery()
            PUTRY.Close()
            WH.Dispose()
        Next

        'f'
        NT075.Text = ""
        JT075.Text = ""

        'g'
        tb.Rows.Clear()


    End Sub
End Class

Tidak ada komentar:

Posting Komentar