63
JURNAL PENELITIAN REKAYASA PERANGKAT LUNAK SISTEM PENYELEKSI PENERIMAAN BEASISWA DI SMA NEGRI 3 SURAKARTA Oleh : Nama : Wahyuningtyas Dwi Utami NIM : 13.4.10008 Program Studi : Sistem Informasi Jenjang Pendidikan : S1 SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER STMIK SINAR NUSANTARA 1

Rekayasa Prangkat Lunak

Embed Size (px)

DESCRIPTION

SISTEM PENYELEKSI PENERIMAAN BEASISWADI SMA NEGRI 3 SURAKARTA

Citation preview

JURNAL PENELITIAN

REKAYASA PERANGKAT LUNAK

SISTEM PENYELEKSI PENERIMAAN BEASISWA

DI SMA NEGRI 3 SURAKARTA

Oleh :

Nama : Wahyuningtyas Dwi Utami

NIM : 13.4.10008

Program Studi : Sistem Informasi

Jenjang Pendidikan : S1

SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER

STMIK SINAR NUSANTARA

SURAKARTA

2014

1

DAFTAR ISIJURNAL PENELITIAN................................................................................................................................1DAFTAR ISI..................................................................................................................................................2DAFTAR GAMBAR.....................................................................................................................................3DAFTAR TABEL..........................................................................................................................................4PEMBAHASAN MASALAH.......................................................................................................................51. Analisa Sistem.......................................................................................................................................51.1. Analisa jenis kebutuhan.....................................................................................................................51.2. Analisa sistem yang berjalan.............................................................................................................62. Desain Sistem.........................................................................................................................................72.1 Use Case Diagram..............................................................................................................................72.1.1 Definisi Aktor....................................................................................................................................72.1.2 Definisi Use Case...............................................................................................................................72.1.3 Skenario Use Case.............................................................................................................................82.1.4 Diagram Use Case............................................................................................................................132.2 Class Diagram..................................................................................................................................142.3 Object Diagram................................................................................................................................152.4 Sequen Diagram...............................................................................................................................172.5 Diagram Kaloborasi.........................................................................................................................202.6 Diagram Aktivitas............................................................................................................................203. Pengkodean (Implementasi)..................................................................................................................213.1 Menu Utama......................................................................................................................................213.1.1 Form Menu Utama.............................................................................................................................213.1.2 Komponen Form Menu Utama..........................................................................................................213.1.3 Kode Program From Menu Utama....................................................................................................213.1 Menu Data Permohonan Beasiswa....................................................................................................233.2.1 Form Menu Data Permohonan Beasiswa...........................................................................................233.2.2 Komponen Form Data Permohonan Beasiswa..................................................................................233.2.3 Kode Program Form Menu Data Permohonan Beasiswa..................................................................243.2 Menu Data Bobot...............................................................................................................................373.2.1 Menu Data Bobot...............................................................................................................................373.2.2 Komponen Form Data Bobot.............................................................................................................373.2.3 Kode Program Data Bobot.................................................................................................................373.3 Menu Penyeleksian Beasiswa............................................................................................................443.3.1 Form Menu Penyeleksia Beasiswa....................................................................................................443.4.2 Komponen Form Penyeleksian..........................................................................................................443.4.3 Kode Program Penyeleksian..............................................................................................................443.5 Menu Laporan Data Permohonan Beasiswa......................................................................................503.5.1 Form Laporan Data Permohonan Beasiswa.......................................................................................503.5.2 Komponen Form Laporan Data Permohonan Beasiswa....................................................................523.5.3 Kode Program Laporan Data Permohonan Beasiswa........................................................................523.6 Menu Laporan Hasil Seleksi Beasiswa..............................................................................................523.6.1 Form Laporan Hasil Beasiswa...........................................................................................................523.6.2 Komponen Form Laporan Hasil Beasiswa........................................................................................523.6.3 Kode Program Laporan Hasil Beasiswa............................................................................................524. Referensi...............................................................................................................................................545. Kesimpulan...........................................................................................................................................54

2

DAFTAR GAMBAR

Gambar 1 Use Case Diagram Penyeleksian Beasiswa..................................................................13

Gambar 2 Class Diagram Penyeleksian Beasiswa.........................................................................14

Gambar 3 Objek Diagram..............................................................................................................15

Gambar 4 Menambahkan Data Permohonan Beasiswa.................................................................16

Gambar 5 Mengubah Data Permohonan Beasiswa.......................................................................16

Gambar 6 Menghapus Data Permohonan Beasiswa......................................................................17

Gambar 7 Menambah Data Bobot.................................................................................................17

Gambar 8 Mengubah Data Bobot..................................................................................................18

Gambar 9 Menghapus Data Bobot................................................................................................18

Gambar 10 Form Menu Utama......................................................................................................20

Gambar 11 Form Menu Data Permohonan Beasiswa....................................................................21

Gambar 12 Menu Data Bobot........................................................................................................36

Gambar 13 Form Menu Penyeleksian Beasiswa...........................................................................42

Gambar 14 Laporan Data Permohonan Beasiswa.........................................................................49

Gambar 15 Form Laporan Hasil Penyeleksian Beasiswa..............................................................50

3

DAFTAR TABEL

Tabel 1 Definisi Aktor.....................................................................................................................6

Tabel 2 Definisi Use Case...............................................................................................................6

Tabel 3 Skenario Menambah Data Permohonan Basiswa...............................................................7

Tabel 4 Mengubah Data Permohonan Beasiswa.............................................................................8

Tabel 5 Skenario Menghapus Data Permohonan Beasiswa............................................................9

Tabel 6 Skenario Memasukkan Data Bobot..................................................................................10

Tabel 7 Mengubah Data Bobot......................................................................................................10

Tabel 8 Menghapus Data Bobot....................................................................................................11

Tabel 9 Class Diagram...................................................................................................................13

Tabel 10 Komponen Form Login..................................................................................................19

Tabel 11 Komponen Form Data Permohonan Beasiswa...............................................................21

Tabel 12 Komponen Form Data Bobot........................................................................................35

Tabel 13 Komponen Form Penyeleksian.......................................................................................41

Tabel 14 Laporan Data Permohonan Beasiswa.............................................................................48

Tabel 15 Laporan Hasil Penyeleksian Beasiswa...........................................................................49

4

PEMBAHASAN MASALAH

1. Analisa Sistem

1.1. Analisa jenis kebutuhana. Functional requirement

- Sistem informasi mampu mengolah data permohonan beasiswa.

- Sistem informasi mampu mengolah data bobot.

- Sistem informasi mampu mengolah data pencarian beasiswa prestasi.

- Sistem informasi mampu mengolah data pencarian beasiswa tidak

mampu.

- Sistem informasi mampu mencetak laporan data permohonan

beasiswa.

- Sistem informasi dapat mencetak hasil penyeleksian penerima

beasiswa.

b. Development requirement

- Sistem informasi dikembangkan dengan bahasa visual basic.

- Sistem informasi menggunakan database Microsoft Access.

- Sistem informasi dikembangkan dengan bahasa SQL untuk

RDBMnya.

c. Deployment requirement

- Sistem informasi ini mampu berjalan minimal computer Pentium III

RAM 512 Mb dan setara dengan spesifikasi tersebut.

d. Performance requirement

- Sistem informasi ini dapat menghasilkan informasi yang akurat

terhadap siapa yang akan menerima beasiswa.

1.2. Analisa sistem yang berjalanDalam Aplikasi penyeleksian beasiswa pengerjaannya ditangani oleh

admin. Admin menerima rekap nilai rapot siswa dan data penghasilan orang

tua siswa. Dari data tersebut akan menghasilkan proses penyeleksian beasiswa

berdasarkan kreteria permohonan beasiswa yaitu beasiswa berpresetasi dan

5

beasiswa tidak mampu. Aplikasi penyeleksian beasiswa ini berisi pengajuan

beasiswa dari siswa yang bersekolah di SMA NEGRI 3 SURAKARTA. Hasil

penyeleksian diperoleh dari data nilai rapot siswa dan surat keterangan

penghasilan orang tua siswa.

2. Desain Sistem

2.1. Use Case Diagram

2.1.1. Definisi AktorBerikut adalah deskripsi pendefinisian aktor pada sistem penyeleksian penerimaan beasiswa di SMA NEGRI 3 SURAKARTA :Tabel 1 Definisi Aktor

Aktor DeskripsiAdmin Orang yang bertugas dan memiliki hak akses untuk

melakukan perekapan data hingga pengelolaan data, serta memberikan laporan ke kepala sekolah.

Siswa Siswa adalah orang yang diperbolehkan melakukan permohonan pengajuan beasiswa dengan kreteria atau syarat yang sudah ditentukan.

2.1.2. Definisi Use CaseBerikut adalah diskripsi pendefinisian use case pada sistem penyeleksian penerimaan beasiswa di SMA NEGRI 3 SURAKARTA :Tabel 2 Definisi Use Case

No Use Case Deskripsi1. Mengelola data

permohonan beasiswa

Mengelola data permohonan beasiswa merupakan proses generelisasi yang meliputi empat buah proses pengelolaan data permohonan beasiswa yaitu memasukkan data permohonan beasiswa, mengubah data permohonan beasiswa, menghapus data permohonan beasiswa dan mencari data permohonana beasiswa.

2 Menambah data permohonan beasiswa

Merupakan proses memasukan data permohonan beasiswa ke dalam basis data.

3 Mengubah data permohonan beasiswa

Merupakan proses mengubah data permohonan beasiswa di dalam basis data.

4 Mencari data permohonan

Mencari data permohonan berdasarkan NIS dimana akan menampilkan data permohonan yang dicari

6

beasiswa5 Menghapus data

permohonan beasiswa

Merupakan proses menghapus data permohonan beasiswa di dalam basis data.

6 Mengelola data bobot

mengelola data kreteria beasiswa merupakan proses generelisasi yang meliputi empat buah proses pengolaan data kreteria beasiswa yaitu memasukkan data kreteria beasiswa, menghapus data kreteria beasiswa dan mencari data kreteria beasiswa.

7 Menambah data bobot

Merupakan proses memasukkan data kreteria beasiswa ke basis data.

8 Mengubah data bobot

Merupakan proses mengubah data kreteria beasiswa di dalam basis data.

9 Menghapus data bobot

Merupakan proses menghapus data kreteria beasiswa di basis data.

10 Mencari data bobot

Mencari data bobot berdasarkan KD dimana akan menampilkan data bobot yang dicari

11 Hasil peringkingan

Hasil peringkangan merupakan proses generelisasi antara dua proses yaitu proses peringkingan dan penyeleksian beasiswa.

12 Mencari penerima beasiswa prestasi

Merupakan proses pencarian data penerima beasiswa prestasi berdasarkan data permohonan beasiswa dimana akan menampilkan data penerima beasiswa prestasi

13 Mencari penerima beasiswa tidak mampu

Merupakan proses pencarian data penerima beasiswa tidak mampu berdasarkan data bobot dimana akan menampilkan data penerima beasiswa tidak mampu.

2.1.3. Skenario Use CaseBerikut adalah skenario jalannya masing-masing use case yang telah didefinisikan sebelumnya :Nama use case: Memasukkan data permohonan beasiswaTabel 3 Skenario Menambah Data Permohonan Basiswa

Aksi Aktor Reaksi SistemSkenario Normal1. Memasukkan data

permohonan beasiswa sesuai kolom yang ada

2. Mengecek valid tidaknya data masukan3. Menyimpan data masukkan ke basis data

Skenario Alternatif1. Memasukkan data

permohonan beasiswa

7

sesuai kolom yang ada2. Mengecek valid tidaknya data masukan

3. Memperbaiki data masukkan yang tidak valid

4. Mengecek valid tidaknya data masukan5. Menyimpan data masukkan ke basis data

Nama use case : Mengubah data permohonan beasiswaTabel 4 Mengubah Data Permohonan Beasiswa

Aksi Aktor Reaksi SistemSkenario Normal1. Memasukkan NIS

permohonan beasiswa2. Mencari data permohonan beasiswa yang akan

diubah.3. Menampilkan data permohonan beasiswa

yang akan dicari4. Memilih data

permohonan beasiswa yang akan diubah

5. Menampilakan semua kolom data permohonan beasiswa yang akan diubah

6. Mengubah data permohonan beasiswa yang akan diubah

7. Mengecek valid tidaknya data masukan8. Menyimpan data permohonan beasiswa

masukkan ke basis dataSkenario Alternatif1. Memasukkan data NIS

permohonan beasiswa2. Mencari data permohonan beasiswa yang akan

diubah.3. Menampilkan data permohonan beasiswa

yang akan dicari4. Memilih data

permohonan beasiswa yang akan diubah

5. Menampilakan semua kolom data permohonan beasiswa yang akan diubah

6. Mengubah data permohonan beasiswa yang akan diubah

7. Mengecek valid tidaknya data masukan

8

8. Memperbaiki data masukkan yang diubah dan tidak valid

9. Mengecek valid tidaknya data masukan10. Menyimpan data permohonan beasiswa yang

telah diubah ke basis data

Nama use case : Menghapus data permohonan beasiswa Tabel 5 Skenario Menghapus Data Permohonan Beasiswa

Aksi Aktor Reaksi AktorSkenario Normal1. Memasukkan NIS

permohonan beasiswa2. Mencari data permohonan beasiswa yang akan

dihapus3. Menampilkan data permohonan beasiswa

yang akan dihapus4. Memilih data

permohonan beasiswa yang akan dihapus

5. Menampilkan pesan konfirmasi apakah data akan benar-benar dihapus

6. Mengeklik pilihan setuju data akan dihapus

7. Menghapus data permohonan beasiswa dari basis data

Skenario Alternatif1. Memasukkan NIS

permohonan beasiswa2. Mencari data permohonan beasiswa yang akan

dihapus3. Menampilkan data permohonan beasiswa

yang akan dihapus4. Memilih data

permohonan beasiswa yang akan dihapus

5. Menampilkan pesan konfirmasi apakah data akan benar-benar dihapus

6. Mengubah data permohonan beasiswa

7. Mengecek valid tidaknya data masukkan8. Mengeklik pilihan tidak

setuju data yang akan dihapus

9. Kembali ke form data permohonan beasiswa

9

Nama use case : Memasukkan data bobot

Tabel 6 Skenario Memasukkan Data Bobot

Aksi Aktor Reaksi AktorSkenario Normal1. Memasukkan data bobot

sesuai kolom yang ada2. Mengecek valid tidaknya data masukan3. Menyimpan data masukkan ke basis data

Skenario Alternatif1. Memasukkan data bobot

sesuai kolom yang ada2. Mengecek valid tidaknya data masukan

3. Memperbaiki data masukkan yang tidak valid

4. Mengecek valid tidaknya data masukan5. Menyimpan data masukkan ke basis data

Nama Use case : Mengubah data bobot

Tabel 7 Mengubah Data Bobot

Aksi Aktor Reaksi AktorSkenario Normal1. Memasukkan KD bobot

2. Mencari data permohonan beasiswa yang akan diubah

3. Menampilkan data permohonan beasiswa yang akan dicari

4. Memilih data bobot yang akan diubah

5. Menampilakan semua kolom data bobot yang akan diubah

6. Mengubah data permohonan beasiswa yang akan diubah

7. Mengecek valid tidaknya data masukan8. Menyimpan data bobot masukkan ke basis

dataSkenarioAlternatif1. Memasukkan KD bobot

2. Mencari data permohonan beasiswa yang akan

10

diubah3. Menampilkan data permohonan beasiswa

yang akan dicari4. Memilih data bobot yang

akan diubah5. Menampilakan semua kolom data bobot yang

akan diubah6. Mengubah data

permohonan beasiswa yang akan diubah

7. Mengecek valid tidaknya data masukan8. Memperbaiki data

masukkan yang diubah dan tidak valid

9. Mengecek valid tidaknya data masukan10. Menyimpan data bobot yang telah diubah ke

basis data

Name use case : Menghapus Data Bobot

Tabel 8 Menghapus Data Bobot

Aksi Aktor Reaksi AktorSkenario Normal1. Memasukkan KD bobot

2. Mencari data bobot yang akan dihapus3. Menampilkan data bobot yang akan dihapus

4. Memilih data bobot yang akan dihapus

5. Menampilkan pesan konfirmasi apakah data akan benar-benar dihapus

6. Mengeklik pilihan setuju data akan dihapus

7. Menghapus data bobot dari basis dataSkenario Alternatif1. Memasukkan KD bobot

2. Mencari data bobot yang akan dihapus3. Menampilkan data bobot yang akan dihapus

4. Memilih data bobot yang akan dihapus

5. Menampilkan pesan konfirmasi apakah data akan benar-benar dihapus

6. Mengubah data permohonan beasiswa

7. Mengecek valid tidaknya data masukkan

11

8. Mengeklik pilihan tidak setuju data yang akan dihapus

9. Kembali ke form data permohonan beasiswa

2.1.4 Diagram Use Case

Gambar 1 Use Case Diagram Penyeleksian Beasiswa

12

2.2 Class Diagram

Gambar 2 Class Diagram Penyeleksian Beasiswa

Tabel 9 Class Diagram

Nama Kelas KeteranganMerupakan kelas main yang juga merangkap sebagai kelas yang menangani tampilan

mengelolaDataPermohonanBeasiswa Merupakan kelas proses yang diambil dari pendefinisian use case Mengelola Data Permohonan Beasiswa yang di dalamnya harus juga menangani proses memasukkan data permohonan, mengubah data permohonan, dan menghapus data permohonan.

mengolahDataBobot Merupakan kelas proses yang diambil dari pendefinisian use case Mengolah Data Bobot yang didalamnya harus juga menangani proses memasukkan data bobot, mengubah data bobot dan

13

menghapus data bobot.penyeleksianBeasiswa Merupakan kelas proses yang diambil

dari pendefinisian use case Penyeleksian Beasiswa yang didalamnya menampilkan hasil seleksi penerima beasiswa berprestasi dan beasiswa tidak mampu dimana itu merupakan hasil relasi antara data permohonan beasiswa dan data bobot.

Permohonan Merupakan kelas data yang digunakan untuk membungkus hasil data dari table permohonan beasiswa.

Bobot Merupakan kelas data yang digunakan untuk membungkus hasil data dari table bobot

Seleksi Merupakan kelas data yang digunakan untuk membungkus hasi data dari table seleksi.

koneksiBasisData Merupakan kelas utilitas untuk koneksi ke basis data dan melakukannya query.

2.3 Object Diagram

14

Gambar 3 Objek Diagram

2.4 Sequen DiagramGambar 4 Menambahkan Data Permohonan Beasiswa

Gambar 5 Mengubah Data Permohonan Beasiswa

15

16

Gambar 6 Menghapus Data Permohonan Beasiswa

Gambar 7 Menambah Data Bobot

17

Gambar 8 Mengubah Data Bobot

Gambar 9 Menghapus Data Bobot

18

2.5 Diagram Kaloborasi

2.6 Diagram Aktivitas

19

3. Pengkodean (Implementasi)

3.1 Menu Utama

3.1.1 Form Menu UtamaGambar 10 Form Menu Utama

3.1.2 Komponen Form Menu UtamaTabel 10 Komponen Form Login

No Komponen Properties Nilai1 MDI Form Name : MDI Form1

Caption : Menu Utama Penyeleksian.

MDIForm1

3.1.3 Kode Program From Menu Utama

Private Sub mnlap_Click()

With cr

.ReportFileName = App.Path & "\lappemohon.rpt"

.RetrieveDataFiles

.WindowState = crptMaximized

.Action = 1

End With

End Sub

Private Sub mnseleksi_Click()

rangking.Show 1

20

End Sub

Private Sub mnuser_Click()

MsgBox "form belum tersedia", vbInformation, "Peringatan"

End Sub

Private Sub smajar_Click()

tahunajar.Show 1

End Sub

Private Sub smbeasiswa_Click()

beasiswa.Show 1

End Sub

Private Sub smbil_Click()

MsgBox "form belum tersedia", vbInformation, "Peringatan"

End Sub

Private Sub smbobot_Click()

bobot.Show 1

End Sub

Private Sub smkriteria_Click()

frmkriteria.Show 1

End Sub

Private Sub smpemohon_Click()

pemohon.Show 1

End Sub

Private Sub Timer1_Timer()

lb3.Caption = Time

lb4.Caption = Format(Date, "dd MMM yyyy")

End

3.1 Menu Data Permohonan Beasiswa

3.2.1 Form Menu Data Permohonan BeasiswaGambar 11 Form Menu Data Permohonan Beasiswa

21

3.2.2 Komponen Form Data Permohonan BeasiswaTabel 11 Komponen Form Data Permohonan Beasiswa

No Komponen Properties Nilai1 Form Name : frmpemohon

Caption : Data Pemohon

FormDataPemohon

2 CommandButton1 Name : CtambahCaption :tambah

Click

3 CommandButton2 Name : CubahCaption : ubah

Click

4 CommandButton3 Name : CsimpanCaption : simpan

Click

5 CommandButton4 Name : CbatalCaption : batal

Click

6 CommandButton5 Name : ChapusCaption : hapus

Click

7 CommandButton6 Name : CcariCaption : cari

Click

8 CommandButton7 Name : CcetakCaption : cetak

Click

9 CommandButton8 Name : CkeluarCaption : keluar

Click

22

3.2.3 Kode Program Form Menu Data Permohonan Beasiswa

Dim dbdbeasiswa As Database

Dim rspemohon As Recordset

Dim rsbeasiswa As Recordset

Dim rsnmbeasiswa As Recordset

Sub mati()

tthnajar.Enabled = False

tnama.Enabled = False

tnis.Enabled = False

tthnajar.Enabled = False

tnama.Enabled = False

ttmplahir.Enabled = False

tkelas.Enabled = False

talamat.Enabled = False

tnmortu.Enabled = False

tkerja.Enabled = False

tjpo.Enabled = False

tjto.Enabled = False

cksurat.Enabled = False

tnilraport.Enabled = False

cbo1.Enabled = False

cbo2.Enabled = False

tgl.Enabled = False

End Sub

Sub hidup()

tthnajar.Enabled = True

tnama.Enabled = True

tnis.Enabled = True

tthnajar.Enabled = True

tnama.Enabled = True

ttmplahir.Enabled = True

tkelas.Enabled = True

talamat.Enabled = True

tnmortu.Enabled = True

tkerja.Enabled = True

tjpo.Enabled = True

tjto.Enabled = True

cksurat.Enabled = True

tnilraport.Enabled = True

cbo1.Enabled = True

cbo2.Enabled = True

tgl.Enabled = True

End Sub

Sub kosong()

tthnajar.Text = ""

23

tnama.Text = ""

tnis.Text = ""

tthnajar.Text = ""

tnama.Text = ""

ttmplahir.Text = ""

tkelas.Text = ""

talamat.Text = ""

tnmortu.Text = ""

tkerja.Text = ""

tjpo.Text = ""

tjto.Text = ""

cksurat.Value = 0

tnilraport.Text = ""

cbo1.Text = "[PILIH]"

cbo2.Text = "[PILIH]"

tgl.Value = Now()

End Sub

Sub warna_tak_siap_isi() 'prosedur tambahan

tthnajar.BackColor = &H8000000C

tnama.BackColor = &H8000000C

tnis.BackColor = &H8000000C

tthnajar.BackColor = &H8000000C

tnama.BackColor = &H8000000C

ttmplahir.BackColor = &H8000000C

tkelas.BackColor = &H8000000C

talamat.BackColor = &H8000000C

tnmortu.BackColor = &H8000000C

tkerja.BackColor = &H8000000C

tjpo.BackColor = &H8000000C

tjto.BackColor = &H8000000C

tnilraport.BackColor = &H8000000C

End Sub

Sub warna_siap_isi() 'prosedur tambahan

tthnajar.BackColor = &H80000005

tnama.BackColor = &H80000005

tnis.BackColor = &H80000005

tthnajar.BackColor = &H80000005

tnama.BackColor = &H80000005

ttmplahir.BackColor = &H80000005

tkelas.BackColor = &H80000005

talamat.BackColor = &H80000005

24

tnmortu.BackColor = &H80000005

tkerja.BackColor = &H80000005

tjpo.BackColor = &H80000005

tjto.BackColor = &H80000005

tnilraport.BackColor = &H80000005

End Sub

Sub isicbo1()

rsbeasiswa.MoveFirst

cbo1.Clear

cbo1.Text = "[PILIH]"

Do Until rsbeasiswa.EOF

cbo1.AddItem rsbeasiswa!nmbeasiswa

rsbeasiswa.MoveNext

Loop

End Sub

Private Sub cbatal_Click()

Call mati

Call kosong

Call warna_tak_siap_isi

ctambah.Enabled = True

csimpan.Enabled = False

ccari.Enabled = True

ctambah.SetFocus

End Sub

Private Sub cbo1_Click()

rsnmbeasiswa.Index = "nmindex"

rsnmbeasiswa.Seek "=", cbo1

If rsnmbeasiswa.NoMatch Then

Exit Sub

Else

tthnajar.Text = rsnmbeasiswa!thnajar

End If

End Sub

Private Sub cbo1_KeyPress(KeyAscii As Integer)

If KeyAscii = 13 Then tthnajar.SetFocus

rsnmbeasiswa.Index = "nmindex"

rsnmbeasiswa.Seek "=", cbo1

If rsnmbeasiswa.NoMatch Then

Exit Sub

Else

25

tthnajar.Text = rsnmbeasiswa!thnajar

End If

End Sub

Private Sub cbo2_KeyPress(KeyAscii As Integer)

If KeyAscii = 13 Then tkelas.SetFocus

End Sub

Private Sub CCARI_Click()

frcari.Left = 120

frcari.Top = 840

frcari.Visible = True

End Sub

Private Sub ccetak_Click()

With Cr

.ReportFileName = App.Path & "\lappemohon.rpt"

.RetrieveDataFiles

.WindowState = crptMaximized

.Action = 1

End With

End Sub

Private Sub cedit_Click()

tnis.Enabled = False

tnis.BackColor = &H8000000C

Call hidup

Call warna_siap_isi

tthnajar.SetFocus

cedit.Enabled = False

csimpan.Enabled = True

ctambah.Enabled = False

chapus.Enabled = False

ccari.Enabled = False

End Sub

Private Sub chapus_Click()

'proses hapus data dan pesan

rspemohon.Index = "nisindex"

rspemohon.Seek "=", tnis

If rspemohon.NoMatch Then

MsgBox "kode ini tidak ada", vbInformation, "Peringatan"

Else

rspemohon.Delete

MsgBox "Data berhasil di Hapus", vbInformation, "Selamat"

End If

26

'validasi yang mengikuti setelah proses hapus berhasil

Call mati

Call kosong

Call warna_tak_siap_isi

cedit.Enabled = False

csimpan.Enabled = False

chapus.Enabled = False

ctambah.Enabled = True

ctambah.SetFocus

End Sub

Private Sub cselesai_Click()

dbdbeasiswa.Close

Unload Me

End Sub

Private Sub cKeluar_Click()

Unload Me

End Sub

Private Sub ctambah_Click()

Call hidup

Call kosong

Call warna_siap_isi

tnis.SetFocus

cbatal.Enabled = True

ctambah.Enabled = False

End Sub

Private Sub Ctutup_Click()

frcari.Visible = False

End Sub

Private Sub DBGrid1_DblClick()

tnis = DBGrid1.Columns(0)

cbo1 = DBGrid1.Columns(1)

tthnajar = DBGrid1.Columns(2)

tnama = DBGrid1.Columns(3)

ttmplahir = DBGrid1.Columns(4)

tgl = DBGrid1.Columns(5)

cbo2 = DBGrid1.Columns(6)

tkelas = DBGrid1.Columns(7)

talamat = DBGrid1.Columns(8)

tnmortu = DBGrid1.Columns(9)

tkerja = DBGrid1.Columns(10)

tjpo = DBGrid1.Columns(11)

tjto = DBGrid1.Columns(12)

If DBGrid1.Columns(14) = "Ada" Then

27

cksurat.Value = 1

End If

tnilraport = DBGrid1.Columns(13)

Call mati

cedit.Enabled = True

csimpan.Enabled = False

frcari.Visible = False

chapus.Enabled = True

ctambah.Enabled = False

End Sub

Private Sub Form_Activate()

ctambah.SetFocus

End Sub

Sub semula()

Data1.DatabaseName = App.Path & "\dbeasiswa.mdb"

Data1.RecordsetType = 0

Data1.RecordSource = "tbpemohon"

Data1.Refresh

DBGrid1.Refresh

End Sub

Private Sub Form_Load()

Set dbdbeasiswa = OpenDatabase(App.Path & "\dbeasiswa.mdb")

Set rspemohon = dbdbeasiswa.OpenRecordset("tbpemohon")

Set rsbeasiswa = dbdbeasiswa.OpenRecordset("tbbeasiswa")

Set rsnmbeasiswa = dbdbeasiswa.OpenRecordset("tbbeasiswa")

tnis.MaxLength = 8

tthnajar.MaxLength = 50

tnama.MaxLength = 50

ttmplahir.MaxLength = 50

tkelas.MaxLength = 50

talamat.MaxLength = 50

tnmortu.MaxLength = 50

tkerja.MaxLength = 50

tjpo.MaxLength = 50

tjto.MaxLength = 50

tnilraport.MaxLength = 50

Call mati

28

Call kosong

Call semula

Call warna_tak_siap_isi

Call isicbo1

csimpan.Enabled = False

cedit.Enabled = False

chapus.Enabled = False

ctambah.Enabled = True

frcari.Visible = False

End Sub

Private Sub csimpan_Click()

If Len(tnis.Text) < 8 Then

csimpan.Enabled = False

cedit.Enabled = False

chapus.Enabled = False

tnis.SetFocus

MsgBox "Nim tidak boleh kurang dari 8 digit", vbInformation, "Peringatan"

Exit Sub

End If

If tnis = "" Or cbo1 = "[PILIH]" Or tthnajar = "" _

Or tnama = "" Or ttmplahir = "" Or cbo2 = "[PILIH]" Or tkelas = "" _

Or talamat = "" Or tnmortu = "" Or tkerja = "" Or tjpo = "" Or tjto = "" _

Or tnilraport = "" Then

MsgBox "Silahkan Isi data dengan lengkap", vbInformation, "Peringatan"

Exit Sub

End If

rspemohon.Index = "nisindex"

rspemohon.Seek "=", tnis.Text

If rspemohon.NoMatch Then

rspemohon.AddNew

rspemohon!nis = tnis

rspemohon!thnajar = tthnajar

rspemohon!nama = tnama

rspemohon!jnskel = cbo2

rspemohon!tmplahir = ttmplahir

rspemohon!kelas = tkelas

rspemohon!alamat = talamat

rspemohon!nmortu = tnmortu

rspemohon!pjortu = tkerja

rspemohon!jpo = tjpo

rspemohon!jto = tjto

29

If cksurat.Value = 1 Then

rspemohon!surat = "Ada"

Else

rspemohon!surat = "Tidak Ada"

End If

rspemohon!nilraport = tnilraport

rspemohon!nmbeasiswa = cbo1

rspemohon!jnskel = cbo2

rspemohon!tgllahir = tgl.Value

rspemohon.update

MsgBox "Data berhasil di Simpan", vbInformation, "Selamat"

Else

rspemohon.Edit

rspemohon!nis = tnis

rspemohon!thnajar = tthnajar

rspemohon!nama = tnama

rspemohon!jnskel = cbo2

rspemohon!tmplahir = ttmplahir

rspemohon!kelas = tkelas

rspemohon!alamat = talamat

rspemohon!nmortu = tnmortu

rspemohon!pjortu = tkerja

rspemohon!jpo = tjpo

rspemohon!jto = tjto

If cksurat.Value = 1 Then

rspemohon!surat = "Ada"

Else

rspemohon!surat = "Tidak Ada"

End If

rspemohon!nilraport = tnilraport

rspemohon!nmbeasiswa = cbo1

rspemohon!tgllahir = tgl.Value

rspemohon.update

MsgBox "Data berhasil di Update", vbInformation, "Selamat"

End If

csimpan.Enabled = False

Call mati

Call kosong

Call warna_tak_siap_isi

ctambah.Enabled = True

ctambah.SetFocus

ccari.Enabled = True

Call semula

End Sub

30

Private Sub tgl_KeyDown(KeyCode As Integer, Shift As Integer)

If KeyCode = 13 Then cbo2.SetFocus

End Sub

Private Sub tnis_Change()

If Len(tnis.Text) < 8 Then

csimpan.Enabled = False

cedit.Enabled = False

chapus.Enabled = False

Else

csimpan.Enabled = True

End If

End Sub

Private Sub tnis_LostFocus()

If Len(tnis.Text) < 8 Then

csimpan.Enabled = False

cedit.Enabled = False

chapus.Enabled = False

End If

Set dbdbeasiswa = OpenDatabase(App.Path & "\dbeasiswa.mdb")

Set rspemohon = dbdbeasiswa.OpenRecordset("tbpemohon")

rspemohon.Index = "nisindex"

rspemohon.Seek "=", tnis.Text

If rspemohon.NoMatch Then

csimpan.Enabled = True

cedit.Enabled = False

chapus.Enabled = False

Exit Sub

End If

tnis = rspemohon!nis

tthnajar = rspemohon!thnajar

tnama = rspemohon!nama

tmplahir = rspemohon!tmplahir

tkelas = rspemohon!kelas

talamat = rspemohon!alamat

tnmortu = rspemohon!nmortu

tkerja = rspemohon!pjortu

tjpo = rspemohon!jpo

tjto = rspemohon!jto

If rspemohon!surat = "Ada" Then

cksurat.Value = 1

31

Else

cksurat.Value = 0

End If

tnilraport = rspemohon!nilraport

cbo1.Text = rspemohon!nmbeasiswa

cbo2.Text = rspemohon!jsnkel

tgl.Value = rspemohon!tgllahir

csimpan.Enabled = False

cedit.Enabled = True

chapus.Enabled = True

End Sub

Private Sub tnis_KeyPress(KeyAscii As Integer)

If Not (KeyAscii >= Asc("0") And KeyAscii <= Asc("9") Or KeyAscii = vbKeyBack) Then

Beep

End If

If tthnajar.Enabled = False Then Exit Sub

If KeyAscii = 13 Then cbo1.SetFocus

End Sub

Private Sub tjto_KeyPress(KeyAscii As Integer)

If Not (KeyAscii >= Asc("0") And KeyAscii <= Asc("9") Or KeyAscii = vbKeyBack Or KeyAscii = vbKeyReturn) Then

KeyAscii = 0

End If

If KeyAscii = 13 Then tnilraport.SetFocus

End Sub

Private Sub tnilraport_KeyPress(KeyAscii As Integer)

If Not (KeyAscii >= Asc("0") And KeyAscii <= Asc("9") Or KeyAscii = Asc(".") Or KeyAscii = vbKeyBack Or KeyAscii = vbKeyReturn) Then

KeyAscii = 0

End If

If KeyAscii = 13 Then

If Val(tnilraport.Text) >= 60 Then

csimpan.SetFocus

Else

MsgBox "Maaf hanya nilai yang lebih dari 60 yang dapat diproses"

32

Call kosong

Call mati

Call semula

ctambah.Enabled = True

ctambah.SetFocus

End If

End If

End Sub

Private Sub tthnajar_KeyPress(KeyAscii As Integer)

If KeyAscii = 13 Then tnama.SetFocus

End Sub

Private Sub tnama_KeyPress(KeyAscii As Integer)

If KeyAscii = 13 Then ttmplahir.SetFocus

End Sub

Private Sub tmplahir_KeyPress(KeyAscii As Integer)

If KeyAscii = 13 Then tkelas.SetFocus

End Sub

Private Sub tkelas_KeyPress(KeyAscii As Integer)

If KeyAscii = 13 Then talamat.SetFocus

End Sub

Private Sub talamat_KeyPress(KeyAscii As Integer)

If KeyAscii = 13 Then tnmortu.SetFocus

End Sub

Private Sub tnmortu_KeyPress(KeyAscii As Integer)

If KeyAscii = 13 Then tkerja.SetFocus

End Sub

Private Sub tkerja_KeyPress(KeyAscii As Integer)

If KeyAscii = 13 Then tjpo.SetFocus

End Sub

33

Private Sub tjpo_KeyPress(KeyAscii As Integer)

If Not (KeyAscii >= Asc("0") And KeyAscii <= Asc("9") Or KeyAscii = vbKeyBack Or KeyAscii = vbKeyReturn) Then

KeyAscii = 0

End If

If KeyAscii = 13 Then tjto.SetFocus

End Sub

Private Sub ttmplahir_KeyPress(KeyAscii As Integer)

If KeyAscii = 13 Then tgl.SetFocus

End Sub

34

3.2 Menu Data Bobot

3.2.1 Menu Data BobotGambar 12 Menu Data Bobot

3.2.2 Komponen Form Data BobotTabel 12 Komponen Form Data Bobot

NoKomponen Properties Nilai

1 CommandButton1 Name : CbatalCaption : batal

Click

2 CommandButton2 Name : CsimpanCaption : simpan

Click

3 CommandButton3 Name : ChapusCaption : hapus

Click

4 CommandButton4 Name : CcariCaption : cari

Click

5 CommandButton5 Name : CkeluarCaption : keluar

Click

3.2.3 Kode Program Data Bobot

Dim dbdbeasiswa As Database

Dim rsbobot As Recordset

Dim rsbeasiswa As Recordset

Sub simpan()

rsbeasiswa.Index = "nmindex"

rsbeasiswa.Seek "=", cbbeasiswa

35

With rsbobot

.AddNew

!kdbeasiswa = rsbeasiswa!kdbeasiswa

!kdthnajar = rsbeasiswa!thnajar

'!usia = cbusia

!jpo = cbjpo

!jto = cbjto

'!jsdr = cbjsdr

!nilraport = cbnilraport

.update

End With

End Sub

Sub update()

rsbeasiswa.Index = "nmindex"

rsbeasiswa.Seek "=", cbbeasiswa

With rsbobot

.Edit

'!usia = cbusia

!jpo = cbjpo

!jto = cbjto

'!jsdr = cbjsdr

!nilraport = cbnilraport

.update

End With

End Sub

Sub isibeasiswa()

rsbeasiswa.MoveFirst

cbbeasiswa.Clear

Do Until rsbeasiswa.EOF

cbbeasiswa.AddItem rsbeasiswa!nmbeasiswa

rsbeasiswa.MoveNext

Loop

End Sub

Sub semula()

'koneksi data1

Data1.DatabaseName = App.Path & "\dbeasiswa.mdb"

Data1.RecordsetType = 0

Data1.RecordSource = "tbbobot"

Data1.Refresh

DBGrid1.Refresh

End Sub

Sub tampil()

rsbeasiswa.Index = "kdindex"

rsbeasiswa.Seek "=", DBGrid1.Columns(0)

36

cbbeasiswa = rsbeasiswa!nmbeasiswa

cbjpo = DBGrid1.Columns(2)

cbjto = DBGrid1.Columns(3)

cbnilraport = DBGrid1.Columns(4)

End Sub

Sub isicbo()

cbjpo.Clear

cbjpo.AddItem "0"

cbjpo.AddItem "0.2"

cbjpo.AddItem "0.4"

cbjpo.AddItem "0.6"

cbjpo.AddItem "0.8"

cbjpo.AddItem "1"

cbjto.Clear

cbjto.AddItem "0"

cbjto.AddItem "0.2"

cbjto.AddItem "0.4"

cbjto.AddItem "0.6"

cbjto.AddItem "0.8"

cbjto.AddItem "1"

cbnilraport.Clear

cbnilraport.AddItem "0"

cbnilraport.AddItem "0.2"

cbnilraport.AddItem "0.4"

cbnilraport.AddItem "0.6"

cbnilraport.AddItem "0.8"

cbnilraport.AddItem "1"

End Sub

Private Sub CCARI_Click()

If rsbobot.RecordCount = 0 Then

MsgBox "data masih kosong", vbInformation, "Peringatan"

Exit Sub

End If

frcari.Left = 220

frcari.Top = 950

frcari.Visible = True

DBGrid1.Refresh

DBGrid1.SetFocus

End Sub

Private Sub chapus_Click()

rsbeasiswa.Index = "nmindex"

37

rsbeasiswa.Seek "=", cbbeasiswa.Text

rsbobot.Index = "kdindex"

rsbobot.Seek "=", rsbeasiswa!kdbeasiswa

If rsbobot.NoMatch Then

MsgBox "kode ini tidak ada", vbInformation, "Peringatan"

Else

rsbobot.Delete

MsgBox "Data berhasil di Hapus", vbInformation, "Selamat"

End If

Call kosong

Call mati

csimpan.Enabled = True

chapus.Enabled = False

csimpan.Enabled = False

ctambah.Caption = "TAMBAH"

Call semula

End Sub

Private Sub cKeluar_Click()

Unload Me

End Sub

Private Sub csimpan_Click()

If cbbeasiswa = "[PILIH]" Or _

cbjto = "[PILIH]" Or cbjpo = "[PILIH]" Or cbnilraport = "[PILIH]" Then

MsgBox "isi data dengan lengkap", vbInformation, "Peringatan"

Exit Sub

End If

rsbeasiswa.Index = "nmindex"

rsbeasiswa.Seek "=", cbbeasiswa.Text

rsbobot.Index = "kdindex"

rsbobot.Seek "=", rsbeasiswa!kdbeasiswa

If Not rsbobot.NoMatch Then

Call update

MsgBox "Data Berhasil di Perbarui", vbInformation, "Selamat"

Call kosong

Else

Call simpan

Call kosong

MsgBox "Data Tersimpan", vbInformation, "Selamat"

End If

Call semula

Call mati

Call kosong

ctambah.Caption = "TAMBAH"

38

ctambah.SetFocus

csimpan.Enabled = False

chapus.Enabled = False

End Sub

Private Sub ctambah_Click()

If ctambah.Caption = "TAMBAH" Then

ctambah.Caption = "BATAL"

Call isicbo

Call hidup

Call kosong

chapus.Enabled = False

csimpan.Enabled = True

Else

ctambah.Caption = "TAMBAH"

Call mati

Call kosong

csimpan.Enabled = False

chapus.Enabled = False

End If

End Sub

Private Sub DBGrid1_DblClick()

Call tampil

frcari.Visible = False

chapus.Enabled = True

csimpan.Enabled = True

Call hidup

ctambah.Caption = "BATAL"

cbbeasiswa.Enabled = False

End Sub

Private Sub DBGrid1_KeyPress(KeyAscii As Integer)

If KeyAscii = vbKeyEscape Then frcari.Visible = False

End Sub

Private Sub Form_Load()

'koneksi dengan dabatabase

Set dbdbeasiswa = OpenDatabase(App.Path & "\dbeasiswa.mdb")

Set rsbobot = dbdbeasiswa.OpenRecordset("tbbobot")

Set rsbeasiswa = dbdbeasiswa.OpenRecordset("tbbeasiswa")

Call semula

Call isibeasiswa

Call isicbo

Call mati

39

Call kosong

csimpan.Enabled = False

chapus.Enabled = False

frcari.Visible = False

End Sub

Sub mati()

cbbeasiswa.Enabled = False

cbjpo.Enabled = False

cbjto.Enabled = False

cbnilraport.Enabled = False

End Sub

Sub hidup()

cbbeasiswa.Enabled = True

cbjpo.Enabled = True

cbjto.Enabled = True

cbnilraport.Enabled = True

End Sub

Sub kosong()

cbbeasiswa.Text = "[PILIH]"

cbjpo.Text = "[PILIH]"

cbjto.Text = "[PILIH]"

cbnilraport.Text = "[PILIH]"

End Sub

3.3 Menu Penyeleksian Beasiswa

3.3.1 Form Menu Penyeleksia BeasiswaGambar 13 Form Menu Penyeleksian Beasiswa

40

3.4.2 Komponen Form PenyeleksianTabel 13 Komponen Form Penyeleksian

No Komponen Properties Nilai1 CommandButton1 Name : Command1

Caption : tampilkan data permohonan

Click

2 CommandButton2 Name : Command2Caption : Proses Perengkingan

Click

3 CommandButton3 Name : CcetakCaption : cetak

Click

3.4.3 Kode Program PenyeleksianDim dbdbeasiswa As Database

Dim rsbeasiswa As Recordset

Dim rsrangking As Recordset

Dim rspemohon As Recordset

Dim rsbobot As Recordset

Dim rskriteria As Recordset

Function niljpo(X)

'nilai terkecil yang terbaik

'mendefinisikan nilai terkecil yang tersimpan dalam tabel kriteria

Set rskriteria = dbdbeasiswa.OpenRecordset("select top 1 * from tbkriteria where nmkriteria='penghasilan' and kdbeasiswa= '" & tkode & "' order by nilai asc")

nilterkecil = rskriteria!nilai

41

Set rskriteria = dbdbeasiswa.OpenRecordset("select * from tbkriteria where nmkriteria='penghasilan' and kdbeasiswa= '" & tkode & "' order by kondisi asc")

rskriteria.MoveFirst

Do Until rskriteria.EOF

If Val(X) <= Val(rskriteria!kondisi) Then

niljpo = 0.25 / Val(rskriteria!nilai) 'Val(nilterkecil) / Val(rskriteria!nilai)

Exit Do

Else

niljpo = 0.25 / Val(rskriteria!nilai)

End If

rskriteria.MoveNext

Loop

End Function

Function niljto(X)

Set rskriteria = dbdbeasiswa.OpenRecordset("select top 1 * from tbkriteria where nmkriteria='tanggungan' and kdbeasiswa= '" & tkode & "' order by nilai desc")

nilterbesar = rskriteria!nilai

Set rskriteria = dbdbeasiswa.OpenRecordset("select * from tbkriteria where nmkriteria='tanggungan' and kdbeasiswa= '" & tkode & "' order by kondisi asc")

rskriteria.MoveFirst

Do Until rskriteria.EOF

If Val(X) <= Val(rskriteria!kondisi) Then

niljto = Val(rskriteria!nilai) / 1 'Val(nilterbesar)

Exit Do

Else

niljto = Val(rskriteria!nilai) / 1 'Val(nilterbesar)

End If

rskriteria.MoveNext

Loop

End Function

Function nilnilraport(X)

Set rskriteria = dbdbeasiswa.OpenRecordset("select top 1 * from tbkriteria where nmkriteria='raport' and kdbeasiswa= '" & tkode & "' order by nilai desc")

42

nilterbesar = rskriteria!nilai

Set rskriteria = dbdbeasiswa.OpenRecordset("select * from tbkriteria where nmkriteria='raport' and kdbeasiswa= '" & tkode & "' order by kondisi asc")

rskriteria.MoveFirst

Do Until rskriteria.EOF

If Val(X) <= Val(rskriteria!kondisi) Then

nilnilraport = Val(rskriteria!nilai) / 1 'Val(nilterbesar)

Exit Do

Else

nilnilraport = Val(rskriteria!nilai) / 1 'Val(nilterbesar)

End If

rskriteria.MoveNext

Loop

End Function

Sub isicbo()

rsbeasiswa.MoveFirst

cbo.Clear

Do Until rsbeasiswa.EOF

cbo.AddItem rsbeasiswa!nmbeasiswa

rsbeasiswa.MoveNext

Loop

'cbo.Text = "[PILIH]"

End Sub

Sub semula()

'koneksi data1

Data1.DatabaseName = App.Path & "\dbeasiswa.mdb"

Data1.RecordsetType = 1

Data1.RecordSource = "select * from tbpemohon"

Data1.Refresh

DBGrid1.Refresh

End Sub

Private Sub cbo_Click()

rsbeasiswa.Index = "nmindex"

rsbeasiswa.Seek "=", cbo

If rsbeasiswa.NoMatch Then

Exit Sub

Else

tkode = rsbeasiswa!kdbeasiswa

End If

43

End Sub

Private Sub ccetak_Click()

With cr

'.SelectionFormula = "{select top 2 * from tbpemohon}"

.ReportFileName = App.Path & "\laphasil.rpt"

.RetrieveDataFiles

.WindowState = crptMaximized

.Action = 1

End With

ccetak.Enabled = False

End Sub

Private Sub Command1_Click()

'validasi jika jenis beasiswa masih kosong

If cbo = "" Or cbo = "[PILIH]" Then

MsgBox "Pilih Jenis Beasiswa", vbInformation, "Peringatan"

Exit Sub

End If

Data1.DatabaseName = App.Path & "\dbeasiswa.mdb"

Data1.RecordsetType = 1

Data1.RecordSource = "select tbpemohon.nis, tbpemohon.nama,tbpemohon.tgllahir,tbpemohon.jpo, tbpemohon.jto, tbpemohon.nilraport,tbpemohon.surat from tbpemohon where tbpemohon.nmbeasiswa= '" & cbo & "'"

Data1.Refresh

lbjmlpemohon.Caption = Data1.Recordset.RecordCount

DBGrid1.Refresh

MsgBox "Ditemukan sekitar " & lbjmlpemohon.Caption & " siswa yang mengajukan jenis beasiswa : " & cbo.Text & "", vbInformation, "Pesan Program"

Command2.Enabled = True

ccetak.Enabled = False

tjml = ""

End Sub

Private Sub Command2_Click()

'validasi jika jenis beasiswa masih kosong

If cbo = "" Or cbo = "[PILIH]" Then

44

MsgBox "Pilih Jenis Beasiswa", vbInformation, "Peringatan"

Exit Sub

End If

'validasi jika jumlah masih kosong

If tjml = "" Then

MsgBox "Isi Jumlah siswa yang memperoleh beasiswa ", vbInformation, "Peringatan"

Exit Sub

End If

dbdbeasiswa.Execute ("delete * from tmprangking")

Set rspemohon = dbdbeasiswa.OpenRecordset("select top " & tjml & " * from tbpemohon where nmbeasiswa='" & cbo.Text & "'")

Set rsbobot = dbdbeasiswa.OpenRecordset("select * from tbbobot,tbbeasiswa where tbbobot.kdbeasiswa=tbbeasiswa.kdbeasiswa and tbbeasiswa.nmbeasiswa = '" & cbo & "'")

'validasi jika bobot belum ada

If rsbobot.RecordCount = 0 Then

MsgBox "Bobot untuk kriteria jenis beasiswa ini belum ditentukan", vbInformation, "Peringatan"

Exit Sub

End If

rspemohon.MoveFirst

Do Until rspemohon.EOF

With rsrangking

.AddNew

!nis = rspemohon!nis

!nama = rspemohon!nama

!surat = rspemohon!surat

!niljpo = Val(rsbobot!jpo) * Val(niljpo(rspemohon!jpo))

!niljto = Val(niljto(rspemohon!jto)) * Val(rsbobot!jto)

!nilrat = Val(rsbobot!nilraport) * Val(nilnilraport(rspemohon!nilraport))

!nilakhir = Val(!niljpo) + Val(!niljto) + Val(!nilrat)

.update

End With

45

rspemohon.MoveNext

Loop

Data1.RecordSource = "select top " & tjml & " * from tmprangking ORDER BY surat asc, nilakhir DESC"

Data1.Refresh

DBGrid1.Refresh

MsgBox "Berikut Orang yang Berhak menerima beasiswa sesuai kriteria yang telah ditetapkan.", vbInformation, "Pesan Program"

ccetak.Enabled = True

Command2.Enabled = False

End Sub

Private Sub Form_Load()

'koneksi dengan dabatabase

Set dbdbeasiswa = OpenDatabase(App.Path & "\dbeasiswa.mdb")

Set rsbeasiswa = dbdbeasiswa.OpenRecordset("tbbeasiswa")

Set rsrangking = dbdbeasiswa.OpenRecordset("tmprangking")

Set rspemohon = dbdbeasiswa.OpenRecordset("tbpemohon")

Call semula

Call isicbo

tjml = ""

cbo = "[PILIH]"

lbjmldaftar.Caption = rspemohon.RecordCount

lbjmlpemohon.Caption = "0"

End Sub

Private Sub tjml_KeyPress(KeyAscii As Integer)

If Not (KeyAscii >= Asc("0") And KeyAscii <= Asc("9") Or KeyAscii = vbKeyBack Or KeyAscii = vbKeyReturn) Then

KeyAscii = 0

End If

End Sub

46

47

3.5 Menu Laporan Data Permohonan BeasiswaGambar 14 Laporan Data Permohonan Beasiswa

Gambar 3.5.1 Form Laporan Data Permohonan Beasiswa

3.5.2 Komponen Form Laporan Data Permohonan BeasiswaTabel 14 Laporan Data Permohonan Beasiswa

No Komponen Properties Nilai1 CRViewer1 Nama :

LapPermohonanFormLapPermohona

3.5.3 Kode Program Laporan Data Permohonan Beasiswa

Private Sub ccetak_Click()With cr .ReportFileName = App.Path & "\lappemohon.rpt" .RetrieveDataFiles .WindowState =

crptMaximized .Action = 1 End With

End Sub

48

3.6 Menu Laporan Hasil Seleksi BeasiswaGambar 15 Form Laporan Hasil Penyeleksian Beasiswa

Gambar 3.6.1 Form Laporan Hasil Beasiswa

3.6.2 Komponen Form Laporan Hasil Penyeleksian BeasiswaTabel 15 Laporan Hasil Penyeleksian Beasiswa

No Komponen Properties Nilai1 CRViewer1 Nama : LapHasil FormLapHasil

3.6.3 Kode Program Laporan Hasil Beasiswa

Private Sub ccetak_Click()

With cr

.ReportFileName = App.Path & "\laphasil.rpt"

.RetrieveDataFiles

.WindowState = crptMaximized

.Action = 1

End With

ccetak.Enabled = False

End Sub

49

4. ReferensiPerangkat Lunak Sistem Penyeleksian Beasiswa SMA NEGRI 3 SURAKARTA ini saya

peroleh dari searching website yang alamtnya yaitu :

http://dir.unikom.ac.id/s1-final-project/fakultas-teknik-dan-ilmu-komputer/teknik-

informatika/2010/jbptunikompp-gdl-herisulist-21892/17-20.jurn-a.pdf/ori/17-20.jurn-

a.pdf.

5. Kesimpulan- Sistem yang dibangun dapat membantu admin dalam penyeleksian beasiswa.

- Sistem yang dapat mempercepat proses penyeleseksian.

- Sistem yang dibangun dapat mengurangi kesalahan dalam penentuan penerima

beasiswa.

- Sistem yang dibangun mempermudah admin dalam nebetukkan penerima beasiswa.

50