張云浩,鄢洪濤
(通化師范學院 網(wǎng)絡(luò)中心,吉林 通化 134002)
在高等院校中,一個學校的科研能力和水平,科研人員的素質(zhì)和科技成果,對學校的學科建設(shè)和師資隊伍建設(shè)將產(chǎn)生重大的影響,也對學校知名度,學校的地位和聲譽有重要意義[1].
通化師范學院是省屬重點高校,學校歷屆領(lǐng)導都十分重視科研工作,每年都投入大量的人力、物力和財力進行科研開發(fā).因此,管理好科技隊伍,搞好科技開發(fā),對科研成果進行信息化管理是擺在科研管理部門面前的重要課題.
目前,通化師范學院科研管理工作的流程主要是以紙件或電子文檔為依據(jù),大多數(shù)科研管理工作很大程度上還要依賴人工來進行,利用Excel、word等辦公軟件處理大量的數(shù)據(jù),這種方式不但難以及時有效的掌握最新的科研情況,而且又增加了科研管理的工作量,不能為領(lǐng)導進行科學決策提供參考.同時科技處和廣大科研人員以及各院系部門科技秘書之間無法實現(xiàn)快捷高效的溝通方式;普通科研人員也難以了解其他同事的科研狀況.因此,筆者設(shè)計的科研信息管理系統(tǒng),實現(xiàn)對學院科研信息進行規(guī)范化、科學化的管理,減少不必要的重復勞動,提高科研管理的辦公效率,加強學院的科研管理水平,進而加速學校辦公信息化的步伐.
圖1 基于Web的三層B/S模型
本系統(tǒng)采用基于Web的三層Brower/Server結(jié)構(gòu)(簡稱B/S),如圖1所示[2,3].
表示層:是前端用戶接口,在本系統(tǒng)中為Web瀏覽器,負責HTML文檔和向服務(wù)器發(fā)送HTML請求,在目前的Intranet中,本系統(tǒng)支持各種網(wǎng)絡(luò)的瀏覽器.
應(yīng)用層:主要是Web服務(wù)器和各種服務(wù)器端應(yīng)用程序(如ASP應(yīng)用程序,CGI程序等).Web服務(wù)器的主要工作包括管理、發(fā)送HTML文檔,接收用戶的HTML請求并進行處理,Web服務(wù)器基于HTTP協(xié)議.系統(tǒng)的Web服務(wù)器基于Windows NT的IIS6.0(Internet Information Server).本文在服務(wù)器端的應(yīng)用程序由.net程序構(gòu)成,它負責處理用戶的請求,提供數(shù)據(jù)庫訪問等功能.
數(shù)據(jù)層:即數(shù)據(jù)庫服務(wù)器.數(shù)據(jù)庫只能由應(yīng)用層的程序訪問,表示層不能對數(shù)據(jù)庫進行直接操作,從而保證了數(shù)據(jù)庫數(shù)據(jù)的完整性和安全性.本系統(tǒng)的數(shù)據(jù)庫是基于Windows的SQL Server.
經(jīng)過對通化師范學院科研管理的需求調(diào)查分析,對取得的信息進行仔細整理,科研管理系統(tǒng)的主要功能可以劃分為科研人員管理和科研成果管理這兩個主要部分,功能結(jié)構(gòu)如圖2所示:
所設(shè)計系統(tǒng)實現(xiàn)其具體的功能有[4]:(1)科研人員管理.本部分功能模塊主要對科研人員進行管理維護.可以通過科研人員管理完成以下功能:①科研成員通過登陸網(wǎng)站進行賬號注冊;②用得到的帳號和密碼登陸該系統(tǒng),以享受該科研管理系統(tǒng)提供的服務(wù);③得到確認的科研成員還可以進行科研成果查詢.
(2)科研成果管理.科研成果管理是科研管理的一個非常重要的環(huán)節(jié),也是核心,該部分模塊主要完成以下功能:①對所提交的成果進行確認并收錄到成果庫;②對科研成果進行查詢、統(tǒng)計、打?。虎蹖蒲谐晒M行分析,為科研管理提供決策依據(jù).
圖2 系統(tǒng)功能結(jié)構(gòu)模型
設(shè)計的科研管理系統(tǒng)采用三級模式進行開發(fā),所有的功能在實現(xiàn)的時候都要受到權(quán)限的限定,最高權(quán)限擁有者為超級管理員(科研處管理人員),其次是各個部門負責人,負責對本部門所有科研成果進行初步審核確認,最后是科研人員.科研人員可以實現(xiàn)自己登錄,查看自己的科研成果以及科研工作量,確認自己的信息.
本科研管理系統(tǒng)主要采用技術(shù)為AJAX+ASP.NET+Microsoft SQL Server 2000.客戶端采用AJAX技術(shù)實現(xiàn),減少了客戶端與服務(wù)器之間不必要的數(shù)據(jù)重復傳輸,加快客戶端的顯示速度,同時也減輕了服務(wù)器端的負載.服務(wù)器端采用ASP.NET技術(shù),它與其它服務(wù)器端語言相比,在性能上有了很大的增強,ASP.NET是在服務(wù)器上運行的編譯好的公共語言運行庫代碼,與被解釋的其它服務(wù)器端語言不同,ASP.NET可利用早期綁定、實時編譯、本機優(yōu)化和盒外緩存服務(wù),這相當于在編寫代碼行之前便已顯著的提高了性能.數(shù)據(jù)庫采用的是Microsoft SQL Server 2000,它能提供超大型系統(tǒng)所需的數(shù)據(jù)庫服務(wù),并且與ASP.NET同為微軟公司的產(chǎn)品,兩者之間的相互的連通性、兼容性要好于不同公司產(chǎn)品之間的連通性、兼容性.
本科研管理系統(tǒng)數(shù)據(jù)庫設(shè)計時遵循原則有:①根據(jù)數(shù)據(jù)的不同用途使用要求、安全保密性來決定數(shù)據(jù)的組織形式及結(jié)構(gòu);②嚴格按規(guī)范化設(shè)計數(shù)據(jù)庫,減少數(shù)據(jù)間的依賴和數(shù)據(jù)冗余;③盡量多使用存儲過程和觸發(fā)器,使數(shù)據(jù)庫服務(wù)器端功能增大,提高效率,增加了安全性;④盡量采用事務(wù)對操作進行控制,增加操作的獨立性、一致性、不可否認性、原子性,必要時實現(xiàn)回滾操作.主要采用SQL Server數(shù)據(jù)庫管理系統(tǒng)實現(xiàn)數(shù)據(jù)庫管理.
本科研管理系統(tǒng)采用了三層結(jié)構(gòu)的框架,將訪問數(shù)據(jù)庫的一些底層方法封裝在DBUtility這個類庫中,其中DbHelperSQL類和DbHelperSQLP類是連接數(shù)據(jù)庫字符串和一些公用的方法,如簡單的SQL語句,帶參數(shù)的SQL語句,存儲過程的操作等.DESEncrypt類是數(shù)據(jù)庫的安全性,加密解密等操作.PubConstant類是動態(tài)的配置數(shù)據(jù)庫的連接字符串.
本科研管理系統(tǒng)在檢索期刊上實現(xiàn)查詢自動提示功能,以實現(xiàn)期刊名稱快速準確的錄入,具體實現(xiàn)代碼如下:
ASP.NET部分核心代碼:
protected void InitData_Periodicals(int index,int pageSize)
{
string strName=(Request.Params["query"]==null):
Request.Params["query"].ToString();
WriteLogFile(strName);
ResearchDBDataContext db=new ResearchDBDataContext();
var query=from q in db.Periodicals
where q.Name.StartsWith(strName)
select new
{
ID = q.ID,
Name = q.Name
};
string json = string.Format("{0}totalProperty:{1},root:[", "{", query.Count());
foreach (var tb in query.Skip(index).Take(pageSize))
{
json += "{" + string.Format("ID:{0},Name:'{1}'", tb.ID, tb.Name) + "},";
}
json = json.Substring(0, json.Length - 1);
json += "]}";
Response.Write(json);
}
本科研管理系統(tǒng)在對各項數(shù)據(jù)進行查詢時,有時需將查詢結(jié)果保存下來,這里所用方法是將查詢結(jié)果保存到Excel表中并自動下載,具體實現(xiàn)代碼如下:
JS部分核心代碼:
new Ext.Button({
text: '導出到Excel',
handle: function() {
var vExportContent = grid.getExcelXml();
if (Ext.isIE6 || Ext.isIE7 || Ext.isSafari || Ext.isSafari2 || Ext.isSafari3) {
if (! Ext.fly('frmDummy')) {
var frm = document.createElement('form');
frm.id = 'frmDummy';
frm.name = id;
frm.className = 'x-hidden';
document.body.appendChild(frm);
}
Ext.Ajax.request({
url: 'exportexcel.aspx',
method: 'POST',
form: Ext.fly('frmDummy'),
callback: function(o, s, r) {},
isUpload: true,
params: {exportContent: vExportContent}
})
} else {
document.location = 'data:application/vnd.ms-excel;base64,' + Base64.encode(vExportContent);
}
});
本文給出了一個基于Web的科研管理系統(tǒng)的設(shè)計,并簡要說明了其中主要部分的設(shè)計方法和技術(shù).對該系統(tǒng)的功能完善還有許多后續(xù)工作,初期主要解決數(shù)據(jù)庫建立、科研人員和科研成果的基本管理功能,接下來將對本系統(tǒng)的統(tǒng)計分析、打印報表等功能進行完善,并在應(yīng)用中實現(xiàn)三層式分級管理,讓本系統(tǒng)可以更好為學院的科研信息管理服務(wù).
參考文獻:
[1]楊柳堤,譚曉寧.基于校園網(wǎng)的科研管理系統(tǒng)框架[EB/OL].http://www.docin.com/p-85565433.html.
[2]林藝文,江海,付曄.淺談高??萍冀y(tǒng)計與科技管理信息化建設(shè)[EB/OL].http://www.docin.com/p-85566581.html.
[3]葉忠文.基于WEB的科研管理信息系統(tǒng)的研究與實現(xiàn)[D].廣州:華南師大學,2005.
[4]郭堅.校級科研管理系統(tǒng)的設(shè)計與實現(xiàn)[D].南京:南京理工大學,2006.