Senin, 20 Mei 2019

Visual Basic dengan MS Acces

1. Penjelasan Program Aplikasi (Deskripsi dan Analisa Kebutuhan)


Aplikasi kali ini bertemanakan penjualan aksesorin komputer dan celluler
untuk mempermudah penyimpanan data kali ini saya buat data terhubung ke MS Acces
aplikasi ini terdapat menu
- Nama Pemesan
- No Hp Pemesan
- Nama Barang Yg sudah Otomatis
- Harga dengan sistem penghitungan otomatis
- Jumlah barang
- Total harga

Terdapat juga tombol
- add untuk menambahkan item
- save untuk menyimpan data ke ms acces
- cancel untuk membatalkan pengimputan data
- hapus untuk mengapus data yg sudah tersimpan di ms acces
- edit untuk merubah data pemesan
- exit untuk keluar dari aplikasi

2. Screen Shoot






3. Source Coding. 

Public Class Form1
    Sub tampilGV()
        Dim sql = "select * from tbPesanan"
        Dim da As OleDb.OleDbDataAdapter
        Dim ds As New DataSet
        Dim dt As New DataTable("tbPesanan")

        da = New OleDb.OleDbDataAdapter(sql, koneksi.konek)
        da.Fill(dt)

        dgView.DataSource = dt
        dgView.Refresh()
    End Sub
    Sub isiCbx()
        Call koneksi.konek()
        Using kode As New OleDb.OleDbCommand("SELECT * FROM tbBarang", koneksi.konek)
            Using dr As OleDb.OleDbDataReader = kode.ExecuteReader()
                If dr.HasRows Then
                    While dr.Read
                        cbxBarang.Items.Add(dr.Item("NamaBrg"))
                    End While
                End If
            End Using
        End Using
    End Sub
    Sub clearAll()
        txtPemesan.Text = ""
        txtHpPemesan.Text = ""
        cbxBarang.ResetText()
        txtHarga.Text = ""
        txtJmlBrg.Text = ""
        txtTotal.Text = ""

    End Sub


    Private Sub Form1_Load(sender As Object, e As EventArgs) Handles Me.Load
        btnSave.Enabled = False
        btnCancel.Enabled = False
        Try
            Call koneksi.konek()
            Call tampilGV()
            Call isiCbx()
        Catch ex As Exception
            MsgBox(ex.Message)
        End Try

    End Sub

    Private Sub cbxBarang_SelectedIndexChanged(sender As Object, e As EventArgs) Handles cbxBarang.SelectedIndexChanged
        Dim nmBrg = cbxBarang.SelectedItem

        Call koneksi.konek()
        Using hrg As New OleDb.OleDbCommand("SELECT * FROM tbBarang WHERE NamaBrg = '" & nmBrg & "'", koneksi.konek)
            Using dr As OleDb.OleDbDataReader = hrg.ExecuteReader()
                If dr.HasRows Then
                    While dr.Read()
                        txtHarga.Text = dr.Item("Harga")
                    End While
                End If
            End Using
        End Using
    End Sub

    Private Sub Button4_Click(sender As Object, e As EventArgs) Handles Button4.Click
        Me.Close()
    End Sub

    Private Sub txtJmlBrg_TextChanged(sender As Object, e As EventArgs) Handles txtJmlBrg.TextChanged
        Dim hrga = txtHarga.Text
        Dim jmlBrg = txtJmlBrg.Text
        Try
            If hrga <> "" Then
                Dim hasil = hrga * jmlBrg
                txtTotal.Text = hasil
            Else
                txtTotal.Text = ""
            End If

        Catch ex As Exception

        End Try
        

    End Sub
   
    
    Private Sub btnAdd_Click(sender As Object, e As EventArgs) Handles btnAdd.Click
        btnSave.Enabled = True
        btnCancel.Enabled = True
        btnEdit.Enabled = False
        Call clearAll()
    End Sub


    Private Sub btnCancel_Click(sender As Object, e As EventArgs) Handles btnCancel.Click
        btnSave.Enabled = False
        btnEdit.Enabled = True
        btnCancel.Enabled = False
    End Sub


    Private Sub btnSave_Click(sender As Object, e As EventArgs) Handles btnSave.Click
        If txtPemesan.Text = "" Then
            MessageBox.Show("Nama Pemesan harus diisi")
        End If
        If txtHpPemesan.Text = "" Then
            MessageBox.Show("Nomor HP Pemesan harus diisi")
        End If

        Try
            Using tmbh As New OleDb.OleDbCommand("INSERT INTO tbPesanan (Nama,NoHp,Harga,JumlahBrg,TotalHrg,NamaBrg,Gambar) VALUES ('" & txtPemesan.Text & "', '" & txtHpPemesan.Text & "', '" & txtHarga.Text & "', '" & txtJmlBrg.Text & "', '" & txtTotal.Text & "', '" & cbxBarang.SelectedItem & "', '" & txtGambar.Text & "')", koneksi.konek)
                tmbh.ExecuteNonQuery()
                MessageBox.Show("Pelanggan bernama " & txtPemesan.Text & " Berhasil ditambah")
                Call tampilGV()
            End Using
        Catch ex As Exception
            MsgBox(ex.Message)
        End Try
    End Sub

    Private Sub btnFoto_Click(sender As Object, e As EventArgs) Handles btnFoto.Click
        Dim strFileName As String

        opFD.InitialDirectory = "C:\"
        opFD.Title = "Open an Image File"
        opFD.Filter = "Jpegs|*.jpg|Gifs|*.gif|Bitmaps|*.bmp"
        Dim DidWork As Integer = opFD.ShowDialog()

        If DidWork <> DialogResult.Cancel Then
            strFileName = opFD.FileName
            txtGambar.Text = strFileName
            PictureBox1.Image = Image.FromFile(strFileName)
            opFD.Reset()
        End If



    End Sub

    Private Sub btnEdit_Click(sender As Object, e As EventArgs) Handles btnEdit.Click
        Dim idPemesan As Integer = CInt(txtId.Text)
        Try
            Using edit As New OleDb.OleDbCommand("UPDATE tbPesanan SET Nama = '" & txtPemesan.Text & "', NoHp = '" & txtHpPemesan.Text & "', Harga = '" & txtHarga.Text & "', JumlahBrg = '" & txtJmlBrg.Text & "', TotalHrg = '" & txtHarga.Text & "',NamaBrg = '" & cbxBarang.SelectedItem & "', Gambar = '" & txtGambar.Text & "' WHERE ID = " & idPemesan, koneksi.konek)
                edit.ExecuteNonQuery()
                MessageBox.Show("Pemesan " & txtPemesan.Text & " Berhasil Diubah")
                Call tampilGV()
            End Using
        Catch ex As Exception
            MsgBox(ex.Message)
        End Try
    End Sub

    Private Sub dgView_CellContentClick(sender As Object, e As DataGridViewCellEventArgs) Handles dgView.CellContentClick
        Dim i As Integer
        With dgView
            If e.RowIndex >= 0 Then
                i = .CurrentRow.Index
                txtId.Text = .Rows(i).Cells("ID").Value.ToString
                txtPemesan.Text = .Rows(i).Cells("Nama").Value.ToString
                txtHpPemesan.Text = .Rows(i).Cells("NoHp").Value.ToString
            End If
        End With
    End Sub

    Private Sub btnHapus_Click(sender As Object, e As EventArgs) Handles btnHapus.Click
        Try
            Using hps As New OleDb.OleDbCommand("DELETE FROM tbPesanan WHERE ID = " & txtId.Text, koneksi.konek)
                hps.ExecuteNonQuery()
                MessageBox.Show("Pemesan " & txtPemesan.Text & " berhasil dihapus")
            End Using
        Catch ex As Exception
            MsgBox(ex.Message)
        End Try
       
    End Sub

End Class

FILE KONEKSI


Module koneksi

    Public Function konek() As OleDb.OleDbConnection
        Dim con As New OleDb.OleDbConnection
        con.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\Reksa Kuliah\Semester 5\PEMROGRAMAN II (AGUS SUHARTO)\Uas Reksa\ReksaCell.mdb"
        con.Open()

        Return (con)
    End Function

End Module

Tidak ada komentar:

Posting Komentar