摘 要:校園綜合信息管理系統(tǒng)是一款基于C/S模式,采用PowerBuilder工具和ASA數(shù)據(jù)庫開發(fā)的實用校園管理軟件,適用于學(xué)校的教師、學(xué)生等用戶。本文分析和討論了該系統(tǒng)的總體設(shè)計和主要功能,并重點討論了系統(tǒng)設(shè)計實現(xiàn)過程中的關(guān)鍵問題和解決方法。
關(guān)鍵詞:PowerBuilder;校園;信息管理;軟件開發(fā)
中圖分類號:TP311.52
隨著計算機(jī)網(wǎng)絡(luò)的普及,校園網(wǎng)也成為在校大學(xué)生的主要溝通平臺之一,各種各樣的管理系統(tǒng)普遍應(yīng)用于各類學(xué)校。學(xué)校的師生每天要處理大量的數(shù)據(jù)信息,校園綜合信息管理系統(tǒng)是以數(shù)字化信息和網(wǎng)絡(luò)為基礎(chǔ),在計算機(jī)和網(wǎng)絡(luò)技術(shù)上建立起來的,能對教學(xué)、科研、管理和生活服務(wù)等校園信息進(jìn)行收集、處理、整合、存儲、傳輸和應(yīng)用的一款綜合管理軟件。
系統(tǒng)設(shè)計采用的開發(fā)工具是SYBASE公司推出的可視化、面向?qū)ο蟮目焖賾?yīng)用開發(fā)工具PowerBuilder(以下簡稱PB),相對于其他應(yīng)用開發(fā)工具而言,它具有速度更快、質(zhì)量更高、功能更強(qiáng)、成本低的特點。PB內(nèi)置的數(shù)據(jù)窗口對象類,可以方便數(shù)據(jù)庫的訪問,同時PB還具有強(qiáng)大的報表系統(tǒng),能夠根據(jù)用戶的需要制定各種分析報表。
1 系統(tǒng)分析與總體設(shè)計
經(jīng)過調(diào)查,校園綜合信息管理系可以普遍應(yīng)用于各類學(xué)校,通過對學(xué)校平時的工作業(yè)務(wù)流進(jìn)行分析,本次所設(shè)計的系統(tǒng)總體上需要具備的功能有:(1)登錄模塊:用戶可以使用相對應(yīng)的賬號和密碼進(jìn)行登錄,然后由數(shù)據(jù)庫進(jìn)行判斷和識別身份,從而分配用戶不同的使用權(quán)限;(2)管理員模塊:管理員具有超級權(quán)限,可以對所有登錄用戶進(jìn)行管理;(3)教師模塊:教師可以查詢并維護(hù)自己的信息;查看學(xué)生選課情況;對課程的添加;錄入學(xué)生的成績信息;并對學(xué)生信息進(jìn)行維護(hù)等;(4)學(xué)生模塊:學(xué)生可以查看自己的個人信息;可以查看自己的成績及選課情況;查看來自教師的評價;可以對宿舍進(jìn)行保修等。
通過對系統(tǒng)的軟件需求、規(guī)模和要求實現(xiàn)功能的分析,校園綜合信息管理系統(tǒng)基于C/S(客戶端/服務(wù)器)模式,前臺采用PB為開發(fā)工具,后臺使用ASA 9.0數(shù)據(jù)庫,前臺和后臺之間通過ODBC(開放數(shù)據(jù)庫連接)來連接。
2 關(guān)鍵問題與解決方案
2.1 數(shù)據(jù)庫的連接問題。PB的最主要特色之一就是方便有效地訪問和管理數(shù)據(jù)庫。在PB應(yīng)用程序訪問數(shù)據(jù)庫之前,必須先與數(shù)據(jù)庫建立連接關(guān)系,PB與數(shù)據(jù)庫的連接建立在驅(qū)動程序之上。
此次系統(tǒng)數(shù)據(jù)庫通過ODBC接口連接,連接中主要解決了兩個問題:(1)定義數(shù)據(jù)源,在Database Profiles窗口中,選擇ODBC→Utilities→Create ODBC Data Source,然后選擇數(shù)據(jù)源驅(qū)動(ASA 9.0),最后在出現(xiàn)的參數(shù)設(shè)置窗口中配置ODBC(student)、設(shè)置登錄參數(shù)(ID和PSW)和設(shè)置數(shù)據(jù)庫(student.db);(2)定義配置文件,在Database Profiles窗口中,選擇ODB ODBC項→單擊“New”按鈕,然后填寫配置文件的名字(student),最后再選擇已建立好的數(shù)據(jù)源、填寫用戶名和密碼即可。
2.2 數(shù)據(jù)窗口的使用問題。數(shù)據(jù)窗口技術(shù)(Data Window)是PB的技術(shù)核心,它通過Transaction提取數(shù)據(jù)、編輯數(shù)據(jù),再根據(jù)需要回寫數(shù)據(jù),并保證在同一事務(wù)內(nèi),這樣就完成了數(shù)據(jù)的日常維護(hù)和更新等操作。同時,通過眾多風(fēng)格不同的數(shù)據(jù)窗口和其它標(biāo)準(zhǔn)的Windows控件協(xié)調(diào)運(yùn)行,很容易完成系統(tǒng)中數(shù)據(jù)的各種操作和處理。
校園綜合信息管理系統(tǒng)中涉及到多個部門信息數(shù)據(jù)的處理,為了方便用戶處以更方便、更直觀和更簡潔的方式去操作數(shù)據(jù)庫,系統(tǒng)設(shè)計過程中使用了數(shù)據(jù)窗口技術(shù)來解決此問題。以學(xué)生模塊中的信息查詢數(shù)據(jù)窗口設(shè)計為例:(1)根據(jù)數(shù)據(jù)庫中的“學(xué)生信息表”創(chuàng)建一個數(shù)據(jù)窗口對象,注意從表中選擇要顯示的字段,并設(shè)計其他屬性;(2)將剛創(chuàng)建的數(shù)據(jù)窗口對象掛在數(shù)據(jù)窗口控件上,并調(diào)整顯示窗口的大小和位置;(3)為了保證系統(tǒng)界面輸入、修改的數(shù)據(jù)及時反映到數(shù)據(jù)庫中,并給用戶以窗口提示,可以在數(shù)據(jù)更新主窗口的open、mousemove和timer事件中編寫如下代碼,以更新成功主窗口w_datasucceed為例:
//主窗口的open事件代碼
timer(1)
//主窗口的mousemove事件代碼
send(handle(this),274,61458,0)
p_2.picturename=\"Res\close.png\" // p_2為關(guān)閉按鈕的圖片控件
//主窗口的timer事件代碼
close(w_datasucceed)
2.3 數(shù)據(jù)的錄入問題。系統(tǒng)使用過程中,友好的用戶界面是其與用戶交互的關(guān)鍵,并在很大程度上決定了軟件設(shè)計的質(zhì)量。由于本系統(tǒng)涉及到的用戶數(shù)量和信息比較多,尤其是學(xué)生的信息,都需要大量數(shù)據(jù)的錄入,為了提高系統(tǒng)數(shù)據(jù)信息的錄入速度,我們采取了條形碼的方式來進(jìn)行管理。
在系統(tǒng)后臺,使用條形碼識讀器可以完成用戶信息的大量輸入。條形碼是唯一能確定用戶信息的重要數(shù)據(jù),通過條形碼可以在系統(tǒng)數(shù)據(jù)庫中快速查找與之相關(guān)的信息。以錄入學(xué)生信息為例,首先新建一個數(shù)據(jù)窗口dw_tiaoxingma,然后在其itemchanged事件中編寫如下代碼:
long hanghao
//獲得鼠標(biāo)單擊的行號
long= dw_tiaoxingma. getrow( )
//使數(shù)據(jù)窗口接受數(shù)據(jù)的修改
dw_tiaoxingma.accepttext( )
choose case dwo.name
//判斷條形碼數(shù)據(jù)項
case \"txm\"
string tiaoxingma
string xuehao
//得到當(dāng)前行的條形碼
tiaoxinga= this.GetItemstring (hanghao, 3)
//在數(shù)據(jù)庫中檢索滿足條件的信息
SELECT \"xsxxb\".\"xh\",\"xsxxb\".\"xm\"
INTO :xuehao ,:xingming
FROM \"xsxxb\"
WHERE \"xsxxb\".\"txm\"=:tiaoxingma ;
//將信息回寫到數(shù)據(jù)窗口中
this. setitem( hanghao,\"xm\",xingming)
this. setitem( hanghao,\"xh\",xuehao )
end choose
3 系統(tǒng)的發(fā)布
為了方便用戶使用,本系統(tǒng)在設(shè)計實現(xiàn)完成之后,將PB應(yīng)用程序做成了綠色免安裝版本,具體步驟為:(1)創(chuàng)建一個名為“校園綜合信息管理系統(tǒng)”的文件夾,把PB編譯好的文件以及一些數(shù)據(jù)和資源文件都放進(jìn)去;(2)找到PB軟件的安裝路徑,將“…\Sybase\Shared\PowerBuilder”路徑下的動態(tài)鏈接庫文件拷貝到上述文件夾中;(3)找到PB軟件的安裝路徑,將“…\Sybase\SQL Anywhere 9\win32”路徑下的ASA 9.0數(shù)據(jù)庫引擎文件也拷貝到上述文件夾中;(4)至此,系統(tǒng)綠化版制作完成,只要把文件發(fā)給用戶,用戶運(yùn)行后就可以在任意Windows系列的系統(tǒng)上使用。
4 結(jié)束語
本系統(tǒng)是一個功能較完整的校園信息管理系統(tǒng),系統(tǒng)涉及學(xué)校多個部門,用戶可以使用不同身份進(jìn)行管理,極大地方便了人們對校園的學(xué)習(xí)、生活和工作情況的掌握,提高了各部門提的工作效率,適合國內(nèi)大部分學(xué)校的使用。該系統(tǒng)后期主要是以安卓等智能手機(jī)的APP開發(fā)為主,這樣可以讓學(xué)校師生通過手機(jī)客戶端來進(jìn)行各類信息的查詢,更加快捷方便。
參考文獻(xiàn):
[1]樊金生,張翠肖,沙金.PowerBuilder 10.5實用教程[M].北京:科學(xué)出版社,2009.
[2]劉小波,劉泓濱,鄧?yán)?基于PB的復(fù)烤煙箱打包信息系統(tǒng)的實現(xiàn)[J].計算機(jī)技術(shù)與自動化,2010(04):127-129.
作者簡介:汪金龍(1985.01-),男,河南鄭州人,講師,研究方向:計算機(jī)網(wǎng)絡(luò)技術(shù)。
作者單位:河南理工大學(xué)萬方科技學(xué)院 信息科學(xué)與工程系,鄭州 451400