Form Utama menggunakan MDIFORM
SOURCE CODE Module (Koneksi)
Public koneksi As New ADODB.Connection Public rekord As New ADODB.Recordset Public Sub koneksi_database() Set koneksi = New ADODB.Connection koneksi.ConnectionString = "provider= Microsoft.jet.OLEDB.4.0; data source = " & App.Path & "\db_SMANDUA.mdb" koneksi.Open End Sub Public Sub setformcenter(frm As Form) frm.Move (frmutama.ScaleWidth \ 2) - (frm.Width \ 2), (frmutama.ScaleWidth \ 2) - (frm.Height \ 2) End Sub
Form Utama menggunakan MDIFORM
Private Sub MDIForm_Load() StatusBar1.Panels(1).Text = Format(Now, "hh:mm:ss") StatusBar1.Panels(2).Text = Format(Now, "dddd") StatusBar1.Panels(3).Text = Format(Now, "dd mmmm yyyy") StatusBar1.Panels(4).Text = "Perancangan Database SMA Negeri 2 Kabanjahe" End Sub Private Sub mnAboutMe_Click() frmAbout.Show End Sub Private Sub mnDataGuru_Click() frmguru.Show End Sub Private Sub mnDataPegawai_Click() frmpegawai.Show End Sub Private Sub mnDataSiswa_Click() frmsiswa.Show End Sub
Private Sub mnExit_Click() Dim answer As Integer answer = MsgBox("Do You Want To Exit?", vbQuestion + vbYesNo, "Konfirmasi") If answer = vbYes Then End End If End Sub Private Sub mnInformasiGuru_Click() With CR .DataFiles(0) = App.Path & "db" .ReportFileName = "D:\Perancangan Database SMANDUA\Data_Guru.rpt" .RetrieveDataFiles .WindowState = crptMaximized .Action = 3 End With End Sub Private Sub mnInformasiPegawai_Click() With CR .DataFiles(0) = App.Path & "db" .ReportFileName = "D:\Perancangan Database SMANDUA\Data_Pegawai.rpt" .RetrieveDataFiles .WindowState = crptMaximized .Action = 3 End With End Sub Private Sub mnInformasiSiswa_Click() With CR .DataFiles(0) = App.Path & "db" .ReportFileName = "D:\Perancangan Database SMANDUA\Data_Siswa.rpt" .RetrieveDataFiles .WindowState = crptMaximized .Action = 3 End With End Sub Private Sub mnInputKelas_Click() frmkeelas.Show End Sub Private Sub Timer1_Timer() Me.Caption = Right$(Me.Caption, Len(Me.Caption) - 1) + Left$(Me.Caption, 1) End Sub
Private Sub Timer2_Timer() StatusBar1.Panels(1) = Format(Time, "hh:mm:ss") End Sub
Form Splash
Private Sub Form_KeyPress(KeyAscii As Integer) Unload Me End Sub Private Sub Frame1_Click() Unload Me End Sub Private Sub Timer1_Timer() Static ictr As Integer If ictr <= 100 Then ProgressBar1.Value = ictr ictr = ictr + 1 Else frmLogin.Show Unload Me End If End Sub
Form Login
Private Sub cmdCancel_Click() 'set the global var to false 'to denote a failed login LoginSucceeded = False Me.Hide End Sub Private Sub cmdOK_Click() 'check for correct password If txtPassword = "smandua" Then 'place code to here to pass the 'success to the calling sub 'setting a global var is the easiest Unload Me frmutama.Show Else MsgBox "Invalid Password, try again!", , "Login" txtPassword.SetFocus End If End Sub
Form Siswa
Private Sub cboTahun_Click() Me.cbokelas.Clear Set rekord = New ADODB.Recordset If rekord.State = adStateOpen Then Set rekord = Nothing rekord.Open "select *from Kelas where tahun_masuk='" & Me.cboTahun.Text & "'", koneksi, adOpenDynamic Do While Not rekord.EOF Me.cbokelas.AddItem rekord.Fields(2) rekord.MoveNext Loop End Sub Private Sub cmdAdd_Click() Frame1.Enabled = True Me.cmdAdd.Enabled = False Me.cmdSave.Enabled = True Me.txt_nis.SetFocus End Sub Private Sub cmdCancel_Click() txt_nis.Text = "" txt_nama.Text = "" cboTahun.ListIndex = -1 cbokelas.ListIndex = -1 txt_tmpt_lahir.Text = "" 'tgl_lahir.Value = "" cbojenkel.ListIndex = -1 cboagama.ListIndex = -1 txt_nma_ortu.Text = "" txt_alamat.Text = "" Me.cmdAdd.Enabled = True Me.cmdClose.Enabled = True Me.cmdSave.Enabled = False Me.cmdEdit.Enabled = False End Sub Private Sub cmdClose_Click() Unload Me End Sub Private Sub cmdDelete_Click()
Set rekord = New ADODB.Recordset If rekord.State = adStateOpen Then Set rekord = Nothing SQL = "Delete * from Siswa where NIS = '" & Me.txt_nis.Text & "'" koneksi.Execute (SQL) MsgBox "Data Sudah Terhapus!", vbInformation, "HAPUS DATA" bersih rekord.Open "Select *from Siswa", koneksi, adOpenDynamic On Error Resume Next lv.ListItems.Clear Do While Not rekord.EOF Set List = lv.ListItems.Add(, , rekord.Fields(0)) For i = 1 To 10 List.SubItems(i) = rekord.Fields(i) Next i rekord.MoveNext Loop End Sub Private Sub bersih() txt_nis.Text = "" txt_nama.Text = "" cboTahun.ListIndex = -1 cbokelas.ListIndex = -1 txt_tmpt_lahir.Text = "" ' tgl_lahir.Value = "" cbojenkel.ListIndex = -1 cboagama.ListIndex = -1 txt_nma_ortu.Text = "" txt_alamat.Text = "" End Sub Private Sub cmdEdit_Click() Me.cmdSave.Caption = "Update" Me.cmdSave.Enabled = True Me.cmdEdit.Enabled = False Me.Frame1.Enabled = True End Sub Private Sub cmdFind_Click() If Me.txtnis.Text = Empty Then Set rekord = New ADODB.Recordset If rekord.State = adStateOpen Then Set rekord = Nothing rekord.Open "Select *from Siswa where kelas = '" & Me.txt_kelas.Text & "' ", koneksi, adOpenDynamic If Not rekord.EOF The lv.ListItems.Clear
On Error Resume Next Do While Not rekord.EOF Set List = lv.ListItems.Add(, , rekord.Fields(0)) For i = 1 To 10 List.SubItems(i) = rekord.Fields(i) Next i rekord.MoveNext Loop Else MsgBox "Data Tidak Ditemukan!", vbCritical, "CARI DATA" Exit Sub End If ElseIf Me.txt_kelas.Text <> Empty Then Set rekord = New ADODB.Recordset If rekord.State = adStateOpen Then Set rekord = Nothing rekord.Open "Select *from Siswa where nis like '" & Me.txtnis.Text & "%' ", koneksi, adOpenDynamic If Not rekord.EOF Then lv.ListItems.Clear On Error Resume Next Do While Not rekord.EOF Set List = lv.ListItems.Add(, , rekord.Fields(0)) For i = 1 To 10 List.SubItems(i) = rekord.Fields(i) Next i rekord.MoveNext Loop Else MsgBox "Data Tidak Ditemukan!", vbCritical, "CARI DATA" Exit Sub End If End If End Sub Private Sub cmdSave_Click() If cmdSave.Caption = "Update" Then If txt_nis.Text = "" Or txt_nama.Text = "" Or cboTahun.Text = "" Or cbokelas.Text = "" Or txt_tmpt_lahir.Text = "" Or tgl_lahir.Value = "" Or cbojenkel.Text = "" Or cboagama.Text = "" Or txt_nma_ortu.Text = "" Or txt_alamat.Text = "" Then MsgBox "Data Tidak Boleh Kosong!", vbCritical, "UPDATE DATA" Me.txt_nis.SetFocus
Exit Sub Else SQL = "Update Siswa set NIS = '" & txt_nis.Text & "', Nama = '" & Me.txt_nama.Text & "', Tahun_Masuk = '" & cboTahun.Text & "', Kelas = '" & cbokelas.Text & "', " & _ "Tmpt_Lahir = '" & txt_tmpt_lahir.Text & "', Tgl_Lahir = '" & tgl_lahir.Value & "', " & _ "Jenis_Kelamin = '" & cbojenkel.Text & "', Agama = '" & cboagama.Text & "', " & _ "Nama_Orang_Tua = '" & txt_nma_ortu.Text & "', Alamat = '" & txt_alamat.Text & "' where nis = '" & var_nis.Text & "'" koneksi.Execute (SQL) MsgBox "Data Sudah Di Update!", vbInformation, "UPDATE DATA" txt_nis.Text = "" txt_nama.Text = "" cboTahun.ListIndex = -1 cbokelas.ListIndex = -1 txt_tmpt_lahir.Text = "" 'tgl_lahir.Value = "" cbojenkel.ListIndex = -1 cboagama.ListIndex = -1 txt_nma_ortu.Text = "" txt_alamat.Text = "" cmdSave.Caption = "save": cmdSave.Enabled = False: cmdEdit.Enabled = False Set rekord = New ADODB.Recordset If rekord.State = adStateOpen Then Set rekord = Nothing rekord.Open "select *from Siswa", koneksi, adOpenDynamic lv.ListItems.Clear On Error Resume Next Do While Not rekord.EOF Set List = lv.ListItems.Add(, , rekord.Fields(0)) For i = 1 To 10 List.SubItems(i) = rekord.Fields(i) Next i rekord.MoveNext Loop End If ElseIf cmdSave.Caption = "Save" Then If txt_nis.Text = "" Or txt_nama.Text = "" Or cboTahun.Text = "" Or cbokelas.Text = "" Or txt_tmpt_lahir.Text = "" Or tgl_lahir.Value = "" Or cbojenkel.Text = "" Or cboagama.Text = "" Or txt_nma_ortu.Text = "" Or txt_alamat.Text = "" Then MsgBox "Data Tidak Boleh Kosong!", vbCritical, "DATA KOSONG" Exit Sub Else SQL_simpan = "INSERT into Siswa values ('" & txt_nis.Text & "','" & txt_nama.Text & "', " & _ "'" & cboTahun.Text & "', '" & cbokelas.Text & "','" & txt_tmpt_lahir.Text & "', " & _ "'" & tgl_lahir.Value & "','" & cbojenkel.Text & "','" & cboagama.Text & "', " & _ "'" & txt_nma_ortu.Text & "', '" & txt_alamat.Text & "');" koneksi.Execute (SQL_simpan) MsgBox "Data Sudah Tersimpan!", vbInformation, "SIMPAN DATA" txt_nis.Text = "" txt_nama.Text = "" cboTahun.ListIndex = -1 cbokelas.ListIndex = -1 txt_tmpt_lahir.Text = "" 'tgl_lahir.Value = "" cbojenkel.ListIndex = -1 cboagama.ListIndex = -1 txt_nma_ortu.Text = "" txt_alamat.Text = "" Me.Frame1.Enabled = False cmdSave.Enabled = False cmdAdd.Enabled = True Set rekord = New ADODB.Recordset If rekord.State = adStateOpen Then Set rekord = Nothing rekord.Open "select *from Siswa", koneksi, adOpenDynamic lv.ListItems.Clear On Error Resume Next Do While Not rekord.EOF Set List = lv.ListItems.Add(, , rekord.Fields(0)) For i = 1 To 10 List.SubItems(i) = rekord.Fields(i) Next i rekord.MoveNext Loop End If End If End Sub Private Sub Form_Activate() Me.Frame1.Enabled = False End Sub
Private Sub Form_Load() Me.Move 2200, 300 Call koneksi_database Set rekord = New ADODB.Recordset If rekord.State = adStateOpen Then Set rekord = Nothing rekord.Open "select *from Siswa", koneksi, adOpenDynamic lv.ListItems.Clear On Error Resume Next Do While Not rekord.EOF Set List = lv.ListItems.Add(, , rekord.Fields(0)) For i = 1 To 10 List.SubItems(i) = rekord.Fields(i) Next i rekord.MoveNext Loop cmdAdd.Enabled = True cmdSave.Enabled = False cmdEdit.Enabled = False cmdCancel.Enabled = False cmdDelete.Enabled = False End Sub Private Sub lv_DblClick() 'On Error Resume Next frmsiswa.cmdEdit.Enabled = True frmsiswa.cmdCancel.Enabled = True frmsiswa.cmdDelete.Enabled = True frmsiswa.txt_nis.Text = Me.lv.ListItems.Item(lv.SelectedItem.Index).Text frmsiswa.var_nis.Text = Me.lv.ListItems.Item(lv.SelectedItem.Index).Text frmsiswa.txt_nama.Text = Me.lv.ListItems.Item(lv.SelectedItem.Index).ListSubItems( 1) frmsiswa.cboTahun.Text = Me.lv.ListItems.Item(lv.SelectedItem.Index).ListSubItems( 2) frmsiswa.cbokelas.Text = Me.lv.ListItems.Item(lv.SelectedItem.Index).ListSubItems( 3) frmsiswa.txt_tmpt_lahir.Text = Me.lv.ListItems(lv.SelectedItem.Index).ListSubItems(4) frmsiswa.tgl_lahir.Value = Me.lv.ListItems.Item(lv.SelectedItem.Index).ListSubItems( 5) frmsiswa.cbojenkel.Text =
Me.lv.ListItems.Item(lv.SelectedItem.Index).ListSubItems( 6) frmsiswa.cboagama.Text = Me.lv.ListItems.Item(lv.SelectedItem.Index).ListSubItems( 7) frmsiswa.txt_nma_ortu.Text = Me.lv.ListItems.Item(lv.SelectedItem.Index).ListSubItems( 8) frmsiswa.txt_alamat.Text = Me.lv.ListItems.Item(lv.SelectedItem.Index).ListSubItems( 9) End Sub Private Sub txt_kelas_Change() Set rekord = New ADODB.Recordset If rekord.State = adStateOpen Then Set rekord = Nothing rekord.Open "Select *from Siswa where kelas like '" & Me.txt_kelas.Text & "%'", koneksi, adOpenDynamic lv.ListItems.Clear On Error Resume Next Do While Not rekord.EOF Set List = lv.ListItems.Add(, , rekord.Fields(0)) For i = 1 To 10 List.SubItems(i) = rekord.Fields(i) Next i rekord.MoveNext Loop End Sub Private Sub txtnis_Change() Set rekord = New ADODB.Recordset If rekord.State = adStateOpen Then Set rekord = Nothing rekord.Open "Select *from Siswa where nis like '" & Me.txtnis.Text & "%'", koneksi, adOpenDynamic lv.ListItems.Clear On Error Resume Next Do While Not rekord.EOF Set List = lv.ListItems.Add(, , rekord.Fields(0)) For i = 1 To 10 List.SubItems(i) = rekord.Fields(i) Next i rekord.MoveNext Loop End Sub
Form Guru
Private Sub cmdAdd_Click() Frame1.Enabled = True Me.cmdAdd.Enabled = False Me.cmdSave.Enabled = True Me.txt_nip.SetFocus End Sub Private Sub cmdCancel_Click() txt_nip.Text = "" txt_nama.Text = "" txt_inisial.Text = "" txt_tmpt_lahir.Text = "" 'tgl_lahir.Value = "" cboagama.ListIndex = -1 cbojenkel.ListIndex = -1 txt_alamat.Text = "" txt_no_telp.Text = "" Me.cmdAdd.Enabled = True Me.cmdClose.Enabled = True Me.cmdSave.Enabled = False Me.cmdEdit.Enabled = False End Sub Private Sub cmdClose_Click() Unload Me End Sub Private Sub cmdDelete_Click() Set rekord = New ADODB.Recordset If rekord.State = adStateOpen Then Set rekord = Nothing SQL = "Delete * from Guru where NIP = '" & Me.txt_nip.Text & "'" koneksi.Execute (SQL) MsgBox "Data Sudah Terhapus!", vbInformation, "HAPUS DATA" bersih rekord.Open "Select *from Guru", koneksi, adOpenDynamic On Error Resume Next lv.ListItems.Clear Do While Not rekord.EOF Set List = lv.ListItems.Add(, , rekord.Fields(0)) For i = 1 To 9 List.SubItems(i) = rekord.Fields(i) Next i rekord.MoveNext Loop End Sub Private Sub bersih() txt_nip.Text = "" txt_nama.Text = "" txt_inisial.Text = "" txt_tmpt_lahir.Text = "" 'tgl_lahir.Value = "" cboagama.ListIndex = -1 cbojenkel.ListIndex = -1 txt_alamat.Text = "" txt_no_telp.Text = "" End Sub Private Sub cmdEdit_Click() Me.cmdSave.Caption = "Update" Me.cmdSave.Enabled = True Me.cmdEdit.Enabled = False Me.Frame1.Enabled = True End Sub Private Sub cmdFind_Click() If Me.txtnip.Text = "" Then MsgBox "Data Tidak Boleh Kosong!", vbCritical, "Data Kosong" Me.txtnip.SetFocus Exit Sub Else Set rekord = New ADODB.Recordset If rekord.State = adStateOpen Then Set rekord = Nothing rekord.Open "Select *from Guru where nip like '" & Me.txtnip.Text & "%'", koneksi, adOpenDynamic If Not rekord.EOF Then lv.ListItems.Clear On Error Resume Next Do While Not rekord.EOF Set List = lv.ListItems.Add(, , rekord.Fields(0)) For i = 1 To 9 List.SubItems(i) = rekord.Fields(i) Next i rekord.MoveNext Loop Else MsgBox "Data Tidak Ditemukan!", vbCritical, "CARI DATA" Exit Sub End If End If End Sub Private Sub cmdSave_Click() If cmdSave.Caption = "Update" Then If txt_nip.Text = "" Or txt_nama.Text = "" Or txt_inisial.Text = "" Or txt_tmpt_lahir.Text = "" Or tgl_lahir.Value = "" Or cboagama.Text = "" Or
cbojenkel.Text = "" Or txt_alamat.Text = "" Or txt_no_telp.Text = "" Then MsgBox "Data Tidak Boleh Kosong!", vbCritical, "UPDATE DATA" Me.txt_nip.SetFocus Exit Sub Else SQL = "Update Guru set NIP = '" & txt_nip.Text & "', Nama = '" & Me.txt_nama.Text & "', Inisial = '" & txt_inisial.Text & "', " & _ "Tmpt_Lahir = '" & txt_tmpt_lahir.Text & "', Tgl_Lahir = '" & tgl_lahir.Value & "', " & _ "Agama = '" & cboagama.Text & "', Jenis_Kelamin = '" & cbojenkel.Text & "', " & _ "Alamat = '" & txt_alamat.Text & "', No_Telp = '" & txt_no_telp.Text & "' where nip = '" & var_nip.Text & "'" koneksi.Execute (SQL) MsgBox "Data Sudah Di Update!", vbInformation, "UPDATE DATA" txt_nip.Text = "" txt_nama.Text = "" txt_inisial.Text = "" txt_tmpt_lahir.Text = "" 'tgl_lahir.Value = "" cboagama.ListIndex = -1 cbojenkel.ListIndex = -1 txt_alamat.Text = "" txt_no_telp.Text = "" cmdSave.Caption = "save": cmdSave.Enabled = False: cmdEdit.Enabled = False Set rekord = New ADODB.Recordset If rekord.State = adStateOpen Then Set rekord = Nothing rekord.Open "select *from Guru", koneksi, adOpenDynamic lv.ListItems.Clear On Error Resume Next Do While Not rekord.EOF Set List = lv.ListItems.Add(, , rekord.Fields(0)) For i = 1 To 9 List.SubItems(i) = rekord.Fields(i) Next i rekord.MoveNext Loop End If ElseIf cmdSave.Caption = "Save" Then If txt_nip.Text = "" Or txt_nama.Text = "" Or txt_inisial.Text = "" Or txt_tmpt_lahir.Text = "" Or tgl_lahir.Value = "" Or cboagama.Text = "" Or cbojenkel.Text = "" Or txt_alamat.Text = "" Or txt_no_telp.Text = "" Then MsgBox "Data Tidak Boleh Kosong!", vbCritical, "DATA KOSONG" Exit Sub Else SQL_simpan = "INSERT into Guru values ('" & txt_nip.Text & "','" & txt_nama.Text & "', " & _ "'" & txt_inisial.Text & "', '" & txt_tmpt_lahir.Text & "', '" & tgl_lahir.Value & "', " & _ "'" & cboagama.Text & "','" & cbojenkel.Text & "', " & _ "'" & txt_alamat.Text & "', '" & txt_no_telp.Text & "');" koneksi.Execute (SQL_simpan) MsgBox "Data Sudah Tersimpan!", vbInformation, "SIMPAN DATA" txt_nip.Text = "" txt_nama.Text = "" txt_inisial.Text = "" txt_tmpt_lahir.Text = "" 'tgl_lahir.Value = "" cboagama.ListIndex = -1 cbojenkel.ListIndex = -1 txt_alamat.Text = "" txt_no_telp.Text = "" Me.Frame1.Enabled = False cmdSave.Enabled = False cmdAdd.Enabled = True Set rekord = New ADODB.Recordset If rekord.State = adStateOpen Then Set rekord = Nothing rekord.Open "select *from Guru", koneksi, adOpenDynamic lv.ListItems.Clear On Error Resume Next Do While Not rekord.EOF Set List = lv.ListItems.Add(, , rekord.Fields(0)) For i = 1 To 9 List.SubItems(i) = rekord.Fields(i) Next i rekord.MoveNext Loop End If End If End Sub Private Sub Form_Activate()Me.Frame1.Enabled = False End Sub Private Sub Form_Load() Me.Move 2200, 600 Call koneksi_database Set rekord = New ADODB.Recordset If rekord.State = adStateOpen Then Set rekord = Nothing rekord.Open "select *from Guru", koneksi, adOpenDynamic lv.ListItems.Clear On Error Resume Next Do While Not rekord.EOF Set List = lv.ListItems.Add(, , rekord.Fields(0)) For i = 1 To 9 List.SubItems(i) = rekord.Fields(i) Next i rekord.MoveNext Loop cmdAdd.Enabled = True cmdSave.Enabled = False cmdEdit.Enabled = False cmdCancel.Enabled = False cmdDelete.Enabled = False End Sub Private Sub lv_DblClick() 'On Error Resume Next frmguru.cmdEdit.Enabled = True frmguru.cmdCancel.Enabled = True frmguru.cmdDelete.Enabled = True frmguru.txt_nip.Text = Me.lv.ListItems.Item(lv.SelectedItem.Index).Text frmguru.var_nip.Text = Me.lv.ListItems.Item(lv.SelectedItem.Index).Text frmguru.txt_nama.Text = Me.lv.ListItems.Item(lv.SelectedItem.Index).ListSubItems( 1) frmguru.txt_inisial.Text = Me.lv.ListItems.Item(lv.SelectedItem.Index).ListSubItems( 2) frmguru.txt_tmpt_lahir.Text = Me.lv.ListItems(lv.SelectedItem.Index).ListSubItems(3) frmguru.tgl_lahir.Value = Me.lv.ListItems.Item(lv.SelectedItem.Index).ListSubItems( 4) frmguru.cboagama.Text = Me.lv.ListItems.Item(lv.SelectedItem.Index).ListSubItems(
5) frmguru.cbojenkel.Text = Me.lv.ListItems.Item(lv.SelectedItem.Index).ListSubItems( 6) frmguru.txt_alamat.Text = Me.lv.ListItems.Item(lv.SelectedItem.Index).ListSubItems( 7) frmguru.txt_no_telp.Text = Me.lv.ListItems.Item(lv.SelectedItem.Index).ListSubItems( 8) End Sub Private Sub txtnip_Change() Set rekord = New ADODB.Recordset If rekord.State = adStateOpen Then Set rekord = Nothing rekord.Open "Select *from Guru where nip like '" & Me.txtnip.Text & "%'", koneksi, adOpenDynamic lv.ListItems.Clear On Error Resume Next Do While Not rekord.EOF Set List = lv.ListItems.Add(, , rekord.Fields(0)) For i = 1 To 9 List.SubItems(i) = rekord.Fields(i) Next i rekord.MoveNext Loop End Sub
Form Pegawai
Private Sub cmdAdd_Click() Frame1.Enabled = True Me.cmdAdd.Enabled = False Me.cmdSave.Enabled = True Me.txt_nip.SetFocus End Sub Private Sub cmdCancel_Click() txt_nip.Text = "" txt_nama.Text = "" txt_inisial.Text = "" txt_tmpt_lahir.Text = "" 'tgl_lahir.Value = "" cboagama.ListIndex = -1 cbojenkel.ListIndex = -1 txt_alamat.Text = "" txt_no_telp.Text = "" Me.cmdAdd.Enabled = True
Me.cmdClose.Enabled = True Me.cmdSave.Enabled = False Me.cmdEdit.Enabled = False End Sub Private Sub cmdClose_Click() Unload Me End Sub Private Sub cmdDelete_Click() Set rekord = New ADODB.Recordset If rekord.State = adStateOpen Then Set rekord = Nothing SQL = "Delete * from Pegawai where NIP = '" & Me.txt_nip.Text & "'" koneksi.Execute (SQL) MsgBox "Data Sudah Terhapus!", vbInformation, "HAPUS DATA" bersih rekord.Open "Select *from Pegawai", koneksi, adOpenDynamic On Error Resume Next lv.ListItems.Clear Do While Not rekord.EOF Set List = lv.ListItems.Add(, , rekord.Fields(0)) For i = 1 To 9 List.SubItems(i) = rekord.Fields(i) Next i rekord.MoveNext Loop End Sub Private Sub bersih() txt_nip.Text = "" txt_nama.Text = "" txt_inisial.Text = "" txt_tmpt_lahir.Text = "" 'tgl_lahir.Value = "" cboagama.ListIndex = -1 cbojenkel.ListIndex = -1 txt_alamat.Text = "" txt_no_telp.Text = "" End Sub Private Sub cmdEdit_Click() Me.cmdSave.Caption = "Update" Me.cmdSave.Enabled = True Me.cmdEdit.Enabled = False Me.Frame1.Enabled = True End Sub
Private Sub cmdFind_Click() If Me.txtnip.Text = "" Then MsgBox "Data Tidak Boleh Kosong!", vbCritical, "Data Kosong" Me.txtnip.SetFocus Exit Sub Else Set rekord = New ADODB.Recordset If rekord.State = adStateOpen Then Set rekord = Nothing rekord.Open "Select *from Pegawai where nip like '" & Me.txtnip.Text & "%'", koneksi, adOpenDynamic If Not rekord.EOF Then lv.ListItems.Clear On Error Resume Next Do While Not rekord.EOF Set List = lv.ListItems.Add(, , rekord.Fields(0)) For i = 1 To 9 List.SubItems(i) = rekord.Fields(i) Next i rekord.MoveNext Loop Else MsgBox "Data Tidak Ditemukan!", vbCritical, "CARI DATA" Exit Sub End If End If End Sub Private Sub cmdSave_Click() If cmdSave.Caption = "Update" Then If txt_nip.Text = "" Or txt_nama.Text = "" Or txt_inisial.Text = "" Or txt_tmpt_lahir.Text = "" Or tgl_lahir.Value = "" Or cboagama.Text = "" Or cbojenkel.Text = "" Or txt_alamat.Text = "" Or txt_no_telp.Text = "" Then MsgBox "Data Tidak Boleh Kosong!", vbCritical, "UPDATE DATA" Me.txt_nip.SetFocus Exit Sub Else SQL = "Update Pegawai set NIP = '" & txt_nip.Text & "', Nama = '" & Me.txt_nama.Text & "', Inisial = '" & txt_inisial.Text & "', " & _ "Tmpt_Lahir = '" & txt_tmpt_lahir.Text & "', Tgl_Lahir = '" & tgl_lahir.Value & "', " & _ "Agama = '" & cboagama.Text & "', Jenis_Kelamin = '" & cbojenkel.Text & "', " & _ "Alamat = '" & txt_alamat.Text & "', No_Telp = '" & txt_no_telp.Text & "' where nip = '" & var_nip.Text & "'" koneksi.Execute (SQL) MsgBox "Data Sudah Di Update!", vbInformation, "UPDATE DATA" txt_nip.Text = "" txt_nama.Text = "" txt_inisial.Text = "" txt_tmpt_lahir.Text = "" 'tgl_lahir.Value = "" cboagama.ListIndex = -1 cbojenkel.ListIndex = -1 txt_alamat.Text = "" txt_no_telp.Text = "" cmdSave.Caption = "save": cmdSave.Enabled = False: cmdEdit.Enabled = False Set rekord = New ADODB.Recordset If rekord.State = adStateOpen Then Set rekord = Nothing rekord.Open "select *from Pegawai", koneksi, adOpenDynamic lv.ListItems.Clear On Error Resume Next Do While Not rekord.EOF Set List = lv.ListItems.Add(, , rekord.Fields(0)) For i = 1 To 9 List.SubItems(i) = rekord.Fields(i) Next i rekord.MoveNext Loop End If ElseIf cmdSave.Caption = "Save" Then If txt_nip.Text = "" Or txt_nama.Text = "" Or txt_inisial.Text = "" Or txt_tmpt_lahir.Text = "" Or tgl_lahir.Value = "" Or cboagama.Text = "" Or cbojenkel.Text = "" Or txt_alamat.Text = "" Or txt_no_telp.Text = "" Then MsgBox "Data Tidak Boleh Kosong!", vbCritical, "DATA KOSONG" Exit Sub Else SQL_simpan = "INSERT into Pegawai values ('" & txt_nip.Text & "','" & txt_nama.Text & "', " & _ "'" & txt_inisial.Text & "', '" & txt_tmpt_lahir.Text & "', '" & tgl_lahir.Value & "', " & _ "'" & cboagama.Text & "','" & cbojenkel.Text & "', " & _ "'" & txt_alamat.Text & "', '" & txt_no_telp.Text & "');"
koneksi.Execute (SQL_simpan) MsgBox "Data Sudah Tersimpan!", vbInformation, "SIMPAN DATA" txt_nip.Text = "" txt_nama.Text = "" txt_inisial.Text = "" txt_tmpt_lahir.Text = "" 'tgl_lahir.Value = "" cboagama.ListIndex = -1 cbojenkel.ListIndex = -1 txt_alamat.Text = "" txt_no_telp.Text = "" Me.Frame1.Enabled = False cmdSave.Enabled = False cmdAdd.Enabled = True Set rekord = New ADODB.Recordset If rekord.State = adStateOpen Then Set rekord = Nothing rekord.Open "select *from Pegawai", koneksi, adOpenDynamic lv.ListItems.Clear On Error Resume Next Do While Not rekord.EOF Set List = lv.ListItems.Add(, , rekord.Fields(0)) For i = 1 To 9 List.SubItems(i) = rekord.Fields(i) Next i rekord.MoveNext Loop End If End If End Sub Private Sub Form_Activate() Me.Frame1.Enabled = False End Sub Private Sub Form_Load() Me.Move 2200, 800 Call koneksi_database Set rekord = New ADODB.Recordset If rekord.State = adStateOpen Then Set rekord = Nothing rekord.Open "select *from Pegawai", koneksi, adOpenDynamic lv.ListItems.Clear On Error Resume Next Do While Not rekord.EOF Set List = lv.ListItems.Add(, , rekord.Fields(0))For i = 1 To 9 List.SubItems(i) = rekord.Fields(i) Next i rekord.MoveNext Loop cmdAdd.Enabled = True cmdSave.Enabled = False cmdEdit.Enabled = False cmdCancel.Enabled = False cmdDelete.Enabled = False End Sub Private Sub lv_DblClick() frmpegawai.cmdEdit.Enabled = True frmpegawai.cmdDelete.Enabled = True frmpegawai.cmdCancel.Enabled = True frmpegawai.txt_nip.Text = Me.lv.ListItems.Item(lv.SelectedItem.Index).Text frmpegawai.var_nip.Text = Me.lv.ListItems.Item(lv.SelectedItem.Index).Text frmpegawai.txt_nama.Text = Me.lv.ListItems.Item(lv.SelectedItem.Index).ListSubItems( 1) frmpegawai.txt_inisial.Text = Me.lv.ListItems.Item(lv.SelectedItem.Index).ListSubItems( 2) frmpegawai.txt_tmpt_lahir.Text = Me.lv.ListItems(lv.SelectedItem.Index).ListSubItems(3) frmpegawai.tgl_lahir.Value = Me.lv.ListItems(lv.SelectedItem.Index).ListSubItems(4) frmpegawai.cboagama.Text = Me.lv.ListItems.Item(lv.SelectedItem.Index).ListSubItems( 5) frmpegawai.cbojenkel.Text = Me.lv.ListItems.Item(lv.SelectedItem.Index).ListSubItems( 6) frmpegawai.txt_alamat.Text = Me.lv.ListItems.Item(lv.SelectedItem.Index).ListSubItems( 7) frmpegawai.txt_no_telp.Text = Me.lv.ListItems.Item(lv.SelectedItem.Index).ListSubItems( 8) End Sub Private Sub txtnip_Change() Set rekord = New ADODB.Recordset If rekord.State = adStateOpen Then Set rekord = Nothing rekord.Open "Select *from Pegawai where nip like '" & Me.txtnip.Text & "%'", koneksi, adOpenDynamic lv.ListItems.Clear
On Error Resume Next Do While Not rekord.EOF Set List = lv.ListItems.Add(, , rekord.Fields(0)) For i = 1 To 9 List.SubItems(i) = rekord.Fields(i) Next i rekord.MoveNext Loop End Sub
Form Kelas
Private Sub cmdAdd_Click() Frame1.Enabled = True Me.cmdAdd.Enabled = False Me.cmdSave.Enabled = True Me.txtTahun.SetFocus End Sub Private Sub cmdCancel_Click() Me.txtTahun.Text = "" Me.txtKelas.Text = "" Me.cmdAdd.Enabled = True Me.cmdClose.Enabled = True Me.cmdSave.Enabled = False Me.cmdEdit.Enabled = False End Sub Private Sub cmdClose_Click() Unload Me End Sub Private Sub cmdDelete_Click() Set rekord = New ADODB.Recordset If rekord.State = adStateOpen Then Set rekord = Nothing SQL = "Delete * from Kelas where idkelas = " & Me.txtid.Text & "" koneksi.Execute (SQL) MsgBox "Data Sudah Terhapus!", vbInformation, "HAPUS DATA" rekord.Open "Select *from Kelas", koneksi, adOpenDynamic On Error Resume Next lv.ListItems.Clear Do While Not rekord.EOF Set List = lv.ListItems.Add(, , rekord.Fields(0)) For i = 1 To 3 List.SubItems(i) = rekord.Fields(i) Next i rekord.MoveNext Loop bersih End Sub Private Sub bersih() txtTahun.Text = "" txtKelas.Text = "" End Sub Private Sub cmdEdit_Click() Me.cmdSave.Caption = "Update" Me.cmdSave.Enabled = True Me.cmdEdit.Enabled = False Me.Frame1.Enabled = True End Sub Private Sub cmdSave_Click() If cmdSave.Caption = "Update" Then If txtTahun.Text = "" Or txtKelas.Text = "" Then MsgBox "Data Tidak Boleh Kosong!", vbCritical, "UPDATE DATA" Me.txtTahun.SetFocus Exit Sub Else SQL = "Update Kelas set Tahun_Masuk = '" & txtTahun.Text & "', Kelas = '" & Me.txtKelas.Text & "' where idkelas = " & Me.txtid.Text & " " koneksi.Execute (SQL) MsgBox "Data Sudah Di Update!", vbInformation, "UPDATE DATA" txtTahun.Text = "" txtKelas.Text = "" cmdSave.Caption = "save": cmdSave.Enabled = False: cmdEdit.Enabled = False End If ElseIf cmdSave.Caption = "Save" Then If txtTahun.Text = "" Or txtKelas.Text = "" Then Exit Sub Else SQL_simpan = "INSERT into Kelas (Tahun_Masuk, Kelas) values ('" & txtTahun.Text & "','" & txtKelas.Text & "');" koneksi.Execute (SQL_simpan) MsgBox "Data Sudah Tersimpan!", vbInformation, "SIMPAN DATA" isi_listkelas txtTahun.Text = "" txtKelas.Text = "" Me.Frame1.Enabled = False
cmdAdd.Enabled = True End If End If End Sub Sub isi_listkelas() Set rekord = New ADODB.Recordset If rekord.State = adStateOpen Then Set rekord = Nothing rekord.Open "select * from Kelas", koneksi, adOpenDynamic lv.ListItems.Clear On Error Resume Next Do While Not rekord.EOF Set List = lv.ListItems.Add(, , rekord.Fields(0)) For i = 1 To 2 List.SubItems(i) = rekord.Fields(i) Next i rekord.MoveNext Loop End Sub Private Sub Form_Activate() Me.Frame1.Enabled = False End Sub Private Sub Form_Load() Me.Move 3500, 1800 Call koneksi_database Set rekord = New ADODB.Recordset If rekord.State = adStateOpen Then Set rekord = Nothing rekord.Open "select *from Kelas", koneksi, adOpenDynamic lv.ListItems.Clear On Error Resume Next Do While Not rekord.EOF Set List = lv.ListItems.Add(, , rekord.Fields(0)) For i = 1 To 3 List.SubItems(i) = rekord.Fields(i) Next i rekord.MoveNext Loop cmdAdd.Enabled = True cmdSave.Enabled = False cmdEdit.Enabled = False cmdCancel.Enabled = False cmdDelete.Enabled = False End SubPrivate Sub lv_DblClick() cmdEdit.Enabled = True cmdDelete.Enabled = True cmdCancel.Enabled = True txtid.Text = Me.lv.ListItems.Item(lv.SelectedItem.Index).Text txtTahun = Me.lv.ListItems.Item(lv.SelectedItem.Index).ListSubItems( 1) txtKelas = Me.lv.ListItems.Item(lv.SelectedItem.Index).ListSubItems( 2) End Sub
Form About
Private Sub cmdClose_Click() Unload Me End Sub Private Sub Form_Load() Me.Move 3500, 600 End Sub