辦公自動化系統畢業設計論文_第1頁
辦公自動化系統畢業設計論文_第2頁
辦公自動化系統畢業設計論文_第3頁
辦公自動化系統畢業設計論文_第4頁
辦公自動化系統畢業設計論文_第5頁
已閱讀5頁,還剩57頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

可修改歡迎下載精品Word可修改歡迎下載精品Word可修改歡迎下載精品Word前言辦公自動化系統〔OA〕是典型的管理信息系統〔MIS〕,其開發主要包括后臺數據庫的建立和維護以及前端應用程序的開發兩個方面。對于前者要求建立起數據一致性和完整性強、數據平安性好的庫。而對于后者那么要求應用程序功能完備,易使用等特點。因此本人結合某小型私人企業的要求,對SQL語言原理、Asp、VBScript技術進行了較深入的學習和應用,主要完成對OA的需求分析、功能模塊劃分、數據庫模式分析,并由此設計了數據庫結構和應用程序。系統運行結果證明,本文所設計的OA系統可以滿足企業內部管理者、普通員工兩方面的需求。第一章緒論,對系統進行了可行性分析,并介紹了所要用到的語言、工具及開發系統所要用到的環境。第二章需求分析,對研究的意義、國內外的現狀及存在的問題進行了分析,對系統的研究目標和內容也進行了概括,列出了系統主要功能和結構圖。第三章數據庫設計,按照數據庫設計理論一步一步地給出了系統需求說明書、數據表、設計模式,利用Asp建立了數據庫。第四章詳細設計與實現,對系統進行了詳細的界面設計和編碼,完成每個模塊的功能。第五章系統測試,列出了測試環境及數據庫的連接與轉換。設計充分利用Asp,VBScript的強大力量,提高了編程效率。此次畢業設計是對我四年來所學專業知識的一個總結。它使我提高了自身解決實際問題的能力。但由于本人知識水有限,系統設計中還存在著很多缺乏,請各位領導批評指正,以便我今后改進。此外,該系統能夠順利的完成離不開各位老師對我的幫助,在此深表感謝。1緒論一個良好的辦公自動化系統〔OA〕,應該以方案為核心、以控制為手段,實現“以人為本〞、“動態控制〞、“透明延伸〞的辦公管理思想。那么OA系統如何與管理思想結合呢?主要表達在“工作管理〞、“溝通管理〞、“管理創新〞和“權限機制管理〞四個方面。目前大局部OA系統是以辦公事務的計算機自動化管理為根底的,根本內容包括文件處理、事務處理、文字處理、日程處理、郵件收發、收文發文、電子報表、會議管理等,實現了日常工作方方面面的管理。本程序著重從信息管理和標準日常工作兩方面著手,解決了日常辦公中的難點,提高了辦公人員的工作效率,也表達了管理工作的系統化,透明性。本程序有很好的適用性和工作監督作用。1.1可行性分析可行性分析的任務是從經濟上、技術上、操作上、法律上分析要解決的問題是否存在可行的解決方案。經濟上可行性:現在,計算機的價格已經十分低廉,性能卻有了長足的進步。而本系統的開發,為公司的工作效率帶來了一個質的飛躍,主要表現有以下幾個方面:第一,本系統的運行可以代替人工進行許多繁雜的勞動;第二,本系統的運行可以節省許多資源;第三,本系統的運行可以提高公司的工作效率;第四,本系統可以使敏感文檔更加平安。所以,本系統在經濟上是可行的。技術上可行性:本系統的開發是使用asp作為網站開發的開發環境,它作為一種現代的編程語言,提供完善的指令控制語句、類與對象的支持及豐富的數據類型,給開發高性能系統提供的保障為開發滿足客戶要求的系統,保證了代碼的模塊化要求,而代碼模塊化的提高,非常有利于以后對新系統的擴展與修改。綜上所述,本系統的設計與開發在技術上和硬件設備上的條件都是滿足的,因此,它在技術上是可行的。運行上可行性:本系統為一個小型的公司辦公化系統,所消耗的資源非常的小,一般的電腦在硬件還是軟件都能夠滿足條件,因此,本系統在運行上是可行的。法律可行性:本系統純為畢業設計,在開發過程中沒有涉及合同、責任等與法律相抵觸的方面。因此,本系統在法律上是可行的。1.2開發工具及開發環境概述SP語言和VBScriptASP〔ActiveServerPages動態網頁〕是微軟公司推出的一種用以取代CGI〔CommonGatewayInterface通用網關接口〕的技術。目前,Internet上的許多基于Windows平臺的Web站點已開始應用ASP來替換CGI。簡單地講,ASP是一個位于效勞器端的腳本運行環境,通過這種環境,用戶可以創立和運行動態的交互式Web效勞器應用程序,如交互式動態網頁,包括使用HTML表單收集和處理信息,上傳與下載等等。通常情況下,用戶通過瀏覽器看到的網頁大多是靜態的,目前Internet上的許多站點,仍然提供“靜態〞〔static〕的主頁內容。所謂“靜態〞,指的就是站點的主頁內容是“固定不變〞的。當瀏覽器通過Internet的〔HypertextTransportProtocol〕協議,向站點效勞器〔WebServer〕要求提供主頁的內容時,站點效勞器收到要求后,就傳送原已設計好的靜態的HTML的文件數據給瀏覽器。一個“靜態〞的站點,假設要更新主頁的內容,必須手動的來更新其HTML的文件數據。而隨著Web應用的開展,用戶希望能夠看到根據要求而動態生成的主頁,例如響應用戶查詢數據庫的要求、生成報表等。當在瀏覽器上填好表單〔form〕的輸入數據,以提供要求時,可以在站點效勞器中執行的應用程序,而不只是一個HTML文件。站點效勞器收到要求執行的應用程序,分析表單〔form〕的輸入數據,將執行的結果以HTML的格式傳送給瀏覽器。根據用戶請求生成動態主頁的傳統方法有CGI、ISAPI等。CGI是根據瀏覽器端的請求激活響應進程,每一個請求對應一個進程。當同時有很多請求時,程序擠占系統資源,造成效率低下;ISAPI針對這一缺點進行改進,利用dll〔動態鏈接庫〕技術,以線程代替進程,提高了性能和速度,但要考慮線程的同步問題,而且開發步驟煩瑣。這兩種技術和另一普遍使用的開發動態網頁的技術Java都還存在著另外一個問題,那就是開發困難,程序的開發和HTML寫作是兩個完全不同的過程,需要專門的程序員開發。而較簡單的開發技術如javascript和IDC〔InternetDatabaseConnector〕等功能有限,不敷使用。ASP使用的ActiveX技術基于開放設計環境,用戶可以自己定義和制作組件參加其中,使自己的動態網頁幾乎具有無限的擴充能力,這是傳統的CGI等程序所遠遠不及的地方。ASP與常見的在Client端實現動態主頁的技術如Javaapplet、ActiveXControl、VBScript、javascript等不同,ASP中的命令和Script語句都是由效勞器來解釋執行的,執行結果產生動態生成的Web頁面并送到瀏覽器;而Client端技術的Script命令那么是由瀏覽器來解釋執行。由于ASP是在效勞器端解釋執行,開發者可以不必考慮瀏覽器是否支持ASP;同時由于它在效勞器端執行,開發者也不必擔憂別人下載程序從而竊取編程邏輯。ASP通過后綴名為.asp的ASP文件來實現,一個.asp文件相當于一個可執行文件,因此必須放在Web效勞器上有可執行權限的目錄下。當用戶從瀏覽器輸入了.asp文件的地址后,瀏覽器就將這個URL請求發給WebServer,如果WebServer上裝了ASP,就調用ASP。ASP讀出相應.asp文件,解釋并執行命令,動態生成一個HTML頁面回傳WebServer,然后WebServer再把結果發送給瀏覽器。ASP文件的制作和HTML類似,且和HTML開發集成,可以在同一個過程完成,利用ASP將可以執行的腳本嵌入到HTML文件中〔將HTML文件的后綴名改為.asp〕,這使得HTML文件的編寫與腳本的開發融合在一起。通過ASP內置的對象、效勞器組件〔ServerComponent〕可以完成非常復雜的任務,而且用戶還可以自己開發或利用別人開發的效勞器組件完成專門的任務。ASP比較網關及效勞器擴展模式有著以下優點:〔1〕完全與HTML文件融合在一起;〔2〕容易創立,不需要其它編譯、鏈接程序;〔3〕面向對象的并通過ActiveXServer對象可擴展。ASP的特點:任何開發工具皆可開展ASP,只要使用一般的文書編輯程序,如Windows記事本,就可以編輯。當然,其他網頁開展工具,例如,FrontPageExpress、FrontPage等也都可以;不過還是建議你用記事本來寫,既省錢又方便,假設是使用那些所見即所得的網頁編輯來寫ASP,可能會發生一些意想不到的離奇狀態。

通吃各家瀏覽由于ASP程序是在網絡效勞器端中執行,執行結果所產生的HTML文件適用于不同的瀏覽器。語言相容性高:ASP與所有的ActiveXScript語言都相容,除了可結合HTML,VBScript、JavaScript、ActiveX效勞器組件來設計外,并可經由plug-In〔外掛組件模組〕的方式,使用其他廠商〔ThirdParty〕所提供的語言。隱密平安性高:如果我們在瀏覽器中直接查看網頁的原始代碼,就只能看到HTML文件,原始的ASP程序代碼是看不到的!這是因杰ASP程序先于網站效勞〔WebServer〕端執行后,將結果轉換成標準HTML文件,再傳送到客戶端〔Client〕的瀏覽器上,因此,我們所辛苦撰寫的ASP程序并不會輕易地被看見進而被盜用。易于操控數據庫:ASP可以輕易地通過ODBC〔OpenDatabaseConnectivity〕驅動程序連接各種不同的數據庫,例如:Acess、Foxpro、dBase、Oracle等等,另外,ASP亦可將“文本文件〞或是〞Excel〞文件當成數據庫用。面向對象學習容易:ASP具備有面向對象〔Object-Oriented〕功能,學習容易,ASP提供了五種方便能力強大的內建對象:Request、Response、Sever、Application以及Session,同時,假設使用ASP內建的“Application〞對象或〞Session〞對象所撰寫出來的ASP程序可以在多個網頁之間暫時保存必要的信息。ASP內部6大對象:ASP提供了6個功能強大的內部對象,每個對象具有各自的屬性〔Property〕、方法〔Method〕,有的還擁有數據集合〔Collection〕與事件〔Event〕,它們共同完成Web中的一些重要工作。這6個對象及其功能描述如表1-1所示。表1-1ASP內部6大對象及其功能對象名稱功能描述Request從客戶端取得信息Response將信息送給客戶端Server提供一些Web效勞器工具Session儲存在一個Session內的用戶信息,該信息僅可被該用戶訪問Application在一個ASP-Application中讓不同的客戶端共享信息ObjectContext配合MicrosoftTransaction效勞器進行分布式事務處理合理地運用這些對象可以使原本復雜,煩瑣的工作變得簡捷而條理清晰。我們可以用以下的語法直接使用這些對象:對象/屬性/方法/數據集合。VBScript是程序開發語言VisualBasic的一個子集,是ASP默認的腳本編程語言。VBScript語言易學易用,以對象為根底,對象根底語言不僅支持對象的屬性和成員函數,而且可以用來編寫動作并反映出和對象相關的事件,在VBScript中,可以非常容易的使用ASP的內建對象。在網頁設計過程中使用VBScript語言,一般是在HTML文件中嵌入VBScript腳本,用以擴展HTML的功能,從而獲得單憑HTML語言無法取得的效果。VBScript也是默認情況下ASP的主腳本語言,它用來處理在分界符“<%〞和“%>〞內部的命令。DreamweaverDreamweaver與其它同類軟件相比主要有以下優點:不生成冗余代碼:可視化的網頁編輯器,都要把使用者的操作轉換成HTML代碼。一般的編輯器都會生成大量的冗余代碼,給網頁以后的修改帶來了極大的不方便,同時還增加了網頁文件的大小。Dreamweaver那么在使用時完全不生成冗余代碼,防止了諸多麻煩。而且,通過設置,還可用Dreamweaver去除掉網頁文件原有的冗余代碼。方便的代碼編輯:可視化編輯和源代碼編輯都有其長處和短處。有時候,直接用源代碼編輯會很有效。Dreamweaver提供了HTML快速編輯器和自建的HTML編輯器,能方便自如的在可視化編輯狀態和源代碼編輯狀態間切換。強大的動態頁面支持:Dreamweaver的Behavior能在使用者不懂javascript的情況下,往網頁中參加豐富的動態效果。Dreamweaver還可精確的對層進行定位,再加上timeline功能,可生成動感十足的動態層效果。操作簡便:首先,Dreamweaver提供的歷史面板、HTML樣式、模版、庫等功能防止了重復勞動,使用者不必重復輸入相同的內容、格式。其次,Dreamweaver能直接往頁面中插入Flash、Shockwave等插件,經過設置后還可直接調用相應的軟件對這些插件進行編輯。最后,Dreamweaver與Fireworks集成緊密,可直接調用Fireworks對頁面的圖象進行修改、優化。優秀的網站管理功能:在定義的本地站點中,改變文件的名稱、位置,Dreamweaver會自動更新相應的超級鏈接。Checkin和Checkout功能可協調多個使用者對遠程站點的管理。便于擴展:使用者可給Dreamweaver安裝各種插件,使其功能更強大。使用者假設有興趣,還可自己給Dreamweaver制作插件,使Dreamweaver更適應個人的需求。Dreamweaver有兩組共八種浮動面板。浮動面板浮動在主窗口上,可隨意移動。這兩組浮動面板各含有四種,每次顯示一種,可用鼠標點擊面板的標題欄來進行切換顯示。還可用鼠標拖動各面板的標題欄,來分化、組合各組面板。每種面板均有不同的功能。Dreamweaver的主要工作區域是Objects、Properties和Launcher三個面板。Objects面板還是浮動在主窗口上,可隨意移動。點擊Objects面板上的圖標是往頁面插入相應的頁面元素。Properties面板同樣是浮動在主窗口上,可隨意移動。Properties面板是用來設置選定的頁面元素的屬性。Launcher面板也浮動在主窗口上,可隨意移動。點擊Launcher面板上的圖標可翻開相應的窗口或浮動面板。1.2.3IIS〔InternetInformationServer〕簡介IIS是InternetInformationServer的縮寫,它是微軟公司主推的效勞器,最新的版本是Windows2000里面包含的IIS5,IIS與WindowNTServer完全集成在一起,因而用戶能夠利用WindowsNTServer和NTFS〔NTFileSystem,NT的文件系統〕內置的平安特性,建立強大,靈活而平安的Internet和Intranet站點。IIS支持〔HypertextTransferProtocol,超文本傳輸協議〕,FTP〔FeleTransferProtocol,文件傳輸協議〕以及SMTP協議,通過使用CGI和ISAPI,IIS可以得到高度的擴展。IIS支持與語言無關的腳本編寫和組件,通過IIS,開發人員就可以開發新一代動態的,富有魅力的Web站點。IIS不需要開發人員學習新的腳本語言或者編譯應用程序,IIS完全支持VBScript,JScript開發軟件以及Java,它也支持CGI和WinCGI,以及ISAPI擴展和過濾器。IIS支持效勞器應用的MicrosoftBackOffice系列,MicrosoftBackOffice系列包括以下內容:1.MicrosoftExchangeServer客戶/效勞器通訊和群組軟件;2.MirrosoftProxyServer代理效勞器;3.用于連接IBM企業網絡的MicrosoftSNAServer;4.用于集中管理分布式系統的MicrosoftSystemsManagementServer;5.MicrosoftCommercialInternetSystem〔MCIS〕。IIS的設計目的是建立一套集成的效勞器效勞,用以支持,FTP和SMTP,它能夠提供快速且集成了現有產品,同時可擴展的Internet效勞器。IIS相應性極高,同時系統資源的消耗也是最少,IIS的安裝,管理和配置都相當簡單,這是因為IIS與WindowsNTServer網絡操作系統緊密的集成在一起,另外,IIS還使用與WindowsNTServer相同的SAM〔SecurityAccountsManager,平安性賬號管理器〕,對于管理員來說,IIS使用諸如PerformanceMonitor和SNMP〔SimpleNerworkManagementProtocol,簡單網絡管理協議〕之類的NT已有管理工具。IIS支持ISAPI,使用ISAPI可以擴展效勞器功能,而使用ISAPI過濾器可以預先處理和事后處理儲存在IIS上的數據。用于32位Windows應用程序的Internet擴展可以把FTP,SMTP和協議置于容易使用且任務集中的界面中,這些界面將Internet應用程序的使用大大簡化,IIS也支持MIME〔MultipurposeInternetMailExtensions,多用于Internet郵件擴展〕,它可以為Internet應用程序的訪問提供一個簡單的注冊項。IIS的一個重要特性是支持ASP。IIS3.0版本以后引入了ASP,可以很容易的張貼動態內容和開發基于Web的應用程序。對于諸如VBScript,JScript開發軟件,或者由VisualBasic,Java,VisualC++開發系統,以及現有的CGI和WinCGI腳本開發的應用程序,IIS都提供強大的本地支持。IIS效勞器具有以下一些特性:1.IIS可以賦予一部主機電腦一組以上的IP地址,而且還可以有一個以上的域名作為Web網站,您可以利用TCP/IP內容設置兩組以上的IP地址給它,除了為網卡再加進一組IP地址之外,必須在負責這個點的DNS上為這組IP地址指定另一個域名,完成這些步驟以后,在InternetServiceManage中就會出現一個虛擬Web效勞器,虛擬效勞器〔VirtualServer〕必須有它自己的主目錄〔homedirectory〕,對于IIS來說,所有效勞器都是它的虛擬效勞器。2.在互聯網上,有很多網站需要多部效勞器才能夠應付來自用戶端的請求,這就需要利用DNS所具有的功能,將一組以上的IP指定給同一個域名,每當這個網站接到效勞要求,由DNS負責進行解析,它會指定域名的下一組IP地址給它,假設要求采用這套做法,效勞器的內容必須逐一復制到每一部效勞器上。IIS體系架構:IIS和WindowsNTServer是緊密的結合在一起的,IIS的組成元件是以效勞程序的形式在后臺執行的,用戶端利用TCP/IP協議連接上IIS,TCP/IP協議是有以下比較重要的四層〔Layer〕所組成的:1.LinkLayer:作為WindowsNT操作系統和網卡以及網絡驅動程序之間的界面。2.NetworkLayer:負責控制資料包在網絡上的移動,IP〔InternetProtocol〕即位于這一層。3.TransportLayer:負責用戶端到效勞器之間的信息的移動,TCP〔TransmissionControlProtocol〕即位于此層。4.ApplicationLayer:管理較低層和應用程序之間的連接端口,Socket即位于此層。作為MMC〔MicrosoftManagementConsole〕的一局部,InternetServiceManager〔ISM〕主要負責IIS提供效勞的一些設置組態的管理,InternetServiceManager可以用來增強信息效勞器的配置和性能,InternetServiceManager可以幫助用戶在網絡中任何一臺運行WindowsNTServer網絡操作系統的計算機上,配置和監視所有的Internet效勞。InternetServiceManager位于MicrosoftInternetServer組中。通過選擇InternetServiceManager超文本管理器,用戶可以采用HTML界面使用InternetServiceManager。對HTML管理平臺版本唯一的限制是,不能通過這個界面結束或者啟動效勞器上的Internet效勞。IIS提供的效勞:IIS主要集成了WindowsNTServer網絡操作系統的三個Web效勞器功能,這些功能是通過標準協議傳輸數據的,所有的IIS效勞〔WWW,FTP和SMTP〕都是單進程多線程的體系結構,用以優化性能。WWW使用的客戶/效勞器協議是,這意味著客戶和效勞器需要交互作用,以執行特定的任務,例如:用戶在Web上的HTML頁面上單擊一個超級連接,結果屏幕上現有的頁面會被新的頁面所代替,IIS通過WindowsSockets來支持,目前的IIS支持1.1版本。FTP是在TCP/IP網絡上兩個計算機之間傳輸文件時使用的協議,IIS通過WindowsSockets來支持FTP,盡管現在使用FTP用戶界面的人越來越少,但是這個協議仍然將在一段時間內用來傳輸文件,因為它幾經被Internet用戶廣為接受,FTP使用TCP作為它的客戶和效勞器之間進行所有通信和交換的傳輸協議,而IIS那么是以WindowsSockets與TCP打交道的。所有標準Internet效勞〔如FTP和〕都位于稱為Inetinfo〔InternetInformationServicesApplication,Internet信息效勞應用〕的進程中,除了這些Internet效勞外,該進程還包含了共享線程池,緩存,紀錄和SNMP效勞。和FTP運行與同一進程中,因此它們可以共享緩存中的數據,例如文件句柄,賬號信息以及日志文件數據等。您可以使用紀錄跟蹤正在訪問你的節點的那些用戶,并控制什么時候可以訪問節點,對用戶進行跟蹤可以幫助確定平安性和性能問題,跟蹤信息可以直接紀錄到日志文件,這樣可以脫機進行處理,以獲得更好的性能,同樣也可以紀錄到數據庫中,以進行動態的評價。利用ADO訪問數據庫ADO〔ActiveXDataObjects〕是一種操作Microsoft所支持的數據庫的新技術。在ASP中,ADO可以看作是一個效勞器組件〔ServerComponent〕,更簡單點說,是一系列的對象,應用這些功能強大的對象,即可輕松完成對數據庫復雜的操作。本文中個性化頁面的實現便大量地用到了ADO技術。具體的操作步驟可以歸納為以下幾步:1.創立數據庫源名〔DSN〕2.創立數據庫鏈接〔Connection〕3.創立數據對象4.操作數據庫5.關閉數據對象和鏈接詳細作法如下:1、創立數據源名DSN〔DateSourceName〕即數據源名稱。我們知道,ODBC是一種訪問數據庫的方法,只要系統中有相應的ODBC驅動程序,任何程序就可以通過ODBC操縱驅動程序的數據庫。比方我們系統中有SQL的ODBC驅動程序,那么即使我們沒有SQL軟件,也可以在我們的程序中對一個SQL的MDB數據庫加、刪、改記錄。而且我們根本不用知道這個數據庫是放在哪里的。我們只要寫出SQL語句,ODBC驅動程序就會幫我們做一切事情。我們在給ODBC驅動程序傳SQL指令時,即是用DSN來告訴它到底操作的是哪一個數據庫。如果數據庫的平臺變了,比方我們改用了Access的數據庫,只要其中表的結構沒變,我們就不用改寫我們的程序,只要重新在系統中配置DSN就行了。由此可見,DSN是應用程序和數據庫之間的橋梁。2、創立數據庫鏈接〔Connection〕鏈接用以保持一些關于正在訪問的數據的一些狀態信息,以及鏈接者信息。ASP文件中如果要訪問數據,必須首先創立與數據庫的鏈接,其語法如下:setConn=Server.createObject〔“ADOBD.CONNECTION〞〕這條語句創立了鏈接對象Conn,接下來:conn.Openconnstr這條語句翻開鏈接,用到了DSN,本例為“connstr〞。以上兩個步驟缺一不可,因為鏈接對象的創立與翻開是兩回事,只有翻開了才真正可以使用。3、創立數據對象〔RecordSet〕ADO中的數據對象通常保存的是查詢結果。RecordSet是ADO中最復雜的對象,有許多屬性和方法。RecordSet保存的是一行行的記錄,并標有一個當前記錄。以下是創立方法:SetRecordSet=Conn.Execute〔sqtStr〕這條語句創立并翻開了對象RecordSet,其中Con是先前創立的鏈接對象,rs是一個字串,代表一條標準的SQL語句。例如:rs=“SELECT*FROMshop_books〞SetRecordSet=mConn.Execute〔rs〕這條語句執行后,對象RecordSet中就保存了表tab1中的所有記錄。4、操作數據庫我們通過調用鏈接對象的Execute方法來將查詢結果返回給一個數據對象或進行插入、刪除等操作。例如:rs=“INSERTINTOtab1VALUES〔1,2〕〞mConn.Execute〔rs〕/執行插入操作5、關閉數據對象和鏈接對象在使用了ADO對象之后要關閉它,因為它使用了一定的效勞器資源。通過調用方法close實現關閉,然后再釋放它。RecordSet.closeSetRecordSet=Nothing/關閉創立的數據對象mConn.closeSetmConn=Nothing/關閉創立的鏈接對象

2需求分析現代企業的信息系統應用范圍越來越廣,信息量也越來越大。它們已經開始為決策層提供必要的決策支持信息。但是信息系統應該為決策層提供一個簡單、方便的手段,使之以盡可能直接、快捷的方式獲得其需要的信息。在企業OA系統首先就是效勞于管理層的,隨著其功能的日益強大和完善,信息查詢方便,易于跨平臺的優勢使之具備了聯接其他系統,提供查詢信息,效勞管理層的能力,OA的應用開始滲透進各應用系統,以統一的界面為管理層提供信息。其次,OA系統應用于企業的所有部門,是涉及員工最多的一個系統,為大多數員工所掌握,擁有廣泛的應用根底。而其他應用系統都有一定的適用范圍,應用于某一系統內部,不可能面向所有員工。因此將其作為企業信息化的綜合應用平臺易于為人們接受。企業選擇OA系統作為綜合應用平臺是目前較為適宜的選擇,隨著應用水平的不斷提高,企業信息綜合應用平臺的開展也會不斷的擴充和開展。在傳統的辦公模式中,辦公業務主要是通過手工來完成的,勢必帶來工作效率低、資源浪費的問題。雖然可以利用通信、印刷和計算機等現代辦公設備,仍然不能從根本上改變辦公人員勞動強度大、工作效率低的局面。因此,要提高企業的現代化管理水平和工作效率,必須建立一套以計算機網絡為根底、結合了科學管理思想和行為科學的辦公自動化〔OA〕系統來促進辦公活動的標準化和制度化。2.1研究的目的及存在的問題研究的意義及類研究工作國內外現狀和存在的問題辦公自動化是近年來開展迅速的一項技術,在國內外已經廣泛運用,已成為現代化管理中的一個重要局部,是否采用辦公自動化,是衡量一個單位管理水平的重要標志之一。在我國,辦公自動化的研究和實踐,經過了一段時間的寂靜,從最近幾年開始呈現迅猛的開展勢頭,尤其是LotusNotes的流行和政府上網工程的開展,似乎在一夜之間,辦公自動化已經成了政府機關、工礦企業、公司、高等院校、研究機構等單位的必備工具。計算機技術尤其使網絡技術、通訊技術、數據庫技術、多媒體技術、虛擬現實技術等的飛速開展和應用,使辦公自動化的開展又呈現出新的景象。〔1〕計算機網絡技術的成熟與普及,使得許多單位建立了自己的局域網和廣域網,并與Internet相連,形成了完善的信息流轉通路。〔2〕經過多年的不泄努力,建立了許多以數據庫為根底的應用,積累了大量珍貴的信息資源,鍛煉和培養了一批信息技術開發應用人員,整個工作人員使用計算機的能力和積極性都有了很大提高。〔3〕以MicrosoftOffice、MicrosoftOutlook、LotusNotes為代表辦公軟件的完善,使辦公過程中公文的流轉得以順利實現,同時多媒體、數字簽名等技術的應用,又使電子公文能得到普遍認可,初步解決了電子文檔的法律問題。〔4〕在新世紀帶來之際,我國“政府上網〞工程的開展,極大地調動了政府機關、企業公司信息化建設的積極性,為辦公自動化帶來了新的開展契機。實施辦公自動化存在的一些問題辦公自動化不同于簡單的自動化設備,各種辦公自動化軟件的成功應用,需要多方面的支持。目前困擾辦公自動化的應用主要有如下一些問題:〔1〕系統的平安難以令人滿意〔2〕與辦公自動化相適應的規章制度不健全〔3〕自動化與手工操作的矛盾〔4〕需要領導的重視和工作人員的支持〔5〕慎重選擇適合自身條件的設備、軟件和效勞廠商研究目標及內容辦公自動化系統的軟件可以采用C/S〔Client/Server,客戶/效勞器〕、B/S〔Browser/Server〕,瀏覽器/效勞器〕或者二者的混合體系結構。內容:建設一個平安、可靠、開放、高效的信息管理電子化、辦公自動化系統,為用戶提供現代化的日常辦公條件及豐富的綜合信息效勞,實現檔案管理自動化和辦公事務處理自動化,以提高辦公效率和管理水平,實現企業各部門日常業務工作的標準化、電子化、標準化;能實現信息在線查詢、借閱,最終實現“無紙〞辦公。2.2需求分析系統具有以下功能:·管理系統用戶,由于該系統的使用對象多,要求有較好的權限管理。·管理企業的會議信息,發文信息、公共信息。·提供個人辦公效勞。·對企業員工根本情況進行全面管理。·設置生產數據統計、打印功能。·對企業制定的采購方案進行管理。·對庫存信息進行管理。·發布企業的生產指標,對其進行管理。·強大的生產數據統計功能。·當外界環境〔停電、網絡病毒〕干擾本系統時,系統可以自動保護原始數據的平安。·在相應的權限下,刪除數據方便簡單,數據穩定性好。·數據計算自動完成,盡量減少人工干預。·系統退出。主要功能介紹及結構圖本系統分為下述的三個模塊:員工信息管理系統、公司財務信息管理系統和公司內部信息交流系統〔如圖2-1所示〕。對于公司員工信息管理系統,除員工信息查詢外,還具有擁護修改個人信息頁面,系統管理員頁面,添加新用戶頁面和修改某個用戶信息頁面。對于公司財務管理系統,可以具體細化為添加新財務信息記錄頁面,添加新財務工程頁面,生成各種財務報表頁面和修改某個財務記錄頁面。公司公司財務信息查詢管理系統員工信息管理系統員工信息管理系統企業內部辦公網主頁企業用戶登錄頁面圖2-1主要功能圖對于公司內部信息交流系統,可以具體細化為內部通知公告牌頁面,發布新通知頁面,修改某個通知頁面,意見箱頁面,意見分析頁面,投票站頁面和投票分析頁面。系統登錄頁面系統登錄頁面公司內部辦公信息管理系統主頁面員工信息管理主頁面財務信息管理主頁面修改個人信息頁面員工信息管理主頁面添加新用戶頁面修改用戶信息頁面添加新財務信息頁面生成財務報表頁面修改財務信息頁面內部信息交流主頁面添加新財務工程頁面內部通知公告牌頁面意見箱頁面投票站頁面發送新通知信息頁面修改通知信息頁面意見建議批閱頁面進行投票頁面圖2-2頁面邏輯結構示意圖圖2-2是整個系統的頁面邏輯結構示意圖。分析系統數據要求根據系統功能設計的要求,對于系統用戶信息數據庫,有以下數據項和數據結構:·用戶信息:用戶ID、登陸名、用戶姓名、密碼、E-mail、部門、職位、內部、家庭、移動、QQ號、家庭地址、系統管理員權限、生日、財務管理員權限、性別、教育程度、備注。對于財務信息管理系統,有以下數據項和數據結構:·財務記錄信息:財務記錄ID、財務記錄經手人、部門、所屬財務工程名稱、各種具體款項〔A、B、C、D等〕、款項合計、摘要、備注、會計經手人、記錄添加日期、記錄修改日期。對于內部信息交流系統,有以下數據項和數據結構:·內部通知信息:同志ID、通知內容、通知類型、通知發送者、通知接收者、通知發送日期、通知發送時間、通知有效天數。·內部意見建議信息:意見建議ID、意見發送者、意見發送部門、意見類型、意見內容、意見處理狀態、意見處理評論、意見發送日期。·內部投票信息:投票ID、投票發起者、投票主題、套票開始時、總應投票人數。

3數據庫設計3.1數據庫設計原那么數據庫的設計原那么如下:第一,進行標準化設計,盡可能地減少數據冗余和重復:合理的數據庫表的設計應該是在滿足需求的前提下,使數據的重復量最小,就盡量按照關系數據庫系統理論方法去設計一個數據庫,減少數據的冗余。第二,結構設計與操作設計相結合:在設計數據庫結構時,有時為了編程實現的簡捷和思路的清晰,往往成心增加一些冗余數據。這雖然有悖于傳統的關系數據庫理論,但是考慮到選擇的機器型號和檔次等因素,如果增加的冗余不會明顯增加存儲空間和降低處理效率,并且對編程實現有很大幫助,往往可以采用這種方法。第三,數據結構具有相對的穩定性:數據結構的相對穩定性,可以作為新、舊系統轉換的依據。無論采用何種方法或手段去處理日常事務,都應該能完成相應的功能,決不會因為采用了計算機而喪失了必要的功能,或徹底改變了原有的工作流程和模式。計算機系統的建成是建立在原系統充分調研的根底上的,它既不能脫離原系統的大框架,也不是簡單的重復和替代。所以數據庫表結構設計應保證數據的相對穩定,這樣才能考慮在新的數據結構下的業務處理方式。3.2E-R圖及數據庫構建3.2.1E-R圖公司員工與部門E-R圖〔圖3-1〕,公司財務信息E-R圖〔圖3-2〕,通知、投票、意見E-R圖〔圖3-3〕分別如下。3.2.2數據庫表單1.數據庫表單設計根據系統功能設計的要求及功能模塊的劃分,各個系統的具體邏輯實現如下:對于系統用戶信息數據庫,有以下數據項和數據結構:用戶信息:用戶ID、登陸名、用戶姓名、密碼、E-mail、部門、職位、內部、家庭、移動、QQ號、家庭地址、系統管理員權限、生日、財務管理員權限、性別、教育程度、備注。用戶信息表所需的外部數據支持:·部門信息:部門編號、部門名稱。·職位信息:職位ID、職位名稱。對于財務信息管理系統,有以下數據項和數據結構:財務記錄信息:財務記錄ID、財務記錄經手人、部門、所屬財務工程名稱、各種具體款項、款項合計、摘要、備注、會計經手人、記錄添加日期、記錄修改日期。員工公司工作職位姓名員工公司工作職位姓名性別n1財務部工程部人事部行政部質控部財務信息財務信息員工管理財務部主管普通員工總經理財務部員工記錄經手人備注添加日期修改日期圖3-2公司財務信息E-R圖員工員工通知公告意見建議投票信息操作投票者姓名投票內容投票者ID投票問題ID通知內容通知類型通知發送者通知發送日期通知發送時間通知有效天數發送部門意見類型意見內容意見處理狀態意見發送者有效天數圖3-3通知、投票、意見E-R圖財務信息記錄表所需的外部數據支持:·財務工程信息:財務工程ID、財務工程名稱。·部門信息:可以從部門信息表中查處。·職位信息:可以從職位信息表中查處。·用戶權限信息:可以從系統用戶信息數據庫里獲得。對于內部信息交流系統中的內部通知局部,有以下數據項和數據結構:內部意見建議信息:意見建議ID、意見發送者、意見發送部門、意見類型、意見內容、意見處理狀態、意見處理評論、意見發送日期。內部意見建議信息表所需的外部數據支持:·意見類型信息:意見建議的類型。·部門信息:可以從系統用戶信息數據庫里獲得。·用戶權限信息:可以從系統用戶信息數據庫里獲得。對于內部信息交流系統中的內部投票局部,有以下數據項和數據結構:·投票信息:投票ID、投票者ID、投票者姓名、投票內容。·部門信息:可以從部門信息數據庫里獲得。·職位信息:可以從職位信息數據庫里獲得。·用戶權限信息:可以從系統用戶信息數據庫里獲得。2.數據庫表單1、記錄公司部門信息的數據表如表3-1所示。數據來源:一局部來源于注冊頁面,一局部來源管理員后臺操作。表3-1公司部門信息數據表〔Departments〕字段名稱數據類型說明DepartmentID自動編號部門IDDepartmentName文本部門名稱Remark備注備注2、公司職位信息數據表如表3-2所示。表3-2公司職位信息數據表〔Positions〕字段名稱數據類型說明ID自動編號PositionName文本字段名稱PositionID數字職位ID3、公司財務工程信息數據記錄在公司財務信息表中,如表3-3所示。數據來源:有財務管理權限的相關人員。表3-3公司財務工程信息數據表〔FinancialProject〕字段名稱數據類型說明FinancialProjectID自動編號FinancialProjectName文本財務工程名稱AddDate日期/時間工程添加時間FinancialManager文本工程主管4、系統用戶數據表記錄了系統用戶的各項信息,如表3-4。表3-4系統用戶信息數據表〔PSLogins〕字段名稱數據類型說明ID自動編號LoginID文本系統用戶的登陸名Name文本系統用戶的姓名Password文本用戶密碼EmalAddress文本用戶電子郵件地址Department文本用戶所在的部門Position文本用戶的職位InternalPhone文本用戶的內局部機號碼HomePhone文本用戶的家庭MobilePHone文本用戶的號QQ文本用戶的QQ號碼HomeAddress文本用戶的家庭住址IsSystemManager是/否用戶是否是系統管理員Birthday日期/時間用戶的生日IsFinancialManager是/否用戶是否是財務管理員Sex文本用戶性別Education文本用戶教育程度Remark備注5、公司財務信息表如表3-5記錄的是公司財務的各細項。數據來源:具有財務管理相應權限的員工。表3-5財務信息數據表〔FinancialRecotd〕字段名稱數據類型說明ID自動編號Name文本記錄經手人Department文本部門ProjectName文本所屬財務工程FundTypeA貨幣款項A的數額FundTypeB貨幣款項B的數額FundTypeC貨幣款項C的數額FundTypeD貨幣款項D的數額續表3-5字段名稱數據類型說明Sum貨幣各款項求和Summary文本摘要Remark文本備注AccountName文本會計經手人AddDate日期/時間記錄添加日期ModifyData日期/時間記錄修改日期6、公司通知公告牌數據項記錄在公司通知公告牌數據表中,如表3-6。表3-6通知公告牌數據表〔MessageBoard〕:字段名稱數據類型說明MessageID自動編號MessageContent文本通知內容MessageType文本通知類型MessageSender文本通知發送者MessageSendDate日期/時間通知發送日期MessageSendTime日期/時間通知發送時間MessageValidTime數字通知有效天數7、公司內部意見信息表記錄了公司內部意見信息的各細項,如表3-7表3-7內部意見信息數據表〔SuggestionRecords〕:字段名稱數據類型說明SuggestionID自動編號SenderName文本意見發送者ToDepartment文本意見發往部門SuggestionType文本意見類型SuggestionText備注意見內容Status文本意見處理狀態Comments文本意見處理評論WhenSent日期/時間意見發送日期8、投票問題信息數據表記錄了公司投票問題的各項細那么,如表3-8表3-8公司投票問題信息數據表〔VotingQuestions〕:字段名稱數據類型說明QuestionID編號SenderName文本投票發起者Subject文本投票主題Question備注投票內容WhenSent日期/時間投票開始時間VoterNumber數字總應投票人數9、公司內部意見類型數據表如表3-9表3-9公司內部意見類型數據表〔SuggestionTypes〕:字段名稱數據類型說明SuggestionType文本意見建議的類型10、公司投票信息表如表3-10表3-10投票信息數據表〔VotingVotes〕:字段名稱數據類型說明QuestionID數字投票問題IDVoterID文本投票者IDVoterName文本投票者姓名VOte文本投票內容4詳細設計與實現4.1登陸界面設置登錄頁面圖如圖4-1圖4-1登陸頁面圖系統登陸頁面:系統登陸頁面主要用于對用戶身份進行鑒別。在創立ASP應用程序時,在Global.asp里指定系統允許用戶嘗試登陸的次數,超過這個次數,系統將不再顯示登陸界面。登陸頁面用到的數據庫組件:登陸頁面使用了系統用戶信息表〔PSLogins〕對用戶ID,LoginID,Password字段進行身份鑒別,通過身份驗證后該頁面記錄用戶詳細信息留待以后的頁面使用。創立ASP應用程序:在global.asa文件中使用了Application_Onstart事件,創立了一個ASP應用程序來處理用戶登陸次數的信息。創立ASP應用程序的具體步驟為:翻開IIS效勞器,進入Web根目錄。單擊鼠標右鍵,彈出屬性對話框,在“應用程序設置〞里,創立ASP應用程序,名稱與Web根目錄同名,具有該應用程序執行功能的就是Global.asa文件。該文件是存放在Web應用程序根目錄下的一個文本文件。4.2系統主頁面系統主界面圖及主要功能系統主頁面如圖4-2,主頁面上有三個主要鏈接,分別指向內部系統的3個主要功能模塊。圖4-2系統功能主界面系統主頁面對用戶進行身份判斷,如果用戶通過了系統登陸頁面驗證,效勞器會分配一個ID給該用戶,用戶ID便不會為空,否那么說明用戶沒有通過登陸,系統將用戶導向系統登陸頁面。在系統中大局部頁面都要經過這一判斷。4.3員工信息管理系統主頁面員工信息管理系統主頁面圖及功能圖4-3信息管理系統的主頁面,用戶可以通過選擇不同的單項選擇按鈕進行相應的用戶信息查詢和管理功能。這個頁面重要動能有:·按照不同排序查詢所有員工記錄。·選擇查詢某一個部門全部員工的記錄。·選擇查詢某一個員工的記錄。·選擇查詢各個部門主管的記錄。·選擇修改用戶自己的員工記錄。·選擇進入管理員選項。圖4-3信息管理界面圖4.3.2修改個人信息主頁面修改個人信息頁面圖如圖4-4修改個人信息主頁面用到的數據庫組件有:系統用戶信息表〔PSLogins〕圖4-4修改個人信息頁面圖用戶提交表單以后先判斷表單元素Password里提交的密碼與用戶在Session里存儲的Password字段是否一致,如果正確可以進行信息更改,關鍵代碼為:IfRequest.Form〔〞Passward〞〕=Session〔〞Password〞〕then如果密碼不真確那么不能進行信息更改,關鍵代碼為:ElseTheMessage=〞您輸入的密碼不正確,請重試〞Endif用戶提供正確明碼情況下,還存在是否修改密碼的情況,一是用戶修改資料不修改密碼,另一種是用戶要修改密碼。〔這里只列出修改的情況,因為不修改密碼的情況跟修改的情況接近并相對簡單得多〕用戶要求修改自己密碼時,必須輸入兩次密碼,以確保用戶輸入正確,如果兩次密碼輸入相同,那么將用戶提交的表單信息更新到數據庫。4.3.3系統管理員頁面系統管理員頁面圖如圖4-5〔圖中顯示的是刪除成功的頁面圖〕。系統管理員根據不同的排序方式進入系統管理員頁面〔圖4-5是以姓名方式進入〕,可以選中要修改的用戶,可單擊“修改此用戶信息〞按鈕進入修改此用戶信息的頁面或單擊“刪除此用戶信息〞刪除選中的用戶或單擊“添加新用戶信息〞添加新用戶。該頁面使用的數據庫組件:系統用戶信息數據表。如果用戶提交刪除用戶按鈕〔Delet〕,這時就要判斷選中的是哪一個用戶,通過表單元素SelectWho的值來確定,如果未選擇用戶那么SelectWho為空,那么就不進行任何操作。圖4-5系統管理員頁面圖4.3.4管理員修改用戶信息頁面管理員修改用戶信息頁面如圖4-6〔圖中顯示的是修改成功后的頁面圖〕。當系統管理員進入此頁面,頁面表單元素顯示此前管理員選中的用戶詳細信息,管理員可以在這里對員工信息的各個字段進行修改。頁面使用的數據庫組件:系統用戶信息數據表〔PSLogins〕,部門信息數據表〔Departments〕和職位信息表〔Positions〕。首先對連接的用戶進行身份識別,必須是登陸用戶并且具有管理員身份才能瀏覽此頁,否那么重新導向系統登陸頁面。圖4-6管理員修改用戶信息頁面4.3.5員工信息管理系統添加新用戶頁面系統管理員可以通過這個頁面添加新用戶信息時登陸名,姓名,密碼是必須填寫的元素〔如圖4-7〕。頁面使用的數據庫組件為:系統用戶信息數據表〔PSLogins〕,部門信息數據表〔Departments〕和職位信息表〔Positions〕。圖4-7添加用戶界面點擊添加按鈕,系統要對用戶提交的新用戶信息表單進行校驗,其中登陸名〔LoginID〕、用戶姓名〔Name〕和用戶密碼〔Password〕不能為空。校驗通過那么將新用戶信息插入數據庫中。4.4公司財務信息管理系統主頁面公司財務信息管理系統主頁面如圖4-8所示。圖4-8公司財務信息管理界面公司財務信息管理系統的權限設置財務系統對一個公司來說必須有清晰的權限規定,在這個系統里我把財務權限相關的身份分以下五種,從低到高排列如下:·普通員工〔即普通系統用戶〕,具有最低財務權限,只能瀏覽自己的個人財務報表。·部門主管,除普通員工權限外還具有查看部門財務報表權限。·財務管理員,除普通員工權限外,還具有添加和修改財務記錄的權限。·財務部主管,本身即具有財務管理人員權限,還具有瀏覽總流水帳財務報表的權限。·經理,除普通員工權限外,還可以瀏覽各種財務報表。具體權限設置:·只有財務管理人員才具有錄入財務記錄、瀏覽財務工程的權限。其他任何人都不能添加財務記錄。只有財務主管才可以增加和刪除財務工程的權限。·對總流水帳報表,只有公司經理、財務主管可以瀏覽;對部門財務報表,只有公司經理和部門的主管可以瀏覽;對工程財務報表,只有公司經理和此工程的主管可以瀏覽;對個人財務報表,只有公司經理和此員工可以瀏覽。·只有財務管理人員才可以修改財務記錄,財務管理人員不能修高所有記錄,只能修改他自己經手的那些記錄。公司財務管理系統的主要功能模塊·只有財務管理人員才可以進入添加財務信息記錄模塊〔如圖4-9〕。·所有系統用戶都可以進入生成財務報表模塊。·只有財務管理人員才可以進入修改財務記錄模塊。圖4-9公司財務管理系統的主要功能模塊圖添加新財務信息記錄頁面公司財務管理人員能添加新的財務記錄,記錄包括:財務經手人、部門、隸屬的財務工程、各個款項和數額、會計經手人〔如圖4-10〕。圖4-10添加新財務信息記錄頁面頁面使用的數據庫組件為:系統用戶信息數據表〔PSLogins〕,部門信息數據表〔Departments〕,財務工程信息表〔FinancialProjects〕和財務記錄信息表〔FinancialRecords〕。該頁面的主要功能:·這里設置了一個BOOL型變量Warning,表示頁面出現的系統提示信息是否為警告信息,如果是,那么把信息設為紅色。·對財務經手人和財務工程進行校驗,判斷經手人和財務工程是否存在,如不存在給出相應提示。添加新財務工程頁面具有財務管理員身份的用戶都可以看到這個頁面,但是只有財務部主管才可以添加或修改財務工程操作〔如圖4-11,圖中顯示的是添加不成功頁面〕。身份校驗的過程同上個頁面的功能,判斷用戶是否是財務部主管。頁面使用的數據庫組件有:財務工程信息表〔FinancialProjects〕和系統用戶信息數據表〔PSLogins〕。4-11添加新財務工程頁面生成財務信息報表頁面系統用戶可以通過該頁生成4種報表,各個表及表格的權限設置如下:·總流水帳報表是所有財務記錄報表,只有公司經理和財務部主管才有權利瀏覽。·部門財務報表是某個部門所有財務記錄的報表,只有公司經理和相應部門的主管可以瀏覽。·工程財務報表是某個財務工程的所有財務記錄報表,只有公司經理和該工程的主管可以瀏覽。·個人財務報表是某個經手人所經手過的所有財務記錄報表,只有公司經理和此經手員工可以瀏覽。在該頁面中,先進行身份校驗,由上面可以看出,該頁面要進行相關操作所要進行的身份校驗是不一樣的,所以該頁面的代碼相對來說比較復雜。主頁面圖如圖4-12〔圖中顯示的是無權修改的頁面〕:在時間是否有時間期限限制時,為了使SQL語句簡單,用了StartDate和EndDate來存儲報表的起始時間和截止時間,如果選擇無時間期限限制,就把StartDate和EndDate分別設置為“0000-1-1〞和“9999-12-31〞,這里用的是一個字符串變量TheTimeLimit來存儲生成報表有無時間限制的信息。關鍵代碼這里就不詳細列出了。圖4-12生成財務信息報表頁面校驗身份通過后,在查詢數據庫中會生成一個記錄集RSAllFinancialTecord來存儲財務記錄以備輸出,上述四種類型的報表的記錄內容都記錄在這個記錄集里,所以HTML局部輸出時只要對這個記錄集輸出就可以了。在報表狀態,利用Response對象的write輸出RSAllFinancialTecord記錄集,對RSAllFinancialTecord進行循環輸出時,要對個數目進行求和,關鍵代碼如下:該頁面中使用到的數據庫組件有:財務記錄信息表〔FinanicialRecord〕、部門信息表〔Departments〕、財務工程信息表〔FinancialProject〕和系統用戶信息表〔PSLogins〕。修改財務信息頁面頁面圖如圖4-13。圖4-13修改財務信息頁面頁面分三種狀態:·用戶第一次進入,可以選擇要修改的財務記錄查詢條件,有四種條件:財務記錄的ID號,財務記錄所屬的財務工程,財務記錄的經手人和財務記錄的添加日期,用戶可以任意組合來查詢需要的財務記錄。·用戶點擊“查詢符合條件的財務記錄〞按鈕,頁面顯示符合條件的所有記錄。·用戶選擇某個財務記錄并點擊“選種某條財務記錄〞按鈕,那么頁面顯示該財務記錄的修改頁面。該頁面的難點:如上所述,頁面分三個狀態,分別為查詢條件狀態、查詢結果狀態和修改某個記錄狀態。這里使用了變量QueryLabel來表示這三種狀態,分別設為1、2、3。而在查詢狀態又使用了四個字符串變量〔sql1,sql2,sql3,sql4〕來記錄四個查詢條件,如果用戶選擇了某個查詢條件,那么字符串設為相應的字符串變量,如果沒有選擇這個查詢條件,那么將字符串設為空值。在本頁面的HTML局部,根據QueryLabel的值,輸出相應狀態的HTML頁面。頁面使用的數據庫組件有:財務記錄信息表〔FinanicialRecord〕、財務工程信息表〔FinancialProject〕和系統用戶信息表〔PSLogins〕。4.5內部信息交流系統主頁面內部信息交流系統主頁面圖4-14。圖4-14內部信息交流系統主頁面圖內部信息交流系統頁面圖和主要功能該頁面分3個鏈接,分別指向內部通知公告牌頁面〔MessageBorad.asp〕、意見箱頁面〔SuggestionBox.asp〕和投票站頁面〔Voting.asp〕。頁面下方顯示當日并且是有效的公司所有內部公共通知。頁面使用的數據庫組件有:內部信息表〔MessageBoard〕。內部通知公告牌頁面頁面功能,公司內部的通知分成了3類〔頁面如圖4-15〕:·公共通知,所有人都看得到·部門通知,只有部門內員工能見。·個人通知,只有被通知人可以看見。所以用戶進入該頁面可以看到三類通知:集體通知、所在部門的通知和其他員工發給你的通知。還有一列按鈕:修改某條通知、刪除某條通知、發送新通知和管理員清空過期通知。管理員具有刪除任何公共和部門通知的權限。該頁面使用的數據庫組件有:內部信息表〔MessageBoard〕。圖4-15內部通知公告牌頁面發送新通知信息頁面在這里可以發送三類通知:發送給全體員工的公共通知,發送給某個部門的部門通知和發送給某個用戶的個人通知,同時還可以設置新通知的有效天數〔如圖4-16〕。通知確認的過程:·身份校驗,通過,那么連接數據庫。·發送通知,先判斷通知類型,這里存儲在一個字符串變量TheMessageType中。這里把新通知插入數據庫時,使用Session對象的Name作為通知發送者,用系統時間做為通知發送時間。頁面使用的數據庫組件有:內部通知信息表,系統用戶表和部門信息表。圖4-16發送新通知信息頁面修改某條通知信息頁面用戶可以修改選中的通知的兩個內容:通知有效天數和通知內容〔如圖4-17〕。過程:首先判斷用戶是否登陸,并校驗Session對象里MessageID是否為空,如果為空,那么用戶沒有選擇通知ID,回到主頁面。校驗通過,連接數據庫。用戶提交修改通知按鈕,獲取用戶提交的修改后通知的信息〔內容不能為空〕,更新數據庫,更新數據庫后此條通知的發送時間和日期將再一次和系統時間同步。圖4-17修改某條通知信息頁面意見箱頁面用戶可以選擇向不同的部門主管提交建議。用戶提交意見后,系統將自己動查詢此部門主管的電子郵件地址并發送電子郵件給該主管,電子郵件包括意見發送者和意見發送的內容,同時還還有一個此意見的鏈接,郵件接收者可以通過這個鏈接訪問意見批閱界面,進行意見的批閱。用戶還可以點擊“查看我的意見〞查詢所有已經被處理過的自己曾機提交過的意見反響情況〔如圖4-18〕。主要步驟和過程:首先校驗用戶身份并連接數據庫,所有登陸用戶都能進入該頁面。用戶點擊“提交我的意見〞后,系統收集用戶提交的表單信息,將意見插入數據庫中。意見發送時間為系統時間,意見狀態統一設置為“未處理〞。下一步,程序把用戶提交的意見以電子郵件的方式發送給相關部門主管,先確認意見的ID,該ID是系統自動編號的,然后查詢發往部門主管的電子郵件地址。圖4-18意見箱頁面小結:在提供給部門主觀鏈接地址時,使用了QueryString來指定此條意見的ID,格式為:Analysis.asp?S頁面使用的數據庫組件有:部門信息數據表〔Departments〕,意見建議類型數據表〔SuggestionTypes〕和意見建議信息表〔SuggestionRecords〕。意見建議批閱頁面部門主管收到關于某條意見的電子郵件并點擊郵件里提供的鏈接地址,便可以進入批閱界面,部門主管可以對意見進行處理并回復意見。關鍵步驟分析:判斷用戶是否有權瀏覽Analysis.asp頁面是通過分析QueryString和一個隱藏表單元素的值來確定的。只有兩者都不為空的情況下用戶才可以瀏覽該界面。用戶批閱了意見后提交表單,判斷用戶提交的表單里回復意見欄不能為空。如果意見欄不空,通過隱藏表單元素SuggestionID來獲得意見的ID號,然后利用這個ID號在意見建議信息表里查處此條意見要發往的部門,在系統用戶信息表里查出這個部門主管的詳細信息。接著把用戶提交的姓名和登陸密碼同系統用戶信息表里查出的結果進行校驗,校驗通過那么說明用戶是建議接受部門的主管,有權進行批閱,否那么無權進行批閱。更新數據庫后,在SQL語句里,意見狀態設成已處理。意見的提交者可以在意見箱頁面點擊“查看我的意見〞按鈕,就可以看到被處理過的意見。頁面使用的數據庫組件只有意見建議信息表〔SuggestionRecords〕。投票站頁面用戶可以根據自己的需要向不同的人發送投票邀請,可以分為三類:全體員工;某個部門的員工;某個職位的員工。用戶提交表單后,系統根據用戶選擇的人發送電子郵件,郵件包含了投票的發起人,投票的主題和內容等,還給出參加投票的地址鏈接,可以通過這個鏈接進入投票界面〔如圖4-19〕。主要步驟:校驗身份,用戶填寫好投票的標題、內容、發布投票的范圍〔要邀請的人員的范圍〕開始投票,首先判斷用戶選擇了何種投票范圍,從系統用戶信息表查詢出相應的被邀請人的郵件地址和總人數。接著把這個新投票插入投票問題信息表里,接著把信息用電子郵件的方式發送給所有被邀請的人。郵件發送完成后,在投票信息數據表里記下對應此次投票的ID和被邀請的人的ID和姓名。圖4-19投票站頁面投票頁面:·在查詢總投票人數的SQL語句里,使用了count語句,其含義是對所有滿足查詢條件的記錄的樹木進行計數,把各種情況下被邀請參加投票人員的電子郵件地址和人數分別存儲在RSEmails和RSVoterNumber記錄集里。·使用Session對象的Name字段作為投票發起人的值并使用系統時間做為投票發布時間,要把新插入投票問題信息表的投票ID查詢出來,關鍵代碼如下:setRSQuestionID=conn.Execute〔〞selectQuestionIDfromVotingQuestiongs〞_&〞whereWhenSent=#〞&CurrentDateTime&〞#〞〕·在保證每一個投票的人只有一次投票時機的問題上,要保證沒個人只能有一次投票時機,在每個投票人員點擊了投票鏈接地址后,只能投出一票,如果再次點擊該鏈接系統不會再顯示投票頁面,為了實現這一點,在提供給投票人的鏈接地址上加了兩個具體的QueryString參數:一個是投票的ID,就是QuestionID;另一個是投票的人自己的ID,就是VoterID。所以,當投票人鏈接投票頁面時,可以通過這兩個參數判斷其是否有權利進行投票。頁面使用的數據庫組件有:系統用戶信息表〔PSLogins〕,部門信息數據表〔Departments〕,職位信息表〔Positons〕,公司投票問題信息數據表〔VotingQuestions〕和公司投票信息數據表〔VotingVotes〕。進行投票頁面用戶收到投票發起人的電子郵件,通過電子郵件里此次投票的的一個地址鏈接進入投票也面進行投票,此頁面還對此投票者是否有權進行投票進行校驗。投票人員將收到一封電子郵件,郵件包含了最新的投票結果。主要步驟:投票這通過郵件地址鏈接進入投票界面,該鏈接里包含了兩個QueryString參數QuestionID和VoterID。在頁面開始時首先對這兩個參數進行判斷,如果有一個為空,那么說明不是合法的投票人,系統將切換到登陸界面。身份校驗通過后,投票人員發送投票請求后,根據投票問題的ID在投票問題信息表里查出投票發起人的姓名,并根據姓名在系統用戶信息表里查出電子郵件地址,然后在投票信息表里查處目前3種投票結果〔是、否、說不清〕的票數分別為多少,這三個結果的和就是已經投票的人數,然后用電子郵件的方式想投票發起人發送投票結果。該頁面使用了兩個數據庫組件:投票問題信息表和投票信息表。

5系統測試5.1測試環境計算機硬件環境CPU:2.0HZRAM:512MHD:40GCDROM:52X顯示:800*600,256Colors測試工具:IIS效勞器DreamweaverIE5.0SQL2000Access20005.2連接數據庫ADO與SQL:在系統中使用了ActiveXDataObject〔ADO〕來訪問各種數據庫和數據效勞。ADO是OLEDB的低級簡約層,而OLEDB那么是ODBC頂層的一種數據效勞。所以任何一種數據庫,只要它具有ODBC驅動,就可以通過ADO來訪問它。在系統ASP代碼中,每次訪問系統數據庫都建立了一個和ADO數據庫對象連接,然后才翻開數據庫并執行相應的SQL語句,把執行結果返回到記錄集里,關鍵代碼如下:Setconn=serner.createobject〔〞adodb.connection〞〕Conn.open〞ASPData〞,〞sa〞,〞yourpassword〞SeRSYourRecordSet=conn.Execute〔〞YourSQLString〞〕SQL語言是數據庫的標準語言,在ASP中,要訪問一個數據庫,就要使用SQL語言。SQL語句是有一個重要工作。構造SQL語句在SQL語句編寫中,常常需要根據用戶輸入并提交的表單元素的值進行查詢或者更新數據庫。這知構造SQL語句的方法便是將表單元素的值嵌入到SQL語句字符串中去。在登陸頁面中,為了對用戶身份進行校驗,需要用戶在頁面表單里填寫用戶名和密碼,在ASP代碼中,在系統用戶信息表里對用戶提供的信息進行查詢,語句如下:TheUsername=Request.Form〔"Username"〕ThePassword=Request.Form〔"Password"〕setRSLogin=conn.Execute〔"select*fromPSLoginswhere"&"LoginID='"_&TheUsername&"'and"&"Password='"&ThePassword&"'"〕其中的TheUsername和ThePassword都是用戶填寫的。5.3驗證用戶的輸入作為一個系統必須對用戶的輸入進行校驗,如果不進行校驗可能導致不可預知的結果。以系統登陸也面為例,為了辯別用戶的身份,要求用戶輸入登陸名和密碼,然后根據用戶舒服和在系統用戶信息表里查詢是否匹配,以驗證用戶是否合法。如果對用戶輸入的TheUsername和ThePassword不進行校驗的話,用戶就可以非法進入系統,例如用戶可以構造一個用戶名,而密碼可以為任何值,其生成的SQL語句為:Select*fromPSLoginswhereLoginID=’me’or1=’1’andPassword=因為1=1恒成立,邏輯運算符or的存在使得查詢條件無效,所以必須對用戶的輸入進行校驗,使得其中不能包含這種單引號,所以使用了VB內置函數Instr〔〕,代碼如下:IfInstr〔TheUsername,"'"〕=0andInstr〔ThePassword,"'"〕=0andInstr〔TheUsername,"'"〕=0_andInstr〔ThePassword,"'"〕=0thensetRSLogin=conn.Execute〔"select*fromPSLoginswhere"&"LoginID='"_&TheUsername&"'and"&"Password='"&ThePassword&"'"〕ifRSLogin.EOFthenSession〔"NumAttempts"〕=Session〔"NumAttempts"〕+1ifApplication〔"NumAttempts"〕=0thenTheMessage="登錄不成功,請重試:"elseifSession〔"NumAttempts"〕>Application〔"NumAttempts"〕thenTheMessage="登錄不成功,登錄次數已滿,無法重試"elseTheTimes=Application〔"NumAttempts"〕-Session〔"NumAttempts"〕+1TheMessage="登錄不成功,還有"&TheTimes&"次時機,請重試:"endifelse……另外,在對數據庫進行插入和更新操作時,數據庫中有些字段在設定時就規定了不能為空,如果輸入為空,數據庫會出現未知錯誤。5.4數據庫轉換本系統的開發是基于windowsXPProfessional環境的,數據庫使用的是Access2000。在發布的時候,需要把Access數據庫中的數據導入windows2000+SQLserver2000下。在前面已經建立了Access數據庫,并完成了數據初始化工作。現在只要將Access數據庫轉移到SQLServer2000中。在數據庫的轉移過程中,將使用到一種功能強大且操作簡單的數據轉移工具DTSWizard。DTSWizard是SQLServer中自帶的一個工具,能方便進行各種數據的導入導出操作。使用DTSWizard將Access中的數據轉移到SQLServer,可采取以下步驟:〔1〕啟動SQLServer的企業管理器〔EnterpriseManager〕,在控制臺數據庫節點上單擊鼠標右鍵,在彈出的快捷菜單中選擇“新建數據庫〞菜單項,將彈出“數據庫屬性〞對話框。在該對話框的“名稱〞輸入框中輸入數據庫名稱,然后單擊[確定]按鈕,即可完成數據庫的創立工作。〔2〕在剛剛創立的數據庫名稱上單擊鼠標右鍵,彈出快捷菜單中選擇“所有任務〞→“導入數據〞菜

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論