Minggu, 04 November 2012

Deskripsi_Latihan_40B_36110054


Cara Membuat Progam/Apliaksi Latihan 40B
Dengan Software Microsoft Visual Basic 2008
Form Latihan 40B terdapat enam object yaitu Lable, Textbox, Datetimepicker, button, StatusStrip dan Dategridview
Object  label
Terdapat empat object label (yang bertuliskan no.transaksi, tanggal, jenis transaksi, dan total).

Object  TextBox
 Terdapat tiga buah object Textbox. Dimana dua yang berstatus input dan satu berstatus ReadOnly.

Object  DateTimePicker
Terdapat sebuah object DateTimePicker yang digunakan untuk memasukkan tanggal transaksi.

Object  Button
Terdapat satu buah object Button yaitu  Simpan. Object button Simpan digunakan untuk menyimpan data baru ke DataBase. Kode barang yang diinput harus merupakan kode barang yang sudah ada pada tabel kode barang k. Jika kode barang yang diinput tidak ada, maka akan muncul form Latihan_383940_36110054


Object  DateGridView
Terdapat satu object DataGridView digunakan untuk menampilkan semua field atau kolom yang akan atau diedit, yang terdapat dalam data
D:\Ruslan\Materi Kuliah\Apkom 4\LATIHAN 35-40 DATA MAJEMUK\DATAMAJEMUK.accdb")

Object  StatusStrip
Terdapat satu object statustrip yang memiliki dua label (yang diberi nama no transaksi dan -).

Script Unique
Untuk script, dapat dilihat secara menyeluruh pada Langkah-Langkah Penyelesaian Latihan 40B

Even
FromLoad
ButtonClick
CellendEdit
( )
Property
Property Windows TextBox ReadOnly = True

Langkah 1:
Buka Aplikasi Visual Basic 2008/Visual Studio 2008
Langkah 2:
 Buat Project Baru dengan Cara,
-          File| New Project | Windows From Application,
-          Dan Nama Project Tersebut.
-          Lihat Gambar Berikut : 

Langkah 3:
Rancanglah Form Seperti Gambar Berikut Berikut :

      Langkah  4 :
Masukkan Rumus untuk menjalankan form di atas .
Berikut ini Rumus untuk menjalankan form :

Public Class Latihan_40B_36110054
    Dim ruslan As New OleDb.OleDbConnection(" Provider = microsoft.ace.oledb.12.0; data source = D:\Ruslan\Materi Kuliah\Apkom 4\LATIHAN 35-40 DATA MAJEMUK\DATAMAJEMUK.accdb")
    Dim tabelRuslan As New DataTable

    Public Sub SelectData()
        Dim ruru As New OleDb.OleDbDataAdapter

        ruru = New OleDb.OleDbDataAdapter("Select BARANG.KODEBARANG, BARANG.NAMABARANG, UNIT, HARGA, UNIT * HARGA As JUMLAH " & _
        "From DETAILTRANSAKSI Inner join BARANG on DETAILTRANSAKSI.KODEBARANG = BARANG.KODEBARANG where NOTRANS = '" & NOtrans_36110054.Text & "'", ruslan)

        tabelRuslan.Rows.Clear()

        ruru.Fill(tabelRuslan)

        ruru.Dispose()
    End Sub

    Private Sub Latihan_40B_36110054_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        SelectData()

        DGV_36110054.DataSource = tabelRuslan
    End Sub

    Public Sub Hitung()
        Dim Jumlah As Integer = 0
        For Each row As DataGridViewRow In DGV_36110054.Rows
            Jumlah = Jumlah + row.Cells("Jumlah").Value
        Next
        Total_36110054.Text = Jumlah
    End Sub

    Private Sub DGV_36110054_CellEndEdit(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles DGV_36110054.CellEndEdit
        If e.ColumnIndex = 0 Then
            DGV_36110054.CurrentRow.Cells("NAMABARANG").Value = ""
            DGV_36110054.CurrentRow.Cells("UNIT").Value = 0
            DGV_36110054.CurrentRow.Cells("HARGA").Value = 0
            DGV_36110054.CurrentRow.Cells("JUMLAH").Value = 0

            Dim Pencari As New ByIskandar.CariKeDataBaseByIskandar
            Pencari.AturPencarianDataBase("BARANG", "KODEBARANG", DGV_36110054.CurrentRow.Cells("KODEBARANG").Value, 1, ruslan)

            If Pencari.JumlanBaris = 0 Then
                MsgBox("Kode barang tersebut tidak ada")
                If Latihan_383940_36110054.ShowDialog = Windows.Forms.DialogResult.OK Then
                    DGV_36110054.CurrentRow.Cells("KODEBARANG").Value = Latihan_383940_36110054.dgv_36110054.CurrentRow.Cells("KODEBARANG").Value
                    DGV_36110054.CurrentRow.Cells("NAMABARANG").Value = Latihan_383940_36110054.dgv_36110054.CurrentRow.Cells("NAMABARANG").Value
                Else
                    DGV_36110054.CurrentRow.Cells("KODEBARANG").Value = ""
                End If
                Exit Sub
            End If

            DGV_36110054.CurrentRow.Cells("NAMABARANG").Value = Pencari.DataTablenya.Rows(0).Item("NAMABARANG")

        ElseIf e.ColumnIndex = 2 Or e.ColumnIndex = 3 Then
            DGV_36110054.CurrentRow.Cells("JUMLAH").Value = DGV_36110054.CurrentRow.Cells("UNIT").Value * DGV_36110054.CurrentRow.Cells("HARGA").Value

            Hitung()
        End If
    End Sub

    Private Sub SIMPAN_36110054_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Simpan_36110054.Click
        If tabelRuslan.Rows.Count = 0 Then
            MsgBox("Datanya Belum Ada, Masukkan Kode Barang, Unit dan harganya")
            Exit Sub
        End If

        If NOtrans_36110054.Text <> Nolama_36110054.Text Then
            Dim Periksa As New ByIskandar.CariKeDataBaseByIskandar
            Periksa.AturPencarianDataBase("MASTERTRANSAKSI", "NOTRANS", NOtrans_36110054.Text, 1, ruslan)
            If Periksa.JumlanBaris > 0 Then
                MsgBox("No Transaksi Sudah Ada, Masukkan No Transaksi yang Lain")
                Exit Sub
            End If
        End If

        Dim Hapus As New OleDb.OleDbCommand
        Hapus = New OleDb.OleDbCommand("Delete * From MASTERTRANSAKSI Where NOTRANS = '" & Nolama_36110054.Text & "'", ruslan)
        ruslan.Open()
        Hapus.ExecuteNonQuery()
        ruslan.Close()
        Hapus = New OleDb.OleDbCommand("Delete * From DETAILTRANSAKSI Where NOTRANS = '" & Nolama_36110054.Text & "'", ruslan)
        ruslan.Open()
        Hapus.ExecuteNonQuery()
        ruslan.Close()

        Dim Ambil As New OleDb.OleDbCommand
        Ambil = New OleDb.OleDbCommand("Insert Into MASTERTRANSAKSI (NOTRANS, TANGGALTRANSAKSI, JENISTRANSAKSI) " & _
        "Values ('" & NOtrans_36110054.Text & "', #" & Tgl_36110054.Value.Month & "/" & Tgl_36110054.Value.Day & "/" & Tgl_36110054.Value.Year & "#, '" & Jnstrans_36110054.Text & "')", ruslan)
        ruslan.Open()
        Ambil.ExecuteNonQuery()
        ruslan.Close()
        Ambil.Dispose()

        For Each BarisX As DataRow In tabelRuslan.Rows
            Dim Simpan As New OleDb.OleDbCommand
            Simpan = New OleDb.OleDbCommand("Insert Into DETAILTRANSAKSI (NOTRANS, KODEBARANG, UNIT, HARGA) " & _
            "Values ('" & NOtrans_36110054.Text & "', '" & BarisX("KODEBARANG") & "', " & BarisX("UNIT") & ", " & BarisX("HARGA") & ")", ruslan)
            ruslan.Open()
            Simpan.ExecuteNonQuery()
            ruslan.Close()
            Simpan.Dispose()
        Next

        NOtrans_36110054.Text = ""
        Jnstrans_36110054.Text = ""

        tabelRuslan.Clear()

        Latihan_40A_36110054.Isi()

        Hitung()
    End Sub
End Class


Tidak ada komentar:

Posting Komentar