學(xué)生管理系統(tǒng)詳細(xì)設(shè)計(jì)任務(wù)書_第1頁
學(xué)生管理系統(tǒng)詳細(xì)設(shè)計(jì)任務(wù)書_第2頁
學(xué)生管理系統(tǒng)詳細(xì)設(shè)計(jì)任務(wù)書_第3頁
學(xué)生管理系統(tǒng)詳細(xì)設(shè)計(jì)任務(wù)書_第4頁
已閱讀5頁,還剩14頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、學(xué)生管理系統(tǒng)詳細(xì)設(shè)計(jì)任務(wù)書一、系統(tǒng)規(guī)劃說明書在此次大作業(yè)之間, 我們班級(jí)并沒有一套完善的學(xué)生管理系統(tǒng)。 一直以來,班級(jí)管理工作主要是簡(jiǎn)單的 WORD文檔的使用和 ACESS數(shù)據(jù)庫的應(yīng)用。其操作方法簡(jiǎn)單但功能很不完善, 簡(jiǎn)明性和實(shí)用性都較差。 因此,我們小組決定利用此次大作業(yè)的機(jī)會(huì),開發(fā)一套專門用于班級(jí)管理工作的數(shù)據(jù)庫系統(tǒng)。經(jīng)過仔細(xì)研究分析, 我們決定將系統(tǒng)分為三大菜單部分。 分別為學(xué)生人事檔案管理,學(xué)生成績(jī)查詢, 后臺(tái)操作管理三部分。 為了便于指導(dǎo)員和學(xué)校領(lǐng)導(dǎo)對(duì)班級(jí)情況的了解管理, 其中主要側(cè)重點(diǎn)在學(xué)生人事檔案管理方面。 在學(xué)生人事檔案管理又分為學(xué)生人事維護(hù)打印和查詢打印兩個(gè)分支。學(xué)生成績(jī)菜單

2、具有查詢打印功能。系統(tǒng)管理分為操作員管理,密碼管理,數(shù)據(jù)備份等部分。三大菜單部分緊密結(jié)合聯(lián)系, 共分為兩個(gè)數(shù)據(jù)庫, 第一個(gè)數(shù)據(jù)庫包括學(xué)生管理維護(hù)表和成績(jī)查詢表,第二個(gè)數(shù)據(jù)庫包括系統(tǒng)管理表。如下圖所示(圖1)(圖 1)二、系統(tǒng)說明書09 軟件學(xué)生管理系統(tǒng)基于FOXPRO6.0 中文版開發(fā)。 FOXPRO在數(shù)據(jù)庫開發(fā)方面具有方面,實(shí)用,簡(jiǎn)單,直接等優(yōu)點(diǎn)。同時(shí)其也具有一定的局限性。本系統(tǒng)主要面向班級(jí)指導(dǎo)員和班級(jí)學(xué)生開發(fā)使用, 因此主要側(cè)重于系統(tǒng)的使用性和方便性。同時(shí)在安全性方面, 我們也十分重視。 特別是操作員級(jí)別的劃分等密碼管理,我們都做了仔細(xì)的分析研究。( 一) 、系統(tǒng)界面的設(shè)計(jì), 我們主要是本

3、著實(shí)用簡(jiǎn)便的原則設(shè)計(jì)制作。 在系統(tǒng)界面被打開時(shí),會(huì)播放一段歡迎曲, 界面包括本系統(tǒng)的系統(tǒng)名稱, 設(shè)計(jì)人員和所在小組。下面是系統(tǒng)的首界面 ( 圖 2) :(由于隱私問題,現(xiàn)不能公布)(圖 2)系統(tǒng)界面中有登陸系統(tǒng)按鈕, 系統(tǒng)使用人員可以點(diǎn)擊進(jìn)入密碼驗(yàn)證頁, 如果在一分鐘用戶沒有點(diǎn)擊此按鈕, 系統(tǒng)會(huì)自動(dòng)跳到密碼驗(yàn)證頁。 此程序的實(shí)現(xiàn)代碼會(huì)在詳細(xì)設(shè)計(jì)書中說明。( 二) 、密碼驗(yàn)證作為系統(tǒng)最基本的安全管理步驟。 用戶如果不輸入合法的用戶名和密碼,系統(tǒng)是不能進(jìn)入的。 當(dāng)用戶輸入合法的用戶名和密碼時(shí), 系統(tǒng)管理會(huì)自動(dòng)判斷此用戶是什么級(jí)別的用戶, 具有什么權(quán)限, 使用戶的操作具有合法性。 密碼驗(yàn)證頁包括操作

4、員和密碼兩個(gè)部分。具體的代碼實(shí)現(xiàn)也將在詳細(xì)設(shè)計(jì)書說明。下面是密碼登陸頁的圖示(圖3):圖 3)當(dāng)操作員的名稱和密碼均正確的時(shí)候,系統(tǒng)便會(huì)進(jìn)入系統(tǒng)使用主菜單。主菜單共分為三個(gè)分菜單項(xiàng):學(xué)生信息管理,學(xué)生成績(jī)管理,系統(tǒng)管理。如圖(4)在學(xué)生信息管理中分為學(xué)生信息維護(hù)和學(xué)生信息查詢兩個(gè)菜單項(xiàng), 在學(xué)生成績(jī)管理中含有學(xué)生成績(jī)查詢打印菜單項(xiàng), 在系統(tǒng)管理中分為: 操作員管理、口令設(shè)置、權(quán)限管理、系統(tǒng)日志、數(shù)據(jù)備份、數(shù)據(jù)恢復(fù)、退出系統(tǒng)七項(xiàng)。下面為本系統(tǒng)的使用數(shù)據(jù)流程圖:三、詳細(xì)設(shè)計(jì)說明書根據(jù)系統(tǒng)規(guī)劃和需要分析, 把系統(tǒng)劃分為學(xué)生信息管理, 學(xué)生成績(jī)查詢, 系統(tǒng)管理三個(gè)模塊。本系統(tǒng)用到的主要有以下文件:主控

5、程序 main.prg 、啟動(dòng)界面 ( 封面 )face.scx 、系統(tǒng)登錄界面 ( 口令驗(yàn)證窗口 )pass.scx 、,主菜單 main_menu.mpr。程序的調(diào)用關(guān)系如下:主控程序 main.prg 中調(diào)用界面表單 face.scx ,封面中調(diào)用“口令驗(yàn)證窗口”表單 pass.scx ,口令正確則調(diào)用系統(tǒng)菜單 main_menu.mpr。各菜單項(xiàng)調(diào)用相對(duì)應(yīng)的表單。( 一) 、主控程序 main.prg 的代碼實(shí)現(xiàn)為:CLEAR&&清屏CLEAR ALL&&從存中釋放所有的存變量CLOSE ALL&&關(guān)閉各種類型的文件SET ESCAPE

6、OFF&&禁止運(yùn)行的程序和命令在按 Esc 鍵后被中斷SET SAFETY OFF&&指定在改寫已有文件時(shí)不顯示對(duì)話框SET DELETE ON&&使用圍子句處理記錄的命令忽略標(biāo)有刪除標(biāo)記的記錄SET SYSMENU OFF &&在程序執(zhí)行期間廢止 Visual FoxPro主菜單欄RELEASE WINDOW常"用 "&& 關(guān)閉常用工具欄SET CENTURY ON&&年份以四位顯示SET DATE TO ymd&&日期格式為年、月、日SET MARK TO &

7、quot;-"&& 指定日期分隔字符SET HOURS TO 24&&指定為 24- 小時(shí)時(shí)間格式_SCREEN.Visible=.t._SCREEN.Caption="學(xué)生管理系統(tǒng) " && 系統(tǒng)窗口標(biāo)題_SCREEN.Icon=".dod.ico"&&系統(tǒng)標(biāo)題欄圖標(biāo)* 判斷顯示器當(dāng)前分辨率_SCREEN.Width=SYSMETRIC(1)_SCREEN.Height=SYSMETRIC(2)* 根據(jù)分辨率不同,為系統(tǒng)設(shè)置不同的背景圖片IF SYSMETRIC(1)>=1

8、024_SCREEN.Picture=".imgbj.jpg"ELSE_SCREEN.Picture=".imgbj.jpg"ENDIFDO FORM .face.scx&&調(diào)用登錄界面表單On ShutDown do OnShutdown&& 退出系統(tǒng)時(shí)調(diào)用函數(shù)READ EVENTS&&建立事件循環(huán)On ShutDown&&釋放當(dāng)前的 On ShutDown命令onshutdown()* 按菜單的“關(guān)閉”按鈕退出時(shí),出現(xiàn)的提示框FUNCTION OnShutdown()sel=MESSAG

9、EBOX("真的要退出嗎 ?",4+32+256," 提示 ") IF sel=6*SELECT 0*USE .dbsystemLOG*GO BOTTOM*REPLACE 離開時(shí)間 WITH DATETIME() &&退出系統(tǒng)時(shí)記錄操作員退出時(shí)間CLOSE ALLCLEAR EVENTS&& 退出事件循環(huán)QUIT&&結(jié)束當(dāng)前 Visual FoxPro工作期,并將控制權(quán)返回給操作系統(tǒng)ENDIFENDFUNC( 二) 、在運(yùn)行主程序后,系統(tǒng)調(diào)用登陸界面表單( 圖 4)(由于隱私問題,現(xiàn)不能公布)主要事件代碼:

10、FORM1的 INIT 事件代碼: SET BELL ONSET BELL TO '.MUSICwelcome.wav',2?CHR(7)FORM1的 UNLOAD事件代碼: SET BELL TO 'MUSICSILENT.WAV',2 ?CHR(7)此兩項(xiàng)功能分別為在打開表單時(shí)調(diào)用的音樂文件和關(guān)閉表單時(shí)調(diào)用的音樂文件。Command1的 mouseup事件代碼:LPARAMETERS nButton, nShift, nXCoord, nYCoord release thisformDO FORM .mainpass.scxTimer1 的 timer 事件

11、代碼:release thisformDO FORM .mainpass.scxTimer2 的 timer 事件代碼:為了實(shí)現(xiàn)五角星的閃動(dòng):elseendifTimer3 的 timer 事件代碼:為了實(shí)現(xiàn)五角星的閃動(dòng):elseendifTimer4 的 timer 事件代碼:為了實(shí)現(xiàn)五角星的閃動(dòng):elseendif同時(shí)在每個(gè)五角星的顏色也做了設(shè)置。( 三) 系統(tǒng)登陸表單設(shè)計(jì)界面用戶在文本框輸入操作員及口令, 若正確則調(diào)用系統(tǒng)主界面 ( 菜單 ) 。允許輸入三次,若三次均不正確剛自動(dòng)退出系統(tǒng)。若用戶輸入的操作員及口令正確,要完成下列工作:(1) 設(shè)置一個(gè)全局變量 operat, 用于記錄登陸

12、系統(tǒng)的操作員,系統(tǒng)中有 3 個(gè)地方要用到操作員的和代號(hào):一是進(jìn)入主界面后在標(biāo)題欄顯示的操作員;二是操作員在系統(tǒng)管理模塊的口令設(shè)置中更改自己的口令,系統(tǒng)要知道是哪個(gè)操作員;三是退出系統(tǒng)時(shí)系統(tǒng)日志中要記錄操作員的退出時(shí)間。(2) 在系統(tǒng)日志表 log.dbf 中增加一條記錄,并同時(shí)記錄此操作員的登錄系統(tǒng)的時(shí)間。(3) 從權(quán)限表 menuright.dbf 中讀出此操作員對(duì)應(yīng)各菜單項(xiàng)的權(quán)限,并賦值給數(shù)組。(4) 調(diào)用菜單文件,顯示系統(tǒng)主界面。事件代碼:Form1的 init事件代碼:SET EXACT ON &&精確比較PUBLIC ARRAY rr18&&數(shù)組用于實(shí)

13、現(xiàn)菜單項(xiàng)權(quán)限PUBLIC i &&i PUBLIC operat &&operat i=0用于記錄用戶名及口令輸入次數(shù)用于保存操作員“確定”按鈕 (COMMAND1)CLICK事件代碼:* 判斷密碼是否正確 i=i+1SELECT operatorLOCATE FOR操作員DO CASE口令 &&輸入次數(shù)未超過 3 次且用戶名正確、口令正確INSERT INTO log( 操作員代號(hào) , 操作員 , 登錄時(shí)間 ) VALUES(operator. 操作員代號(hào) ,operator. 操作員 ,DATETIME()_SCREEN.Caption= ”

14、 學(xué) 生 管 理 系 統(tǒng)"+SPACE(40)+DTOC(DATE()+SPACE(40)+"操作員: "+operatSELECT 權(quán)限 FROMmenuright INTO ARRAYrr WHERE操作員代號(hào) =operator. 操作員代號(hào) ORDER BY菜單項(xiàng)編號(hào)RELEASE THISFORMDO .mainmain_menu.mpr口令 && 輸入次數(shù)未超過 3 次且用戶名正確、口令不正確MESSAGEBOX("密碼錯(cuò)誤 , 請(qǐng)重輸 !","警告 ")CASE i<=3 AND NOT

15、FOUND() && 輸入次數(shù)未超過 3 次且用戶名不正確MESSAGEBOX("操作員錯(cuò)誤 , 請(qǐng)重輸 !"," 警告 ")CASE i>3&&輸入次數(shù)超過 3 次MESSAGEBOX("禁止進(jìn)入系統(tǒng) !","警告 ")THISFORM.ReleaseENDCASE退出按鈕 (COMMAND2)CLICK事件代碼:RELEASE THISFORMCLEAR EVENTS( 四) 系統(tǒng)菜單設(shè)計(jì)1、學(xué)生信息管理系統(tǒng)的菜單在應(yīng)用系統(tǒng)中, 各個(gè)了模塊是通過菜單組織在一起的。 通過對(duì)人

16、事工資管理系統(tǒng)功能模塊的設(shè)計(jì),可以交系統(tǒng)劃分為 3 大模塊:學(xué)生信息管理、學(xué)生成績(jī)查詢、系統(tǒng)管理,具體的菜單設(shè)計(jì)見下表:學(xué)生信息管理學(xué)生成績(jī)管理系統(tǒng)管理學(xué)生信息維護(hù)學(xué)生信息查詢學(xué)生成績(jī)查詢操作員管理口令設(shè)置權(quán)限管理系統(tǒng)日志數(shù)據(jù)備份數(shù)據(jù)恢復(fù)退出系統(tǒng)2、在菜單設(shè)計(jì)器中實(shí)現(xiàn)權(quán)限設(shè)置在菜單項(xiàng)設(shè)計(jì)器中, 通過 提示選項(xiàng) 對(duì)話框設(shè)置菜單項(xiàng)的跳過條件可以實(shí)現(xiàn)用戶權(quán)限。每個(gè)操作員對(duì)每個(gè)菜單項(xiàng)有兩種權(quán)限: 0 或 1?!?”表示此操作員對(duì)該菜單項(xiàng)沒有操作權(quán),系統(tǒng)運(yùn)行后,該菜單項(xiàng)為灰色。不能打開對(duì)應(yīng)的表單, “1”代表該操作員對(duì)該菜單項(xiàng)具有操作權(quán), 系統(tǒng)運(yùn)行后, 該菜單項(xiàng)可用, 鼠標(biāo)單擊菜單項(xiàng)能打開對(duì)應(yīng)的表單。操

17、作員對(duì)各菜單項(xiàng)的權(quán)限保存在表文件 menuright.dbf 中,在登錄系統(tǒng)時(shí)讀出該操作員對(duì)應(yīng)各菜單項(xiàng)的權(quán)限,并賦值給一個(gè)數(shù)組 RR。本系統(tǒng)共 10 個(gè)菜單項(xiàng),所以定義的數(shù)組也包含 10 個(gè)元素。3、學(xué)生信息維護(hù)表單包換下列功能:數(shù)據(jù)錄入、修改、刪除、查詢、瀏覽、保存、打印等。本表單左邊是瀏覽窗口,便于用戶瀏覽數(shù)據(jù);右邊是編輯窗口,主要用于輸入修改數(shù)據(jù)。4、在表單數(shù)據(jù)環(huán)境中添加表:rsb.dbf 、cjb 、dbf 。學(xué)生人事表和成績(jī)表的結(jié)構(gòu)請(qǐng)打開數(shù)據(jù)庫表查看。在表單數(shù)據(jù)環(huán)境的BRFOREOPENTABLES事件中添加代碼:5、事件代碼:FORM1的 INIT 事件代碼:FORM1的 CLIC

18、K事件代碼:GRID1的 afterrowclochange事件代碼:LPARAMETERS nColIndexthis.setall("dynamicbackcolor","IIF(This.activerow<>recno(),rgb(255,255,255),rgb(0,255,0)","column")select rsbthisform.refresh此代碼實(shí)現(xiàn)不現(xiàn)顏色顯示選中的GRID對(duì)象的行及列?!暗谝粋€(gè)“按鈕的CLICK事件代碼:select rsbgo topif not eof()endifthisfo

19、rm.refresh“前一個(gè)“按鈕的CLICK事件代碼:select rsbskip -1if bof()go topendifif not eof()endifthisform.refresh“下一個(gè)“按鈕的CLICK事件代碼:select rsbskipif eof()go bottomendifif not bof()endifthisform.refresh“最后一個(gè)“按鈕的CLICK事件代碼:select rsbgo bottomif not bof()endifthisform.refresh“增加“按鈕的CLICK事件代碼:if this.caption="this.c

20、aption="增加 "保存 "SELECT RSBAPPEND BLANKGO BOTTOMTHISFORM.REFRESHELSETHIS.CAPTION="增加 "endif“刪除“按鈕的CLICK事件代碼:SELECT RSBXH=RSB學(xué).號(hào)sel=messagebox(" 該記錄學(xué)號(hào)為: "+XH+chr(13)+" 真的要?jiǎng)h除嗎 ?",4+32+256,"提示 ")if sel=6deleteendif“查找“按鈕的CLICK事件代碼:“打印“按鈕的CLICK事件代碼:r

21、eport form .menu1rsb_bb1.frx preview for rsb. 學(xué) 號(hào)“退出“按鈕的CLICK事件代碼:select rsbpackthisform.release“ TEXT7”的 valid 事件代碼為: select rsbsetfilterto學(xué)號(hào)or學(xué)生locatefor學(xué)號(hào)or學(xué)生thisform.refreshset filter to6、運(yùn)行界面: ( 如圖 5)(圖 5)7、學(xué)生信息查詢菜單的設(shè)計(jì)學(xué)生人事信息的查詢是基于 RSB.dbf 表,菜單提供學(xué)號(hào),全體查詢。分別利用不同的命令代碼方式實(shí)現(xiàn)查詢打印功能。 功能是便于指導(dǎo)員和老師, 學(xué)生用戶的檢

22、索查詢。各事件的代碼如下:FORM1的 INIT 事件代碼:* 輸入編號(hào)、提示標(biāo)簽及文本框* 輸入起始日期、截止日期提示標(biāo)簽及文本框不可見* 表格數(shù)據(jù)不可修改Optiongroup1 的 CLICK事件代碼:* 選定查詢類別后,設(shè)置各控件是否可見DO CASECASE THIS.Value=1 && 按學(xué)號(hào)查詢請(qǐng)輸入要查詢的學(xué)號(hào): "CASE THIS.Value=2&&按查詢請(qǐng)輸入學(xué)生: "CASE THIS.Value=3&&按出生日期查詢CASE THIS.Value=4&&顯示全體記錄SET FILTE

23、R TOGO TOPENDCASEGRID1的數(shù)據(jù)連接連接RSB表。一一對(duì)應(yīng)該對(duì)應(yīng)的數(shù)據(jù)項(xiàng),COMMAND4(查詢 ) 的 CLICK事件代碼:* 按輸入的日期條件在表格中顯示查詢的記錄DO CASECASE NOT EMPTY(qsrq) AND EMPTY(jzrq)SET FILTER TO 出生日期 >=qsrqCASE EMPTY(qsrq) AND NOT EMPTY(jzrq)SET FILTER TO 出生日期 <=jzrqCASE NOT EMPTY(qsrq) AND NOT EMPTY(jzrq)SET FILTER TO 出生日期 >=qsrq AND 出生日期 &

溫馨提示

  • 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)論