Kerasipan Vb

download Kerasipan Vb

of 25

  • date post

    04-Jan-2016
  • Category

    Documents

  • view

    148
  • download

    0

Embed Size (px)

Transcript of Kerasipan Vb

UAS PEMROGRAMAN VISUAL BASIC 2Program Kearsipan SMPN 01 WarungasemDosen Pengampu : Dessy Irmawati, M.T.

Disusun oleh :Mirza Himaktiar105202440Nuning Arumsari 105202440Dian Puspitasari10520244035PTI F4.2

PENDIDIKAN TEKNIK INFORMATIKAFAKULTAS TEKNIKUNIVERSITAS NEGERI YOGYAKARTA2012

Analisa ProgramProgram kearsipan ini dibuat untuk memudahkan pihak sekolah dalam mengecek dan mengelola sistem kearsipan sekolah khusunya yang terkait surat keluar dan masuk. Terdiri dari beberapa form dan setiap form memiliki fungsi yang berbeda-beda. Program tersebut dibuat dengan menggunakan Visual Basic 06 dan Mysql yang dihubungkan oleh ADODC dengan menggabungkan form dengan menu dan membuat laporan menggunakan Crystal Report dengan tujuan agar mampu membuat menu sebagai pengendali program. Menu merupakan serangkaian pilihan yang dapat di pilih (klik) untuk melakukan tugas tertentu. Menu ini biasanya terdiri di bagian atas suatu aplikasi. Crystal report merupakan aplikasi yang berfungsi untuk menampilkan output dari program database yang telah kita buat, adapun outputnya yaitu sebuah laporan. Di bawah ini akan dijelaskan fungsi dari tiap-tiap form.a. Form UtamaForm ini berisi kumpulan menu-menu yang ada pada program kearsipan. Setiap menu yang ada memiliki fungsi yang berbeda sesuai dengan fungsi form. Melalui menu ini form yang telah dibuat pada tahap sebelumnya dapat dijalankan sesuai dengan keperluan.Sehingga form dapat dipanggil sewaktu-waktu dan ditutup kembali apabila telah selesai digunakan.1. Membuat menu utama untuk menampilkan form sebelumnya menggunakan menu editor.2. Untuk menjalankan semua form yang telah dibuat sebelumnya dengan mengetikkan kode frmNamaForm.Show pada semua sub menu. Contoh untuk menjalankan menu Login maka mengetiKkan kode frmLogin.Show pada sub menu Login.

Keterangan Form Utama

Pada menu Administrator terdiri sub menu Admin. Login, dan Logout, sedangakan pada menu Guru terdiri sub menu Profil Guru dan Presensi Guru, pada menu Surat terdiri dari sub menu Surat masuk, Surat Keluar, dan Surat Keputusan, dan pada menu Foto berfungsi untuk menampilkan formFoto yang berfungsi untuk menmpilkan foto-foto surat.b. Form LoginForm ini berfungsi untuk admin atau user selain admin menjalankan program kearsipan tersebut. Pada form ini tetunya diperlukan sitem keamanan program agar tidak mudah disalahgunakan oleh pihak-pihak yang tidak bertanggungjawab. Oleh karena itu pada form ini kami memberi keamanan dalam mengatasi maslah sql injection yaitu dengan menambahkan syntak di bwah ini:

Private Function FilterSQL(strInput As String) As String strInput = Replace(strInput, "'", "''", 1, -1, 1) strInput = Replace(strInput, "_xp", "", 1, -1, 1) strInput = Replace(strInput, "=", "", 1, -1, 1) FilterSQL = strInputEnd Function

Ketika pengguna mengklik cmdOK atau tombol OK maka akan terjadi proses replace (penggantian) apabila yang diinputkan penguna pada txtUser dan txtPassword ada unsur menjadi serta ; menjadi kosong sehingga ini akan mengatasi permasalahan SQL Injection. Jadi ketika baris kode ini ditambahkan maka ketika pengguna mencoba login dengan menginputkan or= pada username maupun password maka pengguna akan gagal login. or= akan berubah menjadi or=. Keterangan Form Login

cmdCanceltxtPasswordtxtUsercmdOk

Syntak Program LoginPrivate Function FilterSQL(strInput As String) As String strInput = Replace(strInput, "'", "''", 1, -1, 1) strInput = Replace(strInput, "_xp", "", 1, -1, 1) strInput = Replace(strInput, "=", "", 1, -1, 1) FilterSQL = strInputEnd FunctionPrivate Sub cmdCancel_Click() Unload MeEnd SubPrivate Sub cmdOK_Click() Adodc1.RecordSource = "Select * from data_user where Username='" & FilterSQL(txtUser.Text) & "' and Password='" & FilterSQL(txtPassword.Text) & "'" Adodc1.Refresh If Adodc1.Recordset.RecordCount > 0 Then Adodc1.Recordset.MoveFirst If Adodc1.Recordset.Fields.Item(0) = "dian" Then MDIForm1.mnAdmin.Visible = True ElseMDIForm1.mnAdmin.Visible = False End If LoginSucceeded = True Unload Me MDIForm1.Show MDIForm1.mnLogin.Visible = False MDIForm1.mnSimpan.Enabled = True MDIForm1.mnCetak.Enabled = True MDIForm1.mnInput.Enabled = True MDIForm1.mnBantuan.Enabled = True MDIForm1.mnLogout.Enabled = True MDIForm1.mnInfo.Enabled = True Else MsgBox "invalid Password, try again!", , "Login" txtPassword.SetFocus End IfEnd Subc. Form User (admin)Form ini berfungsi untuk memberikan hak akses kepada admin dalam menambah, mengubah, bahkan menghapus data terkait kearsipan. Keterangan Form User

cmdUpdatecmdKeluarcmdBatalcmdSimpancmdHapuscmdUbahcmdTambahtxtPasstxtUserDataGrid

Syntak Program UserPrivate Sub cmdBatal_Click() txtUser.Text = "" txtPass.Text = "" txtUser.Enabled = False txtPass.Enabled = False cmdSimpan.Enabled = False cmdBatal.Enabled = False cmdTambah.Enabled = True cmdUbah.Enabled = True cmdHapus.Enabled = TrueEnd SubPrivate Sub cmdHapus_Click() Dim sql As String Label3.Caption = DataGrid1.Text jawab = MsgBox("Hapus user " & Label3.Caption, vbYesNo, "konfirmasi") If jawab = vbYes Then jawab1 = MsgBox("Hapus user " & Label3.Caption & "???", vbYesNo, "Konfirmasi") If jawab1 = vbYes Then Call konekDB sql = "" sql = "DELETE FROM data_user WHERE username='" & Label3.Caption & "'" koneksi.Execute sql, , adCmdText Adodc1.Refresh DataGrid1.Refresh Else user.Show End If Else user.Show End IfEnd SubPrivate Sub cmdKeluar_Click() If MsgBox("Anda yakin akan mengakhiri form ini?", vbQuestion + vbYesNo, "Konfirmasi") = vbYes Then Unload Me End IfEnd SubPrivate Sub cmdsimpan_Click() If txtUser.Text = "" Or txtPass.Text = "" Then MsgBox "Tidak Boleh Ada Data Yang Kosong", vbOKOnly, "Sukses" Else Dim sql As String Dim nama As String Set RS = New Recordset Call konekDB nama = "select * from data_user where username = '" & txtUser.Text & "'" RS.Open nama, koneksi, adOpenStatic, adLockOptimistic If Not RS.EOF Then MsgBox "Data Username sudah ada", vbCritical, "Peringatan" Else RS.AddNew sql = "" sql = "INSERT INTO data_user VALUES('" & txtUser.Text & "','" & txtPass.Text & "')" koneksi.Execute sql, , adCmdText If Err.Number 0 Then MsgBox "Tambah data gagal", vbOKOnly, "Sukses" End Else MsgBox "Data berhasil disimpan", vbInformation, "Sukses" End If Adodc1.Refresh DataGrid1.Refresh cmdSimpan.Enabled = False cmdBatal.Enabled = False cmdTambah.Enabled = True cmdUbah.Enabled = True cmdUpdate.Enabled = False cmdHapus.Enabled = True txtUser.Text = "" txtPass.Text = "" txtUser.Enabled = False txtPass.Enabled = False End If End IfEnd SubPrivate Sub cmdTambah_Click() cmdSimpan.Enabled = True cmdBatal.Enabled = True cmdTambah.Enabled = False cmdUbah.Enabled = False cmdHapus.Enabled = False cmdUpdate.Enabled = False txtUser.Enabled = True txtPass.Enabled = TrueEnd SubPrivate Sub cmdUbah_Click() Dim sql As String Label3.Caption = DataGrid1.Text jawab = MsgBox("Ubah Data User " & Label3.Caption, vbYesNo, "konfirmasi") If jawab = vbYes Then txtUser.Enabled = True txtPass.Enabled = True cmdUpdate.Enabled = True cmdSimpan.Enabled = False cmdBatal.Enabled = True cmdTambah.Enabled = False cmdUbah.Enabled = False cmdHapus.Enabled = False Else user.Show End IfEnd SubPrivate Sub cmdUpdate_Click() If txtUser.Text = "" Or txtPass.Text = "" Then MsgBox "Tidak Boleh Ada Data Yang Kosong", vbOKOnly, "Sukses" Else Dim sql As String Call konekDB sql = "" sql = "UPDATE data_user SET username = '" & txtUser.Text & "',password= '" & txtPass.Text & "' WHERE username='" & Label3.Caption & "'" koneksi.Execute sql, , adCmdText If Err.Number 0 Then MsgBox "Ubah data gagal", vbOKOnly, "Sukses" Else MsgBox "Data berhasil diubah", vbInformation, "Sukses" End If Adodc1.Refresh DataGrid1.Refresh cmdTambah.Enabled = True cmdUbah.Enabled = True cmdHapus.Enabled = True cmdUpdate.Enabled = False cmdBatal.Enabled = False txtUser.Text = "" txtPass.Text = "" End IfEnd SubPrivate Sub Form_Load()End Sub

d. Form Surat MasukForm ini berfungsi untuk memasukkan data terkait surat-surat yang masuk seperti nomor surat, tanggal surat dikirimkan, perihal, pengirim, tanggal diterima suratnya, serta melampirkan scan surat masuk sebagai arsip. Pada form ini juga tersedia fasilitas untuk mencetak keseluruhan data yang telah dimasukkan.

Keterangan Form Surat Masuk

txtPengirimCaricmdTutupcmdCetakcmdTambahcmdFotocmdBatalcboTgl2txtTahun2cboBln2txtKeteranganDataGridtxtTahuncboBlncboTglcommonDialog1txtPengirimtxtPerihaltxtNomor

Syntak Program Surat Masuk

Dim conn As New ADODB.ConnectionDim adoquery As New ADODB.RecordsetDim strsql As String

Private Sub cboHalCari_Click() Select Case cboHalCari.List End Sub

Private Sub cmdBatal_Click() Adodc1.Refresh DataGrid1.Refresh txtPerihal.Text = "" txtPerihal.Enabled = False txtTahun.Text = "" txtTahun.Enabled = False txtNomor.Text = "" txtNomor.