Kamis, 01 Desember 2011

Latihan 37


Public Class Form3736109062
    Dim dt As New DataTable
    Dim urim As New ByIskandar.CariKeDataBaseByIskandar
    Dim fani As New OleDb.OleDbCommand
    Dim KJS As New OleDb.OleDbConnection("PROVIDER = MICROSOFT.ACE.OLEDB.12.0; DATA SOURCE =" & Application.StartupPath & "/DataMajemuk.ACCDB")

    Private Sub Form3736109062_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Dim b As New OleDb.OleDbDataAdapter
        b = New OleDb.OleDbDataAdapter(" select BARANG.KODEBARANG, BARANG.NAMABARANG,DETAILTRANSAKSI.UNIT,DETAILTRANSAKSI.HARGA, DETAILTRANSAKSI.UNIT*DETAILTRANSAKSI.HARGA AS JUMLAH from DETAILTRANSAKSI INNER JOIN BARANG ON DETAILTRANSAKSI.KODEBARANG = BARANG.KODEBARANG where notrans = '" & nt062.Text & "'", KJS)
        b.Fill(dt)
        b.Dispose()

        dgv062.DataSource = dt

        Dim dc(1) As DataColumn
        dc(0) = dt.Columns("kodebarang")
        dt.PrimaryKey = dc
    End Sub

    Private Sub okta()
        Dim okta1 As Integer = 0
        For Each okta2 As DataRow In dt.Rows
            okta1 += okta2("jumlah")
        Next
        tot.Text = okta1
    End Sub

    Private Sub un062_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles un062.TextChanged
        jm.Text = Val(un062.Text) * Val(hr062.Text)
    End Sub

    Private Sub kb062_leave(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles kb062.Leave
        If kb062.Text.Length = 0 Then
              Exit Sub
        End If
        urim.AturPencarianDataBase("barang", "kodebarang", kb062.Text, 1, KJS)
        If urim.JumlanBaris > 0 Then
            kb062.Text = urim.DataTablenya.Rows(0).Item("KODEBARANG")
            gg.Text = urim.DataTablenya.Rows(0).Item("NAMABARANG")
        Else
            MsgBox("Kode barang tidak ada")
            Exit Sub
        End If
    End Sub


    Private Sub kb062_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles kb062.TextChanged
        gg.Text = ""
        un062.Text = ""
        hr062.Text = ""
    End Sub

    Private Sub tm062_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles tm062.Click
        If kb062.Text.Length = 0 Then
            MsgBox("silahkan isi kode barangnya")
            Exit Sub
        End If

        If gg.Text.Length = 0 Then
            MsgBox("silahkan isi nama barangnya")
        End If


        If Val(un062.Text) = 0 Then
            MsgBox("silahkan isi unitnya")
            Exit Sub
        End If

        If Val(hr062.Text) = 0 Then
            MsgBox("silahkan isi harganya")
            Exit Sub
        End If

        Dim dr As DataRow
        dr = dt.Rows.Find(kb062.Text)
        If dr Is Nothing Then
            dr = dt.NewRow
            dr("KODEBARANG") = kb062.Text
            dr("NAMABARANG") = gg.Text
            dr("UNIT") = Val(un062.Text)
            dr("HARGA") = Val(hr062.Text)
            dr("jumlah") = Val(jm.Text)

            dt.Rows.Add(dr)

            kb062.Text = ""
            un062.Text = ""
            hr062.Text = ""

        Else
            MsgBox("kode barang sudah ada")

        End If
        okta()

    End Sub

    Private Sub s062_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles s062.Click
        If nt062.Text.Length = 0 Then
            MsgBox("silahkan isi no transaksi")
            Exit Sub
        End If

        If jt062.Text.Length = 0 Then
            MsgBox("silahkan isi jenis transaksi")
            Exit Sub
        End If

        If dt.Rows.Count = 0 Then
            MsgBox("silahkan isi data table")
            Exit Sub
        End If


        urim.AturPencarianDataBase("mastertransaksi", "notrans", nt062.Text, 1, KJS)
        If urim.JumlanBaris > 0 Then
            MsgBox("notrans sudah ada")
            Exit Sub
        End If

        fani = New OleDb.OleDbCommand("insert into mastertransaksi ( notrans, tanggaltransaksi, jenistransaksi)values ('" & nt062.Text & "' ,#" & cc.Value.Month & "/" & cc.Value.Day & "/" & cc.Value.Year & "#, '" & jt062.Text & "')", KJS)
        KJS.Open()
        fani.ExecuteNonQuery()
        KJS.Close()

        For Each x As DataRow In dt.Rows
            fani = New OleDb.OleDbCommand("insert into detailtransaksi ( notrans, kodebarang, unit, harga) values ('" & nt062.Text & "','" & x("kodebarang") & "','" & x("unit") & "','" & x("harga") & "')", KJS)
            KJS.Open()
            fani.ExecuteNonQuery()
            KJS.Close()

        Next
        fani.Dispose()

        nt062.Text = ""
        jt062.Text = ""

        dt.Rows.Clear()
        okta()



    End Sub

    Private Sub hr062_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles hr062.TextChanged
        jm.Text = Val(un062.Text) * Val(hr062.Text)
    End Sub
End Class

Tidak ada komentar:

Posting Komentar