Beranda > Programming > Membuat Program input dan edit data dengan VB.NET 2005 dan SQL Server 2005 (hampir 100% murni coding)

Membuat Program input dan edit data dengan VB.NET 2005 dan SQL Server 2005 (hampir 100% murni coding)

Program Input, Edit, Hapus (Manipulasi data) merupakan program standar yang selalu ada pada saat seorang programmer membuat aplikasi.

Kebisaan membuat program dari zaman Basic, Pascal, clipper, foxpro sampai ke Visual Basic 5 dan Visual Basic 6 yang selalu mengandalkan kode program dalam membangun program, bagi saya masih terbawa bawa ke era Visual yang telah didukung dengan Wizard.

Pada artikel kali ini saya coba memaparkan cara membuat program Input, Edit, Hapus dengan mengambil contoh pengolahan data supplier, hampir 100% saya pakai code program.

Contoh yang dibahas sifatnya sangat dasar sekali, jadi untuk rekan rekan yang sudah sangat berpengalaman dalam pemrograman dimohon saran dan info yang membangun demi kebaikan kemampuan programming dimasa datang.

Untuk rekan pemula mudahan mudahan artikel ini bisa membantu dalam memperdalam pengetahuan programming

Mari kita mulai saja.

Siapkan sebuah database di SQL Server 2005, pada komputer saya servernya saya beri nama ISLAM, dengan nama database GUDANG

Untuk server pembaca silahkan sesuaikan sendiri sesuai keinginan.

Kita lanjutkan

Buat table supplier dengan susunan field seperti gambar berikut :

Sekarang aktifkan Visual Basic.NET 2005 dan buat sebuah project baru namanya juga terserah anda. (saya sendiri memberi nama project ini GUDANG)

Siapkan sebuah Module baru yang berfungsi untuk membuat koneksi kedatabase atau tempat menyimpan fungsi atau prosedur yang kita butuhkan dalam pembuatan program.

Langkah pembuatan module : klik kanan nama project yang ada di Window Solution Explorer, lalu pilih Add –> Module. Secara default VB akan memberi nama Module1.

berikut ini gambar Solution Explorer :

Pada jendela Code program Module1 masukkan kode berikut :

Imports System.Data.SqlClient

Module Module1

Public Function Koneksi() As SqlConnection

Dim Conn As New SqlConnection

Conn = New SqlConnection(“server=islam; database=gudang; user=sa;password=intan;”)

Conn.Open()

Return Conn

End Function

End Module

Sekali lagi untuk nama server, database, user dan password sesuaikan dengan komputer yang anda pakai.

Tahap selanjutnya siapkan form baru dengan contoh disain seperti gambar berikut.

Komponen yang ada pada form terdiri dari 6 Label (text label sesuaikan dengan gambar),

6 Buah Textbox Masing masing diberi nama :

TextKode

TextNama

TextAlamat

TextTelepon

TextKontakPerson

TextEmail

6 Buah Button, masing diberi nama :

ButtonTambah

ButtonSimpan

ButtonHapus

ButtonUpdate

ButtunKeluar

Buttun1 (Loading data)

1 Buah DatagridView dengan nama GridSupplier.

Saatnya Coding……,

Setelah semua komponen tersusun dalam Form saat kita melakukan coding program.

Pada Menu Bar, pilih menu View à Code

Pada bagian atas ketikan kode berikut untuk meng-import Class Data SQL sehingga kita bisa melakukan koneksi ke database.

Imports System.Data.SqlClient

Selanjutnya pelajari code program berikut baris perbaris sambil memperhatikan komentar kode program yang saya sisipkan pada setiap prosedur.

Kode komentar selalu diawali dengan tanda kutip satu (‘)

Public Class Supplier

‘ Siapkan variabel keneksi

Dim koneksi = Module1.Koneksi

‘Prosedur load form (aktifkan denfan double klik pada form)

Private Sub Supplier_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

‘ panggil prosedur PanggilData

PanggilData()

ButtonSimpan.Enabled = False

ButtonHapus.Enabled = False

ButtonUpdate.Enabled = False

End Sub

‘Prosedur membuat datagridview memiliki warna Alternate

Sub GridBerwarna()

With Me.GridSupplier

.RowsDefaultCellStyle.BackColor = Color.BlanchedAlmond

.AlternatingRowsDefaultCellStyle.BackColor = Color.Azure

End With

End Sub

‘ Prosedur panggildata

Sub PanggilData()

Dim Adapter As New SqlDataAdapter(“select * from supplier”, Module1.Koneksi)

Dim dt As New DataTable(“Supplier”)

Adapter.Fill(dt)

GridSupplier.DataSource = dt

Call GridBerwarna()

End Sub

‘Prosedur Form kosong (berfungsi untuk mengosongkan TetxBox dangan pengaturan focus)

Sub FormKosong()

TextKode.Text = “”

TextNama.Text = “”

TextAlamat.Text = “”

TextTelepon.Text = “”

TextKontakPerson.Text = “”

TextEmail.Text = “”

TextKode.Focus()

End Sub

‘Prosedur mengaktifkan TextBox

Sub FormHidup()

TextKode.Enabled = True

TextNama.Enabled = True

TextAlamat.Enabled = True

TextTelepon.Enabled = True

TextKontakPerson.Enabled = True

TextEmail.Enabled = True

End Sub

‘Prosedure Mengatur Button dan Textbox

Sub FormNormal()

Call FormKosong()

ButtonTambah.Enabled = True

ButtonHapus.Enabled = False

ButtonSimpan.Enabled = False

ButtonKeluar.Text = “&Keluar”

End Sub

‘Prosedur untuk tambah data

Private Sub ButtonTambah_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ButtonTambah.Click

Call FormHidup()

Call FormKosong()

Call PanggilData()

ButtonSimpan.Enabled = True

ButtonTambah.Enabled = False

ButtonHapus.Enabled = False

ButtonUpdate.Enabled = False

ButtonKeluar.Text = “&Normal”

TextKode.Focus()

End Sub

‘Prosedur untuk simpan data

Private Sub ButtonSimpan_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ButtonSimpan.Click

Dim Sql As String = String.Empty

‘Cek Kode

‘Uji data apakah textKode tidak kosong

If TextKode.Text <> “” Then

‘Jika tidak kosong tambahkan data

Sql = “INSERT INTO Supplier(KodeSupplier,NamaSupplier,AlamatSupplier,Telepon,KontakPerson,email)” _

& ” VALUES (‘” & TextKode.Text & “‘,'” & TextNama.Text & “‘, ‘” & TextAlamat.Text & “‘, ‘” _

& TextTelepon.Text & “‘, ‘” & TextKontakPerson.Text & “‘, ‘” & TextEmail.Text & “‘)”

‘ Periksa hati-hati tanda kutip untuk setiap variabel, salah ketik mengakibatkan query anda tidak akan terbaca.

‘ Persiapan execusi Query Insert

Dim command As New SqlCommand(Sql, Module1.Koneksi)

command.ExecuteNonQuery()

Module1.Koneksi.Close()

‘ sampaikan pesan bahwa data telah tersimpan.

MessageBox.Show(“Data dengan kode “ & TextKode.Text & ” Sudah disimpan”, “Simpan data Sukses”, MessageBoxButtons.OK, MessageBoxIcon.Information)

‘ sampaikan juga pesan jika penyimpanan gagal.

Else

MessageBox.Show(“Isikan dulu data”, “Simpan Gagal”, MessageBoxButtons.OK, MessageBoxIcon.Information)

TextKode.Focus()

End If

‘ Panggil prosedur FormKosong dan prosedur panggil data.

Call FormKosong()

Call PanggilData()

End Sub

‘ ini prosedur untuk mengganti tab jadi enter dan prosedur untuk mencari apakah data pada text kode sudah pernah ada atau belum untuk menghindari redudansi data.

Private Sub TextKode_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TextKode.KeyPress

If e.KeyChar = Chr(Keys.Enter) Then

‘mengirim key tab

SendKeys.Send(“{tab}”)

End If

‘buat koneksi untuk pencarian data yang sudah ada

Dim Adapter As New SqlDataAdapter(“SELECT * from Supplier where KodeSupplier = ‘” _

& TextKode.Text & “‘”, Module1.Koneksi)

Dim dt As New DataTable(“Supplier”)

Adapter.Fill(dt)

‘Jika data yang dicari ada

If dt.Rows.Count <> 0 Then

MessageBox.Show(“Data dengan kode “ & TextKode.Text & ” Sudah ada, inputkan data lain”, “Ditemukan data yang sama”, MessageBoxButtons.OK, MessageBoxIcon.Information)

TextKode.Text = ” “

End If

GridSupplier.DataSource = dt

End Sub

‘ ini prosedur untuk mengganti tab jadi enter

Private Sub TextNama_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TextNama.KeyPress

‘tab to enter

If e.KeyChar = Chr(Keys.Enter) Then

‘mengirim key tab

SendKeys.Send(“{tab}”)

End If

End Sub

‘ ini prosedur untuk mengganti tab jadi enter

Private Sub TextAlamat_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TextAlamat.KeyPress

‘tab to enter

If e.KeyChar = Chr(Keys.Enter) Then

‘mengirim key tab

SendKeys.Send(“{tab}”)

End If

End Sub

‘ ini prosedur untuk mengganti tab jadi enter

Private Sub TextTelepon_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TextTelepon.KeyPress

‘tab to enter

If e.KeyChar = Chr(Keys.Enter) Then

‘mengirim key tab

SendKeys.Send(“{tab}”)

End If

End Sub

‘ ini prosedur untuk mengganti tab jadi enter

Private Sub TextKontakPerson_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TextKontakPerson.KeyPress

‘tab to enter

If e.KeyChar = Chr(Keys.Enter) Then

‘mengirim key tab

SendKeys.Send(“{tab}”)

End If

End Sub

‘ ini prosedur untuk mengganti tab jadi enter

Private Sub TextEmail_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TextEmail.KeyPress

‘tab to enter

If e.KeyChar = Chr(Keys.Enter) Then

‘mengirim key tab

SendKeys.Send(“{tab}”)

End If

End Sub

‘prosedur untuk menghapus data

Private Sub ButtonHapus_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ButtonHapus.Click

If GridSupplier.CurrentRow.Index > -1 Then

Dim Sql As String = String.Empty

Sql = “Delete from Supplier where KodeSupplier = ‘” & TextKode.Text & “‘”

Dim command As New SqlCommand(Sql, Module1.Koneksi)

command.ExecuteNonQuery()

Module1.Koneksi.Close()

MessageBox.Show(“Data dengan kode “ & TextKode.Text & ” Sudah dihapus”, “Penghapusan Sukses”, MessageBoxButtons.OK, MessageBoxIcon.Information)

Call FormKosong()

Call PanggilData()

ButtonHapus.Enabled = False

ButtonUpdate.Enabled = False

Else

MessageBox.Show(“Pilih dulu data yang akan dihapus”, “Tidak ada data yang akan dihapus”, MessageBoxButtons.OK, MessageBoxIcon.Information)

End If

End Sub

‘prosedur untuk Update data

Private Sub ButtonUpdate_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ButtonUpdate.Click

Dim Sql As String = String.Empty

‘Cek Kode

‘Update

Sql = “UPDATE Supplier SET KodeSupplier= ‘” & TextKode.Text & “‘,” _

& “NamaSupplier='” & TextNama.Text & “‘,AlamatSupplier = ‘” & TextAlamat.Text & “‘,” _

& “Telepon='” & TextTelepon.Text & “‘,KontakPerson = ‘” & TextKontakPerson.Text & “‘,” _

& “email = ‘” & TextEmail.Text & “‘ WHERE kodeSupplier = ‘” & TextKode.Text & “‘”

Dim command As New SqlCommand(Sql, Module1.Koneksi)

command.ExecuteNonQuery()

Module1.Koneksi.Close()

MessageBox.Show(“Data dengan kode “ & TextKode.Text & ” Sudah diupdate”, “Update data Sukses”, MessageBoxButtons.OK, MessageBoxIcon.Information)

Call FormKosong()

Call PanggilData()

ButtonHapus.Enabled = False

ButtonUpdate.Enabled = False

End Sub

Private Sub ButtonKeluar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ButtonKeluar.Click

If ButtonKeluar.Text = “&Keluar” Then

Me.Close()

Else

Call FormNormal()

End If

End Sub

‘prosedur untuk loading data ke dataqridview (refresh data, setelah dilakukan query

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

Call PanggilData()

End Sub

‘ini prosedur yang sangat berperan,karena prosedure ini akan membuat setiap baris yang cel yang kita klik pada data grid view, maka isi dari setiap field akan dikirim kedalam textbox, sehingga kita dapat melakukan manipulasi data.

Prosedure ini mirip dengan Binding manager, Insyallah akan kita bahas pada artikel berikutnya.

Private Sub GridSupplier_CellClick(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles GridSupplier.CellClick

Dim i As Integer

i = GridSupplier.CurrentRow.Index

TextKode.Text = GridSupplier.Item(0, i).Value

TextNama.Text = GridSupplier.Item(1, i).Value

TextAlamat.Text = GridSupplier.Item(2, i).Value

TextTelepon.Text = GridSupplier.Item(3, i).Value

TextKontakPerson.Text = GridSupplier.Item(4, i).Value

TextEmail.Text = GridSupplier.Item(5, i).Value

ButtonHapus.Enabled = True

ButtonUpdate.Enabled = True

End Sub

End Class

Sampai disini dulu artikel tentang Program input dan edit data dengan VB.NET 2005 dan SQL Server 2005, semoga menjadi ilmu yang bermanfaat. Saya sangat mengharapkan saran komentar anda, sehingga membuat ilmu pengetahuan berkembang, Salam programming

@pri

Penghujung Juli 2008, Sarijadi, Bandung

About these ads
  1. Juli 27, 2008 pukul 4:44 pm

    Alhamdulillah Da, saya mah kagak ngarti mau dibaca berulang-ulang juga. Tapi salut aja ada orang yang mau bagi-bagi ilmu…

  2. saefudin
    Agustus 19, 2008 pukul 4:47 am

    bisa nggak kirim source code vbnet 2008

  3. aprijunaidi
    Agustus 19, 2008 pukul 5:12 am

    Bisa, InsyAllah dalam 2 hari ini saya siapkan source codenya dan bisa didownload, Oya.. ngomong-ngomong saya sudah tulis juga artikel serupa di http://programmingarea.blogspot.com, di blog itu aku coba pecah artikelnya jadi beberapa bagian dan baru di posting bagian I, biar nggak terlalu panjang untuk diposting. untuk bagian pertama aku tulis bagian proses tambah data aja dulu. dan bisa di download codenya dalam format ZIP tapi diketik dalam MS Word.

    terimakasih telah berkunjung keblog ku :
    jangan lupa kunjungi juga blogku yang lain
    http://programmingarea.blogspot.com dan http://aprijunaidi.blogspot.com
    salam

    apri

  4. rudito
    Agustus 30, 2008 pukul 1:49 am

    gua ikutan dong mau nanya2 juga ya saya punya 2 tabel 1 database gimana si biar bisa joint tabelnya?????toloooooongin gue yeee thanks

  5. aprijunaidi
    Agustus 31, 2008 pukul 1:20 am

    saya usahain ya.., kalau udah kelar saya posting, diblog ini atau di http://programmingarea.blogspot.com

    salam kenal
    apri

  6. saipul
    September 12, 2008 pukul 3:10 am

    alhadulillah..terima kasih banyak ,ini yang saya cari.Mudah mudahan
    ilmu yang diberikan bermanpaat dikemudian hari. Amin

  7. aprijunaidi
    September 13, 2008 pukul 1:04 am

    Terimakasih Mas saipul atas doanya dan telah berkunjung ke Blogku. jangan lupa kunjungi blogku yang lain : http://programmingarea.blogspot.com blog ini insyaallah akan disusun untuk ilmu komputer, khususnya programming.

    salam
    apri

  8. danny
    Oktober 16, 2008 pukul 7:12 am

    pak, klo ada error “type ‘sqldataAdapter’ is not defined” kira2 kenapa ya ?
    makasih, blog nya bagus banget mas…

  9. danny
    Oktober 16, 2008 pukul 7:16 am

    eh… udah bisa ding pak…
    salah naruh Imports System.Data.SqlClient nya :D
    saya coba2 dulu ya
    dahsyat… saya lama banget cari pelajaran ginian
    makasih banyak pak….

  10. danny
    Oktober 17, 2008 pukul 7:22 am

    pak, klo ganti caption header di data gridview gmana carae y?
    trus supaya column nya auto resize juga.
    saya di kota kecil, cari buku programming susah banget
    jadi cuman punya internet sbg sumber
    makasih pak…

  1. No trackbacks yet.

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Logout / Ubah )

Twitter picture

You are commenting using your Twitter account. Logout / Ubah )

Facebook photo

You are commenting using your Facebook account. Logout / Ubah )

Google+ photo

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s

Ikuti

Get every new post delivered to your Inbox.

%d bloggers like this: