FOXPRO在三峽工程信息管理中的應(yīng)用_第1頁
FOXPRO在三峽工程信息管理中的應(yīng)用_第2頁
FOXPRO在三峽工程信息管理中的應(yīng)用_第3頁
FOXPRO在三峽工程信息管理中的應(yīng)用_第4頁
FOXPRO在三峽工程信息管理中的應(yīng)用_第5頁
已閱讀5頁,還剩2頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、FOXPRO在三峽工程信息管理中的應(yīng)用摘要:三峽工程是世界級(jí)的巨型工程,專業(yè)門類多、技術(shù)復(fù)雜、信息管理工作量宏大,必須使用IS系統(tǒng)對(duì)信息進(jìn)展搜集、整理、存儲(chǔ)、統(tǒng)計(jì)、分析、制表。幾年來,我們先后用FXBASE、FXPR編制了?工資管理系統(tǒng)?、?土石方工程量計(jì)算程序?、?工程支付管理系統(tǒng)?、?文檔管理系統(tǒng)?、?混凝土強(qiáng)度統(tǒng)計(jì)分析程序?等小型桌面系統(tǒng)。在編程過程中,經(jīng)歷了從低級(jí)平臺(tái)DBASE到高級(jí)平臺(tái)FXPR、從字符界面DS到圖形用戶界面INDS的轉(zhuǎn)化,從中總結(jié)出了一些應(yīng)用經(jīng)歷。關(guān)鍵詞:三峽工程,F(xiàn)XPR,應(yīng)用,經(jīng)歷三峽工程是世界級(jí)的巨型工程,專業(yè)門類多、技術(shù)復(fù)雜、信息管理工作量宏大,必須使用IS系

2、統(tǒng)對(duì)信息進(jìn)展搜集、整理、存儲(chǔ)、統(tǒng)計(jì)、分析、制表。目前,參建各單位的IS系統(tǒng)相繼投入運(yùn)行,如長(zhǎng)江三峽工程開發(fā)公司的TGPIS系統(tǒng)、葛洲壩股份三峽建立承包公司的“施工檔案管理系統(tǒng)等。這些系統(tǒng)功能較強(qiáng)、涉及面較廣,但不可能覆蓋信息管理的方方面畫,還需要桌面數(shù)據(jù)庫系統(tǒng)來補(bǔ)充。由于桌面數(shù)據(jù)庫的簡(jiǎn)單易學(xué),因此有著宏大的用戶群。用桌面數(shù)據(jù)庫開發(fā)出功能較強(qiáng)的系統(tǒng)也有不少成功的先例,如19951997年三峽工地使用的“統(tǒng)計(jì)系統(tǒng)、國家電力公司開發(fā)的概預(yù)算軟件等。在桌面數(shù)據(jù)庫方面,幾年來,我們先后用FXBASE、FXPR編制了?工資管理系統(tǒng)?、?土石方工程量計(jì)算程序?、?工程支付管理系統(tǒng)?、?文檔管理系統(tǒng)?、?混凝

3、土強(qiáng)度統(tǒng)計(jì)分析程序?等小型桌面系統(tǒng)。在編程過程中,經(jīng)歷了從低級(jí)平臺(tái)DBASE到高級(jí)平臺(tái)FXPR、從字符界面DS到圖形用戶界面INDS的轉(zhuǎn)化,從中總結(jié)出了一些應(yīng)用經(jīng)歷。如:在INDS中繼續(xù)使用“字符型報(bào)表、充分利用BRSE快速制作錄入界面、利用“表達(dá)式生成器建立查詢、利用FXGRAPH建立直觀的柱狀圖、餅圖等等。1工程管理器工程管理器引入工程概念后,使開發(fā)人員從應(yīng)用系統(tǒng)中各類文件繁瑣的管理中解脫出來,從而有更多的時(shí)間用于模塊開發(fā):工程管理器有如下優(yōu)點(diǎn):1只要將應(yīng)用系統(tǒng)的主控模塊通常是菜單放入工程管理器中,在生成工程時(shí),能將應(yīng)用系統(tǒng)中幾乎所有的文件都納入其中,方便程序模塊的修改、調(diào)試;2通過其可以

4、方便地創(chuàng)立可執(zhí)行文件,并且在編譯時(shí)具有自動(dòng)更新工程中各組成局部的版本的功能。在使用工程管理器時(shí)應(yīng)注意:1盡可能地使用“原文件NX、SX等,而不使用由生成器轉(zhuǎn)換以后的程序文件PR、SPR等,以便在菜單、屏幕等更新后,執(zhí)行工程管理器中的“BUILD按鈕時(shí)能自動(dòng)作相應(yīng)的轉(zhuǎn)換;在程序中調(diào)用菜單或屏幕時(shí),調(diào)用擴(kuò)展名為PX或SPX的文件而不是擴(kuò)展名為PR或SPR的文件。2假設(shè)一個(gè)應(yīng)用中的大局部模塊都已定型,只是個(gè)別模塊在使用中變化。如我們編制的?工資管理系統(tǒng)?中的統(tǒng)計(jì)模塊,該模塊的修改二次開發(fā)較簡(jiǎn)單,系統(tǒng)的使用人員也可以勝任。這要求在編譯的可執(zhí)行文件中不含該模塊,實(shí)現(xiàn)的方法是:利用FXPR“PRJET菜單

5、中的“EXLUDE菜單條對(duì)工程管理器中的該模塊作標(biāo)記,然后執(zhí)行“PRJET菜單中的“PAK功能,再重新編譯工程即可。外部模塊是FXP類型的文件,在安裝時(shí),注意將外部模塊文件放在應(yīng)用系統(tǒng)EXE文件所在的目錄中。2FXPR程序的龍頭菜單程序通常由多個(gè)功能模塊組成,可以通過屏幕中排列的一系列按鈕等對(duì)象來調(diào)用這些模塊,但通常用菜單將各功能模塊交融在一起形成整體。為此,我們用DELPHI編制了這種菜單的自動(dòng)生成器。FXPR中提供了與INDS圖形用戶界面一致的條形菜單、彈出菜單,并提供了相應(yīng)的自動(dòng)生成工具GENENU.FXP。這種菜單的特點(diǎn)是:菜單容許是多層次的;運(yùn)行時(shí)菜單可以動(dòng)態(tài)變化;功能模塊可以直接含

6、在菜單中,使得由一個(gè)菜單程序構(gòu)成一個(gè)應(yīng)用系統(tǒng)成為可能;可以直接使用一些通用功能,如新建文件、復(fù)制、粘貼等。這種形式的菜單,初次使用時(shí)往往會(huì)產(chǎn)生只運(yùn)行一次就退出菜單的情況,可以用以下的方法解決:1在菜單開場(chǎng)SETUP代碼最后參加如圖1所示循環(huán)起始語句:dhile.t.2菜單的清楚LEANUP代碼如下所示:readvalid.f.endd3退出菜單程序的代碼如下所示:lsedatabaselearallsetsysenutdefaultanel應(yīng)用系統(tǒng)中常常要用應(yīng)用的名稱代替FXPR主窗口中的標(biāo)題“irsftfxpr,實(shí)現(xiàn)方法是在菜單開場(chǎng)SETUP代碼的前面參加類似如下所示代碼:difyindsr

7、eenat4,6size36,147;title“物資材料管理程序fnt“ssansserif,8flatlseiniizeveindsreenenterzindsreenaxFXBASE的下拉菜單eunbar.readenut是一種單任務(wù)性質(zhì)的,在執(zhí)行一個(gè)詳細(xì)的模塊時(shí),菜單隱去,控制權(quán)在所執(zhí)行的模塊,不會(huì)發(fā)生模塊的重復(fù)執(zhí)行。而FXPR的條形菜單具有多任務(wù)的性質(zhì),同一模塊,可重復(fù)執(zhí)行,有時(shí)需要利用這一功能,但多數(shù)情況下是不需要的,這是因?yàn)橥荒K或同時(shí)活動(dòng)的多個(gè)模塊經(jīng)常處理的是同一類數(shù)據(jù)庫或表,這樣可能會(huì)因產(chǎn)生沖突而出錯(cuò)。因此,通常要求在執(zhí)行一個(gè)模塊時(shí),不容許使用一樣數(shù)據(jù)庫文件的其他模塊執(zhí)行。

8、這可以通過在菜單開場(chǎng)SETUP代碼引入假設(shè)干邏輯型內(nèi)存變量,在菜單條中使用SKIP屬性來實(shí)現(xiàn)。通過這種方式,可以使模塊之間產(chǎn)生關(guān)聯(lián)。3應(yīng)用程序的信息輸入1屏幕生成器屏幕和菜單類似,都有開場(chǎng)SETUP、去除LEANUP兩個(gè)代碼段,通過他們可以設(shè)置相應(yīng)的環(huán)境或在屏幕或菜單退出時(shí)恢復(fù)環(huán)境。雖可以通過屏幕生成器中的“ENVIRN-EXT按鈕中的“SAVE功能保存開發(fā)時(shí)的環(huán)境,但此功能有限,不便于進(jìn)展復(fù)雜的設(shè)置,且其保存的開發(fā)時(shí)的環(huán)境可能與運(yùn)行時(shí)不同,導(dǎo)致程序運(yùn)行時(shí)出錯(cuò)。所以,建議編程人員不要用此功能,而使用前者。屏幕中編寫代碼時(shí),有兩個(gè)層次,即屏幕層和屏幕中的對(duì)象層。通常的處理均可在對(duì)象層次中解決。屏

9、幕層次中通常只使用開場(chǎng)SETUP、去除LEANUP兩個(gè)代碼段,其他的代碼段通常在多窗體、多屏幕中用到。在對(duì)象層次中,通常也只需要編寫“VALID代碼。2功能強(qiáng)大的BRSE使用過EXEL的人都習(xí)慣對(duì)縱橫表進(jìn)展操作,這樣操作直觀、自然。在FXPR中,用BRSE可以實(shí)現(xiàn)類似的功能。假設(shè)要用BRSE對(duì)表進(jìn)展任意操作,用下面簡(jiǎn)單的命令即可:usebrsetitle這樣的操作,表中的數(shù)據(jù)是不平安的,有必要對(duì)表的閱讀操作加以限制。如在BRSE命令中有選擇性的參加NDE-LETE、NAPPEND、NDIFY,就可以對(duì)“加刪除標(biāo)志或“追加記錄或“修改記錄加以限制。brsetitilendeletenappend

10、ndity注:這條命令只能顯示表的內(nèi)容,不容許對(duì)表進(jìn)展修改有時(shí),表的字段名是西文字段名,或雖是中文字段,但表達(dá)的意思不易理解時(shí),在閱讀時(shí)需要給出易于識(shí)別的表頭,這時(shí)就需要使用“:H=的字段名修飾如下所示:brsefieldnae:h=“姓名注:這里nae是西文字段名,在顯示時(shí)用“姓名交換在BRSE命令中參加NDIFY將鎖定所有的字段,不容許修改。但通常的情況只要求鎖定關(guān)鍵字段、關(guān)聯(lián)字段,這時(shí)就不能用NDIFY,而要用“:=.F.字段名修飾功能。如下所示:brsefieldnae:h=“姓名:=.f.,basi:h=“BASI成績(jī)注:nae字段不讓修改BRSE的功能非常強(qiáng)大,讀者可參看BRSE的

11、幫助提示。靈敏應(yīng)用BRSE的子句以及一些修飾功能,可以實(shí)現(xiàn)極其強(qiáng)大的數(shù)據(jù)庫的錄入、編輯、修改功能。4應(yīng)用程序的檢索的實(shí)現(xiàn)1按例關(guān)系查詢?cè)陂_發(fā)環(huán)境或命令環(huán)境中,進(jìn)展查詢采用功能強(qiáng)大的RQBE是最優(yōu)的選擇,用他建立單表或多表查詢均比擬簡(jiǎn)單,介紹這方面內(nèi)容的資料較多,在此,限于篇幅,不再贅述。由于在運(yùn)行庫中未集成RQBE特性,在開發(fā)應(yīng)用時(shí),請(qǐng)不要包含該特性。但用RQBE功能生成的SQL語句可用于應(yīng)用系統(tǒng)中,減少編制查詢模塊占用的時(shí)間。將SQL語句中的字句的內(nèi)容設(shè)置成變量,用“宏交換功能可以構(gòu)成某種程度上的通用查詢模塊。2表達(dá)式生成器在運(yùn)行時(shí)能用表達(dá)式生成器調(diào)用方法是GETEXPRT生成過濾條件,將查

12、詢的記錄過濾出來,在閱讀窗口或報(bào)表中顯示輸出。3定制查詢屏幕按例關(guān)系查詢以及表達(dá)式生成器均需要用戶有一定的FXPR運(yùn)用基矗對(duì)于普通用戶,需要構(gòu)造出傻瓜是樣的查詢屏幕,用戶填幾個(gè)字符串或數(shù)值等,就可以找出相應(yīng)的記錄。5應(yīng)用程序的結(jié)果輸出1BRSEBRSE功能強(qiáng)大,即既可用于信息的錄入,又可作為信息輸出的載體。2報(bào)表FXPR的報(bào)表與FXBASE中的報(bào)表相比增加了表格線的功能,更符合中文報(bào)表的習(xí)慣,制作報(bào)表較方便。但報(bào)表中的對(duì)象的定位稍顯費(fèi)事,編制個(gè)報(bào)表所花的時(shí)間較多,并且,所定制的報(bào)表是相劉于某種大小的紙張的,紙張大小改變后不能自適應(yīng)。在FXBASE以及在DS下的FXPR中,要打印報(bào)表,通常是用“

13、.SAY.語句編制程序?qū)崿F(xiàn),所生成的報(bào)表為文字型的報(bào)表。這種報(bào)表可以直接送往打印機(jī)輸出,也可以存入一文本文件中,經(jīng)其他字處理程序處理后輸出。在早期,編制程序生成報(bào)表是非常費(fèi)事的,系統(tǒng)開發(fā)中,大量的時(shí)間是用來編制報(bào)表程序。為了加快報(bào)表程序的編制,我們?cè)诶碚撝杏肈ELPHI編制了自動(dòng)生字符報(bào)表程序的工具。這些工具中,既有簡(jiǎn)單報(bào)表的快速生成接口,也有生成復(fù)雜縱橫表頭報(bào)表程序的工具。由于ED2000使得在INDS圖形用戶界面輸出字符型的報(bào)表非常方便,并且用我們自己的工具生成文字制表符型的報(bào)表的速度要比FXPR生成的圖形報(bào)表的速度快得多,所以即便是如今,我們大量的報(bào)表仍采用的是字符型的報(bào)表。假設(shè)文字報(bào)表

14、已存入文件AUTPRN.PRN中,用ED2000翻開文字報(bào)表的方法如下所示:filenae=sys5+sys2022+“autprn.prnrun:ed2000ed2000filenae3圖表在FXPR中,可以直接從數(shù)據(jù)庫中提取數(shù)據(jù)生成柱狀圖、餅圖等圖表。方法是用PY命令將圖表中要用到的字段復(fù)制到一個(gè)臨時(shí)數(shù)據(jù)庫中,然后調(diào)用FXGRAPH向?qū)Ъ纯伞@鐢?shù)據(jù)庫AB.DBF中含有“月份、“產(chǎn)值等10個(gè)字段,要求用“月份、“產(chǎn)值字段的值生成一柱狀圖。完成要求所需的代碼如下所示:useabpyttep.dbffield月份,產(chǎn)值usetepd-fxgraph4用EXEL生成報(bào)表EXEL可以直接翻開FXPR2.5B的數(shù)據(jù)庫進(jìn)展后處

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論