摘 要:網(wǎng)絡財務查詢系統(tǒng)是解決學校各種財務明細查詢的重要手段。文中采用ASP技術開發(fā)了基于Web的網(wǎng)絡財務查詢系統(tǒng),并且對該系統(tǒng)的技術方案的選擇、系統(tǒng)功能的設計和實現(xiàn)等進行了介紹。
關鍵詞:網(wǎng)絡財務查詢 B/S模式 ASP
中圖分類號:TP311.52 文獻標識碼:B 文章編號:1673-8454(2008)13-0049-03
隨著網(wǎng)絡技術的發(fā)展和校園信息化的進一步推進,通過網(wǎng)絡發(fā)布的信息已經(jīng)越來越受到全國各高校的重視,很多高校都致力于自己的校園信息化建設,其中,網(wǎng)絡財務查詢就是重要的組成部分。網(wǎng)絡財務查詢是指利用計算機網(wǎng)絡技術,在網(wǎng)絡環(huán)境下提供各種經(jīng)費和個人收入的明細查詢的方式。網(wǎng)絡財務查詢可以實現(xiàn)網(wǎng)上查詢個人經(jīng)費的便利,強調個人的自主性和隱私,具有個性化,支持特殊要求的功能查詢等特點,是完全不同于傳統(tǒng)財務查詢的一種新的財務查詢模式。
網(wǎng)絡財務查詢系統(tǒng)是使用國內外較為流行的程序設計語言之一的VB語言。筆者針對VB語言的特點,對傳統(tǒng)的財務查詢數(shù)據(jù)進行了重新整合,對財務查詢形式進行了重新設計,研究開發(fā)了基于Web的網(wǎng)絡財務查詢系統(tǒng)。該系統(tǒng)提供了按個人或按特殊要求查詢科研、指標、專項經(jīng)費,按個人查詢工資、勞務費、崗位津貼和后勤績效的當月數(shù)據(jù)及歷史數(shù)據(jù),按年度查詢年終獎等功能,可以完全按照個人的需要,對年份和月份靈活選擇。通過使用本系統(tǒng),擴大了廣大教師所掌握的信息量,充分利用了計財處原有數(shù)據(jù)資源,增強了教師對經(jīng)費使用情況的了解程度和及時程度,減少了計財處的經(jīng)費咨詢工作量和紙質文件的消耗,提高了校內網(wǎng)絡服務平臺的質量,為促進校園信息化提供了豐富實用的內容和可靠的技術保證。
一、系統(tǒng)的體系結構
應用系統(tǒng)體系結構是指應用程序內部各組件間的組織方式。網(wǎng)絡財務查詢系統(tǒng)為三層體系結構。兩層體系結構應用系統(tǒng)分為客戶層(Client)和服務器層(Server),也稱為C/S模式。其中客戶層程序負責實現(xiàn)人機交互、應用邏輯、數(shù)據(jù)訪問等功能;服務器層由數(shù)據(jù)庫服務器來實現(xiàn),故存在安全性低、部署困難、耗費系統(tǒng)資源、難于管理大量客戶機等缺點。而三層瀏覽器(Browser)/服務器(Server)模式(以下簡稱B/S模式)在兩層模式的基礎上,增加了新的一層。這種模式在邏輯上將應用功能分為三層:客戶層、Web服務器層、數(shù)據(jù)服務器層??蛻魧又挥脕韺崿F(xiàn)人機交互,對于Windows操作系統(tǒng),只需要一種通用的Web瀏覽器軟件,如IE等就可以滿足需要。Web服務器層用來響應客戶端的請求,利用ASP可以動態(tài)生成HTML代碼,并將處理結果嵌入其中,返回給客戶端的瀏覽器。數(shù)據(jù)服務器層僅僅提供數(shù)據(jù)信息服務,實現(xiàn)數(shù)據(jù)庫管理。當客戶端提交的請求包括數(shù)據(jù)的存取時,Web服務器將與數(shù)據(jù)庫服務器一起工作。
本系統(tǒng)采用B/S模式的三層系統(tǒng)結構,見圖1。
二、系統(tǒng)功能設計
本系統(tǒng)共分為3個子系統(tǒng):登錄子系統(tǒng)、經(jīng)費查詢子系統(tǒng)以及收入查詢子系統(tǒng)。系統(tǒng)功能模塊劃分如圖2所示。
1.登錄子系統(tǒng)
登錄子系統(tǒng)供所有擁有職工編號的人員使用,主要包括教職員工的登錄、登錄后密碼的修改,以及從數(shù)據(jù)庫中讀取密碼后的解密和寫入密碼前的加密等幾個主要功能。其中“登錄功能”是指擁有職工號的教職員工可以用系統(tǒng)默認的初始密碼登錄系統(tǒng);“密碼修改功能”是指教職員工成功登錄后可以修改登錄密碼;“加密解密功能”是指為了防止密碼泄露,在把密碼寫入數(shù)據(jù)庫前對其進行加密以及把密碼讀出后對其進行解密再與輸入值對比。
2.經(jīng)費查詢子系統(tǒng)
經(jīng)費查詢子系統(tǒng)供所有擁有職工編號的人員使用,主要包括科研經(jīng)費查詢、指標經(jīng)費查詢、專項經(jīng)費查詢等功能。由于經(jīng)費的使用情況不僅需要按年月查詢,還需要按目前總情況和某段時間內的明細情況查詢,如職工號為“73063”的職工所使用的部門號為“89300”、科目編碼為“413”、項目編碼為“169”、題目編碼為“006”的科研經(jīng)費是從2004年開始使用,經(jīng)費到2006年以后余額為零。為了使系統(tǒng)能夠適應不同的查詢需求,筆者進了如下設計:進入系統(tǒng)后,首先選擇經(jīng)費的科目,再選擇年份,根據(jù)年份顯示該年份內所有經(jīng)費的總體情況,再選擇某一個經(jīng)費,查詢在這一年內某幾個月內的使用明細情況。
3.收入查詢子系統(tǒng)
收入查詢子系統(tǒng)包括工資查詢、勞務費查詢、年終獎查詢、崗位津貼查詢和后勤績效工資查詢等。工資查詢、年終獎查詢、崗位津貼查詢和后勤績效工資查詢都是進入后選擇年份和月份查詢相應結果;勞務費查詢則是選擇年份和月份后查詢得到相應的勞務費總體數(shù)據(jù),如勞務費總應發(fā)額、所得稅、勞務費總實發(fā)額等,進一步查詢后才可得到勞務費明細,如勞務費名稱、勞務費數(shù)額等。
三、網(wǎng)絡財務查詢系統(tǒng)的實現(xiàn)
依據(jù)安全性、實用性和技術先進性原則,系統(tǒng)開發(fā)的環(huán)境及主要工具選擇如下:操作系統(tǒng):Windows 2000 Server;Web服務器:IIS6.0;開發(fā)工具:Micromedia Dreamwaver MX;數(shù)據(jù)庫:Microsoft SQL Server 2000。
1.用戶登錄驗證關鍵語句
用戶登錄部分相對來說是比較重要的部分,這部分必須做好,否則無法實現(xiàn)系統(tǒng)的安全。系統(tǒng)通過用戶名和密碼的驗證來保證系統(tǒng)的安全。
<%Dim Recordset1__v1
Recordset1__v1 = \"1\"
if (Request.Form(\"zgbh\") <> \"\") then Recordset1__v1 = Request.Form(\"zgbh\")%>
<%Dim Recordset1__v2
Recordset1__v2 = \"1\"
if (Request.Form(\"kl\") <> \"\") then Recordset1__v2 = Request.Form(\"kl\")%>
<%Session(\"zgbh\")=Request.Form(\"zgbh\")
Session(\"kl\")=Request.Form(\"kl\")
set Recordset1 = Server.CreateObject(\"ADODB.Recordset\")
Recordset1.ActiveConnection = MM_rs_STRING
Recordset1.Source = \"SELECT * FROM dbo.jshbh WHERE bh = ′\" + Replace(Recordset1__v1, \"′\", \"′′\") + \"′ and kl =′\" + Replace(Recordset1__v2, \"′\", \"′′\") + \"′\"
Recordset1.CursorType = 0
Recordset1.CursorLocation = 2
Recordset1.LockType = 3
Recordset1.Open()
Recordset1_numRows = 0
If Not Recordset1.EOF Or Not Recordset1.BOF Then
Response.Redirect(\"用戶名或密碼錯誤.asp\")
end if
set conn=Server.CreateObject(\"ADODB.Connection\")
Conn.Open()=\"dsn=rs;uid=addf;pwd=esdisdfdk;\"
Set comm = Server.CreateObject(\"ADODB.command\")
comm.ActiveConnection = conn
varkl=session(\"kl\")
varbh=session(\"zgbh\")
comm.commandtext=\"selectpwdcompare (′\"+Cstr(varkl)+\"′, (select klfrom jshbh where bh =′\"+Cstr(varbh)+\"′)) as a \"
set rz=comm.execute
varrz=rz(0)
if varrz = 1then Response.Redirect(\"left1.asp\")end if
Response.Redirect(\"http://www.bjmu.edu.cn/財務查詢.htm\")%>
2.經(jīng)費查詢功能的實現(xiàn)
在網(wǎng)絡財務查詢系統(tǒng)中,經(jīng)費查詢是最重要的一項功能。系統(tǒng)設計的經(jīng)費查詢,是首先選擇所要查詢的年份,根據(jù)年份的不同,所查詢的結果也不盡相同,這里的年份作為session(“year”)。如果session(“year”)是當前年份,則從當前年份所對應的經(jīng)費結余表中尋找經(jīng)費項目并排序顯示;如果session(“year”)不是當前年份,則在項目編碼控制表中查找session(“year”)時,項目編碼的長度并截取session(“year”)年的項目編碼,在從項目歷史表中查找對應數(shù)據(jù)。如果要查詢某一項經(jīng)費的明細,則需要先選擇開始月份和終止月份,然后根據(jù)前幾步所取得的信息,在歷史明細表中查找所需數(shù)據(jù)并按時間順序排列顯示。
3.后臺數(shù)據(jù)庫的訪問
系統(tǒng)后臺數(shù)據(jù)庫使用Microsoft SQL Server 2000,數(shù)據(jù)庫服務器和Web服務器配置在同一臺服務器上。當數(shù)據(jù)庫建立完成后,通過建立ODBC數(shù)據(jù)源可指定數(shù)據(jù)庫驅動程序和數(shù)據(jù)庫路徑,為通過數(shù)據(jù)源建立數(shù)據(jù)庫的連接創(chuàng)造條件。
ADO(ActiveX Data Object)是一項容易使用并且可以擴展的將數(shù)據(jù)庫(只要該數(shù)據(jù)庫有相應的ODBC或OLEDB驅動程序)訪問添加到Web頁的技術。在ASP程序中利用ADO內置的Connection對象和Recordset對象與數(shù)據(jù)庫建立連接,通過執(zhí)行SQL命令,讓用戶在瀏覽器端對后臺數(shù)據(jù)庫進行添加、刪除、修改、查詢、更新等操作。
四、結束語
ASP為建立動態(tài)、交互、高性能、安全的Web應用提供了一種簡便、高效的技術途徑和性能優(yōu)良的平臺,是目前Web應用系統(tǒng)設計與開發(fā)的一個良好的選擇。本網(wǎng)絡財務查詢系統(tǒng)前臺采用ASP技術,后臺采用Microsoft SQL Server 2000數(shù)據(jù)庫,可以將讓財務數(shù)據(jù)的歷史明細在網(wǎng)絡上隨時查詢并打印,既具有及時性,又符合教師的查詢習慣,并且條理清晰,有效地改變了傳統(tǒng)的財務查詢模式,實現(xiàn)了數(shù)據(jù)的信息化,提高了教師上網(wǎng)的興趣,保證了財務查詢的及時性。
參考文獻:
[1]徐東升,徐媛,袁飛云.基于Web的網(wǎng)絡教學系統(tǒng)的設計與實現(xiàn)[J].中國教育信息化,2007(11):59-60,71.
[2]袁守華.基于Web的課程網(wǎng)絡教學網(wǎng)站的開發(fā)與應用[J].中原工學院學報,2004(1).