Anda di halaman 1dari 21

Seri Belajar Bahasa Pemrograman Visual

Ziyad Software Solo Indonesia

file:///C:\My Document\Modul Visual Foxpro.ODT

Belajar Sendiri
Microsoft Visual Foxpro 8
(Dapat juga diterapkan untuk Visual Foxpro 6)

Oleh: Chairullah Naury


CEO of Ziyad Software Solo Indonesia :)
paidja_bodonk@yahoo.com
http://naury.esmartguy.com

Lisensi Dokumen:
Dokumen ini HALAL ( )digunakan dan dapat disebarluaskankan secara bebas
selama tujuannya NON-PROFIT - NON KOMERSIAL, dengan syarat tidak
menghapus atau merubah atribut penulis dan pernyataan hak cipta yang disertakan
dalam setiap dokumen. Tidak diperbolehkan melakukan penulisan ulang, kecuali
mendapatkan ijin terlebih dahulu dari penulis.

SUB MATERI: MEMBUAT PROGRAM PENJUALAN SEDERHANA

PERHATIAN:

SERING-SERINGLAH MENYIMPAN PEKERJAAN ANDA HANYA DENGAN


MENEKAN TOMBOL CTRL - S

1. Buka Visual FoxPro 6.


2. Jika ada PROJECT yang masih terbuka, sebaiknya DITUTUP saja.
3. Pada COMMAND WINDOW ketik beberapa perintah berikut:
MD C:\NAMADIREKTORIANDA
SET DEFAULT TO C:\NAMADIREKTORIANDA
4. Buat sebuah tabel dengan nama: BARANG.DBF (Perintahnya: CREATE BARANG)

5. buat tabel lagi dengan nama: MJUAL.DBF (perintahnya: CREATE MJUAL). Tabel
MJUAL ini digunakan sebagai file MASTER PENJUALAN.

Seri Belajar Bahasa Pemrograman Visual


Ziyad Software Solo Indonesia

file:///C:\My Document\Modul Visual Foxpro.ODT

6. buat tabel sekali lagi dengan nama: TJUAL.DBF (perintahnya:


TJUAL). Tabel ini digunakan sebagai file TRANSAKSI PENJUALAN.

CREATE

7. pembuatan tabel sudah selesai.


8. buatlah sebuah form, simpan dengan nama FRMBARANG.

Property yang diubah:


Object

Property

Form1

Caption = Master Data Barang


AutoCenter = True
Borderstyle = Fixed Dialog
Closable = False
MaxButton = False
MinButton = False
ShowWindow = In Top-Level Form
WindowType = Modal
Name = cInput
Caption = Input Data

Command1

Seri Belajar Bahasa Pemrograman Visual


Ziyad Software Solo Indonesia

file:///C:\My Document\Modul Visual Foxpro.ODT

Command2

Name = cKoreksi
Caption = Koreksi Data
Name = cHapus
Caption = Hapus Data
Name = cSimpan
Caption = Simpan
Name = cBatal
Caption = Batal
Name = cTutup
Caption = Tutup
Name = lblStatus
Caption = lblStatus
Name = txtKdBarang
MaxLength = 4
Name = txtNmBarang
MaxLength = 25
Name = txtSatuan
MaxLength = 10
Name = txtHarga
DIBUILDER, pada Data Type pilih
Numeric, dan Input Mask diisi
9999999.
Name = cmbKdBarang
DIBUILDER,
Pilih
Tabel
BARANG,
kemudian
PINDAHKAN
semua
field
yang ada di AVAILABLE FIELDS ke
SELECTED FIELDS.
Name = DG
ReadOnly = True
DIBUILDER,
Pilih
Tabel
BARANG,
kemudian
PINDAHKAN
semua
field
yang ada di AVAILABLE FIELDS ke
SELECTED FIELDS.

Command3
Command4
Command5
Command6
Label1
Text1
Text2
Text3
Text4

Combo1

Grid1

9. Jika semua property sudah disesuaikan, JANGAN LUPA buat beberapa METHOD
berikut ini:
a. AKTIF
b. TIDAKAKTIF
c. KOSONGKAN
d. SIMPAN
e. SIMPANEDIT
f. HAPUS
10. JANGAN LUPA PULA untuk mengosongkan DATA ENVIRONMENT dari tabel BARANG.
JIKA DI DALAM DATA ENVIRONMENT MASIH ADA TABEL BARANG, SEBAIKNYA HAPUS
SAJA DENGAN KLIK TABEL BARANG dan TEKAN DELETE.
11. Jika sudah Oke semuanya, ketiklah listing program berikut:
FORM.LOAD
CLOSE DATABASES
CLOSE INDEXES
USE
SELECT A
USE BARANG EXCLUSIVE AGAIN
SET ORDER TO TAG KDBARANG
FORM.AKTIF
THISFORM.TXTKDBARANG.ENABLED = .F.
THISFORM.CMBKDBARANG.ENABLED = .F.
THISFORM.TXTNMBARANG.ENABLED= .T.
THISFORM.TXTSATUAN.ENABLED = .T.
THISFORM.TXTHARGA.ENABLED =.T.
THISFORM.CSIMPAN.ENABLED= .T.
THISFORM.CBATAL.ENABLED = .T.
THISFORM.CTUTUP.ENABLED =.F.
FORM.TIDAKAKTIF
THISFORM.TXTKDBARANG.ENABLED = .T.
THISFORM.CMBKDBARANG.ENABLED = .T.
THISFORM.TXTNMBARANG.ENABLED= .F.
THISFORM.TXTSATUAN.ENABLED = .F.
THISFORM.TXTHARGA.ENABLED =.F.
THISFORM.CSIMPAN.ENABLED= .F.
THISFORM.CBATAL.ENABLED = .F.
THISFORM.CTUTUP.ENABLED =.T.

Seri Belajar Bahasa Pemrograman Visual


Ziyad Software Solo Indonesia

file:///C:\My Document\Modul Visual Foxpro.ODT

FORM.KOSONGKAN
THISFORM.TXTKDBARANG.VALUE=' '
THISFORM.CMBKDBARANG.VALUE=' '
THISFORM.TXTNMBARANG.VALUE=' '
THISFORM.TXTSATUAN.VALUE=' '
THISFORM.TXTHARGA.VALUE=0
FORM.SIMPAN
SELECT A
APPEND BLANK
REPLACE KDBARANG
REPLACE NMBARANG
REPLACE SATUAN
REPLACE HARGA

WITH
WITH
WITH
WITH

THISFORM.TXTKDBARANG.Value
THISFORM.TXTNMBARANG.VALUE
THISFORM.TXTSATUan.Value
THISFORM.TXTHARGa.Value

FORM.SIMPANEDIT
SELECT A
SET ORDER TO TAG KDBARANG
SEEK(ALLTRIM(THISFORM.CMBKDbarang.Value))
IF FOUND()
REPLACE KDBARANG WITH THISFORM.CMBKDBARANG.Value
REPLACE NMBARANG WITH THISFORM.TXTNMBARANG.VALUE
REPLACE SATUAN
WITH THISFORM.TXTSATUan.Value
REPLACE HARGA
WITH THISFORM.TXTHARGa.Value
ENDIF
FORM.HAPUS
SELECT A
SET ORDER TO TAG KDBARANG
SEEK(ALLTRIM(THISFORM.CMBKDbarang.Value))
IF FOUND()
DELETE
ENDIF
FORM.INIT
SET DELETED ON
THISFORM.KOSONGkan()
THISFORM.TIDAKaktif()
thisform.LBLSTAtus.Caption = 'INPUT DATA'
FORM.UNLOAD
CLOSE DATABASES
CLOSE INDEXES
USE
CLOSE ALL
CINPUT.CLICK
THISFORM.KOSONGKAN()
THISFORM.TIDAKAKTIF()
THISFORM.TXTKDBARANG.Visible = .T.
THISFORM.CMBKDbarang.Visible= .F.
THISFORM.LBLSTAtus.Caption = 'INPUT DATA'
THISFORM.CSIMpan.Caption = '\<SIMPAN'
THISFORM.TXTKDBarang.SetFocus()
CKOREKSI.CLICK
THISFORM.KOSONGKAN()
THISFORM.TIDAKAKTIF()
THISFORM.TXTKDBARANG.Visible = .F.
THISFORM.CMBKDbarang.Visible= .T.
THISFORM.CSIMpan.Caption = '\<SIMPAN'
THISFORM.LBLSTAtus.Caption = 'KOREKSI DATA'
THISFORM.CMBKdbarang.Left = THISFORM.TXTKDBARANG.Left
THISFORM.CMBKDBarang.SetFocus()
CHAPUS.CLICK
THISFORM.KOSONGKAN()
THISFORM.TIDAKAKTIF()
THISFORM.TXTKDBARANG.Visible = .F.
THISFORM.CMBKDbarang.Visible= .T.
THISFORM.CSIMpan.Caption = 'H\<APUS'

Seri Belajar Bahasa Pemrograman Visual


Ziyad Software Solo Indonesia

file:///C:\My Document\Modul Visual Foxpro.ODT

THISFORM.LBLSTAtus.Caption = 'HAPUS DATA'


THISFORM.CMBKdbarang.Left = THISFORM.TXTKDBARANG.Left
THISFORM.CMBKDBarang.SetFocus()
CSIMPAN.CLICK
IF THISFORM.LBLSTATUS.Caption = 'INPUT DATA'
IF EMPTY(THISFORM.TXTKDBarang.Value) OR ;
EMPTY(THISFORM.TXTNMBarang.Value) OR ;
EMPTY(THISFORM.TXTSATUan.Value) OR ;
EMPTY(THISFORM.TXTHARGA.Value)
MESSAGEBOX('DATA
HARUS
DIISI
LENGKAP!',16,'INFORMASI')
RETURN
ENDIF
THISFORM.SIMPAN()
THISFORM.Refresh()
THISFORM.DG.Refresh()
THISFORM.KOSONGKAN()
THISFORM.TIDAKAKTIF()
THISFORM.TXTKDBarang.SetFocus()
ENDIF

DENGAN

IF THISFORM.LBLSTATUS.Caption = 'KOREKSI DATA'


IF EMPTY(THISFORM.CMBKDBarang.Value) OR ;
EMPTY(THISFORM.TXTNMBarang.Value) OR ;
EMPTY(THISFORM.TXTSATUan.Value) OR ;
EMPTY(THISFORM.TXTHARGA.Value)
MESSAGEBOX('DATA HARUS DIISI DENGAN LENGKAP!',16,'INFORMASI')
RETURN
ENDIF
THISFORM.SIMPANEDIT()
THISFORM.Refresh()
THISFORM.DG.Refresh()
THISFORM.KOSONGKAN()
THISFORM.TIDAKAKTIF()
THISFORM.CMBKDBarang.SetFocus()
ENDIF
IF THISFORM.LBLSTATUS.Caption = 'HAPUS DATA'
IF MESSAGEBOX('YAKIN DATA AKAN DIHAPUS?',36,'HAPUS DATA')=6
THISFORM.HAPUS()
THISFORM.Refresh()
THISFORM.DG.Refresh()
THISFORM.KOSONGKAN()
THISFORM.TIDAKAKTIF()
THISFORM.CMBKDBarang.SetFocus()
ENDIF
ENDIF
CBATAL.CLICK
THISFORM.KOSONGKAN()
THISFORM.TIDAKAKTIF()
IF THISFORM.TXTKDBARANG.VISIBLE = .T.
THISFORM.TXTKDBARANG.SETFOCUS()
ELSE
THISFORM.CMBKDBARANG.SETFOCUS()
ENDIF
CTUTUP.CLICK
THISFORM.Release()
TXTKDBARANG.INTERACTIVECHANGE
IF LEN(ALLTRIM(THISFORM.TXTKDBARANG.VALUE))<4
THISFORM.TIDAKAKTIF()
RETURN
ENDIF
SELECT A
SET ORDER TO TAG KDBARANG
SEEK(THISFORM.TXTKDBARANG.VALUE)
IF FOUND()
MESSAGEBOX('DATA BARANG SUDAH ADA!',16,'INFORMASI')
RETURN
ENDIF

Seri Belajar Bahasa Pemrograman Visual


Ziyad Software Solo Indonesia

file:///C:\My Document\Modul Visual Foxpro.ODT

THISFORM.AKTIF()
CMBKDBARANG.CLICK
SELECT A
SET ORDER TO TAG KDBARANG
SEEK(ALLTRIM(THISFORM.CMBKDBarang.Value))
IF FOUND()
THISFORM.TXTNMBarang.Value = NMBARANG
THISFORM.TXTSATUAN.Value = SATUAN
THISFORM.TXTHARGA.Value = HARGA
THISFORM.AKtif()
RETURN
ENDIF
MESSAGEBOX('DATA BARANG TIDAK ADA DALAM DATABASE!',16,'INFORMASI')
12. Pembuatan FORM BARANG sudah selesai, JALANKAN dan masukkan beberapa data.
13. Jika tidak ada kesalahan, tutup form Barang. Kemudian buat sebuah form
lagi, simpan dengan nama FRMJUAL.

Property yang diubah:


Object

Property

Form1

Caption = TRANSAKSI PENJUALAN


AutoCenter = True
Borderstyle = Fixed Dialog
Closable = False
MaxButton = False
MinButton = False
ShowWindow = In Top-Level Form
WindowType = Modal
Name = txtNota
MaxLength = 5
Name = txtTglJual
DIBUILDER, pada Data Type pilih
Date.
Name = txtNmBarang
ReadOnly = TRUE
Name = txtHarga
ReadOnly = True
Name = txtJumlah
DIBUILDER, pada Data Type pilih
Numeric, dan Input Mask diisi 999.
Name = txtSubTotal
DIBUILDER, pada Data Type pilih
Numeric, dan Input Mask diisi
9999999.
Name = txtTotal
DIBUILDER, pada Data Type pilih
Numeric, dan Input Mask diisi

Text1
Text2
Text3
Text4
Text5
Text6

Text7

Seri Belajar Bahasa Pemrograman Visual


Ziyad Software Solo Indonesia

file:///C:\My Document\Modul Visual Foxpro.ODT


9999999.

Combo1

Name = cmbKdBarang
DIBUILDER,
Pilih
Tabel
BARANG,
kemudian
PINDAHKAN
semua
field
yang ada di AVAILABLE FIELDS ke
SELECTED FIELDS.
Name = GRID1
ColumnCount = 5
ReadOnly = True
RecordSourceType = Table
Name = cSimpan
Caption = Simpan
Name = cHapus
Caption Hapus
Name = cBaru
Caption = Baru
Name = cTutup
Caption = Tutup

Grid1

Command1
Command2
Command3
Command4

14. Jika semua property sudah disesuaikan, JANGAN LUPA buat beberapa METHOD
berikut ini:
a. AKTIF
b. TIDAKAKTIF
c. KOSONGKAN
d. SIMPANMASTER
e. SIMPANTRANS
f. HAPUS
g. ATURGRID
h. ISIGRID
i. KOSONGGRID
15. JANGAN LUPA PULA untuk mengosongkan DATA ENVIRONMENT dari tabel. JIKA DI
DALAM DATA ENVIRONMENT MASIH ADA TABEL, SEBAIKNYA HAPUS SAJA DENGAN KLIK
TABEL dan TEKAN DELETE.
16. Jika sudah Oke semuanya, ketiklah listing program berikut:
FORM.LOAD
CLOSE DATABASES
CLOSE INDEXES
USE
CREATE TABLE tSementara(kdBarang c(4), nmBarang c(25), harga n(7), jumlah
n(3), subtot n(8))
SELECT A
USE BARANG EXCLUSIVE AGAIN
SET ORDER TO TAG KDBARANG
SELECT B
USE MJUAL EXCLUSIVE AGAIN
SET ORDER TO TAG NOTA
SELECT C
USE TJUAL EXCLUSIVE AGAIN
SET ORDER TO TAG NOTA
SELECT D
USE tSementara EXCLUSIVE AGAIN
FORM.AKTIF
THISFORM.TXTNOTA.Enabled = .F.
THISFORM.TXTTGLjual.Enabled = .T.
THISFORM.CMBKdBarang.Enabled = .T.
THISFORM.TXTJUmlah.Enabled = .T.
thisform.txttotal.Enabled = .T.
THISFORM.CSIMpan.Enabled = .T.
THISFORM.CHAPUS.Enabled = .T.
THISFORM.CBARU.Enabled = .T.
THISFORM.CTUTUp.Enabled = .F.
FORM.TIDAKAKTIF
THISFORM.TXTNOTA.Enabled = .T.
THISFORM.TXTTGLjual.Enabled = .F.
THISFORM.CMBKdBarang.Enabled = .F.
THISFORM.TXTJUmlah.Enabled = .F.
thisform.txttotal.Enabled = .f.

Seri Belajar Bahasa Pemrograman Visual


Ziyad Software Solo Indonesia

file:///C:\My Document\Modul Visual Foxpro.ODT

THISFORM.CSIMpan.Enabled = .F.
THISFORM.CHAPUS.Enabled = .F.
THISFORM.CBARU.Enabled = .F.
THISFORM.CTUTUp.Enabled = .T.
FORM.KOSONGKAN
THISFORM.TXTNOTA.VALUE=''
THISFORM.TXTTGLjual.VALUE=DATE()
THISFORM.CMBKdBarang.VALUE=''
THISFORM.TXTJUmlah.VALUE=0
THISFORM.TXTHARGA.ValUE =0
THISFORM.TXTSUBTotal.ValUE =0
THISFORM.TXTTOTAL.ValUE =0
FORM.ATURGRID
THISFORM.GRID1.COLumn1.HEader1.Caption = 'Kode Barang'
thisform.grid1.column2.header1.Caption = 'Nama Barang'
thisform.grid1.column3.header1.Caption = 'Harga'
thisform.grid1.column4.header1.Caption = 'Jumlah'
thisform.grid1.column5.header1.Caption = 'Sub Total'
thisform.grid1.column1.Width = thisform.cmbkdBarang.Width
thisform.grid1.column2.Width = thisform.txtnmBarang.Width
thisform.grid1.column3.Width = thisform.txtharga.Width
thisform.grid1.column4.Width = thisform.txtjumlah.Width
thisform.grid1.column5.Width = thisform.txtsubTotal.Width
FORM.ISIGRID
TTL=0
TTL2=0
HRG=0
NMB=' '
SELECT D
DELETE ALL
SELECT C
SET ORDER TO TAG NOTA
GO TOP
SCAN
IF NOTA = ALLTRIM(THISFORM.TXTNOTA.Value)
SELECT A
SET ORDER TO TAG KDBARANG
SEEK(TJUAL.KDBARANG)
IF FOUND()
NMB = BARANG.NMBARANG
HRG = BARANG.HARGA
ENDIF
TTL = TJUAL.JML_JUAL * HRG
TTL2= TTL2 + TTL
SELECT D
APPEND BLANK
REPLACE KDBARANG WITH TJUAL.KDBARANG
REPLACE NMBARANG WITH NMB
REPLACE HARGA WITH HRG
REPLACE JUMLAH WITH TJUAL.JML_JUAL
REPLACE SUBTOT WITH TTL
ENDIF
ENDSCAN
THISFORM.TXTTOtal.Value = TTL2
FORM.KOSONGGRID
SELECT D
DELETE ALL
THISFORM.Refresh()
THISFORM.GRId1.Refresh()
FORM.SIMPANMASTER
SELECT B
SET ORDER TO TAG NOTA
SEEK(ALLTRIM(THISFORM.TXTNOTA.Value))
IF !FOUND()
APPEND BLANK
REPLACE NOTA WITH THISFORM.TXTNOTA.Value
REPLACE TGLJUAL WITH THISFORM.TXTTGLJUAL.Value
REPLACE TOTAL WITH THISFORM.TXTTOtal.Value
ELSE
REPLACE TOTAL WITH THISFORM.TXTTOTAL.Value

Seri Belajar Bahasa Pemrograman Visual


Ziyad Software Solo Indonesia

file:///C:\My Document\Modul Visual Foxpro.ODT

ENDIF
FORM.SIMPANTRANS
SELECT C
SET ORDER TO TAG NOTA
APPEND BLANK
REPLACE NOTA WITH THISFORM.TXTNOTA.Value
REPLACE KDBARANG WITH THISFORM.CMBKDBarang.Value
REPLACE JML_JUAL WITH THISFORM.TXTJUMlah.Value
FORM.HAPUS
SELECT B
SET ORDER TO TAG NOTA
SEEK(ALLTRIM(THISFORM.TXTNOta.Value))
IF FOUND()
DELETE
ENDIF
SELECT C
SET ORDER TO TAG NOTA
DELETE FOR TJUAL.NOTA = ALLTRIM(THISFORM.TXTNOTA.Value)
FORM.INIT
SET DELETED ON
THISFORM.TIDAkaktif()
THISFORM.KOSONGkan()
thisform.aturgrid()
thisform.grid1.RecordSource = 'tSementara.DBF'
THISFORM.TXTNOta.SetFocus()
FORM.UNLOAD
CLOSE DATABASES
CLOSE INDEXES
USE
CLOSE ALL
IF FILE('TSEMENTARA.DBF')
DELETE FILE('TSEMENTARA.DBF')
ENDIF
TXTNOTA.INTERACTIVECHANGE
IF LEN(ALLTRIM(THISFORM.TXTNOTA.Value))<5
THISFORM.TIDAKAKTIF()
RETURN
ENDIF
SELECT B
SET ORDER TO TAG NOTA
SEEK(ALLTRIM(THISFORM.TXTNOTA.Value))
IF FOUND()
IF
MESSAGEBOX('DATA
SUDAH
DIEDIT?',36,'INFORMASI')=6
THISFORM.KOSONGgrid()
THISFORM.ISIGRID()
thisform.Refresh()
thisform.grid1.Refresh()
THISFORM.AKTIF()
THISFORM.CMBKDBarang.Enabled = .F.
THISFORM.TXTNMBarang.Enabled = .F.
THISFORM.TXTJUMlah.Enabled = .F.
THISFORM.TXTHARGa.Enabled = .F.
THISFORM.TXTSUBTotal.Enabled = .F.
THISFORM.CSIMPAN.Enabled = .F.
THISFORM.CHAPUS.Enabled = .T.
ENDIF
RETURN
ENDIF
THISFORM.AKTIF()
CMBKDBARANG.CLICK
SELECT C
SET ORDER TO TAG NOTA
GO TOP

ADA,

APAKAH

AKAN

Seri Belajar Bahasa Pemrograman Visual


Ziyad Software Solo Indonesia

file:///C:\My Document\Modul Visual Foxpro.ODT

SCAN
IF

(TJUAL.NOTA
=
ALLTRIM(THISFORM.TXTNOta.Value))
(TJUAL.KDBARANG = ALLTRIM(THISFORM.CMBKDBarang.Value))
MESSAGEBOX('DATA BARANG SUDAH ADA',16,'INFORMASI')
RETURN
ENDIF
ENDSCAN

.AND.;

SELECT A
SET ORDER TO TAG KDBARANG
SEEK(ALLTRIM(THISFORM.CMbKdBarang.Value))
IF FOUND()
THISFORM.TXTNMBarang.Value = NMBARANG
THISFORM.TXTHARGA.Value = HARGA
thisform.txtjumlah.SetFocus()
ELSE
THISFORM.TXTNMBarang.Value = ' '
THISFORM.TXTHARGA.Value = 0
ENDIF
CSIMPAN.CLICK
IF EMPTY(THISFORM.TXTTGLjual.Value) .OR. ;
EMPTY(THISFORM.CMBKdBarang.Value) .OR. ;
EMPTY(THISFORM.TXTJUMlah.Value)
MESSAGEBOX('DATA HARUS DIISI LENGKAP',16,'INFORMASI')
RETURN
ENDIF
THISFORM.SIMPANTRans()
thisform.isigrid()
THISFORM.SIMPANMASTER()
thisform.Refresh()
thisform.grid1.Refresh()
THISFORM.CMBKDBarang.Value = ' '
THISFORM.TXTNMBArang.Value =' '
THISFORM.TXTHARGA.Value = 0
THISFORM.TXTJUMlah.VALUE = 0
THISFORM.TXTSUBTotal.Value = 0
THISFORM.CMBKdBarang.SetFocus()
CHAPUS.CLICK
IF MESSAGEBOX('YAKIN DATA AKAN DIHAPUS?',36,'HAPUS DATA')=6
THISFORM.HAPUS()
THISFORM.KOSONGKAN()
THISFORM.KOSONGgrid()
THISFORM.GRID1.Refresh()
THISFORM.Refresh()
THISFORM.TIDAkaktif()
THISFORM.TXTNOTA.SetFocus()
ENDIF
CBARU.CLICK
THISFORM.KOSONGkan()
THISFORM.KOSOnggrid()
THISFORM.TIDAkaktif()
THISFORM.CMBKDBarang.Value = ' '
THISFORM.TXTNMBArang.Value =' '
THISFORM.TXTHARGA.Value = 0
THISFORM.TXTJUMlah.VALUE = 0
THISFORM.TXTSUBTotal.Value = 0
THISFORM.TXTNOta.SetFocus()
CTUTUP.CLICK
thisform.Release()
17. Pembuatan FORM PENJUALAN sudah selesai, JALANKAN dan masukkan beberapa
data.
18. Jika sudah tidak ada kesalahan, tutup saja form tersebut.
19. Buat sebuah REPORT, simpan dengan nama RPTBARANG.
Pada RPTBARANG yang masih kosong, klik kanan report kemudian pilih Data
Environment dan pilih tabel BARANG, sehingga pada Data Environment
terdapat sebuah tabel yaitu tabel BARANG.

10

Seri Belajar Bahasa Pemrograman Visual


Ziyad Software Solo Indonesia

file:///C:\My Document\Modul Visual Foxpro.ODT

Kemudian klik pada Fields pada tabel BARANG, kemudian tarik ke REPORT.
Dan rapikanlah report sehingga tampak seperti gambar berikut:

20. Jika

sudah rapi dan oke, Simpan Report dan klik tombol PREVIEW (
).
21. Buat lagi sebuah REPORT, simpan dengan nama RPTJUAL.
Pada RPTJUAL yang masih kosong, klik kanan report kemudian pilih Data
Environment dan pilih tabel TJUAL, MJUAL, dan BARANG sehingga pada Data
Environment terdapat TIGA buah tabel yaitu tabel TJUAL, MJUAL dan BARANG.

Kemudian buatlah LINK/ HUBUNGKAN field NOTA pada TJUAL dengan field NOTA
pada MJUAL. Buat pula LINK field KDBARANG pada TJUAL ke KDBARANG pada
BARANG. Sehingga relasi antar tabel pada Data Environment tampak seperti
pada gambar berikut:

11

Seri Belajar Bahasa Pemrograman Visual


Ziyad Software Solo Indonesia

file:///C:\My Document\Modul Visual Foxpro.ODT

Klik field NOTA pada TJUAL dan tariklah ke REPORT, tarik pula
field KDBARANG dan JML_JUAL pada TJUAL ke REPORT. Klik field TGLJUAL dan
TOTAL pada MJUAL dan tarik ke REPORT. Terakhir, pilih field NMBARANG dan
HARGA pada tabel BARANG kemudian tarik ke REPORT. Kalau sudah selesai,
tutup Data Environment dan kembali ke Report PENJUALAN. Pada RPTJUAL klik
MENU REPORT (tempatnya di Baris Menu File, Edit, View, Format, dst)
kemudian pilih DATA GROUPING dan isi Group Expressions dengan TJUAL.NOTA
kemudian klik OK, seperti tampak pada gambar berikut:

Sehingga pada RPTJUAL akan terdapat BAND baru yaitu BAND GROUP HEADER 1:
NOTA dan GROUP FOOTER 1: NOTA. Aturlah semua obyek pada report dan
rapikan sehingga hasil akhirnya tampak seperti pada gambar berikut ini
(PERHATIKAN PENEMPATAN OBYEK, HARUS SESUAI DENGAN BAND-NYA):

12

Seri Belajar Bahasa Pemrograman Visual


Ziyad Software Solo Indonesia

file:///C:\My Document\Modul Visual Foxpro.ODT

untuk membuat field sub total pada Band Detail, klik tool
dan
letakkan pada Band Detail. Kemudian jika muncul kotak dialog REPORT
EXPRESSION, isi pada Expression dengan BARANG.HARGA*TJUAL.JML_JUAL dan
klik OK.

22. Jika

sudah rapi dan oke, Simpan Report dan klik tombol PREVIEW (
).
23. Pembuatan report sudah selesai.
24. Buatlah sebuah form lagi, simpan dengan nama FRMRPTBARANG, tampilan form
tampak seperti gambar berikut:

Property yang diubah:


Object

Property

Form1

Caption = LAPORAN DATA BARANG


AutoCenter = True
Borderstyle = Fixed Dialog
Closable = False
MaxButton = False
MinButton = False
ShowWindow = In Top-Level Form
WindowType = Modal
Name = cLayar
Caption = LAYAR
Name = cPrinter
Caption = PRINTER
Name = cTutup
Caption = TUTUP

Command1
Command2
Command3
25. Ketiklah listing program berikut:
CLAYAR.CLICK
REPORT FORM RPTBARANG PREVIEW
THISFORM.Refresh()
CPRINTER.CLICK
REPORT FORM RPTBARANG TO PRINTER
THISFORM.Refresh()

13

Seri Belajar Bahasa Pemrograman Visual


Ziyad Software Solo Indonesia

file:///C:\My Document\Modul Visual Foxpro.ODT

CTUTUP.CLICK
THISFORM.RELEASE()
26. Simpan FORM dan jalankan. Jika sudah benar, tutup form tersebut.
27. Buat lagi sebuah form, Simpan dengan nama FRMRPTJUAL.

Property yang diubah:


Object
Form1

Command1
Command2
Command3
OptionGroup1

Combo1

Property
Caption = LAPORAN PENJUALAN BARANG
AutoCenter = True
Borderstyle = Fixed Dialog
Closable = False
MaxButton = False
MinButton = False
ShowWindow = In Top-Level Form
WindowType = Modal
Name = cLayar
Caption = LAYAR
Name = cPrinter
Caption = PRINTER
Name = cTutup
Caption = TUTUP
Name = Opsi
DIBUILDER, Number of Buttons diisi dengan
2,typenya dipilih Standard, dan Captionnya
masing-masing
diisi
dengan
SELURUH
PENJUALAN dan PENJUALAN PER NOTA. Seperti
gambar berikut:

Name = cmbNota
DIBUILDER,
pilih
tabel
MJUAL.
Pada
Available Fields pilih NOTA dan TGLJUAL
saja dan pindahkan ke Selected Fields.
Sehingga di Selected Fields hanya berisi
NOTA dan TGLJUAL saja.

14

Seri Belajar Bahasa Pemrograman Visual


Ziyad Software Solo Indonesia

file:///C:\My Document\Modul Visual Foxpro.ODT

28. Setelah itu ketik listing program berikut:


OPTION1.CLICK
thisform.cmbnota.Enabled = .f.
thisform.cmbnota.Value =' '
OPTION2.CLICK
thisform.cmbnota.Enabled = .t.
thisform.cmbnota.Value =' '
CLAYAR.CLICK
IF thisform.opsi.option1.Value = 1
REPORT FORM RPTjual PREVIEW
THISFORM.Refresh()
ELSE
REPORT
FORM
RPTJUAL
ALLTRIM(THISFORM.CMBNOTA.Value); PREVIEW
THISFORM.Refresh()
ENDIF
CPRINTER.CLICK
IF thisform.opsi.option1.Value = 1
REPORT FORM RPTjual TO PRINTER
THISFORM.Refresh()
ELSE
REPORT
FORM
RPTJUAL
ALLTRIM(THISFORM.CMBNOTA.Value); TO PRINTER
THISFORM.Refresh()
ENDIF

FOR

MJUAL.NOTA

FOR

MJUAL.NOTA

CTUTUP.CLICK
THISFORM.Release()
29. Jika sudah selesai, simpan dan jalankan program, apabila sudah tidak ada
kesalahan, tutup form.
30. Buat lagi sebuah form, simpan dengan FRMUTAMA.

15

Seri Belajar Bahasa Pemrograman Visual


Ziyad Software Solo Indonesia

file:///C:\My Document\Modul Visual Foxpro.ODT

Property yang diubah:


Object
Form1

Command1
Command2
Command3
Command4
Command5
Label1
Label2

Property
Caption = MENU UTAMA
AutoCenter = True
Borderstyle = Fixed Dialog
Closable = False
MaxButton = False
MinButton = False
ShowWindow = As Top-Level Form
WindowState = Maximized
WindowType = Modal
Name = CBARANG
Caption = BARANG
Name = CPENJUALAN
Caption = PENJUALAN
Name = CLAPBARANG
Caption = LAP. BARANG
Name = CLAPPENJUALAN
Caption = LAP. PENJUALAN
Name = CKELUAR
Caption = KELUAR
Caption = KOMPUTERISASI SISTEM PENJUALAN
Alignment = Center
Caption = DI MINI MARKET SUKSES SOLO
Alignment = Center

31. Ketik listing program berikut ini:


CBARANG.CLICK
if type("frmbarang")#"0"
do form frmbarang
endif
CPENJUALAN.CLICK
if type("frmJUAL")#"0"
do form frmJUAL
endif
CLAPBARANG.CLICK
if type("frmRPTbarang")#"0"
do form frmRPTbarang
endif
CLAPPENJUALAN.CLICK
IF TYPE("FRMRPTJUAL")#"0"
DO FORM FRMRPTJUAL
ENDIF
CKELUAR.CLICK
J=MESSAGEBOX("KELUAR DARI PROGRAM? ",32+4,"KELUAR")

16

Seri Belajar Bahasa Pemrograman Visual


Ziyad Software Solo Indonesia

file:///C:\My Document\Modul Visual Foxpro.ODT

IF J=6
CLEA EVENT
CLOSE ALL
APPLICATION.ACTIVEFORM.RELEASE()
ENDIF
32. Kalau sudah selesai, klik FILE NEW PROGRAM NEW FILE.
33. Pada editor program yang muncul, ketiklah baris-baris perintah berikut
ini:
CLOSE ALL
SET TALK OFF
SET STAT OFF
SET CONFIRM OFF
SET AUTOSAVE ON
SET DELETE ON
SET DATE ITALI
SET CENT ON
SET EXACT ON
_SCREEN.WIDTH=2
_SCREEN.HEIGHT=2
_SCREEN.VISIBLE=.F.
DO FORM FRMUTAMA
READ EVEN
QUIT

34. simpan

file program tersebut dengan nama PRGJUAL.

35. Nah,

program sudah selesai dibuat. Namun lebih baik lagi jika Form-form,
Report, dan tabel-tabel yang sudah dibuat diintegrasikan dalam satu
PROJECT. Cara mengintegrasikannya adalah sebagai berikut:
a. klik File New, kemudian pilih PROJECT, pilih lagi NEW PROJECT.
b. Pada kotak dialog CREATE, Enter Project File diisi dengan PENJUALAN,
lihat gambar!

Kemudian klik SAVE.

17

Seri Belajar Bahasa Pemrograman Visual


Ziyad Software Solo Indonesia

file:///C:\My Document\Modul Visual Foxpro.ODT

c. Visual FoxPro menampilkan PROJECT MANAGER

d. Pada Project Manager, klik Tab DATA

Kemudian klik DATABASES, dan klik tombol NEW NEW DATABASE, pada
kotak dialog CREATE, isi pada kotak ENTER DATABASE dengan DATAJUAL,
lihat gambar!

Kemudian klik SAVE.

18

Seri Belajar Bahasa Pemrograman Visual


Ziyad Software Solo Indonesia

file:///C:\My Document\Modul Visual Foxpro.ODT

e. Visual Foxpro menampilkan DATABASE DESIGNER. Pada Database Designer,


klik kanan dan pilih ADD TABLE, lihat gambar!

f.

Pada kotak dialog OPEN, pilih tabel BARANG, tabel MJUAL dan tabel
TJUAL sekaligus dan klik OK. Sehingga pada DATABASE DESIGNER terdapat
tiga buah tabel, yaitu BARANG, MJUAL dan TJUAL. Kalau sudah selesai,
tutup saja DATABASE DESIGNER.
Pada PROJECT MANAGER, klik Tab DOCUMENTS, pilih FORMS dan klik tombol
ADD. Pada kotak dialog OPEN, pilih semua file kemudian klik OK

19

Seri Belajar Bahasa Pemrograman Visual


Ziyad Software Solo Indonesia

g.

file:///C:\My Document\Modul Visual Foxpro.ODT

Setelah kembali ke PROJECT MANAGER, masih pada Tab DOCUMENTS, pilih


Reports, dan klik
tombol ADD. Pada kotak dialog OPEN, pilih semua
file kemudian klik OK.

h.

Setelah kembali ke PROJECT MANAGER, klik pada Tab Code, klik


Programs, kemudian klik ADD. Pada kotak dialog pilihlah PRGJUAL.
Kemudian klik OK.
i. Kemudian klik tanda + (plus) di sebelah kiri tulisan Programs
sehingga muncul PRGJUAL. Lakukan klik kanan pada PRGJUAL dan pilih
SET MAIN. Sehingga tulisan PRGJUAL terlihat tebal.
j. Selanjutnya jalankan PRGJUAL untuk mencoba program, caranya klik
PRGJUAL kemudian klik tombol RUN pada PROJECT MANAGER.
k. Jika sudah tidak ada masalah, berarti pembuatan program sudah
selesai.
l. Langkah terakhir adalah mengcompile project agar menjadi file
EXECUTABLE.
m. Cara mengcompile adalah sebagai berikut, pada PROJECT MANAGER, klik
tombol BUILD.
n. Pada kotak dialog BUILD OPTIONS, sesuaikan dengan gambar berikut ini:

20

Seri Belajar Bahasa Pemrograman Visual


Ziyad Software Solo Indonesia

file:///C:\My Document\Modul Visual Foxpro.ODT

Klik OK. Selama beberapa saat akan ditampilkan proses kompilasi.


Tunggu hingga selesai. Jika sudah selesai, maka pada Status Bar
Visual FoxPro (terletak pada bagian pojok kiri bawah Window Visual
FoxPro) akan tertera pesan BUILD EXECUTABLE COMPLETED
o. JIKA TERDAPAT PESAN KESALAHAN/ KEGAGALAN DALAM MENGCOMPILE, PERIKSA
KEMBALI PROGRAM ANDA DAN BETULKAN SESUAI PETUNJUK PADA PESAN
KESALAHAN TERSEBUT. BIASANYA AKAN DIJELASKAN LETAK KESALAHANNYA.
SETELAH DIBETULKAN COMPILE LAGI PROJECT ANDA.
p. SELESAI. Tutuplah PROJECT MANAGER.
q. Bukalah WINDOWS EXPLORER, masuklah ke direktori tempat Anda menyimpan
Project Anda tersebut. Cari file PENJUALAN.EXE. klik ganda file
tersebut. Jalankan program Anda tersebut.

Jika pembuatan program diatas sudah berhasil, berarti Anda sudah menguasai
dasar-dasar pemrograman database dengan Visual FoxPro. Dan untuk membuktikan
bahwa Anda sudah benar-benar mahir membuat program dengan Visual FoxPro,
maka sebagai TANTANGAN bagi Anda buatlah sebuah program yang menangani suatu
kasus, misalnya Pembelian, Stok, Pendaftaran Siswa Baru, Perpustakaan, atau
yang lainnya.

21