Operator Visual Foxpro




Berikut adalah jenis - jenis Operator Visual Foxpro :

1. Character Operators

Operator  Keterangan
    () Untuk pengelompokan 
    + Untuk menggabungkan string 
    - Untuk menggabungkan string dengan memindahkan spasi tambahan
dari string kiri ke ujung string kanan.
    $ Untuk memeriksa apakah string pertama terkandung dalam string kedua.


2/ Date & Time Operators

perator Keterangan
    +Untuk menambahkan hari (tanggal) atau detik (waktu tanggal) ke nilai tanggal/waktu. 
    -Untuk mendapat perbedaan dua nilai tanggal/waktu. Kurangi hari (tanggal) atau detik (datetime) dari nilai datetime.


3. Logical Operators

    Operator  Keterangan
    () Tanda kurung, ekspresi grup
    NOT, !      Logika meniadakan ekspresi. TIDAK atau ! tidak memiliki perbedaan.
    AND Logika AND
    OR Logika OR.
    <>, !=, #       Periksa ketidaksetaraan. Sama dengan logika eksklusif OR - XOR.

4. Numeric Operators

  Operator Keterangan
    +, -, *, /     Operator penjumlahan, pengurangan, perkalian dan pembagian
    %     Sisa Hasil Bagi
    ^ , **Operator Power
    ()    Untuk mengelompokkan

Urutan Operator adalah:
( )
^ (or **) 
/ and *
- and +


5. Relational Operators

Operator  Keterangan   Contoh
    < Lebih besar dari   ? 1 > 2 && .F.
    > Lebih kecil dari   ? 1 < 2 && .T.
    >=Lebih besar sama dengan dari   ? 1 >= 2 && . F.   
    <= Lebih kecil sama dengan dari   ? 1 <= 2 && .T.
    = Sama dengan   ? 1 = 1 && .T. 
    == Sama dengan [ string ]   ? '1' = '1' && .T.
    !=, #, <>               Tidak sama dengan   ? 1 != 1 && .F.

6. Function & Procedure 

Perintah
Penjelasan
NOTASI
 <…>  artinya harus diisi
  […]   artinya boleh diisi jika dikehendaki
…/… artinya merupakan pilihan, misalnya ON atau OFF
expC  artinya ekspresi character
expN artinya ekspresi numeric
expD artinya ekspresi date
expL artinya ekspresi logical
; (titik koma)
menyatakan bahwa perintah masih bersambung ke baris berikutnya
APPEND BLANK
Menambahkan record baru yang kosong pada tabel yang aktif serta memindahkan record pointer ke record baru tersebut.
CHR(n)
Menampilkan karakter ASCII dengan nilai ASCII=n
CHR(13)akan menghasilkan karakter enter atau return
CLEAR EVENTS
Membatalkan perintah READ EVENTS dan menyebabkan FoxPRO melaksanakan perintah yang terdapat di bawah READ EVENTS yang dibatalkan tersebut.
CLEAR MEMORY
Menghapus semua variable memory, baik yang private maupun yang public.
CLEAR WINDOWS
Menghapus semua windows (form) yang telah dibuat oleh user. Tidak menghapus window yang dibuat oleh FoxPro.
CLOSE ALL
Menutup semua databasetable dan index files yang sedang aktif.
CTOD(<expC>)
Mengubah sebuah variable karakter menjadi variable date.
DATE()
Menghasilkan tanggal hari ini berupa variable date.
DAY(<expD>)
Menghasilkan nilai numeric dari tanggal dari sebuah variable date. Misalnya, tgl 2 Juni 1997, maka DAY-nya adalah 2.
DELETE
Menandai record yang sedang ditunjuk record pointer dengan tanda delete (*)
DO FORM <formname>
Menjalankan sebuah form
DO <programname/menuname>
Menjalankan sebuah program atau menu
DO(<expD>)
Menghasilkan nilai numeric dari hari sebuah variable date (minggu=l, senin=2, selasa=3, dst)
DTOC(<expD>)
Mengubah sebuah variable date menjadi character
EOF()
EOF() akan bernilai .T> jika record pointer sedang berada di EOF, dan bernilai .F> jika tidak.
GO BOTTOM
Memindahkan record pointer ke record paling bawah.
GO TOP
Memindahkan record pointer ke record paling atas.
IIF(<condition>,<expl>,<exp2>)
Jika <condition> terpenuhi, maka I1F menghasilkan <expl>, kalau tidak IIF menghasilkan <exp2>
LEFT(<expC>,<ExpN>)
Mengambil sejumlah karakter sebanyak <expN> dari string <expC>
MESSAGE([1])
MESSAGE() akan menampilkn baris program yang menyebabkan errorMESSAGE () akan menampilkan pesan kesalahan pada saat error.
MESSAGEBOX(cmessagetext,[nDialogBoxType],[cTitleBartext])
Menghasilkan sebuah dialog box dimana:
cMessageText adalah pesan yang tampil di dalam MessageboxcTitlebarText adalah judul yang tampil di atas Messagebox nDialogBoxType adalah sebuah nilai yang menentukan tombol maupun lambang yang muncul pada messagebox.
Nilai yang menentukan tombol:
0           OK
1           OK, Cancel
2          Abort, Retry, Ignore
3          Yes, No, Cancel
4          Yes, No
5          Retry, Cancel
Nilai yang menentukan lambang:
16        Stop
32        Tanda tanya (?)
48        Tanda seru (!)
64        Informasi (i)
Jadi, kalau dikehendaki messagebox dengan tombol OK dan cancel serta lambang tanda seru, maka nDialogBoxType = 1 + 48 + 49
Messagebox dapat pula mendeteksi input yang diberikan user:
Jika user mengklik OK, maka nilainya adalah:      1
Jika user menklik Cancel, maka nilainya adalah:   2
Jika user menklik Abort, maka nilainya adalah:     3
Jika user menklik Retry, maka nilainya adalah:      4
Jika user menklik Ignore, maka nilainya adalah:    5
Jika user menklik Yes, maka nilainya adalah:         6
Jika user menklik No, maka nilainya adalah:          7
MIN(<expNl>,<expN2>)
MIN akan menampilkan nilai yang terkecil antara <expN1> dan <expN2>
Lawannya adalah MAX
MODIFY PROJECT<projectname>
Perintah untuk membuat project bam atau mengedit project yang sudah ada
ON ERROR [DO<filename>]
ON ERROR DO <filename> akan menyebabkan program berpindah ke <filename> seandainya terjadi errorON ERROR akan membatalkan perintah ON ERROR Do<filename>
PUBLIC<memvar>
Menciptakan variable memo besifat public
Jika didalam sebuah program atau procedure dibuat sebuah variable memori, maka variable itu bersifat provate, artinya pada umumnya variable itu hanya dapat dipergunakna oleh program/procedure yang bersangkutan.
Jika perlu dibuat sebuah variable memori yang harus dapat dialihkan dari satu program ke program yang lain, maka definisikan dulu variable itu sebagai variable PUBLIC, hal ini berarti bahwa semua program/procedure diperkenankan menggunakannya
READ EVENTS
Perintah ini menyatakan agar program yang sedang dijalankan disuspend dahulu, dan VisualFoxPRO akan menjalankan events, dengan perkataan lain akan menjalankan form yang sedang aktif,
RELEASE THISFORM
Menghapus form yang sedang dijalnakan dari memori. Secara efektif hal ini berarti menghentikan kerjanya form tersebut.
REPLACE<field>,WITH<exp >[,<field>,WITH<exp>,…]
Mengganti isi field dari record yang sedang ditunjuk pointer dengan <exp>
REPORT FORM<reportname>[TOPRI NTER][PROMPT][NOCONS OLE][PREVIEW|
Secara umum akan mencetak sebuah report.
TO PRINTER menentukan agar pencetakan dilakukan ke printer, sebagai lawan dari TO FILE
PROMPT menampilkan printer setting dialog box
NONCONCOLE agar apa yang dicetak tidak turut ditampilkan di monitor
PREVIEW untuk menampilkan print preview
RGB(<expNl>,<expN3>)
Menentukan warna yang ditampilkan di monitor
<expNl> menentukan warna RED, intensitas dari 0 (paling gelap) sampai 225 (paling terang)
<expN2> menentukan warna GREEN, intensitas dari 0 sampai 225 <expN3> menentukan warna BLUE, intensitas dari 0 sampai 225 Warna hitam diperoleh lewat RGB (0,0,0) sedangkan warna putih dari RGB (225,225,225)
Warna-warna lain dapat diperoleh dengan mengubah-ubah ketiga nilai tersebut
ROUND(<expN>,<n>)
Membulatkan nilai numeric <expN> sampai <n> desimal
SEEK<exp>
Mencari suatu record di table yang aktif yang sesuai dengan <exp> Untuk dapat melakukan SEEK maka table itu harus sudah terindeks sesuai dengan <exp>
SELECT<fields>FROM<tables>[WHERE<condition>l;[ORDERBY<field>][INTOCURSOR<cursorname>] -SQL Statement
Cara melakukan query dengan menggunakan SQL (structure query language)
SELECT <fields> menenukan fields mana yang akan ditampilkan FROM <tables> menunjukkkan asal usul fields tersebut
WHERE <condiiton> menyaring hanya records yang akan ditampilkan adalah yang memenuhi syarat<condition>
ORDER BY <fields> menentukan cara pengurutan record-record yang akan ditampilkan
INTO CURSOR <cursorname> akan menyebabkan hasil query tersebut disimpan dalam sebuah cursor.
Cursor” disini meruapkan sebuah label yang dibuat SQL untuk menyimpan hasil query.
Cursor ini bersifat temporary dan read only, tidak seperti file table (DBF)
SELECT<workareaname>-XbaseCommand
Apabila ada beberapa table yang diaktifkan sekaligus, maka masing-masing table menempati workareanya sendiri di dalam RAM. Untuk menentukan table mana yang hendak kita pergunakan pada suatu saat, maka workareanya harus di SELECT dulu.
Pada prakteknya, <workarea name> adalah sama dengan nama tabel yang menempatinya.
SET DEFAULT TO <drive:><path>
Menentukan drive dari subdirectory dimana FoxPRO akan mencari data-datanya
SET DELETED ON/OFF
SET DELETED ON akan menyebabkan record yang telah ditandai DELETE (tanda *) tidak ditampilkan lagi di layar monitor. SET DELETED OFF membatalkan perintah itu.
SET HELP TO [<tablename>]
SET HELP TO <tablename> akan menyebabkan isi dari <tablename> itu yang akan ditampilkan sewaktu user menekan tombol F1. Untuk mengembalikan ke help system Visual FoxPRO berikan perintah SET HELP TO.
SET ORDER TO<n>
Jika sebuah table memiliki beberapa indeks, maka SET ORDER TO merupakan perinah bagi Fox untuk menentukan apakah table yang akan diurut berdasarkan indeks pertama, kedua, dst.
SET STATUS BAR TO DEFAULT
Menampilkan atau menghilangkan status bar.
SET SYSMENUTO DEFAULT
Mengembalikan menu yang telah dibuat user ke menu aslinya Visual FoxPRO.
SET TALK OFF/ON
SET TALK OFF menyebabkan komentar-komentar Visual FoxPRO yang kadang-kadang menganggu tidak lagi ditampilkan. SET TALK ON membatalkannya.
SKlP[n]
Memindahkan record pointer sejumlah tempat maju atau mundur dalam table.
SKIP     akan menyebabkan record pointer turun satu
SKIP 5  akan menyebabkan record ponter turun lima tempat
SKIP -3 akan menyebabkan record pointer naik tiga tempat
STR(<expN>,[places],[desimals]
Mengubah nilai numeric, <expN> menjadi character,
[places] menyatakan berapa lebar tempat yang hendak disediakan untuk <expN>
[desimals] menyatakan berapa banyak desimal yang dikehendaki
SUBSTR(<expC>,n,m)
Mengambil dari string <expC> sejumlah <m> karakter, mulai dari posisi ke-n.
SUM(<exp>),To<memvar>
Menjumlah <exp> dan menyimpannya di variabel memori <memvar>
THISFORMREFRESH
Menyebabkan berbagai object dalam form di update sehingga menampilkan keadaan table pada saat ini.
Misalnya pada sebuah textbox telah tampil record #1 dari sebuah table. Kemudian dengan sebuah commandbutton, maka dilakukan SKIp. Record pointer sebenamya telah berpindah, tetapi textbox itu masih saja menampilan record#1. Supaya textbox dapat menampilkan record yang sekarang sedang ditunjuk, maka berikan perintah THISFORM.REFRESH
TIME()
Menampilkan jam/waktu saat ini, dalam bentuk character.
VAL(<expC>
Mengubah sebuah character <expC> menjadi numeric.
WAIT WINDOW<expC>
Membuat sebuah window kecil di kanan atas layar berisi pesan <expC>. Program baru meneruskan jika user menekan sembarang tombol.
YEAR(<expD>)
Menghasiikan nilai tahun dalam empat digit dari sebuah nilai date