txtPasswd.Text = txtUserID.SetFocus
End If ElseIf Cari = True Then
Set rsCari = New ADODB.Recordset rsCari.Open Select from [uUser] where UserID= _
txtUserID.Text , CN, 1, 2 If rsCari.EOF = True Then
MsgBox User belum ada ... txtUserID.Text =
txtUserID.SetFocus Else
txtPasswd.Text = rsCari.FieldsPasswd cmdUpdate.Enabled = True
cmdHapus.Enabled = True cmdUpdate.SetFocus
End If End If
End If End Sub
7. Daftar User Private Sub Form_Activate
Me.WindowState = 2 cr.ReportFileName = App.Path \Laporan\RepDafUser.rpt
cr.RetrieveDataFiles cr.Connect = Provider=Microsoft.Jet.OLEDB.4.0;Data Source= _
App.Path \dbPegawai.mdb;Persist Security Info=False cr.WindowShowRefreshBtn = True
cr.PrintReport cr.WindowState = crptMaximized
cr.Action = 1 End Sub
8. Data Absensi Option Explicit
Dim J As ListItem Dim IDAbsensi As Integer
Dim IDDAbsensi As Integer Dim rsAbsensi As Recordset
Dim rsDAbsensi As Recordset Dim IDPegawai As Integer
Dim Lama As Integer Dim bolHadir As Boolean
Dim Ket As String Dim bolOk As Boolean
Sub Bersih bolOk = False
Ket = Ada IDAbsensi = 0
IDDAbsensi = 0 lblIDD.Caption =
lblID = lblNip =
lblNama = cboKode =
cboKet =
Universitas Sumatera Utara
txtJamMasuk = __:__ txtJamPulang = __:__
lblLama = Cari = False
Tambah = False bolHadir = False
Set rsHapus = New ADODB.Recordset rsHapus.Open Delete from Absensi where StatusRec=1, CN, 1, 2
Set rsHapus = Nothing Set rsHapus = New ADODB.Recordset
rsHapus.Open Delete from DAbsensi where StatusRec=1, CN, 1, 2 Set rsHapus = Nothing
End Sub Sub Mati
cboKode.Enabled = False cboKet.Enabled = False
txtJamMasuk.Enabled = False txtJamPulang.Enabled = False
txtTgl.Enabled = False End Sub
Sub CariID Set rsCari = New ADODB.Recordset
rsCari.Open Select from Absensi order by IDAbsensi desc, CN, 1, 2 If Not rsCari.EOF Then
IDAbsensi = rsCariIDAbsensi + 1 Else
IDAbsensi = 1 End If
Set rsCari = Nothing lblID.Caption = IDAbsensi
Set rsSimpan = New ADODB.Recordset rsSimpan.Open Absensi, CN, 1, 2
rsSimpan.AddNew rsSimpanIDAbsensi = IDAbsensi
rsSimpanTglAbsen = FormattxtTgl.Value, dd-mm-yyyy rsSimpanStatusRec = 1
rsSimpan.Update Set rsSimpan = Nothing
End Sub Sub CariIDD
Set rsCari = New ADODB.Recordset rsCari.Open Select from DAbsensi order by IDDAbsensi desc, _
CN,1, 2 If Not rsCari.EOF Then
IDDAbsensi = rsCariIDAbsensi + 1 Else
IDDAbsensi = 1 End If
Set rsCari = Nothing lblIDD.Caption = IDDAbsensi
Set rsSimpan = New ADODB.Recordset rsSimpan.Open DAbsensi, CN, 1, 2
Universitas Sumatera Utara
rsSimpan.AddNew rsSimpanIDDAbsensi = IDDAbsensi
rsSimpanIDAbsensi = IDAbsensi rsSimpanStatusRec = 1
rsSimpan.Update Set rsSimpan = Nothing
End Sub Private Sub cboKet_Click
If bolHadir = False Then cmdSimpan.Enabled = True
cmdSimpan.SetFocus End If
End Sub Private Sub cboKode_Click
If cboKode.Text = Hadir Then bolHadir = True
Call CariIDD cboKet.Text = Masuk
txtJamMasuk.Enabled = True txtJamMasuk.SetFocus
Else bolHadir = False
cboKet.Enabled = True cboKet.SetFocus
End If End Sub
Private Sub cmdBatal_Click Call Bersih
Call Mati cmdTambah.Enabled = True
cmdSimpan.Enabled = False cmdCari.Enabled = True
cmdEdit.Enabled = False cmdHapus.Enabled = False
cmdBatal.Enabled = True cmdTambah.SetFocus
End Sub Private Sub cmdCari_Click
Cari = True End Sub
Private Sub cmdHapus_Click cmdHapus.Enabled = False
cmdEdit.Enabled = False Set rsHapus = New ADODB.Recordset
rsHapus.Open Delete from DAbsensi where IDAbsensi= _
IDAbsensi , CN, 1, 2 Set rsHapus = Nothing
Set rsHapus = New ADODB.Recordset rsHapus.Open Delete from Absensi where IDAbsensi= IDAbsensi _
, CN, 1, 2 Set rsHapus = Nothing
Call Mati
Universitas Sumatera Utara
Call Bersih Call SegarPeg
Call SegarAbsen cmdTambah.Enabled = True
cmdSimpan.Enabled = False cmdCari.Enabled = True
cmdEdit.Enabled = False cmdHapus.Enabled = False
cmdBatal.Enabled = True cmdTambah.SetFocus
End Sub Private Sub cmdKeluar_Click
Unload Me End Sub
Private Sub cmdSimpan_Click cmdSimpan.Enabled = False
X = MsgBoxData absensi mau disimpan ?, vbYesNo If X = vbYes Then
If lblNip.Caption Then If IDPegawai 0 Then
If IDAbsensi 0 Then bolOk = True
Else bolOk = False
End If Else
bolOk = False End If
Else bolOk = False
End If If bolOk = True And bolHadir = True Then
Set rsUbah = New ADODB.Recordset rsUbah.Open Update Absensi SET IDPegawai= IDPegawai _
,Kode = LeftcboKode.Text, 1 , Keterangan= _ LeftcboKet.Text, 1 ,StatusRec= _
where IDAbsensi = IDAbsensi , CN, 1, 2 Set rsUbah = Nothing
Set rsUbah = New ADODB.Recordset rsUbah.Open Update DAbsensi SET JamMasuk = _
txtJamMasuk.Text , JamPulang= txtJamPulang.Text _ ,Lama= Lama ,StatusRec= _
where IDdAbsensi = IDDAbsensi , CN, 1, 2 Set rsUbah = Nothing
ElseIf bolOk = True And bolHadir = False Then Set rsUbah = New ADODB.Recordset
rsUbah.Open Update Absensi SET IDPegawai= IDPegawai _
,Kode = LeftcboKode.Text, 1 , Keterangan= _ LeftcboKet.Text, 1 ,StatusRec= _
where IDAbsensi = IDAbsensi , CN, 1, 2 Set rsUbah = Nothing
End If Call SegarPeg
Call Mati
Universitas Sumatera Utara
Call Bersih cmdTambah.Enabled = True
cmdSimpan.Enabled = False cmdCari.Enabled = True
cmdEdit.Enabled = False cmdHapus.Enabled = False
cmdBatal.Enabled = True cmdTambah.SetFocus
Else MsgBox Data belum lengkap ........
End If Call SegarAbsen
End Sub Private Sub cmdTambah_Click
Tambah = True Cari = False
cmdTambah.Enabled = False Call CariID
txtTgl.Value = FormatNow, dd-mm-yyyy cmdSimpan.Enabled = True
txtTgl.Enabled = True txtTgl.SetFocus
End Sub Private Sub Form_Activate
Call Mati Call Bersih
Call SegarPeg Call SegarAbsen
cmdTambah.Enabled = True cmdSimpan.Enabled = False
cmdCari.Enabled = True cmdEdit.Enabled = False
cmdHapus.Enabled = False cmdBatal.Enabled = True
cmdTambah.SetFocus End Sub
Private Sub Form_Load Call Koneksi
cboKode.AddItem Hadir cboKode.AddItem Tidak Hadir
cboKet.AddItem Masuk cboKet.AddItem Sakit
cboKet.AddItem Izin cboKet.AddItem Tidak Ada Pemberitahuan
End Sub Private Sub lv1_Click
If Cari = True Then IDAbsensi = lv1.ListItems.Itemlv1.SelectedItem.Index.Text
lblID.Caption = IDAbsensi Set rsAbsensi = New ADODB.Recordset
rsAbsensi.Open Select from Absensi where IDAbsensi= _
IDAbsensi , CN, 1, 2 If rsAbsensi.EOF = True Then
bolOk = False
Universitas Sumatera Utara
Ket = Ada IDAbsensi = 0
IDDAbsensi = 0 lblID =
lblNip = lblNama =
cboKode = cboKet =
txtJamMasuk = __:__ txtJamPulang = __:__
lblLama = MsgBox Absensi tidak ada
Else txtTgl.Value = FormatrsAbsensiTglAbsen, dd-mm-yyyy
IDPegawai = rsAbsensiIDPegawai Set rsCari = New ADODB.Recordset
rsCari.Open Select from Pegawai where IDPegawai=_
IDPegawai , CN, adOpenDynamic, adLockOptimistic If Not rsCari.EOF = True Then
lblNama = rsCariNama lblNip = rsCariNIP
cboKode.Enabled = True cboKode.SetFocus
Else lblNama =
lblNip = End If
Set rsCari = Nothing If rsAbsensiKode = H Then
bolHadir = True cboKode.Text = Hadir
Else bolHadir = False
cboKode.Text = Tidak Hadir End If
If rsAbsensiKeterangan = M Then cboKet.Text = Masuk
ElseIf rsAbsensiKeterangan = S Then cboKet.Text = Sakit
ElseIf rsAbsensiKeterangan = I Then cboKet.Text = Izin
Else cboKet.Text = Tidak Ada Pemberitahuan
End If If bolHadir = True Then
Set rsDAbsensi = New ADODB.Recordset rsDAbsensi.Open Select from DAbsensi _
where IDAbsensi= IDAbsensi , CN, 1, 2 If Not rsDAbsensi.EOF = True Then
IDDAbsensi = rsDAbsensiIDDAbsensi lblIDD.Caption = IDDAbsensi
txtJamMasuk.Text = rsDAbsensiJamMasuk _ txtJamPulang.Text = rsDAbsensiJamPulang
lblLama.Caption = rsDAbsensiLama Else
IDDAbsensi = 0
Universitas Sumatera Utara
lblIDD.Caption = txtJamMasuk.Text = __:__
txtJamPulang.Text = __:__ lblLama.Caption =
End If Set rsDAbsensi = Nothing
Else IDDAbsensi = 0
lblIDD.Caption = txtJamMasuk.Text = __:__
txtJamPulang.Text = __:__ lblLama.Caption =
End If cmdEdit.Enabled = True
cmdHapus.Enabled = True End If
Set rsAbsensi = Nothing End If
End Sub Private Sub lvPegawai_Click
If Tambah = True Then IDPegawai = _
lvPegawai.ListItems.ItemlvPegawai.SelectedItem.Index.Text Set rsAbsensi = New ADODB.Recordset
rsAbsensi.Open Select from Absensi where IDPegawai= _ IDPegawai and TglAbsen= _
FormattxtTgl.Value, yyyy,mm,dd , CN, 1, 2 If Not rsAbsensi.EOF = True Then
MsgBox Pegawai ini sudah melakukan absensi Else
Set rsCari = New ADODB.Recordset rsCari.Open Select from Pegawai where IDPegawai= _
IDPegawai , CN, adOpenDynamic, adLockOptimistic If Not rsCari.EOF = True Then
lblNama = rsCariNama lblNip = rsCariNIP
cboKode.Enabled = True cboKode.SetFocus
Else lblNama =
lblNip = End If
Set rsCari = Nothing End If
Set rsAbsensi = Nothing End If
End Sub Private Sub txtJamMasuk_KeyPressKeyAscii As Integer
If KeyAscii = 13 Then txtJamPulang.Enabled = True
txtJamPulang.SetFocus End If
End Sub Sub SegarPeg
lvPegawai.ListItems.Clear
Universitas Sumatera Utara
Set rsCari = New ADODB.Recordset rsCari.Open Select from Pegawai Order by IDPegawai asc, _
CN, 1, 3 If Not rsCari.EOF = True Then
Do While Not rsCari.EOF Set J = lvPegawai.ListItems.Add, , rsCariIDPegawai
J.SubItems1 = rsCariNIP J.SubItems2 = rsCariTglMasuk
J.SubItems3 = rsCariNama J.SubItems4 = rsCarialamat
J.SubItems5 = rsCariNoTelp J.SubItems6 = rsCariNoHP
J.SubItems7 = rsCariNoKTP rsCari.MoveNext
If rsCari.EOF Then Exit Do
End If Loop
End If Set rsCari = Nothing
End Sub Sub SegarAbsen
lv1.ListItems.Clear Set rsAbsensi = New ADODB.Recordset
rsAbsensi.Open Select from Absensi Order by IDAbsensi _
asc, CN, 1, 2 If Not rsAbsensi.EOF = True Then
Do While Not rsAbsensi.EOF IDPegawai = rsAbsensiIDPegawai
IDAbsensi = rsAbsensiIDAbsensi Set rsCari = New ADODB.Recordset
rsCari.Open Select from Pegawai Where IDPegawai= _
IDPegawai , CN, 1, 3 If Not rsCari.EOF = True Then
Set J = lv1.ListItems.Add, , IDAbsensi J.SubItems1 = rsAbsensiTglAbsen
J.SubItems2 = rsCariNIP J.SubItems3 = rsCariNama
If rsAbsensiKode = H Then J.SubItems4 = Hadir
Else J.SubItems4 = Tidak Hadir
End If If rsAbsensiKeterangan = M Then
J.SubItems5 = Masuk ElseIf rsAbsensiKeterangan = S Then
J.SubItems5 = Sakit ElseIf rsAbsensiKeterangan = I Then
J.SubItems5 = Izin Else
J.SubItems5 = Tidak Ada Pemberitahuan End If
End If Set rsCari = Nothing
rsAbsensi.MoveNext If rsAbsensi.EOF Then
Universitas Sumatera Utara
Exit Do End If
Loop End If
Set rsAbsensi = Nothing End Sub
Private Sub txtJamPulang_KeyPressKeyAscii As Integer If KeyAscii = 13 Then
Lama = DateDiffh, txtJamMasuk.Text, txtJamPulang.Text lblLama.Caption = Lama
cmdSimpan.Enabled = True cmdSimpan.SetFocus
End If End Sub
9. Daftar Absensi Private Sub cmdCetak_Click