Pages

topbella

Sabtu, 03 November 2012

Latihan_38_46110020


Deskripsi Form Latihan_38_46110020
Dalam form ini terdapat Tiga buah object yaitu Label, Textbox, DataGriedView, dan Button.
Object Label
Dalam form ini terdapat Sembilan objek Label yang bertuliskan (No. transaksi, tanggal, Jenis transaksi, Kode Barang, Nama Barang, Unit, Harga, Jumlah, dan Total).
Object TextBox
Dalam form ini terdapat Tujuh objek Textbox di gunakan untuk mengisi data, empat data yang di input dan tiga data di ReadOnly.
Object DateTimePicker
Dalam form ini terdapat 1 objek datetimepicker yang berfungsi untuk tampilan tanggal pada form.

Object DataGriedView
Dalam form ini terdapat satu objek DataGridView yang berfungsi untuk menampilkan data dari SQL (DataMajemuk).

Object Button
Terdapat Dua item object Button yang digunakan untuk menambah dan menyimpan data yang ingin di masukkan dalam Data Majemuk.
Cara Membuat Form Latihan_38_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_38_46110020”
5. Setelah namenya di rename pilih add lalu muncullah form seperti ini :
6. Kemudian mulailah membuat form 38 dengan mengunakan Label, TextBox, Button, Datetimepicker, dan Datagriedview.
7. Lalu buatlah sesuai contoh latihan 38 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_38_46110020
    Dim YUNI As New OleDb.OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source =" & Application.StartupPath & "\Datamajemuk.ACCDB")
    Dim AYU As New DataTable
    Private Sub BATU()
        Dim TTOTAL As Integer
        For Each hasil As DataRow In AYU.Rows
            TTOTAL += hasil("Jumlah")
        Next
        Total_46110020.Text = TTOTAL
    End Sub

    Private Sub Latihan_38_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='" & NT_46110020.Text & "'", YUNI)

        'bersihkan data
        AYU.Rows.Clear()

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

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

        'perintah primarykey
        Dim WAHYUNI(2) As DataColumn
        WAHYUNI(0) = AYU.Columns("Kodebarang")
        AYU.PrimaryKey = WAHYUNI
    End Sub
    Private Sub KB_46110020Leave(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles KB_46110020.Leave
        If KB_46110020.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_46110020.Text, 1, YUNI)
        If Pencari.JumlanBaris > 0 Then
            NB_46110020.Text = Pencari.DataTablenya.Rows(0).Item(1)
        Else
            MsgBox("the data is not exist, please choose from the this list")
            If Latihan_383940_46110020.ShowDialog = Windows.Forms.DialogResult.OK Then
                KB_46110020.Text = Latihan_383940_46110020.DGV_46110020.CurrentRow.Cells("KodeBarang").Value
                NB_46110020.Text = Latihan_383940_46110020.DGV_46110020.CurrentRow.Cells("namabarang").Value
                Harga_46110020.Text = Latihan_383940_46110020.DGV_46110020.CurrentRow.Cells("hargajual").Value
            Else
                KB_46110020.Text = ""
                NB_46110020.Text = ""
            End If
        End If

    End Sub

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

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

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

        'perintah pencarian data
        Dim CINTA As DataRow
        CINTA = AYU.Rows.Find(KB_46110020.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
        AYU.Rows.Add(KB_46110020.Text, NB_46110020.Text, Val(Unit_46110020.Text), Val(Harga_46110020.Text), Jumlah_46110020.Text)

        BATU()

        'mengosongkan textbox
        KB_46110020.Text = ""
        NB_46110020.Text = ""
        Unit_46110020.Text = ""
        Harga_46110020.Text = ""
        Jumlah_46110020.Text = ""
    End Sub

    Private Sub Unit_46110020_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Unit_46110020.TextChanged
        Jumlah_46110020.Text = Val(Unit_46110020.Text) * Val(Harga_46110020.Text)
    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
        Dim search As New ByIskandar.CariKeDataBaseByIskandar
        search.AturPencarianDataBase("mastertransaksi", "notrans", NT_46110020.Text, 1, YUNI)
        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 ('" & NT_46110020.Text & "',#" & DTP_46110020.Value.Month & "/" & DTP_46110020.Value.Day & "/" & DTP_46110020.Value.Year & "#,'" & JT_46110020.Text & "')", YUNI)
        YUNI.Open()
        SABAR.ExecuteNonQuery()
        YUNI.Close()

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

        Next
        SABAR.Dispose()

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

        'Mengosongkan baris datatable
        AYU.Rows.Clear()

        'menutup form
        Me.Close()
    End Sub
End Class

9. Jalankan program dengan cara mengklik start debugging seperti berikut :
Langkah-Langkah Membuat Form Latihan _38_46110020
1.        Klik start debugging
2.      Maka data tersebut  akan tampil secara otomatis  seperti di bawah :
3.      Setelah muncul, maka isilah data-data yang anda ingin di input lalu klik “Tambah maka akan muncul pada kolom DataGriedView, dan jumlah dan total yang anda masukkan akan muncul, setalah itu simpanlah pada tombol “Simpan”.
4.      Semoga Berhasil J
Script Unique
Script unik pada latihan ini sama dengan latihan sebelumnya.

Even
Clik
TextChanged
Load
 Leave

0 komentar:

Posting Komentar

My Profile