Pages

Senin, 05 November 2012

Latihan_37_46110001

Latihan_37_46110001

A. Object-object dalam Latihan_37_46110001

Deskripsi Form Latihan_37_46110001
Form Latihan_37_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 37 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_37_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 Latihan37_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='" & NTC_46110001.Text & "'", Jalan)

        'bersihkan data
        gitik.Rows.Clear()

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

        'untuk menampilkan isi datatable ke data grid view
        bojel.Dispose()
        Showme_46110001.DataSource = gitik

        'perintah primarykey
        Dim kabotcibay(2) As DataColumn
        kabotcibay(0) = gitik.Columns("Kodebarang")
        gitik.PrimaryKey = kabotcibay
    End Sub
    Private Sub KB_Leave(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles KB_46110001.Leave
        If KB_46110001.Text.Length = 0 Then
            Exit Sub
        End If

        'mencari data yang ada di tabel
        Dim Pencari As New ByIskandar.CariKeDataBaseByIskandar
        Pencari.AturPencarianDataBase("barang", "kodebarang", KB_46110001.Text, 1, Jalan)
        If Pencari.JumlanBaris > 0 Then
            NB_46110001.Text = Pencari.DataTablenya.Rows(0).Item(1)
        Else
            MsgBox("the data is not exist")
            KB_46110001.Text = ""
            NB_46110001.Text = ""
            Exit Sub
        End If

    End Sub
    Private Sub Tambah_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Tambah_46110001.Click
        'Memeriksa isi textbox
        If KB_46110001.Text.Length = 0 Then
            MsgBox("Please, insert the code of goods")
            Exit Sub
        End If

        If Unit_46110001.Text.Length = 0 Then
            MsgBox("Please, insert the unit of goods")
            Exit Sub
        End If

        If Harga_46110001.Text.Length = 0 Then
            MsgBox("Please, insert the cost of goods")
            Exit Sub
        End If

        'perintah pencarian data
        Dim drlebay As DataRow
        drlebay = gitik.Rows.Find(KB_46110001.Text)
        If Not drlebay Is Nothing Then
            MsgBox("Sorry, the data has been exist!!! Please insert new data")
            Exit Sub
        End If

        'penyimpanan data ke datatable
        gitik.Rows.Add(KB_46110001.Text, NB_46110001.Text, Val(Unit_46110001.Text), Val(Harga_46110001.Text), Jumlah_46110001.Text)

        botto()

        'mengosongkan textbox
        KB_46110001.Text = ""
        NB_46110001.Text = ""
        Unit_46110001.Text = ""
        Harga_46110001.Text = ""
        Jumlah_46110001.Text = ""
    End Sub
    Private Sub Unit_46110001TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Unit_46110001.TextChanged, Harga_46110001.TextChanged
        Jumlah_46110001.Text = Val(Unit_46110001.Text) * Val(Harga_46110001.Text)
    End Sub
    Private Sub Simpan_46110001Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Simpan_46110001.Click
        'Memeriksa isi textbox
        If NTC_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", NTC_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 ('" & NTC_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 ('" & NTC_46110001.Text & "','" & nhana("kodebarang") & "'," & nhana("unit") & "," & nhana("harga") & ")", Jalan)
            Jalan.Open()
            kacci.ExecuteNonQuery()
            Jalan.Close()

        Next
        kacci.Dispose()

        'Mengosongkan isi text box
        NTC_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 37 seperti dibawah ini :
·         Setelah menekan tombol debug maka tampilan latihan 37 sebagai berikut :
·         Jika terdapat kesalahan, maka program akan menunjukkan letak kesalahannya dengan menampilkan jumlah error atau tampilan peringatan.

0 komentar:

Posting Komentar