程明霞
【摘 要】Visual FoxPro6.0開發(fā)中小型信息管理系統(tǒng)具有開發(fā)速度快,開發(fā)成本低的優(yōu)勢。本文研究發(fā)教務管理系統(tǒng)實現(xiàn)過程中數(shù)據(jù)庫的設計,子模塊排課功能的實現(xiàn)方法,用VFP語言實現(xiàn)了用標準的窗口菜單方式完成教學信息的維護、查詢及輸出。
【關鍵詞】教務管理系統(tǒng);數(shù)據(jù)庫;排課;VFP
Visual FoxPro6.0是一個可運行于Windows95/98、WindowNT平臺的32位數(shù)據(jù)庫管理系統(tǒng)[1]。它提供了功能完備的工具、極其友好的用戶界面、簡單的數(shù)據(jù)存取方式、跨平臺技術,具有良好的兼容性和可編譯性、開發(fā)速度快、技術要求不高,成本低廉的優(yōu)點?;诖私Y合學校實際需求,研究并設計了教務管理系統(tǒng),以便提升學校教學管理水平,減輕管理者的工作量,方便教師及學生的信息查詢。
1 系統(tǒng)數(shù)據(jù)庫的設計
通過學校的教學管理的需要調研,教務管理系統(tǒng)對對教學中的教師、學生、課程、成績實現(xiàn)管理,方便管理員、教師、學生的對各種信息的查詢與管理。學校主要研究的實體對象是教師、班級、學生、教學計劃、課程表、成績單等,以下是對學校設計局部的數(shù)據(jù)模型,E-R模型圖,可換成7個關系數(shù)據(jù)表。
2 系統(tǒng)實現(xiàn)
2.1 登錄窗口的實現(xiàn)
使用VFP可視化面象對象設計,登錄窗口中用標簽、文本框、按鈕控件實現(xiàn)很容易實現(xiàn)以下登錄窗口的設計。通過設置窗口及控件的caption\height\left\top\width等屬性達到想要的外觀效果。再通過設置窗口及控件的事件代碼實現(xiàn)登錄系統(tǒng)的控制。
通過菜單組織命令、過程、表單程序實現(xiàn)整個系統(tǒng)的信息錄入、數(shù)據(jù)查詢及其他功能的調用,使用VFP提供的系統(tǒng)菜單的創(chuàng)建功能,也更加容易實現(xiàn)其他菜單功能。
2.2 基礎數(shù)據(jù)維護
教務管理系統(tǒng)的設計主要用于存儲和處理各種數(shù)據(jù),使用VFP提供的現(xiàn)成的命令按鈕組實現(xiàn)對數(shù)據(jù)表的記錄操作,實現(xiàn)查找、打印、添加、編輯、刪除、退出功能也大大減少了編程工作量,達到比較好的效果。
3 排課功能的解決辦法
(1)使用二進制表示時間軸
排課沖突的檢測用二進制編碼,0表示可排,1表示禁止,運行中使用二維數(shù)組中表示時間,減少數(shù)據(jù)庫的訪問次數(shù),為班級、教師、教室、課程建立時間數(shù)組,時間交集即排除時間解。
(2)構造時間模式庫,為周學時不同的課程指定時間組合方式,并存儲到時間數(shù)據(jù)庫中,用十進制數(shù)字字符串來表示,兩位字符表示一個時間節(jié)點,如“13”可表示周一第3次課,“1123”可以表示周一12節(jié),周二56節(jié)有課,按課程的重要性,給每種課不同的權重,按課程種類和課時多少來劃分優(yōu)先級別并將每種周學時數(shù)所有時間組合形式存入時間模式庫中進行匹配,優(yōu)先用最佳的時間方案。
(3)用VFP編程實現(xiàn)排課的功能,篇幅有限,例出班級課程排課主要程序段如下:
【參考文獻】
[1]周察金.數(shù)據(jù)庫應用基礎——Visual FoxPro[M].高等教育出版社,2002.
[2]羅曉沛.數(shù)據(jù)庫技術[M].華中理工大學出版社,2000.
[3]周織云.基于優(yōu)先級的自動排課系統(tǒng)的研究與設計[D].華中師范大學計算機科學系,2011,5.
[4]劉林林.基于學年學分制下高校教務管理系統(tǒng)的設計與開發(fā)[D].山東大學,2008.
[責任編輯:薛俊歌]