Pages

Selasa, 06 November 2012

Latihan_40b_46110001


A.  Object-object dalam Latihan_40b_46110001

Deskripsi Form Latihan_40B_46110001
Form Latihan_40B_46110001 terdapat Enam object yaitu Label, Textbox, Button, data time picker, Data Grid View, dan StatusStrip.

Object Label
Terdapat Sembilan object label yang bertuliskan “no. transaksi”, “tanggal”, “jenis transaksi”, dan "total".

Object TextBox
Terdapat dua object textbox yang berstatus input dan satu berstatus ReadOnly.

Object Button
Terdapat Satu object button yaitu Button "save" digunakan untuk menyimpan data yang telah diinput atau diedit.
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
Object StatusStrip
Terdapat sebuah object StatusStrip yang berguna untuk menampilkan no.transaksi data yang di edit
Property :
Property TextBox ==> ReadOnly=True

B.  Even
click
load
C. Prosedur Penyelesaian
   Langkah pertama dalam membuat form/ latihan 40b 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_40B_46110001

    Dim Jalan As New OleDb.OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source =" & Application.StartupPath & "\Datamajemuk.ACCDB")
    Dim gitik As New DataTable
    Dim baru(1) As DataColumn

    Public Sub botto()
        Dim ttotal As Integer
        For Each hasil As DataRow In gitik.Rows
            ttotal += hasil("Jumlah")
        Next
        Total_46110001.Text = ttotal
    End Sub
    Public Sub makecolumn()
        '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


        baru(0) = gitik.Columns("kodebarang")
        gitik.PrimaryKey = baru
        Showme_46110001.DataSource = gitik

    End Sub


    Private Sub Latihan40b_083_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        makecolumn()
    End Sub

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

            'mencari data yang ada di tabel
            Dim Pencari As New ByIskandar.CariKeDataBaseByIskandar
            Pencari.AturPencarianDataBase("barang", "kodebarang", Showme_46110001.CurrentRow.Cells("kodebarang").Value, 1, Jalan)
            If Pencari.JumlanBaris > 0 Then
                Showme_46110001.CurrentRow.Cells("kodebarang").Value = Pencari.DataTablenya.Rows(0).Item(0)
                Showme_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
                    Showme_46110001.CurrentRow.Cells("kodebarang").Value = Latihan_38_39_40_46110001.view_46110001.CurrentRow.Cells("KodeBarang").Value
                    Showme_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
            Showme_46110001.CurrentRow.Cells("jumlah").Value = Showme_46110001.CurrentRow.Cells("unit").Value * Showme_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
        If replace.Text <> NT_46110001.Text Then
            Dim PENCARI As New ByIskandar.CariKeDataBaseByIskandar
            PENCARI.AturPencarianDataBase("mastertransaksi", "notrans", NT_46110001.Text, 1, Jalan)

            If PENCARI.JumlanBaris > 0 Then
                MsgBox("The data has been exist please insert new data")
                Exit Sub
            End If
        End If

        'Proses delete dan Penyimpanan ke tabel master transaksi
        Dim data As Integer = Val(replace.Text)
        Dim kacci As New OleDb.OleDbCommand
        kacci = New OleDb.OleDbCommand("delete * from mastertransaksi where notrans='" & replace.Text & "'", Jalan)
        Jalan.Open()
        kacci.ExecuteNonQuery()
        Jalan.Close()

        kacci = New OleDb.OleDbCommand("delete * from detailtransaksi where notrans='" & replace.Text & "'", Jalan)
        Jalan.Open()
        kacci.ExecuteNonQuery()
        Jalan.Close()

        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()

        'mengambildata
        Latihan_40A_46110001.grabdata()

        '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 40 b seperti dibawah ini :
·         Setelah menekan tombol debug maka tampilan latihan 40b sebagai berikut : catatan :untuk memperbesar gambar klik 2 kali pada gambar
·         Jika terdapat kesalahan, maka program akan menunjukkan letak kesalahannya dengan menampilkan jumlah error atau tampilan peringatan.


0 komentar:

Posting Komentar