實驗-管理信息系統(tǒng)實驗指導書_第1頁
實驗-管理信息系統(tǒng)實驗指導書_第2頁
實驗-管理信息系統(tǒng)實驗指導書_第3頁
實驗-管理信息系統(tǒng)實驗指導書_第4頁
實驗-管理信息系統(tǒng)實驗指導書_第5頁
已閱讀5頁,還剩86頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、PAGE PAGE 91管理信息系統(tǒng)實驗指導書一、實驗內(nèi)容的選取根據(jù)管理信息系統(tǒng)這門課程的特點及學生對身邊事物的熟悉理解情況,我們選取學生成績管理來作為實驗內(nèi)容。在設計實驗任務時,我們主要考慮了三個方面的問題:一是簡易性,太復雜了,時間不允許,學生也消化不了;二是系統(tǒng)性,按照管理信息系統(tǒng)的理論來設計,麻雀雖小,但五臟具全;三是實用性,整個實驗過程基本上是一個微型系統(tǒng)的實際開發(fā)過程,認真操作并理解了這個過程,對理解課本上“自頂向下分析,自底向上開發(fā)”的概念,從事實際工作會受益匪淺。鑒于這樣一些原因,我們把這個實驗題目定為“簡易學生成績管理系統(tǒng)”二、系統(tǒng)模塊及功能劃分(這便是簡單的系統(tǒng)分析)簡易學

2、生成績管理系統(tǒng) 附加功能統(tǒng)計分析成績輸出成績輸入成績查詢功能模塊按課程打印空成績單圖形形式數(shù)據(jù)形式按班級輸出按課程輸出按課程查詢按班級查詢按學號查詢批式輸入單條式輸入按班級打印空成績單實現(xiàn)模塊三、先修課程本系統(tǒng)利用Visual Foxpro完成,因此,在實驗前應修完Visual Foxpro程序設計課程四、開發(fā)平臺操作系統(tǒng):Windows xp或Windows2003 Server開發(fā)工具:Visual foxpro6.0或Visual foxpro9.0實驗一 建立項目管理器、建立數(shù)據(jù)庫和表、輸入部分數(shù)據(jù)一、實驗目的1.熟悉Visual Foxpro項目管理器的使用2.熟悉數(shù)據(jù)庫的概念和Vi

3、sual Foxpro數(shù)據(jù)表的概念3.掌握數(shù)據(jù)表的建立方法,數(shù)據(jù)直接輸入的方法4.熟練掌握表文件的打開、瀏覽、關閉二、實驗步驟(一)Visual Foxpro基本操作1. Visual Foxpro的啟動開始 程序 Visual foxpro6.0或:雙擊桌面Visual foxpro6.0快捷方式圖標(狐貍頭)2. Visual Foxpro的退出在Visual foxpro的命令窗口中鍵入quit3.工作目錄及表單區(qū)域的的設置在D:盤上建一目錄,命名為“成績管理”進入Visual foxpro,選菜單中的 工具 選項 “文件位置”選項卡,找到“默認目錄”,點擊“修改”按鈕,進入下圖,按圖設

4、置后,單擊“確定”按鈕。單擊“表單”選項卡,將“最大設計區(qū)”選為 1024768。單擊“設置為默認值”按鈕,再單擊“確定”按鈕(二)項目管理器和數(shù)據(jù)庫的建立1.項目管理器是Visual Foxpro開發(fā)應用系統(tǒng)的綜合性平臺,在這里可以建立數(shù)據(jù)庫、表單、菜單、程序、編譯等。從“文件”菜單下選“新建”,在“新建”對話框中,選“項目”單選按鈕,再單擊“新建文件按鈕”,給文件命名為“簡易學生成績管理系統(tǒng)”,并保存在D盤的“成績管理”文件夾下。2.數(shù)據(jù)庫的建立單擊“簡易學生成績管理”項目管理器的“數(shù)據(jù)”卡,單擊“數(shù)據(jù)庫”,然后點擊“新建”按鈕,出現(xiàn)如下畫面單擊“新建數(shù)據(jù)庫”按鈕,將數(shù)據(jù)庫命名為“成績庫”

5、,并保存在D盤的“成績管理”文件夾下,對隨后出現(xiàn)的“數(shù)據(jù)庫設計器”,直接關閉。此時項目管理器應如下圖示。(三)創(chuàng)建數(shù)據(jù)表和輸入部分數(shù)據(jù)數(shù)據(jù)庫由多個相關聯(lián)的數(shù)據(jù)表(.dbf)文件構成,數(shù)據(jù)表是整個系統(tǒng)的基礎。1.創(chuàng)建數(shù)據(jù)表單擊上圖“成績表”左側的“”號,展開后出現(xiàn)“表”、“本地視圖”、“遠程視圖”等,單擊“表”,并單擊右側的“新建”按鈕。按以下表名和結構建立四個“表”,不要使用“向?qū)А惫δ堋K饕脑O置: 學生.dbf按“學號”升序,并設置為主索引,“班級編號”普通索引 學生選課.dbf按“學號”升序普通索引 任課教師.dbf按“課程編號”升序普通索引 班級號名.dbf按“班級編號”升序普通索引

6、表1:學生.dbf字段名 類 型 寬度學號 字符型 12姓名 字符型 6班級編號 字符型 9表2:班級號名.dbf字段名 類 型 寬度班級編號 字符型 9班級簡稱 字符型 16表3:學生選課.dbf字段名 類 型 寬度學號 字符型 12課程編號 字符型 7成績 數(shù)值型 3表4:任課教師.dbf字段名 類 型 寬度課程編號 字符型 7課程名稱 字符型 20任課教師 字符型 6四個表建好并索引正確,展開項目管理器中的表,應可以得到如下所示的圖2.部分表輸入數(shù)據(jù)(1)為“班級號名.dbf”輸入數(shù)據(jù)可以在創(chuàng)建該表時,當提示“是否輸入數(shù)據(jù)?”時回答“Y”,然后輸入也可以按以下步驟輸入:單擊上圖中的“班級

7、號名”表,單擊右側的“瀏覽”按鈕,進入瀏覽窗口將“顯示”菜單下的“追加方式”打上,然后就可輸入數(shù)據(jù)了。班級號名.dbf的數(shù)據(jù)如下:班級編號 班級簡稱B02011013 02國貿(mào)(經(jīng)紀人)B02012012 02工商B02013012 02會計(2)(2)用同樣的方法為“任課教師.dbf”輸入數(shù)據(jù),數(shù)據(jù)如下:課程編號 課程名稱 任課教師0105012 FOXPRO程序設計 高一帆0102031 初級會計 陳志博0103008 管理學 趙成忠三、注意事項1.本實驗指導寫得較粗,這部分操作不熟悉的地方請查閱“FOXPRO”教材2.思考一下:為什么要建四個表,建一個表不行嗎?四個表之間的關系是怎樣的,

8、試著畫圖表示3.實驗做完后,將D盤“成績管理”文件夾下的所有內(nèi)容拷貝到軟盤上,以防數(shù)據(jù)丟失,下次上機時,如硬盤內(nèi)容丟失,再拷回來。實驗二 數(shù)據(jù)輸入表單的建立一、實驗目的1.熟悉表單的概念、常用控件的用途、對象的屬性等概念2.掌握Visual Foxpro數(shù)據(jù)輸入表單的建立過程二、實驗步驟(一)打開項目管理器1.按實驗一的方法啟動Visual Foxpro。2.打開項目管理器“簡易學生成績管理系統(tǒng)”文件 打開 找到文件“簡易學生成績管理系統(tǒng).PJX”,選中并按“確定”鍵或:雙擊桌面Visual foxpro6.0快捷方式圖標(狐貍頭)(二)建立記錄輸入表單1.進入表單設計界面單擊項目管理器上方的

9、“文檔”選項卡單擊“表單”,再單擊右邊的“新建”,進入表單設計界面按“Ctrl+S”鍵保存表單,取名為“學生輸入”單擊窗口右上角最大化按鈕,使“表單設計學生輸入.SCX”窗口最大化移動鼠標,適當放大表單窗口激活“屬性學生輸入.SCX”窗口,找到屬性“CAPTION”,將原來的名字“Form1”改名為“學生基本數(shù)據(jù)輸入”。此時,應得到下圖。2.標題設置單擊“表單控件”中的標簽 按鈕,使其凹下去,此時鼠標變成十字形狀,用鼠標在表單上方拖放,松開鼠標后,出現(xiàn)“Label1”標簽。在“屬性”窗口中找到對象“Label1”的“Caption”屬性,改名為“學生基本情況輸入”。設置字體、字號:在“屬性”窗

10、口中找到對象“Label1”的“FontName”屬性,將其設置為“黑體”,同時將“FontSize”屬性設置為24(號字)。在表單中用鼠標適當拖動“學生基本數(shù)據(jù)輸入”,使其居于上部中間。如圖所示3.有關控件設置單擊屏幕上方的“數(shù)據(jù)環(huán)境”工具按鈕 ,出現(xiàn)如下圖的屏幕單擊學生,再單擊“添加”按鈕,然后關閉“添加表或視圖”窗口。此時,“數(shù)據(jù)環(huán)境設計器學生輸入.SCX”應如下圖:按住“字段”,將其拖放到表單中,如下圖依次選中剛剛拖來的6個控件,將 它們的“FontSize”屬性改為14。并利用鼠標拖放控件周圍的6個小黑方塊調(diào)整控件大小,直到如下圖所示。(上下兩條分隔線可不考慮) 4.命令按鈕設置單擊

11、表單控件中的命令按鈕 ,然后再在表單下部畫一按鈕,在屬性窗口中,將命令按鈕的Caption屬性由原來的“command1”改為“增加”(即增加一條記錄);同時將FontSize屬性改為16(號字),如圖。雙擊“增加”按鈕,進入對象與過程的編輯窗,保證對象是Command1,過程是Click,在屏幕上鍵入如下命令(如下圖)后關閉窗口,回到表單編輯狀態(tài)。 用同樣的方法設計另外6個命令按鈕“刪除”、“前一條”、“后一條”,“首條”、“末條”、“返回”,各命令按鈕的click過程命令如下: 刪除: 首條: delete go top pack thisform.refresh go bottom 末條

12、:thisform.refresh go bottom 前一條: thisform.refresh if recn( )1 skip -1 thisform.refresh 返回: endif dele for 學號 = spac(12) 后一條: pack if !eof( ) use skip thisform.release thisform.refresh endif適當調(diào)整各命令按鈕的位置,使其如下圖示因為對記錄進行了修改,需獨占使用“學生.dbf ”:雙擊表單空白處,保證對象是Form1,過程是Load,輸入命令:use 學生 exclusive關閉窗口,記錄輸入表單設計完成。(三

13、)輸入數(shù)據(jù)1.運行記錄輸入表單輸入數(shù)據(jù)單擊運行工具按鈕 即可輸入記錄,記錄輸入完成后,按“返回”按鈕退出,不可用關閉窗口按鈕 。然后再關閉表單設計器,回到項目管理器狀態(tài)。2.數(shù)據(jù)如下: 學號 姓名 班級編號200201201201 王曉偉 B02012012200201201202 夏巖 B02012012200201201203 陳凱 B02012012200201201204 曹俊 B02012012200201201205 沈鵬 B02012012200201201206 周輝 B02012012200201201209 張波 B02012012200201201210 孫思坤 B020

14、12012200201201211 代志漢 B02012012200201201212 肖超 B02012012200201201213 彭錦錦 B02012012200201201214 諶華僑 B02012012200201201215 夏歡 B02012012200201201216 朱其松 B02012012200201101301 謝謙 B02011013200201101302 江瑋 B02011013200201101303 吳江 B02011013200201101304 肖凱 B02011013200201101317 喻偌晶 B02011013200201101318 門彥

15、 B02011013200201101319 張穎 B02011013200201101320 尹琪 B02011013200201101321 羅珺 B02011013200201101322 肖晗 B02011013200201101324 唐瑋璇 B02011013200201101325 黎志英 B02011013200201101333 梁穎 B02011013200201101334 張靜 B02011013200201101335 陳敬丹 B02011013200201301201 仲長春 B02013012200201301202 陳德意 B020130122002013012

16、03 嚴啟華 B02013012200201301204 連思拓 B02013012200201301205 雷誠 B02013012200201301206 楊耀國 B02013012200201301207 李雄 B02013012200201301208 張煉 B02013012200201301209 鄭雷 B02013012200201301210 劉盼 B02013012200201301211 鐘華 B02013012200201301212 李林杰 B02013012200201301213 張濤 B02013012200201301214 雷克成 B0201301220020

17、1301215 張峰 B02013012200201301240 秦彩霞 B02013012200201301241 劉輝 B02013012三、注意事項及思考1.認真體會每一步的作用2.思考一下:每個命令按鈕的click過程的主要功能是什么?3.實驗做完后,將D盤“成績管理”文件夾下的所有內(nèi)容拷貝到軟盤上,以防數(shù)據(jù)丟失,下次上機時,如硬盤內(nèi)容丟失,再拷回來實驗三 成績輸入另外一種輸入方法一、實驗目的1.熟悉表單的的另一種在輸入數(shù)據(jù)方面的應用2.掌握Visual Foxpro表格(Grd)的編輯方法3.掌握表格與數(shù)據(jù)表對應關系的建立方法二、實驗步驟(一)進入項目管理器1.按實驗一的方法啟動Vi

18、sual Foxpro。2.打開項目管理器“簡易學生成績管理系統(tǒng)”文件 打開 找到文件“簡易學生成績管理系統(tǒng).PJX”,選中并按“確定”鍵(二)建立成績輸入表單1.進入表單設計界面單擊項目管理器上方的“文檔”選項卡單擊“表單”,再單擊右邊的“新建”,進入表單設計界面按“Ctrl+S”鍵保存表單,取名為“成績輸入”單擊窗口右上角最大化按鈕,使“表單設計成績輸入.SCX”窗口最大化移動鼠標,適當放大表單窗口激活“屬性學生輸入.SCX”窗口,找到屬性“CAPTION”,將原來的名字“Form1”改名為“學生成績輸入入”。此時,應得到下圖。2.輸入標題單擊表單控件中的標簽 按鈕,使其凹下去,此時鼠標變

19、成十字形狀,用鼠標在表單上方拖放,松開鼠標后,出現(xiàn)“Label1”標簽。在“屬性”窗口中找到對象“Label1”的“Caption”屬性,改名為“學生成績輸入”。設置字體、字號:在“屬性”窗口中找到對象“Label1”的“FontName”屬性,將其設置為“黑體”,同時將“FontSize”屬性設置為24(號字)。在表單中用鼠標適當拖動“學生基本數(shù)據(jù)輸入”,使其居于上部中間。如圖。3.建立下拉列表框和表格單擊表單控件中的標簽 按鈕,使其凹下去,此時鼠標變成十字形狀,用鼠標在表單上方拖放,松開鼠標后,出現(xiàn)“Label2”標簽。在“屬性”窗口中找到對象“Label2”的“Caption”屬性,改名

20、為“學號”。單擊表單控件中的組合框按鈕 按鈕,使其凹下去,此時鼠標變成十字形狀,用鼠標在表單中上方拖放,松開鼠標后,出現(xiàn)“combo1”組合框。調(diào)整label2和combo1大小及位置,使其如下圖所示。單擊屏幕上方的“數(shù)據(jù)環(huán)境”工具按鈕 ,出現(xiàn)如下圖的屏幕添加“學生”和“學生選課”兩個表,然后關閉“添加表或視圖”窗口。按住“數(shù)據(jù)環(huán)境設計器成績輸入.scx”中的“學生選課”,如下圖:按住此處拖動將其拖到成績輸入表單中,釋放,得到下圖:按住此兩處調(diào)整列寬右鍵單擊網(wǎng)格,在快捷菜單中選“編輯”,再將鼠標在上圖指示處拖動以調(diào)整列寬。在屬性窗口選定“grd學生選課”下面的colum1(如上圖),設置“En

21、abled”屬性為.F.假。4.為組合框Combo1設置屬性及過程單擊“Combo1”對象,在屬性窗口中為此對象設置屬性,設置如下: ControlSource 選“學生.學號” ColumnCount 輸入1 RowSource 選“學生.學號” RowSourceType 選6字段Style 選2下拉列表框雙擊“Combo1”對象,在click過程編輯窗口中輸入下列程序:sele 學生選課 set filter to 學號=bo1.value count to a for i=1 to 12-a append blank replace 學號 with bo1.value endfor g

22、o topthisform.refreshsele 學生5.“返回”按鈕的設置單擊表單控件中的命令按鈕 ,然后再在表單下部畫一按鈕,在屬性窗口中,將命令按鈕的Caption屬性由原來的“command1”改為“返回”,同時將FontSize屬性改為16(號字)雙擊“返回”按鈕,進入對象與過程的編輯窗,鍵入如下命令后關閉窗口,回到表單編輯狀態(tài)。 clos data allthisform.releasesele 學生選課 dele for 課程編號=spac(7) and 成績=0 packclos data6.運行表單輸入成績單擊運行工具按鈕 ,運行表單,界面如上圖 先選學號,再在課程編號欄中

23、輸入課程編號,再輸入成績,所有成績輸入完成后按“返回”按鈕退出。如果某學生成績輸入錯誤,只需重輸該生的成績即可。每個學生三門課程的成績模擬如下: 學號 姓名 課程編號 成績 課程編號 成績 課程編號 成績200201201201 王曉偉 0105012 85 0102031 79 0103008 87200201201202 夏巖 0105012 89 0102031 98 0103008 76200201201203 陳凱 0105012 84 0102031 89 0103008 81200201201204 曹俊 0105012 85 0102031 69 0103008 8320020

24、1201205 沈鵬 0105012 81 0102031 86 0103008 85200201201206 周輝 0105012 79 0102031 77 0103008 86200201201209 張波 0105012 66 0102031 78 0103008 82200201201210 孫思坤 0105012 85 0102031 79 0103008 84200201201211 代志漢 0105012 76 0102031 76 0103008 78200201201212 肖超 0105012 66 0102031 74 0103008 79200201201213 彭錦

25、錦 0105012 48 0102031 73 0103008 75200201201214 諶華僑 0105012 92 0102031 72 0103008 86200201201215 夏歡 0105012 75 0102031 71 0103008 82200201201216 朱其松 0105012 83 0102031 70 0103008 85200201101301 謝謙 0105012 88 0102031 69 0103008 83200201101302 江瑋 0105012 69 0102031 66 0103008 88200201101303 吳江 0105012

26、68 0102031 66 0103008 83200201101304 肖凱 0105012 91 0102031 65 0103008 85200201101317 喻偌晶 0105012 86 0102031 63 0103008 92200201101318 門彥 0105012 75 0102031 79 0103008 90200201101319 張穎 0105012 56 0102031 45 0103008 50200201101320 尹琪 0105012 92 0102031 56 0103008 87200201101321 羅珺 0105012 66 0102031

27、78 0103008 86200201101322 肖晗 0105012 85 0102031 95 0103008 82200201101324 唐瑋璇 0105012 85 0102031 69 0103008 41200201101325 黎志英 0105012 80 0102031 81 0103008 78200201101333 梁穎 0105012 75 0102031 79 0103008 86200201101334 張靜 0105012 74 0102031 75 0103008 87200201101335 陳敬丹 0105012 71 0102031 76 010300

28、8 82200201301201 仲長春 0105012 69 0102031 69 0103008 82200201301202 陳德意 0105012 78 0102031 63 0103008 63200201301203 嚴啟華 0105012 92 0102031 86 0103008 69200201301204 連思拓 0105012 85 0102031 45 0103008 56200201301205 雷誠 0105012 86 0102031 78 0103008 87200201301206 楊耀國 0105012 84 0102031 56 0103008 91200

29、201301207 李雄 0105012 83 0102031 79 0103008 85200201301208 張煉 0105012 71 0102031 71 0103008 82200201301209 鄭雷 0105012 69 0102031 72 0103008 83200201301210 劉盼 0105012 80 0102031 73 0103008 82200201301211 鐘華 0105012 81 0102031 77 0103008 67200201301212 李林杰 0105012 85 0102031 89 0103008 91200201301213 張

30、濤 0105012 86 0102031 79 0103008 69200201301214 雷克成 0105012 79 0102031 69 0103008 82200201301215 張峰 0105012 79 0102031 86 0103008 81200201301240 秦彩霞 0105012 68 0102031 79 0103008 80200201301241 劉輝 0105012 85 0102031 99 0103008 76三、注意事項及思考1.查資料弄清下拉列表框的幾個常用屬性的含義2.思考一下:如果表格有4列或5列,應修改Grd的哪個屬性?3.實驗做完后,將D盤

31、“成績管理”文件夾下的所有內(nèi)容拷貝到軟盤上,以防數(shù)據(jù)丟失,下次上機時,如硬盤內(nèi)容丟失,再拷回來。4.特別強調(diào):因為這只是一個實驗用系統(tǒng),對數(shù)據(jù)輸入的容錯性考慮較少。學生基本情況輸入后,如果再輸入了成績,不要回過去修改學生基本情況。實驗四 查詢成績一、實驗目的1.熟悉表單的在查詢方面的應用2.理解并掌握視圖的概念和建立方法3.掌握按學號查詢個人成績和按班級查詢成績的方法4.掌握多頁框的使用方法二、實驗步驟(一)進入項目管理器1.按實驗一的方法啟動Visual Foxpro。2.打開項目管理器“簡易學生成績管理系統(tǒng)”文件 打開 找到文件“簡易學生成績管理系統(tǒng).PJX”,選中并按“確定”鍵(二)建立

32、成績查詢所需要的視圖單擊項目管理器“數(shù)據(jù)”選項卡,單擊本地視圖 新建 新建視圖添加“學生”,再添加“學生選課”,此時出現(xiàn)一下界面,按“確定”按鈕。再添加“任課教師”,在出現(xiàn)上述界面時同樣按“確定”按鈕。然后關閉“添加表或視圖窗口”。最后添加“班級號名”,按“確定”按鈕,然后關閉“添加表或視圖窗口”。在“視圖設計器”中雙擊“可用字段”中的下列字段 學生.學號學生.姓名學生.班級編號學生選課.課程編號任課教師.課程名稱學生選課.成績?nèi)握n教師.任課教師班級號名.班級簡稱則上述字段移到右邊的可選字段中,如下圖:按Ctrl+W保存視圖,取名為“成績查詢”。(三)建立成績查詢表單1.進入表單設計界面單擊項

33、目管理器上方的“文檔”選項卡單擊“表單”,再單擊右邊的“新建”,進入表單設計界面按“Ctrl+S”鍵保存表單,取名為“成績查詢”單擊窗口右上角最大化按鈕,使“表單設計成績查詢.SCX”窗口最大化移動鼠標,適當放大表單窗口2.建立含兩個頁面的頁框在表單控件中單擊頁框 按鈕,在表單上畫頁框,然后通過拖動頁框邊緣的6個小黑方塊,放大或縮小頁框,使其充滿整個表單,如圖單擊Page1,在屬性窗口中將Page1的Caption屬性改為“按學號查詢”;再單擊Page2,在屬性窗口中將Page2的Caption屬性改為“按班級查詢”。此時表單如圖所示:(四)設計“按學號查詢”頁面1.設置數(shù)據(jù)環(huán)境單擊“按學號查

34、詢”頁框,在屬性窗口看到的對象應是page1,再單擊數(shù)據(jù)環(huán)境 按鈕,在數(shù)據(jù)環(huán)境中添加“學生”、班級號名,再單擊“選定”框中的“視圖”,添加“成績查詢”視圖,關閉“添加表或視圖”窗口,得到下圖:2.設置表格在屬性窗口選擇Page1,再單擊表單控件中的網(wǎng)格按鈕 ,在頁框中畫一表格格,該表格名為Grid1,立即在屬性窗口中將其ColumnCount屬性改為3。接著將Grid1下的Column1的Enabled屬性改為“.F.假”,將Column1 下的Header1的Caption屬性改為”課程名稱“,Column1 “ContrloSource”屬性選“成績查詢.課程名稱”。同樣的方法將Grid1

35、下的Column2的Enabled屬性改為“.F.假”,將Column2下的Header1的Caption屬性改為“成績”,Column2 “ContrloSource”屬性選“成績查詢.成績”。 依此法將Grid1下的Column3的Enabled屬性改為“.F.假”,將Column3下的Header1的Caption屬性改為”任課教師“,Column3 “ContrloSource”屬性選“成績查詢.任課教師”。至此步應得到下圖的界面(分隔線可不考慮)3.建立組合(下拉列表)框單擊表單控件中的組合框按鈕 按鈕,使其凹下去,此時鼠標變成十字形狀,用鼠標在Page1上方拖放,松開鼠標后,出現(xiàn)“

36、combo1”組合框。調(diào)整label2和combo1大小及位置,使其如下圖所示。單擊“Combo1”對象,在屬性窗口中為此對象設置屬性,設置如下: ControlSource 選“學生.學號” ColumnCount 輸入1 RowSource 選“學生.學號” RowSourceType 選6字段Style 選2下拉列表框雙擊“Combo1”對象,在Click過程編輯窗口中輸入下列程序:a=this.valuesele 成績查詢 set filter to 學號=a thisform.refresh在Combo1左邊制作一個標簽(參見前面的實驗),Caption屬性標為“學號”,如圖:4.設

37、置文本框顯示姓名在右邊制作一個標簽,Caption屬性設為“姓名”。單擊表單控件中的文本框按鈕 ,在課程名稱旁邊畫一文本框,系統(tǒng)自動命名為Text1 ,設置Text1的屬性如下: ControlSource 選學生.姓名 Enabled .F.假,如圖5.“返回”按鈕的設置單擊表單form1,單擊表單控件中的命令按鈕 ,然后再在表單下部畫一按鈕,在屬性窗口中,將命令按鈕的Caption屬性由原來的“command1”改為“返回”,同時將FontSize屬性改為16(號字)雙擊“返回”按鈕,進入對象與過程的編輯窗,鍵入如下兩條命令后關閉窗口,回到表單編輯狀態(tài)。thisform.release6.

38、關閉表單標題欄在屬性窗口中找到對象Form1,設置TitleBar屬性為“0關閉”。7.運行表單查詢成績單擊運行工具按鈕 ,運行表單,界面如下圖 在學號右邊的下拉框中選擇一個學號,則右邊會出現(xiàn)姓名,下面會出現(xiàn)該生的各門課程的成績。按“返回”按鈕可退出。(五)設計“按班級查詢”頁面(原指導書缺少主鍵,無法按班級查詢)1.建立組合(下拉列表)框選中Page2(可直接在屬性窗口中選)單擊表單控件中的組合框按鈕 按鈕,在上部畫一“combo1”組合框“combo1”,再在左邊畫一標簽,Caption屬性設為“班級編號”,F(xiàn)ontSize設為14。調(diào)整label1和combo1大小及位置.單擊“Comb

39、o1”對象,在屬性窗口中為此對象設置屬性,設置如下: ControlSource 選“班級號名.班級編號”Enabled .T.真, ColumnCount 輸入1 RowSource 選“班級號名.班級編號” RowSourceType 選6字段Style 選2下拉列表框單擊表單控件中的組合框按鈕 按鈕,在上部畫一“combo2”組合框“combo2”,再在左邊畫一標簽,Caption屬性設為“班級簡稱”,F(xiàn)ontSize設為14。調(diào)整label2和combo2大小及位置,使其如下圖所示。單擊“Combo1”對象,在屬性窗口中為此對象設置屬性,設置如下: ControlSource 選“班級

40、號名.班級簡稱”Enabled .F.假, ColumnCount 輸入1 RowSource 選“班級號名.班級簡稱” RowSourceType 選6字段Style 選2下拉列表框2.設置表格在屬性窗口選擇Page2,再單擊表單控件中的表格按鈕 ,在頁框中畫一表格,該表格名為Grid1,立即在屬性窗口中將其ColumnCount屬性改為4。接著將Grid1下的Column1的Enabled屬性改為“.F.假”,將Column1 下的Header1的Caption屬性改為“姓名”,Column1 “ContrloSource”屬性選“成績查詢.姓名”。同樣的方法將Grid1下的Column2

41、的Enabled屬性改為“.F.假”,將Column2下的Header1的Caption屬性改為“課程名稱”,Column2 “ContrloSource”屬性選“成績查詢.課程名稱”。 依此法將Grid1下的Column3的Enabled屬性改為“.F.假”,將Column3下的Header1的Caption屬性改為”成績“,Column3 “ContrloSource”屬性選“成績查詢.成績”。Column4的Enabled屬性改為“.F.假”,將Column4下的Header1的Caption屬性改為“任課教師”,Column4 “ContrloSource”屬性選“成績查詢.任課教師”

42、。至此步應得到下圖的界面(分隔線可不考慮)3.運行(參考前述實驗,此處不再贅述)三、注意事項及思考1.數(shù)據(jù)環(huán)境的作用是什么?2.頁框的作用什么?3.實驗做完后,將D盤“成績管理”文件夾下的所有內(nèi)容拷貝到軟盤上,以防數(shù)據(jù)丟失,下次上機時,如硬盤內(nèi)容丟失,再拷回來。4.這個功能不完善,僅限于學習用。實驗五 按班級打印成績表一、實驗目的1.熟悉打印所需中間表的使用2.掌握報表設計器的使用方法 3.理解由多表產(chǎn)生一個臨時表的方法4.掌握從表單中調(diào)用報表的方法二、實驗步驟(一)設計表單(此步的內(nèi)容前面實驗中已重復多次,此處不再西述)1.建立一表單,取名為“按班打印成績”。2.設置數(shù)據(jù)環(huán)境在數(shù)據(jù)環(huán)境中添加

43、“班級號名”3.設置表單標題和下拉列表框在表單上部畫一標簽,改Caption屬性為“按班級打印成績表”(作為標題)再建一下拉列表框,名字為Combo1,主要屬性為ControlSource 選“班級號名.班級簡稱” ColumnCount 輸入1 RowSource 選“班級號名.班級簡稱” RowSourceType 選6字段Style 選2下拉列表框在下拉列表框的左邊畫一標簽,Caption屬性為“班級簡稱”在Combo1下面建一下拉列表框Combo2,主要屬性為:ControlSource 選“班級號名.班級編號” ColumnCount 輸入1 RowSource 選“班級號名.班級編

44、號” RowSourceType 選6字段Style 選2下拉列表框 Enabled 選 .F.假在Combo2左邊畫一標簽,Caption屬性為“班級編號”,此時如圖雙擊Combo1,為Click過程寫語句:Thisform.refresh4.設置命令按鈕在表單下部畫一按鈕,Caption屬性為“生成表”,F(xiàn)ontSize為16 依此再畫三個按鈕,Caption屬性分別為“預覽”、“打印”,“返回”,F(xiàn)ontSize屬性均為16,如圖:5.為各命令按鈕編寫Click過程雙擊“生成表”按鈕,在過程窗口輸入如下程序: *這段代碼產(chǎn)生一個臨時表,表名為dylsb.dbf ,只考慮四門課程,多門課程

45、只是變量的增多而已public kc1,kc2,kc3,kc4 &四個變量分別存放課程名public bjbh,bjjc &l兩個變量分別存放班級編號和班級簡稱set safe offclos datastore space(20) to kc1,kc2,kc3,kc4 &賦初值bjjc=bo1.valuebjbh=bo2.valueif !file(dylsb.dbf)create table dylsb(姓名 c(6),班級編號 c(9),kc1 n(3), kc2 n(3),kc3 n(3),kc4 n(3)else sele F use dylsbendifsele dylsb zap

46、 appe from 學生 dele for 班級編號#班級號名.班級編號 pack sele I use 學生sele G use 學生選課 sele H use 任課教師i=1scan *內(nèi)存變量kci(i=1,2,3,4)中存放第i門課程的名稱 m=kc+trim(str(i,1) &m=課程名稱 *第i門課程的成績寫入dylsb.dbf sele dylsb go top scan sele 學生 loca for 姓名=dylsb.姓名 sele 學生選課 loca for 學號=學生.學號 and 課程編號=任課教師.課程編號 sele dylsb repl &m with 學生選

47、課.成績 endscan i=i+1 sele Hendscan雙擊“預覽”按鈕,在過程窗口中輸入:report form 班級成績表 preview雙擊“打印”按鈕,在過程窗口中輸入:report form 班級成績表 to print雙擊“返回”按鈕,在過程窗口中輸入:thisform.release(二)創(chuàng)建報表定義文件1.使用向?qū)?chuàng)建報表定義文件項目管理器 報表 報表向?qū)?報表向?qū)?,進入下圖時,在“數(shù)據(jù)庫和表”欄選dylsb,可用字段除“班級編號”外,全部選中。按“下一步”按鈕,在接下來的界面中再按“下一步”按鈕,在“報表樣式”中選“帳務式”,單擊幾次“下一步”按鈕,在進入步驟6時,在

48、報表標題中輸入“班級成績表”,然后單擊完成。保存的名字也為“班級成績表”。在項目管理器中單擊“班級成績表”,再單擊右側的“修改”按鈕,進入下圖:2.修改報表定義文件“班級成績表”點住標題條上邊緣,向下拖動,適當擴大標題區(qū)。單擊最上面的一條粗黑線,再單擊“剪切”按鈕,刪除此黑粗線。單擊標題區(qū) “班級成績表”,然后選“格式”菜單中的“字體”,選28號字,并將其拖到中間位置。單擊報表控件中的標簽按鈕,再在標題區(qū)左下部單擊一下,輸入“班級編號”,字號設為“小四”。單擊報表控件中的域控件 按鈕,在“班級編號”標簽右側畫一框,當出現(xiàn)下圖時,單擊表達式右側的 按鈕,出現(xiàn)表達式輸入框,如下圖:在變量區(qū)雙擊bj

49、bh,澤在“報表字段的表達式”框中出現(xiàn)bjbh,如果變量區(qū)沒有bjbh,則直接在“報表字段的表達式”框中輸入bjbh。按“確定”按鈕后,得到下圖:根據(jù)上述步驟再在“班級編號”右側制作一標簽“班級簡稱”,同時制作一域控件與bjjc聯(lián)系。如下圖:單擊頁標頭區(qū)的kc1,然后單擊“剪切”按鈕刪除,同樣的方法刪除kc2、kc3、kc4.單擊報表控件中的域控件 按鈕,在kc1處畫一框,框要比較高,在接下來出現(xiàn)表達式輸入框中輸入m.kc1.同法在kc2、kc3、kc4處分別畫域控件,表達式框中分別輸入m.kc2、m.kc3、m.kc4。如圖:刪除頁標頭里的兩條粗線,在上面那條粗線處畫一條細線代替。再在頁標頭

50、畫幾條豎線隔開各個部分,同時調(diào)整細節(jié)部分的分隔線,使其與頁標頭的分隔線對齊,如圖:單擊工具欄的預覽按鈕 ,可看到下述結果:3.去掉0成績(0分表示未輸入成績或未選該門課程)雙擊細節(jié)里的kc1,在報表表達式對話框中,單擊格式后面的 按鈕,再選 ,單擊“確定”按鈕即可。用同樣的方法對細節(jié)部分kc2,kc3,kc4作定義。定義完后,再預覽便不再出現(xiàn)0成績了。按Ctrl+W保存關閉報表設計器。(三)調(diào)試報表進入“按班打印成績”表單,運行該表單,選一班級,再點“生成表”按鈕,再點“預覽”按鈕,即可看到打印的效果。(沒有打印機時,不要運行打印功能)。三、注意事項及思考1.認真閱讀“生成表”程序,它涉及了哪

51、幾個表,內(nèi)存變量kc1,kc2,kc3,kc4的作用各是什么?2.報表設計器中每個部分在最終報表中的表現(xiàn)是什么?3.dylsb.dbf文件的作用是什么,不要這一文件能不能設計報表。4.實驗做完后,將D盤“成績管理”文件夾下的所有內(nèi)容拷貝到軟盤上,以防數(shù)據(jù)丟失,下次上機時,如硬盤內(nèi)容丟失,再拷回來注:可能在預覽報表時預覽不成功,但是可以在程序運行時正常預覽,所以出現(xiàn)此種情況可以繼續(xù)往下做,這一步完成后試運行一下,如果預覽還不成功,再返回調(diào)試報表。(絕大部分是預覽失敗,運行預覽時正常)實驗六 統(tǒng)計分析一、實驗目的1.熟悉成績管理中統(tǒng)計分析的簡單要求2.掌握分析結果的數(shù)據(jù)表現(xiàn)形式 3.掌握分析結果的

52、圖形表現(xiàn)形式4.掌握表單的深入應用二、實驗步驟(一)設計表單(此步的內(nèi)容前面實驗中已重復多次,此處不再西述)1.建立一表單,取文件名為“成績分析”。Caption屬性也改為“成績分析”2.建立頁框在表單上畫一頁框,兩個頁面分別為Page1,Page2。Page1和page2的caption屬性分別改為“數(shù)據(jù)形式”、“圖形形式”。3.建立數(shù)據(jù)環(huán)境將“班級號名”、“任課教師”和“學生選課”三個表添加到數(shù)據(jù)環(huán)境中。4.設置下拉列表框在表單form1上畫一組合框:ControlSource 選“班級號名.班級簡稱” ColumnCount 輸入1 RowSource 選“班級號名.班級簡稱” RowS

53、ourceType 選6字段Style 選2下拉列表框在Combo1左邊畫一標簽Label1,caption屬性為“班級簡稱”,F(xiàn)ontSize設為14。按上述兩步設置另外一個標簽Label2和下拉列表框Combo2,Label2 死的caption屬性為“課程名稱”,F(xiàn)ontSize設為14。Combo2屬性如下:ControlSource 選“任課教師.課程名稱” ColumnCount 輸入1 RowSource 選“任課教師.課程名稱” RowSourceType 選6字段Style 選2下拉列表框,此時可得下圖:5.設置顯示數(shù)據(jù)的文本框因前面反復做過,此處只給出結果。在Page1上設

54、置成如下效果:6.為Combo1和Combo2設計Click過程(這個方法可以改進,此處不講) combo1的Click過程:public bjbhbjjc=bo1.valuesele 班級號名 bjbh=班級編號 combo2的Click過程:kcmc=bo2.valuesele 任課教師 kcbh=課程編號 sele 學生選課 set filter to substr(bjbh,2,8)=substr(學號,3,8) and kcbh=課程編號*分段計算成績 count to scount to s_40 for 成績=40 and 成績=50 and 成績=60 and 成績=70 an

55、d 成績=80 and 成績=90 and 成績=100*統(tǒng)計各段百分比if s#0 bs_40=s_40/s*100 bs40_50=s40_50/s*100 bs50_60=s50_60/s*100 bs60_70=s60_70/s*100 bs70_80=s70_80/s*100 bs80_90=s80_90/s*100 bs90_100=s90_100/s*100else store 0 to bs40_50, bs50_60,bs60_70,bs70_80,bs80_90, bs90_100endif*顯示分段數(shù)量和百分比thisform.pageframe1.page1.text1

56、.value=s_40thisform.pageframe1.page1.text3.value=s40_50thisform.pageframe1.page1.text5.value=s50_60thisform.pageframe1.page1.text7.value=s60_70thisform.pageframe1.page1.text9.value=s70_80thisform.pageframe1.page1.text11.value=s80_90thisform.pageframe1.page1.text13.value=s90_100thisform.pageframe1.pa

57、ge1.text2.value=round(bs_40,2)thisform.pageframe1.page1.text4.value=round(bs40_50,2)thisform.pageframe1.page1.text6.value=round(bs50_60,2)thisform.pageframe1.page1.text8.value=round(bs60_70,2)thisform.pageframe1.page1.text10.value=round(bs70_80,2)thisform.pageframe1.page1.text12.value=round(bs80_90,

58、2)thisform.pageframe1.page1.text14.value=round(bs90_100,2)(二)圖形表示統(tǒng)計結果1.設計容器進入Page2,單擊容器控件按鈕 ,在Pag2上畫一容器,如圖:單擊容器,按右鍵選“編輯”,再在表單控件中單擊形狀按鈕 ,在容器中畫一長條形狀Shape1,設置backcolor屬性為0,0,64,同樣的方法再設置5個形狀,寬度一樣,背景顏色不同,如圖:2.設計有關標簽設置標簽:如上圖所示的小數(shù)字。Label2、Label4、Label6、Label8分別為標簽的name屬性。初始Caption屬性與name屬性相同。標簽設在Page2上。把下面

59、一段程序加在Combo2的Click過程之后(接在上面程序后)*145為shapeX的高度,你的可能不一樣,可以調(diào)整,想想看,怎么調(diào)thisform.pageframe1.page2.container1.shape1.height=int(145/100*bs40_50)thisform.pageframe1.page2.container1.shape1.top=145-int(145/100*bs40_50)thisform.pageframe1.page2.container1.shape2.height=int(145/100*bs50_60)thisform.pageframe1.

60、page2.container1.shape2.top=145-int(145/100*bs50_60)thisform.pageframe1.page2.container1.shape3.height=int(145/100*bs60_70)thisform.pageframe1.page2.container1.shape3.top=145-int(145/100*bs60_70)thisform.pageframe1.page2.container1.shape4.height=int(145/100*bs70_80)thisform.pageframe1.page2.containe

溫馨提示

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

評論

0/150

提交評論