附:函數(shù)及命令
函數(shù)P75 數(shù)值函數(shù)
1、絕對(duì)值 ABS(<數(shù)值表達(dá)式>) 2、取整 INT(<數(shù)值表達(dá)式>) 3、值MAX(N1,N2,…)4、最小值 MIN( N1,N2,…) 5、平方根SQRT(<數(shù)值表達(dá)式>) 6、EXP(<數(shù)值表達(dá)式>)=eX 7、LOG(<數(shù)值表達(dá)式>)=LnX
8、正弦 SIN(<數(shù)值表達(dá)式>) 9、余弦 COS(<數(shù)值表達(dá)式>) 10、正切 TAN(<數(shù)值表達(dá)式>) (*弧度表示)
11、0-1之間隨機(jī)數(shù) RAND([<數(shù)值表達(dá)式>])(數(shù)值表達(dá)式為負(fù),從當(dāng)前時(shí)鐘取種子數(shù))
12、四舍五入ROUND(<數(shù)值表達(dá)式1>,<保留位數(shù)>)*保留位數(shù)為負(fù)表示其絕對(duì)值為整數(shù)部分四舍五入的位數(shù)
字符串函數(shù)
1、字符串長(zhǎng)度LEN(<字符表達(dá)式>)2、刪尾部空格TRIM(<字符表達(dá)式>)3、刪頭部空格LTRIM(<字符表達(dá)式>)
4、取子串SUBSTR(<字符表達(dá)式>,<從第幾個(gè)開(kāi)始>,[<取幾個(gè)字符>]) 5、首字母大寫(xiě)PROPER(<字符表達(dá)式>)
6、子字符串查找AT(<字符表達(dá)式1>,<字符表達(dá)式2>)返回式1在式2的開(kāi)始位置,沒(méi)找到返回0,區(qū)分大小寫(xiě)
7、子串替換STUFF(<字符表達(dá)式1>,<數(shù)值表達(dá)式1>,<數(shù)值表達(dá)式2>,<字符表達(dá)式2>)
8、大小變小寫(xiě)LOWER(<字符表達(dá)式>)9、小寫(xiě)變大寫(xiě)UPPER(<字符表達(dá)式>)10、空格SPACE(<空格數(shù)量>)
11、字符串復(fù)制REPLICATE(<字符串>,<復(fù)制次數(shù)>)12、宏替換&<內(nèi)存變量>[,<字符串>]
日期和時(shí)間函數(shù)
1、取系統(tǒng)日期DATE() 2、取系統(tǒng)時(shí)間TIME()3、取年份YEAR(<日期表達(dá)式>)4、取日DAY(<日期表達(dá)式>)
5、取月份MONTH(<日期表達(dá)式>)6、日期格式轉(zhuǎn)換MDY(<日期表達(dá)式>)(月日年格式)
數(shù)據(jù)類(lèi)型轉(zhuǎn)換函數(shù)
1、字符轉(zhuǎn)數(shù)值VAL(<字符表達(dá)式>)2、字符轉(zhuǎn)日期CTOD(<字符表達(dá)式>)
3、日期轉(zhuǎn)字符DTOC (<日期表達(dá)式>[,1])帶可選項(xiàng)“1”返回一個(gè)適于進(jìn)行索引的日期字符串
4、數(shù)值轉(zhuǎn)字符STR(<數(shù)值表達(dá)式1>[,<返回字符串長(zhǎng)度>[,<小數(shù)部分輸出位數(shù)>]])
測(cè)試函數(shù)
1、數(shù)據(jù)類(lèi)型測(cè)試TYPE(<字符表達(dá)式>)2、測(cè)試文件尾EOF([<工作區(qū)號(hào)>|<文件別名>])
2、測(cè)試文件頭BOF([<工作區(qū)號(hào)>|<文件別名>])4、測(cè)試當(dāng)前記錄號(hào)RECNO([<工作區(qū)號(hào)>|<文件別名>])
5、測(cè)試庫(kù)文件記錄數(shù)RECCOUNT([<工作區(qū)號(hào)>|<文件別名>])6、測(cè)試屏幕行列坐標(biāo)ROW()、COL()
7、測(cè)試是否查找成功FOUND([<工作區(qū)號(hào)>|<文件別名>])8、測(cè)試打印頭坐標(biāo)PROW()、PCOL()
數(shù)據(jù)庫(kù)基本*作
內(nèi)存變量賦值:1、store <表達(dá)式> to <內(nèi)存變量表>2、<內(nèi)存變量>=<表達(dá)式>
3、save screen to <屏幕型內(nèi)存變量> restore screen from <屏幕型內(nèi)存變量>
內(nèi)存變量釋放:1、release <內(nèi)存變量表> 2、release all [like|except<通配符>] 3、clear memory 4、clear all
內(nèi)存變量文件建立:save to <內(nèi)存變量文件名>[all [like|except<通配符>]]
內(nèi)存變量恢復(fù):restore from <內(nèi)存變量文件名> [additive]無(wú)additive消除當(dāng)前內(nèi)存中變量,有additive保留變量
內(nèi)存變量顯示:1、list memory [to print] 2、display memory [to print]
內(nèi)存變量輸出: ?|??[<表達(dá)式表>] ?從當(dāng)前光標(biāo)所在行的下一行第0列開(kāi)始顯示,??從當(dāng)前光標(biāo)所在處開(kāi)始顯示
數(shù)組定義:dimension|declare <數(shù)組名1>(<數(shù)值表達(dá)式1>[,<數(shù)值表達(dá)式2>])[,<數(shù)組名2>(<數(shù)值表達(dá)式3>[<數(shù)值表達(dá)式4>])]… 數(shù)組元素賦值:1、store <表達(dá)式> to <數(shù)組> 2、<數(shù)組>=<表達(dá)式>
數(shù)據(jù)庫(kù)文件記錄值傳送到數(shù)組scatter[fields<字段表>] to <數(shù)組> [blank] memvar [blank]
數(shù)組中的數(shù)據(jù)傳送到數(shù)據(jù)庫(kù)文件gather from<數(shù)組>| memvar [fields<字段表>]
建數(shù)據(jù)庫(kù)文件結(jié)構(gòu)create[<文件名>|?] 追加記錄append[blank] 數(shù)據(jù)庫(kù)文件打開(kāi)use[<庫(kù)文件名>|?][alias<別名>]
記錄顯示list | display[<范圍>][fields<字段名表>][for<條件>][while<條件>][off][to printer|file<文件名>]
范圍:record n第n條記錄*作,next n下n條記錄*作,all所有記錄*作,rest當(dāng)前到文件結(jié)束所有記錄*作
off 不顯示記錄 關(guān)閉當(dāng)前工作區(qū)數(shù)據(jù)庫(kù)use 關(guān)閉當(dāng)前打開(kāi)的所有數(shù)據(jù)庫(kù) close databases關(guān)閉所有close all
關(guān)閉索引文件 close indexes 關(guān)閉格式文件 close format 關(guān)閉過(guò)程文件 close procedure
關(guān)閉后備文本文件 close alternate 顯示數(shù)據(jù)庫(kù)結(jié)構(gòu)list|display structure[to printer|to file<文件名>]
修改庫(kù)結(jié)構(gòu) modify structure (生成。bak和。tbk文件,修改字段類(lèi)型該字段數(shù)據(jù)丟失,不能同時(shí)修改字段名和寬度)
絕對(duì)移動(dòng)go|goto[[record]<記錄號(hào)>|top|bottom][in <工作區(qū)號(hào)>|<文件別名>](第一個(gè)記錄:鍵值最小的記錄)
相對(duì)移動(dòng)skip[<移動(dòng)記錄數(shù)>][in <工作區(qū)號(hào)>|<文件別名>]插入記錄insert[before][blank]before:前,blank空
邏輯刪除delete[<范圍>][for<條件>][while<條件>] 恢復(fù)邏輯刪除recall[<范圍>][for<條件>][while<條件>]
物理刪除pack 物理刪除所有記錄zap 編輯修改edit|change[<范圍>][fields<字段名表>][for<條件>][while<條件>]
瀏覽編輯browse[<范圍>][fields<字段名表>][for<條件>][while<條件>][freeze<字段名>][noappend][nodelete]
[noedit][font<字體>[,<字號(hào)>] freeze<字段名>指定可修改的字段
替換修改replace[<范圍>]<字段1>with<表達(dá)式1>[,<字段2>with<表達(dá)式2>…] [for<條件>][while<條件>]
排序 /a升序/d降序/c不區(qū)分大小寫(xiě),關(guān)鍵字只能C、N、D型??砂嚓P(guān)聯(lián)工作區(qū)文件字段:別名->字段名
sort to<文件名>on<字段1>[/a][/c][/d][,<字段2>[/a][/c][/d]…][<范圍>][fields<字段表>][for<條件>][while<條件>]
index on<關(guān)鍵字表達(dá)式>to<索引文件名>[for<條件>][compact][unique][additive]多字段索引必須是C型。
compact壓縮 unique惟一性索引(若有多條記錄具有相同關(guān)鍵字表達(dá)式,索引文件只包含第一條記錄。Additive不關(guān)閉先前打開(kāi)的索引,新建索引文件成為主索引。關(guān)閉索引文件1、set index to 2、close index
打開(kāi)索引文件1、use<庫(kù)文件名>index<索引文件名表> 2、set index to<索引文件名表>
指定主索引set order to[<索引文件名表中的順序號(hào)>|<索引文件名>] 重建索引reindex[compact]
順序查詢(xún)locate[<范圍>][for<條件>][while<條件>]繼續(xù)查詢(xún)continue(locate中用while語(yǔ)句,continue無(wú)意義)
索引查詢(xún)find<字符串>|<數(shù)值常量>只能查字符串或數(shù)字字符串有前導(dǎo)空格須用引號(hào),否則可不必使用定界符
seek<表達(dá)式> 按指定范圍統(tǒng)計(jì)滿足條件的記錄count[<范圍>][for<條件>][while<條件>][to<內(nèi)存變量名>]
求和:sum[<范圍>][<數(shù)值表達(dá)式>][for<條件>][while<條件>][to<內(nèi)存變量名表>|to array<數(shù)組>]
求平均值:average[<范圍>][<數(shù)值表達(dá)式>][for<條件>][while<條件>][to<內(nèi)存變量名表>|to array<數(shù)組>]
分類(lèi)匯總:total on<關(guān)鍵字表達(dá)式>to<分類(lèi)庫(kù)文件名>[<范圍>][fields<字段名表>][for<條件>][while<條件>]
庫(kù)文件復(fù)制:copy to<庫(kù)文件名>[<范圍>][fields<字段名表>][for<條件>][while<條件>]
庫(kù)結(jié)構(gòu)復(fù)制:copy structure to<新庫(kù)文件名>[fields<字段名表>] 文件復(fù)制copy file<源文件名>to<目標(biāo)文件名>
庫(kù)文件復(fù)制成文本數(shù)據(jù)文件:sdf復(fù)制成標(biāo)準(zhǔn)格式(各記錄定長(zhǎng),字符無(wú)分界符)delimited非標(biāo)準(zhǔn)格式數(shù)據(jù)文件,特點(diǎn):各記錄不定長(zhǎng),每個(gè)記錄以回車(chē)換行為結(jié)束標(biāo)志,字段值之間用逗號(hào)分開(kāi),字符型數(shù)據(jù)用雙引號(hào)括起來(lái)。
copy to<數(shù)據(jù)文件名>sdf|delimited[with<定界符>|blank][<范圍>][fields<字段名表>][for<條件>][while<條件>]
文本數(shù)據(jù)到庫(kù)文件:append from<數(shù)據(jù)文件名>sdf|delimited[with<定界符>|blank][for<條件>][fields<字段名表>]
選擇工作區(qū)select<工作區(qū)號(hào)>|<別名> 刪除關(guān)聯(lián)set relation to
建立文件關(guān)聯(lián)set relation to[<關(guān)鍵字表達(dá)式>|<數(shù)值表達(dá)式>into<工作區(qū)號(hào)>|<別名>][additive]
庫(kù)文件連接join with<別名>to<新庫(kù)文件名>[fields<字段名表>][for<條件>] 庫(kù)文件更新:
update on<關(guān)鍵字段>from<別名>replace<字段名1>with<表達(dá)式1>[,<字段名2>with<表達(dá)式2>…][random]
建立命令文件:modify command[<命令文件名>|?][in window<窗口名>|screen] 命令文件運(yùn)行:do<命令文件名>
命令文件注釋?zhuān)?、note<注釋>2、*<注釋>3、&&<注釋> 清屏命令:clear 返回命令return
accept[<字符表達(dá)式>]to<內(nèi)存變量>接受從鍵盤(pán)輸入的字符型數(shù)據(jù)。Input[<字符表達(dá)式>]to<內(nèi)存變量>接受從鍵盤(pán)輸入的數(shù)據(jù),wait[<字符表達(dá)式>][ to<內(nèi)存變量>][window[nowait][timeout<等待秒數(shù)>]等待一個(gè)字符。無(wú)字符表達(dá)式提示:press any key to continue.window使提示信息顯示在系統(tǒng)窗口中。
格式化輸出:@<行,列>say<表達(dá)式>[picture“[@功能符串][格式符串]”][font<字體>[,<字號(hào)>]]
格式化輸入:@<行,列>[say<表達(dá)式>]get<內(nèi)存變量>|<字段>[picture“[@功能符串][格式符串]”][range<上界>[,<下界>]][[open]window<窗口名>][enable|disable][valid<邏輯表達(dá)式1>][when<邏輯表達(dá)式2>]
window指定編輯備注字段窗口(窗口須事先定義)disable|enable是否允許存取該變量
valid檢查get數(shù)據(jù)正確性,只有邏輯表達(dá)式1為真時(shí)才能移到下一個(gè)get變量。
定義文本編輯區(qū):@<行,列>edit<內(nèi)存變量>size<行數(shù)>,<列數(shù)>font[<字體>[,<字號(hào)>]][scroll]
read[cycle][save]cycle定義一個(gè)循環(huán)read,可通過(guò)tab、enter回到第一個(gè)對(duì)象,save使對(duì)象能被以后的read編輯
功能符:! 小寫(xiě)變大寫(xiě);B數(shù)值左對(duì)齊;D日期型按set date格式;E日期型按日/月/年;Z數(shù)值為0時(shí)顯示空格;$ 貨幣格式;只支持say:( 負(fù)數(shù)加括號(hào); C正數(shù)后加CR;X負(fù)數(shù)后加DB.只支持get:A只允許字母字符;J字符右對(duì)齊;K光標(biāo)移到變量時(shí)自動(dòng)刪除原內(nèi)容;T刪除字符前后空格
格式符:X允許任何字符;#顯示正負(fù)號(hào),只許數(shù)字、空格、正負(fù)號(hào);!小寫(xiě)變大寫(xiě);*第一個(gè)有效數(shù)字前0變*;
。 小數(shù)點(diǎn)位置;, 隔三位插,;只支持say:A數(shù)值型用A替換數(shù)字; Y邏輯型T變Y,F(xiàn)變N,數(shù)值型用Y替換數(shù)字; $數(shù)值型貨幣號(hào),字符型$替代字符; 9字符型只許0-9; 只支持get:A只允許字母;L只允許邏輯型;N只允許字母和數(shù)字;9只允許數(shù)字、正負(fù)號(hào);$第一個(gè)有效數(shù)字前0變$;
清整個(gè)屏幕:clear 清屏幕局部區(qū)域:@<行1,列1>[clear|clear to<行2,列2>]
分支語(yǔ)句:if<條件><命令序列1>[else<命令序列2>]endif 多分支選擇語(yǔ)句:do case case<條件1>
<命令序列1> case<條件2><命令序列2>…case<條件n><命令序列n>[otherwise<命令序列n+1>]endcase
while循環(huán)語(yǔ)句:do while<條件><命令序列1>[loop]<命令序列2>[exit]enddo
for(給定次數(shù))循環(huán)語(yǔ)句:for<循環(huán)變量>=<初值>to<終值>[step<步長(zhǎng)>]<命令序列>[loop][exit]endfor
scan循環(huán):scan[<范圍>][for<條件>][while<條件>]<命令序列>[loop][exit]endscan
定義過(guò)程:procedure<過(guò)程名>[parameters<形參表>]<過(guò)程體>return[to master] 過(guò)程文件格式:procedure<過(guò)程名1><過(guò)程體1>return procedure<過(guò)程名2><過(guò)程體2>return…procedure<過(guò)程名n><過(guò)程體n>return
打開(kāi)過(guò)程文件:set procedure to[<文件名>],關(guān)閉過(guò)程close procedure 調(diào)用過(guò)程do<過(guò)程名>[with<實(shí)參表>]
定義全局變量:public<內(nèi)存變量表>
隱藏指定內(nèi)存變量:1、private<內(nèi)存變量表>2、private all[like<通配符變量名>]|except<通配符變量名>]
自定義函數(shù):function<函數(shù)名>[parameters<形參表>]<函數(shù)體>return<表達(dá)式> 調(diào)用函數(shù):函數(shù)名([<實(shí)參表>])
定義窗口:define window<窗口名1>from<左上角行號(hào),列號(hào)>to<右下角行號(hào),列號(hào)>[double|panel|system||shadow][in window <窗口名2>][title<標(biāo)題>][font<字體>[,<字號(hào)>][close][float][grow][zoom][minimize]
邊框樣式double雙線、panel粗線、system模擬命令窗口、默認(rèn)單線。border string字符串邊框,shadow陰影
in window定義在指定的父窗口內(nèi)[close關(guān)閉][float移動(dòng)][grow改變大小][zoom化][minimize最小化]
激活窗口:activate window<窗口名1>|in window<窗口名2>休眠窗口:deactivate window<窗口名>[all]
釋放窗口:release window<窗口名表> 顯示、隱去窗口show/hide window<窗口名表>|
1、定義水平菜單:define menu<菜單名>[in window<窗口名>][key<熱鍵>]
2、定義菜單選項(xiàng):define pad<選項(xiàng)名>of<菜單名>prompt<提示>[at<行,列>][key<熱鍵>]
3、設(shè)置菜單命令:on selection pad<選項(xiàng)名>of<菜單名><命令> 4、激活菜單:activate menu<菜單名>
5、定義彈出菜單:define popup<菜單名>[from<左上角行,列>]
6、定義菜單選項(xiàng):define bar<選項(xiàng)號(hào)>of<菜單名>prompt<提示>[key<熱鍵>]
7、設(shè)置菜單命令:on selection bar<選項(xiàng)號(hào)>of<菜單名><命令> 8、激活菜單:activate popup<菜單名>
9、下拉菜單中定義PAD選中后執(zhí)行的彈出菜單:on pad<選項(xiàng)名>of<水平菜單名>activate popup<彈出菜單名>
10、二級(jí)彈出菜單:on selection bar<選項(xiàng)號(hào)>of<菜單名> activate popup<二級(jí)菜單名>
下拉菜單設(shè)計(jì)命令:1,2,9(3),5,6,7(10),4(彈出菜單已經(jīng)在水平菜單中激活)
建立create
函數(shù)P75 數(shù)值函數(shù)
1、絕對(duì)值 ABS(<數(shù)值表達(dá)式>) 2、取整 INT(<數(shù)值表達(dá)式>) 3、值MAX(N1,N2,…)4、最小值 MIN( N1,N2,…) 5、平方根SQRT(<數(shù)值表達(dá)式>) 6、EXP(<數(shù)值表達(dá)式>)=eX 7、LOG(<數(shù)值表達(dá)式>)=LnX
8、正弦 SIN(<數(shù)值表達(dá)式>) 9、余弦 COS(<數(shù)值表達(dá)式>) 10、正切 TAN(<數(shù)值表達(dá)式>) (*弧度表示)
11、0-1之間隨機(jī)數(shù) RAND([<數(shù)值表達(dá)式>])(數(shù)值表達(dá)式為負(fù),從當(dāng)前時(shí)鐘取種子數(shù))
12、四舍五入ROUND(<數(shù)值表達(dá)式1>,<保留位數(shù)>)*保留位數(shù)為負(fù)表示其絕對(duì)值為整數(shù)部分四舍五入的位數(shù)
字符串函數(shù)
1、字符串長(zhǎng)度LEN(<字符表達(dá)式>)2、刪尾部空格TRIM(<字符表達(dá)式>)3、刪頭部空格LTRIM(<字符表達(dá)式>)
4、取子串SUBSTR(<字符表達(dá)式>,<從第幾個(gè)開(kāi)始>,[<取幾個(gè)字符>]) 5、首字母大寫(xiě)PROPER(<字符表達(dá)式>)
6、子字符串查找AT(<字符表達(dá)式1>,<字符表達(dá)式2>)返回式1在式2的開(kāi)始位置,沒(méi)找到返回0,區(qū)分大小寫(xiě)
7、子串替換STUFF(<字符表達(dá)式1>,<數(shù)值表達(dá)式1>,<數(shù)值表達(dá)式2>,<字符表達(dá)式2>)
8、大小變小寫(xiě)LOWER(<字符表達(dá)式>)9、小寫(xiě)變大寫(xiě)UPPER(<字符表達(dá)式>)10、空格SPACE(<空格數(shù)量>)
11、字符串復(fù)制REPLICATE(<字符串>,<復(fù)制次數(shù)>)12、宏替換&<內(nèi)存變量>[,<字符串>]
日期和時(shí)間函數(shù)
1、取系統(tǒng)日期DATE() 2、取系統(tǒng)時(shí)間TIME()3、取年份YEAR(<日期表達(dá)式>)4、取日DAY(<日期表達(dá)式>)
5、取月份MONTH(<日期表達(dá)式>)6、日期格式轉(zhuǎn)換MDY(<日期表達(dá)式>)(月日年格式)
數(shù)據(jù)類(lèi)型轉(zhuǎn)換函數(shù)
1、字符轉(zhuǎn)數(shù)值VAL(<字符表達(dá)式>)2、字符轉(zhuǎn)日期CTOD(<字符表達(dá)式>)
3、日期轉(zhuǎn)字符DTOC (<日期表達(dá)式>[,1])帶可選項(xiàng)“1”返回一個(gè)適于進(jìn)行索引的日期字符串
4、數(shù)值轉(zhuǎn)字符STR(<數(shù)值表達(dá)式1>[,<返回字符串長(zhǎng)度>[,<小數(shù)部分輸出位數(shù)>]])
測(cè)試函數(shù)
1、數(shù)據(jù)類(lèi)型測(cè)試TYPE(<字符表達(dá)式>)2、測(cè)試文件尾EOF([<工作區(qū)號(hào)>|<文件別名>])
2、測(cè)試文件頭BOF([<工作區(qū)號(hào)>|<文件別名>])4、測(cè)試當(dāng)前記錄號(hào)RECNO([<工作區(qū)號(hào)>|<文件別名>])
5、測(cè)試庫(kù)文件記錄數(shù)RECCOUNT([<工作區(qū)號(hào)>|<文件別名>])6、測(cè)試屏幕行列坐標(biāo)ROW()、COL()
7、測(cè)試是否查找成功FOUND([<工作區(qū)號(hào)>|<文件別名>])8、測(cè)試打印頭坐標(biāo)PROW()、PCOL()
數(shù)據(jù)庫(kù)基本*作
內(nèi)存變量賦值:1、store <表達(dá)式> to <內(nèi)存變量表>2、<內(nèi)存變量>=<表達(dá)式>
3、save screen to <屏幕型內(nèi)存變量> restore screen from <屏幕型內(nèi)存變量>
內(nèi)存變量釋放:1、release <內(nèi)存變量表> 2、release all [like|except<通配符>] 3、clear memory 4、clear all
內(nèi)存變量文件建立:save to <內(nèi)存變量文件名>[all [like|except<通配符>]]
內(nèi)存變量恢復(fù):restore from <內(nèi)存變量文件名> [additive]無(wú)additive消除當(dāng)前內(nèi)存中變量,有additive保留變量
內(nèi)存變量顯示:1、list memory [to print] 2、display memory [to print]
內(nèi)存變量輸出: ?|??[<表達(dá)式表>] ?從當(dāng)前光標(biāo)所在行的下一行第0列開(kāi)始顯示,??從當(dāng)前光標(biāo)所在處開(kāi)始顯示
數(shù)組定義:dimension|declare <數(shù)組名1>(<數(shù)值表達(dá)式1>[,<數(shù)值表達(dá)式2>])[,<數(shù)組名2>(<數(shù)值表達(dá)式3>[<數(shù)值表達(dá)式4>])]… 數(shù)組元素賦值:1、store <表達(dá)式> to <數(shù)組> 2、<數(shù)組>=<表達(dá)式>
數(shù)據(jù)庫(kù)文件記錄值傳送到數(shù)組scatter[fields<字段表>] to <數(shù)組> [blank] memvar [blank]
數(shù)組中的數(shù)據(jù)傳送到數(shù)據(jù)庫(kù)文件gather from<數(shù)組>| memvar [fields<字段表>]
建數(shù)據(jù)庫(kù)文件結(jié)構(gòu)create[<文件名>|?] 追加記錄append[blank] 數(shù)據(jù)庫(kù)文件打開(kāi)use[<庫(kù)文件名>|?][alias<別名>]
記錄顯示list | display[<范圍>][fields<字段名表>][for<條件>][while<條件>][off][to printer|file<文件名>]
范圍:record n第n條記錄*作,next n下n條記錄*作,all所有記錄*作,rest當(dāng)前到文件結(jié)束所有記錄*作
off 不顯示記錄 關(guān)閉當(dāng)前工作區(qū)數(shù)據(jù)庫(kù)use 關(guān)閉當(dāng)前打開(kāi)的所有數(shù)據(jù)庫(kù) close databases關(guān)閉所有close all
關(guān)閉索引文件 close indexes 關(guān)閉格式文件 close format 關(guān)閉過(guò)程文件 close procedure
關(guān)閉后備文本文件 close alternate 顯示數(shù)據(jù)庫(kù)結(jié)構(gòu)list|display structure[to printer|to file<文件名>]
修改庫(kù)結(jié)構(gòu) modify structure (生成。bak和。tbk文件,修改字段類(lèi)型該字段數(shù)據(jù)丟失,不能同時(shí)修改字段名和寬度)
絕對(duì)移動(dòng)go|goto[[record]<記錄號(hào)>|top|bottom][in <工作區(qū)號(hào)>|<文件別名>](第一個(gè)記錄:鍵值最小的記錄)
相對(duì)移動(dòng)skip[<移動(dòng)記錄數(shù)>][in <工作區(qū)號(hào)>|<文件別名>]插入記錄insert[before][blank]before:前,blank空
邏輯刪除delete[<范圍>][for<條件>][while<條件>] 恢復(fù)邏輯刪除recall[<范圍>][for<條件>][while<條件>]
物理刪除pack 物理刪除所有記錄zap 編輯修改edit|change[<范圍>][fields<字段名表>][for<條件>][while<條件>]
瀏覽編輯browse[<范圍>][fields<字段名表>][for<條件>][while<條件>][freeze<字段名>][noappend][nodelete]
[noedit][font<字體>[,<字號(hào)>] freeze<字段名>指定可修改的字段
替換修改replace[<范圍>]<字段1>with<表達(dá)式1>[,<字段2>with<表達(dá)式2>…] [for<條件>][while<條件>]
排序 /a升序/d降序/c不區(qū)分大小寫(xiě),關(guān)鍵字只能C、N、D型??砂嚓P(guān)聯(lián)工作區(qū)文件字段:別名->字段名
sort to<文件名>on<字段1>[/a][/c][/d][,<字段2>[/a][/c][/d]…][<范圍>][fields<字段表>][for<條件>][while<條件>]
index on<關(guān)鍵字表達(dá)式>to<索引文件名>[for<條件>][compact][unique][additive]多字段索引必須是C型。
compact壓縮 unique惟一性索引(若有多條記錄具有相同關(guān)鍵字表達(dá)式,索引文件只包含第一條記錄。Additive不關(guān)閉先前打開(kāi)的索引,新建索引文件成為主索引。關(guān)閉索引文件1、set index to 2、close index
打開(kāi)索引文件1、use<庫(kù)文件名>index<索引文件名表> 2、set index to<索引文件名表>
指定主索引set order to[<索引文件名表中的順序號(hào)>|<索引文件名>] 重建索引reindex[compact]
順序查詢(xún)locate[<范圍>][for<條件>][while<條件>]繼續(xù)查詢(xún)continue(locate中用while語(yǔ)句,continue無(wú)意義)
索引查詢(xún)find<字符串>|<數(shù)值常量>只能查字符串或數(shù)字字符串有前導(dǎo)空格須用引號(hào),否則可不必使用定界符
seek<表達(dá)式> 按指定范圍統(tǒng)計(jì)滿足條件的記錄count[<范圍>][for<條件>][while<條件>][to<內(nèi)存變量名>]
求和:sum[<范圍>][<數(shù)值表達(dá)式>][for<條件>][while<條件>][to<內(nèi)存變量名表>|to array<數(shù)組>]
求平均值:average[<范圍>][<數(shù)值表達(dá)式>][for<條件>][while<條件>][to<內(nèi)存變量名表>|to array<數(shù)組>]
分類(lèi)匯總:total on<關(guān)鍵字表達(dá)式>to<分類(lèi)庫(kù)文件名>[<范圍>][fields<字段名表>][for<條件>][while<條件>]
庫(kù)文件復(fù)制:copy to<庫(kù)文件名>[<范圍>][fields<字段名表>][for<條件>][while<條件>]
庫(kù)結(jié)構(gòu)復(fù)制:copy structure to<新庫(kù)文件名>[fields<字段名表>] 文件復(fù)制copy file<源文件名>to<目標(biāo)文件名>
庫(kù)文件復(fù)制成文本數(shù)據(jù)文件:sdf復(fù)制成標(biāo)準(zhǔn)格式(各記錄定長(zhǎng),字符無(wú)分界符)delimited非標(biāo)準(zhǔn)格式數(shù)據(jù)文件,特點(diǎn):各記錄不定長(zhǎng),每個(gè)記錄以回車(chē)換行為結(jié)束標(biāo)志,字段值之間用逗號(hào)分開(kāi),字符型數(shù)據(jù)用雙引號(hào)括起來(lái)。
copy to<數(shù)據(jù)文件名>sdf|delimited[with<定界符>|blank][<范圍>][fields<字段名表>][for<條件>][while<條件>]
文本數(shù)據(jù)到庫(kù)文件:append from<數(shù)據(jù)文件名>sdf|delimited[with<定界符>|blank][for<條件>][fields<字段名表>]
選擇工作區(qū)select<工作區(qū)號(hào)>|<別名> 刪除關(guān)聯(lián)set relation to
建立文件關(guān)聯(lián)set relation to[<關(guān)鍵字表達(dá)式>|<數(shù)值表達(dá)式>into<工作區(qū)號(hào)>|<別名>][additive]
庫(kù)文件連接join with<別名>to<新庫(kù)文件名>[fields<字段名表>][for<條件>] 庫(kù)文件更新:
update on<關(guān)鍵字段>from<別名>replace<字段名1>with<表達(dá)式1>[,<字段名2>with<表達(dá)式2>…][random]
建立命令文件:modify command[<命令文件名>|?][in window<窗口名>|screen] 命令文件運(yùn)行:do<命令文件名>
命令文件注釋?zhuān)?、note<注釋>2、*<注釋>3、&&<注釋> 清屏命令:clear 返回命令return
accept[<字符表達(dá)式>]to<內(nèi)存變量>接受從鍵盤(pán)輸入的字符型數(shù)據(jù)。Input[<字符表達(dá)式>]to<內(nèi)存變量>接受從鍵盤(pán)輸入的數(shù)據(jù),wait[<字符表達(dá)式>][ to<內(nèi)存變量>][window[nowait][timeout<等待秒數(shù)>]等待一個(gè)字符。無(wú)字符表達(dá)式提示:press any key to continue.window使提示信息顯示在系統(tǒng)窗口中。
格式化輸出:@<行,列>say<表達(dá)式>[picture“[@功能符串][格式符串]”][font<字體>[,<字號(hào)>]]
格式化輸入:@<行,列>[say<表達(dá)式>]get<內(nèi)存變量>|<字段>[picture“[@功能符串][格式符串]”][range<上界>[,<下界>]][[open]window<窗口名>][enable|disable][valid<邏輯表達(dá)式1>][when<邏輯表達(dá)式2>]
window指定編輯備注字段窗口(窗口須事先定義)disable|enable是否允許存取該變量
valid檢查get數(shù)據(jù)正確性,只有邏輯表達(dá)式1為真時(shí)才能移到下一個(gè)get變量。
定義文本編輯區(qū):@<行,列>edit<內(nèi)存變量>size<行數(shù)>,<列數(shù)>font[<字體>[,<字號(hào)>]][scroll]
read[cycle][save]cycle定義一個(gè)循環(huán)read,可通過(guò)tab、enter回到第一個(gè)對(duì)象,save使對(duì)象能被以后的read編輯
功能符:! 小寫(xiě)變大寫(xiě);B數(shù)值左對(duì)齊;D日期型按set date格式;E日期型按日/月/年;Z數(shù)值為0時(shí)顯示空格;$ 貨幣格式;只支持say:( 負(fù)數(shù)加括號(hào); C正數(shù)后加CR;X負(fù)數(shù)后加DB.只支持get:A只允許字母字符;J字符右對(duì)齊;K光標(biāo)移到變量時(shí)自動(dòng)刪除原內(nèi)容;T刪除字符前后空格
格式符:X允許任何字符;#顯示正負(fù)號(hào),只許數(shù)字、空格、正負(fù)號(hào);!小寫(xiě)變大寫(xiě);*第一個(gè)有效數(shù)字前0變*;
。 小數(shù)點(diǎn)位置;, 隔三位插,;只支持say:A數(shù)值型用A替換數(shù)字; Y邏輯型T變Y,F(xiàn)變N,數(shù)值型用Y替換數(shù)字; $數(shù)值型貨幣號(hào),字符型$替代字符; 9字符型只許0-9; 只支持get:A只允許字母;L只允許邏輯型;N只允許字母和數(shù)字;9只允許數(shù)字、正負(fù)號(hào);$第一個(gè)有效數(shù)字前0變$;
清整個(gè)屏幕:clear 清屏幕局部區(qū)域:@<行1,列1>[clear|clear to<行2,列2>]
分支語(yǔ)句:if<條件><命令序列1>[else<命令序列2>]endif 多分支選擇語(yǔ)句:do case case<條件1>
<命令序列1> case<條件2><命令序列2>…case<條件n><命令序列n>[otherwise<命令序列n+1>]endcase
while循環(huán)語(yǔ)句:do while<條件><命令序列1>[loop]<命令序列2>[exit]enddo
for(給定次數(shù))循環(huán)語(yǔ)句:for<循環(huán)變量>=<初值>to<終值>[step<步長(zhǎng)>]<命令序列>[loop][exit]endfor
scan循環(huán):scan[<范圍>][for<條件>][while<條件>]<命令序列>[loop][exit]endscan
定義過(guò)程:procedure<過(guò)程名>[parameters<形參表>]<過(guò)程體>return[to master] 過(guò)程文件格式:procedure<過(guò)程名1><過(guò)程體1>return procedure<過(guò)程名2><過(guò)程體2>return…procedure<過(guò)程名n><過(guò)程體n>return
打開(kāi)過(guò)程文件:set procedure to[<文件名>],關(guān)閉過(guò)程close procedure 調(diào)用過(guò)程do<過(guò)程名>[with<實(shí)參表>]
定義全局變量:public<內(nèi)存變量表>
隱藏指定內(nèi)存變量:1、private<內(nèi)存變量表>2、private all[like<通配符變量名>]|except<通配符變量名>]
自定義函數(shù):function<函數(shù)名>[parameters<形參表>]<函數(shù)體>return<表達(dá)式> 調(diào)用函數(shù):函數(shù)名([<實(shí)參表>])
定義窗口:define window<窗口名1>from<左上角行號(hào),列號(hào)>to<右下角行號(hào),列號(hào)>[double|panel|system|
邊框樣式double雙線、panel粗線、system模擬命令窗口、默認(rèn)單線。border string字符串邊框,shadow陰影
in window定義在指定的父窗口內(nèi)[close關(guān)閉][float移動(dòng)][grow改變大小][zoom化][minimize最小化]
激活窗口:activate window<窗口名1>|in window<窗口名2>休眠窗口:deactivate window<窗口名>[all]
釋放窗口:release window<窗口名表> 顯示、隱去窗口show/hide window<窗口名表>|
1、定義水平菜單:define menu<菜單名>[in window<窗口名>][key<熱鍵>]
2、定義菜單選項(xiàng):define pad<選項(xiàng)名>of<菜單名>prompt<提示>[at<行,列>][key<熱鍵>]
3、設(shè)置菜單命令:on selection pad<選項(xiàng)名>of<菜單名><命令> 4、激活菜單:activate menu<菜單名>
5、定義彈出菜單:define popup<菜單名>[from<左上角行,列>]
6、定義菜單選項(xiàng):define bar<選項(xiàng)號(hào)>of<菜單名>prompt<提示>[key<熱鍵>]
7、設(shè)置菜單命令:on selection bar<選項(xiàng)號(hào)>of<菜單名><命令> 8、激活菜單:activate popup<菜單名>
9、下拉菜單中定義PAD選中后執(zhí)行的彈出菜單:on pad<選項(xiàng)名>of<水平菜單名>activate popup<彈出菜單名>
10、二級(jí)彈出菜單:on selection bar<選項(xiàng)號(hào)>of<菜單名> activate popup<二級(jí)菜單名>
下拉菜單設(shè)計(jì)命令:1,2,9(3),5,6,7(10),4(彈出菜單已經(jīng)在水平菜單中激活)
建立create