Visual FoxPro
Konsep dasar pembuatan program berorientasi object adalah :




Windows Command :




Membuat Database dan Tabel :
Pada jendela project pilih tab Data, click Database selanjutnya click New. Untuk membuat tabel click Tables
selanjutnya click New atau jika menginginkan tabel bebas tidak dalam sebuah database pilih Free Tables selanjutnya
click New.




Pemrograman Database                                Hal 1 dari 8                           Ajib Susanto, M.Kom
Melengkapi Form dengan program dan prosedur :


                                                                                                Textbox



                                                                                             OptionGroup


                                                                                             Command




                                                                                               Grid




Mebuat Grid
Pilih Icon Grid, buat grid seperti pada gambar di atas, kemudian click kanan pada grid dan pilih builder,
sehingga tampak tampilan seperti di bawah ini :




Kemudian pilih database dan tabelnya, dan selanjutnya pilih field-field apa saja yang akan ditampilkan
pada grid, OK untuk mengakhirinya.

Membuat Prosedur
Pilih menu Form, pilih New Method, selanjutnya akan tampak tampilan seperti di bawah ini :




Untuk mengisi prosedur dengan program cari nama prosedur pada properties form paling bawah,
kemudian double click.


Pemrograman Database                            Hal 2 dari 8                         Ajib Susanto, M.Kom
Memilih Event
Memilih event yang akan dipakai disesuaikan dengan kebutuhan program yang akan dijalankan pada
masing event, baik pada textbox, commandbutton, grid dan lain-lainnya.
Event-event yang sering dipakai :
Form           : Load, Unload, Activate, Init
Textbox        : Setfocus, Lostfocus, Gotfocus
Commandbutton : Click

Dari form di atas kita lengkapi dengan program dari event pada form dan prosedur-prosedur yang dibuat
sendiri, sebagai berikut :

Form1-Load
close all
set talk off
set dele on
clear
public pil
use hmti_data!anggota
set order to anggotax

Form1-UnLoad
Close data all

Form1-Avtivate
thisform.aktif(.f.,.f.,.f.,.f.,.f.,.f.,.f.)
thisform.tombol(.t.,.t.,.t.,.t.,.t.,.f.,.t.,.t.,.t.,.f.,.t.)
thisform.baca_data()
thisform.cg2.c5.setfocus()

Prosedur-Aktif
para a1,a2,a3,a4,a5,a6,a7
with thisform
         .t1.enabled=a1
         .t2.enabled=a2
         .t3.enabled=a3
         .t4.enabled=a4
         .t5.enabled=a5
         .t6.enabled=a6
         .t7.enabled=a7
endwith

Prosedur-Tombol
para t1,t2,t3,t4,t5,t6,t7,t8,t9,t10,t11
with thisform
         .cg1.c1.enabled=t1
         .cg1.c2.enabled=t2
         .cg1.c3.enabled=t3
         .cg1.c4.enabled=t4
         .cg2.c5.enabled=t5
         .cg2.c6.enabled=t6
         .cg2.c7.enabled=t7
         .cg2.c8.enabled=t8
         .cg2.c9.enabled=t8
         .cg2.c10.enabled=t10
         .cg2.c11.enabled=t11
endwith



Pemrograman Database                                           Hal 3 dari 8      Ajib Susanto, M.Kom
T3-Gotfocus
if thisform.t2.value=" "
          messagebox("NIM harus diisi",0+16,"Peringatan")
          thisform.t2.setfocus()
          return
endi

if pil=1
 mcari=uppe(thisform.t2.value)
 seek mcari
 if found()
         messagebox("NIM sudah ada",48,"Ulangi")
         thisform.t2.value=space(14)
         thisform.t2.setfocus()
 endi
endif

C1-Click
go top
thisform.baca_data()
thisform.refresh()

C2-Click
skip -1
if bof()
         go top
endif
thisform.baca_data()
thisform.refresh()

C3-Click
skip
if eof()
         go bott
endif
thisform.baca_data()
thisform.refresh()

C4-Click
Go bott
thisform.baca_data()
thisform.refresh()

C5-Click
pil=1
thisform.aktif(.f.,.t.,.t.,.t.,.t.,.t.,.t.)
thisform.tombol(.f.,.f.,.f.,.f.,.f.,.t.,.f.,.f.,.f.,.t.,.f.)
thisform.kosong()
thisform.no_urut()
thisform.t2.setfocus()

C6-Click
if empty (thisform.t2.value)
         messagebox("NIM harus diisi",0+16,"Peringatan")
         thisform.t3.enabled=.f.
         return
endif


Pemrograman Database                                           Hal 4 dari 8   Ajib Susanto, M.Kom
if pil=1
         appen blank
endif
repl no_form with thisform.t1.value
repl nim with thisform.t2.value
repl nama with thisform.t3.value
repl alamat with thisform.t4.value
repl kota with thisform.t5.value
repl phone with thisform.t6.value
repl jen_kel with thisform.t7.value
thisform.refresh()
thisform.tombol(.t.,.t.,.t.,.t.,.t.,.f.,.f.,.f.,.f.,.t.,.f.)
thisform.aktif(.f.,.f.,.f.,.f.,.f.,.f.,.f.)
thisform.cg2.c5.setfocus()

C7-Click
pil=2
thisform.tombol(.f.,.f.,.f.,.f.,.f.,.t.,.f.,.f.,.f.,.t.,.f.)
thisform.aktif(.f.,.f.,.t.,.t.,.t.,.t.,.t.)
thisform.t3.setfocus()

C8-Click
kdtom=messagebox("Yakin menghapus Record ini ?",4+64,"Konfirmasi")
if kdtom=7
        recall
else
        dele
endif
thisform.refresh()
go top
thisform.baca_data()

C10-Click
thisform.aktif(.f.,.f.,.f.,.f.,.f.,.f.,.f.)
thisform.tombol(.t.,.t.,.t.,.t.,.t.,.f.,.t.,.t.,.t.,.f.,.t.)

C11-Click
thisform.release()

Form1-No_Urut
if reccount()=0
         thisform.t1.value='0000001'
else
         go bott
         nop=val(no_form)+1
         nos=ltrim(str(nop))
         pj=len(nos)
         thisform.t1.value=left('0000000',7-pj)+nos
endif




Pemrograman Database                                           Hal 5 dari 8   Ajib Susanto, M.Kom
Membuat Laporan
Dari jendela project pilih document, report, akan tampak tampilan sebagai berikut :




Kemudian pilih new untuk membuat report baru, selanjutnya pilih report wizard yang diikuti dengan
pemilihan nama database dan nama tabel, serta field apa yang akan ditampilkan, tampak tampilan
dibawah ini:




Untuk pilihan-pilihan selanjutnya sesuaikan dengan kebutuhan laporan yang diinginkan, seperti bentuk
laporan, urut berdasarkan apa, bentuk kertas landscape atau portrait, sampai pada pilihan terakhir yaitu
finish dan beri nama file report terus click SAVE.
Untuk memperbaiki dan mendesain supaya lebih baik, pada jendela project, document, report, pilih nama
report dan click modify.

Membuat Variabel dan Rumus Pada Report
Pilih pada menu Report, Variable, kemudian akan tampak tampilan seperti di bawah ini:




Pemrograman Database                             Hal 6 dari 8                         Ajib Susanto, M.Kom
Sebagai contoh untuk membuat tampilan “Laki-laki dan Perempuan” pada jenis kelamin, setelah memberi
nama variabel dalam hal ini namanya “jenis” pada value to store diisikan perintah sebagai berikut :

iif( anggota.jen_kel=1,"Laki-laki","Perempuan")

Sebagai contoh lagi untuk membuat nomor urut, nama variabelnya “nom” pada value to store diisikan
perintah sebagai berikut : nom+1
Kemudian untuk memasukkan field atau variabel ke dalam report, pilih icon field pada toolbar, apabila icon
field belum ada aktifkan toolbar pada menu view, toolbar, report control.

Membuat Menu
Pilih menu other pada project, kemudian clik new, menu akan tampak tampilan sebagai berikut :




Selanjutnya tinggal mengisi menu-menu apa yang akan dibuat, jika masing-masing menu mempunyai
submenu, pilih result submenu untuk menambahkan submenunya, untuk mengeksekusi sebuah form atau
report pilih result command, jika sebuah menu berisi perintah-perintah atau program, pilih result procedure.
Sebagai contoh mengeksekusi form anggota:
         Do form fanggota.scx
Mengeksekusi laporan anggota :
         Report form langgota.frx preview
Contoh untuk prosedure, pada menu exit :
         kdtom=messagebox("Yakin Keluar dari System ?",4+16,"Konfirmasi")
         if kdtom=6
                   close all
                   clea all
                   release all
                   clea events
         endif
Setelah menu selesai dibuat, pada menu view pilih generate, dan pilih option top level form, karena menu
ini akan dipanggil dan ditempelkan pada form utama sebagai pengendali form-form yang lain, akan tampak
tampilan seperti di bawah ini :




Pemrograman Database                              Hal 7 dari 8                         Ajib Susanto, M.Kom
Selanjutnya pilih option menu, generate dan menyimpan file menu, menu1.mnx¸ terus di generate menjadi
file menu1.mpr.
Langkah selanjutnya adalah membuat program pada jendela project, code, programnya sebagai berikut :
        set talk off
        set centu on
        set date ital
        set dele on
        close all
        clea prog
        do form fmenu.scx
        read events
Langkah terakhir adalam membuat form FMENU untuk memanggil menu yang telah kita buat, event yang
digunakan adalah INIT :

Form1.Init
do menu1.mpr with this,.t.

Untuk menjalankan menu pada jendela project, code, program, pilih file program kemudian pilin RUN, atau
dijalankan dari form FMENU.SCX.

Yang perlu diperhatikan :
Pada FMENU.SCX rubah properties SHOWWINDOWS menjadi 2 – AS Top Level, karena akan dijalankan
pada TOP LEVEL, sedang untuk form-form lainnya, properties SHOWWINDOWS menjadi 1 – In Top Level,
karena akan dijalankan di dalam TOP LEVEL, menempel pada form utama.

Membentuk File EXE
Pada jendela project, code, program, file program dirubah set menjadi SET MAIN pada menu project, set
main, selanjutnya pada jendela project, code click BUILD, akan tampak tampilan sebagai berikut :




Membuat File Setup
Tutup semua aplikasi, pada menu TOOL, pilih Wizard, setup, akan tampak tampilan seperti dibawah ini :




Ikuti dan pilih sesui dengan kebutuhan sampai tahap terakhir, FINISH.


Pemrograman Database                            Hal 8 dari 8                       Ajib Susanto, M.Kom

Visual fox pro

  • 1.
    Visual FoxPro Konsep dasarpembuatan program berorientasi object adalah : Windows Command : Membuat Database dan Tabel : Pada jendela project pilih tab Data, click Database selanjutnya click New. Untuk membuat tabel click Tables selanjutnya click New atau jika menginginkan tabel bebas tidak dalam sebuah database pilih Free Tables selanjutnya click New. Pemrograman Database Hal 1 dari 8 Ajib Susanto, M.Kom
  • 2.
    Melengkapi Form denganprogram dan prosedur : Textbox OptionGroup Command Grid Mebuat Grid Pilih Icon Grid, buat grid seperti pada gambar di atas, kemudian click kanan pada grid dan pilih builder, sehingga tampak tampilan seperti di bawah ini : Kemudian pilih database dan tabelnya, dan selanjutnya pilih field-field apa saja yang akan ditampilkan pada grid, OK untuk mengakhirinya. Membuat Prosedur Pilih menu Form, pilih New Method, selanjutnya akan tampak tampilan seperti di bawah ini : Untuk mengisi prosedur dengan program cari nama prosedur pada properties form paling bawah, kemudian double click. Pemrograman Database Hal 2 dari 8 Ajib Susanto, M.Kom
  • 3.
    Memilih Event Memilih eventyang akan dipakai disesuaikan dengan kebutuhan program yang akan dijalankan pada masing event, baik pada textbox, commandbutton, grid dan lain-lainnya. Event-event yang sering dipakai : Form : Load, Unload, Activate, Init Textbox : Setfocus, Lostfocus, Gotfocus Commandbutton : Click Dari form di atas kita lengkapi dengan program dari event pada form dan prosedur-prosedur yang dibuat sendiri, sebagai berikut : Form1-Load close all set talk off set dele on clear public pil use hmti_data!anggota set order to anggotax Form1-UnLoad Close data all Form1-Avtivate thisform.aktif(.f.,.f.,.f.,.f.,.f.,.f.,.f.) thisform.tombol(.t.,.t.,.t.,.t.,.t.,.f.,.t.,.t.,.t.,.f.,.t.) thisform.baca_data() thisform.cg2.c5.setfocus() Prosedur-Aktif para a1,a2,a3,a4,a5,a6,a7 with thisform .t1.enabled=a1 .t2.enabled=a2 .t3.enabled=a3 .t4.enabled=a4 .t5.enabled=a5 .t6.enabled=a6 .t7.enabled=a7 endwith Prosedur-Tombol para t1,t2,t3,t4,t5,t6,t7,t8,t9,t10,t11 with thisform .cg1.c1.enabled=t1 .cg1.c2.enabled=t2 .cg1.c3.enabled=t3 .cg1.c4.enabled=t4 .cg2.c5.enabled=t5 .cg2.c6.enabled=t6 .cg2.c7.enabled=t7 .cg2.c8.enabled=t8 .cg2.c9.enabled=t8 .cg2.c10.enabled=t10 .cg2.c11.enabled=t11 endwith Pemrograman Database Hal 3 dari 8 Ajib Susanto, M.Kom
  • 4.
    T3-Gotfocus if thisform.t2.value=" " messagebox("NIM harus diisi",0+16,"Peringatan") thisform.t2.setfocus() return endi if pil=1 mcari=uppe(thisform.t2.value) seek mcari if found() messagebox("NIM sudah ada",48,"Ulangi") thisform.t2.value=space(14) thisform.t2.setfocus() endi endif C1-Click go top thisform.baca_data() thisform.refresh() C2-Click skip -1 if bof() go top endif thisform.baca_data() thisform.refresh() C3-Click skip if eof() go bott endif thisform.baca_data() thisform.refresh() C4-Click Go bott thisform.baca_data() thisform.refresh() C5-Click pil=1 thisform.aktif(.f.,.t.,.t.,.t.,.t.,.t.,.t.) thisform.tombol(.f.,.f.,.f.,.f.,.f.,.t.,.f.,.f.,.f.,.t.,.f.) thisform.kosong() thisform.no_urut() thisform.t2.setfocus() C6-Click if empty (thisform.t2.value) messagebox("NIM harus diisi",0+16,"Peringatan") thisform.t3.enabled=.f. return endif Pemrograman Database Hal 4 dari 8 Ajib Susanto, M.Kom
  • 5.
    if pil=1 appen blank endif repl no_form with thisform.t1.value repl nim with thisform.t2.value repl nama with thisform.t3.value repl alamat with thisform.t4.value repl kota with thisform.t5.value repl phone with thisform.t6.value repl jen_kel with thisform.t7.value thisform.refresh() thisform.tombol(.t.,.t.,.t.,.t.,.t.,.f.,.f.,.f.,.f.,.t.,.f.) thisform.aktif(.f.,.f.,.f.,.f.,.f.,.f.,.f.) thisform.cg2.c5.setfocus() C7-Click pil=2 thisform.tombol(.f.,.f.,.f.,.f.,.f.,.t.,.f.,.f.,.f.,.t.,.f.) thisform.aktif(.f.,.f.,.t.,.t.,.t.,.t.,.t.) thisform.t3.setfocus() C8-Click kdtom=messagebox("Yakin menghapus Record ini ?",4+64,"Konfirmasi") if kdtom=7 recall else dele endif thisform.refresh() go top thisform.baca_data() C10-Click thisform.aktif(.f.,.f.,.f.,.f.,.f.,.f.,.f.) thisform.tombol(.t.,.t.,.t.,.t.,.t.,.f.,.t.,.t.,.t.,.f.,.t.) C11-Click thisform.release() Form1-No_Urut if reccount()=0 thisform.t1.value='0000001' else go bott nop=val(no_form)+1 nos=ltrim(str(nop)) pj=len(nos) thisform.t1.value=left('0000000',7-pj)+nos endif Pemrograman Database Hal 5 dari 8 Ajib Susanto, M.Kom
  • 6.
    Membuat Laporan Dari jendelaproject pilih document, report, akan tampak tampilan sebagai berikut : Kemudian pilih new untuk membuat report baru, selanjutnya pilih report wizard yang diikuti dengan pemilihan nama database dan nama tabel, serta field apa yang akan ditampilkan, tampak tampilan dibawah ini: Untuk pilihan-pilihan selanjutnya sesuaikan dengan kebutuhan laporan yang diinginkan, seperti bentuk laporan, urut berdasarkan apa, bentuk kertas landscape atau portrait, sampai pada pilihan terakhir yaitu finish dan beri nama file report terus click SAVE. Untuk memperbaiki dan mendesain supaya lebih baik, pada jendela project, document, report, pilih nama report dan click modify. Membuat Variabel dan Rumus Pada Report Pilih pada menu Report, Variable, kemudian akan tampak tampilan seperti di bawah ini: Pemrograman Database Hal 6 dari 8 Ajib Susanto, M.Kom
  • 7.
    Sebagai contoh untukmembuat tampilan “Laki-laki dan Perempuan” pada jenis kelamin, setelah memberi nama variabel dalam hal ini namanya “jenis” pada value to store diisikan perintah sebagai berikut : iif( anggota.jen_kel=1,"Laki-laki","Perempuan") Sebagai contoh lagi untuk membuat nomor urut, nama variabelnya “nom” pada value to store diisikan perintah sebagai berikut : nom+1 Kemudian untuk memasukkan field atau variabel ke dalam report, pilih icon field pada toolbar, apabila icon field belum ada aktifkan toolbar pada menu view, toolbar, report control. Membuat Menu Pilih menu other pada project, kemudian clik new, menu akan tampak tampilan sebagai berikut : Selanjutnya tinggal mengisi menu-menu apa yang akan dibuat, jika masing-masing menu mempunyai submenu, pilih result submenu untuk menambahkan submenunya, untuk mengeksekusi sebuah form atau report pilih result command, jika sebuah menu berisi perintah-perintah atau program, pilih result procedure. Sebagai contoh mengeksekusi form anggota: Do form fanggota.scx Mengeksekusi laporan anggota : Report form langgota.frx preview Contoh untuk prosedure, pada menu exit : kdtom=messagebox("Yakin Keluar dari System ?",4+16,"Konfirmasi") if kdtom=6 close all clea all release all clea events endif Setelah menu selesai dibuat, pada menu view pilih generate, dan pilih option top level form, karena menu ini akan dipanggil dan ditempelkan pada form utama sebagai pengendali form-form yang lain, akan tampak tampilan seperti di bawah ini : Pemrograman Database Hal 7 dari 8 Ajib Susanto, M.Kom
  • 8.
    Selanjutnya pilih optionmenu, generate dan menyimpan file menu, menu1.mnx¸ terus di generate menjadi file menu1.mpr. Langkah selanjutnya adalah membuat program pada jendela project, code, programnya sebagai berikut : set talk off set centu on set date ital set dele on close all clea prog do form fmenu.scx read events Langkah terakhir adalam membuat form FMENU untuk memanggil menu yang telah kita buat, event yang digunakan adalah INIT : Form1.Init do menu1.mpr with this,.t. Untuk menjalankan menu pada jendela project, code, program, pilih file program kemudian pilin RUN, atau dijalankan dari form FMENU.SCX. Yang perlu diperhatikan : Pada FMENU.SCX rubah properties SHOWWINDOWS menjadi 2 – AS Top Level, karena akan dijalankan pada TOP LEVEL, sedang untuk form-form lainnya, properties SHOWWINDOWS menjadi 1 – In Top Level, karena akan dijalankan di dalam TOP LEVEL, menempel pada form utama. Membentuk File EXE Pada jendela project, code, program, file program dirubah set menjadi SET MAIN pada menu project, set main, selanjutnya pada jendela project, code click BUILD, akan tampak tampilan sebagai berikut : Membuat File Setup Tutup semua aplikasi, pada menu TOOL, pilih Wizard, setup, akan tampak tampilan seperti dibawah ini : Ikuti dan pilih sesui dengan kebutuhan sampai tahap terakhir, FINISH. Pemrograman Database Hal 8 dari 8 Ajib Susanto, M.Kom