Anda di halaman 1dari 26

Create By

Published
Email

: Adi Priyatmajaya
: 12 Januari 2009
: radivir@gmail.com

Microsoft Visual Foxpro

Mengenal Visual foxpro


1.

Sekilas Tentang Visual Foxpro


Foxpro adalah sebuah Sistem Manejemen Database (Database Management
System/DBMS) elektronik, yang berfungsi untuk mengumpulkan, mengambil dan
menampilkan data. Sedangkan Visual Foxpro sendiri adalah bahasa pemprograman
visual yang berorientasi pada obyek (Object Oriented Programming/OOP) dan juga
sebagai Sistem Manajemen Database Relational (RDBMS/ Sistem Basis Data).
Beberapa istilah dalam Visual Foxpro:

Project Manager
Untuk mengatur pengembangan, integrasi dan pembuatan aplikasi. Yang dinamakan
project adalah kumpulan file, data, dokumen dan obyek yang digunakan dalam Visual
Foxpro 6.0 dan mempunyai ekstensi .PJX. Project Manager memudahkan pemakai untuk
mengatur dan mengorganisasi database, tabel, form, laporan dan query selama pembuatan
aplikasi.
Database
kumpulan dari table,view, dan connection. File database berekstensi .DBC
Tabel
tempat penyimpanan data (berekstensi .DBF).
View
tabel yang dibentuk dengan mengambil sebagian/seluruh field dari satu/beberapa tabel/view
lain.
Connection
penghubung antara tabel dengan data dari sumber lain yang formatnya berbeda (seperti :
Ms. Access, Oracle, SQL, Excel, Paradox, dll).
2. Cara Mengaktifkan Visual Foxpro
Ada dua cara ;
a. Dari taskbar :star all program Microsoft Visual Studio 6.0 Microsoft Visual
Foxpro 6.0
b. Dari Desktop klik 2X shortcut Microsoft Visual Foxpro 6.0
3. Tampilan Jendela Foxpro
Title Bar
Menu Bar

Menu Pad
Command Window
Stasus Bar

4.

Mengenal Jendela Command


Selain melalui menu yang sudah tersedia pada baris menu, pemakai juga dapat
memasukan instruksi secara langsung melalui jendela command. Cara
mengaktifkannya:
Klik menu Window -> Pilih Command Window (Ctrl +F2)
5. Langkah langkah dalam membuat table dari jendela command :
Cat : penulisan rumus atau perintah boleh disingkat minimal character

No Community

Create By
Published
Email

: Adi Priyatmajaya
: 12 Januari 2009
: radivir@gmail.com

Microsoft Visual Foxpro

a. Membuat direktori (folder) dengan MD (Make Direktory)


BU
: MD lokasi_drive\nama_folder
Contoh : MD C:\NIM
b. Mengaktifkan folder yang telah dibuat dengan CD (Change Directory)
BU
: CD lokasi_drive\nama_folder
Contoh : CD C:\NIM
c. Membuat Project Baru
BU
: Create project nama project
Contoh : Create project Latihan
d. Membuat tabel bebas (Free table)
BU
: Create Nama_tabel
Contoh : Create mahasiswa
Lalu isi nama fied, tipe, width dan index

Persyaratan Penamaan Fied:


1. Maksimal 10 karakter
2. Diawali dengan huruf atau garis bawah( _ ) dan selanjutnya dapat berupa huruf
atau garis bawah.
3. Kemudian isi tabel dengan 5 record

Kemudian Simpan dengan Ctl+W (Menyimpan sekaligus menutup jendela input data)
e. Mengaktifkan table dengan perintah
BU
: Use Nama_Tabel
Contoh : Use Mahasiswa
f. Menampilkan table dengan perintah :
Browse : menampilkan isi record dalam bentuk tabel.
List
: menampilkan isi record pada display/layar putih dibelakang (dengan no.
record)
List off : menampilkan isi record pada display/layar putih dibelakang (tanpa no.
record)
List Fied : Menampilkan record sesuai nema field yang diinginkan.
BU
: List Field nama_field
Contoh : Liest Fieal Nama,Alamat
g. Modifikasi tabel / mengubah struktir tabel
BU
: Modify structure atau Modi Stru
h. Tambah Record
BU
: Append atau Appe
i. Hapus Record
BU
: Delete [scope] nomor_record
No Community

Create By
Published
Email

Ket

: Adi Priyatmajaya
: 12 Januari 2009
: radivir@gmail.com

: Semua record
Contoh : Delete all atau dele all
Rest : Dari record yang aktif sampai record yang terakhir
Contoh : Delete rest atau dele rest
Record : Record ke N
Contoh: Delete record 2 atau dele reco 2
j. Menyembunyikan record yang sudah dihapus
BU
: Set Delete On atau Set Dele On
k. Menampilkan kembali record yang sudah dihapus
BU
: Set Delete Off atau Set Dele Off
l. Mengaktifkan kembali record yang telah dihapus
BU
: Recall [Scope] nomor record
Contoh : Recall All
Recal record 2 atau Reca reco 2
m. Menghilangkan record yang telah dihapus secara permanen
BU
: Pack
n. Menutup tabel
BU
: Close Tabel
o. Keluar dari Visual Foxpro
BU
: Close All atau Clos All
Quit

No Community

: Scope :

Microsoft Visual Foxpro

All

Create By
Published
Email

: Adi Priyatmajaya
: 12 Januari 2009
: radivir@gmail.com

Microsoft Visual Foxpro

Pointer
Bentuk pointer di Visual Foxpro berupa tanda anak panah kecil di depan sebuah
record yang berfungsi untuk menunjukkanrecord yang sedang aktif sekarang aktif. Pada
saat suatu tabel dibuka, pointer berada pada record pertama.

Pointer

1. RECNO ()
Perintah ini digunakan untuk mengetahui nomor recird yang sedang aktif sekarang.
Caranya :
a. Aktifkan tabel, contoh : tabel mahasiswa.DBF Use Mahasiswa
b. Dari Command Window ketik :
?Recno()
c. Kemudian ketik:
Display (Untuk tampilan tercetak di layer putih belakang)
Browse (untuk tampilan dalam bentuk tabel pointer akan menunjuk pada record
yang aktif)
2. GOTO
Pointer record dapat diatur untuk pindah ke record tertentu dengan menggunakan
perintah GO atau GOTO.
a. Untuk pindah ke record pertama (BPF / Beginning Of File)
BU
: GO 1 Display
atau
GOTOP Display
b. Untuk pindah ke record terakhir (EOF / End Of File)
BU
: GO Bottom Display
c. Untuk ke record tertentu
BU
: GO No_Record Display
Contoh :GO 2 Display (Menuju record ke 2)
3. SKIP
Digunakan untuk pindah dari record yang aktif ke record yang dituju.
a. Pindah satu record ke record selanjutnya
BU
: SKIP Display
Atau
SKIP 1 Display
b. Pindah record ke N selanjutnya
BU
: SKIP N
Contoh
: pindah/maju 2 record selanjutnya kemudian tampilkan
SKIP 2 Display
c. Pindah record ke N sebelumnya
BU
: SKIP -N
Contoh
: pindah/mundur 2 record sebelumnya kemudian tampilkan
SKIP -2 Display
File index
Index adalah menata urutan record. File hasil index berekstention .CDX. Fungsi utama
indeks adalah untuk menata urutan data sehingga lebih mempercepat pencarian data.
1. Istilah dalam index :
a. Index Key
: satu atau beberapa field yang dijadikan dasar penentuan urutan
(disebut juga key field)
b. Ascending
: mengindex dari kecil ke besar (A - Z / 1 10)
c. Descending
: mengindex dari besar ke kecil (Z A / 10 - 1)
2. Membuat index.
Dari Command Window:
BU
: INDEX ON field TO Nama file
Contoh
: USE Mahasiswa (aktifkan dahulu tabelnya)
INDEX ON nim TO coba
No Community

Create By
Published
Email

: Adi Priyatmajaya
: 12 Januari 2009
: radivir@gmail.com

Microsoft Visual Foxpro

3. Mengaktifkan file hasil index


BU
: SET INDEX TO nama file
Contoh
: USE Mahasiswa
SET INDEX TO coba
atau
USE Mahasiswa INDEX coba
Pencarian Data
1. LOCATE
Digunakan untuk meletakan poiter ke record yang dicari.
BU
: Locate for Namafield=kata yang dicari
? Display (melihat hasinya)
Contoh
: Cari Nama = Muhammad Erros kemudian tampilkan:
Locate for Nama=Muhammad Erros Display
Untuk mengetahui apakahyang dicari dengan locate ketemu atau tidak, menggunakan
FOUD(). Perintah akan memberi nilai berupa:
.T. : data yang di cari ketemu.
.F. : data yang di cari tidak ketemu.
Contoh
: Locate for Nama=Muhammad Erros
?Found()
2. SEEK
Pencarian record bisa dilakukan bila file telah diindex. Dan pencarian record harus
sama dengan isi field kunci.
Contoh
: cari dan tampilkan nama dan alamat dari record yang mempunyai nim
12045785
Use Mahasiswa
Set order to tag nim
SEEK 12045785
?Found()
?nama,alamat

No Community

Create By
Published
Email

: Adi Priyatmajaya
: 12 Januari 2009
: radivir@gmail.com

Microsoft Visual Foxpro

Operasi Terhadap Tabel


1. Mengubah data dengan REPLACE
Pada model interaktif mengubah data dengan Browse tetapi pada model pemprograman
mengubah/mengganti data dengan perintah Replace.
BU
: Replace nama field with nama_field_baru
Contoh
: Replace alamat with Jakarta
2. Perintah IIF
Fungsi IIF() digunakan untuk menyeleksi data dengan kondisi (dapat bertindak seperti
IF di Excel)
BU
: IIF(Kondisi,ekspresi1,ekspresi2)
3. Fungsi String Pada Tabel
Left(string,n)
: menghasilkan/membaca n character terkiri dari string.
Right(string,n)
: menghasilkan/membaca n character terkanani dari string.
Substr(string,awal,n)
: menghasilkan/membaca dari tengah string mulai dari awal
sebanyak n huruf.
Latihan 1
1. Buat Tabel dengan nama pesawat..dbf
Nama_Field
Kd_pswt
Nm_pswt
Jurusan
No_pen
Harga
Jumlah
Total
2.

3.
4.

5.

6.
7.

8.

Tipe

Width

Character
Character
Character
Character
Numeric
Numeric
Numeric

7
15
20
5
8
2
8

Index

Indexes
Primary

Isi field kode dengan :


a. GA988MD
b. BQ786SB
c. MP677SB
d. GA776BD
Isi jumlah dengan: 1,3,2, dan 2
Isi nama pesawat dari kd_pswt::
Jika GA maka Garuda, Jika BQ maka Bouraq, Jika MP maka Merpati
Replace all nm_pswt with iif(left(kd_pswt,2)=GA,Garuda,
iif(left(kd_pswt,2)=BQ,Bouraq,Merpati))
Jurusan diisi dari kd_pswt:
Jika MD maka Medan, Jika SB maka Suabaya, Jika BD maka Bandung.
Replace all jurusan with iif(right(kd_pswt,2)=MD,Medan,
iif(right(kd_pswt,2)=SB,Suurabaya,Bandung))
Nomor penerbangan diisi dengan: 2 karakter dimulai dari karakter ketiga dari
kd_pswt.
Replace all no_pen with substr(kd_pswt,3,2)
Harga diisi dari jurusan:
Jika Jurusan Medan maka 500000, Jika Surabaya maka 400000, Jika Bandung 300000
Replace all harga with iif(Jurusan=Medan,500000,iif(jurusan=Surabaya,
400000,300000))
Total dengan mengalikan Harga dan Jumlah
Replace all total with Harga * Jumlah

No Community

Create By
Published
Email

: Adi Priyatmajaya
: 12 Januari 2009
: radivir@gmail.com

Microsoft Visual Foxpro

Latihan 2
1. Buat tabel Pegawai, isi field dengan:
Nama_Field
Nip
Nama
Alamat
Thn_masuk
Gol
Status
Gapok
Tunjangan
Total Gaji

Tipe
Character
Character
Character
Character
Character
Character
Numeric
Numeric
Numeric

Width
5
20
30
4
10
10
10
10
10

Index

Indexes
Primary

2. Isi NIP dengan


a. 10099
b. 10000
c. 10001
d. 20099
e. 20001
3. Isi Nama dan alamat bebas
4. Tahun Masuk diisi bardasarkan NIP, yaitu
Jika 2 digit terakrir dari NIP adalah 99 maka tahun masuk 1999
Jika 2 digit terakrir dari NIP adalah 00 maka tahun masuk 2000
Jika 2 digit terakrir dari NIP adalah 01 maka tahun masuk 2001
5. Gol diisi berdasarkan tahun Masuk
Jika 1999 maka Gol 3A, Jika 2000 maka Gol 2A, Jika 2001 maka Gol 1A
6. Status untuk record 1,3,5 adalah Menikah, dan untuk record 2,4 status Belum menikah
7. Gaji Pokok diisi dengan ketentuan:
Jika Gol 3A maka Gapok 5000000, Jika Gol 2A maka Gapok 3000000, Jika Gol 1A
maka Gapok 1000000.
8. Tunj angan diisi dengan ketentuan:
Jika menikah maka tunjangan 10% dari gapok, jika belum menikah maka tidak dapat
gapok.
9. Total gaji diisi dengan ketentuan: Gapok + Tunjangan.

No Community

Create By
Published
Email

: Adi Priyatmajaya
: 12 Januari 2009
: radivir@gmail.com

Microsoft Visual Foxpro

Fungsi Fungsi Standar


1. Operasi Tanggal dan Waktu
a. CDOW()
BU
Contoh
b. CMONTH
BU
Contoh
c. DATE()
BU
Contoh
d. DATETIME()
BU
Contoh
e. DAY
BU
Contoh
f. DMY
BU
Contoh
g. MDY
BU
Contoh
h. TIME()
BU
Contoh

: Fungsi ini menghasilkan nama hari dalam bahasa Inggris.


: ?CDOW(ctod(Tanggal)
: ?CDOW(ctod(3/20/2006) Monday
: Fungsi ini menghasilkan bulan dalam bahasa Inggris.
: ?CMONTH(ctod(Tanggal)
: ?CMONTH(ctod(3/20/2006) March
: Fungsi ini menghasilkan nilai tanggal sekarang.
: ?DATE()
: ?DATE() 03/20/2006
: Fungsi ini menghasilkan nilai tanggal dan jam sekarang sebagai
nilai DateTime.
: ?DATETIME()
: ?DATETIME() 03/20/2006 05:30:21 PM
: Fungsi ini menghasilakn tanggal (1 s.d 30)
: ? DAY(Tanggal)
: ? DAY(ctod(3/20/20006) 20
: Fungsi ini menghasilkan tanggal, bulan dan tahun.
: ?DMY(ctod (Tanggal)
: ?DMY(ctod(3/20/2006) 20 March 2006
: Fungsi ini menghasilkan tanggal dengan format : bulan, tanggal,
tahun.
: ?MDY(ctod (Tanggal)
: ?MDY(ctod(3/20/2006) March 20, 2006
: Fungsi ini menghasilkan jam sekarang, dengan format : JJ:MM:DD
: ?TIME()
: ?TIME() 05:30:21

2. Operasi Manipulasi String


a. ALLTRIM
Contoh
Hasil
b. RTRIM,TRIM
Contoh
Hasil
c. LTRIM
Contoh
Hasil
d. RIGHT
Contoh
Hasil
e. LEFT
Contoh
Hasil
f. SUBSTR
Contoh
Hasil
g. LEN
Contoh
Hasil

No Community

:Fungsi ini menghasilkan data sesuaidengan eksperi, dengan


seluruh ekspresi di bagian kiri dan kanan akn dibuang.
: ?ALLTRIM( ABC
)
: ABC (Tanpa Spasi)
: Fungsi ini membuang spasi di belakang string
: ? RTRIM,TRIM(Visual
)
: Visual
: Fungsi ini membuang spasi di depan string
: ? LTRIM( Visual)
: Visual
: Fungsi ini menghasilkan N buah huruf terkanan dari string.
: ?RIGHT(ABCDE,3)
: CDE
: Fungsi ini menghasilkan N buah huruf terkiri dari string.
: ?LEFTT(ABCDE,3)
: ABC
: Fungsi ini mengambil huruf di tengah string mulai awal sebanyak N
buah
: ? SUBSTR (ABCDE,2,3)
: BCD
: Fungsi ini menghitung jumlah string (spasi dihitung).
: ? LEN (ABCDE)
:5

Create By
Published
Email

: Adi Priyatmajaya
: 12 Januari 2009
: radivir@gmail.com

Microsoft Visual Foxpro

3. Operasi Numeric
a. ABS
Contoh
b. INT
Contoh

: Fungsi ini menghasilkan nilai mutlak/absolute.


: ?ABS(-3) 3
: Fungsi ini menghasilkan bagian bualat dari suatubialngan real.
: ?INT(1.9) 1

4. Konfersi Tipe dan Ekspresi


a. ASC

: Fungsi ini menghasilkan nilai ASCII dari karakter menjadi


argumennya.
Contoh
: ?ASC(A) 65
b. CHR
: Fungsi ini menghasilkan sebuah karakter yang nilai ASCIInya
dicantumkan dalam argument.
Contoh
: ?CHR(65) A
c. CTOD(Character To date(string tanggal))
: Fungsi ini menghasilkan data bertipe
tanggal berdasarkan string argumentnya.
Contoh
: ? CTOD(3/20/2006) 03/20/2005
d. DTOC(Date TO Character)
: Fungsi ini menghasilkan string yang menyatakan
tanggal.
Contoh
: ?DTOC(date())
Hasil
: Tanggal Sekarang
e. STR
: Fungsi ini menghasilkan nilai string dari suatu numeric
Contoh
: ?STR(5) 5
f. VAL
: Fungsi ini menghasilkan nilai numeric dari suatu string.
Contoh
: ?VAL(5) 5
Pembuatan Form

Jendela Form Control


Jendela Form Designer
Jendela Form
Control
Jendela Properties

Membuat form dari Command Form dengan perintah:


BU
: Create form nama_form
Contoh
: Crete form Latih1.scx
Object
Label 1
Text 1
Text 2
Command 1
Command 2

Properties
Name
Caption
Label1
Nama
txtnama
txtkenal
cmdkenal
\<Perkenalan
cmdkeluar
\<Keluar

Listing Program
Object: cmdkenal
Procedure: Click
thisform.txtnama.value="Verlin"
thisform.txtkenal.value="Saya sedang belajr visual Foxpro di lab J"
No Community

Create By
Published
Email

: Adi Priyatmajaya
: 12 Januari 2009
: radivir@gmail.com

Microsoft Visual Foxpro

Object: cmdkeluar
Thisform.release

Procedure: Click

Kemudian Jalankan dengan Klik icon


Pilih menu Form Run Form

(icon Run) atau

Hasil :

Membuat form melalui menu :

1. Pilih menubar File New (Kemudian muncul Jendela New)


3. Kemudian Pilih New File

2. Kemudian Pilih Form

Object
Label 1
Text 1
Command1
Command 2
Command 3
Form1

Properties
Name
Caption
Label1
Informasi
Txtinformasi
Cmdjam
Jam Sekarang
Cmdtanggal
Tanggal Sekarang
Cmdkeluar
Keluar
Form1
Program Waktu

Listing Program
Object : cmdjam
Procedure : click
Thisform.txtinformasi.value="Jam Sekarang :" +Time()
Object : cmdtanggal
Procedure : click
Thisform.txtinformasi.value="Tanggal Sekarang :" +DTOC(DATE())
Object :cmdkeluar
Thisform.release

Procedure : click

Kemudian Simpan dengan nama Program jam.scx


No Community

10

Create By
Published
Email

: Adi Priyatmajaya
: 12 Januari 2009
: radivir@gmail.com

Microsoft Visual Foxpro

Listing Program
Buatlah program dibawah ini dengan nama operator.scx
Object
Label 1
Label 2
Label 3
Text 1
Text 2
Text 3
Command 1
Command 1
Command 1
Command 1
Command 1
Command 1
Form 1

Properties
Name
Caption
Label1
Nilai I
Label2
Nilai II
Label3
Hasil
Txtnilai1
Txtnilai2
Txthasil
Cmdtambah
\<Tambah
Cmdkurang
\<Kurang
Cmdbagi
\<Bagi
Cmdkali
\<Kali
Cmdbersih
\<Bersih
Cmdexit
\<Exit
Form1
Operator

Listing Program
Object : cmdtambah
Procedure : click
Thisform.txthasil.value=round(val(thisform.txtnilai1.value) +
val(thisform.txtnilai2.value),0)
Object : cmdkurang
Procedure :click
Thisform.txthasil.value=round(val(thisform.txtnilai1.value) val(thisform.txtnilai2.value),0)
Object : cmdbagi
Procedure :click
Thisform.txthasil.value=round(val(thisform.txtnilai1.value) /
val(thisform.txtnilai2.value),0)
Object : cmdkali
Procedure :click
Thisform.txthasil.value=round(val(thisform.txtnilai1.value) *
val(thisform.txtnilai2.value),0)
Object : cmdbersih
thisform.txtnilai1.value=""
thisform.txtnilai2.value=""
thisform.txthasil.value=""
thisform.txtnilai1.setfocus

Procedure :click

Object :cmdexit
Thisform Release

Procedure :click

Operator Percabangan
1.

IfEndif
Digunakan untuk menyeleksi data dalam mengambil suatu keputusan.
Bentuk Umun : If Kondisi
Perintah
End If

2.

If.Else.Endif
Digunakan untuk menyeleksi data yang mempunyai dua pilihan untuk mengambil suatu
keputusan.
Bentuk Umun : If Kondisi1
Perintah1
Else
Perintah2
Endif

No Community

11

Create By
Published
Email

: Adi Priyatmajaya
: 12 Januari 2009
: radivir@gmail.com

Microsoft Visual Foxpro

3.

If Majemuk (If Bertingkat/Nested If)


Digunakan untuk menyeleksi data yang mempunyai banyak pilihan untuk mengambil
suatu keputusan.
Bentuk Umun : If Kondisi1
Perintah1
Else
If Kondisi2
Perintah2
Else
Perintah3
Endif
Endif

4.

Do Case End case


Fungsinya sama seperti seperti If Majemuk dan daoat digunakan sebagai alternative
dari iIf Majemuk.
Bentuk Umum : Do Case
Case Kondisi1
Perintah1
Case Kondisi2
Perintah2
Otherwise
Perintah N
Endcase

Latihan
Object
Label 1
Label 2
Label 3
Label 4
Label 5
Label 6
Label 7
Label 8
Text 1
Text 2
Text 3
Text 4
Text 5
Text 6
Text 7
Command 1
Command 2
Command 3
Command 4
Form 1

No Community

Name
Label1
Label2
Label3
Label4
Label5
Label6
Label7
Label8
Txtnim
Txtnama
Txtteori
Txtpraktek
Txtrata
Txtket
txtgrade
Cmdhitung
Cmdproses
Cmdlagi
cmdkeluar
Form1

Properties
Caption
Hitung Nilai Mahasiswa
NIM
Nama
Nilai Teori
Nilai Praktek
Rata-rata
Keterangan
Grade
\<Hitung
\<Proses
\<Lagi
\<Keluar
Operator Percabangan

12

Create By
Published
Email

: Adi Priyatmajaya
: 12 Januari 2009
: radivir@gmail.com

Listing Program (Dengan Fungsi IF)


Object :cmdhitung
teori=val(thisform.txtteori.value)
praktek=val(thisform.txtpraktek.value)
rata=val(thisform.txtteori.value)
ket=val(thisform.txtteori.value)
rata=round((teori+praktek)/2,0)
If rata>=60
ket="Lulus"
Else
ket="gagal"
Endif
Thisform.txtrata.value=rata
Thisform.txtket.value=ket

Microsoft Visual Foxpro

Procedure :click

Object :cmdproses
rata=thisform.txtrata.value
grade=val(thisform.txtgrade.value)
If rata>=90
grade="A"
Else
If rata>=75
grade="B"
Else
If rata>=60
grade="C"
Else
If rata>=40
grade="D"
Else
grade="E"
Endif
Endif
Endif
Endif
Thisform.txtgrade.value=grade

Procedure :click

Object :cmdlagi
Thisform.txtnim.value=""
Thisform.txtnama.value=""
Thisform.txtteori.value=""
Thisform.txtpraktek.value=""
Thisform.txtrata.value=""
Thisform.txtket.value=""
Thisform.txtgrade.value=""
Thisform.txtnim.setfocus

Procedure :click

Object :cmdkeluar
Procedure :click
Thisform.release
Buat form selanjutnya dengan design yang sama seperti di atas tetapi proses
menggunkan Do Case
Listing Program (Dengan Do case)
Catatan : Untuk listing object hitung, bersih dan keluar sama seperti listing diatas yang
beda hanya listing untuk object Proses

No Community

13

Create By
Published
Email

: Adi Priyatmajaya
: 12 Januari 2009
: radivir@gmail.com

Object :cmdproses
rata=thisform.txtrata.value
grade=val(thisform.txtgrade.value)
Do Case
Case rata>=90
grade="A"
Case rata>=75
grade="B"
Case rata>=60
grade="C"
Case rata>=40
grade="D"
Otherwise
grade="E"
Endcase
Thisform.txtgrade.value=grade

No Community

Microsoft Visual Foxpro

Procedure :click

14

Create By
Published
Email

: Adi Priyatmajaya
: 12 Januari 2009
: radivir@gmail.com

Microsoft Visual Foxpro

Data Environtment
1.
2.

6.

Buatlah Form baru dengan nama mahasiswa.scx


Klik kanan pada jendela form, setelah muncul menu pop up pilih Data
Environtment
Pada jendela add table or view terdapat 3 command buttond, add, close dan other,2
Option yaitu table dan views
Jika tabel yang ingin diambil berada dalam database maka pilih database lalu pada
Table in Database, lalu pilih tabel yang diinginkan.
Tapi jika tabel tidak dalam database atau tabel bebas, maka pilih other, dan cari
tempat penyimpanan tabel anda. Pilih tabel lau Ok dan Close
Setelah tabel muncul pada Data Environment.,

7.

Drag
gambar field , lalu tempatkan pada form
Kemudian design form seperti dibawah ini.

3.
4.
5.

Object
Command 1
Command 2
Command 3
Command 4
Command 5
Form 1

Name
Cmdtop
Cmdprev
Cmdnext
Cmdbottom
Cmdexit
Form1

Listing Program
Cmdtop
Go top
Thisform.refresh

Properties
Caption
\<TOP
\<PREV
\<NEXT
\<BOTTOM
\<EXIT
Data Mahasiswa

click

Cmdprev
click
Skip-1
If bof() then
Go top
Messagebox("Ini Record Terakhir !",48,"Perhatian")
Endif
Thisform.refresh

No Community

15

Create By
Published
Email

: Adi Priyatmajaya
: 12 Januari 2009
: radivir@gmail.com

Microsoft Visual Foxpro

Cmdnext
click
Skip
If eof() then
Go bottom
Messagebox("Ini Record Terakhir !", 48,"Perhatian")
Endif
Thisform.refresh
Cmdbottom
Go bottom
Thisform.refresh

click

Cmdexit
Thisform.release

click

Pembuatan Project dan Database


a. Pembuatan Project
1. Klik Menu File New
2. Kemudian muncul Jendela New, Pilh

Project

3. Kemudian Pilih New File

4.Tentukan tempat penyimpanan Project, Lalu


isi nama project yang diinginkan, kemudian
klik save.
5. Kemudian muncul Jendela Project Manajer

Keterangan :
All
Data
Document
Classes
Code
Other

No Community

: Berisi semua komponen.


: Berisi komponen yang berhubungan dengan data (databse,query).
: Berupa komponen dokumen (form, laporan, label).
: Berisi kelas yang digunakn untuk membuat objek.
: Berkaitan dengan kode (program, aplikasi)
: Berisi Menu, Text File, Other Files

16

Create By
Published
Email

: Adi Priyatmajaya
: 12 Januari 2009
: radivir@gmail.com

Microsoft Visual Foxpro

b. Membuat database
1. Klik All Klik Data New
2. Muncul Jendela New Pilih Database New Database

3. Tentukan tempat penyimpanan, lalu isi enter database dengan nama database yang
diinginkan, kemudian klik save.
Ekstension : .PJX File Proje ct
.DBC File Database
.DCX Index Database
.DBF File Tabel

c. Membuat tabel dalam database


1.
Klik All Klik Data Pilih Nama Database Table New
2.
Muncul Jendela New Table Pilih New Table

3.
4.
5.

Tentukan tempat penyimpanan dan nama table save


Kemudian isi Table designer OK
Pilih Yes jika table ingin di input langsung.

d. Membuat Form dalam project


1.
Klik All Klik Document Pilih Form New
2.
Muncul Jendela New Form Pilih New Form

Latihan
1. Buat project dengan nama
2. Buat database dengan nama
3. Buat tabel dengan nama
Name
NIP
Nama_peg
Alamat
Tgl_lahir
Gapok
Tunjangan
Total

Type
Character
Character
Character
Date
Numeric
Numeric
Numeric

Width
5
20
30
8
10
10
10

: Kantor.pjx
: Pegawai.dbc
: Data gaji.dbf
Decimal

Index
Primary

0
0
0

4. Isikan sebanyak 5 field


5. Untuk field total jangan diinput gunakan rumus tetapi menggunaka listing.
Total = Gapok + Tunjangan.
6. Gunakan Data Environtment.
No Community

17

Create By
Published
Email

: Adi Priyatmajaya
: 12 Januari 2009
: radivir@gmail.com

Object
Command 1
Command 2
Command 3
Command 4
Command 5
Command 6
Command 7
Command 8

Microsoft Visual Foxpro

Properties
Name
Caption
Cmdtop
\<Top
Cmdback
\<Back
Cmdnext
\<Next
Cmdbottom
\<Bottom
Cmdtambah
\<Tambah
Cmdhapus
\<Hapus
Cmdlihat
\<Lihat
cmdkeluar
\<Keluar

Listing Program
Cmdtop
Go top
Thisform.refresh
Cmdback
Skip-1
If bof() then
Go top

click

click

Messagebox("Ini Record Terakhir !",48,"Perhatian")


Endif
Thisform.refresh
Cmdnext
click
Skip
If eof() then
Go bottom
Messagebox("Ini Record Terakhir !", 48,"Perhatian")
Endif
Thisform.refresh
Cmdbottom
Go bottom
Thisform.refresh

click

Cmdtambah
click
Append blank
Thisform.refresh
Thisform.txtnip.setfocus

No Community

18

Create By
Published
Email

: Adi Priyatmajaya
: 12 Januari 2009
: radivir@gmail.com

Microsoft Visual Foxpro

Cmdhapus
click
If reccount()<=0
Return
Endif
Pesan=messagebox(data akan dihapus,32 + 1,Info)
If pesan =1
Dele
Pack
Endif
Thisform.refresh
Cmdlihat
Brow
Cmdkeluar
Thisform.release

click
click

Txttunjangan
lostfocus
Gapok=thisform.txtgapok.value
Tunjangan=thisform.txttunjangan.value
Thisform.txttotal.value=Gapok + Tunjangan

No Community

19

Create By
Published
Email

: Adi Priyatmajaya
: 12 Januari 2009
: radivir@gmail.com

Latihan 2
1. Buat project dengan nama
2. Buat database dengan nama
3. Buat tabel dengan nama
NAME
Nim
Nama
Kelas
Absen
Tugas
Uts
Uas
Rata-rata
Grade
Ket

TYPE
Character
Character
Character
Numeric
Numeric
Numeric
Numeric
Numeric
Character
Character

Microsoft Visual Foxpro

: Kampus.pjx
: Mahasiswa.dbc
: Data Nilai.dbf
WIDTH
5
20
30
8
3
3
3
3
6
6

DECIMAL

INDEX
Primary

0
0
0
0

Untuk field Rata-rata,grade dan ket jangan di input,gunakan rumus dan percabangan
dalam form
KETENTUAN
Jika rata-rata >=90 maka grade=A dan Keterangan =Lulus
Jika rata-rata >=75 maka grade=B dan Keterangan =Lulus
Jika rata-rata >=65 maka grade=C dan Keterangan =Lulus
Selain itu grade=D dan Keterangan =Gagal
Rumus : Rata= (10%*absen)+(20%*tugas)+(30%*uts)+(40%*uas)

No Community

20

Create By
Published
Email

: Adi Priyatmajaya
: 12 Januari 2009
: radivir@gmail.com

Microsoft Visual Foxpro

Objek dan properti yang digunakan dan dirubah :


NAMA OBJEK
GRID1
COLUMN1
HEADER1
COLUMN2
HEADER2
COLUMN3
HEADER3
COLUMN4
HEADER4
COLUMN5
HEADER5
COLUMN6
HEADER6
COLUMN7
HEADER7
COLUMN8
HEADER8
COLUMN9
HEADER9
COLUMN10
HEADER10
COMMAND1

PROPERTY

NILAI

CONTROLSOURCE
CAPTION
CONTROLSOURCE
CAPTION
CONTROLSOURCE
CAPTION
CONTROLSOURCE
CAPTION
CONTROLSOURCE
CAPTION
CONTROLSOURCE
CAPTION
CONTROLSOURCE
CAPTION
CONTROLSOURCE
CAPTION
CONTROLSOURCE
CAPTION
CONTROLSOURCE
CAPTION
NAME

MAHASISWA.NIM
NIM
MAHASISWA.NAMA
NAMA
MAHASISWA.KELAS
KELAS
MAHASISWA.ABSEN
ABSEN
MAHASISWA.TUGAS
TUGAS
MAHASISWA.UTS
UTS
MAHASISWA.UAS
UAS
MAHASISWA.RATA
RATA
MAHASISWA.GRADE
GRADE
MAHASISWA.KET
KET
CMDTOP

COMMAND2

CAPTION
NAME

\<TOP
CMDBACK

COMMAND3

CAPTION
NAME

\<BACK
CMDNEXT

COMMAND4

CAPTION
NAME

\<NEXT
CMDBOTTOM

COMMAND5

CAPTION
NAME

\<BOTTOM
CMDTAMBAH

COMMAND6

CAPTION
NAME

\<TAMBAH
CMDHAPUS

COMMAND7

CAPTION
NAME

\<HAPUS
CMDLIHAT

COMMAND8

CAPTION
NAME

\<LIHAT
CMDKELUAR

CAPTION

\<KELUAR

No Community

21

Create By
Published
Email

: Adi Priyatmajaya
: 12 Januari 2009
: radivir@gmail.com

cmdtop
go top
thisform.refresh

click

cmdback
skip-1
if bof() then
go top
messagebox("ini
pertama!",48,"perhatian")
endif
thisform.refresh

click

cmdnext
skip
if eof() then
go bottom
messagebox("ini
terakhir!",48,"perhatian")
endif
thisform.refresh

click

cmdbottom
go bottom
thisform.refresh

click

cmdhapus
if reccount()<=0
return
endif
pesan=messagebox("data
dihapus",32+1,"info")
if pesan=1
dele
pack
endif
thisform.refresh

Microsoft Visual Foxpro

cmdtambah
appen blank
thisform.refresh
thisform.txtnim.setfocus

click

cmdlihat
browse

click

record cmdkeluar
Thisform.release

click

record

Txtrata
a=thisform.txtabsen.value
b=thisform.txttugas.value
c=thisform.txtuts.value
d=thisform.txtuas.value

lostfocus

thisform.txtrata.value=round((a*10/100)+
(b*20/100)+ (b*30/100)+(c*40/100),0)
rata=thisform.txtrata.value

if rata >=90
thisform.txtgrade.value="A"
thisform.txtket.value="LULUS"
else
click
if rata >=75
thisform.txtgrade.value="B"
thisform.txtket.value="LULUS"
else
akan
if rata >=65
thisform.txtgrade.value="C"
thisform.txtket.value="LULUS"
Else
thisform.txtgrade.value="D"
thisform.txtket.value="GAGAL
endif
endif
Endif
Thisform.cmdtambah.setfocus

No Community

22

Create By
Published
Email

: Adi Priyatmajaya
: 12 Januari 2009
: radivir@gmail.com

Microsoft Visual Foxpro

Latihan Combobox dan Option Group


A. Design Form

B. Properties
Object
ComboBox
OptionGroup
Option1
Option2
Option3
Timer1

Properties
DisplayCount
Name
Button Count
Caption
Name
Caption
Name
Caption
Name
Interval

Nilai
3
Combo1
3
Executive
Option1
Bisnis
Option2
Ekonomi
Option3
1000

Membuat isi combo box ada 2 cara :


1.
Melalui jendela properties :
a. klik kanan di combobox Builder kemudian muncul jendela Combo Box Builder
b. Kemudian pilih List Item kemudian
c. Pada field the list item pilih Data entered By hand
d. Isi coloun dengan 1
e. Isi Coloumn1 dengan isi combo box yang diinginkan, contohnyaseperti terlihat
dibawah ini :

2.

Melalui listing Program (di Form Load):


Object Form : Form1
Procedure : Load
.combo1.additem(1)
.combo1.additem(2)
.combo1.additem(3)
Catatan : Pilih salah satu metode yang diinginkan untuk mengisi Combo Box.

No Community

23

Create By
Published
Email

: Adi Priyatmajaya
: 12 Januari 2009
: radivir@gmail.com

Microsoft Visual Foxpro

Listing Program
Object Form1
Activate
Thisform.txttanggal.value=DTOC(Date())
Object Combo1
Interactive Change
with thisform
if .combo1.value="1"
.txtjurusan.value="Jakarta - Bandung"
else
if .combo1.value="2"
.txtjurusan.value="Jakarta - Solo"
else
.txtjurusan.value="Jakarta - Semarang"
endif
endif
.refresh
Endwith
Object Option1
Click
with thisform
if .combo1.value="1"
.txtharga.value=50000
.txtpajak.value=10000
.txthrgbersih.value=round((.txtharga.value)+ (.txtpajak.value),0)
.txtbeli.setfocus
else
if .combo1.value="2"
.txtharga.value=75000
.txtpajak.value=15000
.txthrgbersih.value=round((.txtharga.value)+ (.txtpajak.value),0)
.txtbeli.setfocus
else
.txtharga.value=100000
.txtpajak.value=20000
.txthrgbersih.value=round((.txtharga.value)+ (.txtpajak.value),0)
.txtbeli.setfocus
endif
endif
.refresh
Endwith
Object Option 2
Click
with thisform
if .combo1.value="1"
.txtharga.value=50000
.txtpajak.value=10000
.txthrgbersih.value=round((.txtharga.value)+ (.txtpajak.value),0)
.txtbeli.setfocus
else
if .combo1.value="2"
.txtharga.value=60000
.txtpajak.value=12000
.txthrgbersih.value=round((.txtharga.value)+ (.txtpajak.value),0)
.txtbeli.setfocus
else
.txtharga.value=75000
.txtpajak.value=15000
.txthrgbersih.value=round((.txtharga.value)+ (.txtpajak.value),0)
.txtbeli.setfocus
endif
endif
.refresh
Endwith
No Community

24

Create By
Published
Email

: Adi Priyatmajaya
: 12 Januari 2009
: radivir@gmail.com

Microsoft Visual Foxpro

Object Option 3
Click
with thisform
if .combo1.value="1"
.txtharga.value=40000
.txtpajak.value=4000
.txthrgbersih.value=round((.txtharga.value)+ (.txtpajak.value),0)
.txtbeli.setfocus
else
if .combo1.value="2"
.txtharga.value=50000
.txtpajak.value=5000
.txthrgbersih.value=round((.txtharga.value)+ (.txtpajak.value),0)
.txtbeli.setfocus
else
.txtharga.value=60000
.txtpajak.value=6000
.txthrgbersih.value=round((.txtharga.value)+ (.txtpajak.value),0)
.txtbeli.setfocus
endif
endif
.refresh
Endwith
Object Txtbeli
Lostfocus
beli=thisform.txtbeli.value
hrgbersih=thisform.txthrgbersih.value
thisform.txttotal.value=round(val( beli) * (hrgbersih),0)
thisform.txtbayar.setfocus
thisform.refresh
Object Txtbayar
Interactive Change
bayar=thisform.txtbayar.value
total=thisform.txttotal.value
thisform.txtkembali.value=round(val(bayar) - (total),0)
thisform.refresh
Object Cmdbersih Click
with thisform
.txtnama.value=""
.combo1.value=""
.txtharga.value=""
.txtpajak.value=""
.txthrgbersih.value=""
.txtbeli.value=""
.txttotal.value=""
.txtbayar.value=""
.txtkembali.value=""
.txtjurusan.value=""
.txtnama.setfocus
.refresh
endwith
Object Timer1
Timer
thisform.txttanggal.value=date()
thisform.txtjam.value=time()
Object Cmdkeluar Click
pesan=messagebox("Anda Yakin Akan Ditutup?",32+1,"Konfirmasi")
if pesan=1
thisform.release
endif
thisform.refresh
No Community

25

Create By
Published
Email

: Adi Priyatmajaya
: 12 Januari 2009
: radivir@gmail.com

Microsoft Visual Foxpro

Penutup
Disini Saya menggunakan Foxpro versi 6.0 dan ditahun 2009 ini sudah ada Foxpro
versi terbarunya yaitu 9.0. para pembaca sekalian boleh memakai versi terbarunya, karena
cara kerjanya sama juga seperti versi 6.0, Cuma perbedaannya tampilan yang lebih menarik
dan ditambah dengan menu-menu tambahan lainnya.
Semoga bermanfaat Artikel Foxpro ini untuk para pembaca sekalian
Alasan penulis untuk membuat artikel ini adalah karena penulis ingin berbagi ilmu kepada
pembaca sekalian dan ingin membuat bangsa kita ini maju didalam teknologi informasi.
Karena menurut penulis ilmu itu sangatlah mahal, dengan begitu penulis ingin
membuat ilmu itu sangatlah murah, sehingga siapa saja bisa menikmatinya tanpa harus
membayar. Dengan begitu bangsa kita bisa bersaing dengan Negara lain.
Thanks to :
Allah SWT
Keluarga
Ratih yang selalu menjadi Inspirasiku
Bina Sarana Informatika (BSI) yang membuatku mengenal apa itu Komputer
Teman-teman yang selalu mendukungku untuk menuliskan artikel ini.

No Community

26

Anda mungkin juga menyukai