Sabtu, 10 November 2012

Latihan_38_46110006


Deskripsi Form Latihan_38_46110006
Form Latihan_38_46110006  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

Even
click
load
Property :
Property TextBox ==> ReadOnly=True

 
    Cara Membuat From Latihan 38:

      1. Pilih item Toolbar “Project” kemudian pilih “Add Windows From”


  2. Setelah mengKlik “Add Windows From”, akan muncul tabel dibawah ini.   Lalu rename pada Name menjadi nama form anda misalnya “ Latihan_38_46110006”


     3. Buatlah desain seperti berikut :


  4. Klik kanan lalu pilih “View Code” setelah itu ketik rumus untuk   menjalankan from diatas.
 
Public Class Latihan_38_46110006
    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_46110006.Text = ttotal
    End Sub
    Private Sub Latihan_38_46110006_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Dim bojel As New OleDb.OleDbDataAdapter
        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='" & no_46110006.Text & "'", Jalan)
        gitik.Rows.Clear()
        bojel.Fill(gitik)
        bojel.Dispose()
        Showme.DataSource = gitik

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

        Dim Pencari As New ByIskandar.CariKeDataBaseByIskandar
        Pencari.AturPencarianDataBase("barang", "kodebarang", kode_46110006.Text, 1, Jalan)
        If Pencari.JumlanBaris > 0 Then
            nama_46110006.Text = Pencari.DataTablenya.Rows(0).Item(1)
        Else
            MsgBox("the data is not exist, please choose from the this list")
            If Latihan_383940_46110006.ShowDialog = Windows.Forms.DialogResult.OK Then kode_46110006.Text = Latihan_383940_46110006.dgv_46110039.CurrentRow.Cells("KodeBarang").Value
                nama_46110006.Text = Latihan_383940_46110006.dgv_46110039.CurrentRow.Cells("namabarang").Value harga_46110006.Text = Latihan_383940_46110006.dgv_46110039.CurrentRow.Cells("hargajual").Value
            Else
                kode_46110006.Text = ""
                nama_46110006.Text = ""
            End If
        End If

    End Sub
    Private Sub insert_46110006_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles insert_46110006.Click
        If kode_46110006.Text.Length = 0 Then
            MsgBox("Please, insert the code of goods")
            Exit Sub
        End If

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

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

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

        gitik.Rows.Add(kode_46110006.Text, nama_46110006.Text, Val(unit_46110006.Text), Val(harga_46110006.Text), jumlah_46110006.Text)

        botto()

        kode_46110006.Text = ""
        nama_46110006.Text = ""
        unit_46110006.Text = ""
        harga_46110006.Text = ""
        jumlah_46110006.Text = ""
    End Sub
    Private Sub unit_46110006_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles unit_46110006.TextChanged, harga_46110006.TextChanged
        jumlah_46110006.Text = Val(unit_46110006.Text) * Val(harga_46110006.Text)
    End Sub
    Private Sub save_46110006_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles save_46110006.Click
        If no_46110006.Text.Length = 0 Then
            MsgBox("Please, insert the Number of the transaction")
            Exit Sub
        End If

        If jenis_46110006.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

        Dim search As New ByIskandar.CariKeDataBaseByIskandar
        search.AturPencarianDataBase("mastertransaksi", "notrans", no_46110006.Text, 1, Jalan)
        If search.JumlanBaris > 0 Then
            MsgBox("the code has been exist")
            Exit Sub
        End If

        Dim kacci As New OleDb.OleDbCommand
        kacci = New OleDb.OleDbCommand("insert into mastertransaksi (notrans,tanggaltransaksi,jenistransaksi) values ('" & no_46110006.Text & "',#" & tanggal_46110006.Value.Month & "/" & tanggal_46110006.Value.Day & "/" & tanggal_46110006.Value.Year & "#,'" & jenis_46110006.Text & "')", Jalan)
        Jalan.Open()
        kacci.ExecuteNonQuery()
        Jalan.Close()

        For Each arman As DataRow In gitik.Rows
            kacci = New OleDb.OleDbCommand("insert into detailtransaksi (notrans,kodebarang,unit,harga) values ('" & no_46110006.Text & "','" & arman("kodebarang") & "'," & arman("unit") & "," & arman("harga") & ")", Jalan)
            Jalan.Open()
            kacci.ExecuteNonQuery()
            Jalan.Close()

        Next
        kacci.Dispose()

        no_46110006.Text = ""
        jenis_46110006.Text = ""

        gitik.Rows.Clear()

        Me.Close()

    End Sub
End Class


5. Uji program dengan mengklik debugging
6. Selesai

Tidak ada komentar:

Posting Komentar