Sabtu, 27 Oktober 2012

latihan_39_36110036


Deskripsi latihan_39_36110036

A.           Object Label

Terdapat empat label yang bertuliskan no transaksi, tanggal, jenis transaksi, total.

B.            Object textbox

         Terdapat tiga textbox (dua status input, satu status read only). Status input digunakan untuk memasukkan nilai dari no transaksi, jenis transaksi.
         Status read only digunakan untuk menampilkan total.

C.           Object button

         Object button simpan digunakan untuk menyimpan data yang telah diinput.

D.           Object data gridview

Terdapat satu data gridview yang digunakan untuk menampilkan data yang telah diinput.

E.            Object Date timepicker

Terdapat satu object date timepicker yang digunakan untuk menginput tanggal transaksi.

F.            Script Unique
          Untuk script unique dapat dilihat pada Langkah-langkah mengerjakan latihan_39_36110036.

G.    Even
         Latihan_39_36110036_Load
         simpan_36110036_Click
         data_36110036_CellEndEdit

      H.      Property
    Property TextBox ==> ReadOnly=True

Langkah-langkah mengerjakan latihan_39_36110036

            1.          Buka project yang telah dibuat, dan buka solution explorer
            2.          Klik  kanan nama project ==> add ==> new item

      
                 3.          Klik New Item, setelah terbuka  pilih windows form dan ketik nama form  lalu klik Add 

         
4.      Kemudian klik file tersebut,  maka akan terbuka jendela pekerjaan dari Ms. Visual Studio.
5.     Kemudian buat form seperti dibawah ini: 

                  
 6.    Setelah design form selesai  dibuatlah rumusnya, Berikut adalah rumus untuk     menjalankan  latihan_39_36110036.

Public Class latihan_39_36110036

    Dim CONECT As New OleDb.OleDbConnection("provider=microsoft.ace.oledb.12.0;data source= " & Application.StartupPath & "\DATAMAJEMUK.accdb;Jet OLEDB:Database Password=anna")
    Dim anna As New DataTable

    Private Sub Latihan_39_36110036_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        Dim fika As New OleDb.OleDbDataAdapter

        fika = 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 = '" & no_36110036.Text & "'", CONECT)

        anna.Rows.Clear()

        fika.Fill(anna)

        fika.Dispose()

        data_36110036.DataSource = anna
    End Sub

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

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

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

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

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

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

            Hitung()
        End If
    End Sub

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

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

        Dim fika As New OleDb.OleDbCommand
        fika = New OleDb.OleDbCommand("Insert Into MASTERTRANSAKSI (NOTRANS, TANGGALTRANSAKSI, JENISTRANSAKSI) " & _
        "Values ('" & no_36110036.Text & "', #" & tanggal_36110036.Value.Month & "/" & tanggal_36110036.Value.Day & "/" & tanggal_36110036.Value.Year & "#, '" & jenis_36110036.Text & "')", CONECT)
        CONECT.Open()
        fika.ExecuteNonQuery()
        CONECT.Close()

        For Each row As DataRow In anna.Rows
            fika = New OleDb.OleDbCommand("Insert Into DETAILTRANSAKSI (NOTRANS, KODEBARANG, UNIT, HARGA) " & _
            "Values ('" & no_36110036.Text & "', '" & row("KODEBARANG") & "', " & row("UNIT") & ", " & row("HARGA") & ")", CONECT)
            CONECT.Open()
            fika.ExecuteNonQuery()
            CONECT.Close()
        Next
        fika.Dispose()

        no_36110036.Text = ""
        jenis_36110036.Text = ""

        anna.Rows.Clear()

        Hitung()
    End Sub
End Class

7.      Setelah rumus selesai, program dijalankan dengan menggunakan start debugging


8.     Setelah program jalan maka file disave.





















Tidak ada komentar:

Posting Komentar