Copyright © APKOM 4 3AD4
Design by Dzignine
Sabtu, 03 November 2012

Latihan_37_46110002


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”.

Even
Load
ButtonClick

Script Unique
Lebih lengkap dan jelasnya silahkan dilihat pada script di bawah.


 Langkah-Langkah Penyelesaian Form Latihan_37
·  Buka project yang telah dibuat sebelumnya.



·  Click project kemudian pilih add windows form, seperti pada gambar dibawah ini

·  Ketik nama form "Latihan_37_46110002" pada name kemudian click add

·  Buat form seperti berikut 


·         Setelah itu beri teks pada button dan label.

 
·         Kemudian beri nama pada semua objek kecuali label.


·  Setelah form selesai masukkan rumus seperti dibawah ini 
 Public Class Latihan_37_46110002
    Dim ILDA As New OleDb.OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source =" & Application.StartupPath & "\Datamajemuk.ACCDB")
    Dim YANI As New DataTable
    Private Sub BATU()
        Dim TTOTAL As Integer
        For Each hasil As DataRow In YANI.Rows
            TTOTAL += hasil("Jumlah")
        Next
        Total_46110002.Text = TTOTAL
    End Sub

    Private Sub Latihan_37_46110002_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_46110002.Text & "'", ILDA)

        'bersihkan data
        YANI.Rows.Clear()

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

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

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

    Private Sub KB_46110002Leave(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles KB_46110002.Leave
        If KB_46110002.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_46110002.Text, 1, ILDA)
        If Pencari.JumlanBaris > 0 Then
            NB_46110002.Text = Pencari.DataTablenya.Rows(0).Item(1)
        Else
            MsgBox("the data is not exist")
            KB_46110002.Text = ""
            NB_46110002.Text = ""
            Exit Sub
        End If

    End Sub

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

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

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

        'perintah pencarian data
        Dim CINTA As DataRow
        CINTA = YANI.Rows.Find(KB_46110002.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
        YANI.Rows.Add(KB_46110002.Text, NB_46110002.Text, Val(Unit_46110002.Text), Val(Harga_46110002.Text), Jumlah_46110002.Text)

        BATU()

        'mengosongkan textbox
        KB_46110002.Text = ""
        NB_46110002.Text = ""
        Unit_46110002.Text = ""
        Harga_46110002.Text = ""
        Jumlah_46110002.Text = ""
    End Sub

    Private Sub Harga_46110002_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Harga_46110002.TextChanged
        Jumlah_46110002.Text = Val(Unit_46110002.Text) * Val(Harga_46110002.Text)
    End Sub

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

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

        If YANI.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_46110002.Text, 1, ILDA)
        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_46110002.Text & "',#" & DTP_46110002.Value.Month & "/" & DTP_46110002.Value.Day & "/" & DTP_46110002.Value.Year & "#,'" & JT_46110002.Text & "')", ILDA)
        ILDA.Open()
        SABAR.ExecuteNonQuery()
        ILDA.Close()

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

        Next
        SABAR.Dispose()

        'Mengosongkan isi text box
        NT_46110002.Text = ""
        JT_46110002.Text = ""

        'Mengosongkan baris datatable
        YANI.Rows.Clear()

        'menutup form
        Me.Close()

    End Sub
End Class

Langkah-Langkah Menjalankan Form Latihan 37
·          Klik start debugging lalu klik latihan 37
·           Input data pada textbox yang tersedia sesuai perintah yang ada pada label.


·          Jika ingin menambahkan data klik “insert”
·          Jika ingin menyimpan data yang telah diinput/ditambah ke data tabel (Data Majemuk) klik tombol “save”
·          Selamat mencoba.

0 komentar:

Posting Komentar