




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、管理信息系統實驗指導書或者信息系統分析與設計編者:蘇貴影適用專業:工商管理中北大學經濟與管理學院2008年3月1日目 錄序 言3第一部分 實驗概述4第二部分 實驗目的與說明4第三部分 實驗準備4第四部分 VFP基本知識介紹5第一節 常用命令(數據庫與表的建立與使用)5第二節 常用函數12第三節 表單設計18第四節 查詢設計22第五節 報表設計25第六節 菜單設計28第七節 項目設計30第五部分 實驗內容與操作指南32實驗一:常用命令分類與用法32實驗二:常用函數的分類與用法43實驗三:表單設計46實驗四:查詢設計51實驗五:報表設計54實驗六:菜單設計與項目設計57第六部分 參考資料64 序
2、言根據華北工學院的教學計劃與教學任務,工商管理專業開設管理信息系統課程并安排有配套的Visual FoxPro數據庫設計實驗,為了滿足教學配套的需要,特編寫了本指導書。眾所周知,VFP是美國Microsoft公司開發的Visual Studio中的重要成員,其方便易用的可視化開發工具,使原已受到微機用戶青睞的FoxPro如魚得水,但也因此增大了軟件的規模,是我國各界常用的重要的管理信息系統開發工具。作為新世紀的工商管理專業大學生來說,應對此重要易學的管理工具進行掌握。為了提高學生的實踐效果,編者根據教學要求、編者的教學經驗積累和反復上機操作,編寫了這份指導書。指導書共分五個部分,其中第四部分是
3、重點,詳細介紹了VFP中常用命令的用法、常用函數的用法、表單設計、查詢設計、報表設計、菜單設計、項目設計的實驗指導,對其中的關鍵環節、難點、注意事項進行重點說明,基本涵蓋了VFP的主要內容,提供了用VFP進行面向對象設計的思想與技巧,這將有助于讀者提高應用VFP來解決實際問題的能力。但是,畢竟不是編程實例,對于程序的實際設計編者沒有詳細地給出程序代碼,同時對方法的介紹也只是從簡要步驟或要點上闡述,不能很詳細地進行說明;由于實驗學時有限,僅能對比較重要的部分進行實驗,本指導書沒有包括VFP的全部方法的操作介紹。因此,對其中不滿意的內容望讀者見諒。編者2008年3月第一部分 實驗概述 實驗名稱:管
4、理信息系統實驗適用專業:工商管理專業實驗時數:16學時先修課程:計算機文化基礎、管理學第二部分 實驗目的與說明網絡經濟環境下,只懂經濟與管理而不懂計算機的人是不能對企業實行高效率的管理的。作為工商管理專業的本科生來說,為適應社會與企業的發展需求,應該掌握一種提高管理效率和決策科學性的計算機管理方法,本課程的開設正是要滿足這種要求的。而Visual FoxPro(簡稱VFP)是我國常用的數據庫管理軟件,因此本課程實驗是以VFP為基礎進行簡單管理系統的開發與設計,通過實驗,能夠使學生對所學的MIS的開發思想與方法、使用VFP設計與管理MIS有更深刻的體會,能夠真正地實現對實際管理問題的現代化管理。
5、本部分的實驗是一個綜合性的實驗內容,學生需要將書本上的內容靈活地運用到實驗之中,需要利用VFP語言來完成教師指定的管理系統的開發與設計任務,并且需要將VFP的實現方法、技巧與MIS的理論與方法相結合,才能較好地掌握管理信息系統的有關內容,達到掌握高效信息管理手段的目的。第三部分 實驗準備實驗是以Visual FoxPro中文版(如6.0版或更高版本)為基本軟件,因此在計算機系統中要有相應的軟件支持。注意:學生每次開機后,需要在硬盤系統(包括局域網、校園網)上查找Visual FoxPro相應軟件,若找到,則運行該軟件即可進入VFP狀態。否則,如果可以安裝軟件的話,則按照屏幕提示安裝VFP到相應
6、的目錄下。在確信Visual FoxPro找到后,就可以運行Visual FoxPro程序,進入Visual FoxPro系統了。學生在每次實驗前,應首先明確并詳細分析每次實驗的目的與實驗內容,充分做好預習與準備工作,列出本次實驗可能要用到的語句及其相關算法與用法,實驗時可先對課堂上可教材中的實例進行練習,熟練后再按照計劃進行操作和設計。實驗員:每次實驗前,應對學生擬用的計算機進行檢修,配備所需的Visual FoxPro軟件系統。第四部分 VFP基本知識介紹第一節 常用命令(數據庫與表的建立與使用)一、VFP的進入與退出首先應了解如何進入與退出VFP系統,了解VFP的工作環境,了解VFP的命
7、令窗口的打開與關閉。進入VFP系統方式:找到VFP相應的軟件后,運行該啟動程序,或者單擊“開始”“程序”Microsoft Visual Studio選擇Microsoft Visual FoxPro(可包括版本號,如6.0)”即可啟動VFP,打開VFP窗口;退出VFP系統,可以按窗口右上角的“S”或者選擇在“文件”菜單下的退出命令。命令窗口的啟動方式可從菜單“窗口”中選擇“命令窗口”或者使用快捷鍵CTRL+F2;關閉命令窗口可通過命令窗口的關閉按扭或者命令窗口的“S”或者用快捷鍵CTRL+F4。圖1-1為VFP的操作窗口。在VFP窗口,仔細觀察VFP各菜單的功能與使用方法,在此就不一一介紹了
8、。圖1-1 VFP操作窗口圖例二、設計與建立數據庫的步驟 李P1121、確定建立數據庫的目的,明確需要保存哪些信息;2、將所涉及的信息分成幾個獨立的表;VFP的表可以隸屬于一個數據庫,也可以獨立存在,稱自由表。3、確定每個表的列(即字段),確定字段的步驟如下:A)先要收集與表有關的、所需的全部信息;以最小的邏輯單位存儲信息;B)一般不包含可以通過推導或計算得到的數據項;C)確定字段的類型:這可以在建表的類型一欄中選擇恰當的類型,如字符型、數值型、整型、邏輯型、備注型,或者日期時間型等,一般地,存儲長度不定的字段,如受獎勵情況、照片或者工作經歷情況,可以選擇備注型。D)確定主關鍵字段,一般地主關
9、鍵字段的值是唯一的。4、確定表間關系。通過主關鍵字段建立表間關系,表間關系有一對多、多對多和一對一等。具體地建立數據庫的方法是:“文件”“新建”“數據庫”“向導”按照提示選擇數據庫表與字段,并保存文件。同時可以通過數據庫設計器,如圖1-2所示,圖中下部的則中數據庫設計器的工具控件,可以實現新建表、添加表、本地視圖、遠程視圖等功能。數據庫工具欄圖1-2 數據庫設計器圖例三、數據庫表結構的操作1、新建數據庫表的命令是:CREATE 表名1.dbf 8其中“8”代表回車鍵。注意:為方便起見,文中沒有將數據庫或表或文件所在的位置考慮進去,在操作時,可以選擇要操作的工作區即文件路徑。之后,按照屏幕提示依
10、次輸入表的各個字段的名字、類型、寬度和小數位數,輸完后按“8”或“確定”按扭,系統提示“現在錄入數據記錄嗎?”,選擇“是”,進入表編輯窗口,依次輸入記錄內容,存盤退出,即將表建立完成。2、瀏覽表的結構的命令:USE 表名1.dbf 8LIST STRU FIELDS 字段1,字段2 8 或者 DISP STRU FIELDS 字段1,字段283、修改表的結構的命令: 李P83USE表名1.dbf 8MODIFY STRU8注意:數據庫表的結構修改后,原數據庫文件有些數據庫會丟失。四、數據庫的打開與關閉1、數據庫表的打開的命令: 李P82SELECT 工作區號 8USE 數據庫表的名字8或者,依
11、次選擇“文件”“打開”“表”或“數據庫”命令。2、數據庫表的關閉命令: 李P82SELECT 工作區號USE8 或者 CLOSE ALL3、數據庫的打開的命令: 李P112OPEN DATABASE 數據庫名8MODIFY DATABASE 84、數據庫的關閉:CLOSE DATABASE8或者COLSE ALL8或者在已打開的數據庫窗口上按關閉按鈕“S”。如圖1-3。數據庫關閉按鈕圖1-3 數據庫設計器圖例五、數據庫的維護操作1、增加數據庫表的記錄 李P87USE 表名8APPED BLANK 8 或者APPEND FROM 文件名 FIELDS 字段名FOR 條件8 或者APPEND FR
12、OM ARRAY 數組名FOR 條件FIELDS 字段表 8或 INSERT INTO 表名 字段系列 VALUES 表達式系列 8INSERT INTO 表名FROM ARRAY 數組名|FROM MEMVAR82、修改與編輯數據庫表的記錄 李P95USE 表名8BROWSE FIELDS 字段表 FOR 條件NODELETE NOAPPEND NOEDIT 8或者CHANGE FIELDS 字段表 FOR 條件 NOMODIFY NODELETE NOAPPEND 8或者EDIT FIELDS 字段表 FOR 條件 NOMODIFY NODELETE NOAPPEND 8或者 REPLAC
13、E 范圍 <字段名1> WITH <表達式1><字段名1> WITH <表達式1>FOR 條件 83、刪除數據庫表的記錄 李P99USE 表名8DELETE SCOPE FOR 條件 WHILE 條件 IN 工作區號 8PACK 8(表示刪除有刪除標記的記錄)其中,SCOPE 可以是ALL,RECORD N(第N條記錄), NEXT N(當前記錄以下N條記錄),或者REST(剩余記錄)。RECALL SCOP FOR 條件 WHILE 條件 8(表示恢復作了刪除標記的記錄,即去掉刪除標記)ZAP IN 工作區號或別名 8(表示刪除所有打開的數據庫
14、記錄,因此該命令要謹慎使用!)六、數據庫表的瀏覽、查詢與統計1、瀏覽表記錄 李P87USE 表名8DISPLAY FIELDS 字段表 SCOPE FOR 條件WHILE 條件 TO FILE 文件名 8 (注意:不設范圍時,默認為顯示一條記錄)或者 LIST FIELDS 字段表 SCOPE FOR 條件WHILE 條件 TO FILE 文件名 8 (注意:不設范圍時,默認為顯示全部記錄,這是與DISPLAY命令的區別)例如:use bookdisplay fields 書本名稱,書本代號,出版社,作者,定價 all to myr.txt2、數據庫表的定位、查詢 李P89定位命令1:USE
15、表名8GO N8(注:N為記錄)SKIP NN 8(注:NN為向前或向后跳躍的記錄數)DISP 8定位命令2或順序查詢命令:USE 表名8LOCATE FOR 條件 SCOPE WHILE 條件 8CONTINUE8例如:以下程序實現查找兩本姓“譚”的作者編寫的圖書use bookLocate all for substr(作者)=”譚”Display fields 書本名稱,出版社,作者,定價ContinueDisplay fields 書本名稱,出版社,作者,定價Continue索引查詢命令: 李P123注意:以下兩個命令要求先和打開與查詢內容相關的索引文件,然后先訪問索引文件,再根據索引
16、關鍵字的指針訪問表文件中的記錄,確定當前記錄,實現記錄的定位。USE 表名8SEEK 表達式 ORDER 索引文件名 ASCENDING| DESCENDING 8(注意:該命令如果找到相應的記錄,則FOUND()=.T.;使用該命令,記錄必須已排序 ) 或者SCAN 表達式8或者 FIND 字符串/常數8;?FOUND()8;DISPLAY83、數據庫表的統計USE 表名8COUNT SCOPE FOR|WHILE 條件8(該命令是求滿足條件的記錄數)TOTAL SCOPE FOR|WHILE 條件8(該命令是對滿足條件的記錄分類匯總)SUM SCOPE FILEDS 字段表 FOR|WHI
17、LE 條件 TO 變量名表8(該命令是對滿足條件的記錄的數值字段求和)AVERAGE SCOPE FILEDS 字段表 FOR|WHILE 條件 TO 變量名表 8(該命令是對滿足條件的記錄求平均數)CALCULATE8(該命令是進行多功能計算)例如:use booksum 定價,頁數,印數to tprice,tpage,tpublishaverage 定價,頁數 to aprice,apagecalculate avg(定價),min定價),max(定價),std(定價),var(定價); to a1,a2,a3,a4,a5 &&求定價的平均值、最小、最大、方差、誤差值4、數
18、據庫表的索引與排序一般索引文件的建立與使用: 李P118USE 表名8INDEX ON 字段表達式 TO 文件名 FOR|WHILE 條件 ASCENDING|DESCENDING 8SET INDEX TO 索引文件名8排序: USE 表名SORT TO 排序表名 ON 關鍵字段 FOR 條件 FIELDS 字段表/A|D|C8USE 排序表名8LIST8例如:use booksort to booktemp on 分類/d,定價/a fields 書本名稱,分類,定價use booktempbrow注意:在本部分的實驗操作時,應注意靈活運用每個命令的各種參數,多做相應的練習。學生應按照教師
19、布置的作業要求進行操作,完成建立一個數據庫(表),并對其完成結構修改、記錄的插、刪、改、統計、索引和排列等操作任務。七、其它操作1、對數組、內存變量的操作練習1)VFP對數組的定義方式: DIMENSION 數組名(代表行數的表達式,代表列數的表達式)2)數組的使用,直接調用數組名(行數,列數)3)內存變量的賦值方式:變量名=表達式;或者用STORE 表達式 TO 變量名 4)內存變量的顯示:LIST|DISPLAY MEMORY LIKE * 5)內存變量的保存SAVE TO 內存變量文件名 ALL LIKE|EXCEPT * 6)刪除內存變量RELEASE 內存變量名表或者 CLEAR M
20、EMORY 7)恢復內存變量RESTORE FROM 內存變量文件2、VFP命令文件的建立與編輯:命令文件的建立:方法1:MODIFY COMMAND 文件名方法2:菜單:“文件”“新建”“程序”方法3:項目管理器:選擇代碼中的程序,點擊“新建”新建命令文件的窗口如圖1-4所示。圖1-4 程序文件窗口圖例命令文件的執行:命令:DO 文件名 WITH 參數表菜單:“程序”“執行”,或者,菜單窗口的“!”,如圖1-5所示。點擊“!”圖1-5注意:以上僅談到了VFP程序設計基礎知識當中的一部分內容,由于篇幅有限,對未涉及到的內容,教師也可以作為實驗內容,讓學生進行實驗操作。第二節 常用函數一、常用的
21、字符串處理函數 李P541)AT函數返回字符串在另一個字符串中第一次出現的位置AT( <字符串表達式1>,<字符串表達式2>)2)LEFT|RIGHT函數從給定字符串的最左(右)開始返回給定數值長度的一個子串。LEFT|RIGHT(<字符串表達式>,<數值表達式>)3)SUBSTR函數從一個字符串返回指定數目的字符SUBSTR(<字符串表達式1>,<起始位置>,<字符個數>)4)CTOD函數將字符類型數據轉換為日期型數據CTOD(<符合日期數據要求的字符串表達式>)5)ALLTRIM函數刪除字符串中
22、前面和后面的空格ALLTRIM(<字符串表達式>)6)TRIM函數刪除字符串的尾隨空格TRIM(<字符串表達式>)7)SPACE函數生成指定長度的空格字符串SPACE(<數值表達式>)8)STR函數將數字表達式轉換成字符串STR(<數值表達式>)9)UPPER函數將字符串轉換為大寫形式UPPER(<字符串表達式>)10)LOWER函數將字符串轉換為小寫形式LOWER(<字符串表達式>)二、常用的數值處理函數 李P531)ABC函數求絕對值,格式:ABC(<數值表達式>)2)INT函數取整數,格式:INT(<
23、;數值表達式>)3)ROUND函數在給定的位置處四舍五入,格式: ROUND(<數值表達式1>,<數值表達式2>)4)MAX|MIN函數取最大或最小值,格式:MAX|MIN(<數值表達式1>,<數值表達式2>)5)MOD函數數值取模,格式:MOD(<數值表達式1>,<數值表達式2>)6)EXP()函數、LOG()函數、SQRT()函數、VAL()函數等可類似操作三、常用的日期和時間函數 李P571)DATE函數返回系統日期,格式:DATE()2)TIME函數返回系統時間,格式:TIME()3)DAY函數求給定的日期是
24、該月的第幾天,格式:DAY(<日期表達式>)4)DTOC函數將日期轉換為字符串型的日期,格式:DTOC(<日期表達式> ,1)5)DOW函數以數字表示日期是星期幾,格式:DOW(<日期表達式>)6)CDOW函數以英文形式返回日期是星期幾,格式:CDOW(<日期表達式>)7)MONTH函數用數字表示給定日期的月份,格式:MONTH(<日期表達式>)8)CMONTH函數用英文形式返回給定日期的月份。格式:CMONTH(<日期表達式>)9)YEAR函數根據給定的日期返回年,格式:YEAR(<日期表達式>)10) DA
25、TETIME函數返回系統日期時間,格式:DATETIME()11)MDY()函數返回給定日期的月日年格式的日期,格式:MDY(<日期表達式>)如:?MDY(2002-03-08),則系統顯示:March 8,2006四、常用的數據庫函數 李P581)DBF函數返回指定工作區的數據庫名,格式:DBF(<數值表達式>)2)FCOUNT函數返回指定工作區的數據庫字段的個數,格式:FCOUNT(<數值表達式>)3)EOF函數判斷記錄指針向下是否越界,格式:EOF(<數值表達式>)4)BOF函數判斷記錄指針向上是否越界,格式:BOF(<數值表達式&g
26、t;)5)RECCOUNT函數返回數據庫的記錄數,格式:RECCOUNT(<數值表達式>)6)FIELD函數返回第幾個字段的名稱,格式:FIELD(<數值表達式>)7)RECNO函數返回指定工作區當前的記錄號,格式:RECNO(<數值表達式>)8)USED函數判斷數據庫是否在指定的工作區打開,格式:USED(<數值表達式>)9)FOUND函數在指定工作區中所需的庫文件是否找到,格式: FOUND(<數值表達式>)五、其它函數1)FILE()函數判斷一個指定文件名的文件是否存在2)IIF函數類似IF語句的函數,根據一個邏輯表達式取兩個值
27、之一,格式:IIF(<邏輯表達式>,<表達式1>,<表達式2>)3)PCOL()函數返回打印機當前的列位置4)PROW()函數返回打印機當前的行位置5)TYPE()函數返回給定表達式的類型,格式:TYPE(<字符串表達式>)注意,若測試字符串或變量的類型,則要對字符串表達式及變量名加上引號,否則將返回未定義類型(U)。6)COL()函數返回屏幕當前的列位置7)ROW()函數返回屏幕當前的行位置8)INKEY()函數返回用戶擊入鍵的ASCII碼值9)MESSAGE()函數返回提示信息MESSAGEBOX( 要顯示的提示信息 ,對話框類型 ,對話框標
28、題 ) ,其中對話框類型可由三個數字用“+”連接,第1個數字表示按鈕值,第2個數字表示圖標值,第3個數字表示默認按鈕。0只有“確定”按鈕 16停止圖標 X 0 第一個按鈕為焦點1“確定”和“取消” 32問號 ? 256 第二個按鈕得焦點2“終止”、“重試”和“忽略” 48驚嘆號 ! 512 第三個按鈕得焦點3“是”、“否”和“取消” 64信息圖標 i 4“是”和“否” 5“重試”和“取消” 舉例: MESSAGEB
29、OX ("大家都看明白了嗎?", 4+32+256, "老師的擔心")結果如圖2-1:圖2-110)SYS()函數返回系統配置的相關值,它屬于多功能函數11)SET()函數返回SET ON/OFF或SET TO任選項的狀態六、程序設計(一)屏幕輸入命令 李P1841、INPUT語句:功能等待用戶從鍵盤上輸入數值型數據。格式:INPUT <提示信息> TO <內存變量表>2、ACCEPT語句:功能是等待用戶從鍵盤上輸入字符型數據。格式:ACCEPT <提示信息> TO <內存變量表>3、WAIT語句:功能是等
30、待用戶從鍵盤上輸入一個字符。格式:WAIT <提示信息> TO <內存變量表> window at <行>,<列>timeout<數值表達式>注意:以上三個語句對變量無須賦初值。4、SAY、READ語句:功能是按指定格式輸入或輸出變量值。輸入格式:內存變量=初值 <行>,<列> SAY <提示信息>GET <內存變量> PICTURE <格式描述符>READ輸出格式: <行>,<列> SAY <表達式> PICTURE <格式描述符&
31、gt;(二)程序結構 李P1841、順序結構:指在程序執行時,根據程序中語句的書寫順序依次執行的命令序列。2、分支結構條件判斷命令:IFELSEENDIF分支選擇命令:DO CASEENDDO IF表達式THEN 執行命令集Commands ELSE Commands ENDIF DO CASE CASE 表達式1 執行命令集Commands CASE 表達式2 Commands CASE 表達式N Commands OTHERWISE Commands ENDCASE3、循環結構在程序設計中經常會遇到重復性的操作。重復次數不知用DO WHILE:DO WHILE 1Expression 執行
32、命令集Commands LOOP EXIT ENDDOFORENDFOR (主要用于操作次數已知的循環)FOR 變量名 = 初始值 TO 終止值 STEP 步長 執行命令集Commands EXIT ENDFOR | NEXT(三)自定義函數自定義函數是一個獨立的命令文件,其擴展名為.PRG文件,它與命令文件的區別在于:函數命令文件中最后通過RETURN語句返回一個函數值。一般地,自定義函數由三部分組成:1、用FUNCTION 自定義函數名表示自定義函數的開始,另外,用PARAMETER語句定義函數的輸入參數,對無參數時該語句可省略;2、函數體,在其中完成各種運算,一般是由若干條語句構成;3、
33、通過RETURN語句返回函數的結果值,并輸入ENDFUNC表示自定義函數的結束。即:FUNCTION 函數名.PRGPARAMETER 參數列表1若干條函數命令行語句RETURN 參數列表2ENDFUNC自定義函數的調用格式: 函數名 ( <參數列表1>)(四)過程的定義與使用 李P1971、過程的定義:一般可單獨作一個命令文件,擴展名.PRG,其格式為: PROCEDURE 過程名.PRGPARAMETER 參數列表1若干條過程命令行語句 RETURN 參數列表2 ENDPROC2、過程的調用:SET PROCEDURE TO 過程名.PRG DO 過程名.PRG WITH 參數
34、列表1或者:過程名(參數列表1)注意:過程的定義與調用能夠提高程序設計的效率,請同學們多做實驗并予以掌握,能夠在面向對象程序設計中靈活使用。注意:以上僅談到了VFP當中的一部分函數內容,由于篇幅有限,對未涉及到的內容,學生可以自己進行實驗操作。第三節 表單設計一、建立表單的方法1) 使用表單向導創建表單;2) 在系統菜單“表單”中選擇“快速表單”創建簡單表單;3) 使用表單設計器創建新表單或修改已有的表單,對于此種方法應作重點掌握。二、使用表單向導和表單設計器制作表單1、 啟動表單向導,如圖3-1:方法一:通過系統菜單“文件”“新建”“表單”“向導”“向導選取”“表單向導”或者“一對多表單向導
35、”方法二:系統菜單“工具”“向導”“表單”圖3-12、 在表單向導的指引下,依次完成以下操作:步驟1:選擇在表單中出現的字段(若是多表操作則先選擇父表字段再選擇子表字段);步驟2:選擇表單樣式;步驟3:選擇最多三個字段或一個索引標識來排序記錄;步驟4:預覽,完成,保存表單。3、用表單生成器作表單,如圖3-2:1)打開表單生成器:通過菜單中的“文件”“新建”“表單”“新建表單”。2)啟動快速表單:執行菜單中的“表單”“快速表單”,打開表單生成器。3)選擇數據表及表單中的字段:在表單生成器中先進行“字段選取”,即在表單中添加哪些字段。4)選擇表單樣式:在表單生成器中為要添加的控件選擇一種樣式。5)
36、生成表單:確定,完成。圖3-24、用表單設計器制作表單,表單向導制作表單是比較簡單的事,但由于自動化程度太高,不能設計復雜的有個性的表單,因此常使用表單生成器來設計豐富的表單。如圖3-3。圖3-31)啟動表單設計器的三種方法:命令:CREATE FORM 表單名菜單:系統菜單“文件”“新建”“表單”項目管理器:選擇“文檔”“表單”“新建”2)給表單中加入控件的方法:選擇想要加入的各類控件,然后單擊控件工具欄中相應的控件,再在表單的適當位置單 擊,就在生成了一個該類型的控件。表單上的各種控件還可以用鼠標進行托動以改變位置和大小,當然還可以用布局工具調整控件在表單的位置。應對“標簽”、“文本框”、
37、“編輯框”、“命令按鈕、“命令按鈕組”、“復選框”、“組合框”、“表格”、“記時器”等控件進行靈活運用。3)為控件設置各種屬性的方法:布置好表單上的各種控件后,可以設置表單及表單各個控件的屬性。設置的方法是先選定對象,通過系統菜單“顯示”中的“屬性”命令可以打開屬性窗口進行設置,也可以右擊在快捷菜單中選擇“屬性”。常用的屬性有:Autocenter:指定表單對象第一次顯示時,是否自動居中放置Autosize:指定控件是否自動依據其內容自動調節大小Backcolor或Forecolor:指定用于顯示中文本和圖形的背景色或前景色Backstyle:指定一個對象的背景是否透明Borderstyle:
38、指定一個對象的邊框樣式Caption:指定在對象標題中顯示的文本Controlsource:指定與對象聯系的數據源Display value:指定在一個列表框或組合框中選定項的第一列的內容Enabled:指定對象能否響應用戶引發事件Fontname:指定顯示文本的字體名稱Fontsize:指定顯示文本的字體大小Format:指定某個控件的VALUE屬性的輸入或輸出格式Height:指定對象在屏幕上的高度Inputmask:指定控件中數據的輸入格式和輸出格式Left或者Right:指定對象的左邊界或右邊界Name:指定在代碼中引用對象時所用的名稱Rowsource:指定組合框或表明表框控件中值的
39、來源Rowsourcetype:指定控件中值的來源類型Sizable:指定對象的大小是否可以改變Style:指定控件的樣式Top:指定對象的上邊界Value:指定控件的當前狀態Visible:指定對象是否可見的還是隱蔽的Windowstate:指定表單窗口在運行時是否可以最大化或最小化Windowtype:在執行DO FORM命令時,指定表單集或表單對象的動作。一般選1(模式),表示其他表單和菜單對象不能成為活動。4)設置數據環境:打開數據環境窗口的方法與打開屬性窗口相同,只要選擇“數據環境”即可。在執行表單時數據環境中的所有表將自動打開,釋放表單時,又自動關閉所打開的表。5)建立事件和方法,
40、編寫代碼:就是為屏幕對象可能發生的各種事件或方法添加相應的程序代碼,以實現相應的功能。方法是:雙擊對象,即可打開代碼窗口,也可以通過菜單或快捷菜單打開對象的代碼窗口,然后選擇相應的過程,輸入代碼。5、修改表單:命令:MODIFY FORM 表單名菜單:“文件”“打開”“表單”項目管理器:選擇要表單名,單擊“修改”按鈕6、表單的執行:命令:DO FORM 表單名菜單:“表單“”運行表單“項目管理器:選擇表單,單擊“運行“按鈕第四節 查詢設計 一、為數據庫建立復合索引文件普通索引文件的建立: USE 表名 EXCLUSIVE8 (注意:結構復合索引文件的建立,表必須以獨占方式打開)INDEX ON
41、 字段名 TO TAG 字段別名 OF 文件名8主索引文件的建立: ALTER TABLE ADD 表名2 PRIMARY KEY 主關鍵字段名 TAG 主關鍵字段名8候選索引文件的建立: ALTER TABLE 表名2 ADD UNIQUE 字段名 TAG 字段名8二、查詢文件的建立查詢就是在數據庫表中查找指定的記錄和字段。在很多情況下都需要建立查詢,例如為報表組織數據,顯示表中的數據。VFP主要有四種查詢實現方法:基本命令查詢、SQL查詢、查詢設計器和視圖。命令查詢在第一部分已經介紹了,在此不再敘述。視圖查詢的方法與查詢相似,請同學們自己了解與練習。現在主要介紹另外兩種方法。1、使用查詢設
42、計器與向導建立查詢文件使用查詢設計器和查詢向導進行查詢的方法是:當指定了要查找哪些信息和這些信息存儲在哪些表和視圖中后,就可以通過以下步驟建立查詢:1)使用“查詢向導”或“查詢設計器”開始建立查詢,如圖4-1,圖4-2; 圖4-1圖4-22、選擇出現在查詢結果中的字段;3)設置查找條件;4)設置排序或分組選項來組織查詢結果;5)選擇查詢結果的輸出類型:表或報表或瀏覽;6)運行查詢。2、SELECTSQL查詢:SELECT是SQL的核心語句,它能完成強大的查詢功能。SELECT命令的格式為: SELECT <字段表>FROM 子句WHERE 子句GROUP BY 子句ORDER BY
43、 子句INTO|TO 子句SELECT 命令格式比較復雜,主要分三部分,其中前二者是必要的,第三項是可選的:查詢內容:由SELECT列出需要查詢的數據項;查詢對象:由FROM列出被查詢的數據表名;查詢結果去向:由選項INTO或TO指定查詢結果的去向,如屏幕、打印機、數據表、數組、文本文件等。編輯產生的SELECTSQL語句: MODIFY COMMAND 文件名.QPR MODIFY FILE 文件名.QPR三、在程序和表單中使用查詢使用查詢設計器創建的查詢實際上是可視地編寫SELECTSQL語句。在使用查詢設計器創建查詢后,若準備在程序或表單中進行查詢,應將SELECTSQL語句保存在擴展名
44、為.QPR文件中。可以在命令口程序或表單中通過DO命令直接執行SQL。但是,在運行SQL前必須做一些準備工作:從包含數據庫或表的目錄運行查詢;執行SET DEFAUT TO 命令設置路徑;修改查詢使查詢包含驅動器或路徑的信息。四、利用表單設計靈活的查詢文件根據數據庫或表的內容、查詢條件、查詢輸出的內容設計表單;在表單中靈活使用組合框、復選框、命令按鈕或命令按鈕組、文本框、標簽、表格等控件;在表單設計中的表格內容應與查詢文件對應起來,同時應將查詢文件設計成動態查詢文件,能夠根據表單的輸入決定查詢的條件及查詢的結果等有關內容,同時在表單設計中應將之前的函數、表達式等結合運用,以豐富查詢文件。第五節
45、 報表設計一、報表簡介報表是數據管理信息系統的最終結果,報表提供了對輸出數據進行組織和設定顯示與打印的方法。報表包括兩部分:數據源與布局。數據源通常是數據庫中的表,也可以是視圖、查詢等,而布局則定義報表的打印格式。建立報表的過程即是定義報表的樣式,報表文件的擴展名為.FRX,每個報表還有一個同名的擴展名為.FRT的備注文件。在VFP中可以通過自動報表、報表向導與報表設計器等多種方法設計報表,一般采用自動報表或報表向導生成報表后,再用報表設計器進行修改。二、快速報表的生成 打開報表數據源表文件; 單擊菜單“文件”“新建”“報表”“新建文件”,則能打開報表設計器; 從系統菜單“報表”“快速報表”在
46、對話框中選擇報表的字段布局; 在“快速報表”對話框中選擇報表中的字段,單擊“確定”按鈕,生成報表布局; 右擊報表設計器空白處,在快捷菜單中選擇執行“瀏覽”命令,瀏覽報表的結果; 退出報表設計器,保存報表文件。如圖5-1。點擊快速報表圖5-1三、使用報表向導設計報表報表向導設計報表的步驟:1)單擊菜單“工具”“向導”“報表”“向導選取”對話框;2)選擇要使用的向導:報表向導:用一個單一的表創建一個帶格式的報表;分組/總計報表向導:創建一個總結報表,可以提供每組數據的總計值;一對多報表向導:創建一個報表,其中的內容包含了一組父表的記錄及其相關子表的記錄。若選擇報表向導,則出現“報表向導”對話框。如
47、圖5-2。圖5-23)選擇字段,即選擇數據源數據庫、表和字段;選擇報表的樣式,即經營式、帳務式和報表式;定義報表的布局;指定排序方式;預覽報表,報表制作完成。四、使用報表設計器設計美觀實用的報表打開報表設計器:單擊菜單“文件”“新建”“報表”“新建文件”,則已打開報表設計器,如圖5-3。圖5-3定義報表的數據源:即為報表建立數據環境和在報表的激活事件代碼中指定數據源。若選擇同一數據源,則可以在數據環境或報表的init事件指定。選擇不同數據源,則在click事件代碼中用use或do query 語句指定。當把表作為數據源時,記錄按照在表中的順序被動處理,當使用查詢作為數據源時,不能在使用別名;帶
48、區打印典型內容列標頭每列一次列標題列標腳每列一次總結、總計組標頭每組一交數據前面的文本組注腳每組一次組數據的計算結果值標題每一報表一次標題日期或頁碼、公司徽標、標題周圍的框總結每個報表一次總結“grand totals”文本在報表設計器中對頁標頭、細節和頁注腳進行設計。細節帶區一般包含來自表的一行或多行記錄,這時可通過菜單“顯示”“報表控件”工具欄將報表控件加入報表中。報表帶區可包含文本、來自表字段中的數據、計算值、用戶自定義函數及圖片、線條和框等,報表上可以有各種不同類型的帶區,這是最能反映用戶報表特點的地方。可以在報表中增加的帶區如表。五、報表的使用報表完成后,可通過菜單進行預覽和打印,但
49、更常用的是通過命令在預覽或打印報表:預覽報表的命令:REPQORT FORM 報表名 PREVIEW打印報表的命令:REPORT FORM 報表名 TO PRINTER NOCONSOLE第六節 菜單設計一、 菜單的介紹此為子菜單與次一級菜單此即為菜單欄分組線圖6-1 菜單如圖6-1所示。主要包括主菜單、子菜單、次級菜單等。在菜單中可以對相關項目進行分組,如圖中標示。二、菜單系統的規劃在設計菜單之前要先進行菜單的規劃:一般應根據用戶的要求、系統擬實現的功能來設計菜單,一般應包括數據的初始化(建立各種數據表);數據的錄入、增加、修改與刪除;查詢文件系統;報表設計與打印系統;退出等內容。三、使用菜
50、單設計器設計菜單1、啟動菜單設計器的方法用CREATE MENU或MODIFY MENU命令可以啟動菜單設計器來建立或修改菜單文件;通過菜單“文件”“新建”“菜單”可啟動菜單設計器,或通過菜單“文件”“打開”來編輯已有的菜單文件;利用項目管理器也可以新建或修改菜單。2、菜單設計器的使用按規劃內容依次輸入各級菜單的名稱,選定菜單結果,編寫菜單選項即可定義好菜單。對應于每一菜單項,可以選擇子菜單,定義下一級菜單,然后再選擇子菜單進行定義,選擇命令或過程,直接輸入要調用的命令或過程。其中的關鍵是過程或命令的編寫。另外,可以添加使用菜單選項的熱鍵。3、菜單文件菜單文件的擴展名為.MNX,是一個數據結構
51、固定的數據表文件,相應備注文件的擴展名為.MNT。在VFP目錄下有一個程序文件夾GENMENU.PRG。當用戶建立菜單并要求生成程序代碼時,菜單生成器便會調用這段程序,根據菜單文件的內容自動生成擴展名為.MPR的屏幕程序文件,該文件可以用DO命令執行。通過系統菜單“菜單”中的“生成”命令可以調用GENMENU.PRG,將菜單文件生成屏幕程序文件。4、測試與調試菜單:使用SET SYSMENU命令可以管理VFP的菜單,如SET SYSMENU ON|OFF,可以實現在程序運行過程中顯示或隱藏系統菜單。四、創建快捷菜單快捷菜單可以方便、快速地生成菜單,主要是設計點擊右鍵時的菜單項目,方法是:“文件
52、”“新建”“菜單”“新建文件”新建菜單中選擇“快捷菜單”。之后就可以在插入點右擊使用快捷菜單了。如圖6-2。快速菜單其實主要是將系統中常用的菜單生成右擊時的菜單。點擊生成快速菜單圖6-2五、利用命令方式生成菜單可以使用其它命令生成菜單:利用menu與read menu相對應的命令組設計菜單;利用menu與read menu相對應的命令組來編寫菜單;利用prompt與menu to相對應的命令組來編寫菜單。第七節 項目設計一、項目管理器介紹項目管理器是VFP中處理數據和對象的主要組織工具,項目是文件、數據、文檔和VFP的集合,被保存在擴展名為.pjx的文檔中,即項目管理器是VFP的控制中心,當個
53、復雜的應用系統時,可以使用項目管理器來跟蹤所有有關的文件。項目管理器人員把一個應用程序中所有文件合并到單一的文件中。經過編譯生成一個用VFP命令可以運行的.APP文件,或者是一個獨立的擴展名為.EXE的Windows應用程序,這給軟件制作、饈提供了很大的方便。二、啟動項目管理器的方法命令:CREATE PROJECT菜單:在系統菜單下,依次選擇“文件”“新建”“項目”“新建文件”“創建”三、創建項目文件1、了解項目菜單的基本操作(使用鼠標右鍵)2、創建過程:在系統菜單下選擇“文件”“新建”“創建”“新建”,然后指定項目保存文件3、向項目中添加資源(修改類似):1)添加(修改)數據:單擊項目管理器菜單欄中的“數據”或者單擊“數據”之前的“+”選擇“數據庫”或“自由表”或“查詢”“添加(或者修改)”,打開數據庫或表或查詢文件“確定”,可以實現向項目中添加(或者修改)數據庫、自由表,或者本地視圖、遠地視圖、連接、查詢文件等等內容。2)添加(修改)文檔:單擊項目管理器菜單欄中的“文檔”或者單擊“文檔”之前的“+”選擇“報表”或“表單”或“標簽”“添加(修改)”,選擇相應的報表、表單、標簽“確定”,可以實現向項目添加(或者修改)報表、表單、標簽。3)添加(修改)代碼:單擊項目管理器菜單欄中的“代碼”或者單擊“代碼”之前的“+”選擇“程序”、“API庫”、“應用程序”“
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 糖果包裝設計與文化內涵-洞察闡釋
- 呼倫貝爾職業技術學院《愛情社會學》2023-2024學年第二學期期末試卷
- 衡陽科技職業學院《數學物理方法輔導》2023-2024學年第二學期期末試卷
- 沈陽北軟信息職業技術學院《中國畫工筆人物》2023-2024學年第二學期期末試卷
- 哈爾濱遠東理工學院《戲劇表演創作實踐》2023-2024學年第二學期期末試卷
- 南京傳媒學院《證券業務模擬實驗》2023-2024學年第二學期期末試卷
- 貴州文化旅游職業學院《生物化學上實驗》2023-2024學年第二學期期末試卷
- 上海建橋學院《流行鋼琴(2)》2023-2024學年第二學期期末試卷
- 河南推拿職業學院《西班牙歷史與文化》2023-2024學年第二學期期末試卷
- 廈門大學嘉庚學院《英語語用學》2023-2024學年第二學期期末試卷
- POCT血糖儀項目培訓記錄表、資質授權申請表
- 產科分娩期疾病課件
- 第八章-電力系統不對稱短路分析與計算課件
- 性病教學講解課件
- 教師教學對話分析方案T-SEDA可編輯模板
- 國開《人工智能專題》終考試題及答案
- 增材制造技術發展課件
- 市級課題結題報告-“雙減”背景下小學數學課堂開展學生“項目式學習”的實踐研究(優秀等次)
- DB44-T 2267-2021《公共機構能源資源消耗限額》-(高清現行)
- DLT 1055-2021 火力發電廠汽輪機技術監督導則
- 學校后勤服務滿意度調查問卷
評論
0/150
提交評論