Step by step best practice belajar Visual Basic 6 PART 3, Membuat Form CRUD
Ini adalah part terakhir dari best practice belajar visual basic, mari kita membuat sebuah form untuk menampilkan data dan operasi Buat, Simpan, Edit dan Hapus Data, berikut langkah-langkahnya:
2. Buat Form Mahasiswa, objectnya seperti berikut ini:
TextBox txtNim
Textbox txtNama
Textbox txtAlamat
Textbox txtTempatLahir
DTPicker dtpTglLahir
Textbox txtKota
Data Combo dcFakultas
TextBox txtCariNama
Datagrid DataGrid1
TextBox txtCariAlamat
3. Tampilannya sebagai berikut:
4. Buat modul untuk menyimpan variable global, beri nama modVar, kemudian buat modul untuk menyimpan procedure yang sering kita pakai, beri nama modUtil, susunan folder projectnya akan terlihat seperti berikut:
kalau anda malas mengkopas artikel ini, silahkan download source codenya di sini
- Buat database Mahasiswa, sebagai contohnya saya akan memakai database Microsoft Access, mengapa Microsoft Access? karena hampir semua komputer pasti ada Microsoft Accessnya. Saya akan membagi cara koneksi dengan database lain di postingan saya yang lain.
- Buat Tabel Fakultas
| Nama Field | Type Field |
| IdFakultas | AutoNumber |
| NamaFakultas | Text(255) |
- Buat Tabel Mahasiswa, komposisi fieldnya seperti dibawah ini:
| Nama Field | Type Field |
| NIM | Text(10) |
| Nama | Text(50) |
| Tempat Lahir | Text(30) |
| TglLahir | Date/Time |
| Alamat | Text(50) |
| Kota | Text(30) |
| IdFakultas | Number |
| Type Object Nama Object |
TextBox txtNim
Textbox txtNama
Textbox txtAlamat
Textbox txtTempatLahir
DTPicker dtpTglLahir
Textbox txtKota
Data Combo dcFakultas
TextBox txtCariNama
Datagrid DataGrid1
TextBox txtCariAlamat
3. Tampilannya sebagai berikut:
5. Berikut ini contoh isi modVar
Public dbconn As ADODB.Connection
Public rs As ADODB.Recordset
Public dbCmd As ADODB.Command
Public strSQL As String
6. dan ini isi ModUtil
'Fungsi untuk membuka koneksi
Public Function OpenConnection()
Set dbconn = New ADODB.Connection
dbconn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + App.Path + "\mahasiswa.mdb;Persist Security Info=False"
dbconn.CursorLocation = adUseClient
dbconn.Open
End Function
'Fungsi untuk membuat query yang menghasilkan recordset
Public Function bukaRs(Query As String, Record As Recordset)
Set Record = New ADODB.Recordset
Record.Open Query, dbconn, adOpenStatic, adLockReadOnly
End Function
'Procedure untuk mengisi Data Combo
Public Sub IsiDataSource(dcName As DataCombo, rsTemp As ADODB.Recordset, Query As String)
Set rs = New ADODB.Recordset
Set rs = dbconn.Execute(Query)
Set dcName.RowSource = rsTemp
dcName.BoundColumn = rsTemp.Fields(0).Name
dcName.ListField = rsTemp.Fields(1).Name
End Sub
'Procedure untuk menjalankan perintah query untuk simpan, update dan delete
Public Sub execCmd(Cmd As ADODB.Command, Query As String)
Dim num_Affected As Integer
Set Cmd = New ADODB.Command
Cmd.ActiveConnection = dbconn
Cmd.CommandText = Query
Cmd.CommandType = adCmdText
Cmd.CommandTimeout = 60
Cmd.Execute num_Affected
If num_Affected = 0 Then
Call MsgBox("Transaksi Gagal")
Else
Call MsgBox("Transaksi Berhasil")
End If
End Sub
7. Sekarang saatnya mengkoding Form1. berikut ini langsung saya copykan disini:Private Sub cmdBatal_Click()
Call BersihForm
End Sub
Private Sub cmdHapus_Click()
strSQL = "Delete from Mahasiswa where NIM = '" & txtNIM.Text & "'"
Call execCmd(dbCmd, strSQL)
Call BersihForm
FillGrid
End Sub
Private Sub cmdSimpan_Click()
strSQL = "select Nim from mahasiswa where Nim = '" & txtNIM.Text & "';"
Call bukaRs(strSQL, rs)
If rs.EOF = True Or rs.BOF = True Then
strSQL = "Insert into Mahasiswa (Nim, Nama, Alamat, TempatLahir, TglLahir, Kota, IdFakultas) values " & _
"('" & txtNIM.Text & "', '" & txtNama.Text & "', '" & txtAlamat.Text & "', '" & txtTempatLahir.Text & "', '" & dtpTglLahir.Value & "', '" & txtKota.Text & "', '" & dcFakultas.BoundText & "')"
Call execCmd(dbCmd, strSQL)
Else
strSQL = "Update Mahasiswa set Nama = '" & txtNama.Text & "', Alamat = '" & txtAlamat.Text & "', TempatLahir = '" & txtTempatLahir & "', TglLahir = '" & dtpTglLahir.Value & "', Kota = '" & txtKota.Text & "', IdFakultas = '" & dcFakultas.BoundText & "' Where Nim = '" & txtNIM.Text & "'"
Call execCmd(dbCmd, strSQL)
End If
Call BersihForm
FillGrid
End Sub
Private Sub DataGrid1_Click()
If DataGrid1.ApproxCount < 1 Then Exit Sub
With DataGrid1
txtNIM.Text = .Columns("Nim").Value
txtNama.Text = .Columns("Nama").Value
txtAlamat.Text = .Columns("Alamat").Value
txtTempatLahir.Text = .Columns("TempatLahir").Text
dtpTglLahir.Value = .Columns("TglLahir").Value
txtKota.Text = .Columns("Kota").Text
dcFakultas.BoundText = .Columns("IdFakultas").Value
End With
cmdHapus.Enabled = True
End Sub
Private Sub dtpTglLahir_KeyDown(KeyCode As Integer, Shift As Integer)
If KeyCode = vbKeyReturn Then txtKota.SetFocus
End Sub
Private Sub Form_Load()
Call OpenConnection
Call BersihForm
Call IsiDataSource(dcFakultas, rs, "Select IdFakultas, NamaFakultas from Fakultas")
FillGrid
End Sub
Private Sub BersihForm()
txtNIM.Text = ""
txtNama.Text = ""
txtAlamat.Text = ""
txtKota.Text = ""
txtTempatLahir.Text = ""
dtpTglLahir.Value = Now
dcFakultas.BoundColumn = ""
cmdHapus.Enabled = False
FillGrid
End Sub
Private Sub txtAlamat_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then txtTempatLahir.SetFocus
End Sub
Private Sub txtCariAlamat_Change()
FillGrid
End Sub
Private Sub txtCariNama_Change()
FillGrid
End Sub
Private Sub txtKota_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then dcFakultas.SetFocus
End Sub
Private Sub txtNama_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then txtAlamat.SetFocus
End Sub
Private Sub txtTempatLahir_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then dtpTglLahir.SetFocus
End Sub
Public Sub FillGrid()
strSQL = "select a.Nim, a.Nama, a.TempatLahir, a.TglLahir, a.Alamat, a.Kota, b.NamaFakultas, a.IdFakultas from Mahasiswa as a inner join Fakultas as b on a.IdFakultas = b.IdFakultas where a.Nama like '%" & txtCariNama.Text & "%' and a.Alamat like '%" & txtCariAlamat.Text & "%'"
Call bukaRs(strSQL, rs)
Set DataGrid1.DataSource = rs
End Sub
Selesai sudah tutorial Step by step best practice belajar Visual Basic 6.
kalau anda malas mengkopas artikel ini, silahkan download source codenya di sini

No comments for "Step by step best practice belajar Visual Basic 6 PART 3, Membuat Form CRUD"
Post a Comment