Anda di halaman 1dari 29

Basis Data 2

STMIK Banjarbaru

Membuat program aplikasi Sistem Rental VCD


Membuat Project Buat Project dengan nama VCD.pjx. Kemudian buat database rental.dbc dan tabel-tabel yang diperlukan : 1. Tabel Anggota.dbf

2. Tabel VCD.dbf

Erwinsyah,S.Kom

Basis Data 2

STMIK Banjarbaru

3. Tabel Peminjaman.dbf

4. Tabel Pengembalian.dbf

Erwinsyah,S.Kom

Basis Data 2 Membuat Form

STMIK Banjarbaru

Form Data Anggota Buat Form untuk perawatan data Anggota dengan nama Frm_Anggota.scx seperti di bawah ini, desain dapat anda sesuaikan dengan seleraaa anda gitu looh.

Form Properties. Nama Object Form1 Nama Property Nilai .T. Form Data Anggota 1 In top level Cari Gambarnya 1 ! A9999 tNo tNama ! tTgl 99/99/9999 oJenis cPekerjaan 2 Dropdown List tAlamat 3

Auto Center Caption ShowWindow Image 1 Picture Stretch Text 1 Format InputMask Name Text 2 Name Format Text 3 Name InputMask OptionGroup1 Name Combo 1 Name Style Text 4 Name Erwinsyah,S.Kom

Basis Data 2 Text 5 Name InputMask Text 6 Name Format Command 1 Caption Name Command 2 Caption Name Command 3 Caption Name Command 4 Caption Name Command 5 Caption Name Command 6 Caption Name Command 7 Caption Name Grid 1 Name AllowCellSelection RecordSource OptionGroup2 Name Shape 1 Curvature Shape 2 Curvature tTelepon 99999999999999 tCari ! \<Tambah bTambah \<Ubah bUbah \<Hapus bHapus \<Batal bBatal \<Simpan bSimpan K\<eluar bKeluar \<Cari bCari gAnggota F - False Anggota oCari 9 9

STMIK Banjarbaru

Grid 1. - klik kanan pada objek Grid - klik Builder - pilih tabel Anggota - pilih semua field yang ada pada tabel Anggota dari kotak Available Fields sehingga terisi kotak Selected Fields dengan cara klik tombol . - ok Grid.Column4.controlsource = iif(anggota.jnskelamin=1,"Laki-laki","Perempuan") Combo 1 - klik kanan pada objek ComboBox - klik Builder - pada Fill The List With pilih Data Entered By Hand - isi data pilihan pada kolom Column1 : - ok OptionGroup 1 - klik kanan pada objek OptionGroup - klik Builder - pada tabs Buttons isi Number of Button = 2 - isi pada kolom Caption : - ganti Option 1 menjadi Laki-laki - ganti Option 2 menjadi Perempuan - pada tabs Layout ganti button layout menjadi Horizontal

Erwinsyah,S.Kom

Basis Data 2 dan border style menjadi None ok

STMIK Banjarbaru

OptionGroup 2 - klik kanan pada objek OptionGroup - klik Builder - pada tabs Buttons isi Number of Button = 2 - isi pada kolom Caption : - ganti Option 1 menjadi No Anggota - ganti Option 2 menjadi Nama - pada tabs Layout ganti button layout menjadi Horizontal - dan border style menjadi None - ok Event-Event Form.Init :
* matikan objek thisform.tNo.Enabled= .F. thisform.tNama.Enabled= .F. thisform.tTgl.Enabled= .F. thisform.oJenis.Enabled= .F. thisform.oPekerjaan.Enabled= .F. thisform.tAlamat.Enabled= .F. thisform.tTelepon.Enabled= .F. thisform.bBatal.Enabled= .F. thisform.bSimpan.Enabled= .F. thisform.bTambah.Enabled= .t. thisform.bUbah.Enabled= .t. thisform.bHapus.Enabled= .t. thisform.bKeluar.Enabled= .t. thisform.bCari.Enabled= .t. thisform.tcari.SetFocus * aktifkan grid after rowcolchange thisform.gAnggota.AfterRowColChange

Form.Load :
* Buka Tabel sekaligus index USE anggota ORDER noanggota * buat variabel umum * sebagai tanda data lama atau data baru PUBLIC datalama,vnoang datalama=.f.

Form.Unload :
* tutup database CLOSE DATABASES all * hapus variabel datalama RELEASE datalama,vnoang

Erwinsyah,S.Kom

Basis Data 2 Text oJenis.click


thisform.oPekerjaan.SetFocus

STMIK Banjarbaru

Text cPekerjaan.click
thisform.tAlamat.SetFocus

Tombol Tambah.click :
* bukan data lama / data baru datalama=.f. * Variabel awal thisform.tNo.Value='' thisform.tNama.Value= '' thisform.tTgl.Value= {} thisform.oJenis.Value= 1 thisform.oPekerjaan.Value= '' thisform.tAlamat.Value= '' thisform.tTelepon.Value= '' * Aktifkan Objek thisform.tNo.Enabled= .t. thisform.tNama.Enabled= .t. thisform.tTgl.Enabled= .t. thisform.oJenis.Enabled= .t. thisform.oPekerjaan.Enabled= .t. thisform.tAlamat.Enabled= .t. thisform.tTelepon.Enabled= .t. thisform.bBatal.Enabled= .t. thisform.bSimpan.Enabled= .t. thisform.bTambah.Enabled= .F. thisform.bUbah.Enabled= .F. thisform.bHapus.Enabled= .F. thisform.bKeluar.Enabled= .F. thisform.bCari.Enabled= .F. *Kursor ke teks No Anggota thisform.tNo.SetFocus

Tombol Ubah.click :
*data lama = benar datalama=.t. *definisikan variabel no anggota yg lama vNoang=ALLTRIM(thisform.tNo.Value) thisform.tNo.Enabled= .t. thisform.tNama.Enabled= .t. thisform.tTgl.Enabled= .t. thisform.oJenis.Enabled= .t. thisform.oPekerjaan.Enabled= .t. thisform.tAlamat.Enabled= .t. thisform.tTelepon.Enabled= .t.

Erwinsyah,S.Kom

Basis Data 2
thisform.bBatal.Enabled= .t. thisform.bSimpan.Enabled= .t. thisform.bTambah.Enabled= .F. thisform.bUbah.Enabled= .F. thisform.bHapus.Enabled= .F. thisform.bKeluar.Enabled= .F. thisform.bCari.Enabled= .F. *Kursor ke teks No Anggota thisform.tNo.SetFocus

STMIK Banjarbaru

Tombol Hapus.click :
*buat variabel untuk messagebox lHapus=MESSAGEBOX('Apakah benar data dihapus?',4+48,'Konfirmasi') IF lHapus=6 && jika tombol Yes di tekan * lakukan penghapusan DELETE ENDIF * lakukan klik tombol batal thisform.bBatal.click * refresh grid/tabel buku thisform.gAnggota.Refresh

Tombol Batal.click :
thisform.Init * jalankan grid after rowcolchange thisform.gAnggota.AfterRowColChange

Tombol Simpan.click :
IF EMPTY(thisform.tNo.Value) MESSAGEBOX('No Anggota Wajib di isi !',16,'Konfirmasi') thisform.tNo.SetFocus RETURN .f. ENDIF IF EMPTY(thisform.tNama.Value) MESSAGEBOX('Paling tidak anda punya nama dong !',16,'Konfirmasi') thisform.tNama.SetFocus RETURN .f. ENDIF IF datalama && jika data lama = benar IF ALLTRIM(thisform.tNo.Value) <> vNoang && Jika No Anggota di ubah * cek no anggota SEEK ALLTRIM(thisform.tNo.Value) IF FOUND() && jika no anggota ada MESSAGEBOX('No Anggota sudah ada !',16,'Konfirmasi') thisform.tNo.SetFocus RETURN .f. ENDIF ENDIF

Erwinsyah,S.Kom

Basis Data 2

STMIK Banjarbaru

*lakukan perubahan data Anggota REPLACE noanggota WITH thisform.tNo.Value,; namaanggota WITH thisform.tNama.Value,; tgllahir WITH thisform.tTgl.Value,; jnskelamin WITH thisform.ojenis.Value,; pekerjaan WITH thisform.oPekerjaan.Value,; alamat WITH thisform.tAlamat.Value,; telepon WITH thisform.tTelepon.Value FOR noanggota=vNoang ELSE && jika data baru * * cek no anggota SEEK ALLTRIM(thisform.tNo.Value) IF FOUND() && jika no anggota ada MESSAGEBOX('No Anggota sudah ada !',16,'Konfirmasi') Thisform.tNo.SetFocus RETURN .f. ELSE * pindahan * beri spase kosong dan lakukan penyimpanan APPEND BLANK REPLACE noanggota WITH thisform.tNo.Value,; namaanggota WITH thisform.tNama.Value,; tgllahir WITH thisform.tTgl.Value,; jnskelamin WITH thisform.ojenis.Value,; pekerjaan WITH thisform.oPekerjaan.Value,; alamat WITH thisform.tAlamat.Value,; telepon WITH thisform.tTelepon.Value ENDIF ENDIF * grid/tabel di refresh thisform.gAnggota.Refresh * lakukan klik tombol batal thisform.bBatal.Click

Tombol Keluar.click :
Release thisform

Grid Anggota.AfterRowColChange :
LPARAMETERS nColIndex * tampilkan data dari grid ke dalam textbox * variabel form = field tabel anggota thisform.tNo.Value=noanggota thisform.tNama.Value= namaanggota thisform.tTgl.Value= tgllahir thisform.oJenis.Value= jnskelamin thisform.oPekerjaan.Value= pekerjaan thisform.tAlamat.Value= alamat thisform.tTelepon.Value= telepon

Option Group oCari.Click :


SET FILTER TO GO TOP thisform.gAnggota.Refresh

Erwinsyah,S.Kom

Basis Data 2
thisform.tCari.Value='' thisform.tCari.SetFocus

STMIK Banjarbaru

Text tCari.InteractiveChange :
IF EMPTY(this.Value) SET FILTER TO GO top thisform.gAnggota.Refresh ENDIF

Tombol Cari.Click :
IF thisform.oCari.Value=1 LOCATE FOR noanggota = ALLTRIM(thisform.tCari.Value) IF FOUND() thisform.gAnggota.SetFocus ELSE MESSAGEBOX('No Anggota yang dicari tidak ada',16,'Konfirmasi') thisform.tcari.SetFocus RETURN .f. ENDIF ELSE SET FILTER TO ALLTRIM(UPPER(thisform.tCari.Value)) $ ; ALLTRIM(UPPER(namaanggota)) thisform.gAnggota.Refresh ENDIF thisform.gAnggota.AfterRowColChange

Erwinsyah,S.Kom

Basis Data 2

STMIK Banjarbaru

Akhirnya selesai sudah form Data Anggota yang kita buat, coba jalankan. Klik RUN (gambar tanda seru) pada toolbar. Testing semua tombol yang ada, cek apakah masih ada yang ERROR kalau masih ada pesan kesalahan, cek lagi baris perintah yang sudah diketikkan, mungkin ada yang tertinggal atau ada yang salah ketik. Tetapi kalau tidak ada pesan kesalahan dengan kata lain Form yang kita buat benar semua maka saya ucapkan SELAMAT kepada anda. Anda sudah berhasil membuat Form Data Anggota ! Sebagai balasan atas keberhasilan anda membuat Form Data Anggota, maka untuk Form Data VCD saya percayakan kepada anda untuk membuatnya. Dengan mencontoh Form Data Anggota yang sudah anda buat. Semoga Berhasil. God Luck!

Membuat Report/Laporan Daftar Anggota Karena Report daftar anggota ini hanya memerlukan sebuah tabel saja yaitu tabel Anggota itu sendiri maka untuk lebih gampangnya anda buat melalui Quick Report. Buat File Report yang baru. Pada menu Report pilih dan klik Quick Report kemudian cari tabel yang akan kita buat Reportnya yakni tabel Anggota. Klik OK untuk selesai dari pembuatan file Report.

Erwinsyah,S.Kom

10

Basis Data 2

STMIK Banjarbaru

Desain yang bagus atau anda bisa mencontoh dari gambar di atas. Kalau sudah selesai, coba jalankan dengan meng-klik menu File Print Preview. Lihat hasilnya. Thats Ok!! Menjalankan Report melalui Form Buat form baru kemudian desain tampilan sebagai berikut :

Form Properties. Nama Object Form1 Nama Property Nilai .T. Cetak Daftar Anggota 1 In top level Laporan Daftar Anggota 14 Media oMedia bCetak \<Cetak bKeluar \<Keluar

Auto Center Caption ShowWindow Label1 Caption Font Label2 Caption OptionGroup1 Name Command1 Name Caption Command2 Name Caption

OptionGroup 1 - klik kanan pada objek OptionGroup - klik Builder - pada tabs Buttons isi Number of Button = 2 - isi pada kolom Caption : - ganti Option 1 menjadi Layar - ganti Option 2 menjadi Printer - pada tabs Layout ganti button layout menjadi Horizontal - dan border style menjadi None - ok

Erwinsyah,S.Kom

11

Basis Data 2 Event-event Form.Load :


USE anggota ORDER noanggota

STMIK Banjarbaru

Form.Unload :
CLOSE DATABASES all

Tombol Cetak.Click :
IF thisform.oMedia.Value = 1 && Jika yang dipilih Layar * Tampilkan Laporan = Preview REPORT FORM rpt_anggota preview ELSE * Cetak Laporan ke Printer REPORT FORM rpt_anggota TO PRINTER prompt ENDIF

Tombol Keluar.Click :
RELEASE thisform

Erwinsyah,S.Kom

12

Basis Data 2

STMIK Banjarbaru

Untuk Report Daftar VCD sekali lagi Saya percayakan kepada anda untuk membuatnya sendiri, contohnya yaaa itu tadi. Itu tuh.. report Daftar Anggota.. yang berfungsi untuk laporan Daftar VCD... Gampang khan.... Membuat Form Peminjaman VCD Sekarang saatnya kita buat Form Peminjaman VCD seperti pada gambar di bawah ini. Tetapi sebelumnnya terlebih dahulu siapkan segelas kopi susu panas untuk menemani kita dalam membuat form ini biar pikiran kita santai. Just Rilex !!!

Apakah kopi susu hangatnya sudah disiapkan? Atau anda kehabisan kopi, kalau begitu tidak apaapa. Teh hangat juga boleh... hehehehe... Lanjut !!! Konsep Form Peminjaman VCD yang akan kita buat ini adalah konsep sederhana form transaksi yang pengisian data vcd melalui bantuan inputan kemudian di tampung ke dalam sebuah grid/tabel dengan bantuan tombol Tambah. Dan digabung dengan teknik pencarian data melalui bantuan sebuah form baru dengan menekan tombol keyboard F4. Jadi kita coba saja yaaaa untuk membuatnya, mumpung pikiran kita masih gress.. Oke!!! Form Properties. Nama Object Form1 Image 1 Text 1 Nama Property Caption ShowWindow Picture Stretch Name Nilai Form Peminjaman VCD 1 In top level Cari Gambarnya 1 tNota 13

Erwinsyah,S.Kom

Basis Data 2 Text 2 Text 3 Text 4 Text 5 Text 6 Text 7 Text 8 Text 9 Command 1 Command 2 Command 3 Command 4 Command 5 Command 6 Command 7 Command 8 Grid 1 Shape 1 Shape 2 Name Name Name Enabled Name Enabled Name Enabled Name Name Enabled Name Enabled Caption Name Caption Name Caption Name Caption Name Caption Name Caption Name Caption Name Caption Name Name ColumnCount Curvature Curvature tTgl tNo tNama .F. = False tJmlPinjam .F. = False tTglBalik .F. = False tKode tJudul .F. = False tHarga .F. = False \<Tambah bTambah \<Ubah bUbah \<Bersih bBersih \<Hapus bHapus \<Cetak bCetak \<Batal bBatal \<Simpan bSimpan K\<eluar bKeluar gPinjam 3 9 9

STMIK Banjarbaru

Grid 1 - Pada Column1.Header isi Kode VCD - Pada Column2.Header isi Judul - Pada Column3.Header isi Harga Event-event Form.Load
* buka semua tabel yang diperlukan USE vcd IN 0 USE anggota IN 0 USE peminjaman IN 0

Erwinsyah,S.Kom

14

Basis Data 2
* buat tabel sementara berbentuk cursor CREATE CURSOR temppinjam (; kdvcd c(6),; judul c(50),; harga n(8)) IF !USED('temppinjam') USE temppinjam IN 0 ENDIF * buat variabel public PUBLIC ubah ubah=.f. PUBLIC nNota,mNo,mKode mNo=' ' mKode=' '

STMIK Banjarbaru

Form.Unload
CLOSE DATABASES all RELEASE ubah RELEASE nNota,mNo,mKode

Form.Init
thisform.tnota.Enabled= .T. thisform.tno.Enabled= .T. thisform.ttgl.Enabled= .T. thisform.tkode.Enabled= .T. thisform.btambah.Enabled= .F. thisform.bhapus.Enabled= .F. thisform.bubah.Enabled= .F. thisform.bbersih.Enabled= .F. thisform.bsimpan.Enabled= .F. thisform.bbatal.Enabled= .F. thisform.bcetak.Enabled= .F. thisform.ttgl.Value=DATE() mNo='' mKode='' thisform.tno.Value = '' thisform.tnama.Value = '' thisform.ttglBalik.Value = '' thisform.tjml.Value=0 * Buat Nomor Transaksi Otomatis SELECT peminjaman SET ORDER TO tag nopinjam GO BOTTOM vNomor=RIGHT(nopinjam,4) nPinjam = PADL(ALLTRIM(STR(VAL(vNomor)+1)),4,'0') * DTOS = Date To String thisform.tnota.Value=LEFT(DTOS(DATE()),6)+npinjam thisform.ttgl.SetFocus SELECT temppinjam

Erwinsyah,S.Kom

15

Basis Data 2 Text.tNo.GotFocus


this.Value=mNo

STMIK Banjarbaru

Text.tNoAnggota.KeyPress
LPARAMETERS nKeyCode, nShiftAltCtrl DO Case CASE nKeyCode=-3 && => tombol F4 DO FORM frm_cari_anggota CASE nKeyCode = 13 && => tombol ENTER NODEFAULT IF EMPTY(thisform.tno.Value) MESSAGEBOX('No Anggota masih kosong',16,'Konfirmasi') thisform.tno.SetFocus RETURN .f. ENDIF SELECT anggota SET ORDER TO noanggota SEEK ALLTRIM(thisform.tno.Value) IF !FOUND() MESSAGEBOX('No Anggota tidak ada',16,'Konfirmasi') thisform.tno.SetFocus RETURN .f. ENDIF thisform.tNama.Value=namaanggota thisform.tkode.Value = '' thisform.tjudul.Value = '' thisform.tharga.Value = 0 thisform.tnota.Enabled= .F. thisform.tno.Enabled= .F. thisform.ttgl.Enabled= .F. thisform.btambah.Enabled= .T. thisform.bubah.Enabled= .T. thisform.bbersih.Enabled= .T. thisform.bhapus.Enabled= .T. thisform.bsimpan.Enabled= .T. thisform.bbatal.Enabled= .T. thisform.bcetak.Enabled= .T. thisform.tkode.setfocus ENDCASE

Text.tKode.GotFocus
this.Value=mKode

Text.tKode.KeyPress
DO CASE CASE nKeyCode=-3 && => tombol F4 NODEFAULT DO FORM frm_cari_vcd CASE nKeyCode = 13 NODEFAULT

Erwinsyah,S.Kom

16

Basis Data 2
IF EMPTY(thisform.tkode.Value) MESSAGEBOX('Kode VCD masih kosong',16,'Konfirmasi') thisform.tkode.SetFocus RETURN .f. ENDIF SELECT vcd SET ORDER TO kdvcd SEEK ALLTRIM(thisform.tkode.Value) IF !FOUND() MESSAGEBOX('Kode VCD tidak ada',16,'Konfirmasi') thisform.tkode.SetFocus RETURN .f. ENDIF thisform.tjudul.Value=judul thisform.tharga.Value=hrgsewa thisform.btambah.SetFocus ENDCASE

STMIK Banjarbaru

Tombol Tambah.Click
SELECT vcd LOCATE FOR kdvcd=ALLTRIM(thisform.tkode.Value) IF stock < 1 MESSAGEBOX('Stock VCD tidak ada',16,'Konfirmasi') thisform.bbersih.Click RETURN .f. ENDIF SELECT temppinjam LOCATE FOR kdvcd=ALLTRIM(thisform.tkode.Value) IF !FOUND() IF ubah REPLACE kdvcd WITH thisform.tkode.Value,; judul WITH thisform.tjudul.Value,; harga WITH thisform.tharga.Value FOR kdvcd=mkode ELSE APPEND BLANK REPLACE kdvcd WITH thisform.tkode.Value,; judul WITH thisform.tjudul.Value,; harga WITH thisform.tharga.Value ENDIF ELSE MESSAGEBOX('Kode VCD sudah ada dalam daftar',16,'Konfirmasi') thisform.bbersih.Click RETURN .f. ENDIF thisform.bbersih.Click thisform.gpinjam.Refresh

Tombol Ubah.Click
ubah=.t. SELECT temppinjam mkode=kdvcd thisform.tjudul.Value=judul thisform.tharga.Value=harga thisform.tkode.SetFocus

Erwinsyah,S.Kom

17

Basis Data 2 Tombol Bersih.Click


ubah=.f. mkode=' ' thisform.tkode.Value='' thisform.tjudul.Value='' thisform.tharga.Value=0 thisform.tkode.SetFocus

STMIK Banjarbaru

Tombol Hapus.Click
lhapus=MESSAGEBOX('Apakah benar data dihapus?',4+48,'Konfirmasi') IF lhapus=6 SELECT temppinjam DELETE ENDIF thisform.bbersih.Click thisform.gpinjam.Refresh

Grid gPinjam.Refresh
LOCAL jmlpinjam jmlpinjam=0 COUNT FOR RECNO()>0 TO jmlpinjam thisform.tjml.Value=jmlpinjam thisform.ttglBalik.Value=thisform.ttgl.Value + thisform.tjml.value

Grid gPinjam.Column1.Text1.DblClick
ubah=.t. SELECT temppinjam mkode=kdvcd thisform.tjudul.Value=judul thisform.tharga.Value=harga thisform.tkode.SetFocus

Tombol Simpan.Click
IF RECCOUNT('temppinjam')<=0 && jika tabel/grid data pinjam vcd kosong MESSAGEBOX('Data Peminjaman VCD tidak ada',16,'Konfirmasi') thisform.tkode.SetFocus RETURN .f. ELSE SELECT temppinjam GO top DO WHILE !EOF() mkode = temppinjam.kdvcd SELECT peminjaman APPEND BLANK REPLACE nopinjam WITH thisform.tnota.Value,; tglpinjam WITH thisform.ttgl.Value,; tglhrsbalik WITH thisform.ttglBalik.Value,; noanggota WITH thisform.tno.Value,; kdvcd WITH temppinjam.kdvcd,;

Erwinsyah,S.Kom

18

Basis Data 2

STMIK Banjarbaru
stts WITH .f. && jika .f. = dipinjam, .t. = sudah balik SELECT vcd SET ORDER TO kdvcd SEEK ALLTRIM(mkode) IF FOUND() && cari kd vcd di tabel vcd * kurangkan stok REPLACE stock WITH stock - 1 ENDIF SELECT temppinjam SKIP

ENDDO ENDIF

thisform.bbatal.click

Tombol Batal.Click
thisform.Init SELECT temppinjam DELETE ALL thisform.gpinjam.Refresh

Tombol Cetak.Click
nnota=ALLTRIM(thisform.tnota.Value) thisform.bsimpan.Click SELECT anggota SET ORDER to noanggota SELECT vcd SET ORDER TO kdvcd SELECT peminjaman * Relasikan data SET RELATION TO noanggota INTO anggota ADDITIVE SET RELATION TO kdvcd INTO vcd additive * Panggil Report REPORT FORM rpt_pinjam FOR nopinjam=nnota PREVIEW * TUtup relasi yang sudah dibuat SET RELATION OFF INTO anggota SET RELATION OFF INTO vcd

Tombol Keluar.Click
RELEASE thisform

Erwinsyah,S.Kom

19

Basis Data 2 Membuat Form Bantuan pencarian Data Anggota.

STMIK Banjarbaru

Pada form Peminjaman pada Text No Anggota terdapat perintah Do Form frm_cari_anggota. Perintah tersebut menjalankan form baru cari anggota seperti di bawah ini.

Untuk mencari anggota bisa dicari lewat mengetikkan nama anggota pada textbox nama, kemudian letakkan kursor pada No Anggota dan tekan Enter. Maka No Anggota yang dipilih akan dibaca ke dalam textbox No Anggota pada form Peminjaman. Begitulah proses yang di lakukan oleh form pencarian data anggota. Form Properties: Nama Object Form1 Text1 Command1 Grid1 Event-event: Text tNama.InteractiveChange
SELECT anggota SET FILTER TO LOCATE FOR ALLTRIM(UPPER(thisform.tnama.Value)) $ UPPER(namaanggota) IF FOUND() SET FILTER TO ALLTRIM(UPPER(thisform.tnama.Value)) $ UPPER(namaanggota) ELSE SET FILTER TO

Nama Property Caption ShowWindow Caption Caption Name RecordSource

Nilai Cari Data Anggota 1 In top level tNama \<Keluar bKeluar Anggota

Erwinsyah,S.Kom

20

Basis Data 2
GO top ENDIF thisform.grid1.Refresh

STMIK Banjarbaru

Grid1.Column1.Text1.KeyPress
LPARAMETERS nKeyCode, nShiftAltCtrl IF nKeyCode = 13 NODEFAULT SELECT anggota mNo = anggota.noanggota SCATTER memvar RELEASE thisform ENDIF

Tombol Keluar
RELEASE thisform

Simpan dengan nama file : frm_cari_anggota.scx dan .... Selesailah sudah pembuatan form transaksi Peminjaman VCD. Namun form Peminjaman VCD yang kita buat ini masih amat sangat sederhana jadi anda disarankan untuk menambah atau merubah properti form dan konsep form peminjaman yang sudah kita buat ini menjadi lebih bagus dan lebih canggih lagi.

Anda bisa juga membuat form pencarian Data VCD seperti gambar di bawah ini dan simpan file formnya dengan nama frm_cari_vcd.scx, seperti pembuatan form pencarian Data Anggota. Dan masih banyak lagi yang dapat anda kembangkan dari form Peminjaman yang sudah kita buat. Saya yakin sekali, anda pasti bisa. Betulll tidaaaaa. Semangat!!

Erwinsyah,S.Kom

21

Basis Data 2 Membuat Report untuk Nota Peminjaman

STMIK Banjarbaru

Untuk membuat report nota peminjaman kita memerlukan beberapa tabel yaitu tabel VCD, tabel Anggota dan tabel Peminjaman itu sendiri. Pada Tombol Cetak di dalam form Peminjaman terdapat perintah Set Relation to.... itu adalah perintah untuk merelasikan/menghubungkan beberapa tabel dengan field kunci. Tabel Anggota dihubungkan ke dalam tabel Peminjaman dengan menggunakan field kunci No Anggota, begitu juga tabel VCD dihubungkan ke dalam tabel Peminjaman melalui field kunci Kode VCD. Coba kita lihat kembali perintah yang terdapat dalam tombol cetak
SELECT anggota SET ORDER to noanggota SELECT vcd SET ORDER TO kdvcd SELECT peminjaman * Relasikan data SET RELATION TO noanggota INTO anggota ADDITIVE SET RELATION TO kdvcd INTO vcd additive * Panggil Report REPORT FORM rpt_pinjam FOR nopinjam=nnota PREVIEW * TUtup relasi yang sudah dibuat SET RELATION OFF INTO anggota SET RELATION OFF INTO vcd

Sekarang kita buat report Nota Peminjaman dengan nama rpt_pinjam seperti gambar di bawah ini.

Buat Group dan Summary pada report dengan cara klik menu Report Optional Bands. Pada tab Optional Bands klik centang kotak Report has summary bands dilanjutkan membuat data Grouping, Erwinsyah,S.Kom 22

Basis Data 2

STMIK Banjarbaru

klik tab Data Grouping, klik tombol ADD kemudian pada kotak Expression ketik .T. kemudian klik tombol Ok dan Ok. Selesai.

Buat field No Transaksi, Tgl Pinjam, No Anggota, dan Kode VCD dari tabel peminjaman. Sebagai contoh untuk membuat field No Transaksi. Klik Field pada Report Control Toolbar letakkan pada daerah Group Header agar data diulang sesuai dengan data groupnya. Kemudian pada kotak Expression ketik peminjaman.nopinjam yang artinya nama_tabel.nama_field yang berarti mengambil data dari tabel peminjaman. Begitu seterusnya untuk field Tgl PInjam, No Anggota dan Kode VCD.

Erwinsyah,S.Kom

23

Basis Data 2

STMIK Banjarbaru

Untuk Field Nama anda ketikkan pada kotak Expression anggota.namaanggota yang artinya mengambil data dari tabel anggota. Kemudian pada field Judul dan harga diambil dari tabel VCD. Ketikkan perintah ini pada kotak Expressiona vcd.judul.

Dan yang terakhir untuk Total Bayar anda copy saja dari textfield HrgSewa kemudian letakkan pada daerah summary, kemudian kli 2x dan tampil jendela field properties. Pada tab Calculate pilih Calculation Type nya dengan perintah SUM. Kalo sudah kli tombol OK, dan selesai lah sudah.

Dan hasil pencetakannya ditampilkan di layar seperti gambar berikut.

Erwinsyah,S.Kom

24

Basis Data 2 Membuat Form Pengembalian VCD

STMIK Banjarbaru

Form Pengembalian vcd berfungsi untuk proses pengembalian vcd. Ingatkah anda pada saat membuat form Peminjaman. Pada tombol simpan terdapat perintah untuk menyimpan data kedalam tabel peminjaman. Dan pernahkah anda bertanya mengapa pada field stts disimpan dengan nilai .f. ? Kita lihat sebentar listing tombol simpan pada form Peminjaman v.cd ...............
SELECT peminjaman APPEND BLANK REPLACE nopinjam WITH thisform.tnota.Value,; tglpinjam WITH thisform.ttgl.Value,; tglhrsbalik WITH thisform.ttglBalik.Value,; noanggota WITH thisform.tno.Value,; kdvcd WITH temppinjam.kdvcd,; stts WITH .f. && jika .f. = dipinjam, .t. = sudah balik

Field stts pada tabel peminjaman berfungsi sebagai penanda vcd yang masih dipinjam atau vcd yang sudah dikembalikan. Nilai stts = .f. berarti vcd tersebut masih dipinjam sedangkan nilai stts = .t. nantinya berarti vcd sudah dikembalikan. Nah konsep form pengembalian nanti mengacu pada field stts yang bernilai .f.. Hanya vcd yang masih dipinjam saja yang akan diproses di pengembalian. Bagaimana? Pahamkah anda? Saya yakin anda sudah memahaminya, jika sudah paham mulailah sekarang membuat form Pengembalian VCD.. Ayoo...

Erwinsyah,S.Kom

25

Basis Data 2

STMIK Banjarbaru

Desain form bisa anda ambil contoh dari form Peminjaman Buku. Anda modif sedikit maka selesailah form pengembalian buku yang sudah anda buat.. Waaah, ternyata anda sudah begitu lihai dalam membuat program, senang sekali rasanya.... Selamat sekali lagi untuk anda. Membuat Menu Utama Buatlah Menu dengan nama menuutama seperti gambar di bawah ini :

Dengan desain menu sebagai berikut :


Menu Utama

Master VCD Anggota

Transaksi Peminjaman Pengembalian

Laporan Daftar VCD Daftar Anggota Peminjaman Pengembalian

Selesai

Erwinsyah,S.Kom

26

Basis Data 2 Sub Menu Data

STMIK Banjarbaru

Untuk menjalankan form gunakan perintah Do Form nama_formnya sedangkan untuk menjalankan report gunakan perintah Report Form nama_reportnya Preview. Apabila sudah selesai kemudian klik menu View General Options, klik centang kotak Top level form klik Ok, agar menu dijalankan pada mode Top Level. Simpan file Menu dan beri nama menuku. Langkah terakhir klik menu Menu Generate, klik tombol Generate, selesai. Lakukan Generate menu apabila nanti anda memperbaiki isi menu. Membuat Form Utama Form utama digunakan sebagai layar utama untuk memperindah tampilan program aplikasi yang akan kita buat dan simpan dengan nama frm_utama. Membuat form utama seperti halnya anda membuat form biasa, kemudian desainlah sesuai dengan kreasi anda sendiri, sebagai contoh anda bisa lihat seperti gambar di bawah.

Form Properties : Nama Object Form1 Nama Property Caption ShowWindow WindowState Nilai Program Rental VCD 2 As top level 2 Maximized

Erwinsyah,S.Kom

27

Basis Data 2 Event-event Form.Load


* jalankan menu di atas form utama DO menuku.mpr WITH thisform,.t.

STMIK Banjarbaru

Form.Init
* menyembunyikan layar utama foxpro _screen.Hide()

Form.Destroy
* hapus semua kejadian CLEAR EVENTS

Membuat Program Utama Program utama digunakan sebagai pemanggil dari program aplikasi yang kita buat, yang biasanya berisi parameter-parameter set atau setingan program aplikasi kita nantinya. Pada tab code pilih programs klik tombol New. Secara sederhana isi dari program utama adalah seperti contoh di bawah ini.
* parameter set yang kita inginkan SET TALK OFF SET DATE DMY SET DELETE ON SET CENTURY on SET SAFETY OFF SET STATUS OFF SET ECHO OFF * jalankan form utama DO FORM frm_utama * lakukan pembacaan events-events READ events

Kemudian simpan dengan nama rental.prg, sekarang coba anda perhatikan apakah file program yang baru kita buat tadi nama filenya bercetak tebal? Jika belum maka buatlah menjadi cetak tebal dengan cara mengklik kanan nama file programnya, pilih dan klik Set Main. Jika sudah bercetak tebal maka kita lanjutkan Lanjut !!! Membuat Exe Program Langkah terakhir dari pembuatan program aplikasi Rental VCD ini adalah dengan meng-compile atau menjadikannya exe program. Pada jendela project klik Build maka tampil jendela Build Options, pilih sesuai dengan gambar di bawah.

Erwinsyah,S.Kom

28

Basis Data 2

STMIK Banjarbaru

Kemudian klik OK. Beri nama file atau biarkan namafilenya tetap seperti nama projectnya, klik tombol Save untuk menyimpan file exe. Tunggu proses build apabila tampil pesan kesalahan cari letak kesalahannya, dan cek kembali pekerjaan-pekerjaan yang sudah kita buat tadi. Apabila tidak ada kesalahan maka selesailah sudah pembuatan program Rental VCD kita ini. Sekarang mari kita coba dengan cara menjalankan langsung dari file Exenya. Selamat dan Sukses!! Terima kasih, kritik dan saran dapat anda layangkan ke email : ewin007@yahoo.com.

Erwinsyah,S.Kom

29

Anda mungkin juga menyukai