Untitled
unknown
plain_text
a year ago
3.6 kB
10
Indexable
Public rsKaryawan As New ADODB.Recordset
Private Sub Form_Load()
Pilih_Tabel_Karyawan
Tampil_Tabel_Karyawan
Text_Alamat_Karyawan = ""
Text_Gaji_Karyawan = ""
Text_Jabatan_Karyawan = ""
Text_Kode_Karyawan = ""
Text_Nama_Karyawan = ""
End Sub
Sub Pilih_Tabel_Karyawan()
On Error GoTo ErrorHandler
QKaryawan = "SELECT * FROM Tabel_Karyawan"
'Pastikan koneksi terbuka
If koneksi.State = adStateClosed Then
Koneksi_DB
End If
'Tutup recordset jika terbuka
If rsKaryawan.State = adStateOpen Then
rsKaryawan.Close
End If
'Buka recordset
rsKaryawan.Open QKaryawan, koneksi, adOpenDynamic, adLockOptimistic
Exit Sub
ErrorHandler:
MsgBox "Error: " & Err.Description
End Sub
Sub Tampil_Tabel_Karyawan()
Set DataGrid1.DataSource = rsKaryawan
End Sub
Private Sub Hapus_Karyawan_Click()
'menghapusdata di datagrid
If MsgBox("Apakah data akan dihapus?)", vbYesNo) = vbYes Then
rsKaryawan.Delete
End If
End Sub
Private Sub Simpan_Karyawan_Click()
'Menyimpan Data dari text box ke datagrid
If MsgBox("Apakah Data Akan Disimpan?", vbYesNo) = vbYes Then
'Data berasal dari nama dari setiap Text Box
Simpan_Tabel_Karyawan Text_Kode_Karyawan.Text, Text_Nama_Karyawan.Text, Text_Alamat_Karyawan.Text, Text_Jabatan_Karyawan.Text, Text_Gaji_Karyawan.Text
MsgBox "Data Berhasil Disimpan", vbOKOnly, "Informasi"
End If
rsKaryawan.Sort = DataGrid1.Columns(0).DataField
End Sub
'kd, nm, al, jb, dan gj merupakan variabel (tidak berdasar data)
Sub Simpan_Tabel_Karyawan(kd As String, nm As String, al As String, jb As String, gj As String)
Dim QSimpan As String
'Tabel_Karyawan merupakan nama tabel yang terdapat pada access
' ID, Nama, Alamat, Jabatan, dan Gaji merupakan nama setiap kolom berdasarkan pada access
QSimpan = "INSERT INTO Tabel_Karyawan(ID, Nama, Alamat, Jabatan, Gaji) VALUES('" & kd & "', '" & nm & "', '" & al & "', '" & jb & "', '" & gj & "')"
koneksi.Execute QSimpan
rsKaryawan.Requery
End Sub
Function Tampil_DataKaryawan(Field)
Tampil_DataKaryawan = rsKaryawan(Field)
End Function
'menampilkan datagrid ke text box
Private Sub DataGrid1_RowColChange(LastRow As Variant, ByVal LastCol As Integer)
Text_Kode_Karyawan = Tampil_DataKaryawan(0)
Text_Nama_Karyawan = Tampil_DataKaryawan(1)
Text_Alamat_Karyawan = Tampil_DataKaryawan(2)
Text_Jabatan_Karyawan = Tampil_DataKaryawan(3)
Text_Gaji_Karyawan = Tampil_DataKaryawan(4)
End Sub
Private Sub Ubah_Tabel_Karyawan_Click()
'Memastikan Semua Field Tidak Kosong (Optional)
If Text_Kode_Karyawan.Text = "" Or Text_Nama_Karyawan.Text = "" Or Text_Alamat_Karyawan.Text = "" Or Text_Jabatan_Karyawan.Text = "" Or Text_Gaji_Karyawan.Text = "" Then
MsgBox "Semua Field Harus Diisi", vbExclamation
Exit Sub
End If
Ubah_Data Text_Kode_Karyawan.Text, Text_Nama_Karyawan.Text, Text_Alamat_Karyawan.Text, Text_Jabatan_Karyawan.Text, Text_Gaji_Karyawan.Text
MsgBox "Data Berhasil Diperbarui", vbOKOnly
End Sub
Sub Ubah_Data(kd, nm, al, jb, gj)
'Escape Tanda Petiik Tunggal Dalam nilai String
nm = Replace(nm, "'", "''")
al = Replace(al, "'", "''")
jb = Replace(jb, "'", "''")
QUbah = "UPDATE Tabel_Karyawan SET Nama='" & nm & "',Alamat='" & al & "',Jabatan='" & jb & "',Gaji='" & gj & "' Where ID ='" & kd & "'"
'Jalankan Query
On Error GoTo ErrorHandler
koneksi.Execute QUbah
rsKaryawan.Requery
Exit Sub
ErrorHandler:
MsgBox "Error:" & Err.Description
End Sub
Editor is loading...
Leave a Comment