Pages

topbella

Minggu, 04 November 2012

Latihan_40A_46110020


Deskripsi Form Latihan_40A_46110020
Dalam form ini terdapat Dua buah object yaitu Label dan DataGriedView,
Object Label
Dalam form ini terdapat Satu objek Label yang bertuliskan Data Transaksi.

Object DataGriedView
Dalam form ini terdapat Dua objek DataGridView yang berfungsi untuk menampilkan data dari Latihan_40B_46110020.

Cara Membuat Form Latihan_40A_46110020
1. Bukalah project yang anda telah buat sebelumnya
2. Pilih dan Bukalah Project dalam Visul Basic
3. Kemudian Pilih Add Windows form seperti berikut :

4. Lalu add new item dan rename file “form.vb menjadi Latihan_40A_46110020”
5. Setelah namenya di rename pilih add lalu muncullah form seperti ini :
6. Kemudian mulailah membuat form 40B dengan mengunakan Label,  Datagriedview.

 
7. Lalu buatlah sesuai contoh latihan 40A maka akan menjadi seperti ini :
8. Setelah form di atas telah jadi maka klik kanan lalu pilih View Code,kemudian masukkan rumus seperti berikut :

Public Class Latihan_40B_46110020
    Dim YUNI As New OleDb.OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source =" & Application.StartupPath & "\Datamajemuk.ACCDB")
    Dim AYU As New DataTable
    Dim baru(1) As DataColumn

    Public Sub YUYU()
        Dim TTOTAL As Integer
        For Each hasil As DataRow In AYU.Rows
            TTOTAL += hasil("Jumlah")
        Next
        Total_46110020.Text = TTOTAL
    End Sub
    Public Sub makecolumn()
        'mendeklarasikan kendaraan
        Dim BUBU As New OleDb.OleDbDataAdapter

        'Mengatur data yang akan di angkut
        BUBU = New OleDb.OleDbDataAdapter("SELECT detailtransaksi.kodebarang,barang.namabarang,detailtransaksi.unit,detailtransaksi.harga, detailtransaksi.unit * detailtransaksi.harga as jumlah FROM DETAILTRANSAKSI inner join barang on detailtransaksi.kodebarang=barang.kodebarang where detailtransaksi.notrans='" & NT_46110020.Text & "'", YUNI)

        'bersihkan data
        AYU.Rows.Clear()

        'untuk memasukkan data yg telah di angkut ke dalam datatable
        BUBU.Fill(AYU)
        BUBU.Dispose()

        'untuk menampilkan isi datatable ke data grid view
        AYU.Columns("Kodebarang").DefaultValue = ""
        AYU.Columns("NamaBarang").DefaultValue = ""
        AYU.Columns("unit").DefaultValue = 0
        AYU.Columns("harga").DefaultValue = 0
        AYU.Columns("jumlah").DefaultValue = 0

        AYU.Columns("NamaBarang").ReadOnly = True


        baru(0) = AYU.Columns("kodebarang")
        AYU.PrimaryKey = baru
        DGV_46110020.DataSource = AYU

    End Sub


    Private Sub Latihan_40B_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        makecolumn()
    End Sub

    Private Sub DGV_46110020_CellEndEdit(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles DGV_46110020.CellEndEdit
        'mengosongkan data
        If e.ColumnIndex = 0 Then
            DGV_46110020.CurrentRow.Cells("NamaBarang").Value = ""
            DGV_46110020.CurrentRow.Cells("Unit").Value = 0
            DGV_46110020.CurrentRow.Cells("harga").Value = 0
            DGV_46110020.CurrentRow.Cells("Jumlah").Value = 0

            'mencari data yang ada di tabel
            Dim Pencari As New ByIskandar.CariKeDataBaseByIskandar
            Pencari.AturPencarianDataBase("barang", "kodebarang", DGV_46110020.CurrentRow.Cells("kodebarang").Value, 1, YUNI)
            If Pencari.JumlanBaris > 0 Then
                DGV_46110020.CurrentRow.Cells("kodebarang").Value = Pencari.DataTablenya.Rows(0).Item(0)
                DGV_46110020.CurrentRow.Cells("namabarang").Value = Pencari.DataTablenya.Rows(0).Item(1)
            Else
                MsgBox("the data is not found")
                If Latihan_383940_46110020.ShowDialog = Windows.Forms.DialogResult.OK Then
                    DGV_46110020.CurrentRow.Cells("kodebarang").Value = Latihan_383940_46110020.DGV_46110020.CurrentRow.Cells("KodeBarang").Value
                    DGV_46110020.CurrentRow.Cells("Namabarang").Value = Latihan_383940_46110020.DGV_46110020.CurrentRow.Cells("namabarang").Value
                End If
            End If

            'mengitung jumlah dan total
        ElseIf e.ColumnIndex = 2 Or e.ColumnIndex = 3 Then
            DGV_46110020.CurrentRow.Cells("jumlah").Value = DGV_46110020.CurrentRow.Cells("unit").Value * DGV_46110020.CurrentRow.Cells("harga").Value
            YUYU()
        End If
    End Sub

    Private Sub Simpan_46110020_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Simpan_46110020.Click
        'Memeriksa isi textbox
        If NT_46110020.Text.Length = 0 Then
            MsgBox("Please, insert the Number of the transaction")
            Exit Sub
        End If

        If JT_46110020.Text.Length = 0 Then
            MsgBox("Please, insert the type of the transaction")
            Exit Sub
        End If

        If AYU.Rows.Count = 0 Then
            MsgBox("the data is none")
            Exit Sub
        End If

        'Memeriksa nomor transaksi pd master transaksi
        If replace_46110020.Text <> NT_46110020.Text Then
            Dim PENCARI As New ByIskandar.CariKeDataBaseByIskandar
            PENCARI.AturPencarianDataBase("mastertransaksi", "notrans", NT_46110020.Text, 1, YUNI)

            If PENCARI.JumlanBaris > 0 Then
                MsgBox("The data has been exist please insert new data")
                Exit Sub
            End If
        End If

        'Proses delete dan Penyimpanan ke tabel master transaksi
        Dim data As Integer = Val(replace_46110020.Text)
        Dim FUFU As New OleDb.OleDbCommand
        FUFU = New OleDb.OleDbCommand("delete * from mastertransaksi where notrans='" & replace_46110020.Text & "'", YUNI)
        YUNI.Open()
        FUFU.ExecuteNonQuery()
        YUNI.Close()

        FUFU = New OleDb.OleDbCommand("delete * from detailtransaksi where notrans='" & replace_46110020.Text & "'", YUNI)
        YUNI.Open()
        FUFU.ExecuteNonQuery()
        YUNI.Close()

        FUFU = New OleDb.OleDbCommand("insert into mastertransaksi (notrans,tanggaltransaksi,jenistransaksi) values ('" & NT_46110020.Text & "',#" & DTP_46110020.Value.Month & "/" & DTP_46110020.Value.Day & "/" & DTP_46110020.Value.Year & "#,'" & JT_46110020.Text & "')", YUNI)
        YUNI.Open()
        FUFU.ExecuteNonQuery()
        YUNI.Close()

        'penyimpanan isi datatable ke detail transaksi
        For Each PAPA As DataRow In AYU.Rows
            FUFU = New OleDb.OleDbCommand("insert into detailtransaksi (notrans,kodebarang,unit,harga) values ('" & NT_46110020.Text & "','" & PAPA("kodebarang") & "'," & PAPA("unit") & "," & PAPA("harga") & ")", YUNI)
            YUNI.Open()
            FUFU.ExecuteNonQuery()
            YUNI.Close()

        Next
        FUFU.Dispose()

        'Mengosongkan isi text box
        NT_46110020.Text = ""
        JT_46110020.Text = ""

        'Mengosongkan baris datatable
        AYU.Rows.Clear()

        'mengambildata
        Latihan_40A_46110020.grabdata()

        'menutup form
        Me.Close()

    End Sub
End Class
9. Jalankan program dengan cara mengklik start debugging seperti berikut :
Langkah-Langkah Membuat Form Latihan _40A_46110020
1.        Klik start debugging
2.      Maka data tersebut  akan menampilkan data yang secara otomatis yang ada pada datagriedview.
3.      Setelah muncul, maka lakukan yang anda ingin seperti menghapus, menambah, ataukah anda ingin mengedit data yang ada tampilan tersebut aka nada pada “ Latihan_40B_46110020”.
4.      Semoga Berhasil J
Script Unique
Script unik pada latihan ini sama dengan latihan sebelumnya, tatapi     Untuk proses pengosongan dan pengisian data tabel :
        dtdetail.Rows.Clear()
        dtmaster.Rows.Clear()

        Dim master As New OleDb.OleDbDataAdapter
        master = New OleDb.OleDbDataAdapter("select* from mastertransaksi", go)
        master.Fill(dtmaster)
        master.Dispose()

memasukkan datatabel ke dalam dataset :

        dtmaster.TableName = "CINTA"
        dtdetail.TableName = "SAYANG"

        DGV_46110020.DataSource = bsmaster
        DGV1_46110020.DataSource = bsdetail

        atur2.Tables.Add(dtmaster)
        atur2.Tables.Add(dtdetail)

        atur2.Relations.Add(New DataRelation("relasi", atur2.Tables("CINTA").Columns("notrans"), atur2.Tables("SAYANG").Columns("notrans")))

menampilkan datatabel ke dGV dg menggunakan binding :

        bsmaster.DataSource = atur2
        bsmaster.DataMember = "CINTA"
        bsdetail.DataSource = bsmaster
        bsdetail.DataMember = "relasi"
    End Sub

Untuk Menghapus data :

If MsgBox("seriously want to delete the record???", MsgBoxStyle.YesNo) = MsgBoxResult.No Then
            Exit Sub
        End If

Even
Clik
Load

0 komentar:

Posting Komentar

My Profile