Membuat CRUD Database MySQL - VB 6 ( Bagian 4 )

Hallo pembaca,

Kali ini saya akan melanjutkan pembahasan tentang membuat class crud database mysql dengan vb6, pastikan anda sudah membaca artikel sebelumnya yaitu Membuat CRUD Database MySQL - VB 6 (Bagian 3). Setelah kita membuat proses simpan dan menampilkan data, kali ini akan saya bahas mengenai mengubah data dan menghapus data. Dalam proses mengubah data dan menghapus data kita akan gunakan fungsi dari class yang sudah kita buat sebelumnya. Anda tidak perlu menambahkan button ubah, karena proses ubah data akan dijadikan satu dengan proses simpan. Logikanya adalah jika ada data sebagai primary key yang sama akan menjalankan proses ubah, tentu saja akan muncul dialog konfirmasi kalau data sudah pernah dimasukkan. Untuk lebih jelasnya anda bisa perhatihan gambar dibawah ini :
Sekarang kita langsung saja ke pengkodean, ikuti langkah-langkah sesuai dibawah ini :
1. Buat fungsi untuk menampilkan data yang telah terpilih atau terseleksi ke textbox, fungsi saya berinama "ListViewToForm" :
  
Function ListViewToForm()
    On Error Resume Next
    With lvwData
        Me.txtKodeBarang.Text = .SelectedItem.ListSubItems.Item(1)
        Me.txtNamaBarang.Text = .SelectedItem.ListSubItems.Item(2)
        Me.txtHarga.Text = .SelectedItem.ListSubItems.Item(3)
    End With
End Function

2. Setelah kita buat fungsi tersebut, kita panggi di event Listview_Item_Click()
  
Private Sub lvwData_ItemClick(ByVal Item As MSComctlLib.ListItem)
    Call ListViewToForm
    Me.cmdTambah.Caption = "Batal"
    Me.cmdSimpan.Caption = "Ubah"
    Me.cmdHapus.Enabled = True
    Me.cmdSimpan.Enabled = True
    Me.txtNamaBarang.Enabled = True
    Me.txtHarga.Enabled = True
End Sub

3. Sekarang kita masuk ke pengkodean simpan data, ubahlah sesuai dengan kode dibawah ini :
  
Private Sub cmdSimpan_Click()
    Dim strTable As String
    Dim dtFields(2) As Variant
    Dim dtValues(2) As Variant
    Dim strWhere As String
   
    strTable = "tblbarang"
   
    dtFields(0) = "kodebarang"
    dtFields(1) = "namabarang"
    dtFields(2) = "harga"
   
    dtValues(0) = Trim(Me.txtKodeBarang.Text)
    dtValues(1) = Trim(Me.txtNamaBarang.Text)
    dtValues(2) = Trim(Me.txtHarga.Text)
   
    With myDB
        strWhere = dtFields(0) & "='" & dtValues(0) & "'"
       
        .Query = ""
        .Query = "SELECT * FROM " & strTable & " WHERE " & strWhere
        .RunQuery
         strErr = .ErrQuery
       
        If .IsRun Then
            If .RecordSet.RecordCount <> 0 Then
                strPesan = MsgBox("Data sudah ada, " & _
                "ingin mengubah ?", _
                vbQuestion + vbYesNo + vbDefaultButton2, _
                "Ubah Data")
                                
                If strPesan = vbYes Then
                    .Query = ""
                    .RunQueryUpdate strTable, dtFields, _
                    dtValues, strWhere
                    strErr = .ErrQuery
                End If
            Else
                .Query = ""
                .RunQueryInsert strTable, dtFields, _
                dtValues
                strErr = .ErrQuery
            End If
        End If
    End With
    Call LoadGrid
    Call cmdTambah_Click
End Sub

4. Setelah kita merubah fungsi simpan data menjadi sekaligus ubah data, sekarang kita buat kode untuk proses hapus data, pada Event cmdHapus_Click silahkan tambahkan kode dibawah ini :
  
Private Sub cmdHapus_Click()
    Dim strTable As String
    Dim dtFields(1) As Variant
    Dim dtValues(1) As Variant
    Dim strWhere As String
    Dim strErr As String
    Dim strPesan As String
    Dim strKodeBarang As String
    
    strKodeBarang = Trim(Me.txtKodeBarang.Text)
    
    If strKodeBarang = "" Then
        MsgBox "Kode Barang tidak boleh kosong", vbInformation
        Exit Sub
    End If
    
    With myDB
    strTable = "tblbarang"
   
    dtFields(0) = "kodebarang"
   
    dtValues(0) = strKodeBarang
    strWhere = dtFields(0) & "='" & dtValues(0) & "'"
   
    .Query = "SELECT * FROM " & strTable & " WHERE " & strWhere
    .RunQuery
    strErr = .ErrQuery
   
        If .RecordSet.RecordCount <> 0 Then
            strPesan = MsgBox("Yakin ingin menghapus?", _
            vbQuestion + vbYesNo + vbDefaultButton2, _
            "Hapus Data")
            
            If strPesan = vbYes Then
                .Query = ""
                .RunQueryDelete strTable, strWhere
                strErr = .ErrQuery
            End If
        Else
            MsgBox "Data tidak ditemukan", vbInformation
        End If
    End With
    Call LoadGrid
    Call cmdTambah_Click
End Sub

Ok, sekrang kita jalankan projectnya, anda pilih salah satu data yang di listview kemudian ubahlah data tersebut dan pilih simpan atau hapus, maka akan muncul konfirmasi proses ubah data ataupun hapus data. Saya menggunakan database MySQL dan menggunakan konektor ODBC 5.1.
Semoga bermanfaat, terima kasih

Belum ada Komentar untuk "Membuat CRUD Database MySQL - VB 6 ( Bagian 4 )"

Posting Komentar

Catatan: Hanya anggota dari blog ini yang dapat mengirim komentar.

Iklan Atas Artikel

Iklan Tengah Artikel 1

Iklan Tengah Artikel 2

Iklan Bawah Artikel