Pages

Sabtu, 17 Agustus 2013

Program Inventory dengan VB.Net 2010 dan Ms.Acces 2010

Cerita ini berawal saat gue diminta sama temen untuk membuat program data stock barang (Inventory) untuk sebuah usahanya, dengan deadline yang udah ditentukan. Waduhhhhhh  gue ngerasa ga ada persiapan saat diminta seperti itu, lagian gue juga lagi kerja berangkat subuh trus pulangnya uda malam baru nyampe rumah, ada waktu ga kalau seperti itu? blum lagi sampe rumah gue harus ngikutin acara TV  drama kolosal Damarwulan yang durasinya bisa 3 jam di Indosiar dan ga mungkin bisa gue lewatkan, nah kalau uda kayak gitu  uda keburu malam buat ngerjainnya. Tapi disisi lain juga gue gengsi, masa ia sih ga bisa ngerjain hal seperti itu apalagi yang uda bidang jurusan gue, ya itung-itung buat persiapan PI nanti ya kenapa ga gue ia'in aja deh. Tapi sayang PI gue nanti ga boleh pakai Visual Basic, standartnya harus Java atau yang lainnya padahal gue uda kesemsem nih sama VB.Net, ya mo gimana lagi seengganya uda dapet logikanya

Saat gue bingung dan nanya-nanya  sama temen, maka gue putusin pakai Visual Basic.Net ajalah buat programnya, soalnya bahasa program tsb pernah gue pelajarin dulu waktu semester 2 dan disarankan sama temen gue  databasenya pakai MySql, cuman saat gue coba ternyata ribet bangat sama prosedur koneksinya makanya gue pakai aja Ms.Acces 2010 biar uda ada di komputer.
Next... berikut ini step dalam pembuatan programnya, tapi ingat ya progam yang gue share ini sangat sangat dan sangat sederhana, yang buat projectkan gue mah blum selesai  hahaha, ini cuma buat trial aja ya kali aja bermanfaat buat yang belum tau dan belum kenal sama yang namanya Bahasa Pemograman itu apa... oke ga perlu berlama-lama lagi langsung aja,  Check it out !

Buka Ms.Acces 2010 lalu ketik nama database yaitu INVENTORY lalu create, pilih View pada pojok kiri lalu beri nama tabel yaitu DATA lalu save as. buat Field Name : NAMA BARANG, HARGA dan pilih keduanya Data Type menjadi Text, bisa juga Field Sizenya dibatasi jadi 10 aja biar ga terlalu makan tempat di kapasitas memorinya


Untuk yang pakai Office 2010 pilih File lalu Save & Publish lagi, lalu pilih Acces 2002-2003 dan Save As lagi, ini dimaksudkan agar Ms.Acces 2010 bisa  kompitible sama VB.Netnya, tapi kalau temen-temen punya script yang  bisa nge'handlingnya ya ga apa.


Buka VB.Net 2010, New Project pilih Windows Form Appilcation, pakai fasilitas yang ada pada ToolBox untuk mendesign tampilannya seperti Label, TextBox, Buttons, DataGridView, GroupBox dan Radio Buttons. Pada Properties ganti Text masing-masing Label jadi Nama Barang, Harga dan Search.
Pilih masing-masing Buttons dan pada menu Properties ganti Text masing-masing Button jadi Tambah, Ubah, Hapus, Keluar dan Name ganti jadi btnTambah, btnUbah, btnHapus, btnKeluar.
Pilih masing-masing TextBox dan pada menu Properties, Name diganti jadi txtBarang, txtHarga, txtSearch dan pilih juga RadioButtons Textnya ganti jadi Barang, Harga dan Name jadi rbBarang, rbHarga. Berikut ini tampilan designnya, klasik bangat ya?

                     

Setelah designya selesai, doubleclick formnya lalu ketik script dibawah ini:

Imports System.Data
Imports System.Data.OleDb

Public Class frmBarang

    Dim database As OleDbConnection
    Dim tabel As OleDbDataAdapter
    Dim data As DataSet
    Dim record As New BindingSource
    Sub koneksi()
        Try
            database = New OleDbConnection("Provider=Microsoft.Jet.Oledb.4.0;DataSource=INVENTORY.mdb")
            database.Open()
        Catch ex As Exception
            MsgBox(ex.ToString())
        End Try
    End Sub
    Sub data_record()
        Try
            tabel = New Data.OleDb.OleDbDataAdapter("select * from DATA", database)
            data = New DataSet
            tabel.Fill(data)
            record.DataSource = data
            record.DataMember = data.Tables(0).ToString()
            DataGridView1.DataSource = record
            DataGridView1.Columns(0).Width = 200
        Catch ex As Exception
            MsgBox(ex.ToString())
        End Try
  End Sub
    Sub bersih()
        txtBarang.Text = ""
        txtHarga.Text = ""
        txtSearch.Text = ""
        rbBarang.Checked = False
        rbHarga.Checked = False
        txtBarang.Enabled = True
        txtBarang.Focus()
        btnTambah.Enabled = True
        btnUbah.Enabled = True
        btnHapus.Enabled = True
        Call koneksi()
        Call data_record()
    End Sub

Private Sub frmINVENTORY_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Call bersih()
    End Sub

    Private Sub btnTambah_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnTambah.Click
        Try
            Dim dml As New OleDbCommand
            dml.Connection = database
            dml.CommandType = CommandType.Text
            dml.CommandText = "insert into DATA values('" & txtBarang.Text & "','" & CSng(txtHarga.Text) & "')"
            dml.ExecuteNonQuery()
            MsgBox("Data telah disimpan")
            Call bersih()
        Catch ex As Exception
            MsgBox(ex.ToString())
        End Try
    End Sub

Private Sub btnUbah_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnUbah.Click
        Try
            Dim dml As New OleDbCommand
            dml.Connection = database
            dml.CommandType = CommandType.Text
            dml.CommandText = "update DATA set HARGA = '" & txtHarga.Text & "' where NAMA BARANG = '" & txtBarang.Text & "'"
            dml.ExecuteNonQuery()
            MsgBox("Data telah diubah")
            Call bersih()
            txtNmBarang.Focus()
        Catch ex As Exception
            MsgBox(ex.ToString())
        End Try
    End Sub
  
Private Sub btnHapus_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnHapus.Click
        Try
            Dim dml As New OleDbCommand
            dml.Connection = database
            dml.CommandType = CommandType.Text
            dml.CommandText = "delete from DATA where NAMA BARANG = '" & txtBarang.Text & "'"
            dml.ExecuteNonQuery()
            MsgBox("Data telah dihapus")
            Call bersih()
            btnTambah.Enabled = False
            btnUbah.Enabled = True
            btnHapus.Enabled = True
            txtBarang.Focus()
        Catch ex As Exception
            MsgBox(ex.ToString())
        End Try
    End Sub
 Private Sub btnKeluar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnKeluar.Click
        Me.Dispose()
    End Sub

    Private Sub txtSearch_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSearch.TextChanged
        Try
            If rbBarang.Checked = True Then
                tabel = New Data.OleDb.OleDbDataAdapter("select * from DATA where NAMA BARANGlike '%" & txtSearch.Text & "%'", database)
                data = New DataSet
                tabel.Fill(data)
                record.DataSource = data
                record.DataMember = data.Tables(0).ToString()
                DataGridView1.DataSource = record
                DataGridView1.Columns(0).Width = 180
            ElseIf rbHarga.Checked = True Then
                tabel = New Data.OleDb.OleDbDataAdapter("select * from DATA where HARGA like '%" & txtSearch.Text & "%'", database)
                data = New DataSet
                tabel.Fill(data)
                record.DataSource = data
                record.DataMember = data.Tables(0).ToString()
                DataGridView1.DataSource = record
                DataGridView1.Columns(0).Width = 180
            End If
        Catch ex As Exception
            MsgBox(ex.ToString())
        End Try
    End Sub

 Private Sub DataGridView1_DoubleClick1(ByVal sender As Object, ByVal e As System.EventArgs) Handles DataGridView1.DoubleClick
        Try
            txtBarang.Text = DataGridView1.SelectedCells(0).Value
            txtHarga.Text = DataGridView1.SelectedCells(1).Value
            txtBarang.Enabled = False
            btnTambah.Enabled = False
            btnUbah.Enabled = True
            btnHapus.Enabled = True
        Catch ex As Exception
            MsgBox(ex.ToString())
        End Try
    End Sub

Private Sub rbBarang_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles rbBarang.Click
        txtSear.Focus()
    End Sub

Private Sub rbHarga_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles rbHarga.Click
        txtSearch.Focus()
    End Sub

End Class

Langkah berikutnya buat form Login, klik kanan Windows Application pilih Add  Windows Form Application lalu design form dengan menggunakan fasilitas ToolBox seperti Label, TexBox dan Buttons. Pada Propertis pilih masing-masing label, Text ganti jadi Login Administrator, Username, Password.
Pilih masing-masing TextBox, pada Properties Name ganti jadi txtUsername, txtPassword dan pilih juga Buttons pada Properties Text ganti jadi Username, Password


Setelah designnya selesai, doubleclick form tsb lalu ketik lagi script berikut ini :

Public Class LOGIN

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

        Dim Username, Password As String
        Username = txtUsername.Text
        Password = txtPassword.Text
        If Username = "Bobjen" And Password = "Usuman" Then
            Me.Hide()
            MsgBox("Login Successfully", MsgBoxStyle.Information, "Selamat datang ")
            frmINVENTORY.Show()
      Else
            MsgBox("Combination User dan Password, salah", vbCritical + vbOKOnly, "Ulangi")
            txtUsername.Text = vbNullString
            txtPassword.Text = vbNullString

        End If
    End Sub

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
        MsgBox("Are U Sure ???", MsgBoxStyle.Information, "Exit ")
        End
    End Sub
End Class

Setelah selesai pembuatan Form Login, coba koneksikan dengan database yang telah dibuat sebelumnya yaitu pada Ms. Acces, pilih Data > Add Data Source lalu Next......    
 


Lalu pilih New Connection > Change  untuk mengubah koneksi database menjadi Ms.Acces Database File lalu pilih OK



Pilih Browse sambungkan ke dokumen Database yaitu INVENTORY, sebelum OK pilih Test Connetion jika uda tersambung baru pilih OK



Centang ceck List yang ada, lalu pilih Finish


Sebelum menjalankan program ini klik Project > WindowsApplication> Startup Form lalu pilh LOGIN. Ini dimaksudkan agar pada saat program dijalankan staynya pada form tersebut maksudnya form Login yang pertama ditampilkan


Lalu jalankan program tsb dengan menekan F5 pada keyword,lalu...... tararararrara...................
ketik Username anda pada TextBox : Bobjen dan Password : Usuman yang merupakan nama gue..hehehehe, ya kalau ingin beda tinggal ganti aja di script Form Login diatas




Jika penginputan Username dan Password udah berhasil maka akan ditampilkan Form INVENTORY, ya tinggal input aja data yang dimaksud maka akan ditampilkan hasilnya dan akan tersimpan pada Database



Catatan :

Jika List Errornya terdapat statement : ExecuteNonQuery, berarti pada script misalkan Sub Bersih() yang True ganti aja jadi False atau sebaliknya

Jika List Errornya terdapat statement : Based Types, berarti ada kesalahan pada saat inisialisasi variabel, sehingga ga kompitible dengan script yang kita input, misalkan Buttons... pada Properties Namenya btnTambah sedangkan pada script kita inputnya ButtonsTambah nah itu yang harus disamakan.

13 komentar:

Kecci Kun mengatakan...

Boleh kirim projectnya ke email gan?

Admin mengatakan...

saya juga mau gan, hendrykprastyo@gmail.com

Unknown mengatakan...

thanks min tuk artikelnya... membantu bgt buat tugas akhir saya... (y)

Unknown mengatakan...

List Errornya terdapat statement : ExecuteNonQuery, berarti pada script misalkan Sub Bersih() yang True ganti aja jadi False atau sebaliknya. yng mana itu ya saya udah ubah tp tetep ada kaya gitunya gan

Michael Juiverson S mengatakan...

gan saya boleh minta projectnya buat TA
@michael_juiverson@yahoo.com

Unknown mengatakan...

gan boleh umpan lambung project nya ke iduwonk@gmail.com

Unknown mengatakan...

gan boleh mintak project nya ke
ridhuans09@gmail.com

Monyet Tampan mengatakan...

boleh minta project nya ke wisda.daim.m@gmail.com

Unknown mengatakan...

agan, minta tolong kirimin prijectnya yaa gan ke ika.flaming@gmail.com buat TA saya, minta tolong yaa gan ..

Unknown mengatakan...

bosku boleh minta programnya ke
burhanudin0039@gmai.com
suwun

Unknown mengatakan...

bosku boleh minta programnya ke
burhanudin0039@gmai.com
suwun

karunia mengatakan...

gan boleh minta programnya gan untuk materi tugas kuliah gan ke email ini gan
k311sari@gmail.com

Unknown mengatakan...

boleh minta programnya gak ?
email dederachmawan@gmail.com

Posting Komentar