- See more at: http://blog-rangga.blogspot.com/2013/01/cara-mengganti-icon-kursor-blog-dengan.html#sthash.c5biKms2.dpuf

Jumat, 26 Oktober 2012

Latihan_39_36110044 Aplikasi Komputer 4



Form Latihan_39  terdapat lima object yaitu Label, Textbox, Button, DateTimePicker dan DataGridView

Object Label
Terdapat empat object Label (yang bertuliskan No. Transaksi, Tanggal, Jenis Transaksi dan Total)

Object Textbox
Terdapat tiga object textbox (dua berstatus input dan satu berstatus ReadOnly).
Status input digunakan untuk memasukkan angka.
Statua ReadOnly untuk menampilkan hasil perhitungan.

Object Button
Terdapat object button yaitu SIMPAN 

Date TimePicker
Terdapat 1 object DateTimePicker yang digunakan untuk memasukkan tanggal terjadinya transaksi.

DataGridView
Terdapat 1 DataGridView untuk menampilkan data transaksi


Script Unique
Untuk button SIMPAN
If NO_36110044.Text.Length = 0 Then
            MsgBox("no.transaksi belum terisi")
            Exit Sub
        End If


Even
Latihan_39_36110044_Load
hitung()
DGV_36110044_CellEndEdit
SIMPAN_36110044_Click




PROSEDUR PENYELESAIAN:
1.      Klik star lalu pilih Microsoft Visual Studio 2008
2.      Pilih icon Add New Item
3.      Ubah nama pada lembar “Add New Item” kemudian add
4.      Buat design form dengan menggunakan Label, Textbox, Button, DateTimePicker dan DataGridView yang ada dalam "Toolbox”

5.      Ganti nama Textbox, Button, DateTimePicker dan DataGridView menggunakan "Properties Window"

6.      Klik kanan pada kotak design kemudian pilih View Code untuk membuka lembar vb
 Masukkan rumus berikut untuk menyelesaikan latihan_39

            Public Class Latihan_39_36110044
    'DEKLARASI CONECTION
    Dim CONECT As New OleDb.OleDbConnection("provider=microsoft.ace.oledb.12.0;data source= " & Application.StartupPath & "\DATAMAJEMUK.accdb")
    Dim DT As New DataTable
    Dim cari As New ByIskandar.CariKeDataBaseByIskandar

    Private Sub Latihan_39_36110044_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        DT.Columns.Add(New DataColumn("KODEBARANG", GetType(String))) 'untuk angka
        DT.Columns.Add(New DataColumn("NAMABARANG", GetType(String))) 'untuk angka
        DT.Columns.Add(New DataColumn("UNIT", GetType(Double))) 'untuk angka
        DT.Columns.Add(New DataColumn("HARGA", GetType(Integer))) 'untuk angka
        DT.Columns.Add(New DataColumn("JUMLAH", GetType(Double)))
        DGV_36110044.DataSource = DT
        'datagridwiew digunakan untuk menampilkan tabel yg sdh dibuat jika tdk maka tabel tdk akn muncul

        'rumus dibwh ini untuk membuat primary key dimana dcp adalah nama sembarangji
        Dim dcp(1) As DataColumn
        dcp(0) = DT.Columns("KODEBARANG")
        DT.PrimaryKey = dcp

        DT.Columns("UNIT").DefaultValue = 0
        DT.Columns("HARGA").DefaultValue = 0
        DT.Columns("JUMLAH").DefaultValue = 0

    End Sub
    Private Sub hitung()
        Dim manis As Integer
        For Each r As DataGridViewRow In DGV_36110044.Rows
            manis = manis + r.Cells("JUMLAH").Value
        Next
        TOTAL_36110044.Text = manis

    End Sub

    Private Sub DGV_36110044_CellEndEdit(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles DGV_36110044.CellEndEdit
        If e.ColumnIndex = 0 Then
            'untuk mencari jgn sampai data yg akan dimasukkan sudah ada
            cari.AturPencarianDataBase("BARANG", "kodebarang", DGV_36110044.CurrentRow.Cells("kodebarang").Value, 1, CONECT) '1 untuk huruf
            If cari.JumlanBaris > 0 Then
                DGV_36110044.CurrentRow.Cells("KODEBARANG").Value = cari.DataTablenya.Rows(0).Item("KODEBARANG")
                DGV_36110044.CurrentRow.Cells("NAMABARANG").Value = cari.DataTablenya.Rows(0).Item("NamaBarang")
            Else
                MsgBox("kode barang tidak tersedia")
                If Latihan_383940_36110044.ShowDialog = Windows.Forms.DialogResult.OK Then
                    DGV_36110044.CurrentRow.Cells("KODEBARANG").Value = Latihan_383940_36110044.DGV_36110044.CurrentRow.Cells("KodeBarang").Value
                    DGV_36110044.CurrentRow.Cells("NAMABARANG").Value = Latihan_383940_36110044.DGV_36110044.CurrentRow.Cells("namabarang").Value
                    DGV_36110044.CurrentRow.Cells("HARGA").Value = Latihan_383940_36110044.DGV_36110044.CurrentRow.Cells("HARGAJUAL").Value
                Else
                    DGV_36110044.CurrentRow.Cells("KODEBARANG").Value = ""
                    DGV_36110044.CurrentRow.Cells("NAMABARANG").Value = ""
                End If
            End If
        End If
        If e.ColumnIndex = 2 Or e.ColumnIndex = 3 Then
            DGV_36110044.CurrentRow.Cells("JUMLAH").Value = DGV_36110044.CurrentRow.Cells("UNIT").Value * DGV_36110044.CurrentRow.Cells("HARGA").Value

        End If

        hitung()
    End Sub

    Private Sub SIMPAN_36110044_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles SIMPAN_36110044.Click
        'untuk mencari jgn sampai data yg akan dimasukkan tidak lengkap
        If NO_36110044.Text.Length = 0 Then 'untuk pencarian yang bersifat angka
            MsgBox("no transaksi belum terisi")
            Exit Sub 'jgn lanjut ke proses berikutnya
        End If


        If JENIS_36110044.Text.Length = 0 Then 'untuk pencarian yang bersifat angka
            MsgBox("jenis transaksi belum terisi")
            Exit Sub 'jgn lanjut ke proses berikutnya
        End If

        If DT.Rows.Count = 0 Then
            MsgBox("data tidak tersedia")
        End If

        'untuk mencari jgn sampai data yg akan dimasukkan sudah ada
        cari.AturPencarianDataBase("mastertransaksi", "notrans", NO_36110044.Text, 1, CONECT)

        If cari.JumlanBaris > 0 Then
            MsgBox("NO sudah ada")
            Exit Sub
        End If



        'untuk memasukkan data dari visual basc ke dlm acces
        Dim com As New OleDb.OleDbCommand
        com = New OleDb.OleDbCommand("insert into mastertransaksi (notrans, tanggaltransaksi, jenistransaksi) values ('" & NO_36110044.Text & "',#" & DTP_36110044.Value.Date & "#," & Val(JENIS_36110044.Text) & ")", CONECT)

        CONECT.Open()
        com.ExecuteNonQuery()
        CONECT.Close()

        For Each r As DataRow In DT.Rows

            com = New OleDb.OleDbCommand("insert into detailtransaksi (notrans, kodebarang, unit, harga ) values ('" & NO_36110044.Text & "','" & r("kodebarang") & "'," & r("unit") & "," & r("harga") & ")", CONECT)
            CONECT.Open()
            com.ExecuteNonQuery()
            CONECT.Close()

            com.Dispose()

        Next

        NO_36110044.Text = ""
        JENIS_36110044.Text = ""
        TOTAL_36110044.Text = ""

        DT.Rows.Clear()
        hitung()
    End Sub
End Class

7.      Jalankan program dengan menggunakan  “start debugging”












Tidak ada komentar: