BAB I
PENGENALAN MICROSOFT VISUAL FOXPRO
I.1. Sekilas Tentang Visual Foxpro
Microsoft Visual Foxpro merupakan suatu program aplikasi yang menerapkan sistem manajemen database relasional yang biasa disebut RDBMS (Relational Database Manajemen System).
Pengertian database sendiri menurut kamus komputer (Microsoft Press, ElexMedia Komputindo,1991) adalah segala hal yang berhubungan dengan pengolahan data. Atau menurut Ir. Hartanto Kristanto dalam bukunya Konsep dan Perancangan Database menyebutkan bahwa database adalah kumpulan file – file yang saling berelasi yang ditunjukkan dengan kunci dari tiap file yang ada.
I.2. Mengenal Foxpro
Microsoft Visual Foxpro telah memiliki beberapa versi mulai dari versi 6.0 sampai yang sekarang versi 9.0. dan yang akan kita gunakan dalam modul kita kali ini adalah versi 9.0.
Cara mengaktifkan Visual Foxpro :
Klik Menu Start, Program, Ms. Visual Foxpro 9.0
Atau bisa juga langsung double klik pada icon Visual Foxpro 9.0 yang ada pada desktop
A. Jendela Visual Foxpro
Keterangan :
1. Menu Bar, berisi pulldown menu dalam menjalankan fungsi – fungsi di Visual Foxpro
2. ToolBar, berupa icon yang mewakili suatu fungsi
3. Jendela Project Manager, digunakan untuk mengorganisasikan file – file yang sedang dikerjakan
4. Jendela Command, digunakan untuk menuliskan perintah – perintah berbasis teks
B. Project Manager
Untuk membuat sebuah aplikasi atau program kita bisa membuatnya dalam sebuah Project. Cara pembuatan Project adalah sebagai berikut :
Klik Menu File, pilih New
Klik option Project, klik New File
Lalu Akan terbuka kotak dialog penyimpanan Tentukan letak Folder penyimpanan
Beri nama projectnya
Sehingga terbuka sebuah Project Manager
Gambar I.2 Project Manager
BAB II
PEMBUATAN APLIKASI
II.1 Pembuatan Database dan Table
Langkah – langkah pembuatan Database : Klik pada Database, klik New, New Database
Pilih folder penyimpanan dan ketik nama databasenya, Klik Save
Pilih folder penyimpanan dan ketik nama tablenya, Klik Save
Klik pada Nama Tables, klik Modify untuk merancang field yang dibutuhkan Pada Kotak Table Designer, ketikkan nama – nama field yang dibutuhkan.
Te nt uk an
juga tipe data danjangkauan dari masing – masing field
Penulisan nama field tidak boleh menggunakan spasi, bisa terdiri dari huruf dan angkan tetapi harus dimulai dengan huruf, tidak boleh mengandung karakter khusus dan sebaiknya jangan terlalu panjang untuk memudahkan kita mengingatnya
La lu
klik Ok. Jika kita ingin mengisi secara langsung datanya maka pilih Yes jika tidak NO
Latihan :
Buat database dengan nama data_mhs Buat Tabel – table dibawah ini :
TABEL : table_mhs Isikan 5 Record
TABEL : mata_kul Isikan 5 Record
Field Name
Type Width Ket
Nim Character 8 PK
TABEL : Nilai
Isikan 5 Record, kecuali Field Nilai dan Grade
Command Windows :
Untuk Mengisi Field Nilai melalui command window
Repl All Nilai with ((0.1*Absen) + (0.2*Tugas) + (0.3*UTS) + (0.4*UAS)) Untuk Mengisi Field Grade melalui command window
Repl All Grade with iif(nilai < 60,"D",iif( nilai < 70,"C",iif(nilai < 80,"B","A"))) II. 2. Pembuatan Form
Langkah – langkah pembuatan Form :
Klik tab Document, klik Form, Klik New, New Form Field
Name
Type Width Ket
Kd_mk Character 3 PK
Nm_mk Character 30 Jml_sks Numeric 4
Field Name
Type Width Ket
Pilih folder penyimpanan dan ketik nama Formnya, Klik Save
Jika Kita akan membuat sebuah form yang datanya diambil dari sebuah tabel kita bisa gunakan data environment.
Klik kanan pada form, Data Environment, pilih tabel nya, klik ok, klik close
Kemudian Drag Fields yang ada di data environment, atur letak nya sesuai keinginan Dalam pembuatan Form kita bisa menggunakan objek – objek yang ada pada toolbox jika dibutuhkan
Latihan :
Buat Lah FORM Mahasiswa
Pada Form Kosong, Klik Kanan pilih Data Environment, masukan semua field ke form
Buat command botton yang dibutuhkan Rubah properties Name pada command botton
Object : Form Procedure : Load close databases
close table all close indexes
set defa to c:\mahasiswa
use table_mhs set order to tag nim
Object : Form Procedure : Activate thisform.BackColor=RGB(255,128,128) thisform.tdkaktif()
Buat method Aktif, tdkaktif dan bersih
Object : Form Procedure : Aktif thisform.txtjurusan.Enabled=.T.
thisform.txtNama.Enabled=.T. thisform.txtNim.Enabled=.T.
Object : Form Procedure : tdkaktif thisform.txtjurusan.Enabled=.f. thisform.txtNama.Enabled=.f. thisform.txtNim.Enabled=.f.
NAVIGATOR Object : CmdFirst Procedure : Click
go top
Object : CmdPrev Procedure : Click SKIP -1
if bof() go top
messagebox("Udah Di awal record Nich !!",64,"Info") endif
thisform.Refresh()
Object : CmdNext Procedure : Click skip
if eof()
go bottom
messagebox("Udah Di akhir record Nich !!",64,"Info") ENDIF
thisform.refresh
Object : CmdLast Procedure : Click go bottom
messagebox("Udah Di akhir record Nich !!",64,"Info") thisform.Refresh()
Command
Object : CmdAdd Procedure : Click thisform.aktif()
APPEND BLANK
Object : CmdSave Procedure : Click replace nim WITH thisform.txtnim.Value replace nama WITH thisform.txtnama.Value replace jurusan WITH thisform.txtjurusan.Value
thisform.tdkaktif() thisform.Refresh()
Object : Cmdbrowse Procedure : Click Browse
Object : CmdDelete Procedure : Click
pesan=messagebox("Apakah yakin akan dihapus?",32+1,"Pesan") if pesan=1
skip
go bottom dele pack endif
thisform.refresh
Object : CmdExit Procedure : Click thisform.release
Pada Form Kosong, Klik Kanan pilih Data Environment, masukan semua field ke form
Buat command botton yang dibutuhkan
Buat Grid, klik kanan Builder, masukan semua field dari tabel matakuliah Rubah properties Name pada command botton
Buat Listing Sama dengan Form Mahasiswa Pada Form Load gunakan Tabel matakuliah Buat Method baru dengan nama Tampil
Object : Form Procedure : Tampil
With thisform
.grid1.recordsource="mata_kul" .grid1.columncount=3
.grid1.column1.controlsource="mata_kul.kd_mk" .grid1.column2.controlsource="mata_kul.nm_mk" .grid1.column3.controlsource="mata_kul.jml_sks"
.grid1.column1.header1.caption="Kode Matakuliah" .grid1.column2.header1.caption="Nama Matakuliah" .grid1.column3.header1.caption="Jumlah SKS"
Endwith
Catatan: Pada listing program record navigator tambahkan beberapa listing sbb:
cmdfirst & cmdlast thisform.tampil( ) dibawah go top/go bottom
cmdprev & cmdnext thisform.tampil( ) & thisform.grid1.setfocus dibawah endif
Object : CmdAdd Procedure : Click thisform.aktif()
thisform.txtJml_sks.Value=0 thisform.txtKd_mk.Value="" thisform.txtNm_mk.Value="" thisform.txtkd_mk.SetFocus() thisform.Refresh()
Object : CmdSave Procedure : Click SELECT mata_kul
SET ORDER TO tag kd_mk
SEEK ALLTRIM(thisform.txtKd_mk.Value) IF FOUND()
replace jml_sks WITH thisform.txtJml_sks.Value thisform.Refresh()
ELSE
APPEND BLANK
replace kd_mk WITH thisform.txtkd_mk.Value replace nm_mk WITH thisform.txtNm_mk.Value replace jml_sks WITH thisform.txtJml_sks.Value thisform.Refresh()
seek alltrim (thisform.txtcari.value) with thisform
if found()
.txtkd_mk.value=mata_kul.kd_mk .txtnm_mk.value=mata_kul.nm_mk .txtjml_sks.value=mata_kul.jml_sks .grid1.setfocus
else
messagebox("Data tidak ditemukan",64,"Cari data") .txtcari.setfocus
endif endwith
Buatlah Form berikut ini : FORM NILAI
close table all close index close all
set defa to c:\mahasiswa
select 1 use table_mhs set order to tag nim
select 2 use mata_kul
set order to tag kd_mk
select 3 use table_nilai
Object : CboNim Procedure : Click
with thisform sele 1
set order to tag nim
seek alltrim(.cbonim.value)
sele 2
set order to tag kd_mk
Object : CmdAdd Procedure : Click thisform.aktif()
thisform.txtJml_sks.Value=0 thisform.txtKd_mk.Value="" thisform.txtNm_mk.Value="" thisform.txtkd_mk.SetFocus() thisform.Refresh()
Object : CmdSave Procedure : Click sele 3
appe blan
replace nim WITH thisform.cbonim.Value replace kd_mk WITH thisform.cbokd_mk.Value replace absen WITH thisform.txtabsen.Value replace tugas WITH thisform.txttgs.Value replace uts WITH thisform.txtuts.Value
replace uas WITH thisform.txtuas.Value replace nilai WITH thisform.txtnilai.Value replace grade WITH thisform.txtgrade.Value thisform.Refresh()
Object : Cmdbrowse Procedure : Click Browse
II.3. Pembuatan Local View
Langkah – langkah pembuatan Local View :
Klik Tab All, klik tanda + pada Database, Klik Local Views, Klik New, Klik New View
Pilih Tabel yang akan dibuat View nya
Jika kita memilih lebih dari satu tabel maka akan muncul Join condition untuk membuat relasi dari tabel – tabelnya
Pilih jenis relasinya, misal : Inner Joint
Pada tab Field, pilih nama – nama field yang ingin kita tampilkan
Klik pada Tab Group By jika kita menginginkan kondisi (kriteria) tertentu untuk tampilan view
Klik command Having untuk menuliskan kriteria nya Contoh :
Gambar diatas menunjukan kriteria tampilan data dimana data akan menampilkan data siswa yang memiliki nilai diatas 80 utuk matakuliah dengan kode 123
Latihan :
II.4. Pembuatan Report
Langkah – langkah pembuatan Report dengan menggunakan Wizard : Klik Reports yang ada pada tab Document, Klik New, Report Wizard Pilih Report Wizard, klik Ok
Pilih tabel yang akan dibuat Reportnya, klik tanda > untuk memasukkan datanya Ikuti Langkah – langkah pembuatannya
Langkah – langkah pembuatan Report dengan menggunakan Design: Klik Reports yang ada pada tab Document, Klik New, New Report Pilih folder penyimpanan, beri nama report nya, klik Save
Klik kanan pada Report designer, pilih Data Environment
Klik Kanan pada Data Environmet, Add, Klik Table yang akan dibuat reportnya, Add, Close
Drag field ke bagian detail dari desain report, atur, untuk nama field letakkan pada bagian header, sedang isi data pada bagian footer
Jika dibutuhkan kita bisa memberi garis pada tabel di report, untuk membuatnya anda bisa memanfaatkan objek – objek yang ada pada Report Control
Latihan :
Buatlah Report Mahasiswa dengan nama rpt_mhs, report Matakuliah dengan nama rptmata_kul dan report nilai dengan nama rptnilai dengan menggunakan wizard
FORM Report
FormCetakMhs, FormCetakMtkul dan FormCetakNilai
if thisform.optcetak.value=1
report form c:\mahasiswa\ rpt_mhs preview else
report form c:\mahasiswa\rpt_mhs to printer prompt endif
Catatan : untuk form cetak yang lain listing nya sama hanya tinggal dibedakan pemanggilan namafile nya saja
II.5. Pembuatan Menu Langkah – langkah : Membuat Menu
Klik tab Other, klik Menus, Klik New, Menu
Buat isi Menu Utama atau level Menu Bar, contoh : File, Transaksi, Laporan, Exit Setelah itu buat submenu dari menu utamanya dengan mengklik tombol Create,
contoh pada File buat sub menu data siswa.
Pada kotak Result pilih Command dan ketik do form “c:\nama path\nama form.scx” Untuk menu Exit, Resultnya bisa dengan 2 cara :
1. Procedure, kodenya APPLICATION.ACTIVEFORM.RELEASE()
2. Command, kodennya quit
Simpan Menu tersebut
Jadikan menu sebagai menu teratas, klik View, General Option, klik Cek Top-Level
Form, OK
Bangkitkan menu dengan klik Menu, Generate, Klik Generate.
Membuat Code Program Klik tab Code, New
Ketikkan kode program berikut ini : Set talk off
Set date Italian Set stat off
Set defa to c:\nama folder\ Do namamenu.mpr
_screen.caption = "Aplikasi Data Mahasiswa" on shutdown quit
_screen.windowstate=2 read event
Setelah itu simpan kode program tersebut. Klik kanan pada program tadi, klik Set Main
Latihan :
Buatlah Menu untuk Aplikasi data Mahasiswa
Membuat Form Utama
Buat sebuah Form, beri gambar sebagai background form dari properties Pictures
Rubah properties lainnya yaitu : Windows State : Maximize dan Windows Type : Modal
Lalu Ketikkan Listingnya : Form Load
Set defa to c:\nama folder Form Init
do menu.mpr with this,.t.
Form Destroy
Pada Build option pilih Action Build Application
Pada kotak Option pilih Recompile All Files, Display Errors Klik OK
PENUTUP
Dari aplikasi sederhana yang telah diuraikan pada bab sebelumnya ada beberapa ketentuan tidak tertulis dalam pembuatan aplikasi ini, dimana ketentuan ini merupakan kesimpulan yang diambil oleh penulis dari hasil uji coba yang telah dilakukan, diantaranya adalah :
1. Jika akan membuat form dengan sebuah database, sebaiknya gunakan program yang full-programming atau dalam artian tidak menggunakan koneksi database dari data environment karena akan menyulitkan jika kita akan membuat validasi kode. Jika kunci dibuat Primary Key, utk validasi data, tidak dapat menggunakan data environment. Solusi : buat metode tampil data atau kunci diganti regular
2. Untuk combo yang ada dalam database, listing nya adalah listing searching, sedangkan combo non database, menggunakan add item dan fungsi if
3. Untuk Append blank di cmd add, harus menggunakan data environment (control source) sedangkan untuk append blank di cmd save, control source tidak perlu di conect-kan
4. Untuk pembuatan menu tanpa form, top level nya tidak perlu dibuat
5. Beda Remove dan Delete pada project:REMOVE menghapus data pada projectnya saja (file dalam folder masih ada). Sedangkan DELETE menghapus keseluruhan file
6. Jika menggunakan data environment, tidak bisa menggunakan messagebox pada validasi data
7. Untuk perhitungan tanggal, format Italian harus menggunakan listing untuk merubah dari format tgl ke character lalu ke numeric => val(dtoc)
8. Untuk mengosongkan data dengan format tanggal adalah : txttgl.value=ctod(" ")
Anoname, 2003, Modul Microsoft Visual foxpro 6.0, AMIK BSI, Jakarta
Anome, 2002, Menggunakan Visual Foxpro 7.0, Andi Offset, Yogyakarta