Jumat, 28 September 2012

Deskripsi Penyelesaian Latihan_13_36110041


Deskripsi Penyelesaian
Latihan_13_36110041
A.     Objek dalam Form Latihan_13:
Dalam form latihan ini hanya ada terdapat satu object yaitu datagridview. Yang terdapat  3 object datagridview. Digunakan untuk menampilkan tabel yang telah dibuat dalam script.

B.     Script Unique
Untuk scriptnya hanya akan ditampilkan secara keseluruhan dalam prosedur Latihan_13_36110041.

C.     Even
latihan_13_36110041_Load

Prosedur penyelesaian
1.      Buka Project yang telah dibuat sebelumnya klik Add New Item  è  Add Windows Form
 
2.      Kemudian beri nama dan klik Add
3.      buat form seperti di bawah ini dengan menggunakan toolbox yang saya tunjukkan pada postingan sebelumnya.
 
4.      Berikut ini adalah rumus untuk menjalankan form di atas:
Public Class latihan_13_36110041
    Dim DTRI As New DataTable
    Dim DTRS As New DataTable
    Dim DTRSS As New DataTable

    Dim ZAHRAH As New DataSet

    Dim herawati As New BindingSource
    Dim LUKMAN As New BindingSource
    Dim AKBAR As New BindingSource


    Private Sub latihan_13_36110041_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        DTRI.Columns.Add(New DataColumn("Kode Rekening Induk", GetType(String)))
        DTRI.Columns.Add(New DataColumn("Nama Rekening Induk", GetType(String)))

        DTRS.Columns.Add(New DataColumn("Kode Rekening Induk", GetType(String)))
        DTRS.Columns.Add(New DataColumn("Kode Rekening Sub", GetType(String)))
        DTRS.Columns.Add(New DataColumn("Nama Rekening Sub", GetType(String)))

        DTRSS.Columns.Add(New DataColumn("Kode Rekening Induk", GetType(String)))
        DTRSS.Columns.Add(New DataColumn("Kode Rekening sub", GetType(String)))
        DTRSS.Columns.Add(New DataColumn("Kode Rekening Sub-sub", GetType(String)))
        DTRSS.Columns.Add(New DataColumn("Nama Rekening Sub-sub", GetType(String)))

        Dim Acak As New Random

        For RI As Integer = 1 To Acak.Next(1, 5)
            DTRI.Rows.Add(RI, "Nama Rekening " & RI)
            For RS As Integer = 1 To Acak.Next(1, 5)
                DTRS.Rows.Add(RI, RI & RS, "Nama Sub Rekening " & RI & RS)
                For RSS As Integer = 1 To Acak.Next(1, 5)
                    DTRSS.Rows.Add(RI, RI & RS, RI & RS & RSS, "Nama Sub Sub Rekening " & RI & RS & RSS)
                Next
            Next
        Next

        ZAHRAH.Tables.Add(DTRI)
        ZAHRAH.Tables.Add(DTRS)
        ZAHRAH.Tables.Add(DTRSS)

        DTRI.TableName = "ICA"
        DTRS.TableName = "DIS"
        DTRSS.TableName = "OCA"

        ZAHRAH.Relations.Add(New DataRelation("TA", ZAHRAH.Tables("ICA").Columns("kode rekening induk"), ZAHRAH.Tables("dis").Columns("kode rekening induk")))
        ZAHRAH.Relations.Add(New DataRelation("HI", ZAHRAH.Tables("DIS").Columns("kode rekening sub"), ZAHRAH.Tables("oca").Columns("kode rekening sub")))

        herawati.DataSource = ZAHRAH
        herawati.DataMember = "ica"

        LUKMAN.DataSource = herawati
        LUKMAN.DataMember = "TA"

        AKBAR.DataSource = LUKMAN
        AKBAR.DataMember = "HI"

        DGV1_36110041.DataSource = herawati
        DGV2_36110041.DataSource = LUKMAN
        DGV3_36110041.DataSource = AKBAR

    End Sub
End Class

Deskripsi Penyelesaian Latihan_12_36110041

-->
Deskripsi Penyelesaian
Latihan_12_36110041
A.     Form Latihan_12 terdapat enam object yaitu Label, Textbox, Button, DataGridView, Date TimePicker, dan GroupBox:
Ø  Object Label
Terdapat sebelas label (yang bertuliskan No. Pembelian, Nama Barang, Harga Perunit, Unit, Tanggal, Jumlah, Total Unit, Total, No. Baris, No. Pembelian, dan Baris Sekarang
Ø  Object Text Box
Terdapat sembilan textbox (enam status input; tiga status read only). Status input digunakan untuk memasukkan; No. Pembelian, Nama Barang, Harga Perunit, Unit, No. Baris, dan No. Pembelian. Status Read Only  digunakan untuk menampilkan hasil perhitungan; Jumlah, Total Unit, dan Total
Ø  Object Button
Terdapat tujuh object Button (Simpan, tiga button Tampilkan, dan tiga button Hapus). Button simpan berfungsi untuk menimpan data yang telah diinput ke dalam DataGridView,
Untuk Button Tampilkan berfungsi untuk menampilkan kembali data yang telah di simpan di DataGridView, sedangkan Button Hapus berfungsi untuk menghapus data yang telah disimpan di DataGridView.
Ø  Object DataGridView
Terdapat satu object DataGridView
Ø  Object Date TimePicker
Terdapat satu Object Date TimePicker yaitu digunakan untuk menampilkan tanggal pembelian barang
Ø  Object GroupBox
Terdapat lima Object GroupBox (Formulir, Data, Berdasarkan No. Baris, Berdasarkan No. Pembelian, dan Berdasarkan Baris Sekarang)

B.     Script Unique 
 
-->
Untuk Button “Simpan”
Dim baris As DataRow
Untuk Button “Tampilkan”
Dim baris As DataRow
Untuk Button “ Hapus”
Dim baris As DataRow



C.     Even
latihan_12_36110041_Load
HarPer_36110041_TextChanged
Simpan_36110041_Click
Tampil1_36110041_Click
Hapus1_36110041_Click
Tampil2_36110041_Click
Hapus2_36110041_Click
Tampil3_36110041_Click
Hapus3_36110041_Click
RIZKA()

D.     Property
Property TextBox ==> ReadOnly=True

Prosedur penyelesaian
1.      Buka Project yang telah dibuat sebelumnya klik Add New Item  è  Add Windows Form

2.      Kemudian beri nama dan klik Add

3.      buat form seperti di bawah ini dengan menggunakan toolbox yang saya tunjukkan pada postingan sebelumnya.

4.      Berikut ini adalah rumus untuk menjalankan form di atas
Public Class latihan_12_36110041

    Dim tabel As New DataTable

    Private Sub latihan_12_36110041_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.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 Perunit", 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_36110041.DataSource = tabel

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


    Private Sub HarPer_36110041_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles HarPer_36110041.TextChanged, Unit_36110041.TextChanged
        Jum_36110041.Text = Val(HarPer_36110041.Text) * Val(Unit_36110041.Text)
    End Sub
    Private Sub Simpan_36110041_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Simpan_36110041.Click
        Dim baris As DataRow
        baris = tabel.Rows.Find(NoPemb_36110041.Text)

        If baris Is Nothing Then
            baris = tabel.NewRow

            baris("no. pembelian") = NoPemb_36110041.Text
            baris("nama barang") = NaBar_36110041.Text
            baris("harga perunit") = Val(HarPer_36110041.Text)
            baris("tanggal pembelian") = Tanggal_36110041.Value.Date
            baris("unit") = Val(Unit_36110041.Text)
            baris("jumlah") = Val(Jum_36110041.Text)

            tabel.Rows.Add(baris)

            NoPemb_36110041.Text = ""
            NaBar_36110041.Text = ""
            HarPer_36110041.Text = ""
            Unit_36110041.Text = ""
            Jum_36110041.Text = ""

        Else : MsgBox("baris sudah ada")
            Jum_36110041.Text = ""
        End If
RIZKA()
    End Sub

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

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

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

            NoPemb_36110041.Text = baris("no. pembelian")
            NaBar_36110041.Text = baris("nama barang")
            HarPer_36110041.Text = baris("harga perunit")
            Tanggal_36110041.Value = baris("tanggal pembelian")
            Unit_36110041.Text = baris("unit")
            Jum_36110041.Text = baris("jumlah")

        Else
            MsgBox("baris terlalu besar")

        End If
        NoBar_36110041.Text = ""
    End Sub

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


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

            baris = tabel.Rows(Val(NoBar_36110041.Text) - 1)
            baris.Delete()
            RIZKA()
        Else
            MsgBox("no. baris yang dimasukkan tidak ada")

        End If
        NoBar_36110041.Text = ""
    End Sub

    Private Sub Tampil2_36110041_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Tampil2_36110041.Click
        Dim baris As DataRow
        baris = tabel.Rows.Find(NoBel_36110041.Text)

        If Not baris Is Nothing Then
            NoPemb_36110041.Text = baris("no. pembelian")
            NaBar_36110041.Text = baris("nama barang")
            HarPer_36110041.Text = baris("harga perunit")
            Tanggal_36110041.Value = baris("tanggal pembelian")
            Unit_36110041.Text = baris("unit")
            Jum_36110041.Text = baris("jumlah")

        Else
            MsgBox("no. pembelian tidak ada")

        End If
        NoBel_36110041.Text = ""
    End Sub

    Private Sub Hapus2_36110041_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Hapus2_36110041.Click
        Dim baris As DataRow
        baris = tabel.Rows.Find(NoBel_36110041.Text)

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

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

        NoPemb_36110041.Text = baris("no. pembelian")
        NaBar_36110041.Text = baris("nama barang")
        HarPer_36110041.Text = baris("harga perunit")
        Tanggal_36110041.Value = baris("tanggal pembelian")
        Unit_36110041.Text = baris("unit")
        Jum_36110041.Text = baris("jumlah")
    End Sub

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


    Private Sub RIZKA()
        Dim tu, total As Integer
        For Each x As DataRow In tabel.Rows
            tu = tu + x("unit")
            total = total + x("jumlah")
        Next
        TotNit_36110041.Text = tu
        Total_36110041.Text = total
    End Sub
End Class