黃戌霞


摘 要:在網絡應用日益普及的今天,無紙化網絡辦公自動化系統的應用將是目前企事業單位提高辦公效率的一個必然趨勢。該文從網上辦公系統建設的實際出發,首先簡單地闡述了辦公自動化系統的開發背景,接著簡要介紹了網上辦公系統的設計方案,詳細介紹了系統的主要功能模塊的劃分,重點介紹了基于ASP進行設計和開發的論壇的具體實現方法和關鍵技術,以及利用ASP控件訪問WEB數據庫服務器的方法和技巧。
關鍵詞:數據庫 ASP Access OA B/S模式
中圖分類號:TP311 文獻標識碼:A 文章編號:1672-3791(2015)10(c)-0008-03
辦公自動化系統(Office Automation System簡稱OAS),是伴隨著企業對信息化建設和Internet技術的廣泛應用而應運而生的[1]。該系統采用B/S模式開發,將ASP技術和Access數據庫相結合,實現了信息從表態發布向動態發布的轉變。
1 系統的運行環境與開發平臺
系統選擇Windows 2000 Server作為構建該系統網絡基礎平臺,用ASP(Active Server Pages,活動服務器網頁)和ACCESS結合,創建和運行動態、交互、高效的Web服務器應用程序[2]。
該系統采用基于WEB的B/S模式平臺,如圖1所示。
2 系統的總體設計
該網上辦公系統的主要功能如圖2所示。
3 與數據庫的連接
在Web數據庫中,用戶通過瀏覽器就可以方便地完成對后臺數據庫中數據的插入、刪除、查詢和修改等操作,這樣的模式極大地簡化了操作過程,為用戶使用后臺數據庫中的數據提供了便利[3]。
下面以會議管理模塊為例,介紹其具體的實現方法和技術。
3.1 實現與數據庫的連接
在該系統的設計中,把此連接數據庫語句存儲到一個獨立的文件conn.asp并放在文件夾Connection下,這樣在每次訪問數據庫時,無須重復編程,只要包括該文件即可,減少了代碼的冗長[4]。
3.2 訪問數據庫
通過使用ADO中的Connection和Recordset對象就能夠實現對網絡數據庫[5]的訪問。結合SQL命令,設定查詢條件,對數據庫進行查詢。
3.3 關閉數據連接
在使用結束后要及時關閉與數據庫的連接,避免占用資源。
4 主要模塊功能的實現
4.1 會議管理模塊
在一個企業中,大大小小的會議是必不可少的。那怎樣才能在最短的時間內將會議的時間、地點等信息通知到位呢?會議管理模塊就是在這種需求下產生的。在這里,所有的員工都可以看到會議記錄,但是只有擁有“系統”或“讀寫”權限的用戶才可以錄入、刪除會議記錄。
4.1.1 會議的錄入
在錄入會議各項信息時,先判斷會議時間是否為空,如果為空提示輸入會議時間,如果不為空且輸入格式符合提示標準,則接著判斷會議主持人是否為空,若為空則提示輸入主持人,若不為空則接著判斷下一個要輸入的信息,直到所有信息都不為空時,向數據庫提交該新記錄。
4.1.2 會議的刪除
當會議已經過了有效期,這時系統管理員就應該對這些記錄進行管理。只有管理員才能有刪除的操作。判斷權限的關鍵代碼如下:
if trim(rs_user("purview"))<>"只讀" then
如果確定要刪除,其代碼如下:
<% Del= "DELETE FROM Tab_meeting WHERE ID =
"&request.querystring("ID")&" "
conn.Execute(Del) %>
4.2 論壇模塊的結構、原理
論壇可以提供開放性的討論區,用戶可以在此發表自己的觀點、交流技術、經驗等,其他用戶可跟貼發表自己的見解。
4.2.1 用戶的權限
訪問論壇的用戶分為兩種:
(1)可登錄系統的所有人員。這些用戶可以在論壇內瀏覽帖子、發布帖子、搜索感興趣的帖子、回復關注的帖子。
(2)論壇管理員。除可享有上述權利外還可以編輯、刪除所有的帖子,修改論壇的設置。
4.2.2 帖子的顯示
這是論壇的主要部分,它顯示出了論壇數據庫中所有帖子的主題、作者、人氣、回復、最后回復時間等信息,便于訪問者檢索、查閱。
4.2.3 帖子內容的顯示
當用戶點擊某一帖子的標題時,將會看到該帖的內容及所以回復該貼的標題和內容。
4.2.4 回復他人提交的帖子
當用戶對某一帖子的內容感興趣,需要回答或發表看法時,該用戶將提交一份新帖子到論壇的數據庫,作為回復前者的帖子。該帖子的標題和內容只有在顯示被回復的帖子的內容時才被順序(按發布的時間先后順序)顯示出來。例:A發布了一個新貼,B、C、D先后對該貼子進行了回復。當其他用戶再去瀏覽A所發布的帖子時依次看到的是A帖子的標題和內容、B帖子的標題和內容、C帖子的標題和內容。
4.2.5搜索帖子
用戶可以根據自己的需要輸入所要查詢的帖子的主題進行搜索。
4.2.6 聯系我們
在此頁面中,用戶可以就系統問題與開發人員進行聯系。將鼠標移至郵箱地址處點擊即可直接發送Email,為用戶節省時間。
4.2.7 論壇幫助
簡要的介紹了論壇的使用規則及注意事項。
下面將重點討論幾個具有典型性的子模塊的設計思想和實現過程。
4.3 分頁顯示帖子主題
鑒于論壇頁面的可視性,當包含很多記錄而無法顯示在同一頁時,要對帖子進行分頁設置來顯示。該模塊就可以實現將數據庫中的帖子主題按最后回復時間的降序排列分頁顯示出來,并在顯示頁面底部顯示帖子總數和頁數。
在創建數據庫鏈接并創建數據集后,開發人員指定主題頁面每頁顯示16條帖子,回復頁面每頁顯示8條帖子,通過傳遞參數的超級鏈接實現分頁顯示記錄。這樣,通過一次次的循環,每次只向用戶的瀏覽器返回固定條數的帖子的主題,直到數據庫的記錄指針未指向記錄的末尾。最后釋放數據庫的連接對象和記錄設置對象。而退出循環的條件是數據庫的記錄指針未指向記錄的末尾與行計數器大于0。關鍵代碼如下:
<%if page>1 then%>
<%end if%>
<%if page
<%end if%>
顯示頁面如下:
4.4 加帖子
設置論壇是為了實現信息的交流,那么該企業中的任何員工均有權在版塊發表的自己的意見建議、心得體會之類。考慮到信息交流的互動性,開發人員必須知道什么人發表了什么,所以當用戶發表新貼時,必須填寫要發表帖子的標題、姓名或所在部門、要發表的內容。
4.5 回復帖子
當員工瀏覽論壇的時候,若對某一主題感興趣或者可以提供發表者所需要的信息時,用戶就可以對該主題進行回復。該子模塊的主要功能是在用戶發表的帖子和被回復的帖子之間建立聯系,從而在顯示某個帖子內容的同時將所有回復它的帖子的內容都顯示出來。
4.6 論壇管理登錄
鑒于數據庫的后臺維護的必要性與安全性,增加了對論壇數據信息的管理。由于數據信息的管理只有使用該系統的論壇管理員才能使用,所以設置了登錄頁面來驗證管理員的合法性。
首先,先取得用戶輸入的用戶名和密碼,然后通過數據庫admin.mdb表對信息進行核對,判斷有無此用戶,若無則頁面重定向到erro.asp文件,并在頁面顯示“你不是管理員”的提示信息;若有則接著判斷密碼是否正確,不正確則顯示上述錯誤提示頁面,只有當用戶名與密碼都匹配時才能正常登錄管理頁面,轉向后臺操作。
由于只有論壇管理員才能夠對帖子進行編輯、刪除,并修改論壇設置,因此在程序中利用用戶的Session變量進行判斷,防止用戶超越權限進行操作[6]。在模塊中,程序將該用戶的操作權限賦予Session變量a,供后面的程序使用,關鍵代碼如下:
if pass=rs("pass") and name=rs("name") then
session("a")="1"
4.7 刪除帖子
由于論壇數據繁多,考慮到系統的運行速度和數據的管理,就需要管理員刪除一些無用或者過期的數據,以便騰出空間存放更多的信息。這些無用的信息包括兩種:一種是用戶發表的整個主題(包括被回復的帖子),另一種是用戶回復的帖子。所以在管理員成功登錄后,就應該有選擇的刪除這些無用的信息。
刪除帖子是最為簡單的一部分,用SQL的delete語句即可以實現。
4.8 搜索帖子
為了方便用戶在眾多帖子中快速查找到自己所發表的或所關注的帖子,該模塊實現按用戶要求搜索相關帖子。當用戶輸入需要查詢主題的關鍵字時,將返回數據庫主題包含此關鍵字的相關帖子的信息。
4.9 修改設置
當管理員身份登錄成功之后可以對論壇帖子主題顯示的背景顏色、回復顯示帖子數和每頁顯示主題數等的修改設置,以實現頁面的美化。另外,管理員還可以根據個人需求更改私人的用戶名和密碼。
5 結語
由于能力有限,經驗不足,系統中還有些不盡如人意之處,如安全性能不夠高。系統在技術指標上已經達到預期的水平,對用戶請求的響應速度能夠滿足用戶需要;界面簡潔、友好,菜單式的布局讓用戶更易于掌握。
參考文獻
[1] 蔣偉鋼.基于ASP的動態網站核心技術分析[J].福建電腦,2005(2):30-32.
[2] 張君,武裝.ASP技術下的網絡辦公自動化系統[J].電子技術,2004,31(6):24-25.
[3] 許松明.基于ASP技術動態網站的開發與研究[J].湖南師范學院學報2005,27(1):138-140.
[4] 張景峰.ASP程序設計教程[M].北京:北京交通大學出版社,2005.
[5] 微軟公司,著.Microsoft Office Access2003[M].鐵軍,等,譯.北京:高等教育出版社,2006.
[6] 李嚴,于亞芳,王國輝,等.ASP數據庫開發實例解析[M].北京:機械工業出版社,2005.