Jumat, 02 Desember 2011

LATIHAN 03936109060

Public Class latihan03936109060
    Dim A As New OleDb.OleDbConnection("Provider=microsoft.ACE.OLEDB.12.0;data source=" & Application.StartupPath & "\DATAMAJEMUK.accdb")
    Dim dt As New DataTable


    Private Sub latihan03936109060_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Dim X As New OleDb.OleDbDataAdapter
        X = 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= '" & NT.Text & "'", A)
        X.Fill(dt)
        X.Dispose()

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

        DGV060.DataSource = dt
    End Sub
    Private Sub TOTALJUMLAH()
        Dim TOT As Double = 0
        For Each x As DataRow In dt.Rows
            TOT = TOT + x("JUMLAH")
        Next
        TOTAL.Text = TOT


    End Sub

    Private Sub DGV060_CellContentClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles DGV060.CellContentClick
        If DGV060.Columns(e.ColumnIndex).Name = "KODEBARANG" Then
            'Cari nama barang'
            DGV060.CurrentRow.Cells("NAMABARANG").Value = ""
            DGV060.CurrentRow.Cells("UNIT").Value = 0
            DGV060.CurrentRow.Cells("HARGA").Value = 0
            DGV060.CurrentRow.Cells("JUMLAH").Value = 0

            Dim Pencari As New ByIskandar.CariKeDataBaseByIskandar
            Pencari.AturPencarianDataBase("BARANG", "KODEBARANG", DGV060.CurrentRow.Cells("KODEBARANG").Value, 1, A)
            'Menampilkan nama barang jika isi kolom kodebarang ditemukan oleh proses diatas'
            If Pencari.JumlanBaris > 0 Then
                DGV060.CurrentRow.Cells("NAMABARANG").Value = Pencari.DataTablenya.Rows(0).Item("NAMABARANG")
            Else
                DGV060.CurrentRow.Cells("KODEBARANG").Value = ""
                If Latihan038394036109060.ShowDialog = Windows.Forms.DialogResult.OK Then
                    DGV060.CurrentRow.Cells("KODEBARANG").Value = Latihan038394036109060.sarce.CurrentRow.Cells("KODEBARANG").Value
                    DGV060.CurrentRow.Cells("NAMABARANG").Value = Latihan038394036109060.sarce.CurrentRow.Cells("NAMABARANG").Value
                End If
            End If

        ElseIf DGV060.Columns(e.ColumnIndex).Name = "UNIT" Or DGV060.Columns(e.ColumnIndex).Name = "HARGA" Then
            DGV060.CurrentRow.Cells("JUMLAH").Value = DGV060.CurrentRow.Cells("UNIT").Value * DGV060.CurrentRow.Cells("HARGA").Value

            TOTALJUMLAH()
        End If
    End Sub

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

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

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

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

        Dim CM As New OleDb.OleDbCommand
        CM = New OleDb.OleDbCommand("INSERT INTO MASTERTRANSAKSI (NOTRANS, TANGGALTRANSAKSI, JENISTRANSAKSI) VALUES ('" & NT.Text & "', #" & tgl.Value.Month & "/" & tgl.Value.Day & "/" & tgl.Value.Year & "#, '" & jt.Text & "')", A)
        A.Open()
        CM.ExecuteNonQuery()
        A.Close()

        For Each X As DataRow In dt.Rows
            CM = New OleDb.OleDbCommand("INSERT INTO DETAILTRANSAKSI (NOTRANS, KODEBARANG, UNIT, HARGA) VALUES ('" & NT.Text & "','" & X("KODEBARANG") & "'," & X("UNIT") & ", " & X("HARGA") & ")", A)
            A.Open()
            CM.ExecuteNonQuery()
            A.Close()
            CM.Dispose()
        Next

        NT.Text = ""
        jt.Text = ""

        dt.Rows.Clear()

    End Sub
End Class

Tidak ada komentar:

Posting Komentar