Pages

Kamis, 08 November 2012

Latihan_37_46110027


             Deskripsi Form Latihan 37
Pada form latihan 37 ada 5 object yang digunakan yaitu Label, Text Box, Button, Date Time Picker dan Data Grid View.

Object Label
Pada form ini label yang digunakan ada 6 (no. transaksi, tanggal, jenis transaksi, kode barang, nama barang, unit, harga, jumlah dan total).

Object TextBox
Pada form ini ada 8 textbox yang digunakan (6 status input dan 3 status readonly). Status input digunakan untuk memasukkan data. Data yang dimasukkan yaitu “no. transaksi, tanggal, jenis transaksi, kode barang, unit dan harga”.

Object DateTimePicker
Pada latihan 37 terdapat 1 datetimepicker. Datetimepicker digunakan dalam menginput data berupa tahun, bulan dan tanggal.

Object Button                                                          
Terdapat 2 object button (insert dan save). Tombol “insert” digunakan untuk menambah data dan tombol “save” untuk menyimpan data yang telah ditambahkan ke “Data Majemuk”.

Object DataGridView
Terdapat 1 object datagridview yang berfungsi untuk menampilkan data tabel “Data Majemuk”.

 Script Unique
Lebih lengkap dapat dilihat pada script yang ada pada langkah-langkah membuat form pada poin ke 5 dibawah ini



Even
Load
ButtonClick

Langkah-Langkah membuat Form Latihan_37
    1. Buka Project yang telah dibuat sebelumnya , Pilih menu Project lalu klik add windows form
    2.  Ketik nama Latihan_37  yang akan dibuat pada kotak “NAME” lalu pilih “add”
     3. Buatlah desain seperti berikut menggunakan toolbox
         


         

    Klik kanan, pilih "properties" dan Beri nama pada objek di kolom "Name" kecuali pada object Label

    4. Pilih menu “view” klik  “code”
    5. Masukkan rumus berikut: 




    Public Class Latihan_37_46110027
        Dim rsty As New OleDb.OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source =" & Application.StartupPath & "\Datamajemuk.ACCDB")
        Dim yosna As New DataTable
        Private Sub BATU()
            Dim TTOTAL As Integer
            For Each hasil As DataRow In yosna.Rows
                TTOTAL += hasil("Jumlah")
            Next
            tot_46110027.Text = TTOTAL
        End Sub

        Private Sub Latihan_37_46110020_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
            'mendeklarasikan kendaraan
            Dim RINDU As New OleDb.OleDbDataAdapter

            'Mengatur data yang akan di angkut
            RINDU = 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_46110027.Text & "'", rsty)

            'bersihkan data
            yosna.Rows.Clear()

            'untuk memasukkan data yg telah di angkut ke dalam datatable
            RINDU.Fill(yosna)

            'untuk menampilkan isi datatable ke data grid view
            RINDU.Dispose()
            dgv_46110027.DataSource = yosna

            'perintah primarykey
            Dim WAHYUNI(2) As DataColumn
            WAHYUNI(0) = yosna.Columns("Kodebarang")
            yosna.PrimaryKey = WAHYUNI
        End Sub

        Private Sub KB_46110020Leave(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles kb_46110027.Leave
            If kb_46110027.Text.Length = 0 Then
                Exit Sub
            End If

            'mencari data yang ada di tabel
            Dim Pencari As New ByIskandar.CariKeDataBaseByIskandar
            Pencari.AturPencarianDataBase("barang", "kodebarang", kb_46110027.Text, 1, rsty)
            If Pencari.JumlanBaris > 0 Then
                nb_46110027.Text = Pencari.DataTablenya.Rows(0).Item(1)
            Else
                MsgBox("the data is not exist")
                kb_46110027.Text = ""
                nb_46110027.Text = ""
                Exit Sub
            End If

        End Sub

        Private Sub INSERT_46110020_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles insert_46110027.Click
            'Memeriksa isi textbox
            If kb_46110027.Text.Length = 0 Then
                MsgBox("Please, insert the code of goods")
                Exit Sub
            End If

            If u_46110027.Text.Length = 0 Then
                MsgBox("Please, insert the unit of goods")
                Exit Sub
            End If

            If h_46110027.Text.Length = 0 Then
                MsgBox("Please, insert the cost of goods")
                Exit Sub
            End If

            'perintah pencarian data
            Dim CINTA As DataRow
            CINTA = yosna.Rows.Find(kb_46110027.Text)
            If Not CINTA Is Nothing Then
                MsgBox("Sorry, the data has been exist!!! Please insert new data")
                Exit Sub
            End If

            'penyimpanan data ke datatable
            yosna.Rows.Add(kb_46110027.Text, nb_46110027.Text, Val(u_46110027.Text), Val(h_46110027.Text), jml_46110027.Text)

            BATU()

            'mengosongkan textbox
            kb_46110027.Text = ""
            nb_46110027.Text = ""
            u_46110027.Text = ""
            h_46110027.Text = ""
            jml_46110027.Text = ""
        End Sub

        Private Sub Unit_46110020_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles u_46110027.TextChanged
            jml_46110027.Text = Val(u_46110027.Text) * Val(h_46110027.Text)
        End Sub

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

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

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

            'Memeriksa nomor transaksi pd master transaksi
            Dim search As New ByIskandar.CariKeDataBaseByIskandar
            search.AturPencarianDataBase("mastertransaksi", "notrans", notrans_46110027.Text, 1, rsty)
            If search.JumlanBaris > 0 Then
                MsgBox("the code has been exist")
                Exit Sub
            End If

            'Proses Penyimpanan ke tabel master transaksi
            Dim SABAR As New OleDb.OleDbCommand
            SABAR = New OleDb.OleDbCommand("insert into mastertransaksi (notrans,tanggaltransaksi,jenistransaksi) values ('" & notrans_46110027.Text & "',#" & tgl_46110027.Value.Month & "/" & tgl_46110027.Value.Day & "/" & tgl_46110027.Value.Year & "#,'" & jetrans_46110027.Text & "')", rsty)
            rsty.Open()
            SABAR.ExecuteNonQuery()
            rsty.Close()

            'penyimpanan isi datatable ke detail transaksi
            For Each YUYU As DataRow In yosna.Rows
                SABAR = New OleDb.OleDbCommand("insert into detailtransaksi (notrans,kodebarang,unit,harga) values ('" & notrans_46110027.Text & "','" & YUYU("kodebarang") & "'," & YUYU("unit") & "," & YUYU("harga") & ")", rsty)
                rsty.Open()
                SABAR.ExecuteNonQuery()
                rsty.Close()

            Next
            SABAR.Dispose()

            'Mengosongkan isi text box
            notrans_46110027.Text = ""
            jetrans_46110027.Text = ""

            'Mengosongkan baris datatable
            yosna.Rows.Clear()

            'menutup form
            Me.Close()

        End Sub
    End Class




    6.    Klik start debugging
    7. Maka akan tampil sbb:

    8. Masukkan data transaksi dan klik button "Insert", data akan tampil pada datagridview lalu pilih button "Save"





    0 komentar:

    Posting Komentar