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

下載本文檔

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

通吃各家瀏覽由于ASP程序是在網(wǎng)絡(luò)效勞器端中執(zhí)行,執(zhí)行結(jié)果所產(chǎn)生的HTML文件適用于不同的瀏覽器。語(yǔ)言相容性高:ASP與所有的ActiveXScript語(yǔ)言都相容,除了可結(jié)合HTML,VBScript、JavaScript、ActiveX效勞器組件來(lái)設(shè)計(jì)外,并可經(jīng)由plug-In〔外掛組件模組〕的方式,使用其他廠商〔ThirdParty〕所提供的語(yǔ)言。隱密平安性高:如果我們?cè)跒g覽器中直接查看網(wǎng)頁(yè)的原始代碼,就只能看到HTML文件,原始的ASP程序代碼是看不到的!這是因杰ASP程序先于網(wǎng)站效勞〔WebServer〕端執(zhí)行后,將結(jié)果轉(zhuǎn)換成標(biāo)準(zhǔn)HTML文件,再傳送到客戶(hù)端〔Client〕的瀏覽器上,因此,我們所辛苦撰寫(xiě)的ASP程序并不會(huì)輕易地被看見(jiàn)進(jìn)而被盜用。易于操控?cái)?shù)據(jù)庫(kù):ASP可以輕易地通過(guò)ODBC〔OpenDatabaseConnectivity〕驅(qū)動(dòng)程序連接各種不同的數(shù)據(jù)庫(kù),例如:Acess、Foxpro、dBase、Oracle等等,另外,ASP亦可將“文本文件〞或是〞Excel〞文件當(dāng)成數(shù)據(jù)庫(kù)用。面向?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ì)象所撰寫(xiě)出來(lái)的ASP程序可以在多個(gè)網(wǎng)頁(yè)之間暫時(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ì)象名稱(chēng)功能描述Request從客戶(hù)端取得信息Response將信息送給客戶(hù)端Server提供一些Web效勞器工具Session儲(chǔ)存在一個(gè)Session內(nèi)的用戶(hù)信息,該信息僅可被該用戶(hù)訪問(wèn)Application在一個(gè)ASP-Application中讓不同的客戶(hù)端共享信息ObjectContext配合MicrosoftTransaction效勞器進(jìn)行分布式事務(wù)處理合理地運(yùn)用這些對(duì)象可以使原本復(fù)雜,煩瑣的工作變得簡(jiǎn)捷而條理清晰。我們可以用以下的語(yǔ)法直接使用這些對(duì)象:對(duì)象/屬性/方法/數(shù)據(jù)集合。VBScript是程序開(kāi)發(fā)語(yǔ)言VisualBasic的一個(gè)子集,是ASP默認(rèn)的腳本編程語(yǔ)言。VBScript語(yǔ)言易學(xué)易用,以對(duì)象為根底,對(duì)象根底語(yǔ)言不僅支持對(duì)象的屬性和成員函數(shù),而且可以用來(lái)編寫(xiě)動(dòng)作并反映出和對(duì)象相關(guān)的事件,在VBScript中,可以非常容易的使用ASP的內(nèi)建對(duì)象。在網(wǎng)頁(yè)設(shè)計(jì)過(guò)程中使用VBScript語(yǔ)言,一般是在HTML文件中嵌入VBScript腳本,用以擴(kuò)展HTML的功能,從而獲得單憑HTML語(yǔ)言無(wú)法取得的效果。VBScript也是默認(rèn)情況下ASP的主腳本語(yǔ)言,它用來(lái)處理在分界符“<%〞和“%>〞內(nèi)部的命令。DreamweaverDreamweaver與其它同類(lèi)軟件相比主要有以下優(yōu)點(diǎn):不生成冗余代碼:可視化的網(wǎng)頁(yè)編輯器,都要把使用者的操作轉(zhuǎn)換成HTML代碼。一般的編輯器都會(huì)生成大量的冗余代碼,給網(wǎng)頁(yè)以后的修改帶來(lái)了極大的不方便,同時(shí)還增加了網(wǎng)頁(yè)文件的大小。Dreamweaver那么在使用時(shí)完全不生成冗余代碼,防止了諸多麻煩。而且,通過(guò)設(shè)置,還可用Dreamweaver去除掉網(wǎng)頁(yè)文件原有的冗余代碼。方便的代碼編輯:可視化編輯和源代碼編輯都有其長(zhǎng)處和短處。有時(shí)候,直接用源代碼編輯會(huì)很有效。Dreamweaver提供了HTML快速編輯器和自建的HTML編輯器,能方便自如的在可視化編輯狀態(tài)和源代碼編輯狀態(tài)間切換。強(qiáng)大的動(dòng)態(tài)頁(yè)面支持:Dreamweaver的Behavior能在使用者不懂javascript的情況下,往網(wǎng)頁(yè)中參加豐富的動(dòng)態(tài)效果。Dreamweaver還可精確的對(duì)層進(jìn)行定位,再加上timeline功能,可生成動(dòng)感十足的動(dòng)態(tài)層效果。操作簡(jiǎn)便:首先,Dreamweaver提供的歷史面板、HTML樣式、模版、庫(kù)等功能防止了重復(fù)勞動(dòng),使用者不必重復(fù)輸入相同的內(nèi)容、格式。其次,Dreamweaver能直接往頁(yè)面中插入Flash、Shockwave等插件,經(jīng)過(guò)設(shè)置后還可直接調(diào)用相應(yīng)的軟件對(duì)這些插件進(jìn)行編輯。最后,Dreamweaver與Fireworks集成緊密,可直接調(diào)用Fireworks對(duì)頁(yè)面的圖象進(jìn)行修改、優(yōu)化。優(yōu)秀的網(wǎng)站管理功能:在定義的本地站點(diǎn)中,改變文件的名稱(chēng)、位置,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)題欄來(lái)進(jìn)行切換顯示。還可用鼠標(biāo)拖動(dòng)各面板的標(biāo)題欄,來(lái)分化、組合各組面板。每種面板均有不同的功能。Dreamweaver的主要工作區(qū)域是Objects、Properties和Launcher三個(gè)面板。Objects面板還是浮動(dòng)在主窗口上,可隨意移動(dòng)。點(diǎn)擊Objects面板上的圖標(biāo)是往頁(yè)面插入相應(yīng)的頁(yè)面元素。Properties面板同樣是浮動(dòng)在主窗口上,可隨意移動(dòng)。Properties面板是用來(lái)設(shè)置選定的頁(yè)面元素的屬性。Launcher面板也浮動(dòng)在主窗口上,可隨意移動(dòng)。點(diǎn)擊Launcher面板上的圖標(biāo)可翻開(kāi)相應(yīng)的窗口或浮動(dòng)面板。1.2.3IIS〔InternetInformationServer〕簡(jiǎn)介IIS是InternetInformationServer的縮寫(xiě),它是微軟公司主推的效勞器,最新的版本是Windows2000里面包含的IIS5,IIS與WindowNTServer完全集成在一起,因而用戶(hù)能夠利用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é)議,通過(guò)使用CGI和ISAPI,IIS可以得到高度的擴(kuò)展。IIS支持與語(yǔ)言無(wú)關(guān)的腳本編寫(xiě)和組件,通過(guò)IIS,開(kāi)發(fā)人員就可以開(kāi)發(fā)新一代動(dòng)態(tài)的,富有魅力的Web站點(diǎn)。IIS不需要開(kāi)發(fā)人員學(xué)習(xí)新的腳本語(yǔ)言或者編譯應(yīng)用程序,IIS完全支持VBScript,JScript開(kāi)發(fā)軟件以及Java,它也支持CGI和WinCGI,以及ISAPI擴(kuò)展和過(guò)濾器。IIS支持效勞器應(yīng)用的MicrosoftBackOffice系列,MicrosoftBackOffice系列包括以下內(nèi)容:1.MicrosoftExchangeServer客戶(hù)/效勞器通訊和群組軟件;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ì)于管理員來(lái)說(shuō),IIS使用諸如PerformanceMonitor和SNMP〔SimpleNerworkManagementProtocol,簡(jiǎn)單網(wǎng)絡(luò)管理協(xié)議〕之類(lèi)的NT已有管理工具。IIS支持ISAPI,使用ISAPI可以擴(kuò)展效勞器功能,而使用ISAPI過(guò)濾器可以預(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)用程序的訪問(wèn)提供一個(gè)簡(jiǎn)單的注冊(cè)項(xiàng)。IIS的一個(gè)重要特性是支持ASP。IIS3.0版本以后引入了ASP,可以很容易的張貼動(dòng)態(tài)內(nèi)容和開(kāi)發(fā)基于Web的應(yīng)用程序。對(duì)于諸如VBScript,JScript開(kāi)發(fā)軟件,或者由VisualBasic,Java,VisualC++開(kāi)發(fā)系統(tǒng),以及現(xiàn)有的CGI和WinCGI腳本開(kāi)發(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來(lái)說(shuō),所有效勞器都是它的虛擬效勞器。2.在互聯(lián)網(wǎng)上,有很多網(wǎng)站需要多部效勞器才能夠應(yīng)付來(lái)自用戶(hù)端的請(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í)行的,用戶(hù)端利用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é)用戶(hù)端到效勞器之間的信息的移動(dòng),TCP〔TransmissionControlProtocol〕即位于此層。4.ApplicationLayer:管理較低層和應(yīng)用程序之間的連接端口,Socket即位于此層。作為MMC〔MicrosoftManagementConsole〕的一局部,InternetServiceManager〔ISM〕主要負(fù)責(zé)IIS提供效勞的一些設(shè)置組態(tài)的管理,InternetServiceManager可以用來(lái)增強(qiáng)信息效勞器的配置和性能,InternetServiceManager可以幫助用戶(hù)在網(wǎng)絡(luò)中任何一臺(tái)運(yùn)行WindowsNTServer網(wǎng)絡(luò)操作系統(tǒng)的計(jì)算機(jī)上,配置和監(jiān)視所有的Internet效勞。InternetServiceManager位于MicrosoftInternetServer組中。通過(guò)選擇InternetServiceManager超文本管理器,用戶(hù)可以采用HTML界面使用InternetServiceManager。對(duì)HTML管理平臺(tái)版本唯一的限制是,不能通過(guò)這個(gè)界面結(jié)束或者啟動(dòng)效勞器上的Internet效勞。IIS提供的效勞:IIS主要集成了WindowsNTServer網(wǎng)絡(luò)操作系統(tǒng)的三個(gè)Web效勞器功能,這些功能是通過(guò)標(biāo)準(zhǔn)協(xié)議傳輸數(shù)據(jù)的,所有的IIS效勞〔WWW,F(xiàn)TP和SMTP〕都是單進(jìn)程多線程的體系結(jié)構(gòu),用以?xún)?yōu)化性能。WWW使用的客戶(hù)/效勞器協(xié)議是,這意味著客戶(hù)和效勞器需要交互作用,以執(zhí)行特定的任務(wù),例如:用戶(hù)在Web上的HTML頁(yè)面上單擊一個(gè)超級(jí)連接,結(jié)果屏幕上現(xiàn)有的頁(yè)面會(huì)被新的頁(yè)面所代替,IIS通過(guò)WindowsSockets來(lái)支持,目前的IIS支持1.1版本。FTP是在TCP/IP網(wǎng)絡(luò)上兩個(gè)計(jì)算機(jī)之間傳輸文件時(shí)使用的協(xié)議,IIS通過(guò)WindowsSockets來(lái)支持FTP,盡管現(xiàn)在使用FTP用戶(hù)界面的人越來(lái)越少,但是這個(gè)協(xié)議仍然將在一段時(shí)間內(nèi)用來(lái)傳輸文件,因?yàn)樗鼛捉?jīng)被Internet用戶(hù)廣為接受,F(xiàn)TP使用TCP作為它的客戶(hù)和效勞器之間進(jìn)行所有通信和交換的傳輸協(xié)議,而IIS那么是以WindowsSockets與TCP打交道的。所有標(biāo)準(zhǔn)Internet效勞〔如FTP和〕都位于稱(chēng)為Inetinfo〔InternetInformationServicesApplication,Internet信息效勞應(yīng)用〕的進(jìn)程中,除了這些Internet效勞外,該進(jìn)程還包含了共享線程池,緩存,紀(jì)錄和SNMP效勞。和FTP運(yùn)行與同一進(jìn)程中,因此它們可以共享緩存中的數(shù)據(jù),例如文件句柄,賬號(hào)信息以及日志文件數(shù)據(jù)等。您可以使用紀(jì)錄跟蹤正在訪問(wèn)你的節(jié)點(diǎn)的那些用戶(hù),并控制什么時(shí)候可以訪問(wèn)節(jié)點(diǎn),對(duì)用戶(hù)進(jìn)行跟蹤可以幫助確定平安性和性能問(wèn)題,跟蹤信息可以直接紀(jì)錄到日志文件,這樣可以脫機(jī)進(jìn)行處理,以獲得更好的性能,同樣也可以紀(jì)錄到數(shù)據(jù)庫(kù)中,以進(jìn)行動(dòng)態(tài)的評(píng)價(jià)。利用ADO訪問(wèn)數(shù)據(jù)庫(kù)ADO〔ActiveXDataObjects〕是一種操作Microsoft所支持的數(shù)據(jù)庫(kù)的新技術(shù)。在ASP中,ADO可以看作是一個(gè)效勞器組件〔ServerComponent〕,更簡(jiǎn)單點(diǎn)說(shuō),是一系列的對(duì)象,應(yīng)用這些功能強(qiáng)大的對(duì)象,即可輕松完成對(duì)數(shù)據(jù)庫(kù)復(fù)雜的操作。本文中個(gè)性化頁(yè)面的實(shí)現(xiàn)便大量地用到了ADO技術(shù)。具體的操作步驟可以歸納為以下幾步:1.創(chuàng)立數(shù)據(jù)庫(kù)源名〔DSN〕2.創(chuàng)立數(shù)據(jù)庫(kù)鏈接〔Connection〕3.創(chuàng)立數(shù)據(jù)對(duì)象4.操作數(shù)據(jù)庫(kù)5.關(guān)閉數(shù)據(jù)對(duì)象和鏈接詳細(xì)作法如下:1、創(chuàng)立數(shù)據(jù)源名DSN〔DateSourceName〕即數(shù)據(jù)源名稱(chēng)。我們知道,ODBC是一種訪問(wèn)數(shù)據(jù)庫(kù)的方法,只要系統(tǒng)中有相應(yīng)的ODBC驅(qū)動(dòng)程序,任何程序就可以通過(guò)ODBC操縱驅(qū)動(dòng)程序的數(shù)據(jù)庫(kù)。比方我們系統(tǒng)中有SQL的ODBC驅(qū)動(dòng)程序,那么即使我們沒(méi)有SQL軟件,也可以在我們的程序中對(duì)一個(gè)SQL的MDB數(shù)據(jù)庫(kù)加、刪、改記錄。而且我們根本不用知道這個(gè)數(shù)據(jù)庫(kù)是放在哪里的。我們只要寫(xiě)出SQL語(yǔ)句,ODBC驅(qū)動(dòng)程序就會(huì)幫我們做一切事情。我們?cè)诮oODBC驅(qū)動(dòng)程序傳SQL指令時(shí),即是用DSN來(lái)告訴它到底操作的是哪一個(gè)數(shù)據(jù)庫(kù)。如果數(shù)據(jù)庫(kù)的平臺(tái)變了,比方我們改用了Access的數(shù)據(jù)庫(kù),只要其中表的結(jié)構(gòu)沒(méi)變,我們就不用改寫(xiě)我們的程序,只要重新在系統(tǒng)中配置DSN就行了。由此可見(jiàn),DSN是應(yīng)用程序和數(shù)據(jù)庫(kù)之間的橋梁。2、創(chuàng)立數(shù)據(jù)庫(kù)鏈接〔Connection〕鏈接用以保持一些關(guān)于正在訪問(wèn)的數(shù)據(jù)的一些狀態(tài)信息,以及鏈接者信息。ASP文件中如果要訪問(wèn)數(shù)據(jù),必須首先創(chuàng)立與數(shù)據(jù)庫(kù)的鏈接,其語(yǔ)法如下:setConn=Server.createObject〔“ADOBD.CONNECTION〞〕這條語(yǔ)句創(chuàng)立了鏈接對(duì)象Conn,接下來(lái):conn.Openconnstr這條語(yǔ)句翻開(kāi)鏈接,用到了DSN,本例為“connstr〞。以上兩個(gè)步驟缺一不可,因?yàn)殒溄訉?duì)象的創(chuàng)立與翻開(kāi)是兩回事,只有翻開(kāi)了才真正可以使用。3、創(chuàng)立數(shù)據(jù)對(duì)象〔RecordSet〕ADO中的數(shù)據(jù)對(duì)象通常保存的是查詢(xún)結(jié)果。RecordSet是ADO中最復(fù)雜的對(duì)象,有許多屬性和方法。RecordSet保存的是一行行的記錄,并標(biāo)有一個(gè)當(dāng)前記錄。以下是創(chuàng)立方法:SetRecordSet=Conn.Execute〔sqtStr〕這條語(yǔ)句創(chuàng)立并翻開(kāi)了對(duì)象RecordSet,其中Con是先前創(chuàng)立的鏈接對(duì)象,rs是一個(gè)字串,代表一條標(biāo)準(zhǔn)的SQL語(yǔ)句。例如:rs=“SELECT*FROMshop_books〞SetRecordSet=mConn.Execute〔rs〕這條語(yǔ)句執(zhí)行后,對(duì)象RecordSet中就保存了表tab1中的所有記錄。4、操作數(shù)據(jù)庫(kù)我們通過(guò)調(diào)用鏈接對(duì)象的Execute方法來(lái)將查詢(xún)結(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源。通過(guò)調(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)用范圍越來(lái)越廣,信息量也越來(lái)越大。它們已經(jīng)開(kāi)始為決策層提供必要的決策支持信息。但是信息系統(tǒng)應(yīng)該為決策層提供一個(gè)簡(jiǎn)單、方便的手段,使之以盡可能直接、快捷的方式獲得其需要的信息。在企業(yè)OA系統(tǒng)首先就是效勞于管理層的,隨著其功能的日益強(qiáng)大和完善,信息查詢(xún)方便,易于跨平臺(tái)的優(yōu)勢(shì)使之具備了聯(lián)接其他系統(tǒng),提供查詢(xún)信息,效勞管理層的能力,OA的應(yīng)用開(kāi)始滲透進(jìn)各應(yīng)用系統(tǒng),以統(tǒng)一的界面為管理層提供信息。其次,OA系統(tǒng)應(yīng)用于企業(yè)的所有部門(mén),是涉及員工最多的一個(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)的開(kāi)展也會(huì)不斷的擴(kuò)充和開(kāi)展。在傳統(tǒng)的辦公模式中,辦公業(yè)務(wù)主要是通過(guò)手工來(lái)完成的,勢(shì)必帶來(lái)工作效率低、資源浪費(fèi)的問(wèn)題。雖然可以利用通信、印刷和計(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)來(lái)促進(jìn)辦公活動(dòng)的標(biāo)準(zhǔn)化和制度化。2.1研究的目的及存在的問(wèn)題研究的意義及類(lèi)研究工作國(guó)內(nèi)外現(xiàn)狀和存在的問(wèn)題辦公自動(dòng)化是近年來(lái)開(kāi)展迅速的一項(xiàng)技術(shù),在國(guó)內(nèi)外已經(jīng)廣泛運(yùn)用,已成為現(xiàn)代化管理中的一個(gè)重要局部,是否采用辦公自動(dòng)化,是衡量一個(gè)單位管理水平的重要標(biāo)志之一。在我國(guó),辦公自動(dòng)化的研究和實(shí)踐,經(jīng)過(guò)了一段時(shí)間的寂靜,從最近幾年開(kāi)始呈現(xiàn)迅猛的開(kāi)展勢(shì)頭,尤其是LotusNotes的流行和政府上網(wǎng)工程的開(kāi)展,似乎在一夜之間,辦公自動(dòng)化已經(jīng)成了政府機(jī)關(guān)、工礦企業(yè)、公司、高等院校、研究機(jī)構(gòu)等單位的必備工具。計(jì)算機(jī)技術(shù)尤其使網(wǎng)絡(luò)技術(shù)、通訊技術(shù)、數(shù)據(jù)庫(kù)技術(shù)、多媒體技術(shù)、虛擬現(xiàn)實(shí)技術(shù)等的飛速開(kāi)展和應(yīng)用,使辦公自動(dòng)化的開(kāi)展又呈現(xiàn)出新的景象。〔1〕計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)的成熟與普及,使得許多單位建立了自己的局域網(wǎng)和廣域網(wǎng),并與Internet相連,形成了完善的信息流轉(zhuǎn)通路?!?〕經(jīng)過(guò)多年的不泄努力,建立了許多以數(shù)據(jù)庫(kù)為根底的應(yīng)用,積累了大量珍貴的信息資源,鍛煉和培養(yǎng)了一批信息技術(shù)開(kāi)發(fā)應(yīng)用人員,整個(gè)工作人員使用計(jì)算機(jī)的能力和積極性都有了很大提高?!?〕以MicrosoftOffice、MicrosoftOutlook、LotusNotes為代表辦公軟件的完善,使辦公過(guò)程中公文的流轉(zhuǎn)得以順利實(shí)現(xiàn),同時(shí)多媒體、數(shù)字簽名等技術(shù)的應(yīng)用,又使電子公文能得到普遍認(rèn)可,初步解決了電子文檔的法律問(wèn)題?!?〕在新世紀(jì)帶來(lái)之際,我國(guó)“政府上網(wǎng)〞工程的開(kāi)展,極大地調(diào)動(dòng)了政府機(jī)關(guān)、企業(yè)公司信息化建設(shè)的積極性,為辦公自動(dòng)化帶來(lái)了新的開(kāi)展契機(jī)。實(shí)施辦公自動(dòng)化存在的一些問(wèn)題辦公自動(dòng)化不同于簡(jiǎn)單的自動(dòng)化設(shè)備,各種辦公自動(dòng)化軟件的成功應(yīng)用,需要多方面的支持。目前困擾辦公自動(dòng)化的應(yīng)用主要有如下一些問(wèn)題:〔1〕系統(tǒng)的平安難以令人滿(mǎn)意〔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,客戶(hù)/效勞器〕、B/S〔Browser/Server〕,瀏覽器/效勞器〕或者二者的混合體系結(jié)構(gòu)。內(nèi)容:建設(shè)一個(gè)平安、可靠、開(kāi)放、高效的信息管理電子化、辦公自動(dòng)化系統(tǒng),為用戶(hù)提供現(xiàn)代化的日常辦公條件及豐富的綜合信息效勞,實(shí)現(xiàn)檔案管理自動(dòng)化和辦公事務(wù)處理自動(dòng)化,以提高辦公效率和管理水平,實(shí)現(xiàn)企業(yè)各部門(mén)日常業(yè)務(wù)工作的標(biāo)準(zhǔn)化、電子化、標(biāo)準(zhǔn)化;能實(shí)現(xiàn)信息在線查詢(xún)、借閱,最終實(shí)現(xiàn)“無(wú)紙〞辦公。2.2需求分析系統(tǒng)具有以下功能:·管理系統(tǒng)用戶(hù),由于該系統(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è)制定的采購(gòu)方案進(jìn)行管理?!?duì)庫(kù)存信息進(jìn)行管理。·發(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ù)。·系統(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),除員工信息查詢(xún)外,還具有擁護(hù)修改個(gè)人信息頁(yè)面,系統(tǒng)管理員頁(yè)面,添加新用戶(hù)頁(yè)面和修改某個(gè)用戶(hù)信息頁(yè)面。對(duì)于公司財(cái)務(wù)管理系統(tǒng),可以具體細(xì)化為添加新財(cái)務(wù)信息記錄頁(yè)面,添加新財(cái)務(wù)工程頁(yè)面,生成各種財(cái)務(wù)報(bào)表頁(yè)面和修改某個(gè)財(cái)務(wù)記錄頁(yè)面。公司公司財(cái)務(wù)信息查詢(xún)管理系統(tǒng)員工信息管理系統(tǒng)員工信息管理系統(tǒng)企業(yè)內(nèi)部辦公網(wǎng)主頁(yè)企業(yè)用戶(hù)登錄頁(yè)面圖2-1主要功能圖對(duì)于公司內(nèi)部信息交流系統(tǒng),可以具體細(xì)化為內(nèi)部通知公告牌頁(yè)面,發(fā)布新通知頁(yè)面,修改某個(gè)通知頁(yè)面,意見(jiàn)箱頁(yè)面,意見(jiàn)分析頁(yè)面,投票站頁(yè)面和投票分析頁(yè)面。系統(tǒng)登錄頁(yè)面系統(tǒng)登錄頁(yè)面公司內(nèi)部辦公信息管理系統(tǒng)主頁(yè)面員工信息管理主頁(yè)面財(cái)務(wù)信息管理主頁(yè)面修改個(gè)人信息頁(yè)面員工信息管理主頁(yè)面添加新用戶(hù)頁(yè)面修改用戶(hù)信息頁(yè)面添加新財(cái)務(wù)信息頁(yè)面生成財(cái)務(wù)報(bào)表頁(yè)面修改財(cái)務(wù)信息頁(yè)面內(nèi)部信息交流主頁(yè)面添加新財(cái)務(wù)工程頁(yè)面內(nèi)部通知公告牌頁(yè)面意見(jiàn)箱頁(yè)面投票站頁(yè)面發(fā)送新通知信息頁(yè)面修改通知信息頁(yè)面意見(jiàn)建議批閱頁(yè)面進(jìn)行投票頁(yè)面圖2-2頁(yè)面邏輯結(jié)構(gòu)示意圖圖2-2是整個(gè)系統(tǒng)的頁(yè)面邏輯結(jié)構(gòu)示意圖。分析系統(tǒng)數(shù)據(jù)要求根據(jù)系統(tǒng)功能設(shè)計(jì)的要求,對(duì)于系統(tǒng)用戶(hù)信息數(shù)據(jù)庫(kù),有以下數(shù)據(jù)項(xiàng)和數(shù)據(jù)結(jié)構(gòu):·用戶(hù)信息:用戶(hù)ID、登陸名、用戶(hù)姓名、密碼、E-mail、部門(mén)、職位、內(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)手人、部門(mén)、所屬財(cái)務(wù)工程名稱(chēng)、各種具體款項(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)容、通知類(lèi)型、通知發(fā)送者、通知接收者、通知發(fā)送日期、通知發(fā)送時(shí)間、通知有效天數(shù)?!?nèi)部意見(jiàn)建議信息:意見(jiàn)建議ID、意見(jiàn)發(fā)送者、意見(jiàn)發(fā)送部門(mén)、意見(jiàn)類(lèi)型、意見(jiàn)內(nèi)容、意見(jiàn)處理狀態(tài)、意見(jiàn)處理評(píng)論、意見(jiàn)發(fā)送日期?!?nèi)部投票信息:投票ID、投票發(fā)起者、投票主題、套票開(kāi)始時(shí)、總應(yīng)投票人數(shù)。

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

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

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論