Saturday, December 20, 2014

Manipulasi Data Ms. Access dengan VB.Net (New, Save, Delete, dan Find)

Assalamualaikum Wr. Wb

Pada postingan blog saya ini, saya akan memberikan sedikit tutorial mengenai Manipulasi Data pada Ms. Access menggunakan VB .Net.

Saya membuat program mengenai Inventory dari sebuah toko Alat Tulis dan Kantor. Dengan banyaknya produk yang ada dan mencari produk yang sudah dicatat akan memudahkan kita dalam pencarian persediaan barang dagangan.

Saya membuat dua Form, yaitu form Log In dan form Inventory, dan saya membuat satu database berdasar Ms. Access.

Saya menggunakan Ms. Visual Studio 2012 dan Ms. Access 2007


Database Ms. Access

Pertama-tama saya membuat Database di Ms. Access dengan isian sebagai berikut. Saya juga membuat sedikit contoh pada tabel tersebut.

Tabel Inventory

Contoh yang Sudah diisi
Lalu Save.

Ms. Visual Studio

Form Log In

Pertama, saya membuat desain interface sebagai berikut


Source Code

Username: rsa
Password: 123

Public Class Form1

    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
        If TextBox1.Text = "rsa" Then
            If TextBox2.Text = "123" Then
                Inventory.Show()
            Else
                MsgBox("Password anda salah, silahkan coba lagi")
            End If
        Else
            MsgBox("Username atau Password anda salah, silahkan coba lagi")
        End If
    End Sub

Bila password salah, akan muncul pemberitahuan seperti ini



Form Inventory

Pada form Inventory, saya membuat interface sebagai berikut


Pada bagian Penanggung Jawab, saya merubahnya menjadi Combobox dengan cara



Source Code Nutton New

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
        InventoryBindingSource.AddNew()
    End Sub

Hasil dari button tersebut adalah sebagai berikut



Button Save

 Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
        Me.Validate()
        Me.InventoryBindingSource.EndEdit()
        InventoryTableAdapter.Update(Me.Inventory_VB2DataSet.Inventory)

        Dim koneksi As String = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=Z:\Kuliah\Semester 3\VB\UAS VB2\Inventory_VB2.accdb"
        Dim tambah As String = "insert into Inventory values ('" & TextBox1.Text & "','" & TextBox2.Text & "','" & TextBox3.Text & "','" & ComboBox1.Text & "')"
        Dim objekkoneksi As New OleDb.OleDbConnection(koneksi)

        objekkoneksi.Open()
        Dim ocmd = New OleDbCommand(tambah, objekkoneksi)
        ocmd.ExecuteNonQuery()
        MsgBox("Data Telah Tersimpan")
        objekkoneksi.Close()
    End Sub

Bagaimana cara mendapatkan code dari:

Dim koneksi As String = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=Z:\Kuliah\Semester 3\VB\UAS VB2\Inventory_VB2.accdb"

Step ini juga akan menjelaskan cara untuk mengitegrasi Visual Studio dengan Ms. Access





Yang saya highlight adalah untuk code yang saya bahas


Caranya mudah, cukup ikuti perintahnya saja.

Hasil dari Button Save adalah sebagai berikut


Pemberitahuan bila data telah tersimpan

Integrasi dengan Ms. Access

Button Delete

Button ini dapat menghapus satu baris dari tabel

 Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click
        InventoryBindingSource.RemoveCurrent()
    End Sub

Hasil Button Delete

Tinggal dua baris

Button Update

Button ini dapat memperbaharui data pada tabel.

  Private Sub Button4_Click(sender As Object, e As EventArgs) Handles Button4.Click
        Dim koneksi As String = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=Z:\Kuliah\Semester 3\VB\UAS VB2\Inventory_VB2.accdb"
        Dim connection As New OleDb.OleDbConnection(koneksi)
        connection.Open()
        Dim KodeBarang As Integer
        Dim NamaBarang As String
        Dim JumlahBarang As Integer
        Dim PenanggungJawab As String

        KodeBarang = InventoryDataGridView.CurrentRow.Index
        NamaBarang = InventoryDataGridView.Item(1, KodeBarang).Value
        JumlahBarang = InventoryDataGridView.Item(2, KodeBarang).Value
        PenanggungJawab = InventoryDataGridView.Item(3, KodeBarang).Value

        Dim query As String = "Update Inventory set NamaBarang='" & TextBox2.Text & "',JumlahBarang='" & TextBox3.Text & "',PenanggungJawab='" & ComboBox1.Text & "' where KodeBarang = " & TextBox1.Text & ""
        Dim command As New OleDbCommand

        With command
            .CommandText = query
            .Connection = connection
            .ExecuteNonQuery()
        End With
        MsgBox("Terima Kasih, Inventory Telah Diubah")
        connection.Close()

    End Sub

Terakhir, Button Find

Tombol ini dapat membantu kita untuk mencari data dari banyaknya data yang akan ada nantinya.


 Private Sub Button5_Click(sender As Object, e As EventArgs) Handles Button5.Click

        Me.InventoryBindingSource.Filter = "KodeBarang LIKE'%" & TextBox4.Text & "'"

    End Sub

TextBox.4 adalah textbox yang berada tepat di sebelah kirinya. Anda dapat merubahnya sesuai dengan kebutuhan anda.

Hasil dari Button Find adalah sebagai berikut




Sekian tutorial singkat dari saya, semoga bermanfaat bagi yang membacanya.

Wassalamualaikum. Wr. Wb

Monday, November 24, 2014

Tugas VB2 - Visual Studio Integrasi Ms. Access

Pada postingan saya saat ini, saya akan menampilkan step-step pembuatan VB dengan menyambungkan ke MS. Access.

Saya membuat rancangan tentang pelatihan atau les dengan sistem bayar harian. Jadi, untuk mengikuti pelatihan ini harus bayar sebesar Rp 50.000,- setiap pertemuan dan ada 5 pertemuan. Peserta bebas memilih berapa hari akan mengikuti pelatihan ini.

Baiklah, mari kita mulai.

Pertama tama, saya akan membuat base dari database itu sendiri. Saya menggunakan Ms. Access untuk pembuatan database ini

Database



Setelah itu saya mengisi satu baris untuk percobaan.

Lalu saya save.

Setelah selesai dengan Ms. Access, saya berpindah ke Visual Studio. Saya buat project baru. Saya menggunakan 3 Form, yaitu Form Log In, Form utama atau Main Form untuk mengisi data yang nantinya akan terintegrasi dengan Ms. Access, dan yang terakhir adalah form browse yaitu Form untuk melihat apakah data sudah masuk ke Ms. Access.

Saya membuat interface Form pertama yaitu Form LogIn



Source Code untuk Button OK

 Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
        If TextBox1.Text = "rania" Then
            If TextBox2.Text = "12345" Then
                MainForm.Show()
            Else
                MessageBox.Show("ID atau Password anda salah. Silahkan ulang kembali!")
            End If
        Else
            MessageBox.Show("ID atau Password anda salah. Silahkan ulang kembali!")
        End If
    End Sub
End Class




Kemudian saya membuat MainForm


Source Code

Jangan lupa menambahkan code ini di paling atas
Imports System.Data
Imports System.Data.SqlClient
Imports System.Data.OleDb

Public Class MainForm


Untuk Button Save

    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
        Dim koneksi As String = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=|DataDirectory|\DatabaseTugasVB2.accdb"
        Dim objekKoneksi As New OleDb.OleDbConnection(koneksi)
        objekKoneksi.Open()

        Dim tambah As String = "INSERT INTO PesertaPelatihan values('" & TextBox1.Text & "','" & TextBox2.Text & "','" & TextBox3.Text & "','" & ComboBox1.Text & "','" & Label9.Text & "','" & ComboBox2.Text & "','" & TextBox4.Text & "')"

//PesertaPelatihan didapat dari nama Table di Ms. Access

        Dim oCmd = New OleDbCommand(tambah, objekKoneksi)

        oCmd.ExecuteNonQuery()
        MsgBox("SUKSES")
        objekKoneksi.Close()
    End Sub

    Private Sub TextBox4_TextChanged(sender As Object, e As EventArgs) Handles TextBox4.TextChanged

    End Sub

    Private Sub ComboBox2_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ComboBox2.SelectedIndexChanged
     
    End Sub

    Private Sub Button4_Click(sender As Object, e As EventArgs) Handles Button4.Click
        If ComboBox1.Text = "1" Then
            ComboBox2.Text = "5%"
        End If
        If ComboBox1.Text = "2" Then
            ComboBox2.Text = "5%"
        End If
        If ComboBox1.Text = "3" Then
            ComboBox2.Text = "5%"
        End If
        If ComboBox1.Text = "4" Then
            ComboBox2.Text = "10%"
        End If
        If ComboBox1.Text = "5" Then
            ComboBox2.Text = "10%"
        End If

        If ComboBox2.Text = "5%" Then
            TextBox4.Text = (Label9.Text * ComboBox1.Text) - (Label9.Text * ComboBox1.Text * 5 / 100)
        End If
        If ComboBox2.Text = "10%" Then
            TextBox4.Text = (Label9.Text * ComboBox1.Text) - (Label9.Text * ComboBox1.Text * 10 / 100)
        End If
    End Sub





Untuk Button Browse
    Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
        Browse.Show()
    End Sub
End Class


Bagaimana cara mendapatkan code dari:
       
    Dim koneksi As String = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=|DataDirectory|\DatabaseTugasVB2.accdb"




Step ini juga akan menjelaskan cara untuk mengitegrasi Visual Studio dengan Ms. Access
      

Pertama pilih database

Kedua

Ketiga
Copy kode yang saya highlight. Kode ini adalah kode pada Source Code
Kelima, dan Finish 

Setelah itu, saya membuat interface untuk Form Browse


Caranya mudah, cukup mendrag ke form kosong

Drag PesertaPelatihan
Selesai. Setelah itu sudah bisa di debug.

Hasilnya seperti ini

LogIn
Pengisian data
Setelah di-klik OK
Bila di-klik Save akan muncul tampilan ini
Bila di-klik tombol Browse akan mucul hasil data yang sudah dimasukkan.



Sekian tutorial singkat dari saya. Semoga bermanfaat :)

Wassalam