辦公自動(dòng)化系統(tǒng)畢業(yè)設(shè)計(jì)論文_第1頁
辦公自動(dòng)化系統(tǒng)畢業(yè)設(shè)計(jì)論文_第2頁
辦公自動(dòng)化系統(tǒng)畢業(yè)設(shè)計(jì)論文_第3頁
辦公自動(dòng)化系統(tǒng)畢業(yè)設(shè)計(jì)論文_第4頁
辦公自動(dòng)化系統(tǒng)畢業(yè)設(shè)計(jì)論文_第5頁
已閱讀5頁,還剩57頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

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

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

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

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

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

溫馨提示

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

評(píng)論

0/150

提交評(píng)論