ppa visual foxpro

21
Seri Belajar Bahasa Pemrograman Visual Ziyad Software Solo Indonesia file:///C:\My Document\Modul Visual Foxpro.ODT Belajar Sendiri Belajar Sendiri Microsoft Visual Foxpro 8 Microsoft Visual Foxpro 8 (Dapat juga diterapkan untuk Visual Foxpro 6) Oleh: Chairullah Naury CEO of Ziyad Software Solo Indonesia :) [email protected] http://naury.esmartguy.com SUB MATERI: MEMBUAT PROGRAM PENJUALAN SEDERHANA 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. 1 PERHATIAN: SERING-SERINGLAH MENYIMPAN PEKERJAAN ANDA HANYA DENGAN MENEKAN TOMBOL CTRL - S 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.

Upload: nano-nugroho

Post on 13-Jul-2016

206 views

Category:

Documents


16 download

DESCRIPTION

APlikasi gudang dengan Foxpro

TRANSCRIPT

Page 1: PPA Visual Foxpro

Seri Belajar Bahasa Pemrograman VisualZiyad Software Solo Indonesia file:///C:\My Document\Modul Visual Foxpro.ODT

Belajar Sendiri Belajar Sendiri Microsoft Visual Foxpro 8Microsoft Visual Foxpro 8

(Dapat juga diterapkan untuk Visual Foxpro 6)

Oleh: Chairullah NauryCEO of Ziyad Software Solo Indonesia :)[email protected]://naury.esmartguy.com

SUB MATERI: MEMBUAT PROGRAM PENJUALAN SEDERHANA

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:\NAMADIREKTORIANDASET 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.

1

PERHATIAN: SERING-SERINGLAH MENYIMPAN PEKERJAAN ANDA HANYA DENGAN MENEKAN TOMBOL CTRL - S

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.

Page 2: PPA Visual Foxpro

Seri Belajar Bahasa Pemrograman VisualZiyad Software Solo Indonesia file:///C:\My Document\Modul Visual Foxpro.ODT

6. buat tabel sekali lagi dengan nama: TJUAL.DBF (perintahnya: CREATE TJUAL). Tabel ini digunakan sebagai file TRANSAKSI PENJUALAN.

7. pembuatan tabel sudah selesai.8. buatlah sebuah form, simpan dengan nama FRMBARANG.

Property yang diubah:Object Property

Form1 Caption = ‘Master Data Barang’AutoCenter = TrueBorderstyle = Fixed DialogClosable = FalseMaxButton = FalseMinButton = FalseShowWindow = In Top-Level FormWindowType = Modal

Command1 Name = cInputCaption = ‘Input Data’

2

Page 3: PPA Visual Foxpro

Seri Belajar Bahasa Pemrograman VisualZiyad Software Solo Indonesia file:///C:\My Document\Modul Visual Foxpro.ODT

Command2 Name = cKoreksiCaption = ‘Koreksi Data’

Command3 Name = cHapusCaption = ‘Hapus Data’

Command4 Name = cSimpanCaption = ‘Simpan’

Command5 Name = cBatalCaption = ‘Batal’

Command6 Name = cTutupCaption = ‘Tutup’

Label1 Name = lblStatusCaption = ‘lblStatus’

Text1 Name = txtKdBarangMaxLength = 4

Text2 Name = txtNmBarangMaxLength = 25

Text3 Name = txtSatuanMaxLength = 10

Text4 Name = txtHargaDIBUILDER, pada Data Type pilih Numeric, dan Input Mask diisi 9999999.

Combo1 Name = cmbKdBarangDIBUILDER, Pilih Tabel BARANG, kemudian PINDAHKAN semua field yang ada di AVAILABLE FIELDS ke SELECTED FIELDS.

Grid1 Name = DGReadOnly = TrueDIBUILDER, Pilih Tabel BARANG, kemudian PINDAHKAN semua field yang ada di AVAILABLE FIELDS ke SELECTED FIELDS.

9. Jika semua property sudah disesuaikan, JANGAN LUPA buat beberapa METHOD berikut ini:

a. AKTIFb. TIDAKAKTIFc. KOSONGKANd. SIMPANe. SIMPANEDITf. 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.LOADCLOSE DATABASESCLOSE INDEXESUSE

SELECT AUSE BARANG EXCLUSIVE AGAINSET ORDER TO TAG KDBARANG

FORM.AKTIFTHISFORM.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.TIDAKAKTIFTHISFORM.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.

3

Page 4: PPA Visual Foxpro

Seri Belajar Bahasa Pemrograman VisualZiyad Software Solo Indonesia file:///C:\My Document\Modul Visual Foxpro.ODT

FORM.KOSONGKANTHISFORM.TXTKDBARANG.VALUE=' 'THISFORM.CMBKDBARANG.VALUE=' 'THISFORM.TXTNMBARANG.VALUE=' 'THISFORM.TXTSATUAN.VALUE=' 'THISFORM.TXTHARGA.VALUE=0

FORM.SIMPANSELECT AAPPEND BLANKREPLACE KDBARANG WITH THISFORM.TXTKDBARANG.ValueREPLACE NMBARANG WITH THISFORM.TXTNMBARANG.VALUEREPLACE SATUAN WITH THISFORM.TXTSATUan.ValueREPLACE HARGA WITH THISFORM.TXTHARGa.Value

FORM.SIMPANEDITSELECT ASET ORDER TO TAG KDBARANGSEEK(ALLTRIM(THISFORM.CMBKDbarang.Value))IF FOUND()

REPLACE KDBARANG WITH THISFORM.CMBKDBARANG.ValueREPLACE NMBARANG WITH THISFORM.TXTNMBARANG.VALUEREPLACE SATUAN WITH THISFORM.TXTSATUan.ValueREPLACE HARGA WITH THISFORM.TXTHARGa.Value

ENDIF

FORM.HAPUSSELECT ASET ORDER TO TAG KDBARANGSEEK(ALLTRIM(THISFORM.CMBKDbarang.Value))IF FOUND()

DELETEENDIF

FORM.INITSET DELETED ON

THISFORM.KOSONGkan()THISFORM.TIDAKaktif()

thisform.LBLSTAtus.Caption = 'INPUT DATA'

FORM.UNLOADCLOSE DATABASESCLOSE INDEXESUSE

CLOSE ALL

CINPUT.CLICKTHISFORM.KOSONGKAN()THISFORM.TIDAKAKTIF()THISFORM.TXTKDBARANG.Visible = .T. THISFORM.CMBKDbarang.Visible= .F.THISFORM.LBLSTAtus.Caption = 'INPUT DATA'

THISFORM.CSIMpan.Caption = '\<SIMPAN'THISFORM.TXTKDBarang.SetFocus()

CKOREKSI.CLICKTHISFORM.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.CLICKTHISFORM.KOSONGKAN()THISFORM.TIDAKAKTIF()THISFORM.TXTKDBARANG.Visible = .F. THISFORM.CMBKDbarang.Visible= .T.THISFORM.CSIMpan.Caption = 'H\<APUS'

4

Page 5: PPA Visual Foxpro

Seri Belajar Bahasa Pemrograman VisualZiyad 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.CLICKIF 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 DENGAN

LENGKAP!',16,'INFORMASI')RETURN

ENDIFTHISFORM.SIMPAN()THISFORM.Refresh()THISFORM.DG.Refresh()THISFORM.KOSONGKAN()THISFORM.TIDAKAKTIF()THISFORM.TXTKDBarang.SetFocus()

ENDIF

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') RETURNENDIFTHISFORM.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()

ENDIFENDIF

CBATAL.CLICKTHISFORM.KOSONGKAN()THISFORM.TIDAKAKTIF()IF THISFORM.TXTKDBARANG.VISIBLE = .T.

THISFORM.TXTKDBARANG.SETFOCUS()ELSE

THISFORM.CMBKDBARANG.SETFOCUS()ENDIF

CTUTUP.CLICKTHISFORM.Release()

TXTKDBARANG.INTERACTIVECHANGEIF LEN(ALLTRIM(THISFORM.TXTKDBARANG.VALUE))<4

THISFORM.TIDAKAKTIF()RETURN

ENDIF

SELECT ASET ORDER TO TAG KDBARANGSEEK(THISFORM.TXTKDBARANG.VALUE)IF FOUND()

MESSAGEBOX('DATA BARANG SUDAH ADA!',16,'INFORMASI')RETURN

ENDIF

5

Page 6: PPA Visual Foxpro

Seri Belajar Bahasa Pemrograman VisualZiyad Software Solo Indonesia file:///C:\My Document\Modul Visual Foxpro.ODT

THISFORM.AKTIF()

CMBKDBARANG.CLICKSELECT ASET ORDER TO TAG KDBARANGSEEK(ALLTRIM(THISFORM.CMBKDBarang.Value))IF FOUND()

THISFORM.TXTNMBarang.Value = NMBARANGTHISFORM.TXTSATUAN.Value = SATUANTHISFORM.TXTHARGA.Value = HARGATHISFORM.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 = TrueBorderstyle = Fixed DialogClosable = FalseMaxButton = FalseMinButton = FalseShowWindow = In Top-Level FormWindowType = Modal

Text1 Name = txtNotaMaxLength = 5

Text2 Name = txtTglJualDIBUILDER, pada Data Type pilih Date.

Text3 Name = txtNmBarangReadOnly = TRUE

Text4 Name = txtHargaReadOnly = True

Text5 Name = txtJumlahDIBUILDER, pada Data Type pilih Numeric, dan Input Mask diisi 999.

Text6 Name = txtSubTotalDIBUILDER, pada Data Type pilih Numeric, dan Input Mask diisi 9999999.

Text7 Name = txtTotalDIBUILDER, pada Data Type pilih Numeric, dan Input Mask diisi

6

Page 7: PPA Visual Foxpro

Seri Belajar Bahasa Pemrograman VisualZiyad Software Solo Indonesia file:///C:\My Document\Modul Visual Foxpro.ODT

9999999.

Combo1 Name = cmbKdBarangDIBUILDER, Pilih Tabel BARANG, kemudian PINDAHKAN semua field yang ada di AVAILABLE FIELDS ke SELECTED FIELDS.

Grid1 Name = GRID1ColumnCount = 5ReadOnly = TrueRecordSourceType = Table

Command1 Name = cSimpanCaption = ‘Simpan’

Command2 Name = cHapusCaption ‘Hapus’

Command3 Name = cBaruCaption = ‘Baru’

Command4 Name = cTutupCaption = ‘Tutup’

14. Jika semua property sudah disesuaikan, JANGAN LUPA buat beberapa METHOD berikut ini:

a. AKTIFb. TIDAKAKTIFc. KOSONGKANd. SIMPANMASTERe. SIMPANTRANSf. HAPUSg. ATURGRIDh. ISIGRIDi. 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.LOADCLOSE DATABASESCLOSE INDEXESUSE

CREATE TABLE tSementara(kdBarang c(4), nmBarang c(25), harga n(7), jumlah n(3), subtot n(8))

SELECT AUSE BARANG EXCLUSIVE AGAINSET ORDER TO TAG KDBARANG

SELECT BUSE MJUAL EXCLUSIVE AGAINSET ORDER TO TAG NOTA

SELECT CUSE TJUAL EXCLUSIVE AGAINSET ORDER TO TAG NOTA

SELECT DUSE tSementara EXCLUSIVE AGAIN

FORM.AKTIFTHISFORM.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.TIDAKAKTIFTHISFORM.TXTNOTA.Enabled = .T. THISFORM.TXTTGLjual.Enabled = .F.THISFORM.CMBKdBarang.Enabled = .F.THISFORM.TXTJUmlah.Enabled = .F.thisform.txttotal.Enabled = .f.

7

Page 8: PPA Visual Foxpro

Seri Belajar Bahasa Pemrograman VisualZiyad 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.KOSONGKANTHISFORM.TXTNOTA.VALUE=''THISFORM.TXTTGLjual.VALUE=DATE()THISFORM.CMBKdBarang.VALUE=''THISFORM.TXTJUmlah.VALUE=0THISFORM.TXTHARGA.ValUE =0THISFORM.TXTSUBTotal.ValUE =0THISFORM.TXTTOTAL.ValUE =0

FORM.ATURGRIDTHISFORM.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.Widththisform.grid1.column2.Width = thisform.txtnmBarang.Widththisform.grid1.column3.Width = thisform.txtharga.Widththisform.grid1.column4.Width = thisform.txtjumlah.Widththisform.grid1.column5.Width = thisform.txtsubTotal.Width

FORM.ISIGRIDTTL=0TTL2=0HRG=0NMB=' 'SELECT DDELETE ALL

SELECT CSET ORDER TO TAG NOTAGO TOPSCAN

IF NOTA = ALLTRIM(THISFORM.TXTNOTA.Value) SELECT ASET ORDER TO TAG KDBARANGSEEK(TJUAL.KDBARANG)IF FOUND()

NMB = BARANG.NMBARANGHRG = BARANG.HARGA

ENDIFTTL = TJUAL.JML_JUAL * HRGTTL2= TTL2 + TTLSELECT DAPPEND BLANKREPLACE KDBARANG WITH TJUAL.KDBARANGREPLACE NMBARANG WITH NMBREPLACE HARGA WITH HRGREPLACE JUMLAH WITH TJUAL.JML_JUALREPLACE SUBTOT WITH TTL

ENDIFENDSCAN

THISFORM.TXTTOtal.Value = TTL2

FORM.KOSONGGRIDSELECT DDELETE ALLTHISFORM.Refresh()THISFORM.GRId1.Refresh()

FORM.SIMPANMASTERSELECT BSET ORDER TO TAG NOTASEEK(ALLTRIM(THISFORM.TXTNOTA.Value))IF !FOUND()

APPEND BLANKREPLACE NOTA WITH THISFORM.TXTNOTA.ValueREPLACE TGLJUAL WITH THISFORM.TXTTGLJUAL.ValueREPLACE TOTAL WITH THISFORM.TXTTOtal.Value

ELSEREPLACE TOTAL WITH THISFORM.TXTTOTAL.Value

8

Page 9: PPA Visual Foxpro

Seri Belajar Bahasa Pemrograman VisualZiyad Software Solo Indonesia file:///C:\My Document\Modul Visual Foxpro.ODT

ENDIF

FORM.SIMPANTRANSSELECT CSET ORDER TO TAG NOTAAPPEND BLANKREPLACE NOTA WITH THISFORM.TXTNOTA.ValueREPLACE KDBARANG WITH THISFORM.CMBKDBarang.ValueREPLACE JML_JUAL WITH THISFORM.TXTJUMlah.Value

FORM.HAPUSSELECT BSET ORDER TO TAG NOTASEEK(ALLTRIM(THISFORM.TXTNOta.Value))IF FOUND()

DELETEENDIFSELECT CSET ORDER TO TAG NOTADELETE FOR TJUAL.NOTA = ALLTRIM(THISFORM.TXTNOTA.Value)FORM.INITSET DELETED ON

THISFORM.TIDAkaktif()THISFORM.KOSONGkan()thisform.aturgrid()thisform.grid1.RecordSource = 'tSementara.DBF'THISFORM.TXTNOta.SetFocus()

FORM.UNLOADCLOSE DATABASESCLOSE INDEXESUSE

CLOSE ALL

IF FILE('TSEMENTARA.DBF')DELETE FILE('TSEMENTARA.DBF')

ENDIF

TXTNOTA.INTERACTIVECHANGEIF LEN(ALLTRIM(THISFORM.TXTNOTA.Value))<5

THISFORM.TIDAKAKTIF()RETURN

ENDIF

SELECT BSET ORDER TO TAG NOTASEEK(ALLTRIM(THISFORM.TXTNOTA.Value))IF FOUND()

IF MESSAGEBOX('DATA SUDAH ADA, APAKAH AKAN 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.

ENDIFRETURN

ENDIF

THISFORM.AKTIF()

CMBKDBARANG.CLICKSELECT CSET ORDER TO TAG NOTAGO TOP

9

Page 10: PPA Visual Foxpro

Seri Belajar Bahasa Pemrograman VisualZiyad Software Solo Indonesia file:///C:\My Document\Modul Visual Foxpro.ODT

SCANIF (TJUAL.NOTA = ALLTRIM(THISFORM.TXTNOta.Value)) .AND.;

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

ENDIFENDSCAN

SELECT ASET ORDER TO TAG KDBARANGSEEK(ALLTRIM(THISFORM.CMbKdBarang.Value))IF FOUND()

THISFORM.TXTNMBarang.Value = NMBARANGTHISFORM.TXTHARGA.Value = HARGAthisform.txtjumlah.SetFocus()

ELSETHISFORM.TXTNMBarang.Value = ' 'THISFORM.TXTHARGA.Value = 0

ENDIF

CSIMPAN.CLICKIF 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 = 0THISFORM.TXTJUMlah.VALUE = 0THISFORM.TXTSUBTotal.Value = 0THISFORM.CMBKdBarang.SetFocus()

CHAPUS.CLICKIF 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.CLICKTHISFORM.KOSONGkan()THISFORM.KOSOnggrid()THISFORM.TIDAkaktif()

THISFORM.CMBKDBarang.Value = ' 'THISFORM.TXTNMBArang.Value =' 'THISFORM.TXTHARGA.Value = 0THISFORM.TXTJUMlah.VALUE = 0THISFORM.TXTSUBTotal.Value = 0

THISFORM.TXTNOta.SetFocus()

CTUTUP.CLICKthisform.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

Page 11: PPA Visual Foxpro

Seri Belajar Bahasa Pemrograman VisualZiyad 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

Page 12: PPA Visual Foxpro

Seri Belajar Bahasa Pemrograman VisualZiyad 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

Page 13: PPA Visual Foxpro

Seri Belajar Bahasa Pemrograman VisualZiyad 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 = TrueBorderstyle = Fixed DialogClosable = FalseMaxButton = FalseMinButton = FalseShowWindow = In Top-Level FormWindowType = Modal

Command1 Name = cLayarCaption = ‘LAYAR’

Command2 Name = cPrinterCaption = ‘PRINTER’

Command3 Name = cTutupCaption = ‘TUTUP’

25. Ketiklah listing program berikut:

CLAYAR.CLICKREPORT FORM RPTBARANG PREVIEW THISFORM.Refresh()

CPRINTER.CLICKREPORT FORM RPTBARANG TO PRINTERTHISFORM.Refresh()

13

Page 14: PPA Visual Foxpro

Seri Belajar Bahasa Pemrograman VisualZiyad Software Solo Indonesia file:///C:\My Document\Modul Visual Foxpro.ODT

CTUTUP.CLICKTHISFORM.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 Property

Form1 Caption = ‘LAPORAN PENJUALAN BARANG’AutoCenter = TrueBorderstyle = Fixed DialogClosable = FalseMaxButton = FalseMinButton = FalseShowWindow = In Top-Level FormWindowType = Modal

Command1 Name = cLayarCaption = ‘LAYAR’

Command2 Name = cPrinterCaption = ‘PRINTER’

Command3 Name = cTutupCaption = ‘TUTUP’

OptionGroup1 Name = OpsiDIBUILDER, Number of Buttons diisi dengan 2,typenya dipilih Standard, dan Captionnya masing-masing diisi dengan SELURUH PENJUALAN dan PENJUALAN PER NOTA. Seperti gambar berikut:

Combo1 Name = cmbNotaDIBUILDER, 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

Page 15: PPA Visual Foxpro

Seri Belajar Bahasa Pemrograman VisualZiyad Software Solo Indonesia file:///C:\My Document\Modul Visual Foxpro.ODT

28. Setelah itu ketik listing program berikut:

OPTION1.CLICKthisform.cmbnota.Enabled = .f.thisform.cmbnota.Value =' '

OPTION2.CLICKthisform.cmbnota.Enabled = .t.thisform.cmbnota.Value =' '

CLAYAR.CLICKIF thisform.opsi.option1.Value = 1

REPORT FORM RPTjual PREVIEW THISFORM.Refresh()

ELSEREPORT FORM RPTJUAL FOR MJUAL.NOTA =

ALLTRIM(THISFORM.CMBNOTA.Value); PREVIEW THISFORM.Refresh()

ENDIF

CPRINTER.CLICKIF thisform.opsi.option1.Value = 1

REPORT FORM RPTjual TO PRINTER THISFORM.Refresh()

ELSEREPORT FORM RPTJUAL FOR MJUAL.NOTA =

ALLTRIM(THISFORM.CMBNOTA.Value); TO PRINTERTHISFORM.Refresh()

ENDIF

CTUTUP.CLICKTHISFORM.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

Page 16: PPA Visual Foxpro

Seri Belajar Bahasa Pemrograman VisualZiyad Software Solo Indonesia file:///C:\My Document\Modul Visual Foxpro.ODT

Property yang diubah:Object Property

Form1 Caption = ‘MENU UTAMA’AutoCenter = TrueBorderstyle = Fixed DialogClosable = FalseMaxButton = FalseMinButton = FalseShowWindow = As Top-Level FormWindowState = MaximizedWindowType = Modal

Command1 Name = CBARANGCaption = ‘BARANG’

Command2 Name = CPENJUALANCaption = ‘PENJUALAN’

Command3 Name = CLAPBARANGCaption = ‘LAP. BARANG’

Command4 Name = CLAPPENJUALANCaption = ‘LAP. PENJUALAN’

Command5 Name = CKELUARCaption = ‘KELUAR’

Label1 Caption = ‘KOMPUTERISASI SISTEM PENJUALAN’Alignment = Center

Label2 Caption = ‘DI MINI MARKET “SUKSES” SOLO’Alignment = Center

31. Ketik listing program berikut ini:

CBARANG.CLICKif type("frmbarang")#"0" do form frmbarangendif

CPENJUALAN.CLICKif type("frmJUAL")#"0" do form frmJUALendif

CLAPBARANG.CLICKif type("frmRPTbarang")#"0" do form frmRPTbarangendif

CLAPPENJUALAN.CLICKIF TYPE("FRMRPTJUAL")#"0" DO FORM FRMRPTJUALENDIF

CKELUAR.CLICKJ=MESSAGEBOX("KELUAR DARI PROGRAM? ",32+4,"KELUAR")

16

Page 17: PPA Visual Foxpro

Seri Belajar Bahasa Pemrograman VisualZiyad 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 ALLSET TALK OFFSET STAT OFFSET CONFIRM OFFSET AUTOSAVE ONSET DELETE ONSET DATE ITALISET CENT ONSET EXACT ON_SCREEN.WIDTH=2_SCREEN.HEIGHT=2_SCREEN.VISIBLE=.F.

DO FORM FRMUTAMAREAD EVENQUIT

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

Page 18: PPA Visual Foxpro

Seri Belajar Bahasa Pemrograman VisualZiyad 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

Page 19: PPA Visual Foxpro

Seri Belajar Bahasa Pemrograman VisualZiyad 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!

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.

f. Pada PROJECT MANAGER, klik Tab DOCUMENTS, pilih FORMS dan klik tombol ADD. Pada kotak dialog OPEN, pilih semua file kemudian klik OK

19

Page 20: PPA Visual Foxpro

Seri Belajar Bahasa Pemrograman VisualZiyad Software Solo Indonesia file:///C:\My Document\Modul Visual Foxpro.ODT

g. 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

Page 21: PPA Visual Foxpro

Seri Belajar Bahasa Pemrograman VisualZiyad 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