版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、附件1.1畢 業(yè) 論 文(設(shè)計(jì)) 論文題目:檔案管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)學(xué)生姓名:胡仁雷學(xué) 號(hào):1101070130年級(jí)專業(yè):二0一一級(jí)軟件技術(shù)指導(dǎo)老師:李慧敏 系 別:電子信息系湖南長(zhǎng)沙二O一四年六月附件1.2目 錄摘要11前言21.1問題的提出21.2 數(shù)據(jù)庫系統(tǒng)簡(jiǎn)介21.3 SQL Server 2008簡(jiǎn)介31.4 PowerBuilder V12 簡(jiǎn)介51.5 數(shù)據(jù)庫理論基礎(chǔ)72 管理系統(tǒng)的分析與設(shè)計(jì)112.1 系統(tǒng)分析112.2系統(tǒng)設(shè)計(jì)122.3 小結(jié)133管理系統(tǒng)的實(shí)現(xiàn)143.1 應(yīng)用程序?qū)ο蟮膭?chuàng)建143.2 登錄窗口的設(shè)計(jì)143.3 應(yīng)用程序主窗口163.4 菜單的設(shè)計(jì)163.5各
2、功能模塊的設(shè)計(jì)173.6 系統(tǒng)的編譯和發(fā)布193.7 小結(jié)194 總結(jié)20參考文獻(xiàn)21致謝22附件1.3檔案管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) 作 者:胡仁雷 指導(dǎo)老師:李慧敏 (湖南信息科學(xué)職業(yè)學(xué)院電子信息系2011級(jí)軟件技術(shù),長(zhǎng)沙 410151) 摘要:隨著計(jì)算機(jī)技術(shù)的飛速發(fā)展,計(jì)算機(jī)在企業(yè)管理中應(yīng)用的普及,利用計(jì)算機(jī)實(shí)現(xiàn)企業(yè)檔案的管理已經(jīng)勢(shì)在必行。當(dāng)前企業(yè)信息管理系統(tǒng)正在從C/S結(jié)構(gòu)向B/S結(jié)構(gòu)轉(zhuǎn)移,但是由于安全性等方面的因素,C/S結(jié)構(gòu)的管理信息系統(tǒng)仍然占據(jù)市場(chǎng)的主流。而新興的基于ASP.NET技術(shù)的三層系統(tǒng)設(shè)計(jì)和基于Java的MVC技術(shù)尚未成熟,可以說尚處于bate階段,C/S結(jié)構(gòu)的管理信息系統(tǒng)仍
3、然占據(jù)市場(chǎng)的主流。 為了方便企業(yè)或集團(tuán)管理,檔案管理系統(tǒng)在計(jì)算機(jī)上實(shí)現(xiàn)已是勢(shì)在必行。其真正目的在于有利于企業(yè)管理。 本人主要分析了系統(tǒng)的組成情況,包括需求分析,系統(tǒng)的可行性,系統(tǒng)的設(shè)計(jì)目標(biāo),數(shù)據(jù)結(jié)構(gòu),數(shù)據(jù)流程和系統(tǒng)的主要特點(diǎn)等各面知識(shí)。還重點(diǎn)介紹了系統(tǒng)的功能模塊的詳細(xì)思路和實(shí)現(xiàn)方法,以及對(duì)系統(tǒng)的關(guān)鍵技術(shù)和部分源代碼的詳細(xì)說明。本系統(tǒng)除了對(duì)檔案管理系統(tǒng)的各個(gè)功能模塊作了詳細(xì)的介紹,還附有各功能模塊的主界面圖。在功能敘述過程中配有插圖,幫助更好的理解和使用該系統(tǒng)的功能內(nèi)容。關(guān)鍵詞:檔案管理;數(shù)據(jù)庫管理系統(tǒng) ;數(shù)據(jù)庫。 1 前言 1.1問題的提出 隨著計(jì)算機(jī)技術(shù)的飛速發(fā)展,計(jì)算機(jī)在社會(huì)各界管理中應(yīng)用
4、的普及利用計(jì) 算機(jī)實(shí)現(xiàn)檔案的管理已經(jīng)勢(shì)在必行。當(dāng)前社會(huì)各界信息管理系統(tǒng)正在從C/S結(jié)構(gòu)向B/S結(jié)構(gòu)轉(zhuǎn)移,但是由于安全性等方面的因素,C/S結(jié)構(gòu)的管理信息系統(tǒng)仍然占據(jù)市場(chǎng)的主流。而新興的基于ASP.NET技術(shù)的三層系統(tǒng)設(shè)計(jì)和基于Java的MVC技術(shù)尚未成熟,可以說尚處于bate階段,C/S結(jié)構(gòu)的管理信息系統(tǒng)仍然占據(jù)市場(chǎng)的主流。 然而,在現(xiàn)代的社會(huì)中,用計(jì)算機(jī)進(jìn)行檔案的管理機(jī)制還不十分的健全,為了能使企業(yè)領(lǐng)導(dǎo)人能更好的進(jìn)行檔案管理及相關(guān)方面的科學(xué)決策,如企業(yè)領(lǐng)導(dǎo)根據(jù)現(xiàn)有的員工數(shù)目決定招騁的人數(shù)等,檔案管理系統(tǒng)的設(shè)計(jì)成為當(dāng)今社會(huì)的軟件行業(yè)中的較為重要的課程。1.2數(shù)據(jù)庫系統(tǒng)簡(jiǎn)介 數(shù)據(jù)庫技術(shù)在計(jì)算機(jī)軟
5、件領(lǐng)域研究中一直是非常重要的課題,產(chǎn)生于60年代,30多年來數(shù)據(jù)庫技術(shù)得到了迅速發(fā)展,并已形成較為完整的理論體系。并且,近年來,隨著World Wide Web(WWW)規(guī)模的擴(kuò)大及Internet技術(shù)的迅速發(fā)展,數(shù)據(jù)庫技術(shù)迅速的成為最熱門技術(shù)之一。 數(shù)據(jù)庫技術(shù)也是計(jì)算機(jī)科學(xué)中發(fā)展最快、應(yīng)用最廣泛的技術(shù)之一,它已成為計(jì)算機(jī)系統(tǒng)與應(yīng)用系統(tǒng)的核心技術(shù)和重要基礎(chǔ)。 1.2.1數(shù)據(jù)庫 數(shù)據(jù)庫,顧名思義,是存放數(shù)據(jù)的倉庫。只不過這個(gè)倉庫是在計(jì)算機(jī)存儲(chǔ)設(shè)備上,而且數(shù)據(jù)是按一定的格式存放的。它是長(zhǎng)期儲(chǔ)存在計(jì)算機(jī)內(nèi)、有組織、可共享的數(shù)據(jù)集合。數(shù)據(jù)庫中的數(shù)據(jù)按一定的數(shù)據(jù)模型組織、描述和儲(chǔ)存,具有較小的冗余度、較
6、高的數(shù)據(jù)獨(dú)立性和易擴(kuò)展性,并可為各種用戶共享。 1.2.2數(shù)據(jù)庫管理系統(tǒng) 數(shù)據(jù)庫管理系統(tǒng)(DBMS)是指數(shù)據(jù)庫系統(tǒng)中管理數(shù)據(jù)的軟件系統(tǒng)。DBMS是數(shù)據(jù)庫系統(tǒng)的核心組成部分。對(duì)數(shù)據(jù)庫的一切操作,包括定義、更新及各種控制,都是通過DBMS進(jìn)行的。DBMS是基于某種數(shù)據(jù)模型,可以看成是某種數(shù)據(jù)模型在計(jì)算機(jī)系統(tǒng)上的具體實(shí)現(xiàn)。根據(jù)數(shù)據(jù)模型的不同,DBMS可以分成層次型、網(wǎng)狀型、關(guān)系型、面向?qū)ο笮偷取6鞠到y(tǒng)所用的SQL Server 2008就是一種關(guān)系型 應(yīng)用數(shù)據(jù)庫。 1.2.3 數(shù)據(jù)庫模式 數(shù)據(jù)庫系統(tǒng)模式是由外模式、模式、內(nèi)模式三級(jí)模式構(gòu)成。它定義了數(shù)據(jù)庫的結(jié)構(gòu)、表、關(guān)系、域和業(yè)務(wù)規(guī)則。數(shù)據(jù)庫模式是
7、一種設(shè)計(jì),數(shù)據(jù)庫和應(yīng)用正是建立在此基礎(chǔ)上的。 域是一列可能擁有的值的集合。必須為每一個(gè)表的每一列確定域。除了數(shù)據(jù) 的物理格式外,還需要確定是否有些域?qū)Ρ韥碚f是唯一的。 數(shù)據(jù)庫模式的最后一個(gè)要素是業(yè)務(wù)規(guī)則,它是對(duì)需要反映在數(shù)據(jù)庫和數(shù)據(jù)庫應(yīng)用程序中的業(yè)務(wù)活動(dòng)的約束。業(yè)務(wù)規(guī)則是模式的一個(gè)重要部分,因?yàn)樗麄冎付藷o論什么數(shù)據(jù)變化到達(dá)DBMS,允許的數(shù)據(jù)值必須滿足的約束。不管無效的數(shù)據(jù)變化請(qǐng)求是來自窗體的用戶、查詢/修改請(qǐng)求還是應(yīng)用程序,DBMS都應(yīng)該拒絕。 遺憾的是,不同的DBMS產(chǎn)品用不同的方法實(shí)施業(yè)務(wù)規(guī)則。在某些情況下DBMS產(chǎn)品不具備實(shí)施必要業(yè)務(wù)規(guī)則的能力必須以代碼形式把它們編入應(yīng)用程序。 1.
8、3SQL Server 2008 簡(jiǎn)介 SQL Server 2008是個(gè)功能強(qiáng)大的數(shù)據(jù)庫管理系統(tǒng),它建立在 SQL Server 7.0 在可伸縮性、可用性、可管理性和數(shù)據(jù)倉庫成功的基礎(chǔ)上,并且引入了針對(duì)電子商務(wù)的新功能。SQL Server 2008是個(gè)采用主從結(jié)構(gòu)的關(guān)系數(shù)據(jù)庫系統(tǒng),以下就對(duì)SQL Server 2008的結(jié)構(gòu)做些簡(jiǎn)要的說明。 1.3.1主從結(jié)構(gòu) 隨著20世紀(jì)80年代個(gè)人計(jì)算機(jī)的興起,以及個(gè)人計(jì)算機(jī)的運(yùn)算能力快速提高,主從式(Client/Server)軟件結(jié)構(gòu)也逐漸為大眾接受并廣泛采用,從而逐漸取代過去的“主機(jī)/終端機(jī)式”或PC網(wǎng)絡(luò)上數(shù)據(jù)庫服務(wù)器(單純分享數(shù)據(jù)資源)的運(yùn)行
9、模式。所謂SQL Server的主從結(jié)構(gòu),就是由SQL Server 扮演存放數(shù)據(jù)和提供數(shù)據(jù)給客戶端的角色,當(dāng)用戶取用數(shù)據(jù)時(shí),則可調(diào)用各種不同的客戶端應(yīng)用程序,通過SQL Server 2008所支持的接口,向SQL Server提出請(qǐng)求,然后取得數(shù)據(jù)庫中的數(shù)據(jù)并返回給用戶。1.3.2數(shù)據(jù)存儲(chǔ)接口 為了讓客戶端能順利查詢/修改數(shù)據(jù)庫中的數(shù)據(jù),SQL Server 2008提供了多種不同的接口,客戶端可以根據(jù)自己的需求,通過這些接口來存取數(shù)據(jù)庫中的數(shù)據(jù),這些接口包括: OLE DB:OLE DB是微軟公司開發(fā)的一組用來存取各種數(shù)據(jù)的COM(Component Object Model) 組件。使
10、用OLE DB作為數(shù)據(jù)存取接口,應(yīng)用程序就能通過統(tǒng)一的方式從各種不同的數(shù)據(jù)源取得所需的數(shù)據(jù)。而SQL Server 2008本身也內(nèi)建了OLE DB服務(wù)組件(SQLOLEDB),因此客戶端應(yīng)用程序可以直接或間接來向SQL Server提出請(qǐng)求,以取得所需的數(shù)據(jù)。 ODBC:ODBC(Open DataBase Conectivity) 是根據(jù)SQL語言所發(fā)展出來的數(shù)據(jù)存取接口。正如其名稱中的Open(開放)所指,其目的是使應(yīng)用程序利用簡(jiǎn)單的SQL查詢,就能從各種不同的數(shù)據(jù)庫系統(tǒng)中取得數(shù)據(jù),SQL Sever包含了內(nèi)建的ODBC驅(qū)動(dòng)程序。 除了上述兩個(gè)主要的數(shù)據(jù)庫存接口外,SQL Server
11、2008還支持:DB_Library,Embedded-AQL等接口模式。 1.3.3溝通的橋梁 - Net-Library 客戶端和服務(wù)端有了可互相通信的接口后,建立兩邊IPC通信管道的工作是由Net-Library (網(wǎng)絡(luò)函數(shù)庫)來負(fù)責(zé)的。 當(dāng)客戶端程序使用某種接口向服務(wù)器提出查詢請(qǐng)求時(shí),這項(xiàng)請(qǐng)求必須通過IPC到達(dá)服務(wù)端,因此,數(shù)據(jù)庫接口驅(qū)動(dòng)程序(例如ODBC驅(qū)動(dòng)程序)就要設(shè)法產(chǎn)生這個(gè)IPC。為了簡(jiǎn)化及支持多種網(wǎng)絡(luò)通信協(xié)議,微軟公司將這些功能集成在Net-Library之中。也就是說數(shù)據(jù)庫接口驅(qū)動(dòng)程序會(huì)調(diào)用客戶端上的Net-Library,而Net-Library則會(huì)調(diào)用IPC應(yīng)用程序接口
12、以產(chǎn)生IPC。 若客戶端和服務(wù)端目前是在同一臺(tái)計(jì)算機(jī)上,例如我們?cè)贓nterprise Manager操作本地服務(wù)器的數(shù)據(jù)庫,則此時(shí)Net-Library會(huì)調(diào)用Local IPC;若是要通過網(wǎng)絡(luò)存取遠(yuǎn)端的服務(wù)器,則會(huì)經(jīng)由目前雙方所使用的網(wǎng)絡(luò)協(xié)議產(chǎn)生Remote IPC。 服務(wù)端的Net-Library在接到對(duì)方送來的請(qǐng)求后,會(huì)將它交給SQL Server 來外理,而服務(wù)器也會(huì)利用相同的方式將結(jié)果送回客戶端。雖然SQL Server和客戶端一樣都是使用SQL Server來建立通信管道,但是SQL Server可以同時(shí)使用多種不同的Net-Library, 以便能和使用不同通信協(xié)議的多個(gè)客戶端溝
13、通,但是客戶端一次只能使用一種Net-Library。SQL Server 2008的Net-Library支持包括TCP/IP、Named Pipes(命名管道)和Nwlink IPX/SPX等多種通信協(xié)議。本系統(tǒng)中所采用就是主從結(jié)構(gòu)的設(shè)計(jì)模式,SQL Server 2008客戶端與SQL Server 2008數(shù)據(jù)庫服務(wù)器之間的通信采用了Net-Library方式,在PowerBuilder與SQL Server 2008的數(shù)據(jù)庫接過程中采用的是SQL Server 2008的專用接口模式。 1.4 PowerBuilder V12 簡(jiǎn)介 PowerBuilder美國(guó)Sybase公司研制的
14、一種新型、快速開發(fā)工具,是客戶機(jī)/服務(wù)器結(jié)構(gòu)下,基于Windows3.x、Windows95和WindowsNT的一個(gè)集成化開發(fā)工具。它包含一個(gè)直觀的圖形界面和可擴(kuò)展的面向?qū)ο蟮木幊陶Z言PowerScript,提供與當(dāng)前流行的大型數(shù)據(jù)庫的接口,并通過ODBC與單機(jī)數(shù)據(jù)庫相連。1.4.1 PowerBuilder V12開發(fā)環(huán)境 PowerBuilder開發(fā)環(huán)境由一系列集成的圖形畫板(Painter)組成,應(yīng)用開發(fā)人員通過簡(jiǎn)單的鼠標(biāo)操作即可設(shè)計(jì)、建立、交互檢驗(yàn)和測(cè)試客戶/服務(wù)器應(yīng)用程序。 1.4.2 PowerBuilder的特點(diǎn) (1)可視化、多特性的開發(fā)工具。全面支持Windows或Wind
15、owsNT所提供的控制、事件和函數(shù)。 PowerScript語言提供了幾百個(gè)內(nèi)部函數(shù),并且具有一個(gè)面向?qū)ο蟮木幾g器和調(diào)試器,可以隨時(shí)編譯新增加的代碼,帶有完整的在線幫助和編程實(shí)例。(2)功能強(qiáng)大的面向?qū)ο蠹夹g(shù)。支持通過對(duì)類的定義來建立可視或不可視對(duì)象模型,同時(shí)支持所有面向?qū)ο缶幊碳夹g(shù),如繼承、數(shù)據(jù)封裝和函數(shù)多態(tài)性等。這些特性確保了應(yīng)用程序的可靠性,提高了軟件的可維護(hù)性。(3)支持高效的復(fù)雜應(yīng)用程序。對(duì)基于Windows環(huán)境的應(yīng)用程序提供了完備的支持,這些環(huán)境包括Windows、WindowsNT和WinOS/2。開發(fā)人員可以使用PowerBuilder內(nèi)置的Watcom C/C+來定義、編譯和
16、調(diào)試一個(gè)類。(4)企業(yè)數(shù)據(jù)庫的連接能力。PowerBuilder的主要特色是DataWindow(數(shù)據(jù)窗口),通過DataWindow可以方便地對(duì)數(shù)據(jù)庫進(jìn)行各種操作,也可以處理各種報(bào)表,而無需編寫SQL語句,可以直接與Sybase、SQLServer、Informix、Oracle等大型數(shù)據(jù)庫連接。(5)強(qiáng)大的查詢、報(bào)表和圖形功能。PowerBuilder提供的可視化查詢生成器和多個(gè)表的快速選擇器可以建立查詢對(duì)象,并把查詢結(jié)果作為各種報(bào)表的數(shù)據(jù)來源。 PowerBuilder主要適用于管理信息系統(tǒng)的開發(fā),特別是客戶機(jī)/服務(wù)器結(jié)構(gòu)。我們知道,數(shù)據(jù)庫應(yīng)用是當(dāng)前計(jì)算機(jī)應(yīng)用的一個(gè)非常重要的方面,而在數(shù)
17、據(jù)庫應(yīng)用技術(shù)中普遍采用的就是客戶機(jī)/服務(wù)器(C/S)體系結(jié)構(gòu),在這種體系結(jié)構(gòu)中,所有的數(shù)據(jù)和數(shù)據(jù)庫管理系統(tǒng)都在服務(wù)器上,客戶機(jī)通過采用標(biāo)準(zhǔn)的SQL語句等方式來訪問服務(wù)器上數(shù)據(jù)庫中的數(shù)據(jù)。由于這種體系結(jié)構(gòu)把數(shù)據(jù)和對(duì)數(shù)據(jù)的管理都統(tǒng)一放在了服務(wù)器上。就保證了數(shù)據(jù)的安全性和完整性,同時(shí)也可以充分利用服務(wù)器高性能的特點(diǎn)。正因?yàn)榭蛻魴C(jī)/服務(wù)器體系結(jié)構(gòu)的這些優(yōu)點(diǎn),因而得到了非常廣泛的應(yīng)用。它支持應(yīng)用系統(tǒng)同時(shí)訪問多種數(shù)據(jù)庫,其中既包括Oracle,Sybase之類的大型數(shù)據(jù)庫,又包括FOXPRO之類支持ODBC接口的小型數(shù)據(jù)庫,PowerBuilder是完全可視化的數(shù)據(jù)庫開發(fā)工具,它提供了大量的控件,大大加快
18、了項(xiàng)目的開發(fā)速度,也使開發(fā)者更容易掌握數(shù)據(jù)庫的開發(fā)。它使用的編程語言叫做PowerScript,它也是一種高級(jí)的,結(jié)構(gòu)化的編程語言。PowerScript提供了一套完整的嵌入式SQL語句,開發(fā)人員可以像使用其它語句一樣自由地使用SQL語言,這樣就大大增強(qiáng)了程序操縱和訪問數(shù)據(jù)庫的能力??梢哉fPowerBuilder既適合初學(xué)者快速學(xué)習(xí)數(shù)據(jù)庫的開發(fā),又可以讓有經(jīng)驗(yàn)的開發(fā)人員開發(fā)出功能強(qiáng)大的數(shù)據(jù)庫,是一種適用面非常廣的開發(fā)工具。PowerBuilder是一個(gè)用來進(jìn)行客戶/服務(wù)器開發(fā)的完全的可視化開發(fā)環(huán)境。使用PowerBuilder,你可以用一種可視的直觀的方式來創(chuàng)建應(yīng)用程序的用戶界面和數(shù)據(jù)庫接口。
19、這是一個(gè)總的概念,實(shí)際上是開發(fā)人員使用PowerBuilder去開發(fā)應(yīng)用程序,由于所開發(fā)的各種應(yīng)用程序充分利用了圖形用戶接口(GUI)的優(yōu)點(diǎn),所以PowerBuilder被認(rèn)為是一個(gè)圖形工具。在客戶/服務(wù)器結(jié)構(gòu)的應(yīng)用中,PowerBuilder具有描述多個(gè)數(shù)據(jù)庫連接與檢索的能力。特別是PowerBuilder能從大多數(shù)流行的RDBMS中存取數(shù)據(jù),且不管數(shù)據(jù)存放在什么地方;另外,各種應(yīng)用程序又可以獨(dú)立于RDBMS,因?yàn)镻owerBuilder可以使用數(shù)據(jù)庫的標(biāo)準(zhǔn)操作語言SQL(結(jié)構(gòu)化查詢語言)進(jìn)行。使用PowerBuilder,可以很容易地開發(fā)出功能強(qiáng)大的圖形界面的訪問服務(wù)器數(shù)據(jù)庫的應(yīng)用程序,P
20、owerBuilder提供了建立符合工業(yè)標(biāo)準(zhǔn)的應(yīng)用程序(例如訂單登記、會(huì)計(jì)及制造系統(tǒng))所需的所有工具。PowerBuilder應(yīng)用程序由窗口組成,這些窗口包含用戶與之交互的控件。開發(fā)人員可以使用所有標(biāo)準(zhǔn)空間(如按鈕、復(fù)選框、下拉式列表框或編輯框)以及PowerBuilder提供的特殊的使應(yīng)用程序更易于開發(fā)和使用的控件。通常人們把PowerBuilder看成是一種開發(fā)工具,實(shí)際上它比其他工具強(qiáng)得多,是一種強(qiáng)有力的開發(fā)環(huán)境。開發(fā)人員不僅能用它來開發(fā)用戶容易使用的各種應(yīng)用程序還可以通過PowerBuilder修改數(shù)據(jù)庫,利用400多個(gè)內(nèi)部定義函數(shù),可以開發(fā)能和其他應(yīng)用程序進(jìn)行的各種應(yīng)用程序。Powe
21、rBuilder正在成為客戶/服務(wù)器應(yīng)用開發(fā)的標(biāo)準(zhǔn)。相對(duì)于其他任何客戶/服務(wù)器開發(fā)環(huán)境,PowerBuilder使開發(fā)人員的工作更快、成本更低、質(zhì)量更高、功能更強(qiáng)。PowerBuilder為應(yīng)用開發(fā)提供了全面綜合性的支持,可以分別概括為如下幾點(diǎn):1、事件驅(qū)動(dòng)的應(yīng)用程序2、功能強(qiáng)大的編程語言與函數(shù)3、面向?qū)ο蟮木幊?、跨平臺(tái)開發(fā)5、開放的數(shù)據(jù)庫連結(jié)系統(tǒng)1.5數(shù)據(jù)庫理論基礎(chǔ) 一個(gè)成功的信息管理系統(tǒng),是建立在許多條件之上的,而數(shù)據(jù)庫是其中一個(gè)非常重要的條件和關(guān)鍵技術(shù)。 信息管理系統(tǒng)所涉及的數(shù)據(jù)庫設(shè)計(jì)分五個(gè)步驟:數(shù)據(jù)庫需求分析、概念設(shè)計(jì)、邏輯設(shè)計(jì)、物理設(shè)計(jì)與加載測(cè)試。 設(shè)計(jì)出一個(gè)好的信息管理系統(tǒng)數(shù)據(jù)庫
22、,除滿足系統(tǒng)所要求的功能外,還必須遵守下列原則: 1、基本表的個(gè)數(shù)越少越好。2、越主鍵的個(gè)數(shù)越少好。 3、字段的個(gè)數(shù)越少越好。4、所有基本表的設(shè)計(jì)均應(yīng)盡量符合第三范式。 數(shù)據(jù)庫的設(shè)計(jì)中,如何處理多對(duì)多的關(guān)系和如何設(shè)計(jì)主鍵,是兩個(gè)有較大難度,需要重點(diǎn)考慮的問題。下面本人著重從SQL應(yīng)用、數(shù)據(jù)庫設(shè)計(jì)范式和查詢優(yōu)化等方面來分析本課題的關(guān)鍵技術(shù)和實(shí)現(xiàn)難點(diǎn)并加以解決。 1.5.1數(shù)據(jù)庫系統(tǒng)設(shè)計(jì)與范式分析 數(shù)據(jù)庫設(shè)計(jì)主要是進(jìn)行數(shù)據(jù)庫的邏輯設(shè)計(jì),即將數(shù)據(jù)按一定的分類、分組系統(tǒng)和邏輯層次組織起來,是面向用戶的。數(shù)據(jù)庫設(shè)計(jì)時(shí)需要綜合企業(yè)各個(gè)部門的存檔數(shù)據(jù)和數(shù)據(jù)需求,分析各個(gè)數(shù)據(jù)之間的關(guān)系,按照DBMS提供的功能
23、和描述工具,設(shè)計(jì)出規(guī)模適當(dāng)、正確反映數(shù)據(jù)關(guān)系、數(shù)據(jù)冗余少、存取效率高、能滿足多種查詢要求的數(shù)據(jù)模型。 建立起一個(gè)良好的數(shù)據(jù)指標(biāo)體系,是建立數(shù)據(jù)結(jié)構(gòu)和數(shù)據(jù)庫的最重要的環(huán)節(jié)。一個(gè)良好的數(shù)據(jù)指標(biāo)體系是建立DB的必要條件。我們完全可以認(rèn)為所建指標(biāo)體系中的一個(gè)指標(biāo)類就是關(guān)系數(shù)據(jù)庫中的一個(gè)基本表,而這個(gè)指標(biāo)類下面的一個(gè)個(gè)具體指標(biāo)就是這個(gè)基本表中的一個(gè)字段。但如果直接按照這種方式建庫顯然還不能算最佳方案。對(duì)于指標(biāo)體系中數(shù)據(jù)的結(jié)構(gòu)在建庫前還必須進(jìn)行規(guī)范化的重新組織。1.5.2 SQL基礎(chǔ) SQL(Structured Query Language,結(jié)構(gòu)查詢語言)是一個(gè)功能強(qiáng)大的數(shù)據(jù)庫語言。SQL通常用于數(shù)據(jù)庫
24、的通訊。ANSI(美國(guó)國(guó)家標(biāo)準(zhǔn)學(xué)會(huì))聲稱,SQL是關(guān)系數(shù)據(jù)庫管理系統(tǒng)的標(biāo)準(zhǔn)語言。SQL語句通常用于完成一些數(shù)據(jù)庫的操作任務(wù),比如在數(shù)據(jù)庫中更新數(shù)據(jù),或者從數(shù)據(jù)庫中檢索數(shù)據(jù)。使用SQL的常見關(guān)系數(shù)據(jù)庫管理系統(tǒng)有:Oracle、 Sybase、 Microsoft SQL Server、 Access等等。雖然絕大多數(shù)的數(shù)據(jù)庫系統(tǒng)使用SQL,但是它們同樣有獨(dú)立的專有擴(kuò)展功能。但是,標(biāo)準(zhǔn)的SQL命令,比如Select、 Insert、 Update、 Delete、Create和Drop常常被用于完成絕大多數(shù)數(shù)據(jù)庫的操作。SQL Server 2008使用的就是Transact- SQL。 SQL語
25、言有非常突出的優(yōu)點(diǎn),主要是: 1、非過程化語言; 2、統(tǒng)一的語言; 3、關(guān)系數(shù)據(jù)庫的公共語言。 SQL為許多任務(wù)提供了命令,其中包括: 1、查詢數(shù)據(jù); 2、在表中插入、修改和刪除記錄; 3、建立、修改和刪除數(shù)據(jù)對(duì)象; 4、控制數(shù)據(jù)和數(shù)據(jù)對(duì)象的存??;5、保證數(shù)據(jù)庫的一致性和完整性。 以前的數(shù)據(jù)庫管理系統(tǒng)為上述各類操作提供單獨(dú)的語言,而SQL 將全部任務(wù)統(tǒng)一在一種語言中。 所有關(guān)系數(shù)據(jù)庫的公共語言:由于所有主要的關(guān)系數(shù)據(jù)庫管理系統(tǒng)都支持SQL 語言,用戶可將使用SQL的技能從一個(gè)RDBMS轉(zhuǎn)到另一個(gè),所有用SQL編寫的程序都是易于移植的。 SQL功能強(qiáng)大,是一種完備的數(shù)據(jù)處理語言,不僅用于數(shù)據(jù)庫查
26、詢,而且用于數(shù)據(jù)庫中的數(shù)據(jù)修改和更新。 1.5.3 游標(biāo) 在關(guān)系統(tǒng)型數(shù)據(jù)庫的SQL語言中,游標(biāo)是存放結(jié)果集的數(shù)據(jù)對(duì)象。在多數(shù)據(jù)PowerBuilder應(yīng)用程序的開發(fā)過程中,我們可能用不到游標(biāo),因?yàn)樵谄渌_發(fā)工具中有很多需要用游標(biāo)實(shí)現(xiàn)的工作,在PowerBuilder中卻可以用DataWindow或DataStore來代替。事實(shí)上,DataWindow不僅可以替代游標(biāo)進(jìn)行從后臺(tái)數(shù)據(jù)庫查詢多條記錄的復(fù)雜操作,而且還遠(yuǎn)不止這些,但是同DataWindow和DataStore相比,游標(biāo)也有其自身的優(yōu)點(diǎn),比如系統(tǒng)資源占用少,操作靈活,可根據(jù)需要定義變量類型,如全局,實(shí)例或局部類型和訪問類型(私有或公有)
27、等。其中本人在此人事管理系統(tǒng)的實(shí)現(xiàn)過程中就大量的使用了游標(biāo),且頗感高效。 使用游標(biāo)有4個(gè)基本的步驟:聲明游標(biāo)、打開游標(biāo)、提取數(shù)據(jù)、關(guān)閉游標(biāo)。 1、明游標(biāo) 格式:DECLEAR 游標(biāo)名 CURSOR FOR sql語句; 2、開游標(biāo) 格式:OPEN 游標(biāo)名; 3、提取數(shù)據(jù) 格式:FETCH 游標(biāo)名 INTO :變量1,:變量2,變量n; 4、關(guān)閉游標(biāo) 格式:CLOSE 游標(biāo);2 管理系統(tǒng)的分析與設(shè)計(jì) 2.1 系統(tǒng)分析 2.1.1 系統(tǒng)目標(biāo)設(shè)計(jì)管理系統(tǒng)可以用于支持集團(tuán)完成勞動(dòng)人事管理工作,有如下3個(gè)方面的目標(biāo)。 1、實(shí)現(xiàn)集團(tuán)規(guī)范的管理。 2、支持集團(tuán)高效率完成人事管理的日常業(yè)務(wù),包括新員工加入時(shí)人
28、事檔案的建立,老員工轉(zhuǎn)出、辭職、退休等。 3、支持集團(tuán)進(jìn)行勞動(dòng)人事管理及其相關(guān)方面的科學(xué)決策,如集團(tuán)領(lǐng)導(dǎo)根據(jù)現(xiàn)有的員工數(shù)目決定招聘的人數(shù)等。 2.1.2 開發(fā)設(shè)計(jì)思想 本系統(tǒng)開發(fā)設(shè)計(jì)思想有以下幾點(diǎn): 1、利用集團(tuán)現(xiàn)有軟硬件環(huán)境及先進(jìn)的管理系統(tǒng)開發(fā)方案,從而達(dá)到充分利用集團(tuán)現(xiàn)有資源,提高系統(tǒng)開發(fā)水平和應(yīng)用效果的目的。 2、符合集團(tuán)人事管理的規(guī)定,滿足集團(tuán)日常人事管理工作需要,并達(dá)到操作過程中的直觀、方便、實(shí)用、安全等要求。 3、C/S體系結(jié)構(gòu),Client(客戶端)負(fù)責(zé)提供表達(dá)邏輯、顯示用戶界面信息、訪問數(shù)據(jù)庫服務(wù)器;Server(服務(wù)器端)則用于提供數(shù)據(jù)服務(wù)。系統(tǒng)分析等前期工作,應(yīng)盡量詳細(xì)完善
29、,以便以后體系結(jié)構(gòu)的改變,對(duì)于一些安全性要求不高的信息可以采用B/S的方式進(jìn)行訪問。4、系統(tǒng)采用模塊化程序設(shè)計(jì)方法,既便于系統(tǒng)功能的各種組合和修改,又便于未參與開發(fā)的技術(shù)維護(hù)人員補(bǔ)充、維護(hù)。 2.1.3 開發(fā)和運(yùn)行環(huán)境的選擇 本系統(tǒng)采用SQL Server 2008數(shù)據(jù)庫管理系統(tǒng)。前端采用PowerBuilder9.0作為應(yīng)用開發(fā)工具??蛻舳塑浖赪indows98,Windows2008,Windows ME 以及 Windows XP 下均可安裝使用。 2.1.4 系統(tǒng)功能分析 現(xiàn)在在系統(tǒng)開發(fā)總體任務(wù)的基礎(chǔ)上完成系統(tǒng)功能分析。系統(tǒng)開發(fā)的總體任務(wù)階段本人同 集團(tuán)領(lǐng)導(dǎo)協(xié)商確定了本系統(tǒng)需要完成如
30、下功能: 1、 員工各種信息的錄入,包括員工基本信息、學(xué)歷信息、婚姻狀況、部門等。 2、 員工各種信息的修改。 3、 對(duì)于轉(zhuǎn)出、辭職、退休員工信息的刪除。 4、 按照某種條件、查詢、統(tǒng)計(jì)、符合條件的員工信息。 5、 對(duì)查詢、統(tǒng)計(jì)的結(jié)果打印輸出。 6、 后勤集團(tuán)人事管理系統(tǒng)的使用幫助。 2.2系統(tǒng)設(shè)計(jì) 2.2.1 系統(tǒng)功能模塊設(shè)計(jì) 在系統(tǒng)功能分析的基礎(chǔ)上,考慮PowerBuilder程序編制的特點(diǎn)。2.2.2 數(shù)據(jù)庫設(shè)計(jì) 人事管理系統(tǒng)是一個(gè)數(shù)據(jù)庫應(yīng)用系統(tǒng),員工的所有信息都是保存在數(shù)據(jù)庫中。在數(shù)據(jù)庫應(yīng)用系統(tǒng)的開發(fā)過程中,數(shù)據(jù)庫的結(jié)構(gòu)是一據(jù)庫應(yīng)用系統(tǒng)的開發(fā)過程中,數(shù)據(jù)庫的結(jié)構(gòu)是一個(gè)非常重要的問題。當(dāng)
31、然這里指的數(shù)據(jù)庫設(shè)計(jì)是指數(shù)據(jù)庫中各個(gè)表結(jié)構(gòu)的設(shè)計(jì),包括信息保存在哪些表格中、各個(gè)表格的結(jié)構(gòu)如何以及各個(gè)表之間的關(guān)系。 其中數(shù)據(jù)庫結(jié)構(gòu)設(shè)計(jì)的好壞將直接對(duì)應(yīng)用系統(tǒng)的效率以及實(shí)現(xiàn)的效果產(chǎn)生影響,好的數(shù)據(jù)庫設(shè)計(jì)將會(huì)減少數(shù)據(jù)庫的存儲(chǔ)量,數(shù)據(jù)的完整性和一致性較高,系統(tǒng)具有較快的反映速度,簡(jiǎn)化基于此數(shù)據(jù)庫的應(yīng)用程序的實(shí)現(xiàn)等。 由于數(shù)據(jù)庫設(shè)計(jì)的重要性,人們提出了許多數(shù)據(jù)庫結(jié)構(gòu)設(shè)計(jì)的技術(shù),其中這些設(shè)計(jì)方法與設(shè)計(jì)者的工作經(jīng)驗(yàn)有很大關(guān)系。因此要從根本上解決所有數(shù)據(jù)庫結(jié)構(gòu)設(shè)計(jì)的問題,就需要多實(shí)踐,在實(shí)踐中積累經(jīng)驗(yàn)和教訓(xùn)。 (1)數(shù)據(jù)庫需求分析 數(shù)據(jù)庫結(jié)構(gòu)設(shè)計(jì)的第一階段,也是非常重要的一個(gè)階段,就是數(shù)據(jù)庫需求分析,在這
32、個(gè)階段里主要是收集基本數(shù)據(jù)以及數(shù)據(jù)處理的流程,為以后進(jìn)一步設(shè)計(jì)打下基礎(chǔ)。在這個(gè)階段主要解決兩個(gè)問題: 1、內(nèi)容要求。調(diào)查應(yīng)用系統(tǒng)用戶所需要操作的數(shù)據(jù),決定在數(shù)據(jù)庫中存儲(chǔ) 什么數(shù)據(jù)。 2、處理要求。調(diào)查應(yīng)用系統(tǒng)用戶要求對(duì)數(shù)據(jù)進(jìn)行什么樣的處理,理清數(shù)據(jù) 庫中各種數(shù)據(jù)之間的關(guān)系。 在解決這兩個(gè)問題的時(shí)候。本人曾對(duì)集團(tuán)人事信息進(jìn)行了詳細(xì)調(diào)查,從而保證了信息收集的完整性。 通過對(duì)集團(tuán)的人員管理的詳細(xì)調(diào)查分析,設(shè)計(jì)出了數(shù)據(jù)項(xiàng)和數(shù)據(jù)結(jié)構(gòu)如下: 員工基本情況: 包括的數(shù)據(jù)項(xiàng)有員工號(hào)、員工姓名、性別、所在部門、身份證號(hào)、出生日期、籍貫、國(guó)籍、民族、婚姻狀況、健康狀況、政治面貌、參加時(shí)間、血型、參加工作時(shí)間、員工
33、狀態(tài)、狀態(tài)時(shí)間、家庭住址、聯(lián)系電話等。 員工婚姻狀況: 包括的數(shù)據(jù)項(xiàng)有員工號(hào)、愛人姓名、愛人出生年月、結(jié)婚時(shí)間、愛人工作單位、愛人政治面貌、愛人工作職務(wù)等。 員工學(xué)歷信息: 包括的數(shù)據(jù)項(xiàng)有員工號(hào)、學(xué)歷、專業(yè)、畢業(yè)時(shí)間、畢業(yè)學(xué)校、學(xué)校類型、外語1、外語1級(jí)別、外語2、外語2級(jí)別等。 集團(tuán)工作崗位信息: 包括的數(shù)據(jù)項(xiàng)有工作崗位代號(hào)、工作崗位名稱、工作崗位權(quán)力范圍等。 集團(tuán)部門信息:包括的數(shù)據(jù)項(xiàng)有部門代號(hào)、部門名稱、部門經(jīng)理、部門副經(jīng)理等。(2)數(shù)據(jù)庫概念設(shè)計(jì) 在需求分析的基礎(chǔ)上,使用E-R圖(Entity-Relation,實(shí)體-關(guān)系圖)設(shè)計(jì)了針對(duì)集團(tuán)的情況的實(shí)體,以及它們之間的關(guān)系。(3) 數(shù)據(jù)
34、庫邏輯結(jié)構(gòu)設(shè)計(jì) 概念結(jié)構(gòu)是獨(dú)立于實(shí)際數(shù)據(jù)模型的信息結(jié)構(gòu),必須將其轉(zhuǎn)化為邏輯結(jié)構(gòu)后才能進(jìn)行數(shù)據(jù)庫應(yīng)用的設(shè)計(jì)。也就是要將概念上的結(jié)構(gòu)轉(zhuǎn)化為SQL server數(shù)據(jù)庫系統(tǒng)支持的實(shí)際數(shù)據(jù)模型。 第一步轉(zhuǎn)化是將實(shí)體轉(zhuǎn)化為關(guān)系表。即將實(shí)體的屬性定義為表的屬性。 第二步轉(zhuǎn)化是聯(lián)系的轉(zhuǎn)化。即將各個(gè)實(shí)體之間的聯(lián)系轉(zhuǎn)化為表格之間的關(guān)系,如外部鍵的定義。(4) 數(shù)據(jù)庫結(jié)構(gòu)的實(shí)現(xiàn) 在需求分析、概念結(jié)構(gòu)設(shè)計(jì)的基礎(chǔ)上得到數(shù)據(jù) 庫的邏輯結(jié)構(gòu)之后,要在SQL Server 2008數(shù)據(jù)庫系統(tǒng)中實(shí)現(xiàn)該邏輯結(jié)構(gòu)。該邏輯結(jié)構(gòu),可以在SQL Server 2008中的企業(yè)管理器中直接實(shí)現(xiàn),當(dāng)然也 可以用查詢分析器執(zhí)行SQL語句來實(shí)現(xiàn)
35、。SQL語句請(qǐng)參看附錄A。 2.3 小結(jié) 本章分析了人事管理系統(tǒng)的應(yīng)用需求,按照數(shù)據(jù)庫設(shè)計(jì)理論一步 一步地給出了系統(tǒng)需求說明書、局部ER圖、全局ER圖、系統(tǒng)關(guān)系模式,子模式,并利用SQL Server2008建立了數(shù)據(jù)庫。3 管理系統(tǒng)的實(shí)現(xiàn) 3.1 應(yīng)用程序?qū)ο蟮膭?chuàng)建 PowerBuilder中應(yīng)用程序?qū)ο笫菓?yīng)用程序的入口。應(yīng)用程序首先運(yùn)行的腳本就是應(yīng)用程序?qū)ο蟮腛pen事件。所以在應(yīng)用程序?qū)ο蟮膭?chuàng)建過程中,應(yīng)用程序?qū)ο蟮腛pen事件中的腳本是非常重要的。該腳本中包含連接數(shù)據(jù)庫所需要的參數(shù),打開登錄窗口等語句。 隨著企業(yè)數(shù)據(jù)庫應(yīng)用的不斷深入,對(duì)數(shù)據(jù)的安全性、保密性要求也越來越高。在C/S方式的
36、MIS開發(fā)中,數(shù)據(jù)庫服務(wù)器連接參數(shù)(服務(wù)器、數(shù)據(jù)庫、用戶ID的登錄口令等)一般有以下3種存放方式:注冊(cè)表、INI文件或直接寫在程序中。但為了程序的靈活性和擴(kuò)充性,連接參數(shù)寫在程序中不是一個(gè)好的辦法,因?yàn)槊看螀?shù)變動(dòng)(如數(shù)據(jù)庫用戶口令修改)時(shí),都需要改動(dòng)程序源碼并重新編譯。而本系統(tǒng)采用了另一種解決方案,通過INI文件保留數(shù)據(jù)庫連接參數(shù),當(dāng)服務(wù)器的地址、數(shù)據(jù)庫名、用戶名及口令發(fā)生變化時(shí),可以非常容易的通過INI文件進(jìn)行修改。 本系統(tǒng)的INI文件是Config.ini,存放在Config目錄下,用于記錄數(shù)據(jù)庫連接的一些方便修改的參數(shù),如DBMS、SERVERNAME、LOGID等。程序運(yùn)行時(shí)在應(yīng)用程
37、序的OPEN事件中完成INI文件的讀取,并完成連接參數(shù)的配置。如果成功則打開登錄窗口,否則提示錯(cuò)誤信息。應(yīng)用程序運(yùn)行后第一個(gè)出現(xiàn)的窗口是上面語句打開的w_login窗口。在應(yīng)用程序?qū)ο蟮淖兞慷x窗口中定義人事管理系統(tǒng)的三個(gè)全局變量emp_no、job_id和dept_id。 3.2 登錄窗口的設(shè)計(jì) 方放置在應(yīng)用程序?qū)ο蟮腛pen事件程序代碼中有下面一條語句open (w_login);打開登錄的窗口。 在該窗口中放置了2個(gè)靜態(tài)文本框Static Text 控件以顯示文字。放置了兩個(gè)單行編輯框Single line Edit 控件,供用戶輸入登錄的用戶名(sle_1)和口令(sle_2)。放置了
38、一個(gè)Group Box 控件。放置了一個(gè)Picture控件,用來顯示“后勤集團(tuán)”的圖片。在窗口的下了兩個(gè)按鈕控件。一個(gè)用于登錄確認(rèn),一個(gè)用于退出系統(tǒng)。按鈕控件“登錄”的Click事件用于判斷用戶輸入的用戶名、密碼是否為空,如果為空則給出提示信息,如果不空,則與數(shù)據(jù)庫中的密碼相比較,如果相同則進(jìn)入系統(tǒng),否則給出錯(cuò)誤提示。3.3 應(yīng)用程序主窗口 系統(tǒng)應(yīng)用程序的主要功能都是在主窗口w_main及其下打開的眾多 窗口中完成的。將應(yīng)用程序主窗口的類型設(shè)立為MDI Frame with Microhelp類型。把主窗口的菜單設(shè)計(jì)為下面將要介紹的m_mdimain。3.4 菜單的設(shè)計(jì) 在菜單畫面中設(shè)計(jì)應(yīng)用程
39、序主窗口所連接的菜單m_mdimain。各個(gè)菜單中的代碼如下。 (1)“系統(tǒng)”菜單下“新增用戶”子菜單的Clicked事件程序代碼: opensheet (w_inser_user,w_main,6,original!) (2)“系統(tǒng)”菜單下“刪除用戶”子菜單的Clicked事件程序代碼: opensheet (w_delete_user,w_main,6,original!) (3)“系統(tǒng)”菜單下“修改密碼”子菜單的Clicked事件程序代碼: opensheet(w_change_password,w_main,6 ,original!) (4)“系統(tǒng)”菜單下“修改用戶名”子菜單的Clic
40、ked事件程序代碼: opensheet(w_change_user_name,w_main, 6,original!) (5)“系統(tǒng)”菜單下“退出系統(tǒng)”子菜單的Clicked事件程序代碼: close(w_main) (6)“輸入”菜單下“基本信息”了菜單的Clicked事件程序代碼: opensheet (w_basic_advance01,w_main,6,original!) (7)“輸入”菜單下“婚姻狀況”了菜單的Clicked事件程序代碼: opensheet (w_insert_marriage,w_main,6,original!) (8)“輸入”菜單下“學(xué)歷”了菜單的Clic
41、ked事件程序代碼: opensheet (w_insert_school,w_main,6,original!) (9)“輸入”菜單下“部門信息”了菜單的Clicked事件程序代碼: opensheet (w_insert_dept,w_main,6,original!) (10)“輸入”菜單下“職稱信息”了菜單的Clicked事件程序代碼: opensheet (w_insert_job,w_main,6,original!) (11)“維護(hù)”菜單下“基本情況表”了菜單的Clicked事件程序代碼:opensheet (w_weihu_basic,w_main,6,layered!) (1
42、2)“維護(hù)”菜單下“婚姻狀況表”了菜單的Clicked事件程序代碼: opensheet (w_weihu_marriage,w_main,6,original!) (13)“維護(hù)”菜單下“學(xué)歷表”了菜單的Clicked事件程序代碼: opensheet (w_weihu_school,w_main,6,layered!) (14)“維護(hù)”菜單下“部門信息表”了菜單的Clicked事件程序代碼: opensheet (w_weihu_dept,w_main,6,original!) (15)“維護(hù)”菜單下“職稱信息表”了菜單的Clicked事件程序代碼: opensheet (w_weihu_
43、job,w_main,6,original!) (16)“查看”菜單下“基本信息查看”了菜單的Clicked事件程序代碼: opensheet (w_browse,w_main,6,original!) (17)“查看”菜單下“詳細(xì)情況查找”了菜單的Clicked事件程序代碼: opensheet (w_lookfor,w_main,6,layered!) (18)“查看”菜單下“條件查詢”了菜單的Clicked事件程序代碼: opensheet (w_lookfor_detail,w_main,6,original!) (19)“報(bào)表”菜單下“打印機(jī)設(shè)置”了菜單的Clicked事件程序代碼:
44、 PrintSetup() (20)“報(bào)表”菜單下“打印報(bào)表”了菜單的Clicked事件程序代碼: opensheet (w_composite,w_main,6,original!) (21)“窗口”菜單下“層疊”了菜單的Clicked事件程序代碼: W_MAIN.ArrangeSheets(CASCADE!) (22)“窗口”菜單下“平鋪”了菜單的Clicked事件程序代碼: W_MAIN.ArrangeSheets(LAYER!) (23)“幫助”菜單下“關(guān)于”了菜單的Clicked事件程序代碼: opensheet (w_about,w_main,6,original!) (24)“幫
45、助”菜單下“使用幫助”了菜單的Clicked事件程序代碼: showhelp(help/help.chm,index!) 3.5各功能模塊的設(shè)計(jì) 3.5.1 輸入程序的設(shè)計(jì) 輸入程序由5個(gè)輸入窗口組成,分別由主程序窗口的“輸入”菜單下5個(gè)菜單“基本信息”、 “婚姻狀況”、 “學(xué)歷”、 “部門信息”、 “職稱信息”調(diào)用,將數(shù)據(jù)分別輸入到數(shù)據(jù)庫的5個(gè)表格中?,F(xiàn)以輸入基本信息窗口為例來進(jìn)行說明。在輸入窗口上放置的全部由靜態(tài)文本框組成,而沒有由數(shù)據(jù)窗口控件實(shí)現(xiàn),在此窗口中能夠自動(dòng)從職稱信息表、部門信息表中讀取信息并填充到下拉列表框中,實(shí)現(xiàn)輸入選擇化,從而避免了輸入的錯(cuò)誤和錄入人員大量的重復(fù)性勞動(dòng)。 3
46、.5.2 維護(hù)程序的設(shè)計(jì) 維護(hù)程序由5個(gè)維護(hù)窗口組成,分別由主程序窗口的“維護(hù)”菜單下5個(gè)了菜單“基本信息表”、 “婚姻狀況表”、 “學(xué)歷表”、 “部門信息表”、 “職稱信息表”調(diào)用,用于用戶維護(hù)數(shù)據(jù)庫中的5個(gè)相應(yīng)的表格。維護(hù)程序仍然以維護(hù)基本信息窗口為例了來進(jìn)行說明。在維護(hù)窗口w_weihu_basic最上方放置一個(gè)靜態(tài)文本框控件,顯示窗口的用途。在窗口中間放置一個(gè)數(shù)據(jù)窗口控件dw_weihu_basic,該控件連接的數(shù)據(jù)窗口為對(duì)象d_basic_grid。 在窗口的最下方放置3按鈕控件,在其Click事件中分別用來實(shí)現(xiàn)記錄的維護(hù)以及窗口的退出功能。 在窗口的右側(cè)置了數(shù)據(jù)提示的兩個(gè)下拉列表框
47、,以實(shí)現(xiàn)對(duì)用戶的數(shù)據(jù)提示。 3.5.3 查詢程序的設(shè)計(jì) 查詢程序窗口有兩類,一類是一行行瀏覽數(shù)據(jù),還有一類是能夠根據(jù)用戶所輸入的查詢條件,在數(shù)據(jù)庫表格中查找到符合條件的記錄,在此以“條件查詢窗口”進(jìn)行說明。 條件查詢窗口由主程序的“查看”菜單下“條件查詢”子菜單調(diào)用,用于根據(jù)用戶輸入的查詢條件選擇符合條件的記錄。 3.5.4 報(bào)表程序的設(shè)計(jì) PowerBuilder的主要應(yīng)用是數(shù)據(jù)庫應(yīng)用,在實(shí)際應(yīng)用過程中,數(shù)據(jù)統(tǒng)計(jì)、報(bào)表查詢非常多,不可避免要制作大量的報(bào)表,特別是在為企業(yè)開發(fā)的應(yīng)用程序中。 在應(yīng)用程序中可以有多種方法來制作報(bào)表,例如在上面查詢程序的制作中,就加入了一個(gè)報(bào)表的功能,對(duì)于數(shù)據(jù)窗口中
48、的查詢結(jié)果,可以將它們保存在Excel表格文件,然后可以利用Excel工具輕松實(shí)現(xiàn)報(bào)表的制作,打印等工作。 3.5.5 打印窗口的設(shè)計(jì) 在打印窗口中實(shí)現(xiàn)了用戶在打印前打印份數(shù)、頁面范圍等打印屬性的設(shè)置。3.5.6 幫助程序的設(shè)計(jì) 一個(gè)成功的Windows應(yīng)用程序應(yīng)該提供方便、完整的Windows樣式的聯(lián) 機(jī)幫助。這樣在用戶使用此系統(tǒng)應(yīng)用程序的過程中遇到問題時(shí),他就可以直接從應(yīng)用程序中找到答案。一個(gè)完善的幫助文件是應(yīng)用程序的一個(gè)重要組成部分。 PowerBuilder本身沒有提供制作幫助文件的工具。本系統(tǒng)是利用幫助文 件編譯器(quick chm)對(duì)Web文件進(jìn)行編譯,得到幫助文件。該幫助文件在Windows系統(tǒng)中可以被WinHelp.exe程序執(zhí)行。 本系統(tǒng)中PowerBuilder通過函數(shù)ShowHelp()調(diào)用Windows系統(tǒng)的 WinHelp.exe程序,從而打開制作好的幫助文件。 3.6 系統(tǒng)的編譯和發(fā)布 上面已經(jīng)完成了人事管理系統(tǒng)的編程和
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 脫靴器市場(chǎng)分析及投資價(jià)值研究報(bào)告
- 廢物的運(yùn)輸和貯藏行業(yè)相關(guān)項(xiàng)目經(jīng)營(yíng)管理報(bào)告
- 農(nóng)業(yè)作物蟲害生物防治行業(yè)市場(chǎng)調(diào)研分析報(bào)告
- 不銹鋼冰塊產(chǎn)業(yè)鏈招商引資的調(diào)研報(bào)告
- 手動(dòng)磨利器具產(chǎn)品供應(yīng)鏈分析
- 醫(yī)療器械物流行業(yè)營(yíng)銷策略方案
- 電子蜂鳴器市場(chǎng)分析及投資價(jià)值研究報(bào)告
- 竹簾市場(chǎng)發(fā)展前景分析及供需格局研究預(yù)測(cè)報(bào)告
- 底褲服裝產(chǎn)業(yè)鏈招商引資的調(diào)研報(bào)告
- 老繭銼刀市場(chǎng)發(fā)展前景分析及供需格局研究預(yù)測(cè)報(bào)告
- 路緣石滑模施工工法
- 二年級(jí)上冊(cè)數(shù)學(xué)練習(xí)題集及作業(yè)設(shè)計(jì)意圖
- 設(shè)備稼動(dòng)率如何計(jì)算
- 三方共管賬戶資金監(jiān)管協(xié)議書
- 物權(quán)法知識(shí)點(diǎn)
- jtestF級(jí)詞匯
- 定期清洗消毒空調(diào)及通風(fēng)設(shè)施的制度
- 強(qiáng)直性脊柱炎的護(hù)理PPT
- 濕、熱敷法操作規(guī)程及評(píng)分標(biāo)準(zhǔn)
- 護(hù)理質(zhì)量改善項(xiàng)目申報(bào)書
- 熱軋H型鋼理論重量表
評(píng)論
0/150
提交評(píng)論