RSS

Latihan_40B_46110024


DESKRIPSI FORM LATIHAN 40B

Form Latihan  ini Terdapat  Lima object yaitu Label, Text Box, Button, Date Time Picker dan Data Grid View.

Object Label
Dalam form latihan ini terdapat empat label yang Bertuliskan No. Transaksi, Tanggal, Jenis Transaksi, Dan Total

Object Textbox
Terdapat tiga textbox yang berstatus input dan satu status readonly. Status input digunakan untuk memasukkan data. Data yang dimasukkan yaitu “no. transaksi, dan jenis transaksi,”. Status readonly digunakan untuk menampilkan total untuk menampilkan akumulasi dari jumlah harga yang telah ditambahkan.

Object  Button
Dalam form ini terdapat satu object button yang save untuk menyimpan data yang telah ditambahkan ke data majemuk.

Object Date Time Picker
Dalam form ini terdapat sebuah object datetimepicker. Datetimepicker digunakan dalam menginput data berupa tahun, bulan dan tanggal.

Object Data Gridview
Terdapat  satu object datagridview. Datagridview digunakan untuk menampilkan data yang ingin ditampilkan.

Object Status Strip
Ada 2 statusstrip yang digunakan (no transaksi dan -). “-“ nantinya akan menampilkan no transaksi.

Script  Unique
 Untuk script unik anda bisa lihat lebih jelasnya keterangan pada scirpt latihan 40B dibawah

Even
Buttonclick
Load

Langkah- Langkah Membuat Form Latihan  40B
1. Buka File Microsoft Visual Studio Anda  lalu pilih projectà Add windows form 
2. Ganti nama sesuai dengan nama latihan 40B
3. Lalu pilih object yang ada di latihan 40B
4. Buat form sampai menghasilkan form seperti di bawah ini
 
5. Pilih Menu view klik code
6. Masukkan Script sebagai berikut
Public Class Latihan_40B_46110024
    Dim YUNI As New OleDb.OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source =" & Application.StartupPath & "\Datamajemuk.ACCDB")
    Dim AYU As New DataTable
    Dim baru(1) As DataColumn

    Public Sub YUYU()
        Dim TTOTAL As Integer
        For Each hasil As DataRow In AYU.Rows
            TTOTAL += hasil("Jumlah")
        Next
        Total_46110024.Text = TTOTAL
    End Sub
    Public Sub makecolumn()
        'mendeklarasikan kendaraan
        Dim BUBU As New OleDb.OleDbDataAdapter

        'Mengatur data yang akan di angkut
        BUBU = 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='" & NT2_46110024.Text & "'", YUNI)

        'bersihkan data
        AYU.Rows.Clear()

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

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

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


        baru(0) = AYU.Columns("kodebarang")
        AYU.PrimaryKey = baru
        DGV_46110024.DataSource = AYU

    End Sub


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

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

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

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

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

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

        If AYU.Rows.Count = 0 Then
            MsgBox("the data is none")
            Exit Sub
        End If

        'Memeriksa nomor transaksi pd master transaksi
        If replace_46110024.Text <> NT1_46110024.Text Then
            Dim PENCARI As New ByIskandar.CariKeDataBaseByIskandar
            PENCARI.AturPencarianDataBase("mastertransaksi", "notrans", NT2_46110024.Text, 1, YUNI)

            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_46110024.Text)
        Dim FUFU As New OleDb.OleDbCommand
        FUFU = New OleDb.OleDbCommand("delete * from mastertransaksi where notrans='" & replace_46110024.Text & "'", YUNI)
        YUNI.Open()
        FUFU.ExecuteNonQuery()
        YUNI.Close()

        FUFU = New OleDb.OleDbCommand("delete * from detailtransaksi where notrans='" & replace_46110024.Text & "'", YUNI)
        YUNI.Open()
        FUFU.ExecuteNonQuery()
        YUNI.Close()

        FUFU = New OleDb.OleDbCommand("insert into mastertransaksi (notrans,tanggaltransaksi,jenistransaksi) values ('" & NT2_46110024.Text & "',#" & DTP_46110024.Value.Month & "/" & DTP_46110024.Value.Day & "/" & DTP_46110024.Value.Year & "#,'" & JT_46110024.Text & "')", YUNI)
        YUNI.Open()
        FUFU.ExecuteNonQuery()
        YUNI.Close()

        'penyimpanan isi datatable ke detail transaksi
        For Each PAPA As DataRow In AYU.Rows
            FUFU = New OleDb.OleDbCommand("insert into detailtransaksi (notrans,kodebarang,unit,harga) values ('" & NT2_46110024.Text & "','" & PAPA("kodebarang") & "'," & PAPA("unit") & "," & PAPA("harga") & ")", YUNI)
            YUNI.Open()
            FUFU.ExecuteNonQuery()
            YUNI.Close()

        Next
        FUFU.Dispose()

        'Mengosongkan isi text box
        NT2_46110024.Text = ""
        JT_46110024.Text = ""

        'Mengosongkan baris datatable
        AYU.Rows.Clear()

        'mengambildata
        Latihan_40A_46110024.grabdata()

        'menutup form
        Me.Close()

    End Sub
End Class
Langkah-Langkah Menjalankan Form Latihan  40B
  1. Latihan 40B ini akan jalan jika anda mengklik tombol tambah ataupun edit pada latihan 40A 
  2. Klik tombol save  jika anda ingin menyimpan data yang anda telah edit ataupun ingin anda tambahkan ke dalam database dalam hal ini data majemuk

0 komentar:

Posting Komentar