Anda di halaman 1dari 4

January 8, 2014

QUIZ DELPHI / SAZ - HAMZAH

QUIZ UAS DELPHI Type A 1. Buat database baru dengan nama : dbPenggajian.mdb. Simpan di folder NIM masing-masing. 2. Buat tabel dengan nama: karyawan. Struktur tabel: Name Type Size Keterangan Nik Text 10 Primary Key Nama Text 20 alamat Text 25 3. Isi tabel karyawan sebanyak dua (2) data. 4. Buat tabel dengan nama: gaji. Struktur tabel: Name Type Size Keterangan Noslip text 5 Primary key Tanggal Date/time 8 Nik Text 10 Jabatan Text 10 Gapok Number Tunjangan_jabatan Number Tunjangan_istri Number totalgaji Number 5. Buat project baru dengan nama: proPenggajian. Simpan di folder NIM masing-masing. 6. Buat form dengan nama penggajian, dengan tampilan sbb:

7. Ketentuan Program. a. Adotable1 koneksikan ke tabel karyawan, adotable 2 koneksikan ketabel gaji. b. Buat procedure aktif, nonaktif, dan bersih. c. Tanggal tampil otomatis saat form dijalankan. d. Ketika form dijalnkan semua objrct dalam keadaan nonaktif dan setfocus ada di button Baru. e. Klik button Baru maka semua object akan aktif dan bersih, setfocus ada di No Slip. f. Combo box NIK akan berisi NIK yang ada di tabel karyawan. g. Pilih NIP maka Nama dan ALamat akan tampil sesuai dengan NIP yang dipilih.

1|P ag e

January 8, 2014

QUIZ DELPHI / SAZ - HAMZAH

h. Pilih OptionButton Jabatan maka Gaji Pokok akan tampil sesuai dengan Jabatan yang di pilih. Jabatan Gaji Pokok Manager 5.000.000 Personalia 3.000.000 HRD 2.000.000 i. Pilih Checkbox tunjangan maka nilai Tunjangan akan tampil sesuai dengan ketentuan. Tunjangan Jabatan = 10% dari Gaji Pokok. Tunjangan Istri = 5% dari Gaji Pokok. j. Klik button hitung maka total gaji akan tampil. Total Gaji=Gaji Pokok + Tunj. Jabatan + tunj. Istri k. Klik Button Simpan maka data gaji kaqryawan akan tersimpan di dalam tabel Gaji. l. Klik button Keluar maka akan tampil message Box.

rpersonalia.Enabled:=true; rhrd.Enabled:=true; end; procedure tform1.nonaktif; begin enoslip.Enabled:=false; cmbnik.Enabled:=false; rmanager.Enabled:=false; rpersonalia.Enabled:=false; rhrd.Enabled:=false; end; procedure tform1.bersih; begin enoslip.Text:=''; cmbnik.Text:=''; enama.Text:=''; ealamat.Text:=''; rmanager.Checked:=false; rpersonalia.Checked:=false; rhrd.Checked:=false; egapok.Text:='0'; cjabatan.Checked:=false; cistri.Checked:=false; etjabatan.Text:=''; etistri.Text:=''; etotal.Text:=''; end;

Script Program:
{ Public declarations } procedure aktif; procedure nonaktif; procedure bersih; implementation {$R *.dfm} procedure tform1.aktif; begin enoslip.Enabled:=true; cmbnik.Enabled:=true; rmanager.Enabled:=true;
2|P ag e

January 8, 2014

QUIZ DELPHI / SAZ - HAMZAH

procedure TForm1.FormCreate(Sender: TObject); begin adotable1.First; while not adotable1.Eof do begin cmbnik.Items.Add(adotable1['nik']); adotable1.Next; end; end; procedure TForm1.FormActivate(Sender: TObject); begin etanggal.Text:=datetostr(date()); nonaktif; bbaru.Setfocus; end; procedure TForm1.bbaruClick(Sender: TObject); begin aktif; bersih; enoslip.setfocus; end; procedure TForm1.cmbnikClick(Sender: TObject); begin if adotable1.locate('nik',cmbnik.Text,[]) then begin
3|P ag e

enama.Text:=adotable1['nama']; ealamat.Text:=adotable1['alamat']; end; end; procedure TForm1.rhrdClick(Sender: TObject); begin egapok.Text:='2000000'; end; procedure TForm1.rpersonaliaClick(Sender: TObject); begin egapok.Text:='3000000'; end; procedure TForm1.rmanagerClick(Sender: TObject); begin egapok.Text:='5000000'; end; procedure TForm1.cistriClick(Sender: TObject); begin if cistri.Checked=true then etistri.Text:=floattostr(5/100 * strtofloat(egapok.Text)) else etistri.Text:='0'; end;

January 8, 2014

QUIZ DELPHI / SAZ - HAMZAH

procedure TForm1.cjabatanClick(Sender: TObject); begin if cjabatan.Checked=true then etjabatan.Text:=floattostr(10/100 * strtofloat(egapok.Text)) else etjabatan.Text:='0'; end; procedure TForm1.bhitungClick(Sender: TObject); begin etotal.Text:=floattostr(strtofloat(egapok.Text)+strtofloat(etjabat an.Text)+strtofloat(etistri.Text)); end; procedure TForm1.bsimpanClick(Sender: TObject); begin adotable2.Append; adotable2['noslip']:=enoslip.Text; adotable2['tanggal']:=etanggal.Text; adotable2['nik']:=cmbnik.Text; if rmanager.Checked=true then

adotable2['jabatan']:=rmanager.Caption else if rpersonalia.Checked=true then adotable2['jabatan']:=rpersonalia.Caption else adotable2['jabatan']:=rhrd.Caption; adotable2['gapok']:=egapok.Text; adotable2['tunjangan_jabatan']:=etjabatan.Text; adotable2['tunjangan_istri']:=etistri.Text; adotable2['totalgaji']:=etotal.Text; adotable2.Post; nonaktif; end; procedure TForm1.bkeluarClick(Sender: TObject); begin if (application.MessageBox('Yakin Mau Keluar.?','Confirm..',32+mb_yesno)=idyes) then close; end;

4|P ag e