Minggu, 28 Oktober 2012

Latihan_40B_36110046

Deskripsi & Prosedur Form Latihan_40B_36110046

Deskripsi Form Latihan_40B_36110046




Pada Form Latihan 38 terdapat 6 object, yaitu button, label, datetimepicker, datagridview, toolstatusstrip dan textbox.

Object Pada Form
Object Button
Terdapat 2 objek button (seperti terlihat gambar di atas)
Object Label
Terdapat 4 objek label (seperti terlihat gambar di atas)
Object DateTimePicker
Terdapat 1 objek datetimepicker (seperti terlihat gambar di atas)
Object DataGridview
Terdapat 1 objek datagridview (seperti terlihat gambar di atas)
Object Textbox
Terdapat 3 objek textbox (seperti terlihat gambar di atas)
Object ToolStatusStrip
Terdapat 1 objek toolstatusstrip (seperti terlihat gambar di atas)


Script Unique
-

Event
ButtonClick

Property
-

 

Prosedur Form Latihan_40B_36110046




Langkah-langkah mengerjakan Latihan 40b, sbb:
1.        Buka Ms. Visual Studio
2.        Klik Create Project
3.        Ketik nama file yang ingin disimpan
4.        Akan terbuka jendela pekerjaan Ms. Visual Studio
5.        Design form dengan menggunakan tools pada toolbox
6.        Buat  objek semua objek sesuai dengan design pada latihan 40b dengan toolbox, ikuti gambar dibawah ini:

7.        Setelah design sudah bagus, saatnya untuk membuat script
8.        Buat script prosedur sendiri seperti dibawah ini:
Public Class Latihan_40b_36110046
    Dim Connect As New OleDb.OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source =" & Application.StartupPath & "\DataMajemuk.ACCDB")
    Dim Table As New DataTable
    Dim baru(1) As DataColumn

    Public Sub botto()
        Dim ttotal As Integer
        For Each hasil As DataRow In Table.Rows
            ttotal += hasil("Jumlah")
        Next
        TOTAL_36110046.Text = ttotal
    End Sub
    Public Sub makecolumn()
        'mendeklarasikan kendaraan
        Dim ADAPTER As New OleDb.OleDbDataAdapter

        'Mengatur data yang akan di angkut
        ADAPTER = 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='" & NOTRANS_36110046.Text & "'", Connect)

        'bersihkan data
        Table.Rows.Clear()

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

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

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


        baru(0) = Table.Columns("kodebarang")
        Table.PrimaryKey = baru
        DGV_36110046.DataSource = Table

    End Sub


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

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

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

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

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

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

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

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

            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(NOMOR_36110046.Text)
        Dim QP As New OleDb.OleDbCommand
        QP = New OleDb.OleDbCommand("delete * from mastertransaksi where notrans='" & NOMOR_36110046.Text & "'", Connect)
        Connect.Open()
        QP.ExecuteNonQuery()
        Connect.Close()

        QP = New OleDb.OleDbCommand("delete * from detailtransaksi where notrans='" & NOMOR_36110046.Text & "'", Connect)
        Connect.Open()
        QP.ExecuteNonQuery()
        Connect.Close()

        QP = New OleDb.OleDbCommand("insert into mastertransaksi (notrans,tanggaltransaksi,jenistransaksi) values ('" & NOTRANS_36110046.Text & "',#" & TGL_36110046.Value.Month & "/" & TGL_36110046.Value.Day & "/" & TGL_36110046.Value.Year & "#,'" & JNSTRANS_36110046.Text & "')", Connect)
        Connect.Open()
        QP.ExecuteNonQuery()
        Connect.Close()

        'penyimpanan isi datatable ke detail transaksi
        For Each BARIS As DataRow In Table.Rows
            QP = New OleDb.OleDbCommand("insert into detailtransaksi (notrans,kodebarang,unit,harga) values ('" & NOTRANS_36110046.Text & "','" & BARIS("kodebarang") & "'," & BARIS("unit") & "," & BARIS("harga") & ")", Connect)
            Connect.Open()
            QP.ExecuteNonQuery()
            Connect.Close()

        Next
        QP.Dispose()

        'Mengosongkan isi text box
        NOTRANS_36110046.Text = ""
        JNSTRANS_36110046.Text = ""

        'Mengosongkan baris datatable
        Table.Rows.Clear()

        'mengambildata
        Latihan_40a_36110046.grabdata()

        'menutup form
        Me.Close()

    End Sub
End Class
9.        Silahkan jalankan program anda. Wassalam.

Tidak ada komentar:

Posting Komentar