Source Aplikasi Sistem Informasi Akademik GENERAL Dim db As Connection Dim WithEvents adoprimaryrs1 As Recordset Dim WithEvents adoprimaryrs2 As Recordset Dim WithEvents rscaridata As Recordset Dim cekid As Recordset Dim mbchangedbycode As Boolean Dim mvbookmark As Variant Dim mbeditflag As Boolean Dim mbaddnewflag As Boolean Dim mbdatachanged As Boolean Dim HasiBatal As Boolean Dim NomorData As Integer Dim Cari, Cari1, Hasil, Hasil1 As String Private Sub FormLoad() HasilBatal = False Set db = New Connection db.cursorlocation = aduseclient db.open "PROVIDER=MSDataShape;Data PROVIDER=" "Microsoft.Jet.OLEDB.3.51;Data Source=" & App.Path & "\mahasiswa.mdb;" Set adoprimaryrs1 = New Recordset Set adoprimaryrs2 = New Recordset adoprimaryrs1.open "SHAPE {select NIM,Nama,Alamat," "Tgllahir, telp from tmhs Order by NIM} " & "AS ParentCMD APPEND ({select NIM," "Nama,Alamat,Tgllahir, telp FROM tmhs " & "ORDER BY NIM } AS ChildCMD RELATE NIM " "TO NIM) AS ChildCMD", db, adoprimaryrs2.open "SHAPE {select kode,makul," "sks from tmakul Order by kode} " "AS ParentCMD APPEND ({select kode," "makul, sks FROM tmakul " "ORDER BY kode } AS ChildCMD RELATE kode " "TO kode) AS ChildCMD", db, Dim otext1 As TextBox For Each otext1 In Me.Txtfield Set otext1.datasource = adoprimaryrs1 Kunci If adoprimaryrs1.recordcount < 1 Then MsgBox "Database masih kosong!", vbcritical, "Database Kosong" BukaKunci cmdaddclick Private Sub FormKeyDown(KeyCode As Integer, Shift As Integer) If mbeditflag Or mbaddnewflag Then Select Case KeyCode Case vbkeyescape cmdcloseclick Case vbkeyend cmdlastclick Case vbkeyhome cmdfirstclick Case vbkeyup, vbkeypageup If Shift = vbctrlmask Then cmdfirstclick cmdpreviousclick Case vbkeydown, vbkeypagedown If Shift = vbctrlmask Then cmdlastclick cmdclick End Select Sub Kunci() Dim i As Integer For i = 0 To 4 Txtfield(i).Locked = True i grddatagrid.enabled = False Sub BukaKunci() Dim i As Integer For i = 0 To 4 Txtfield(i).Locked = False i Sub Kunci1() Dim i As Integer For i = 0 To 2 txtfields(i).locked = True i grddatagrid.enabled = False Sub BukaKunci1() Dim i As Integer For i = 0 To 2 txtfields(i).locked = False i
Private Sub FormQueryUnload(Cancel As Integer, UnloadMode As Integer) Set adoprimaryrs1 = Nothing Set adoprimaryrs2 = Nothing db.close Set db = Nothing Private Sub FormUnload(Cancel As Integer) Screen.MousePointer = vbdefault Private Sub SSTab1Click(PreviousTab As Integer) Dim otext1 As TextBox For Each otext1 In Me.Txtfield Set otext1.datasource = adoprimaryrs1 Kunci If adoprimaryrs1.recordcount < 1 Then MsgBox "Database masih kosong!", vbcritical, "Database Kosong" BukaKunci cmdaddclick If SSTab1.Tab = 1 Then Dim otext2 As TextBox For Each otext2 In Me.txtFields Set otext2.datasource = adoprimaryrs2 Set grddatagrid.datasource = adoprimaryrs2.datasource Kunci1 If adoprimaryrs2.recordcount < 1 Then MsgBox "Database masih kosong!", vbcritical, "Database Kosong" BukaKunci1 cmdaddclick Private Sub TxtfieldKeyPress(Index As Integer, KeyAscii As Integer) Select Case Index Case 0 To 4 If KeyAscii = 13 Then SendKeys "{Tab}" End Select Private Sub txtfieldskeypress(index As Integer, KeyAscii As Integer) Select Case Index Case 0 To 2 If KeyAscii = 13 Then SendKeys "{Tab}" End Select Private Sub SetButtons(bVal As Boolean) cmdadd.enabled = bval cmdedit.enabled = bval cmdupdate.enabled = Not bval cmdcancel.enabled = Not bval cmddelete.enabled = bval cmdclose.enabled = bval cmdrefresh.enabled = bval cmd.enabled = bval cmdfirst.enabled = bval cmdlast.enabled = bval cmdprevious.enabled = bval Private Sub cmdaboutclick() MsgBox "Pemrograman Visual 2", vbinformation, "About" Private Sub cmdaddclick() On Error GoTo AddErr With adoprimaryrs1 If Not (.BOF And.EOF) Then mvbookmark =.Bookmark BukaKunci.AddNew lblstatus.caption = "Add record" mbaddnewflag = True SetButtons False End With EnablePicture picutility, False grddatagrid.enabled = False On Error Resume Txtfield(0).SetFocus 'AddErr: ' If SSTab1.Tab = 1 Then ' On Error GoTo AddErr With adoprimaryrs2 If Not (.BOF And.EOF) Then mvbookmark =.Bookmark BukaKunci1.AddNew lblstatus.caption = "Add record" mbaddnewflag = True SetButtons False End With EnablePicture picutility, False grddatagrid.enabled = False On Error Resume txtfields(0).setfocus AddErr:
Private Sub cmdcancelclick() On Error Resume Kunci cmdrefreshclick If HasilBatal = True Then EnablePicture picutility, True SetButtons True mbeditflag = False mbaddnewflag = False adoprimaryrs1.cancelupdate If mvbookmark > adoprimaryrs1.bookmark = mvbookmark adoprimaryrs1.movefirst If SSTab1.Tab = 1 Then adoprimaryrs2.cancelupdate If mvbookmark > adoprimaryrs2.bookmark = mvbookmark adoprimaryrs2.movefirst EnablePicture picutility, True Private Sub cmdclearsearchclick() Dim Jawab As Integer If Len(Cari) = MsgBox "Belum ada kriteria pencarian.", vbinformation, "Kriteria Masih Kosong" Jawab = MsgBox("Kriteria pencarian sebelumnya = " & Cari & "" & Chr(13) "Anda yakin ingin menghapusnya?", vbquestion + vbyesno, "Reset Pencarian") If Jawab = vbyes Then cmdfindfirst.enabled = True frminfo2.cmdfindfirst.enabled = True Cari = "" Hasil = "" frminfo2.text1 = "" Private Sub cmdcloseclick() Unload Me Private Sub cmddeleteclick() On Error GoTo DeleteErr If MsgBox("Yakin record ini mau dihapus", vbquestion + vbyesno, "Hapus Record") <> vbyes Then With adoprimaryrs1.delete.move If.EOF Then.MoveLast End With If SSTab1.Tab = 1 Then With adoprimaryrs2.delete.move If.EOF Then.MoveLast End With DeleteErr: Private Sub cmdeditclick() On Error GoTo EditErr EnablePicture picutility, False lblstatus.caption = "Edit record" mbeditflag = True SetButtons False BukaKunci If SSTab1.Tab = 1 Then BukaKunci1 EditErr: Private Sub cmdfilterclick() Dim kriteria As String Set rscaridata = New Recordset kriteria = InputBox("Masukkan data apa saja yang diketahui:", "Saring/Filter Data") On Error GoTo Pesan If kriteria = "" Then Set adoprimaryrs1 = New Recordset adoprimaryrs1.open "SHAPE " "{select NIM,Nama,telp,Alamat," "Tgllahir from tmhs " "WHERE NIM LIKE '%" & kriteria & "%' OR " "Nama LIKE '%" & kriteria & "%' OR " "telp LIKE '%" & kriteria & "%' OR " "Alamat LIKE '%" & kriteria & "%' OR " "Tgllahir LIKE '%" & kriteria & "%' " "ORDER BY NIM} " "AS ParentCMD " "APPEND ({select NIM,Nama," "Alamat,Tgllahir,telp from tmhs "
"WHERE NIM LIKE '%" & kriteria & "%' OR " "Nama LIKE '%" & kriteria & "%' OR " "telp LIKE '%" & kriteria & "%' OR " "Alamat LIKE '%" & kriteria & "%' OR " "Tgllahir LIKE '%" & kriteria & "%' " "ORDER BY NIM} " "AS ChildCMD RELATE NIM TO NIM) " "AS ChildCMD", db, If adoprimaryrs1.recordcount > Dim otextdata As TextBox For Each otextdata In Me.Txtfield Set otextdata.datasource = adoprimaryrs1.datasource cmdrefreshclick MsgBox "'" & kriteria & "' tidak ditemukan" & Chr(13) "dalam data tmhs!", vbcritical, "Tidak Ditemukan" Pesan: MsgBox "'" & kriteria & "' tidak ditemukan" & Chr(13) "dalam data tmhs!", vbcritical, "Tidak Ditemukan" If SSTab1.Tab = 1 Then On Error GoTo Pesan1 If kriteria = "" Then Set adoprimaryrs2 = New Recordset 'kriteria = InputBox("Masukkan data matakuliah apa saja yang diketahui:", "Saring/Filter Data") adoprimaryrs2.open "SHAPE " "{select kode,makul,sks from tmakul" "WHERE kode LIKE '%" & kriteria & "%' OR " "makul LIKE '%" & kriteria & "%' OR " "sks LIKE '%" & kriteria & "%' OR " "ORDER BY kode} " "AS ParentCMD " "APPEND ({select kode,makul," "sks from tmakul " "WHERE kode LIKE '%" & kriteria & "%' OR " "makul LIKE '%" & kriteria & "%' OR " "sks LIKE '%" & kriteria & "%' OR " "ORDER BY kode} " "AS ChildCMD RELATE kode TO kode) " "AS ChildCMD", db, If adoprimaryrs2.recordcount > Set grddatagrid.datasource = adoprimaryrs2.datasource Dim otextdata1 As TextBox For Each otextdata1 In Me.txtFields Set otextdata1.datasource = adoprimaryrs2.datasource cmdrefreshclick MsgBox "'" & kriteria & "' tidak ditemukan" & Chr(13) "dalam data tmakul!", vbcritical, "Tidak Ditemukan" Pesan1: MsgBox "'" & kriteria & "' tidak ditemukan" & Chr(13) "dalam data tmakul!", vbcritical, "Tidak Ditemukan" Private Sub cmdfindfirstclick() Dim adocari As Recordset Set adocari = New Recordset If Cari = "" Then Cari = UCase(InputBox("Masukkan data apa saja " "yang diketahui: ", "Cari Data")) Cari = Cari1 If StrPtr(Cari) = 0 Or Cari = "" Then adoprimaryrs1.movefirst Ulang: If adoprimaryrs1.eof And adoprimaryrs1.recordcount > cmdlastclick MsgBox "Data " & Cari & " tidak ditemukan!", vbcritical, "Tidak Ditemukan" frminfo2.text1 = "Data " & Cari & " tidak ditemukan!" Print #1, frminfo2.text1.text frminfo2.text1.text = Input(LOF(1), 1) For i = 0 To 4 Hasil = UCase(Txtfield(i).Text) If InStr(1, UCase(Txtfield(i).Text), UCase(Cari)) > frminfo2.text1.selstart = Len(frmInfo2.Text1.Text) frminfo2.text1 = "" & frminfo2.text1.text & "Ditemukan data '" & Cari & "' pada:" & vbcrlf "----------------------" & String(Len(Cari) + 1, "- ") & "" & vbcrlf "" Print #1, frminfo2.text1.text For j = 0 To 4 Hasil = UCase(Txtfield(j).Text) If InStr(1, UCase(Txtfield(j).Text), UCase(Cari)) > 0 Then Cari1 = Cari frminfo2.text1.selstart = Len(frmInfo2.Text1.Text)
frminfo2.text1 = "" & frminfo2.text1.text & "" & vbcrlf " Record ke-" & CStr(adoPrimaryRS1.AbsolutePosition) & "" & vbcrlf " - Nama field: " & Txtfield(j).DataField & "" & vbcrlf " - Isi field : " & Txtfield(j).Text & "" & vbcrlf & " - Kolom ke : " & j + 1 & " di tabel." cmdfindfirst.enabled = False frminfo2.cmdfindfirst.enabled = False Print #1, frminfo2.text1.text frminfo2.text1.text = Input(LOF(1), 1) frminfo2.text1.selstart = Len(frmInfo2.Text1.Text) + 1 frminfo2.show SendKeys "{Home}+{End}" j i adoprimaryrs1.move GoTo Ulang If SSTab1.Tab = 1 Then adoprimaryrs2.movefirst 'Set adocari = New Recordset Ulang1: If adoprimaryrs2.eof And adoprimaryrs2.recordcount > cmdlastclick MsgBox "Data " & Cari & " tidak ditemukan!", vbcritical, "Tidak Ditemukan" frminfo1.text1 = "Data " & Cari & " tidak ditemukan!" Print #1, frminfo1.text1.text frminfo1.text1.text = Input(LOF(1), 1) For i = 0 To 2 Hasil = UCase(txtFields(i).Text) If InStr(1, UCase(txtFields(i).Text), UCase(Cari)) > frminfo1.text1.selstart = Len(frmInfo1.Text1.Text) frminfo1.text1 = "" & frminfo1.text1.text & "Ditemukan data '" & Cari & "' pada:" & vbcrlf "----------------------" & String(Len(Cari) + 1, "- ") & "" & vbcrlf "" Print #1, frminfo1.text1.text For j = 0 To 2 Hasil = UCase(txtFields(j).Text) If InStr(1, UCase(txtFields(j).Text), UCase(Cari)) > 0 Then Cari1 = Cari frminfo1.text1.selstart = Len(frmInfo1.Text1.Text) frminfo1.text1 = "" & frminfo1.text1.text & "" & vbcrlf " Record ke-" & CStr(adoPrimaryRS2.AbsolutePosition) & "" & vbcrlf " - Nama field: " & txtfields(j).datafield & "" & vbcrlf " - Isi field : " & txtfields(j).text & "" & vbcrlf & " - Kolom ke : " & j + 1 & " di tabel." cmdfindfirst.enabled = False frminfo1.cmdfindfirst.enabled = False Print #1, frminfo1.text1.text frminfo1.text1.text = Input(LOF(1), 1) frminfo1.text1.selstart = Len(frmInfo1.Text1.Text) + 1 frminfo1.show SendKeys "{Home}+{End}" j i adoprimaryrs2.move GoTo Ulang1 Private Sub cmdfindclick() Cari1 = Cari If Len(Trim(Hasil)) = cmdfindfirstclick adoprimaryrs1.move Ulang: If adoprimaryrs1.eof And adoprimaryrs1.recordcount > cmdlastclick MsgBox "Data " & Cari & " tidak ditemukan!", vbcritical, "Tidak Ditemukan" For n = 0 To 4 Hasil = UCase(Txtfield(n).Text) If InStr(1, UCase(Txtfield(n).Text), UCase(Cari1)) > For m = 0 To 4
Hasil = UCase(Txtfield(m).Text) If InStr(1, UCase(Txtfield(m).Text), UCase(Cari1)) > 0 Then frminfo2.text1.selstart = Len(frmInfo2.Text1.Text) frminfo2.text1 = "" & frminfo2.text1.text & "" & vbcrlf " Record ke-" & CStr(adoPrimaryRS1.AbsolutePosition) & "" & vbcrlf " - Nama field: " & Txtfield(m).DataField & "" & vbcrlf " - Isi field : " & Txtfield(m).Text & "" & vbcrlf & " - Kolom ke : " & m + 1 & " di tabel." Print #1, frminfo2.text1.text frminfo2.text1.text = Input(LOF(1), 1) frminfo2.text1.selstart = Len(frmInfo2.Text1.Text) + 1 frminfo2.show SendKeys "{Home}+{End}" m n adoprimaryrs1.move GoTo Ulang If SSTab1.Tab = 1 Then Cari1 = Cari If Len(Trim(Hasil)) = cmdfindfirstclick adoprimaryrs2.move Ulang1: If adoprimaryrs2.eof And adoprimaryrs2.recordcount > cmdlastclick MsgBox "Data " & Cari & " tidak ditemukan!", vbcritical, "Tidak Ditemukan" For n = 0 To 2 Hasil = UCase(txtFields(n).Text) If InStr(1, UCase(txtFields(n).Text), UCase(Cari1)) > 0 Then For m = 0 To 2 Hasil = UCase(txtFields(m).Text) If InStr(1, UCase(txtFields(m).Text), UCase(Cari1)) > 0 Then frminfo1.text1.selstart = Len(frmInfo1.Text1.Text) frminfo1.text1 = "" & frminfo1.text1.text & "" & vbcrlf " Record ke-" & CStr(adoPrimaryRS2.AbsolutePosition) & "" & vbcrlf " - Nama field: " & txtfields(m).datafield & "" & vbcrlf " - Isi field : " & txtfields(m).text & "" & vbcrlf " - Kolom ke : " & m + 1 & " di tabel." Print #1, frminfo1.text1.text frminfo1.text1.text = Input(LOF(1), 1) frminfo1.text1.selstart = Len(frmInfo1.Text1.Text) + 1 frminfo1.show SendKeys "{Home}+{End}" m n adoprimaryrs2.move GoTo Ulang1 Private Sub cmdfirstclick() On Error GoTo GoFirstError adoprimaryrs1.movefirst If SSTab1.Tab = 1 Then adoprimaryrs2.movefirst GoFirstError: Private Sub cmdlastclick() On Error GoTo GoLastError adoprimaryrs1.movelast If SSTab1.Tab = 1 Then adoprimaryrs2.movelast GoLastError:
Private Sub cmdclick() On Error GoTo GoError If Not adoprimaryrs1.eof Then adoprimaryrs1.move If adoprimaryrs1.eof And adoprimaryrs1.recordcount > Beep adoprimaryrs1.movelast If SSTab1.Tab = 1 Then If Not adoprimaryrs2.eof Then adoprimaryrs2.move If adoprimaryrs2.eof And adoprimaryrs2.recordcount > Beep adoprimaryrs2.movelast GoError: Private Sub cmdpreviousclick() On Error GoTo GoPrevError If Not adoprimaryrs1.bof Then adoprimaryrs1.moveprevious If adoprimaryrs1.bof And adoprimaryrs1.recordcount > Beep adoprimaryrs1.movefirst If SSTab1.Tab = 1 Then If Not adoprimaryrs2.bof Then adoprimaryrs2.moveprevious If adoprimaryrs2.bof And adoprimaryrs2.recordcount > Beep adoprimaryrs2.movefirst GoPrevError: Private Sub cmdrefreshclick() On Error GoTo RefreshErr If HasilBatal = True Then SetButtons True HasilBatal = False cmdadd.enabled = True cmdedit.enabled = True cmddelete.enabled = True cmdrefresh.enabled = True Set grddatagrid.datasource = Nothing Set adoprimaryrs1 = New Recordset adoprimaryrs1.open "SHAPE {select NIM,Nama,Alamat," "Tgllahir, telp from tmhs Order by NIM} " & "AS ParentCMD APPEND ({select NIM," "Nama,Alamat,Tgllahir, telp FROM tmhs " & "ORDER BY NIM } AS ChildCMD RELATE NIM " "TO NIM) AS ChildCMD", db, Dim otext1 As TextBox For Each otext1 In Me.Txtfield Set otext1.datasource = adoprimaryrs1 adoprimaryrs1.cancelupdate If mvbookmark <> adoprimaryrs1.bookmark = mvbookmark adoprimaryrs1.movefirst If SSTab1.Tab = 1 Then Set adoprimaryrs2 = New Recordset adoprimaryrs2.open "SHAPE {select kode,makul," "sks from tmakul Order by kode} " "AS ParentCMD APPEND ({select kode," "makul,sks FROM tmakul " "ORDER BY kode } AS ChildCMD RELATE kode " "TO kode) AS ChildCMD", db, Dim otext As TextBox For Each otext In Me.txtFields Set otext.datasource = adoprimaryrs2 Set grddatagrid.datasource = adoprimaryrs2.datasource adoprimaryrs2.cancelupdate If mvbookmark <> adoprimaryrs2.bookmark = mvbookmark adoprimaryrs2.movefirst RefreshErr: cmdadd.enabled = False cmdedit.enabled = False cmdupdate.enabled = False cmddelete.enabled = False cmdcancel.enabled = False
cmdrefresh.enabled = True mbeditflag = False mbaddnewflag = False HasilBatal = True cmdrefreshclick Private Sub cmdsortascclick() Dim kriteria As String Set rscaridata = New Recordset On Error GoTo Pesan kriteria = InputBox("Masukkan field yang akan di-sortd ASCENDING:" & vbcrlf "(Pilih salah satu: NIM atau Nama atau" & vbcrlf "telp atau Alamat atau Tgllahir)", "Saring/Filter Data") If kriteria = "" Then Set adoprimaryrs1 = New Recordset adoprimaryrs1.open "SHAPE {select NIM,Nama,Alamat," "Tgllahir, telp from tmhs ORDER BY " & kriteria & " ASC} AS ParentCMD APPEND " "({select NIM,Nama,Alamat, " "Tgllahir, telp from tmhs ORDER BY " & kriteria & " ASC} AS ChildCMD RELATE NIM " "TO NIM) AS ChildCMD", db, Dim otextdata As TextBox For Each otextdata In Me.Txtfield Set otextdata.datasource = adoprimaryrs1.datasource Pesan: MsgBox "Field '" & kriteria & "' tidak ditemukan" & Chr(13) "dalam data tmhs! Ganti dengan field:" & vbcrlf "NIM atau Nama atau telp atau Alamat" & vbcrlf "atau Tgllahir", vbcritical, "Tidak Ditemukan" If SSTab1.Tab = 1 Then On Error GoTo Pesan1 kriteria = InputBox("Masukkan field yang akan di-sortd ASCENDING:" & vbcrlf "(Pilih salah satu: kode atau makul atau" & vbcrlf "sks )", "Saring/Filter Data") If kriteria = "" Then Set adoprimaryrs2 = New Recordset adoprimaryrs2.open "SHAPE {select kode,makul," "sks from tmakul ORDER BY " & kriteria & " ASC} AS ParentCMD APPEND " "({select kode,makul," "sks from tmakul ORDER BY " & kriteria & " ASC} AS ChildCMD RELATE kode " "TO kode) AS ChildCMD", db, Set grddatagrid.datasource = adoprimaryrs2.datasource Dim otextdata1 As TextBox For Each otextdata1 In Me.txtFields Set otextdata1.datasource = adoprimaryrs2.datasource Pesan1: MsgBox "Field '" & kriteria & "' tidak ditemukan" & Chr(13) "dalam data tmakul! Ganti dengan field:" & vbcrlf & "kode atau makul atau sks" & vbcrlf "atau Tgllahir", vbcritical, "Tidak Ditemukan" Private Sub cmdsortdescclick() Dim kriteria As String Set rscaridata = New Recordset On Error GoTo Pesan kriteria = InputBox("Masukkan field yang akan di-sortd DESCENDING:" & vbcrlf "(Pilih salah satu: NIM atau Nama atau" & vbcrlf "telepon atau Alamat atau Tgllahir)", "Saring/Filter Data") If kriteria = "" Then Set adoprimaryrs1 = New Recordset adoprimaryrs1.open "SHAPE {select NIM,Nama,Alamat," "Tgllahir, telp from tmhs ORDER BY " & kriteria & " DESC} AS ParentCMD APPEND " "({select NIM,Nama,Alamat, " "Tgllahir,telp from tmhs ORDER BY " & kriteria & " DESC} AS ChildCMD RELATE NIM " "TO NIM) AS ChildCMD", db, Dim otextdata As TextBox For Each otextdata In Me.Txtfield Set otextdata.datasource = adoprimaryrs1.datasource Pesan: MsgBox "Field '" & kriteria & "' tidak ditemukan" & Chr(13) "dalam data tmhs! Ganti dengan field:" & vbcrlf "NIM atau Nama atau telepon atau Alamat" & vbcrlf
"atau Tgllahir", vbcritical, "Tidak Ditemukan" If SSTab1.Tab = 1 Then On Error GoTo Pesan1 kriteria = InputBox("Masukkan field yang akan di-sortd DESCENDING:" & vbcrlf "(Pilih salah satu: kode atau makul atau" & vbcrlf "telepon atau Alamat atau Tgllahir)", "Saring/Filter Data") If kriteria = "" Then Set adoprimaryrs2 = New Recordset adoprimaryrs2.open "SHAPE {select kode,makul," "sks from tmakul ORDER BY " & kriteria & " DESC} AS ParentCMD APPEND " "({select kode,makul," "sks from tmakul ORDER BY " & kriteria & " DESC} AS ChildCMD RELATE kode " "TO kode) AS ChildCMD", db, Set grddatagrid.datasource = adoprimaryrs2.datasource Dim otextdata1 As TextBox For Each otextdata1 In Me.txtFields Set otextdata1.datasource = adoprimaryrs2.datasource Pesan1: MsgBox "Field '" & kriteria & "' tidak ditemukan" & Chr(13) "dalam data tmakul! Ganti dengan field:" & vbcrlf & "kode atau makul atau sks" & vbcrlf "atau Tgllahir", vbcritical, "Tidak Ditemukan" Private Sub cmdunfilterclick() cmdrefreshclick EnablePicture picbuttons, True cmdupdate.enabled = False cmdcancel.enabled = False Private Sub cmdupdateclick() Dim i As Integer On Error GoTo UpdateErr For i = 0 To 4 If Txtfield(i).Text = "" Then MsgBox "Semua data harus diisi!", vbcritical, "Isi Semua Data" Txtfield(i).SetFocus i Set cekid = New Recordset cekid.open "SELECT * FROM tmhs WHERE NIM=" & "'" & Trim(txtFields(0).Text) & "'", db If cekid.recordcount > 0 And mbaddnewflag Then MsgBox "NIM sudah ada. Ganti dengan yang lain!", vbcritical, "NIM Sudah Ada" Txtfield(0).SetFocus: SendKeys "{Home}+{End}" Set cekid = Nothing adoprimaryrs1.updatebatch adaffectall EnablePicture picutility, True If mbaddnewflag Then adoprimaryrs1.movelast mbeditflag = False mbaddnewflag = False SetButtons True Kunci NomorData = adoprimaryrs1.absoluteposition lblstatus.caption = "Record ke-" & CStr(NomorData) " dari " & adoprimaryrs1.recordcount If SSTab1.Tab = 1 Then For i = 0 To 2 If txtfields(i).text = "" Then MsgBox "Semua data harus diisi!", vbcritical, "Isi Semua Data" txtfields(i).setfocus i Set cekid = New Recordset cekid.open "SELECT * FROM tmakul WHERE kode=" & "'" & Trim(txtFields(0).Text) & "'", db If cekid.recordcount > 0 And mbaddnewflag Then MsgBox "kode sudah ada. Ganti dengan yang lain!", vbcritical, "kode Sudah Ada" txtfields(0).setfocus: SendKeys "{Home}+{End}" Set cekid = Nothing adoprimaryrs2.updatebatch adaffectall EnablePicture picutility, True If mbaddnewflag Then adoprimaryrs2.movelast mbeditflag = False mbaddnewflag = False SetButtons True Kunci NomorData = adoprimaryrs2.absoluteposition lblstatus.caption = "Record ke-" & CStr(NomorData) " dari " & adoprimaryrs2.recordcount UpdateErr:
Private Sub adoprimaryrs1movecomplete(byval adreason As ADODB.EventReasonEnum, ByVal perror As ADODB.Error, adstatus As ADODB.EventStatusEnum, ByVal precordset As ADODB.Recordset) NomorData = adoprimaryrs1.absoluteposition lblstatus.caption = "Record ke-" & CStr(NomorData) & " dari " & adoprimaryrs1.recordcount Private Sub adoprimaryrs2movecomplete(byval adreason As ADODB.EventReasonEnum, ByVal perror As ADODB.Error, adstatus As ADODB.EventStatusEnum, ByVal precordset As ADODB.Recordset) NomorData = adoprimaryrs2.absoluteposition lblstatus.caption = "Record ke-" & CStr(NomorData) & " dari " & adoprimaryrs2.recordcount Private Sub cmdviewclick() frminfo2.show