Jumat, 02 Desember 2011

APKOM 4 (Latihan 36)


LATIHAN 36

Public Class Latihan36_36109005
    Dim CONECT As New OleDb.OleDbConnection("provider=microsoft.ace.oledb.12.0;data source= " & Application.StartupPath & "\DATAMAJEMUK.accdb;Jet OLEDB:Database Password=25")
    Dim DT As New DataTable
    Dim com As New OleDb.OleDbCommand
    Dim cari As New ByIskandar.CariKeDataBaseByIskandar
    Private Sub Latihan35_36109005_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Dim IMMI As New OleDb.OleDbDataAdapter
        IMMI = New OleDb.OleDbDataAdapter("select KODEBARANG, UNIT, HARGA FROM DETAILTRANSAKSI WHERE NOTRANS= '" & NT_36109005.Text & "'", CONECT)
        IMMI.Fill(DT)
        IMMI.Dispose()

        DGV_36109005.DataSource = DT

        Dim DC(1) As DataColumn
        DC(0) = DT.Columns("Kodebarang")
        DT.PrimaryKey = DC
    End Sub
    Private Sub Tambah_36109005_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Tambah_36109005.Click
        If KB_36109005.Text.Length = 0 Then
            MsgBox("kode barang belum terisi")
        ElseIf Val(U_36109005.Text) = 0 Then
            MsgBox("Unit belum terisi")
        ElseIf Val(H_36109005.Text) = 0 Then
            MsgBox("Harga barang belum terisi")
            Exit Sub
        End If

        Dim drzany As DataRow
        drzany = DT.Rows.Find(KB_36109005.Text)
        If drzany Is Nothing Then
            drzany = DT.NewRow
            drzany("KODEBARANG") = KB_36109005.Text
            drzany("UNIT") = U_36109005.Text
            drzany("HARGA") = H_36109005.Text

            DT.Rows.Add(drzany)

            KB_36109005.Text = ""
            U_36109005.Text = ""
            H_36109005.Text = ""
        Else
            MsgBox("Kode barang telah ada")
        End If

    End Sub
    Private Sub Simpan_36109005_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Simpan_36109005.Click
        If NT_36109005.Text.Length = 0 Then
            MsgBox("no.transaksi belum terisi")
        ElseIf JT_36109005.Text.Length = 0 Then
            MsgBox("jenis transaksi belum terisi")
        ElseIf DT.Rows.Count = 0 Then
            MsgBox("Data table tidak boleh kosong")
            Exit Sub
        End If

        cari.AturPencarianDataBase("mastertransaksi", "notrans", NT_36109005.Text, 1, CONECT)
        If cari.JumlanBaris > 0 Then
            MsgBox("NO.TRANS sudah ada")
            Exit Sub
        End If

        com = New OleDb.OleDbCommand("insert into mastertransaksi (notrans, tanggaltransaksi, jenistransaksi) values ('" & NT_36109005.Text & "',#" & T_36109005.Value.Month & "/" & T_36109005.Value.Day & "/" & T_36109005.Value.Year & "#,'" & JT_36109005.Text & "')", CONECT)
        CONECT.Open()
        com.ExecuteNonQuery()
        CONECT.Close()

        For Each r As DataRow In DT.Rows
            com = New OleDb.OleDbCommand("insert into detailtransaksi (notrans, kodebarang, unit, harga ) values ('" & NT_36109005.Text & "','" & r("kodebarang") & "'," & r("unit") & "," & r("harga") & ")", CONECT)
            CONECT.Open()
            com.ExecuteNonQuery()
            CONECT.Close()


        Next
        com.Dispose()

        NT_36109005.Text = ""
        JT_36109005.Text = ""

        DT.Rows.Clear()

    End Sub
 End Class


Tidak ada komentar:

Posting Komentar