版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、<p> 高校輔導(dǎo)員管理系統(tǒng)的設(shè)計與實現(xiàn)</p><p> [摘 要] 高校輔導(dǎo)員管理系統(tǒng)是典型的信息管理系統(tǒng)(MIS),其開發(fā)主要包括后臺數(shù)據(jù)庫的建立和維護以及前端應(yīng)用程序的開發(fā)兩個方面。對于前者要求建立起數(shù)據(jù)一致性和完整性強、數(shù)據(jù)安全性好的庫。而對于后者則要求應(yīng)用程序功能完備,易使用等特點。</p><p> 經(jīng)過分析,我們使用 MICROSOFT公司的VFP 8.0
2、開發(fā)工具,利用其提供的各種面向?qū)ο蟮拈_發(fā)工具,尤其是數(shù)據(jù)窗口這一能方便而簡潔操縱數(shù)據(jù)庫的智能化對象,首先在短時間內(nèi)建立系統(tǒng)應(yīng)用原型,然后,對初始原型系統(tǒng)進行需求迭代,不斷修正和改進,直到形成用戶滿意的可行系統(tǒng)。</p><p> [關(guān)鍵詞] 輔導(dǎo)員 數(shù)據(jù)庫 SQL</p><p><b> 前言</b></p><p> 高校輔導(dǎo)員管
3、理系統(tǒng)是一個教育單位不可缺少的部分,它的內(nèi)容對于學(xué)校的決策者和管理者來說都至關(guān)重要,所以高校輔導(dǎo)員管理系統(tǒng)應(yīng)該能夠為用戶提供充足的信息和快捷的查詢手段。但一直以來人們使用傳統(tǒng)人工的方式管理文件檔案,這種管理方式存在著許多缺點,如:效率低、保密性差,另外時間一長,將產(chǎn)生大量的文件和數(shù)據(jù),這對于查找、更新和維護都帶來了不少的困難。</p><p> 隨著科學(xué)技術(shù)的不斷提高,計算機科學(xué)日漸成熟,其強大的功能已為人們深
4、刻認識,它已進入人類社會的各個領(lǐng)域并發(fā)揮著越來越重要的作用。</p><p> 作為計算機應(yīng)用的一部分,使用計算機對學(xué)生信息進行管理,具有著手工管理所無法比擬的優(yōu)點。例如:檢索迅速、查找方便、可靠性高、存儲量大、保密性好、壽命長、成本低等。這些優(yōu)點能夠極大地提高學(xué)生檔案管理的效率,也是企業(yè)的科學(xué)化、正規(guī)化管理,與世界接軌的重要條件。</p><p> 因此,開發(fā)這樣一套管理軟件成為很有
5、必要的事情,在下面的各章中我們將以開發(fā)一套學(xué)生檔案管理系統(tǒng)為例,談?wù)勂溟_發(fā)過程和所涉及到的問題及解決方法。</p><p><b> 1 系統(tǒng)簡介</b></p><p> 本系統(tǒng)為高校輔導(dǎo)員管理系統(tǒng),是一個具有綜合性學(xué)校學(xué)生管理系統(tǒng),它集成了學(xué)生檔案管理,考勤管理等多種功能,其開發(fā)主要包括數(shù)據(jù)庫的建立和維護及查詢,打印功能的實現(xiàn),因而具有較強的實用性和先進性。&
6、lt;/p><p> 1.1 系統(tǒng)需求及分析</p><p> 1.1.1 系統(tǒng)需求</p><p> 目前,許多高校已開始啟動教學(xué)管理信息化工作,有的學(xué)校已經(jīng)發(fā)展得不錯,有的學(xué)校還剛起步。為了推進教學(xué)管理的信息化,減少教職工的工作量,縮短學(xué)校、教師、學(xué)生之間的溝通環(huán)節(jié),需要借助計算機,讓其學(xué)生信息進行自動高效的管理。學(xué)生信息管理系統(tǒng)體現(xiàn)了先進的教學(xué)管理指導(dǎo)思想
7、,能夠滿足學(xué)校的要求。</p><p> 通過調(diào)查分析,要求該系統(tǒng)具有以下功能:</p><p> (1) 由于操作人員的計算機操作水平相對較差,要求有良好的人機界面。</p><p> (2) 由于該系統(tǒng)的使用要有數(shù)據(jù)安全性,要求有較好的用戶權(quán)限管理。</p><p> (3) 原始數(shù)據(jù)的處理,簡單方便。</p>&l
8、t;p> (4) 方便的數(shù)據(jù)查詢,支持多條件查詢。</p><p> (5) 方便數(shù)據(jù)輸出報表的打印。</p><p> (6) 數(shù)據(jù)主要計算自動完成,盡量減少人工干預(yù)。</p><p> 1.1.2 可行性分析</p><p> 目的:可行性研究的目的是用最小的代價在盡可能的時間內(nèi)確定問題是否能解決。</p>
9、<p> 經(jīng)濟上的可行性:由于現(xiàn)在我校已經(jīng)為各辦公室配備了微機,而且用于管理的微機都是P4級的機器,在存儲量,速度方面都能滿足數(shù)據(jù)庫運行的要求。</p><p> 技術(shù)上的可行性:由于本系統(tǒng)涉及的計算過程不是很復(fù)雜,在技術(shù)難度方面,由于有指導(dǎo)老師的指導(dǎo)和相關(guān)參考文獻,特別是網(wǎng)上資料豐富,參考一些功能模塊程序的設(shè)計,因此本系統(tǒng)目標的實現(xiàn)是完全可以的。</p><p> 1.1
10、.3開發(fā)和運行</p><p> 本系統(tǒng)的設(shè)計是在windows xp中文版環(huán)境下,使用Visual Foxpro8.0開發(fā)成功。它可運行于 windows2000及xp相關(guān)平臺的數(shù)據(jù)庫開發(fā)系統(tǒng)。Visual Foxpro8.0它不僅可以簡化數(shù)據(jù)庫管理,而且應(yīng)用程序的開發(fā)流程更為合理;它使組織數(shù)據(jù),定義數(shù)據(jù)庫規(guī)則和建立應(yīng)用程序等工作變行簡單易行;利用可視化的設(shè)計工具和向?qū)?,用戶可以快速地?chuàng)建表單,查詢和打印報表
11、。</p><p><b> 1.2 背景介紹</b></p><p> 當今社會,隨著科技的不斷發(fā)展,計算機已在人們的日常生活和工作領(lǐng)域中日益普及,并且人們對于計算機的應(yīng)用不再是簡單的文字處理和最初的科學(xué)計算。計算機早已涉及到我們生活的各個方面,更多的是利用計算機來進行管理從而減輕我們的工作。隨著教育的不斷普及,接受高等教育的人越來越多,對學(xué)生信息的管理也越來越
12、復(fù)雜。學(xué)生的種類越來越多,人工管理這些復(fù)雜的資料變得幾乎不再可能。因此,迫切需要對學(xué)生信息進行自動化的管理。</p><p> 1.3 系統(tǒng)功能簡介</p><p> 本系統(tǒng)適用于大中專院校,其功能主要分為五大類:</p><p><b> 信息錄入功能</b></p><p> 本系統(tǒng)應(yīng)實現(xiàn)是對學(xué)生基本信息、家
13、庭成員、考勤情況等錄入。</p><p><b> 2.瀏覽功能</b></p><p> 該功能包括瀏覽學(xué)生基本信息、家庭成員關(guān)系。</p><p><b> 3.查詢功能</b></p><p> 該功能包括按學(xué)號、姓名進行查詢學(xué)生基本信息</p><p><
14、;b> 4.修改功能</b></p><p> 該功能包括都學(xué)生基本信息修改,相片修改。</p><p><b> 5.報表打印功能</b></p><p> 該功能包括各種信息統(tǒng)計表的打印</p><p><b> 6.驗證功能</b></p><p
15、> 該系統(tǒng)還有驗證功能,為了保證系統(tǒng)的安全,在登陸系統(tǒng)前必須輸入有效的密碼。</p><p> 1.4 系統(tǒng)開發(fā)目標</p><p> 節(jié)約資源,提高學(xué)籍信息的精確度;方便快速操作,精簡人員,節(jié)約開支。</p><p><b> 2系統(tǒng)設(shè)計</b></p><p> 2.1系統(tǒng)模塊結(jié)構(gòu)設(shè)計</p&g
16、t;<p> 系統(tǒng)的運行從歡迎表單開始,進入登陸表單,在這里要求擁護輸入自己的登陸密碼,并設(shè)置三次密碼核對功能,如果三次輸入密碼不正確,則要求退出系統(tǒng);否則出現(xiàn)系統(tǒng)菜單,接受用戶的操作。操作完畢后用戶可以從系統(tǒng)菜單中退出系統(tǒng)。系統(tǒng)運行步驟如1-1圖所示。</p><p><b> 1-1圖</b></p><p> 在本系統(tǒng)中,系統(tǒng)的功能主要分成六
17、個功能模塊,它們分別是:基礎(chǔ)維護、用戶維護、考勤管理、學(xué)生家庭、關(guān)于系統(tǒng)和退出(其中每個功能模塊有可細化為幾項子功能)下面分別介紹各功能模塊的作用。</p><p><b> ●基礎(chǔ)維護</b></p><p> 利用本模塊可實現(xiàn)學(xué)生基本信息的瀏覽、查詢和修改。</p><p><b> ●用戶維護</b></
18、p><p> 利用本模塊可實現(xiàn)用戶名及密碼的修改和增加新用戶。</p><p><b> ●考勤管理</b></p><p> 利用本模塊可進行考勤登記和按年及月進行考勤統(tǒng)計,班級人員統(tǒng)計。</p><p><b> ●學(xué)生家庭</b></p><p> 利用能夠本模塊
19、可進行學(xué)生家庭成員與學(xué)生的關(guān)系及各方面情況進行登記。</p><p><b> ●關(guān)于系統(tǒng)</b></p><p> 利用本模塊可進行對系統(tǒng)版權(quán)信息進行查詢。</p><p><b> ●退出</b></p><p> 該模塊的退出功能主要用來實現(xiàn)退出本系統(tǒng)。</p><
20、p> 高校輔導(dǎo)員管理系統(tǒng)功能結(jié)構(gòu)框架如圖 1-2圖所示。</p><p><b> 圖1-2</b></p><p> 2.2 項目管理器的建立</p><p> 啟動Visual FoxPro8.0,進入程序主界面新建一個以“高校輔導(dǎo)員管理系統(tǒng).pjx”命名的項目管理器,如圖1-3和如圖1-4所示:</p><
21、;p> 3.3 數(shù)據(jù)庫和表的建立</p><p> 建好項目管理器,就可以建立學(xué)生信息管理系統(tǒng)所需要的數(shù)據(jù)庫和數(shù)據(jù)表。</p><p> 3.3.1 建立數(shù)據(jù)庫</p><p> 建立一個名為“數(shù)據(jù)庫.dbc”的數(shù)據(jù)庫,如圖1-5 所示。</p><p> 圖1-5 【新建數(shù)據(jù)庫】對話框</p><p>
22、; 剛創(chuàng)建的數(shù)據(jù)庫只是一個空的數(shù)據(jù)庫,還沒有數(shù)據(jù)。只有創(chuàng)建了數(shù)據(jù)表和其他數(shù)據(jù)對象后,才能輸入數(shù)據(jù)或者進行其他數(shù)據(jù)庫的操作。</p><p><b> 3.4 數(shù)據(jù)庫設(shè)計</b></p><p> 主要設(shè)計下面幾個數(shù)據(jù)表1-1、數(shù)據(jù)表1-2、數(shù)據(jù)表1-3、數(shù)據(jù)表1-4、數(shù)據(jù)表1-5、數(shù)據(jù)表1-6:</p><p><b> 表1
23、-6</b></p><p><b> 4 系統(tǒng)各功能模塊</b></p><p><b> 4.1 表單設(shè)計</b></p><p> 4.1.1 歡迎.scx 表單設(shè)計</p><p> 該表單的基本功能是操作員進入系統(tǒng)。</p><p> (1)
24、創(chuàng)建一個名為“歡迎”的表單文件。</p><p> (2) 在表單中添加控件。</p><p> 圖1-6 系統(tǒng)歡迎窗口</p><p> 此表單能產(chǎn)生文字閃爍效果 </p><p> (4) 按照下列表1-6,列出具體條目,設(shè)置表單及控件的必要屬性。</p><p> (5) 編寫相關(guān)事件代碼。</p
25、><p> ■表單timer1的timer的事件代碼:</p><p> IF thisform.label1.Left=thisform.Width &設(shè)置長度</p><p> thisform.label1.Left =0</p><p><b> ELSE</b></p><p
26、> thisform.label1.Left=thisform.label1.Left+1</p><p><b> ENDIF</b></p><p> i=INT(RAND()*255)</p><p> j=INT(RAND()*255)</p><p> k=INT(RAND()*255)
27、 &改變顏色</p><p> thisform.label3.ForeColor=rgb(i,j,k)</p><p> ■按鈕“進入”的click事件代碼:</p><p> DO form 登陸</p><p> thisform.Release </p><p&
28、gt; 4.1.2登陸.scx表單設(shè)計</p><p> 該表單的基本功能是操作員進入系統(tǒng)。</p><p> (1) 創(chuàng)建一個名為“登陸”的表單文件。</p><p> (2) 在表單中添加控件。</p><p><b> 圖1-7</b></p><p> 按照下列表1-7,列出具
29、體條目,設(shè)置表單及控件的必要屬性。</p><p><b> 表1-7</b></p><p> ■按鈕“確定”的click事件代碼:</p><p> USE 姓名及密碼 &&打開表</p><p> LOCATE for alltrim(姓名)==a
30、lltrim(thisform.combo1.value) &&根據(jù)下拉列表的選擇在數(shù)據(jù)表中進行尋找</p><p> if found() &&如果數(shù)據(jù)表的值不為空</p><p> if alltrim(thisform.text1.value)==alltrim(姓名及密碼.密碼) &&
31、;根據(jù)所獲得的數(shù)據(jù)在數(shù)據(jù)表中查找所對應(yīng)的值</p><p> thisform.Hide &&隱藏數(shù)據(jù)表</p><p> thisform.release</p><p><b> &&打開菜單</b></p><p> Do 主菜單.MPR</p>
32、<p> Else &&假設(shè)能找到對應(yīng)的值則進入系統(tǒng),否則出現(xiàn)出錯對話框</p><p> messagebox("口令不正確,重新輸入!",48,"登陸信息") </p><p> thisform.text1.setfocus </p><p
33、> thisform.text1.value="" &&清空文本框的值</p><p> thisform.spinner1.value=thisform.spinner1.value+1 &&計算錄入次數(shù)多于三次錄入錯誤,程序報告退出</p><p> if thisform.spinner1.value>
34、;=3</p><p> messagebox("不是合法用戶!")</p><p> thisform.release</p><p> CLEAR EVENTS </p><p><b> QUIT</b></p><p><b> endif&l
35、t;/b></p><p> thisform.refresh</p><p><b> ENDIF</b></p><p><b> ENDIF</b></p><p> ■按鈕“退出”的click事件代碼:</p><p> thisform.Releas
36、e</p><p> CLEAR EVENTS</p><p> ■表單timer1的timer的事件代碼: &&設(shè)置移動字幕</p><p> thisform.label1.width=thisform.label1.width+2</p><p> if thisform.label1.
37、width>=250</p><p> thisform.label1.width=0</p><p> thisform.label1.width=thisform.label1.width+2</p><p><b> endif</b></p><p> 4.1.3 學(xué)生信息查詢.scx表單設(shè)計<
38、;/p><p> 該表單的基本功能是對學(xué)生的信息進行查詢,可以按學(xué)號、姓名,進行分類查詢。</p><p> (1) 創(chuàng)建一個名為“學(xué)生信息查詢”的表單文件。</p><p> (2) 設(shè)置表單的數(shù)據(jù)環(huán)境。將“學(xué)生信息基本表.dbf”、“ 姓名及密碼.dbf”2個表添加在數(shù)據(jù)中。</p><p> (3) 在表單中添加控件。布局如圖1-8
39、:</p><p> 說明:表格控件是將數(shù)據(jù)環(huán)境中的“學(xué)生信息基本表”直接拖到表單上自動形成的。</p><p> 圖1-8 學(xué)生信息查詢</p><p> (4) 按照下列表1-8列出具體條目,設(shè)置表單及控件的必要屬性。</p><p><b> 表1-8</b></p><p> (
40、5) 編寫相關(guān)事件代碼。</p><p> ■表單Form1的Init的事件代碼:</p><p> THISFORM.Label2.Visible=.F. &&輸入編號、姓名提示標簽及文本框</p><p> THISFORM.Text1.Visible=.F.</p><p> THISFORM
41、.Text3.Visible=.F.</p><p> THISFORM.Command4.Visible=.F.</p><p> THISFORM.grdStu_info.Readonly=.T. &&表格數(shù)據(jù)不可修改</p><p> ■按鈕組Optiongroup1的click的事件代碼:</p><p> I
42、F this.Value=1 &&判斷按鈕組的值</p><p> thisform.Label1.Caption="請輸入學(xué)號"</p><p><b> else </b></p><p> thisform.Label1.Caption="請輸入姓名
43、"</p><p><b> endif</b></p><p> ■按鈕“查詢”中Click的事件代碼:</p><p> *按輸入的條件在表格中顯示查詢的記錄</p><p> SELECT 學(xué)生信息基本表</p><p> IF thisform.optiongroup
44、1.Value=1</p><p> LOCATE for 學(xué)號=alltrim(thisform.text1.Value)</p><p><b> ELSE</b></p><p> LOCATE for 姓名=alltrim(thisform.text1.Value)</p><p><b> E
45、NDIF</b></p><p> IF FOUND()</p><p> thisform.command2.Enabled= .T.</p><p><b> ELSE</b></p><p> =MESSAGEBOX("沒有找到相應(yīng)的記錄?。?!",64,"信使服務(wù)&
46、quot;)</p><p><b> endif</b></p><p> thisform.Refresh </p><p> ■按鈕“退出”中Click的事件代碼:</p><p> THISFORM.Release</p><p> ■按鈕“打印”中Click的事件代碼:<
47、/p><p> REPORT FORM 詳細報表.frx preview</p><p> 4.1.4 學(xué)生信息修改2.scx.表單設(shè)計</p><p> 該表單的基本功能是管理員對學(xué)生的數(shù)據(jù)維護,可以對其學(xué)生信息進行刪除、修改、編輯等。</p><p> (1) 創(chuàng)建一個名為“學(xué)生信息修改”的表單文件。</p><p
48、> 設(shè)置表單的數(shù)據(jù)環(huán)境。將“學(xué)生信息基本表.dbf”、“ 姓名及密碼.dbf”2個表添加在數(shù)據(jù)中。</p><p> (3) 在表單中添加控件布局如圖1-8:</p><p> 圖1-8 學(xué)生數(shù)據(jù)維護</p><p> 說明:表格控件是將數(shù)據(jù)環(huán)境中的“學(xué)生信息基本表”直接拖到表單上自動形成的。</p><p> (4) 按照下
49、列表1-9列出具體條目,設(shè)置表單及控件的必要屬性。</p><p><b> 表1-9</b></p><p> 5、編寫相關(guān)事件代碼。</p><p> ■按鈕“修改”的Click的事件代碼:</p><p> IF this.Caption="修改"</p><p>
50、; thisform.SetAll ('readonly',.f.,'combobox') &&修改只讀屬性</p><p> thisform.SetAll ('readonly',.f.,'textbox')</p><p> thisform.SetAll ('readonly
51、39;,.f.,'editbox')</p><p> thisform.SetAll ('enabled',.f.,'commandbotton') &&修改可用屬性</p><p> this.Enabled= .T. &&本表單可用&l
52、t;/p><p> this.Caption="保存"</p><p><b> GO bottom</b></p><p> thisform.Refresh</p><p> thisform.txt學(xué)號.SetFocus</p><p><b> ELSE
53、</b></p><p> thisform.SetAll ('readonly',.t.,'combobox') &&修改只讀屬性</p><p> thisform.SetAll ('readonly',.t.,'textbox')</p><p> th
54、isform.SetAll ('readonly',.t.,'editbox')</p><p> thisform.SetAll ('enabled',.t.,'commandbotton')</p><p> this.Enabled= .T.</p><p> this.Caption=&q
55、uot;修改"</p><p> endif &&當表單中的數(shù)據(jù)可用修改則caption屬性為保存,否則為修改</p><p> ■按鈕“增加”的Click的事件代碼:</p><p> IF this.Caption="添加"</p><p> thisfo
56、rm.SetAll ('readonly',.f.,'combobox')</p><p> thisform.SetAll ('readonly',.f.,'textbox')</p><p> thisform.SetAll ('readonly',.f.,'editbox')</
57、p><p> thisform.SetAll ('enabled',.f.,'commandbotton')</p><p> this.Enabled= .T.</p><p> this.Caption="保存"</p><p> APPEND BLANK
58、 &&產(chǎn)生一個新的空白頁</p><p><b> GO bottom</b></p><p> thisform.Refresh</p><p> thisform.txt學(xué)號.SetFocus</p><p><b> ELSE</b></p
59、><p> thisform.SetAll ('readonly',.t.,'combobox')</p><p> thisform.SetAll ('readonly',.t.,'textbox')</p><p> thisform.SetAll ('readonly',.t.,
60、'editbox')</p><p> thisform.SetAll ('enabled',.t.,'commandbotton')</p><p> this.Enabled= .T.</p><p> this.Caption="添加"</p><p><b
61、> endif</b></p><p> ■按鈕“首記錄”的Click的事件代碼:</p><p> SELECT 學(xué)生基本情況表</p><p> GO top &&首記錄</p><p> this.Enabled= .F.</p>
62、<p> thisform.comm2.Enabled = .F. </p><p> thisform.comm3.Enabled = .t. </p><p> thisform.comm4.Enabled = .t.</p><p> thisform.Refresh </p><p> ■按鈕“前一記錄”的Cl
63、ick的事件代碼:</p><p> SELECT 學(xué)生信息基本表</p><p> SKIP -1 &&向前移動</p><p> IF bof() then </p><p><b> GO top </b></p><p&g
64、t; this.Enabled= .F.</p><p> thisform.comm1.Enabled = .F. </p><p><b> endif</b></p><p> thisform.comm3.Enabled = .t. </p><p> thisform.comm4.Enabled =
65、.t.</p><p> thisform.Refresh </p><p> ■按鈕“下一記錄”的Click的事件代碼:</p><p> SELECT 學(xué)生信息基本表</p><p><b> SKIP 1</b></p><p> IF EOF() then </p>
66、<p><b> GO bottom</b></p><p> this.Enabled= .F.</p><p> thisform.comm4.Enabled = .F. </p><p><b> endif</b></p><p> thisform.comm1.En
67、abled = .t. </p><p> thisform.comm2.Enabled = .t.</p><p> thisform.Refresh </p><p> ■按鈕“尾記錄”的Click的事件代碼:</p><p> SELECT 學(xué)生信息基本表</p><p><b> GO b
68、ottom</b></p><p> this.Enabled= .F.</p><p> thisform.comm3.Enabled = .F. </p><p> thisform.comm2.Enabled = .t. </p><p> thisform.comm1.Enabled = .t.</p>
69、<p> thisform.Refresh </p><p> ■按鈕“退出”的Click的事件代碼:</p><p> thisform.release</p><p> 4.1.5學(xué)生信息瀏覽.scx表單設(shè)計</p><p> 該表單基本功能是管理員對學(xué)生數(shù)據(jù)維護,可對學(xué)生信息進瀏覽。</p>&l
70、t;p> (1) 創(chuàng)建一個名為“學(xué)生信息瀏覽”的表單文件。</p><p> (2) 設(shè)置表單的數(shù)據(jù)環(huán)境。將“學(xué)生信息基本表.dbf”、 “姓名及密碼.dbf”2個表添加在數(shù)據(jù)中。</p><p> (3) 在表單中添加控件。布局如圖1-10:</p><p> 圖1-10 成績查詢</p><p> 4、按照下列表1-7列出
71、具體條目,設(shè)置表單及控件的必要屬性</p><p><b> 表1-9</b></p><p> (5) 編寫相關(guān)事件代碼。</p><p> ■按鈕“首記錄”的Click的事件代碼:</p><p> SELECT 學(xué)生基本情況表</p><p><b> GO top &l
72、t;/b></p><p> this.Enabled= .F.</p><p> thisform.comm2.Enabled = .F. </p><p> thisform.comm3.Enabled = .t. </p><p> thisform.comm4.Enabled = .t.</p><p
73、> thisform.Refresh </p><p> ■按鈕“前一記錄”的Click的事件代碼:</p><p> SELECT 學(xué)生信息基本表</p><p><b> SKIP -1</b></p><p> IF bof() then </p><p><b>
74、; GO top </b></p><p> this.Enabled= .F.</p><p> thisform.comm1.Enabled = .F. </p><p><b> endif</b></p><p> thisform.comm3.Enabled = .t. </p>
75、;<p> thisform.comm4.Enabled = .t.</p><p> thisform.Refresh </p><p> ■按鈕“下一記錄”的Click的事件代碼:</p><p> SELECT 學(xué)生信息基本表</p><p><b> SKIP 1</b></p&g
76、t;<p> IF EOF() then </p><p><b> GO bottom</b></p><p> this.Enabled= .F.</p><p> thisform.comm4.Enabled = .F. </p><p><b> endif</b>&
77、lt;/p><p> thisform.comm1.Enabled = .t. </p><p> thisform.comm2.Enabled = .t.</p><p> thisform.Refresh </p><p> ■按鈕“尾記錄”的Click的事件代碼:</p><p> SELECT 學(xué)生信息
78、基本表</p><p><b> GO bottom</b></p><p> this.Enabled= .F.</p><p> thisform.comm3.Enabled = .F. </p><p> thisform.comm2.Enabled = .t. </p><p>
79、 thisform.comm1.Enabled = .t.</p><p> thisform.Refresh </p><p> ■按鈕“退出”的Click的事件代碼:</p><p> thisform.release</p><p> 4.1.6 考勤登記表.scx表單設(shè)計</p><p> 該表單的
80、基本功能是管理員對學(xué)生的數(shù)據(jù)維護,可以對其學(xué)生考勤信息進行登記等。</p><p> (1) 創(chuàng)建一個名為“考勤登記表”的表單文件。</p><p> (2) 設(shè)置表單的數(shù)據(jù)環(huán)境。將“考勤記錄表.dbf”、“ 學(xué)生信息基本表.dbf”2個表添加在數(shù)據(jù)中。</p><p> (3) 在表單中添加控件。布局如圖1-10:</p><p>
81、 圖1-10 考勤登記表</p><p> (4) 按照下列表1-8列出具體條目,設(shè)置表單及控件的必要屬性。</p><p><b> 表1-8</b></p><p> (5) 編寫相關(guān)事件代碼。</p><p> ■按鈕“登記”的Click的事件代碼:</p><p> &&
82、amp; 判斷所填入的值是否為空</p><p> IF EMPTY(thisform.combo1.Value ) or EMPTY(thisform.text1.value) or EMPTY(thisform.combo2.Value )</p><p> =MESSAGEBOX("項目沒有添完,請補充完整!")</p><p><
83、;b> ELSE </b></p><p> SELECT 考勤記錄表</p><p> APPEND BLANK &&增加一個空白記錄</p><p> REPLACE 學(xué)號 with thisform.combo1.Value,缺勤日期 with thisform.text1.Value ,缺勤類別
84、with thisform.combo2.Value &&修改空白記錄</p><p> thisform.combo1.Value =""</p><p> thisform.combo2.Value =""</p><p> =MESSAGE("該學(xué)生缺勤記錄已被保存!")<
85、;/p><p><b> ENDIF</b></p><p> 4.1.7考勤表.scx表單設(shè)計</p><p> 該表單的基本功能是管理員對學(xué)生的數(shù)據(jù)維護,可以對其學(xué)生考勤信息進行登記等。</p><p> (1) 創(chuàng)建一個名為“考勤登記表”的表單文件。</p><p> (2) 設(shè)置表單
86、的數(shù)據(jù)環(huán)境。將“考勤表.dbf”、“ 學(xué)生信息基本表.dbf”2個表添加在數(shù)據(jù)中。</p><p> (3) 在表單中添加控件。布局如圖1-10:</p><p> ■按鈕“統(tǒng)計結(jié)果”的Click的事件代碼:</p><p> SELECT 考勤記錄表</p><p> SET filter to YEAR(缺勤日期)=VAL(thi
87、sform.text2.Value);</p><p> and MONTH(缺勤日期)=VAL(thisform.text3.Value )</p><p> CREATE CURSOR hzb(學(xué)號 c(4),姓名 c(8),病假天數(shù) n(2,0),事假天數(shù) n(2,0),曠課天數(shù) n(2,0)) &&新建一個臨時表,并設(shè)其參數(shù)</p>&
88、lt;p> SELECT 學(xué)號 from 考勤記錄表 where;</p><p> YEAR(缺勤日期)=val(thisform.text2.Value);</p><p> and MONTH(缺勤日期)=val(thisform.text3.Value ) into cursor lsb1</p><p> SELECT lsb1</p
89、><p><b> go top </b></p><p> bjts=0 &&設(shè)置初始值</p><p><b> sjts=0</b></p><p><b> kkts=0</b></p><p><
90、b> cdts=0</b></p><p><b> ztts=0</b></p><p> DO while not EOF() &&當記錄不為空的時候</p><p> var_xh=lsb1.學(xué)號</p><p> SELECT 考勤記錄表
91、 &&計算缺勤次數(shù)</p><p> COUNT for 學(xué)號=var_xh and 缺勤類別="病假" to bjts</p><p> COUNT for 學(xué)號=var_xh and 缺勤類別="事假" to sjts</p><p> COUNT for 學(xué)號=var_xh and 缺勤類別=
92、"曠課" to kkts</p><p> COUNT for 學(xué)號=var_xh and 缺勤類別="遲到" to cdts</p><p> COUNT for 學(xué)號=var_xh and 缺勤類別="早退" to ztts</p><p> SELECT 學(xué)生信息基本表</p>&
93、lt;p> LOCATE for 學(xué)號=lsb1.學(xué)號</p><p><b> xm=姓名</b></p><p> SELECT hzb</p><p> APPEND BLANK </p><p> REPLACE 學(xué)號 with lsb1.學(xué)號,姓名 with xm,病假天數(shù) with bjts,
94、事假天數(shù) with sjts,曠課天數(shù) with kkts</p><p> SELECT lsb1</p><p><b> SKIP</b></p><p><b> enddo</b></p><p><b> GO top </b></p><
95、;p> thisform.grid1.ColumnCount =-1</p><p> thisform.grid1.RecordSource="hzb" </p><p> 在系統(tǒng)中需要打印學(xué)生基本信息表,所以下面我們來設(shè)計 詳細報表.frx,步驟:文檔→報表→新建,彈出窗口如圖1-11:</p><p><b> 圖
96、1-11</b></p><p> 具體報表布局如圖1-12:</p><p> 圖1-12 【報表設(shè)計器】</p><p><b> 預(yù)覽效果如下:</b></p><p> 圖1-13 瀏覽【報表設(shè)計器】</p><p><b> 其他報表省略。</b&g
97、t;</p><p><b> 4.3 菜單設(shè)計</b></p><p> (1) 創(chuàng)建菜單。步驟:文檔→其他→菜單,保存菜單名為:主菜單.mnx。</p><p> (2) 定義主菜單欄如圖1-14:</p><p> 圖1-14 【主菜單欄】</p><p> (3) 定義【基礎(chǔ)維護
98、】菜單的各菜單項如圖1-15:</p><p> 圖1-15【學(xué)生信息管理欄】</p><p> (4) 插入分隔線。將光標放在需要添加的位置,單擊[插入]按鈕,出現(xiàn)新菜單項,將菜單項名稱改為:“\-”即可。</p><p><b> (5) 菜單代碼</b></p><p><b> ?。弁顺鱿到y(tǒng)]:&
99、lt;/b></p><p> clear events &&退出事件循環(huán)</p><p><b> quit</b></p><p><b> (5) 預(yù)覽菜單。</b></p><p> 單擊[預(yù)覽]按鈕即可</p><p>&
100、lt;b> 5 主程序設(shè)計</b></p><p> (1) 建立主程序,步驟:代碼→程序,保存名為:main.prg</p><p> SET TALK OFF &&關(guān)閉對話</p><p> SET ESCAPE OFF &&關(guān)閉ESCAPE鍵</p><p>
101、 SET EXACT ON &&打開完全匹配</p><p> SET EXCLUSIVE ON &&打開獨占</p><p> SET CONSOLE ON &&將輸出結(jié)果到發(fā)送到Visual FoxPro主窗口或當前的活動窗口</p><p> SET DATE TO LONG
102、&&設(shè)置長日期</p><p> SET SCORE OFF &&關(guān)閉分值欄</p><p> SET SAFETY OFF &&關(guān)閉安全提示</p><p> SET STATUS BAR OFF &&關(guān)閉系統(tǒng)提示欄</p><p> SET C
103、ENTURY ON &&打開世紀開關(guān)</p><p> SET DELETED ON &&屏閉刪除項</p><p> SET SYSMENU OFF &&關(guān)閉系統(tǒng)菜單</p><p> SET NOTIFY OFF &&關(guān)閉提示</p><p&g
104、t; &&設(shè)置系統(tǒng)窗口屬性</p><p> _SCREEN.MaxButton = .f.&&取消最大化按鈕</p><p> _SCREEN.MaxWidth =980&&設(shè)置最大寬度</p><p> _SCREEN.MaxHeight =600&&設(shè)置最
105、大高度</p><p> _SCREEN.Caption = "高校輔導(dǎo)員管理系統(tǒng)" &&設(shè)置窗口標題</p><p> _SCREEN.Picture = 'back.jpg' &&設(shè)置窗口背景圖片</p><p> stretch=2 &&變比例填充&
106、lt;/p><p> _SCREEN.AutoCenter = .T.&&指定表單初次顯示時,自動位于主窗口中央</p><p><b> &&定義全局變量</b></p><p> public UserName</p><p> Do FORM 歡迎.scx
107、 &&進入歡迎表單</p><p> READ EVENTS </p><p> Procedure OnQuit </p><p> CLEAR EVENTS. &&清空關(guān)閉窗口</p><p><b> CLOSE ALL</
108、b></p><p><b> QUIT</b></p><p><b> Endproc</b></p><p> 7 連編應(yīng)用程序系統(tǒng)</p><p> 在[項目管理器]對話框中[代碼]頁面中,選擇程序中的主程序main.mpg。單擊[連編]按鈕,彈出[連編選項]對話框如圖1-1
109、6:</p><p> 圖1-16【連編選項】</p><p><b> 8 系統(tǒng)的實現(xiàn)</b></p><p> 8.1 系統(tǒng)開發(fā)的難點與問題</p><p> 由于本人是初次開發(fā)數(shù)據(jù)庫管理系統(tǒng),對于表單中程序代碼的功能還不能運用自如,及對數(shù)據(jù)庫中各文件的處理還不能達到目的,導(dǎo)致在程序調(diào)試中經(jīng)常出錯</p
110、><p><b> 9 結(jié)束語</b></p><p> 經(jīng)過一個多月的設(shè)計和開發(fā),這套高校輔導(dǎo)員管理系統(tǒng)基本完成。其功能基本符合學(xué)校的要求,能夠完成學(xué)生檔案的存儲及考勤程序的查詢,同時能實現(xiàn)各相關(guān)報表的打印。但是由于在知識,經(jīng)驗方面存在不足,時間也比較緊張,所以該系統(tǒng)還有很多待于完善的地方。如用戶界面不夠優(yōu)美,對系統(tǒng)容錯處理不夠等。但最主要的收獲是學(xué)會了系統(tǒng)設(shè)計的思
111、維方法,同時能虛心向?qū)W校指導(dǎo)老師和同學(xué)請教及相互幫助的協(xié)作精神。</p><p><b> 參考文獻</b></p><p> [1] 啟明工作室visual foxpro6.0中文版數(shù)據(jù)庫應(yīng)用系統(tǒng)開發(fā)實例.人民郵電出版社,2004.9</p><p> [2] 李明,顧振山 Visual FoxPro 8.0 實用教程.清華大學(xué)出版社,
112、2005.9</p><p> [3]張翼英 Visual FoxPro課程設(shè)計. 清華大學(xué)出版社,2007.01</p><p> [4] 武新華,雍曉克,王孝俊,李揚 Visual FoxPro管理信息系統(tǒng)開發(fā)案例. 西安電子科技大學(xué)出版社,2004.7</p><p> [5] 羅晟,銀華強,劉普艷,Visual FoxPro 8.0 數(shù)據(jù)庫項目案例導(dǎo)航
113、.清華大學(xué)出版社,2005.1</p><p> [6] 蘇選良,張益星,林榮清,數(shù)據(jù)庫與管理信息系統(tǒng)實驗教程.電子工業(yè)出版社</p><p> [7] 陳博 周曉杰等, Visual FoxPro 8.0數(shù)據(jù)庫開發(fā)實例教程清華大學(xué)出版社,2004</p><p> [8] 張瑩 Visual FoxPro數(shù)據(jù)庫與程序設(shè)計教程.機械工業(yè)出版社,2007.02&
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 《高校輔導(dǎo)員管理系統(tǒng)的設(shè)計與實現(xiàn)》畢業(yè)論文
- 畢業(yè)論文-新時期高校輔導(dǎo)員的角色分析
- “輔導(dǎo)員之家”網(wǎng)站設(shè)計與開發(fā)——畢業(yè)論文
- 畢業(yè)論文——輔導(dǎo)員之家 網(wǎng)站設(shè)計與開發(fā)
- 5911.高校輔導(dǎo)員職業(yè)能力大賽系統(tǒng)的設(shè)計與實現(xiàn)
- 高校輔導(dǎo)員壓力管理
- 畢業(yè)論文范文——高校畢業(yè)論文管理系統(tǒng)的設(shè)計與實現(xiàn)
- 畢業(yè)論文范文——高校畢業(yè)論文管理系統(tǒng)的設(shè)計與實現(xiàn)
- 高校輔導(dǎo)員技能競賽訓(xùn)練系統(tǒng)的研究與實現(xiàn).pdf
- 高校科研管理系統(tǒng)設(shè)計與實現(xiàn)畢業(yè)設(shè)計畢業(yè)論文
- 高校輔導(dǎo)員如何“輔導(dǎo)”學(xué)生
- 高校輔導(dǎo)員和諧管理研究.pdf
- 高校輔導(dǎo)員職業(yè)發(fā)展管理探究
- 山西大學(xué)商院輔導(dǎo)員管理系統(tǒng)的設(shè)計與實現(xiàn).pdf
- 科創(chuàng)學(xué)院輔導(dǎo)員事務(wù)管理系統(tǒng)的設(shè)計與實現(xiàn).pdf
- 畢業(yè)論文---高校運動會管理系統(tǒng)設(shè)計與實現(xiàn)
- 基于.net技術(shù)的輔導(dǎo)員辦公系統(tǒng)的設(shè)計與實現(xiàn)
- 論高校輔導(dǎo)員的作用
- 淺談高校輔導(dǎo)員的困境與出路
- 基于WEB的高校畢業(yè)論文管理系統(tǒng)的設(shè)計與實現(xiàn).pdf
評論
0/150
提交評論