I. Rancangan Form
( Waktu : 60 menit )
1. Buatlah sebuah project dengan nama : rental.pjx
2. Buatlah sebuah database dengan nama : dbRental.dbc
3. Buatlah sebuah table dengan nama : RMobil.DBF dengan struktur table rmobil sebagai berikut :
Nama Field | Tipe | Panjang | Key |
NoKwitansi | Character | 5 | PrimaryKey |
TglKwitansi | Date | 8 |
|
NamaPenyewa | Character | 35 |
|
Alamat | Character | 100 |
|
JnsMobil | Character | 25 |
|
HrgSewa | Numeric | 6 |
|
LamaSewa | Numeric | 2 |
|
TotalBayar | Numeric | 10 |
|
I. Rancangan Form
II. Ketentuan Soal
- Pada Saat Program dijalankan (RUN) maka Semua TextBox dan OptionGroup status Tidak Aktif atau Enabled = .F. , Tanggal Kwitansi menggunakan tanggal sistem dan secara otomatis lansung tampil.
- Tombol Tambah untuk Menambah Data dengan ketentuan pada saat diklik maka No. kwitansi tampil otomatis sesuai dengan format diatas. Ada Beberapa TextBox tetap tidak tidak diatifkan (Enabled=.F.) yaitu Tgl. Kwitansi, Harga Sewa Perhari dan Total Bayar.
- Jenis Mobil ada 3 jenis.
· Jika diklik jenis mobil Kijang Kapsul, maka Harga Sewa Perhari sebesar 450,000
· Jika diklik jenis mobil Suzuki Panter, maka Harga Sewa Perhari sebesar 300,000
· Jika diklik jenis mobil Daihatsu Jebra, maka Harga Sewa Perhari sebesar 275,000
- Total Bayar = Harga Sewa Perhari dikalikan dengan Lama Sewa
- Tombol Simpan untuk Simpan Data Rental Mobil kedalam tabel
- Tombol Selesai untuk Keluar dari Form Rental Mobil
J SeLaMaT MeNgErJaKaN J
Form1 Load
CLOSE DATABASES all
CLOSE INDEXES
SET DEFAULT TO c:\foxpro
SELECT a
USE mobil
SET ORDER TO NOKWITANSI && NOKWITANSI
Form1 aktif
thisform.txtNamapenyewa.Enabled= .T.
thisform.txtAlamat.Enabled= .T.
thisform.txtLamasewa.Enabled= .T.
thisform.optiongroup1.Enabled= .T.
Form1 nonaktif
thisform.txtnokwitansi.Enabled= .F.
thisform.txtNamapenyewa.Enabled= .F.
thisform.txttglkwitansi.Enabled= .F.
thisform.txtAlamat.Enabled= .F.
thisform.txtHrgsewa.Enabled= .F.
thisform.txtLamasewa.Enabled= .F.
thisform.txtTotalbayar.Enabled= .F.
thisform.optiongroup1.Enabled= .F.
Form1 Activate
thisform.txttglkwitansi.Value=DATE()
thisform.nonaktif
thisform.cmdsimpan.Enabled= .F.
Form1 nomor
SELECT a
GO bottom
urut=(VAL(RIGHT(nokwitansi,4))+1)
no="K000"+(ALLTRIM(STR(urut,4)))
thisform.txtnokwitansi.Value=no
cmdtambah Click
thisform.aktif
thisform.bersih
thisform.nomor
thisform.txtnamapenyewa.SetFocus
thisform.cmdsimpan.Enabled= .T.
thisform.cmdtambah.Enabled= .F.
Option1 Click
thisform.txthrgsewa.Value=450000
Option2 Click
thisform.txthrgsewa.Value=300000
Option3 Click
thisform.txthrgsewa.Value=275000
txtlamasewa Lostfocus
thisform.txttotalbayar.Value=thisform.txthrgsewa.Value*thisform.txtlamasewa.Value
cmdsimpan Click
SELECT a
APPEND BLANK
replace nokwitansi WITH thisform.txtnokwitansi.Value
replace tglkwitansi WITH thisform.txttglkwitansi.Value
replace namapenyewa WITH thisform.txtnamapenyewa.Value
replace alamat WITH thisform.txtalamat.Value
IF thisform.optiongroup1.option1.Value=1
replace jnsmobil WITH "KIJANG KAPSUL"
ELSE
IF THISFORM.OPtiongroup1.OPtion2.Value=1
REPLACE JNSMOBIL WITH "SUZUKI PANTHER"
ELSE
REPLACE JNSMOBIL WITH "DAIHATSU JEBRA"
ENDIF
ENDIF
REPLACE hrgsewa WITH thisform.txthrgsewa.Value
replace lamasewa WITH thisform.txtlamasewa.Value
replace totalbayar WITH thisform.txttotalbayar.Value
MESSAGEBOX("data tersimpan",64,"info")
thisform.bersih
thisform.nonaktif
thisform.cmdsimpan.Enabled= .F.
II. Ketentuan Soal
- Pada Saat Program dijalankan (RUN) maka Semua TextBox dan OptionGroup status Tidak Aktif atau Enabled = .F. , Tanggal Kwitansi menggunakan tanggal sistem dan secara otomatis lansung tampil.
- Tombol Tambah untuk Menambah Data dengan ketentuan pada saat diklik maka No. kwitansi tampil otomatis sesuai dengan format diatas. Ada Beberapa TextBox tetap tidak tidak diatifkan (Enabled=.F.) yaitu Tgl. Kwitansi, Harga Sewa Perhari dan Total Bayar.
- Jenis Mobil ada 3 jenis.
· Jika diklik jenis mobil Kijang Kapsul, maka Harga Sewa Perhari sebesar 450,000
· Jika diklik jenis mobil Suzuki Panter, maka Harga Sewa Perhari sebesar 300,000
· Jika diklik jenis mobil Daihatsu Jebra, maka Harga Sewa Perhari sebesar 275,000
- Total Bayar = Harga Sewa Perhari dikalikan dengan Lama Sewa
- Tombol Simpan untuk Simpan Data Rental Mobil kedalam tabel
- Tombol Selesai untuk Keluar dari Form Rental Mobil
SeLaMaT MeNgErJaKaN
Form1 Load
CLOSE DATABASES all
CLOSE INDEXES
SET DEFAULT TO c:\foxpro
SELECT a
USE mobil
SET ORDER TO NOKWITANSI && NOKWITANSI
Form1 aktif
thisform.txtNamapenyewa.Enabled= .T.
thisform.txtAlamat.Enabled= .T.
thisform.txtLamasewa.Enabled= .T.
thisform.optiongroup1.Enabled= .T.
Form1 nonaktif
thisform.txtnokwitansi.Enabled= .F.
thisform.txtNamapenyewa.Enabled= .F.
thisform.txttglkwitansi.Enabled= .F.
thisform.txtAlamat.Enabled= .F.
thisform.txtHrgsewa.Enabled= .F.
thisform.txtLamasewa.Enabled= .F.
thisform.txtTotalbayar.Enabled= .F.
thisform.optiongroup1.Enabled= .F.
Form1 Activate
thisform.txttglkwitansi.Value=DATE()
thisform.nonaktif
thisform.cmdsimpan.Enabled= .F.
Form1 nomor
SELECT a
GO bottom
urut=(VAL(RIGHT(nokwitansi,4))+1)
no="K000"+(ALLTRIM(STR(urut,4)))
thisform.txtnokwitansi.Value=no
cmdtambah Click
thisform.aktif
thisform.bersih
thisform.nomor
thisform.txtnamapenyewa.SetFocus
thisform.cmdsimpan.Enabled= .T.
thisform.cmdtambah.Enabled= .F.
Option1 Click
thisform.txthrgsewa.Value=450000
Option2 Click
thisform.txthrgsewa.Value=300000
Option3 Click
thisform.txthrgsewa.Value=275000
txtlamasewa Lostfocus
thisform.txttotalbayar.Value=thisform.txthrgsewa.Value*thisform.txtlamasewa.Value
cmdsimpan Click
SELECT a
APPEND BLANK
replace nokwitansi WITH thisform.txtnokwitansi.Value
replace tglkwitansi WITH thisform.txttglkwitansi.Value
replace namapenyewa WITH thisform.txtnamapenyewa.Value
replace alamat WITH thisform.txtalamat.Value
IF thisform.optiongroup1.option1.Value=1
replace jnsmobil WITH "KIJANG KAPSUL"
ELSE
IF THISFORM.OPtiongroup1.OPtion2.Value=1
REPLACE JNSMOBIL WITH "SUZUKI PANTHER"
ELSE
REPLACE JNSMOBIL WITH "DAIHATSU JEBRA"
ENDIF
ENDIF
REPLACE hrgsewa WITH thisform.txthrgsewa.Value
replace lamasewa WITH thisform.txtlamasewa.Value
replace totalbayar WITH thisform.txttotalbayar.Value
MESSAGEBOX("data tersimpan",64,"info")
thisform.bersih
thisform.nonaktif
thisform.cmdsimpan.Enabled= .F.