基于ASP的收發文管理系統的設計與實現
當前位置:點晴教程→知識管理交流
→『 技術文檔交流 』
摘要 網絡辦公已是現代企業發展的大勢所趨。本文主要闡述了基于B/S結構的收發文管理系統的功能模塊以及如何使用ASP和SQL Server解決一些相關的技術,其中包括系統的安全性問題。
引言 傳統的手工辦公方式已經無法滿足現代辦公的需求,收發文管理系統作為提高工作效率、規范辦公制度,增強辦公的透明性,實現信息、文檔資源的統一管理,方便領導決策,逐步實現無紙化辦公的重要工具,越來越受到人們的重視。 我們選擇B/S三層結構,后臺數據庫采用SQL Server,WEB服務器運行微軟的IIS,以ASP(Active Server Pages)作為開發工具,客戶端用IE瀏覽器。 B/S模式體系結構概述 B/S模式是指在TCP/IP的支持下,以HTTP為傳輸協議,客戶端通過Browser訪問Web服務器以及與之相連的后臺數據庫的技術及體系結構。它由瀏覽器、Web服務器、應用服務器和數據庫服務器組成(圖1)。B/S模式突破了傳統的文件共享及C/S模式的限制,實現了更大程度的信息共享,任何用戶只要通過瀏覽器即可訪問數據庫,從而克服了時間和空間的限制。 B/S模式的工作原理是:客戶端的瀏覽器通過URL訪問Web服務器,Web服務器請求數據庫服務器,并將獲得的結果以HTML形式返回客戶端瀏覽器。 功能模塊
(3) 收文管理 收文管理主要對外來公文進行登記和處理。主要用于登記像稅務局發來的文件、公安部門發來的文件、總公司發來的文件行業主管部門來文的處理過程、協作單位發來的文件處理過程、兄弟單位發來的文件處理過程、及其它外來的公文文件的處理過程。 主要的處理過程有:收文登記、主任擬辦、領導批示、處室承辦、傳閱、送交歸檔等功能。在領導批辦界面可以將文件送往更高一級的領導進行審批,到底由哪些處室承辦,送交給哪些處室由最高領導決定。管理人員可以通過“收文查詢操作”對收文處理全過程進行跟蹤與監督。 對辦理完畢的收文系統還提供全文檢索、條件檢索、統計等功能。 圖(3)是整個收文的流程圖,用戶可以根據需要選擇其中的某些步驟來完成收文的管理。
(4) 檔案管理 對本部門或其它部門發送的文件進行接收,然后將文件進行組卷(將文件組入某一案卷中)、移卷(將某案卷中的文件移動至其它案卷)、移出(將某案卷中的文件移出案卷)。對于未立卷的收發文文件,可以組卷。對于檔案可以進行封卷,拆卷,銷毀案卷,對封卷的案卷或未封卷的案卷都可以進行借閱和查詢管理,您可以在此進行檔案的借閱、歸還。還可以對檔案的閱讀權限進行有效地分配管理。 1、典型數據表的設計 在收發文管理系統中,任意收文或發文文件都對應一個默認流程(事先已經定義好了),文件按照流程中指定的步驟逐次向下流轉。以某收文流程為例有:收文登記—〉主任擬辦—〉領導批辦—〉處室承辦—〉送交歸檔。為了對文件進行實時跟蹤,及時監督它的流向進程或者考察在某些階段處理的詳細情況,這就要求我們提供兩個重要的數據表,在本系統中為數據表gw_mrlc和數據表gw_cllc。 其中,gw_mrlc(wdlx,lcmc,ry,xh,clm,clr)記錄了系統中用到的各默認流程的信息。Wdlx指文檔類型,收文或者發文;lcmc指流程名稱;ry指定義該默認流程的人員;xh對應默認流程中各步驟的順序號,它有大小之分,小的則表示步驟在前,系統將先執行;clm對應默認流程中各步驟的名稱;clr對應默認流程中各步驟的處理人員。 Gw_mrlc僅是記錄了各流程的信息,還需要gw_cllc(lxh,lcmc,xh,clr,jbrq,clrq,clyj,zt,wjm)來跟蹤文件在流程中的執行狀況。對于任意收發文文件在系統中都會有各自唯一的流程與之一一對應,lxh則記錄了該流程的序列號;lcmc,xh,clr同上所定義;jbrq,clrq,clyj,zt,wjm都是針對該流程中順序號為xh的各個處理步驟而言,jbrq指上一個步驟處理完畢提交過來時的日期;clrq指當前步驟處理完畢時的日期;clyj指當前步驟的處理意見;zt指當前步驟的處理狀態,已經處理還是尚未處理,以方便文件的實時跟蹤;wjm則記錄了文件的正文內容和在流轉過程中文件的修改痕跡,具體的可以通過文件上傳功能來實現。 2、使用Session進行登錄驗證 ASP代碼使用表單實現交互,而相應的內容會反映在瀏覽器的地址欄中,如果不采用適當的安全措施,只要記下這些內容,就可以繞過驗證直接進入某一頁面。例如在瀏覽器中敲入“...xx.asp?flag=1”,即可不經過表單頁面直接進入滿足“flag=1”條件的頁面。 為防止未經注冊的用戶繞過注冊界面直接進入應用系統,我們采用Session對象進行注冊驗證。例如,我們制作了下面的注冊頁面。 <%’讀取用戶登錄的信息 在應用系統的其他WEB頁,首先要進行Session對象的驗證。如果你未通過用戶登錄界面,那么Session("sysuser")就為空值,你將無法使用系統提供的任何功能,除非你是合法用戶才可,這樣就在一定程度上保證了系統的安全性。其驗證代碼如下: <% 3、對ASP頁面進行加密 為有效的防止ASP源代碼泄露,可以對ASP頁面進行加密。我們曾采用兩種方法對ASP頁面進行加密。一是使用組件技術將編程邏輯封裝入DLL之中;二是使用微軟的ScriptEncoder對ASP頁面進行加密。使用組件技術存在的主要問題是每段代碼均需組件化,操作比較繁瑣,工作量較大,而使用Encoder對ASP頁進行加密,操作簡單,收效良好。 ScriptEncoder的運行程序是SCRENC.EXE,使用方法是: SCRENC [/s][/f][/xl][/ldefLanguage][/edefExtention]inputfile outputfile 其中:/s是屏蔽屏幕輸出;/f指定輸出文件是否覆蓋同名輸入文件;/xl指是否在.asp文件的頂部添加@Language指令;/ldefLanguage指定缺省的腳本語言;/edefExtention指定待加密文件的擴展名。 4、存儲過程的使用 使用存儲過程不僅可以提高查詢速度,而且可以保證事務的完整性。在該系統中,每個文件對應唯一的流水號,當有新的文件要入庫時流水號就會自動加一。由于所有的用戶都在網上,那么兩個文件同時入庫的情況就有可能發生,為了保證流水號的唯一性,就要求“取流水號”和“流水號加一”作為一個事務來完成。ASP調用存儲過程比調用SQL語句要復雜一些,必須用ADO組件中的命令對象,步驟如下: 創建一個ADO命令對象,把Commandtext屬性為存儲過程名,Commandtype屬性為4,表示該命令是調用存儲過程為命令對象創建參數。 用“命令對象.CreateParameter(參數名稱,類型,方向,長度)”命令創建對應與存儲過程的輸人、輸出參數。 用“命令對象.Parameters(參數名稱).Value=參數值”命令給輸人參數賦值。 用“命令對象.Parameters.Append參數名稱”命令將各個參數加入到命令對象的參數集合中。 “命令對象.Execute”執行存儲過程。 “變量名=命令對象.Parameters(輸出參數名稱).Value”得到輸出參數值。 結束語 基于B/S模式開發的收發文管理系統的實現,無疑會使傳統的以手工為主的辦公方式和辦公手段,向科學化、規范化、高效化和信息化轉變。可以預計,隨著辦公信息量的增加和信息化程度的提高,電子辦公將是未來辦公的發展方向。 該文章在 2012/8/30 23:04:04 編輯過 |
關鍵字查詢
相關文章
正在查詢... |