Ini merupakan contoh membuat sebuah program entri sederhana dengan menggunakan Visual Basic .Net 2008. Adapun kasus yang diterapkan adalah Entri Data Dosen, dengan menggunakan sebuah form yang diberi Nama frmDosen. Pertama-tama siapkan database di SQL Server (saya menggunakan SQL Server 2000) dengan tabel bernama tbDosen dengan field-field seperti dibawah ini:
Langkah berikut adalah mempersiapkan form frmDosen dengan tampilan seperti dibawah ini:
adapun kontrol-kontrol yang dibutuhkan adalah:
name kontrol
txtbidangkeahlian textbox
txtJabatanFungsional textbox
txtIdentitas textbox
txtNamaDosen textbox
txts1 textbox
txts2 textbox
txts3 textbox
txttempatlahir textbox
rdtetap radio button
rdlb radio button
dttgllahir dtpicker
cmdsimpan command button
cmdbersih command button
cmdhapus command button
cmdtutup command button
Setelah keduanya disiapkan, saatnya untuk melanjutkan dengan coding program. pertama-tema kita harus mempersiapkan koneksi ke database dengan menggunakan perintah Import pada level form yakni:
Imports System
Imports System.Data
Imports System.Data.SqlClient
letakkan perintah ini diatas public class frmDosen (yang muncul jika kita mendouble click salah satu dari control dari form).
Public Class frmDosen
Private Sub cmdTutup_Click( ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdTutup.Click
Me .Close()
End Sub
Private Sub cmdBersih_Click( ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdBersih.Click
txtKodeDosen.Text = ""
txtKodeDosen.Focus()
End Sub
Private Sub bersihForm()
txtBidangKeahlian.Text = ""
txtIdentitas.Text = ""
txtJabatanFungsional.Text = ""
txtNamaDosen.Text = ""
txtS1.Text = ""
txtS2.Text = ""
txtS3.Text = ""
txtTempatLahir.Text = ""
rdTetap.Checked = True
rdLB.Checked = Not rdTetap.Checked
dtTglLahir.Value = Date .Today
End Sub
Private Sub cmdHapus_Click( ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdHapus.Click
Dim con As SqlConnection
Dim cmdDosen As SqlCommand
Dim strSQL As String
If MsgBox( "Apakah anda yakin akan menghapus data ini?" , MsgBoxStyle.Question + MsgBoxStyle.YesNo, "Konfirmasi hapus data " & Me .Text) = MsgBoxResult.Yes Then
Try
con = New SqlConnection(mdlUtama.cnString)
con.Open()
strSQL = "delete FROM tbdosen WHERE kodedosen='" & txtKodeDosen.Text & "'"
cmdDosen = New SqlCommand(strSQL, con)
cmdDosen.ExecuteScalar()
Catch x As Exception
MsgBox( "Terjadi kesalahan pada hapus di " & Me .Text & " dengan pesan:" & Chr(13) & x.Message, MsgBoxStyle.Critical, "Kesalahan pada:" & Me .Text)
End Try
End If
End Sub
Private Sub frmDosen_KeyPress( ByVal sender As Object , ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles Me .KeyPress
If Asc(e.KeyChar) = 13 Then
SendKeys.Send( "{tab}" )
End If
End Sub
Private Sub frmDosen_Load( ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase .Load
End Sub
Private Sub txtKodeDosen_KeyPress( ByVal sender As Object , ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtKodeDosen.KeyPress
e.KeyChar = Chr(Asc(UCase(e.KeyChar)))
End Sub
Private Sub txtKodeDosen_TextChanged( ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtKodeDosen.TextChanged
Dim conDosen As SqlConnection
Dim comDosen As SqlCommand
Dim rsDosen As SqlDataReader
Dim strSQL As String
If txtKodeDosen.Text = "" Then
bersihForm()
Else
Try
conDosen = New SqlConnection(mdlUtama.cnString)
conDosen.Open()
strSQL = "SELECT * FROM tbdosen WHERE kodedosen='" & txtKodeDosen.Text & "'"
comDosen = New SqlCommand(strSQL, conDosen)
rsDosen = comDosen.ExecuteReader
If rsDosen.Read Then
txtNamaDosen.Text = rsDosen( "nama" ).ToString
txtTempatLahir.Text = rsDosen( "tempatlahir" ).ToString
dtTglLahir.Value = Format(rsDosen( "tgllahir" ), "yyyy-MM-dd" )
txtIdentitas.Text = rsDosen( "identitas" ).ToString
txtS1.Text = rsDosen( "pendidikans1" ).ToString
txtS2.Text = rsDosen( "pendidikans2" ).ToString
txtS3.Text = rsDosen( "pendidikans3" ).ToString
txtJabatanFungsional.Text = rsDosen( "jabfungsional" ).ToString
txtBidangKeahlian.Text = rsDosen( "bidangkeahlian" ).ToString
rdTetap.Checked = IIf(rsDosen( "dosentetap" ).ToString = 0, True , False )
rdLB.Checked = Not rdTetap.Checked
Else
bersihForm()
End If
Catch ex As Exception
MsgBox( "Terjadi kesalahan pada pembacaan di " & Me .Text & " dengan pesan:" & Chr(13) & ex.Message, MsgBoxStyle.Critical, "Kesalahan pada:" & Me .Text)
End Try
End If
End Sub
Private Sub cmdSimpan_Click( ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdSimpan.Click
Dim con As SqlConnection
Dim comDosen As SqlCommand
Dim rsDosen As SqlDataReader
Dim strSQL As String
Try
con = New SqlConnection(mdlUtama.cnString)
strSQL = "SELECT * FROM tbdosen WHERE kodeDosen='" & txtKodeDosen.Text & "'"
con.Open()
comDosen = New SqlCommand(strSQL, con)
rsDosen = comDosen.ExecuteReader
If rsDosen.Read Then
If MsgBox( "Data ini sudah ada, mau diperbaiki?" , MsgBoxStyle.Question + MsgBoxStyle.YesNo, "Konfirmasi edit data" ) = MsgBoxResult.Yes Then
strSQL = "UPDATE tbdosen set nama='" & txtNamaDosen.Text & "',tempatlahir='" & txtTempatLahir.Text & "',tgllahir='" & Format(dtTglLahir.Value, "yyyy-MM-dd" ) & "',identitas='" & txtIdentitas.Text & "',pendidikans1='" & txtS1.Text & "',pendidikans2='" & txtS2.Text & "',pendidikans3='" & txtS3.Text & "',jabfungsional='" & txtJabatanFungsional.Text & "',bidangkeahlian='" & txtBidangKeahlian.Text & "',dosentetap=" & IIf(rdTetap.Checked = True , 0, 1) & " WHERE kodedosen='" & txtKodeDosen.Text & "'"
Else
strSQL = ""
End If
Else
strSQL = "INSERT INTO tbdosen(kodedosen,nama,tempatlahir,tgllahir,identitas,pendidikans1,pendidikans2,pendidikans3,jabfungsional,bidangkeahlian,dosentetap) VALUES('" & txtKodeDosen.Text & "','" & txtNamaDosen.Text & "','" & txtTempatLahir.Text & "','" & Format(dtTglLahir.Value, "yyyy-MM-dd" ) & "','" & txtIdentitas.Text & "','" & txtS1.Text & "','" & txtS2.Text & "','" & txtS3.Text & "','" & txtJabatanFungsional.Text & "','" & txtBidangKeahlian.Text & "'," & IIf(rdTetap.Checked = True , 0, 1) & ")"
End If
rsDosen.Close()
If strSQL <> "" Then
comDosen = New SqlCommand(strSQL, con)
comDosen.ExecuteScalar()
End If
con.Close()
comDosen = Nothing
con = Nothing
txtKodeDosen.Text = ""
Catch x As Exception
MsgBox( "Terjadi kesalahan pada hapus di " & Me .Text & " dengan pesan:" & Chr(13) & x.Message, MsgBoxStyle.Critical, "Kesalahan pada:" & Me .Text)
End Try
End Sub
End Class