• Tidak ada hasil yang ditemukan

BAB IV. IMPLEMENTASI SISTEM

4.4. Implementasi Proses

4.4.3 Proses Lihat Jadwal Kuliah

Mengecek kapasitas kelas.

Penggalan program di bawah ini digunakan untuk mengecek kapasitas kelas. Pengecekan ini dilakukan dengan mengkueri jumlah mahasiswa yang telah mengambil matakuliah tersebut. Apabila kapasitas kelas sudah penuh maka muncul pesan kesalahan.

ADOQuery1.SQL.Add(

'select count(nim),krs.kd_makul,jadwal.kelas,jadwal.kapasitas'+ ' from jadwal,krs where jadwal.kelas='+QuotedStr(cbKelas.Text)+ ' and krs.kd_makul='+QuotedStr(edMtk.Text)+

' and jadwal.kd_makul=krs.kd_makul group by krs.kd_makul'); ADOQuery1.Active:=True;

if ADOQuery1.FieldValues['count(nim)']<= 0 then exit;

if ADOQuery1.FieldValues['count(nim)'] >= ADOQuery1.FieldValues['kapasitas'] then begin

ShowMessage('Kelas Yang Anda Pilih Telah Penuh...!') end

else exit;

4.4.3 Proses Lihat Jadwal Kuliah

Penggalan program untuk lihat jadwal kuliah bagi pihak mahasiswa adalah sebagai berikut :

Melihat jadwal kuliah seluruhnya

Kueri berikut digunakan untuk mengambil jadwal matakuliah seluruh jadwal kuliah. Hasil kueri akan ditampilkan pada grid yang ada pada form jadwal kuliah.

'select makul.matakuliah as "MATAKULIAH",dosen.nama_dosen as "PENGAJAR",jadwal.hari as HARI,'+ 'jadwal.kelas as KELAS,jadwal.ruang as RUANGAN,jadwal.jam_mulai as '+

'MULAI,jadwal.jam_akhir as BERAKHIR from makul,jadwal,dosen'+ ' where jadwal.nia=dosen.nia and jadwal.kd_makul=makul.kd_makul'; ADODataSet1.Active:=True;

DataSource2.DataSet:=ADODataSet1; DBAdvStringGrid2.DataSource:=DataSource2; DBAdvStringGrid2.Visible:=True;

Melihat jadwal kuliah pribadi

Kueri berikut digunakan untuk mengambil jadwal matakuliah pribadi mahasiswa. Hasil kueri akan ditampilkan pada grid yang ada pada form jadwal kuliah.

ADODataSet2.CommandText:=

'select makul.matakuliah as MATAKULIAH,dosen.nama_dosen as PENGAJAR,jadwal.hari as HARI,'+ 'jadwal.kelas as KELAS,jadwal.ruang as RUANGAN,jadwal.jam_mulai as JAM_MULAI,jam_akhir as JAM_BERAKHIR'+

' from setting,dosen,mhs,krs,makul cross join jadwal where'+

' jadwal.kd_makul=krs.kd_makul and krs.nim=mhs.nim and jadwal.kd_makul=makul.kd_makul '+ 'and jadwal.nia=dosen.nia and krs.thn_ajaran=setting.thn_ajaran and '+

'krs.semester=setting.semester and krs.nim='+QuotedStr(frmLoginKRS.edNim.Text); ADODataSet2.Active:=True;

DataSource1.DataSet:=ADODataSet2; DBAdvStringGrid1.DataSource:=DataSource1; DBAdvStringGrid1.Visible:=True;

DBAdvStringGrid2.Visible:=False;

4.4.4 Proses Cetak Jadwal Kuliah

Penggalan program yang berisi kueri untuk mencetak jadwal kuliah bagi pihak mahasiswa adalah sebagai berikut :

ctkJadwalPribadi.ADODataSet54.CommandText:=

'select krs.thn_ajaran,krs.semester,dosen.nama_dosen,jadwal.kd_makul,jadwal.kelas,'+ 'jadwal.hari,jadwal.jam_mulai,jam_akhir,makul.matakuliah,krs.nim,mhs.nama '+ 'from setting,dosen,mhs,krs,makul cross join jadwal where'+

' jadwal.kd_makul=krs.kd_makul and krs.nim=mhs.nim and '+ 'jadwal.kd_makul=makul.kd_makul and jadwal.nia=dosen.nia and'+ ' krs.thn_ajaran=setting.thn_ajaran and krs.semester=setting.semester'+ ' and krs.nim='+QuotedStr(frmLoginKRS.edNim.Text);

ctkJadwalPribadi.ADODataSet54.Active:=True; ctkJadwalPribadi.QuickRep1.Preview;

4.4.5 Proses Lihat Nilai

Penggalan program untuk lihat nilai bagi pihak mahasiswa adalah sebagai berikut :

Melihat nilai semester dan tahun ajaran saat ini

Kueri berikut digunakan untuk mengambil nilai mahasiswa yang ada pada semester saat ini. Hasil kueri akan ditampilkan pada grid yang ada pada form nilai.

ADODataSet1.CommandText:=

'select nilai.kd_makul as "KODE MATAKULIAH",makul.matakuliah as MATAKULIAH,'+

' makul.prasyarat as "PRASYARAT",nilai.nilai_final as "NILAI FINAL",nilai.nilai as "NILAI HURUF"'+ ' from setting,nilai,makul where '+

' nilai.kd_makul=makul.kd_makul'+

' and nilai.semester=setting.semester and nilai.thn_ajaran=setting.thn_ajaran'+ ' and nilai.nim='+QuotedStr(frmLoginKRS.edNim.Text);

ADODataSet1.Active:=True; DataSource1.DataSet:=ADODataSet1; DBAdvStringGrid1.DataSource:=DataSource1;

Melihat nilai seluruh semester

Kueri berikut digunakan untuk mengambil nilai mahasiswa yang ada pada seluruh semester. Hasil kueri akan ditampilkan pada grid yang ada pada form nilai.

ADODataSet1.CommandText:=

'select nilai.kd_makul as "KODE MATAKULIAH",makul.matakuliah as "MATAKULIAH",makul.prasyarat as "PRASYARAT",nilai as "NILAI" from makul,nilai where makul.kd_makul=nilai.kd_makul and

nim='+QuotedStr(frmLoginKRS.edNim.Text)+ 'order by nilai asc';

ADODataSet1.Active:=True;

DataSource1.DataSet:=ADODataSet1; DBAdvStringGrid2.DataSource:=DataSource1; DBAdvStringGrid1.Visible:=False;

DBAdvStringGrid2.Visible:=True;

4.4.6 Proses Lihat Grafik Perkembangan Studi

Penggalan program yang berisi kueri untuk menampilkan grafik perkembangan studi bagi pihak mahasiswa adalah sebagai berikut :

ADODataSet1.Active:=False; ADODataSet1.CommandText:=

QuotedStr(frmLoginKRS.edNim.Text); ADODataSet1.Active:=True;

if ADODataSet1.FieldValues['nim'] <> QuotedStr(frmLoginKRS.edNim.Text) then begin

ADODataSet2.Active:=False; ADODataSet2.CommandText:= 'select nim,nama from mhs where nim ='+ QuotedStr(frmLoginKRS.edNim.Text); ADODataSet2.Active:=True; edNama.Text:=ADODataSet2.FieldValues['nama']; edNim.Text:=ADODataSet2.FieldValues['nim']; end else begin

ShowMessage('Data Nim Dan Nama Tidak Ada!') end;

Kueri tersebut mengambil data nilai ips dan ipk dari mahasiswa yang login yaitu dengan melihat nim yang dimasukan pada form login. Jika tidak ada data yang sesuai, maka muncul pesan kesalahan.

4.4.7 Proses Ubah Password

Penggalan program untuk ubah password bagi pihak mahasiswa adalah sebagai berikut :

if trim(edPBaru.Text)='' then begin

ShowMessage('Silahkan Memasukan Password Baru Anda'); edPBaru.SetFocus;

exit; end else str:=

'update mhs set pass='+ QuotedStr(edPBaru.Text)+ ' where nim='+

QuotedStr(edNim.Text); ADOConnection1.Execute(str);

ShowMessage('Password Anda Telah Berubah');

Kueri yang digunakan yaitu perintah update. Apabila password baru belum dimasukan maka muncul pesan peringatan. Namun setelah password baru telah dimasukan maka muncul pesan konfirmasi bahwa password telah berubah.

4.4.8 Proses Login Dosen

Kueri ini digunakan untuk proses login bagi pihak dosen : ADODataSet1.CommandText:=

'select nia,password from dosen where nia='+ QuotedStr(edNia.Text)+'and'+ ' password='+ QuotedStr(edPass.Text); ADODataSet1.Active:=True; if edPass.Text=ADODataSet1.FieldValues['password'] then begin edNia.Text:=ADODataSet1.FieldValues['nia']; frmInputNilai.Show; end else

ShowMessage('Nia Atau Password Anda Salah!');

Apabila nia dan password yang dimasukan dosen sudah benar, maka dosen dapat masuk ke dalam sistem informasi dosen. Namun apabila nia maupun password yang dimasukan tidak sesuai maka akan muncul pesan kesalahan.

4.4.9 Proses Lihat Grafik Perkembangan Studi

Penggalan program untuk lihat grafik perkembangan studi bagi pihak dosen adalah sebagai berikut :

if not (Key=chr(13)) then exit; ADODataSet1.Active:=False; ADODataSet1.CommandText:=

'select nim,semester,ips,ipk from ipsipk where nim='+ QuotedStr(edNim.Text);

ADODataSet1.Active:=True;

if ADODataSet1.FieldValues['nim'] <> QuotedStr(edNim.Text) then begin

ADODataSet2.Active:=False; ADODataSet2.CommandText:= 'select nama from mhs where nim ='+ QuotedStr(edNim.Text);

ADODataSet2.Active:=True; if ADODataSet2.RecordCount = 0 then begin

ShowMessage('Maaf,Data Nim Dan Nama Mahasiswa Yang Anda Masukan Tidak Ada!'); exit;

end else

edNama.Text:=ADODataSet2.FieldValues['nama']; end;

Kueri tersebut mengambil data nilai ips dan ipk dari nim mahasiswa yang dimasukan dosen. Apabila nim yang dimasukan dosen tidak ditemukan, maka muncul pesan kesalahan. Apabila nim tersebut ada maka akan muncul data grafik perkembangan studi mahasiswa tersebut yaitu data ips dan ipk tiap semester.

4.4.10 Proses Lihat Jadwal Mengajar

Penggalan program untuk lihat jadwal mengajar bagi pihak dosen adalah sebagai berikut :

ADODataSet1.CommandText:=

'select jadwal.kd_makul,makul.matakuliah,jadwal.kelas,'+

'jadwal.ruang,jadwal.jam_mulai,jadwal.jam_akhir from jadwal,makul where '+ 'jadwal.kd_makul=makul.kd_makul and jadwal.nia='+

QuotedStr(fLoginDosen.edNia.Text); ADODataSet1.Active:=True; DataSource1.DataSet:=ADODataSet1; DBAdvStringGrid1.DataSource:=DataSource1;

Setelah dikueri data jadwal dosen, maka data hasil kueri akan ditampilkan pada grid yang di form.

4.4.11 Proses Cetak Jadwal Mengajar

Penggalan program untuk cetak jadwal mengajar bagi pihak dosen adalah sebagai berikut :

CetakJdwalNgajar.ADODataSet1.CommandText:=

'select dosen.nama_dosen,jadwal.nia,jadwal.kd_makul,makul.matakuliah,'+ 'jadwal.kelas,jadwal.ruang,jadwal.jam_mulai,jadwal.jam_akhir from '+ 'jadwal,makul,dosen where dosen.nia=jadwal.nia and '+

'jadwal.kd_makul=makul.kd_makul and jadwal.nia='+ QuotedStr(fLoginDosen.edNia.Text);

CetakJdwalNgajar.ADODataSet1.Active:=True; if CetakJdwalNgajar.ADODataSet1.RecordCount < 1 then begin

ShowMessage('Maaf,Data Jadwal Mengajar Anda Tidak Ada dan Tidak Dapat Dicetak'); CetakJdwalNgajar.ADOConnection1.Connected:=False; exit; end else CetakJdwalNgajar.QuickRep1.Preview; CetakJdwalNgajar.ADOConnection1.Connected:=False;

Setelah dikueri data untuk mencetak jadwal mengajar dosen, maka data hasil kueri akan ditampilkan pada preview.

4.4.12 Proses Lihat Daftar Mahasiswa

Penggalan program untuk lihat daftar mengajar bagi pihak dosen adalah sebagai berikut :

ADODataSet1.CommandText:=

'select nim,nama,alamat_asal,telpon_hp,email from mhs where nia='+ QuotedStr(fLoginDosen.edNia.Text);

ADODataSet1.Active:=True; DataSource1.DataSet:=ADODataSet1; DBAdvStringGrid1.DataSource:=DataSource1;

Setelah dikueri data mahasiswa, maka data hasil kueri akan ditampilkan pada grid yang di form daftar mahasiswa. Data mahasiswa yang ditampilkan berupa nim, nama, alamat asal, telepon dan email. 4.4.13 Proses Cetak Daftar Mahasiswa

Penggalan program untuk cetak daftar mahasiswa bagi pihak dosen adalah sebagai berikut :

PreviewDtfMhs.ADODataSet1.CommandText:=

'select nim,nama,alamat_asal,dosen.nama_dosen from dosen,mhs where '+ 'mhs.nia=dosen.nia and mhs.nia='+

QuotedStr(fLoginDosen.edNia.Text); PreviewDtfMhs.ADODataSet1.Active:=True; if PreviewDtfMhs.ADODataSet1.RecordCount < 1 then begin

ShowMessage('Maaf,Data Mahasiswa Yang Anda Walikan Tidak Ada dan Tidak Dapat Dicetak'); exit; end else PreviewDtfMhs.QuickRep1.Preview; PreviewDtfMhs.ADOConnection1.Connected:=False; end;

Setelah data mahasiswa dikueri, maka hasil kueri ditampilkan pada preview data mahasiswa.

4.4.14 Proses Ubah Password

Penggalan program untuk ubah password bagi pihak dosen adalah sebagai berikut :

str:=

'update dosen set password='+ QuotedStr(edPassword.Text)+ ' where nia='+

QuotedStr(edNia.Text); ADOConnection1.Execute(str);

ShowMessage('Password Anda Telah Berubah');

Untuk mengubah password digunakan perintah update untuk kolom password. Setelah diubah maka akan muncul pesan konfirmasi bahwa password anda telah berubah.

4.4.15 Proses Login Akademik

Penggalan program untuk login bagi pihak akademik adalah sebagai berikut :

ADODataSet1.CommandText:=

'select username,password from admin where username='+ QuotedStr(edUsername.Text)+'and'+ ' password='+ QuotedStr(edPassword.Text); ADODataSet1.Active:=True; if edPassword.Text=ADODataSet1.FieldValues['password'] then begin frmMenuUtamaSIA.Show; end else

ShowMessage('Username atau Password Anda Salah!');;

Untuk login, maka dikueri password dan nama petugas akademik. Apabila nama atau password yang dimasukan tidak sesuai maka akan muncul pesan kesalahan. Namun apabila password dan nama petugas akademik sudah sesuai maka akan muncul form utama SIA MSD. 4.4.16 Proses Isi/Edit Data Mahasiswa

Penggalan program untuk isi/edit data mahasiswa bagi pihak akademik adalah sebagai berikut :

Simpan Data Mahasiswa PernyataanSQL :=

'INSERT INTO mhs (nim,nia,nama,tmp_lahir,tgl_lahir,alamat_asal,sex,'+ 'alamat_skrg,agama,namawali,pekerjaan,alamat_wali,'+

'telp_wali,angkatan,telpon_hp,email,asalSMU,'+ 'NmrIjazah,thn_ijasah) VALUES ('+

PETIK + edNim.Text + PETIK + ',' + PETIK + edNia.Text + PETIK + ',' + PETIK + edNama.Text+ PETIK + ',' + PETIK + edTempatLahir.Text + PETIK + ',' + PETIK + Tanggal + PETIK + ',' +

PETIK + edAlamatAsal.Text + PETIK +',' + PETIK + KodeKelamin + PETIK + ',' + PETIK + edAlamatSkrg.Text + PETIK + ',' + PETIK + cbAgama.Text + PETIK +',' + PETIK + edNamaWali.Text + PETIK +','+ PETIK + edKerjaWali.Text + PETIK + ',' + PETIK + edAlamatWali.Text + PETIK + ',' + PETIK + edTlpWali.Text + PETIK +',' + PETIK + cbTahunMasuk.Text + PETIK +',' + PETIK + edTelpon.Text + PETIK +','+ PETIK + edEmail.Text + PETIK +','+ PETIK + edAsalSmu.Text + PETIK +',' + PETIK + edNoIjazah.Text + PETIK +',' + PETIK + edThnIjazah.Text + PETIK + ')' ;

Hapus Data Mahasiswa

procedure TfrmDtMhs.btHapusClick(Sender: TObject); PernyataanSQl:=

' DELETE FROM mhs where nim='+ ''''+edNim.Text+'''';

ADOConnection1.Execute(PernyataanSQl); MessageDlg('Data Telah Dihapus', mtInformation, [mbOK],0); end else btHapus.Visible:=True;

Ubah Data Mahasiswa PernyataanSQL:= 'UPDATE mhs SET' +

' nama = '+ PETIK+ edNama.Text + PETIK + ',' + ' nia = '+ PETIK+ edNia.Text + PETIK + ',' + ' tmp_lahir = '+ PETIK+ edTempatLahir.Text + PETIK + ','+ ' tgl_lahir = '+ PETIK+ Tanggal + PETIK + ',' +

' alamat_asal = '+ PETIK+ edAlamatAsal.Text + PETIK + ','+ ' sex = '+ PETIK+ KodeKelamin + PETIK + ',' + ' alamat_skrg = '+ PETIK+ edAlamatSkrg.Text + PETIK + ','+ ' agama = '+ PETIK+ cbAgama.Text + PETIK + ','+ ' namawali = '+ PETIK+ edNamaWali.Text + PETIK + ','+ ' pekerjaan = '+ PETIK+ edKerjaWali.Text + PETIK + ','+ ' alamat_wali = '+ PETIK+ edAlamatWali.Text + PETIK + ','+ ' telp_wali = '+ PETIK+ edTlpWali.Text + PETIK + ','+ ' telpon_hp = '+ PETIK+ edTelpon.Text + PETIK + ','+ ' email = '+ PETIK+ edEmail.Text + PETIK + ','+ ' angkatan = '+ PETIK+ cbTahunMasuk.Text + PETIK + ','+ ' asalSMU = '+ PETIK+ edAsalSmu.Text + PETIK + ','+ ' NmrIjazah = '+ PETIK+ edNoIjazah.Text + PETIK + ','+ ' thn_ijasah = '+ PETIK+ edThnIjazah.Text + PETIK + ' WHERE nim = '+ QuotedStr(edNim.Text); ADOConnection1.Execute(PernyataanSQL); Pencarian Data Mahasiswa

Kueri di bawah ini digunakan untuk mencari data mahasiswa berdasarkan nim.

ADODataSet1.CommandText:=

'Select *,nama_dosen from mhs,dosen where dosen.nia=mhs.nia'+ ' and nim=' + quotedStr(edCari.Text); ADODataSet1.Connection:=ADOConnection1; ADODataSet1.Active:=True; if ADODataSet1.RecordCount < 1 then begin

ShowMessage('Data Mahasiswa Yang Anda Cari Tidak Ada!'); RecordBaru := True;

Kueri di bawah ini digunakan untuk mencari data mahasiswa berdasarkan nama mahasiswa.

ADODataSet1.CommandText:=

'Select *,nama_dosen from mhs,dosen where dosen.nia=mhs.nia'+ ' and nama like ' +

Untuk menampilkan data mahasiswa yang dicari pada form digunakan penggalan program berikut :

with ADODataSet1 do begin edNim.Text := FieldByName('nim').Value; edNama.Text := FieldByName('nama').Value; edTempatLahir.Text := FieldByName('tmp_lahir').Value; edAlamatAsal.Text := FieldByName('alamat_asal').Value; edAlamatSkrg.Text := FieldByName('alamat_skrg').Value; edNamaWali.Text := FieldByName('namawali').Value; edKerjaWali.Text := FieldByName('pekerjaan').Value; edTlpWali.Text := FieldByName('telp_wali').Value; edAlamatWali.Text := FieldByName('alamat_wali').Value; cbTahunMasuk.Text := FieldByName('angkatan').Value; edAsalSmu.Text := FieldByName('asalSMU').Value; edNoIjazah.Text := FieldByName('NmrIjazah').Value; edThnIjazah.Text := FieldByName('thn_ijasah').Value; cbAgama.Text := FieldByName('agama').Value; edTanggal.Text := FieldByName('tgl_lahir').Value; edNia.Text := FieldByName('nia').Value; cbDosen.Text := FieldByName('nama_dosen').Value; edTelpon.Text := FieldByName('telpon_hp').Value; edEmail.Text := FieldByName('email').Value;

if FieldByName('sex').Value = 'Laki-laki' then radPria.Checked:=True

else

radWanita.Checked:=True; end;

4.4.17 Proses Cetak Data Mahasiswa

Penggalan program untuk cetak data mahasiswa bagi pihak akademik adalah sebagai berikut :

Cetak berdasarkan nim Form2.ADODataSet1.CommandText:= 'Select * from mhs,admin where nim='+ QuotedStr(edNim.Text)+ 'and username='+ QuotedStr(frmLoginAkademik.edUsername.Text); Form2.ADODataSet1.Active:=True; if edNim.Text=Form2.ADODataSet1.FieldValues['nim'] then begin Form2.QuickRep1.Preview; end else

MessageDlg('Data Nim Tidak Ada',mtInformation,[mbOK],0);

Cetak berdasarkan angkatan Fcetak.ADODataSet1.CommandText:=

'Select *, username from mhs,admin where angkatan='+ QuotedStr(cbAngkatan.Text)+ ' and username='+ QuotedStr(frmLoginAkademik.edUsername.Text); Fcetak.ADODataSet1.Active:=True; if cbAngkatan.Text=Fcetak.ADODataSet1.FieldValues['angkatan'] then begin

Fcetak.QuickRep1.Preview; end

else

MessageDlg('Data Angkatan Tidak Ada',mtInformation,[mbOK],0);

4.4.18 Proses Isi/Edit Data Dosen

Penggalan program untuk isi/edit data dosen bagi pihak akademik adalah sebagai berikut :

Simpan Data Dosen PernyataanSQL :=

'INSERT INTO dosen (nia,nama_dosen,tmp_lahir,tgl_lahir,alamat,'+ 'sex,agama,status,email,telp)VALUES ('+

PETIK + edNia.Text + PETIK + ',' + PETIK + edNama.Text+ PETIK + ',' + PETIK + edTempat.Text + PETIK + ',' + PETIK + Tanggal + PETIK + ',' + PETIK + edAlamat.Text + PETIK +',' + PETIK + KodeKelamin + PETIK + ',' + PETIK + cbAgama.Text + PETIK +',' + PETIK + cbStatus.Text + PETIK +','+ PETIK + edEmail.Text + PETIK +',' + PETIK + edTelpon.Text + PETIK + ')' ; ADOConnection1.Execute(PernyataanSQL);

Hapus Data Dosen PernyataanSQL:=

'UPDATE dosen SET' +

' nama_dosen = '+ PETIK+ edNama.Text + PETIK + ',' + ' tmp_lahir = '+ PETIK+ edTempat.Text + PETIK + ','+ ' tgl_lahir = '+ PETIK+ Tanggal + PETIK + ',' + ' alamat = '+ PETIK+ edAlamat.Text + PETIK + ','+ ' sex = '+ PETIK+ KodeKelamin + PETIK + ',' + ' agama = '+ PETIK+ cbAgama.Text + PETIK + ','+ ' status = '+ PETIK+ cbStatus.Text + PETIK + ','+ ' email = '+ PETIK+ edEmail.Text + PETIK + ','+ ' telp = '+ PETIK+ edTelpon.Text + PETIK + ' WHERE nia='+QuotedStr(edNia.Text);

ADOConnection1.Execute(PernyataanSQL); end;

MessageDlg('Data Sudah Disimpan',mtInformation,[mbOK],0);

Ubah Data Dosen PernyataanSQL:= 'UPDATE dosen SET' +

' nama_dosen = '+ PETIK+ edNama.Text + PETIK + ',' + ' tmp_lahir = '+ PETIK+ edTempat.Text + PETIK + ','+ ' tgl_lahir = '+ PETIK+ Tanggal + PETIK + ',' + ' alamat = '+ PETIK+ edAlamat.Text + PETIK + ','+ ' sex = '+ PETIK+ KodeKelamin + PETIK + ',' + ' agama = '+ PETIK+ cbAgama.Text + PETIK + ','+ ' status = '+ PETIK+ cbStatus.Text + PETIK + ','+ ' email = '+ PETIK+ edEmail.Text + PETIK + ','+ ' telp = '+ PETIK+ edTelpon.Text + PETIK + ' WHERE nia='+QuotedStr(edNia.Text);

ADOConnection1.Execute(PernyataanSQL); end;

Pencarian Data Dosen

Kueri di bawah ini digunakan untuk mencari data dosen berdasarkan nia atau nama dosen.

ADODataSet1.CommandText:= 'Select * from dosen where nia=' + quotedStr(edCari.Text) + 'or nama_dosen like'+ QuotedStr('%'+edCari.Text+'%');

Untuk menampilkan data dosen yang dicari pada form digunakan penggalan program berikut :

with ADODataSet1 do begin edNia.Text := FieldByName('nia').Value; edNama.Text := FieldByName('nama_dosen').Value; edTempat.Text := FieldByName('tmp_lahir').Value; edAlamat.Text := FieldByName('alamat').Value; edTelpon.Text := FieldByName('telp').Value; edTanggal.Text := FieldByName('tgl_lahir').Value; edEmail.Text := FieldByName('email').Value; cbAgama.Text := FieldByName('agama').Value; cbStatus.Text := FieldByName('status').Value; cbJabatan.Text := FieldByName('kd_jabatan').Value;

if FieldByName('sex').Value = 'Laki-laki' then

radPria.Checked:=True else

radWanita.Checked:=True;

end;

4.4.19 Proses Cetak Data Dosen

Penggalan program untuk cetak data dosen bagi pihak akademik adalah sebagai berikut :

Cetak berdasarkan NIA

FcetakDosen.ADODataSet1.CommandText:= 'Select *,username from admin,dosen where nia='+ QuotedStr(edCetak.Text)+ ' and username='+ QuotedStr(frmLoginAkademik.edUsername.Text); FcetakDosen.ADODataSet1.Active:=True; if edCetak.Text=FcetakDosen.ADODataSet1.FieldValues['nia'] then begin FcetakDosen.QuickRep1.Preview; end else

Cetak berdasarkan nama

FcetakDosen.ADODataSet1.CommandText:=

'Select *,username from admin,dosen where nama_dosen='+ QuotedStr(cbDosen.Text)+ ' and username='+ QuotedStr(frmLoginAkademik.edUsername.Text); FcetakDosen.ADODataSet1.Active:=True; if cbDosen.Text=FcetakDosen.ADODataSet1.FieldValues['nama_dosen'] then begin FcetakDosen.QuickRep1.Preview; end else

MessageDlg('Data Nim Tidak Ada',mtInformation,[mbOK],0);

4.4.20 Proses Isi/Edit Data MataKuliah

Penggalan program untuk isi/edit data matakuliah bagi pihak akademik adalah sebagai berikut :

Simpan Data Matakuliah PernyataanSQL :=

'INSERT INTO makul (kd_makul,id_semester,matakuliah,Subject,'+ 'sks,prasyarat,jp,jenis_mtk) VALUES ('+

PETIK + edKdMtk.Text + PETIK + ',' + PETIK + edTawar.Text + PETIK + ',' + PETIK + edNamaMtk.Text+ PETIK + ',' + PETIK + edNameInggris.Text + PETIK + ',' + PETIK + edSks.Text + PETIK +',' + PETIK + cbSyarat.Text + PETIK + ',' + PETIK + edJp.Text + PETIK + ',' + PETIK + cbJenisMtk.Text + PETIK + ')'; ADOConnection1.Execute(PernyataanSQL);

Hapus Data Matakuliah PernyataanSQl:=

' DELETE FROM makul where kd_makul='+ ''''+cbKodeMtk.Text+'''';

ADOConnection1.Execute(PernyataanSQl); MessageDlg('Data Telah Dihapus', mtInformation,

[mbOK],0);

Ubah Data Matakuliah PernyataanSQL:=

'UPDATE makul SET' +

' matakuliah = '+ PETIK+ edNamaMtk.Text + PETIK + ',' + ' id_semester = '+ PETIK+ edTawar.Text + PETIK + ',' + ' Subject = '+ PETIK+ edNameInggris.Text + PETIK + ','+ ' sks = '+ PETIK+ edSks.Text + PETIK + ','+ ' prasyarat = '+ PETIK+ cbSyarat.Text + PETIK + ','+ 'jp = '+ PETIK+ edJp.Text + PETIK + ',' + 'jenis_mtk = '+ PETIK+ cbJenisMtk.Text + PETIK + ' WHERE kd_makul = '+ QuotedStr(edKdMtk.Text); ADOConnection1.Execute(PernyataanSQL);

4.4.21 Proses Penawaran Matakuliah Sisipan

Penggalan program untuk penawaran matakuliah sisipan bagi pihak akademik adalah sebagai berikut :

if cbMtkTawar.Text='' then begin

ShowMessage('Pilih Ulang,Data Belum Tersimpan...!!') end

else begin str:=

'insert into mtk_tawar(kode,mtk,thn,'+ 'semes) values('+

PETIK + edKode.Text + PETIK + ','+ PETIK + edMtk.Text + PETIK + ','+ PETIK + edTahun.Text + PETIK + ','+ PETIK + edSemester.Text+PETIK+ ')'; ADOConnection1.Execute(str);

MessageDlg('Data Sudah Disimpan',mtInformation,[mbOK],0);

4.4.22 Proses Isi/Edit Jadwal

Penggalan program untuk isi/edit jadwal bagi pihak akademik adalah sebagai berikut :

Simpan Data Jadwal PernyataanSQL :=

'INSERT INTO jadwal(kd_makul,kelas,nia,kapasitas,hari,'+ 'jam_mulai,jam_akhir,ruang)VALUES('+

PETIK + cbKodeMtk.Text + PETIK + ',' + PETIK + cbKelas.Text+ PETIK + ',' + PETIK + edNia.Text+ PETIK + ',' + PETIK + edKapasitas.Text + PETIK + ',' + PETIK + cbHari.Text + PETIK + ',' + PETIK + cbJamMulai.Text + PETIK +',' + PETIK + cbJamAkhir.Text + PETIK + ',' + PETIK + cbRuang.Text + PETIK +')' ;

ADOConnection1.Execute(PernyataanSQL);

Hapus Data Jadwal

if MessageDlg('Anda Mau Menghapus Data ini?', mtInformation,

[mbYes,mbNo],0)=mrYes then begin

PernyataanSQl:=

' DELETE FROM jadwal where kd_makul='+ ''''+cbKodeMtk.Text+'''';

ADOConnection1.Execute(PernyataanSQl); MessageDlg('Data Telah Dihapus', mtInformation,

Ubah Data Jadwal PernyataanSQL:= 'UPDATE jadwal SET' +

' kelas = '+ PETIK+ cbKelas.Text + PETIK + ',' + ' nia = '+ PETIK+ edNia.Text + PETIK + ',' + ' kapasitas = '+ PETIK+ edKapasitas.Text + PETIK + ','+ ' hari = '+ PETIK+ cbHari.Text + PETIK + ',' + ' jam_mulai = '+ PETIK+ cbJamMulai.Text + PETIK + ','+ ' jam_akhir = '+ PETIK+ cbJamAkhir.Text + PETIK + ',' + ' ruang = '+ PETIK+ cbRuang.Text + PETIK + ' WHERE kd_makul ='+ QuotedStr(cbKodeMtk.Text);

ADOConnection1.Execute(PernyataanSQL);

4.4.23 Proses Cetak Presensi Kuliah

Penggalan program untuk cetak presensi kuliah bagi pihak akademik adalah sebagai berikut :

CetakPresensi.ADODataSet1.CommandType:=cmdText; CetakPresensi.ADODataSet1.CommandText:=

'select admin.username,setting.thn_ajaran,setting.semester,krs.nim,mhs.nama,makul.matakuliah,'+ 'jadwal.kelas,jadwal.hari,jadwal.jam_mulai,jadwal.jam_akhir,dosen.nama_dosen from

admin,dosen,makul,jadwal,mhs,krs,setting'+

' where dosen.nia=jadwal.nia and krs.thn_ajaran=setting.thn_ajaran '+ 'and krs.semester=setting.semester and krs.nim=mhs.nim and '+ 'jadwal.kd_makul=krs.kd_makul and makul.kd_makul=krs.kd_makul '+

'and matakuliah='+QuotedStr(cbMtk.Text)+' and kelas='+QuotedStr(cbKelas.Text)+ ' and username='+ QuotedStr(frmLoginAkademik.edUsername.Text); CetakPresensi.ADODataSet1.Active:=True; CetakPresensi.QR_Kelas.Caption:=cbKelas.Text; CetakPresensi.QuickRep1.Preview; 4.4.24 Proses Buka KRS

Penggalan program untuk buka KRS bagi pihak akademik adalah sebagai berikut :

AdvProgressBar1.Position:=100;

AdvProgressBar1.ShowPercentage:=True;

str:=

'update kunci set kd_kunci ='+ QuotedStr('Ya')+ ' where kd_kunci='+ QuotedStr('Tidak'); ADOConnection1.Execute(str);

ShowMessage('Akses KRS Mandiri Telah Dibuka');

Perintah update digunakan untuk mengubah kode kunci. Untuk membuka akses KRS, maka kode kunci diubah menjadi Ya. Setelah diubah, maka muncul pesan konfirmasi bahwa akses telah dibuka.

4.4.25 Proses Tutup KRS

Penggalan program untuk tutup KRS bagi pihak akademik adalah sebagai berikut :

AdvProgressBar1.Position:=100;

AdvProgressBar1.ShowPercentage:=True; str:=

'update kunci set kd_kunci ='+ QuotedStr('Tidak')+ ' where kd_kunci='+ QuotedStr('Ya');

ADOConnection1.Execute(str);

ShowMessage('Akses KRS Mandiri Telah Ditutup');

Perintah update digunakan untuk mengubah kode kunci. Untuk menutup akses KRS, maka kode kunci diubah menjadi Tidak. Setelah diubah, maka muncul pesan konfirmasi bahwa akses telah ditutup. 4.4.26 Proses Cetak Form KRS

Untuk mencetak form KRS, hanya memanggil preview cetakan form KRS saja.

fCetakKRS.QuickRep1.Preview;

4.4.27 Proses Isi/Edit Nilai Per Matakuliah Simpan Data Nilai

str:=

'insert into nilai(kd_makul,thn_ajaran,semester,nim,nilai_final,bobot,nilai)'+ 'values('+

PETIK + kdMtk.Text+ PETIK + ','+ PETIK + edTahun.Text + PETIK + ','+ PETIK + edSemes.Text + PETIK + ','+ PETIK + cbNim.Text+ PETIK + ','+ PETIK + edNilaiFinal.Text+ PETIK + ','+ PETIK + edBobot.Text+ PETIK + ',' + PETIK + edNilaiHuruf.Text+ PETIK + ')'; ADOConnection1.Execute(str);

Ubah Data Nilai str:=

'UPDATE nilai SET' +

' thn_ajaran = '+ PETIK+ edTahun.Text + PETIK + ',' + ' semester = '+ PETIK+ edSemes.Text + PETIK + ',' + ' nim = '+ PETIK+ cbNim.Text + PETIK + ','+ ' nilai_final = '+ PETIK+ edNilaiFinal.Text + PETIK + ',' +

Dokumen terkait