latihan_12_46110004



Deskripsi form latihan 12
Form Latihan 12 Terdapat
enam object yaitu label, textbox, button, groupbox, datetimepicker dan DataGriedView

Object Label :
Dalam form latihan ini terdapat
10 buah label. Label-label tersebut bertuliskan no.pembelian, harga barang, harga perunit, unit, jumlah, tanggal, total, total unit, no. baris, baris sekarang

Object Textbox:
Selain Object Label, dalam form ini terdapat
9 buah textbox (6 status input dan 3 status read only ) status input digunakan untuk memasukkanno.pembelian, harga barang, harga perunit, unit, tanggal pembelian, no. baris yang ingin ditampilkan dan menampilkan baris tempat kursor berada sekarang.Sedangkan status read only digunakan untuk menampilkan hasil perhitungan antara lain, perkalian antara unit dan harga perunit yang ditampilkan pada textbox jumlah,  penjumlahan seluruh unit barang yang dibeli yang ditampilkan pada textbox total unit dan penjumlah seluruh harga barang yang dibeli yang ditampilkan pada textbox total.

Object Button :
Terdapat
tujuh object button (simpan, tampilkan dan hapus pada groupbox berdasarkan no.pembelian, tampilkan dan hapus pada groupbox berdasarkan no.baris, tampilkan dan hapus pada groupbox berdasarkan baris sekarang). Tombol simpan digunakan untuk menyimpan data yang telah diinput pada groupbox formulir.Sedangkan tombol tampil dan hapus penggunaannya yakni. tombol tampil pada groupbox berdasarkan baris sekarang digunakan untuk menampilkan no.pembelian yang telah diinput pada textbox no.pembelian dan hapus digunakan untuk menghapus no.pembelian berdasarkan no.pembelian yang diinput. Begitupun penggunaannya pada groupbox berdasarkan no.baris dan baris sekarang.
Object Datetimepicker :
Dalam form ini terdapat sebuah object datetimepicker. O
bject ini digunakan untuk menginput tanggal.
Object Groupbox :
Dalam form ini terdapat 5 buah object groupbox.
Group box berfungsi untuk mengelompokkan kontrol-kontrol pada form menjadi satu bagian.
Object datagridview :
Dalam form ini terdapat  sebuah object datagridview.
Datagridview digunakan untuk menampilkan data kedalam bentuk table yang terdiri dari baris dan kolom.

Script Unique :
Untuk membuat data tabel
Dim tabel As New DataTable

Untuk membuat datasource
dgv_46110004.DataSource = tabel

Untuk mendeklarasikan datacolumn
Dim kolom(1) As DataColumn

Untuk mengisi kolom pertama
kolom(0) = tabel.Columns("no. pembelian")

Untuk mengatur primary key
tabel.PrimaryKey = kolom

Mendeklarasikan data baris yang bernama baris
Dim baris As DataRow

Baris untuk tabel
baris = tabel.NewRow

 
Even :
TextChanged
Button click

Property
Property TextBox ==> ReadOnly=True

Langkah-langkah penyelesaian form latihan 12
1.Buat form baru seperti gambar dibawah ini,
2. Ketikkan nama form latihan_12_xxxxx, lalu klik add
3. Buat form seperti gambar di bawah ini:
4. Ganti semua nama object kecuali label pada properties, seperti gambar di bawah ini,
4. Ganti properti==> read only=true pada textbox jumlah,no.baris,dan no.pembelian


5. Setelah itu input script berikut ini :
Public Class latihan_12_46110004

    Dim tabel As New DataTable
    Private Sub latihan_12_46110004_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        tabel.Columns.Add(New DataColumn("no. pembelian", GetType(String)))
        tabel.Columns.Add(New DataColumn("nama barang", GetType(String)))
        tabel.Columns.Add(New DataColumn("harga per unit", GetType(Double)))
        tabel.Columns.Add(New DataColumn("tanggal pembelian", GetType(Date)))
        tabel.Columns.Add(New DataColumn("unit", GetType(Integer)))
        tabel.Columns.Add(New DataColumn("jumlah", GetType(Double)))

        dgv_46110004.DataSource = tabel

        Dim kolom(1) As DataColumn
        kolom(0) = tabel.Columns("no. pembelian")
        tabel.PrimaryKey = kolom
    End Sub



    Private Sub smpn_46110004_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles smpn_46110004.Click
        Dim baris As DataRow
        baris = tabel.Rows.Find(np_46110004.Text)

        If baris Is Nothing Then
            baris = tabel.NewRow

            baris("no. pembelian") = np_46110004.Text
            baris("nama barang") = nb_46110004.Text
            baris("harga per unit") = Val(hpu_46110004.Text)
            baris("tanggal pembelian") = tgl_46110004.Value.Date
            baris("unit") = Val(unit_46110004.Text)
            baris("jumlah") = Val(jmlh_46110004.Text)

            tabel.Rows.Add(baris)

            np_46110004.Text = ""
            nb_46110004.Text = ""
            hpu_46110004.Text = ""
            unit_46110004.Text = ""
            jmlh_46110004.Text = ""


        Else : MsgBox("baris sudah ada")
            jmlh_46110004.Text = ""
        End If
        xx()

    End Sub

    Private Sub tb_46110004_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles tb_46110004.Click
        Dim baris As DataRow

        If Val(nobar_46110004.Text) <= tabel.Rows.Count Then

            baris = tabel.Rows(Val(nobar_46110004.Text) - 1)

            nb_46110004.Text = baris("no. pembelian")
            nb_46110004.Text = baris("nama barang")
            hpu_46110004.Text = baris("harga per unit")
            tgl_46110004.Value = baris("tanggal pembelian")
            unit_46110004.Text = baris("unit")
            jmlh_46110004.Text = baris("jumlah")

        Else
            MsgBox("baris terlalu besar")

        End If
        nobar_46110004.Text = ""
    End Sub

    Private Sub hb_46110004_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles hb_46110004.Click
        Dim baris As DataRow


        If Val(nobar_46110004.Text) <= tabel.Rows.Count Then

            baris = tabel.Rows(Val(nobar_46110004.Text) - 1)
            baris.Delete()

        Else
            MsgBox("no. baris yang dimasukkan tidak ada")

        End If
        nobar_46110004.Text = ""
    End Sub

    Private Sub tp_46110004_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles tp_46110004.Click
        Dim baris As DataRow
        baris = tabel.Rows.Find(nopem_46110004.Text)

        If Not baris Is Nothing Then
            np_46110004.Text = baris("no. pembelian")
            nb_46110004.Text = baris("nama barang")
            hpu_46110004.Text = baris("harga per unit")
            tgl_46110004.Value = baris("tanggal pembelian")
            unit_46110004.Text = baris("unit")
            jmlh_46110004.Text = baris("jumlah")

        Else
            MsgBox("no. pembelian tidak ada")

        End If
        nopem_46110004.Text = ""
    End Sub

    Private Sub hp_46110004_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles hp_46110004.Click
        Dim baris As DataRow
        baris = tabel.Rows.Find(nopem_46110004.Text)

        If Not baris Is Nothing Then
            baris.Delete()
            nopem_46110004.Text = ""
        Else
            MsgBox("no. pembelian yang dimasukkan tidak ada")
            nopem_46110004.Text = ""
        End If
    End Sub

    Private Sub tbs_46110004_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles tbs_46110004.Click
        Dim baris As DataRow
        baris = tabel.DefaultView(BindingContext(tabel).Position).Row

        np_46110004.Text = baris("no. pembelian")
        nb_46110004.Text = baris("nama barang")
        hpu_46110004.Text = baris("harga per unit")
        tgl_46110004.Value = baris("tanggal pembelian")
        unit_46110004.Text = baris("unit")
        jmlh_46110004.Text = baris("jumlah")
    End Sub

    Private Sub hbs_46110004_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles hbs_46110004.Click
        Dim baris As DataRow
        baris = tabel.DefaultView(BindingContext(tabel).Position).Row
        baris.Delete()
    End Sub

    Private Sub xx()
        Dim tu, total As Integer
        For Each x As DataRow In tabel.Rows
            tu = tu + x("unit")
            total = total + x("jumlah")
        Next
        totunit_46110004.Text = tu
        tot_46110004.Text = total
    End Sub

    Private Sub unit_46110004_TextChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles unit_46110004.TextChanged
        jmlh_46110004.Text = Val(hpu_46110004.Text) * Val(unit_46110004.Text)
    End Sub
End Class

6. Jalankan program dengan cara klik kanan pada project, lalu pilih properties, kemudian akan muncul tampilan seperti gambar dibawah ini:
7. Setelah mengatur startup fom maka, klik start debug untuk menjalankan form latihan 12 seperti dibawah ini :
8. Jika terdapat kesalahan, maka program akan menunjukkan letak kesalahannya.





0 komentar:

Posting Komentar