Pages

Selasa, 06 November 2012

Latihan_38_46110001


A.  Object-object dalam Latihan_38_46110001

Deskripsi Form Latihan_38_46110001
Form Latihan_38_46110001  terdapat Lima object yaitu Label, Textbox, Button, data time picker, dan Data Grid View.

Object Label
Terdapat Sembilan object label yang bertuliskan
no. transaksi, tanggal, jenis transaksi, kode barang, unit, harga, "nama barang", "jumlah", dan "total".

Object TextBox
Terdapat Lima object textbox yang berstatus input dan tiga berstatus ReadOnly.

Object Button
Terdapat Dua object button yaitu Button "insert" yang digunakan untuk menginput data textbox ke tabel yang ada pada data grid view. Sedangkan button "save" digunakan untuk menyimpan data yang diinput ke database.
Object Date Time Picker
Dalam latihan ini terdapat sebuah date time picker yeng terdapat pada "Tanggal" 

Object DataGridView
Terdapat sebuah object data grid view yang berguna untuk menampilkan detail data yang telah diinput

Property :
Property TextBox ==> ReadOnly=True

B.  Even
click
load
C. Prosedur Penyelesaian
   Langkah pertama dalam membuat form/ latihan 38 ialah, pada desktop anda, pilih  microsoft visual studio 2008.seperti pada langkah dibawah ini
 
·         Setelah itu pilih file kemudian New setelah itu pilih project, maka akan muncul tampilan   seperti   dibawah ini
·         Setelah langkah ke dua selesai maka langkah selanjutnya adalah, pada tampilan project tersebut silahkan anda mengganti nama form sesuai dengan yang anda inginkan
 
·         atau jika anda pernah membuat form sebelumnya, maka langkah selanjutnya  yang perlu anda lakukan adalah hanya dengan membuat buat form baru dengan memilih project kemudian pilih add  windows form, seperti pada gambar dibawah ini. 
 
·         Buatlah form seperti gambar dibawah ini,


 
·         Berikut ini adalah rumus untuk menjalankan form di atas
Public Class Latihan_38_46110001
    Dim Jalan As New OleDb.OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source =" & Application.StartupPath & "\Datamajemuk.ACCDB")
    Dim gitik As New DataTable
    Private Sub botto()
        Dim ttotal As Integer
        For Each hasil As DataRow In gitik.Rows
            ttotal += hasil("Jumlah")
        Next
        Total_46110001.Text = ttotal
    End Sub
    Private Sub Latihan39_083_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        'mendeklarasikan kendaraan
        Dim bojel As New OleDb.OleDbDataAdapter

        'Mengatur data yang akan di angkut
        bojel = 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_46110001.Text & "'", Jalan)

        'bersihkan data
        gitik.Rows.Clear()

        'untuk memasukkan data yg telah di angkut ke dalam datatable
        bojel.Fill(gitik)
        bojel.Dispose()

        'untuk menampilkan isi datatable ke data grid view
        gitik.Columns("Kodebarang").DefaultValue = ""
        gitik.Columns("NamaBarang").DefaultValue = ""
        gitik.Columns("unit").DefaultValue = 0
        gitik.Columns("harga").DefaultValue = 0
        gitik.Columns("jumlah").DefaultValue = 0

        gitik.Columns("NamaBarang").ReadOnly = True


        DGV_46110001.DataSource = gitik

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

    Private Sub Showme_CellEndEdit(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles DGV_46110001.CellEndEdit
        'mengosongkan data
        If e.ColumnIndex = 0 Then
            DGV_46110001.CurrentRow.Cells("NamaBarang").Value = ""
            DGV_46110001.CurrentRow.Cells("Unit").Value = 0
            DGV_46110001.CurrentRow.Cells("harga").Value = 0
            DGV_46110001.CurrentRow.Cells("Jumlah").Value = 0

            'mencari data yang ada di tabel
            Dim Pencari As New ByIskandar.CariKeDataBaseByIskandar
            Pencari.AturPencarianDataBase("barang", "kodebarang", DGV_46110001.CurrentRow.Cells("kodebarang").Value, 1, Jalan)
            If Pencari.JumlanBaris > 0 Then
                DGV_46110001.CurrentRow.Cells("kodebarang").Value = Pencari.DataTablenya.Rows(0).Item(0)
                DGV_46110001.CurrentRow.Cells("namabarang").Value = Pencari.DataTablenya.Rows(0).Item(1)
            Else
                MsgBox("the data is not found")
                If Latihan_38_39_40_46110001.ShowDialog = Windows.Forms.DialogResult.OK Then
                    DGV_46110001.CurrentRow.Cells("kodebarang").Value = Latihan_38_39_40_46110001.view_46110001.CurrentRow.Cells("KodeBarang").Value
                    DGV_46110001.CurrentRow.Cells("Namabarang").Value = Latihan_38_39_40_46110001.view_46110001.CurrentRow.Cells("namabarang").Value
                End If
            End If

            'mengitung jumlah dan total
        ElseIf e.ColumnIndex = 2 Or e.ColumnIndex = 3 Then
            DGV_46110001.CurrentRow.Cells("jumlah").Value = DGV_46110001.CurrentRow.Cells("unit").Value * DGV_46110001.CurrentRow.Cells("harga").Value
            botto()
        End If
    End Sub

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

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

        If gitik.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_46110001.Text, 1, Jalan)
        If search.JumlanBaris > 0 Then
            MsgBox("the code has been exist")
            Exit Sub
        End If

        'Proses Penyimpanan ke tabel master transaksi
        Dim kacci As New OleDb.OleDbCommand
        kacci = New OleDb.OleDbCommand("insert into mastertransaksi (notrans,tanggaltransaksi,jenistransaksi) values ('" & NT_46110001.Text & "',#" & DTP_46110001.Value.Month & "/" & DTP_46110001.Value.Day & "/" & DTP_46110001.Value.Year & "#,'" & JT_46110001.Text & "')", Jalan)
        Jalan.Open()
        kacci.ExecuteNonQuery()
        Jalan.Close()

        'penyimpanan isi datatable ke detail transaksi
        For Each nhana As DataRow In gitik.Rows
            kacci = New OleDb.OleDbCommand("insert into detailtransaksi (notrans,kodebarang,unit,harga) values ('" & NT_46110001.Text & "','" & nhana("kodebarang") & "'," & nhana("unit") & "," & nhana("harga") & ")", Jalan)
            Jalan.Open()
            kacci.ExecuteNonQuery()
            Jalan.Close()

        Next
        kacci.Dispose()

        'Mengosongkan isi text box
        NT_46110001.Text = ""
        JT_46110001.Text = ""

        'Mengosongkan baris datatable
        gitik.Rows.Clear()

        'menutup form
        Me.Close()

    End Sub
End Class
·         langkah selanjutnya Jalankan program dengan cara klik kanan pada project, lalu pilih Kumpulan_Latihan 46110001 properties, kemudian akan muncul tampilan seperti gambar dibawah ini:
·         Setelah mengatur startup form/ jika anda memiliki form navigator maka langkah yang perlu anda lakukan adalah ganti nama startup dengan nama navigator yang telah anda buat  setelah itu, klik start debug untuk menjalankan form latihan 38 seperti dibawah ini :
·         Setelah menekan tombol debug maka tampilan latihan 38 sebagai berikut :
·         Jika terdapat kesalahan, maka program akan menunjukkan letak kesalahannya dengan menampilkan jumlah error atau tampilan peringatan.

0 komentar:

Posting Komentar