畢業(yè)設(shè)計(論文)-旅行社綜合管理系統(tǒng)設(shè)計_第1頁
已閱讀1頁,還剩95頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、<p><b>  旅行社綜合管理系統(tǒng)</b></p><p><b>  目 錄</b></p><p><b>  摘要1</b></p><p><b>  第1章:緒言2</b></p><p>  第2章:課題來源及設(shè)計要求

2、2</p><p><b>  2.1課題來源2</b></p><p>  2.2 設(shè)計要求3</p><p>  第3章:需求分析3</p><p><b>  3.1關(guān)鍵問題3</b></p><p>  3.2具體實現(xiàn)中采用的關(guān)鍵技術(shù)3</p>

3、<p>  第4章:系統(tǒng)設(shè)計4</p><p>  4.1系統(tǒng)模塊的劃分4</p><p>  4.2數(shù)據(jù)庫結(jié)構(gòu)的創(chuàng)建4</p><p>  4.2.1旅行社管理數(shù)據(jù)庫與數(shù)據(jù)表的創(chuàng)建4</p><p>  4.2.2導(dǎo)游數(shù)據(jù)表的創(chuàng)建5</p><p>  4.2.3創(chuàng)建組團管理數(shù)據(jù)表5</

4、p><p>  4.2.4創(chuàng)建游客管理數(shù)據(jù)表6</p><p>  4.2.5創(chuàng)建密碼表6</p><p>  4.2.6 關(guān)系型數(shù)據(jù)庫的實現(xiàn)7</p><p>  第5章:系統(tǒng)的實現(xiàn)7</p><p>  5.1開發(fā)環(huán)境及工具7</p><p>  5.2 模塊說明及程序流程設(shè)計8&l

5、t;/p><p>  5.2.1模塊說明:8</p><p>  5.2.2系統(tǒng)流程設(shè)計9</p><p>  第六章、系統(tǒng)運行效果及改進意見38</p><p>  第七章 結(jié)束語39</p><p><b>  參考文獻39</b></p><p><b&g

6、t;  附錄41</b></p><p><b>  摘要</b></p><p>  隨著國人生活水平的不斷提高,人們的生活方式不再僅限于普通的衣、食、住、行。人們不僅要在物質(zhì)方面得到提高,而且在精神方面也追求有一個質(zhì)的突變。于是,人們越來越多的選擇在周末或假期間外出旅游,換個環(huán)境來陶冶一下自己的情操,享受旅游給自己帶來的樂趣,擴展視野。針對大眾的這

7、種需求,許許多多的旅行社就由此孕育而生,各種各樣豐富多彩的旅游景點則需要由一個合適的管理系統(tǒng)來規(guī)范,所以旅行社綜合管理系統(tǒng)的建立是十分必要的.</p><p>  旅行社綜合管理系統(tǒng)是典型的信息管理系統(tǒng)(MIS),其開發(fā)主要包括后臺數(shù)據(jù)庫的建立和維護以及前端應(yīng)用程序的開發(fā)兩個方面。對于前者要求建立起數(shù)據(jù)一致性和完整性強、數(shù)據(jù)安全性好的庫。而對于后者則要求應(yīng)用程序功能完備,易使用等特點。 本論文主要闡述旅行社

8、綜合管理系統(tǒng)各個模塊的設(shè)計思想和實現(xiàn)的關(guān)鍵技術(shù)。在本系統(tǒng)中,當(dāng)使用者輸入合法的登錄信息后,就可以進入到主菜單操作界面,使用者可以通過主操作界面上的菜單項進行各項操作,以達到管理的目的。</p><p><b>  關(guān)鍵詞</b></p><p>  數(shù)據(jù)庫 綜合管理 模塊 規(guī)范性</p><p><b>  Abstr

9、act</b></p><p>  With the continuous improvement of people's living standards, people's lifestyle is no longer limited to ordinary clothing, food, accommodation and transportation. It is not on

10、ly to improve the material, but also in the spirit of the pursuit of a qualitative mutation. Thus, more and more people choose to go out during weekends or holiday travel, a change in environment to mold your own charact

11、er, enjoyment of travel to bring the fun of their own to expand the field of vision. For the general pub</p><p>  Key words Database management module standard</p><p><b>  第1章:緒言</b>

12、;</p><p>  旅行社綜合管理系統(tǒng)是旅游部門及單位不可缺少的部分,它的內(nèi)容對于旅行社的管理者來說至關(guān)重要,所以旅行社綜合管理系統(tǒng)應(yīng)該能夠為用戶提供充足的信息和快捷的查詢手段。但一直以來人們使用傳統(tǒng)人工的方式管理文件檔案,這種管理方式存在著許多缺點,如:效率低、保密性差,另外時間一長,將產(chǎn)生大量的文件和數(shù)據(jù),這對于查找、更新和維護都帶來了不少的困難。隨著科學(xué)技術(shù)的不斷提高,計算機科學(xué)日漸成熟,其強大的功能已

13、為人們深刻認識,它已進入人類社會的各個領(lǐng)域并發(fā)揮著越來越重要的作用。作為計算機應(yīng)用的一部分,使用計算機對旅行社的各類信息進行管理,具有著手工管理所無法比擬的優(yōu)點.例如:檢索迅速、查找方便、可靠性高、存儲量大、保密性好、壽命長、成本低等。這些優(yōu)點能夠極大地提高旅行社數(shù)據(jù)管理的效率,也是企業(yè)的科學(xué)化、正規(guī)化管理,與世界接軌的重要條件。因此,開發(fā)這樣一套管理軟件成為很有必要的事情,在下面的各章中我將以開發(fā)一套旅行社綜合管理系統(tǒng)為例,談?wù)勂溟_發(fā)

14、過程和所涉及到的問題及解決方法。</p><p>  本論文的編寫主要為了使大家了解旅行社管理系統(tǒng)中各項管理的具體操作、各功能模塊的詳細介紹、數(shù)據(jù)獲取的方式、如何進行數(shù)據(jù)的維護等等。使大家對旅行社的管理有一個了解。本人在此次課程編制中擔(dān)任所有的系統(tǒng)模塊的編寫以及論文的寫作。</p><p>  第2章:課題來源及設(shè)計要求</p><p><b>  2.1

15、課題來源</b></p><p>  為什么要開發(fā)一個旅行社綜合管理系統(tǒng)?</p><p>  計算機已成為我們生活、工作中不可缺少一部分。</p><p>  今天,計算機的價格已經(jīng)十分低廉,性能卻有了長足的進步。它已經(jīng)被應(yīng)用于許多領(lǐng)域,計算機之所以如此流行的原因主要有以下幾個方面:1.計算機可以代替人工進行許多繁雜的勞動;2.計算機可以節(jié)省許多資

16、源;3.計算機可以大大的提高人們的工作效率;4.計算機可以使敏感文檔更加安全,等等;</p><p>  5.計算機所擁有的網(wǎng)絡(luò)功能是其它操作方式所不能比擬的。</p><p>  在旅行社中使用計算機管理旅行社各種數(shù)據(jù)的實際意義:</p><p>  在目前國內(nèi)的旅游市場中,大部分的旅行社都借助于計算機來進行管理,但管理軟件的版本較為陳舊且達不到圖文并茂,大部

17、分的管理軟件都編寫于基于DOS系統(tǒng)下的foxbase及foxpro所開發(fā)的,不太符合當(dāng)今旅游市場的需求。旅游市場也迫切的需要有一個規(guī)范化、標準化的管理軟件來進行管理。歸納起來,旅行社綜合管理系統(tǒng)的好處大約有以下幾點:1、可以存儲景點、導(dǎo)游、游客的各類信息;2、只需一到二名檔案錄入員即可操作系統(tǒng),節(jié)省大量人力;3、可以對各張表格進行多選項查詢;</p><p>  4、采用目前比較常用的Access數(shù)據(jù)進行數(shù)

18、據(jù)管理;</p><p>  5、采用圖片框的方式,使系統(tǒng)的界面盡量做到美觀、大方;</p><p>  6、定期的對數(shù)據(jù)進行備份。</p><p><b>  2.2 設(shè)計要求</b></p><p>  綜合管理系統(tǒng)的設(shè)計要求:</p><p>  要使本管理系統(tǒng)的操作盡量簡易化,使對計算機不

19、太了解的人也可以方便的使用。</p><p>  本管理系統(tǒng)的各個模塊的分布要合理,盡可能多的照顧到方方面面的操作。</p><p>  本管理系統(tǒng)的數(shù)據(jù)安全性要得到加強,盡可能避免外來因素對數(shù)據(jù)的破壞。</p><p>  本管理系統(tǒng)的查詢模塊要盡量做到方便、高效、準確率高。</p><p>  本管理系統(tǒng)的界面要盡可能的作到美觀、大方,突

20、出旅游這個重點。</p><p><b>  第3章:需求分析</b></p><p><b>  3.1關(guān)鍵問題</b></p><p>  數(shù)據(jù)庫和Visual Basic的連接;</p><p>  數(shù)據(jù)查詢模塊的制作;</p><p>  報表功能模塊的制作;<

21、/p><p>  在實際應(yīng)用中數(shù)據(jù)查詢的準確性,查詢速度;</p><p>  旅行社綜合管理系統(tǒng)所涉及到的數(shù)據(jù)表是否合理;</p><p>  3.2具體實現(xiàn)中采用的關(guān)鍵技術(shù)</p><p>  1.在本系統(tǒng)中采用access2000數(shù)據(jù)庫與Visual Basic連接,通過ADODC控件所編寫的過程代碼來加載數(shù)據(jù)源。</p>&

22、lt;p>  2.制作查詢模塊中盡可能多的想到可供查詢的條件,使查詢系統(tǒng)不斷完善。</p><p>  3.采用Visual Basic中的報表編輯器來完成報表的制作。</p><p>  4.使sql查詢語言進行系統(tǒng)中的數(shù)據(jù)查詢。</p><p>  5.在具體使用中逐步的發(fā)現(xiàn)問題,解決問題。</p><p><b>  第

23、4章:系統(tǒng)設(shè)計</b></p><p>  4.1系統(tǒng)模塊的劃分</p><p>  在本系統(tǒng)中,我將建立起旅行社管理系統(tǒng)的旅游線路管理模塊、導(dǎo)游管理模塊、組團管理模塊、游客管理模塊、報表打印模塊、系統(tǒng)設(shè)置模塊,其中旅游線路管理模塊又分為旅游線路管理和旅游線路查詢兩個子模塊,導(dǎo)游管理模塊又分為導(dǎo)游管理和導(dǎo)游查詢兩個子模塊,組團管理模塊又分為組團管理和組團查詢兩個子模塊,報表打印

24、模塊提供了四張功能報表的選擇打印,系統(tǒng)設(shè)置模塊分為添加用戶、修改密碼、備份數(shù)據(jù)三個子模塊。(具體見圖4.1)其中,在幾個查詢模塊中,我要使用到SQL查詢語言對表格進行條件查詢操作,在打印報表中,我使用了vb自帶的數(shù)據(jù)報表功能制作了四份報表供使用者選擇打印,在系統(tǒng)設(shè)置模塊中,我采用了利用權(quán)限等級進行管理的方法,如你的登錄權(quán)限是user,你就不可以操作添加用戶模塊了。</p><p>  4.2數(shù)據(jù)庫結(jié)構(gòu)的創(chuàng)建<

25、;/p><p>  4.2.1旅行社管理數(shù)據(jù)庫與數(shù)據(jù)表的創(chuàng)建</p><p>  在創(chuàng)建該系統(tǒng)之前,我首先創(chuàng)建一個數(shù)據(jù)庫(數(shù)據(jù)庫名是database.mdb)。在該數(shù)據(jù)庫中,創(chuàng)建五張數(shù)據(jù)表,即旅游線路數(shù)據(jù)表、導(dǎo)游管理數(shù)據(jù)表、游客管理數(shù)據(jù)表、密碼表以及組團管理數(shù)據(jù)表。(本課程所涉及到的所有數(shù)據(jù)庫都為VB所默認的 Microsoft Access數(shù)據(jù)庫類型)。</p><p&g

26、t;  數(shù)據(jù)庫只是一個容器,它是數(shù)據(jù)表的集合。數(shù)據(jù)庫一經(jīng)創(chuàng)建,用戶就可以在數(shù)據(jù)庫中創(chuàng)建應(yīng)用系統(tǒng)制作所需要的數(shù)據(jù)表,在這里我們首先創(chuàng)建一個旅游線路數(shù)據(jù)表。數(shù)據(jù)表結(jié)構(gòu)就是對一個數(shù)據(jù)中的字段名稱、類型、大小等的定義,在數(shù)據(jù)表結(jié)構(gòu)創(chuàng)建對話框中,不僅可以定制表的結(jié)構(gòu),還可以對數(shù)據(jù)表進行各種操作,如顯示每一個字段的結(jié)構(gòu)、增加或刪除字段、建立索引、對每一字段進行有效性輸入規(guī)劃的定制等。</p><p>  在旅行社管理數(shù)據(jù)庫中

27、我們將創(chuàng)建“旅游線路數(shù)據(jù)表”,其結(jié)構(gòu)如下:</p><p>  表4.2旅游線路數(shù)據(jù)表結(jié)構(gòu)</p><p>  在旅游線路表中,主要景點是對景名中幾個重要分景點的說明;而交通則是說明了交通方式的選擇;住宿同樣是說明住宿的檔次;而行程安排則說明了在旅游中每一天的日程安排,以方便旅客們知道在每一天將做些什么。</p><p>  4.2.2導(dǎo)游數(shù)據(jù)表的創(chuàng)建</p&

28、gt;<p>  在旅行社中,導(dǎo)游往往是不可缺少的,導(dǎo)游的管理是旅行社管理的一個重要方面,因此需要創(chuàng)建一個導(dǎo)游數(shù)據(jù)表,而且可以在系統(tǒng)中制作導(dǎo)游管理窗體,對導(dǎo)游進行各種管理。導(dǎo)游數(shù)據(jù)表的結(jié)構(gòu)如下表所示:</p><p>  表4.3導(dǎo)游數(shù)據(jù)表結(jié)構(gòu)</p><p>  在導(dǎo)游數(shù)據(jù)表中,級別是為了說明該導(dǎo)游所能帶的團隊(有國內(nèi)和國際之分)。</p><p>

29、  4.2.3創(chuàng)建組團管理數(shù)據(jù)表</p><p>  組團管理同樣是旅行社的一個重要管理內(nèi)容,在系統(tǒng)設(shè)計中,我們創(chuàng)建了一個組團管理數(shù)據(jù)表,其數(shù)據(jù)結(jié)構(gòu)如下表所示:</p><p>  表4.4組團管理數(shù)據(jù)表結(jié)構(gòu)</p><p>  在該數(shù)據(jù)表結(jié)構(gòu)中,我為負責(zé)導(dǎo)游創(chuàng)建了一個有(有重復(fù))的索引,因為在一個組團管理數(shù)據(jù)庫中,有可能在時間不沖突的情況下,一個導(dǎo)游在帶完一個團隊

30、后仍將帶領(lǐng)下一個團隊;而旅游團號則不可以重復(fù),所以我給旅游團號加了一個有(無重復(fù))的索引。</p><p>  4.2.4創(chuàng)建游客管理數(shù)據(jù)表</p><p>  一個旅行社的生存就依賴于游客的多少,游客對于一個旅行社來說真乃是衣食父母,怎樣管理好游客,是每一個旅行社都應(yīng)該注意的問題。在本課程中,我創(chuàng)建了一個游客管理數(shù)據(jù)表,其數(shù)據(jù)庫結(jié)構(gòu)如下表所示。</p><p> 

31、 表4.5旅客管理數(shù)據(jù)表結(jié)構(gòu)</p><p>  4.2.5創(chuàng)建密碼表</p><p>  在本課程中,我將創(chuàng)建一個密碼數(shù)據(jù)表,專門用于管理用戶密碼。用戶可以在系統(tǒng)在使用密碼,也可以在系統(tǒng)中維護密碼。密碼數(shù)據(jù)表結(jié)構(gòu)如下表所示:</p><p>  表4.6密碼數(shù)據(jù)表結(jié)構(gòu)</p><p>  其中,我對密碼創(chuàng)建了有(無重復(fù)),因為一個用戶只能有

32、一個密碼。</p><p>  4.2.6 關(guān)系型數(shù)據(jù)庫的實現(xiàn)</p><p>  Access2000 就是關(guān)系數(shù)據(jù)庫開發(fā)工具,數(shù)據(jù)庫能匯集各種信息以供查詢、存儲和檢索。Access 的優(yōu)點在于它能使用數(shù)據(jù)表示圖或自定義窗體收集信息。數(shù)據(jù)表示圖提供了一種類似于 Excel 的電子表格,可以使數(shù)據(jù)庫一目了然。另外,Access 允許創(chuàng)建自定義報表用于打印或輸出數(shù)據(jù)庫中的信息。Access也

33、提供了數(shù)據(jù)存儲庫,可以使用桌面數(shù)據(jù)庫文件把數(shù)據(jù)庫文件置于網(wǎng)絡(luò)文件服務(wù)器,與其他網(wǎng)絡(luò)用戶共享數(shù)據(jù)庫。Access 是一種關(guān)系數(shù)據(jù)庫工具,關(guān)系數(shù)據(jù)庫是已開發(fā)的最通用的數(shù)據(jù)庫之一。如上所述,Access 作為關(guān)系數(shù)據(jù)庫開發(fā)具備了許多優(yōu)點,可以在一個數(shù)據(jù)包中同時擁有桌面數(shù)據(jù)庫的便利和關(guān)系數(shù)據(jù)庫的強大功能。</p><p>  微軟的JET數(shù)據(jù)庫引擎提供了與數(shù)據(jù)庫打交道的途徑,我們是通過它以及Visual Basic 來訪

34、問數(shù)據(jù)庫并對其進行各種操作。Visual Basic、Access以及其他微軟的軟件產(chǎn)品都是通過共用JET數(shù)據(jù)庫引擎,從而給用戶提供了豐富的數(shù)據(jù)類型?!DODC控件在數(shù)據(jù)庫中的信息與將信息顯示給用戶看的Visual Basic程序之間架起了一座橋梁。我們可以設(shè)置ADODC控件的各個屬性,告訴它要調(diào)用那個數(shù)據(jù)庫的哪個部分。缺省情況下, ADODC控件根據(jù)數(shù)據(jù)庫中的一個或多個數(shù)據(jù)表建立一個dynaset-type(動態(tài)集合)類型的記錄

35、集合。一個記錄集合是動態(tài)的也就意味著,當(dāng)原來的數(shù)據(jù)表中的容改變了以后,該記錄集合中的記錄也會隨之改變。ADODC控件還提供了用來瀏覽不同記錄的各種跳轉(zhuǎn)按鈕。將ADODC控件放置在窗體中之后,我們還必須在該控件與要處理的數(shù)據(jù)庫之間建立聯(lián)系。</p><p><b>  第5章:系統(tǒng)的實現(xiàn)</b></p><p>  5.1開發(fā)環(huán)境及工具</p><p

36、>  開發(fā)所需的硬件環(huán)境:奔騰III450, 內(nèi)存64M以上,硬盤空間800M以上。</p><p>  開發(fā)所需的軟件環(huán)境:windows98中文版或更高,visual basic 6.0中文企業(yè)版,microsoft access 2000。</p><p>  開發(fā)所使用的工具:微軟公司的Visual Basic 6.0是Windows應(yīng)用程序開發(fā)工具,使目前最為廣泛的、易學(xué)易

37、用的面向?qū)ο蟮拈_發(fā)工具。Visual Basic提供了大量的控件,這些控件可用于設(shè)計界面和實現(xiàn)各種功能,減少了編程人員的工作量,也簡化了界面設(shè)計過程,從而有效的提高了應(yīng)用程序的運行效率和可靠性。故而,實現(xiàn)本系統(tǒng)VB是一個相對較好的選擇。</p><p>  在本系統(tǒng)中,我將采用visual basic 6.0中的外部數(shù)據(jù)連接使之和access2000中所創(chuàng)建好的數(shù)據(jù)源連接,以達到操作數(shù)據(jù)的目的。</p>

38、;<p>  5.2 模塊說明及程序流程設(shè)計</p><p>  5.2.1模塊說明:</p><p>  在本系統(tǒng)中,我將建立起旅行社管理系統(tǒng)的旅游線路管理模塊、導(dǎo)游管理模塊、組團管理模塊、游客管理模塊、報表打印模塊、系統(tǒng)設(shè)置模塊,其中旅游線路管理模塊又分為旅游線路管理和旅游線路查詢兩個子模塊,導(dǎo)游管理模塊又分為導(dǎo)游管理和導(dǎo)游查詢兩個子模塊,組團管理模塊又分為組團管理和組團

39、查詢兩個子模塊,報表打印模塊提供了四張功能報表的選擇打印,系統(tǒng)設(shè)置模塊分為添加用戶、修改密碼、備份數(shù)據(jù)三個子模塊其中:</p><p>  旅游線路管理功能模塊的作用是對旅游線路進行增加、修改、刪除以及條件查詢等操作;</p><p>  其中,旅游線路管理子模塊的作用是對旅游線路進行編輯,而旅游線路查詢子模塊的作用是對旅游線路進行條件查詢。</p><p>  導(dǎo)

40、游管理功能模塊的作用是對導(dǎo)游數(shù)據(jù)進行增加、修改、刪除以及條件查詢等操作;</p><p>  其中,導(dǎo)游管理子模塊的作用是對導(dǎo)游信息進行編輯,而導(dǎo)游查詢子模塊的作用是對導(dǎo)游具體信息進行條件查詢。</p><p>  組團管理功能模塊的作用是對組團信息進行增加、修改、刪除以及條件查詢等操作;</p><p>  其中,組團管理子模塊的作用是對組團信息進行編輯,而組團查

41、詢子模塊的作用是對組團信息進行條件查詢,此操作適用于游客選擇旅游線路。</p><p>  游客管理功能模塊的作用是對游客信息進行增加、修改、刪除以及條件查詢等操作;</p><p>  其中,游客管理子模塊的作用是對游客信息進行編輯,而游客查詢子模塊的作用是對游客信息進行條件查詢。</p><p>  報表功能模塊的作用是利用Visual Basic中的報表編輯器

42、編輯各數(shù)據(jù)表的報表,這對一個旅行社分析旅游線路的開發(fā)數(shù)量、旅游組團的各理性、導(dǎo)游信息的完善、游客信息的完善、游客所喜歡的旅行線路等是十分必要的。</p><p>  系統(tǒng)權(quán)限維護功能模塊是一個完整的管理系統(tǒng)中不可少的一部分,它起到了維護系統(tǒng)的安全性、保密性以及規(guī)范化等作用。</p><p>  其中添加用戶模塊是對本系統(tǒng)軟件的操作者進行增加操作,在登錄時使用權(quán)限為SYSTEM的才可以增加操

43、作者,而USER權(quán)限不行操作。</p><p>  密碼更改模塊是對本系統(tǒng)的用戶操作密碼進行修改,不斷的修改密碼對于系統(tǒng)的保密工作是十分有成效的。</p><p>  數(shù)據(jù)備份模塊在一個完整的管理系統(tǒng)不可缺少,數(shù)據(jù)的完整性、安全性都依賴于它的存在。</p><p>  5.2.2系統(tǒng)流程設(shè)計</p><p>  5.2.2.1 創(chuàng)建系統(tǒng)啟動封

44、面</p><p>  系統(tǒng)啟動封面是一個應(yīng)用系統(tǒng)開始的界面,通常是進行系統(tǒng)介紹的,人們一看見封面就可以知道這個系統(tǒng)是干什么的。創(chuàng)建系統(tǒng)啟動封面也就意味著創(chuàng)建系統(tǒng)的開始,此處,我采用創(chuàng)建VB數(shù)據(jù)工程的方法創(chuàng)建本系統(tǒng),創(chuàng)建系統(tǒng)啟動界面的過程如下:</p><p>  啟動Visual Basic應(yīng)用程序,進入開發(fā)平臺主界面。</p><p>  在開發(fā)平臺中,創(chuàng)建一個

45、新的工程,此處我選擇創(chuàng)建數(shù)據(jù)工程。</p><p>  在工程類型選擇面板中選擇“數(shù)據(jù)工程”。</p><p>  單擊“打開”按鈕,出現(xiàn)一個數(shù)據(jù)工程,其中包括一個數(shù)據(jù)工程窗體,一個數(shù)據(jù)源環(huán)境和數(shù)據(jù)報表的設(shè)計器。</p><p>  數(shù)據(jù)工程的關(guān)鍵在于使用數(shù)據(jù)源,為數(shù)據(jù)工程創(chuàng)建數(shù)據(jù)源的方法如下:</p><p>  在工程窗口中單擊設(shè)計器/數(shù)

46、據(jù)環(huán)境條目,出現(xiàn)一個數(shù)據(jù)環(huán)境中的連接界面,</p><p>  如圖5.2.2.1.1所示。</p><p>  右擊連接條目Connection1,出現(xiàn)一個彈出式菜單,在彈出式菜單中單擊“屬性”菜單項,即出現(xiàn)數(shù)據(jù)源驅(qū)動程序類型,也即數(shù)據(jù)源提供者類型選擇對話框。如圖5.2.2.1.2所示。</p><p>  選擇Microsoft Jet4.0 OLE DB Pr

47、ovider,單擊下一步按鈕,出現(xiàn)數(shù)據(jù)庫設(shè)置對話框,選擇前面創(chuàng)建的數(shù)據(jù)庫即可,如圖5.2.2.1.3所示。該數(shù)據(jù)庫即作為整個數(shù)據(jù)工程的數(shù)據(jù)源的數(shù)據(jù)庫。數(shù)據(jù)源是否連接成功,可以通過測試連接按鈕進行檢驗。</p><p>  單擊“確定”按鈕之后即成功引入數(shù)據(jù)源??梢园l(fā)現(xiàn)成功連接數(shù)口的連接字符屬性中,出現(xiàn)它的字符串 Provider=Microsoft.Jet.OLEDB.4.0;Persist Security I

48、nfo=False;Data Source=database.mdb這樣整個數(shù)據(jù)工程將使用該數(shù)據(jù)連接和數(shù)據(jù)庫。</p><p>  我還添加了一個模塊,其目的是為了在系統(tǒng)調(diào)用的時候自動調(diào)入數(shù)據(jù)源以及調(diào)入一些公有的變量。其模塊設(shè)計代碼如下:</p><p><b>  通用 聲明</b></p><p>  Public conn As New

49、ADODB.Connection</p><p>  Public rs As New ADODB.Recordset</p><p>  Public dataname As String</p><p>  Public connectionstring As String</p><p>  Public glymc As String

50、</p><p>  Public quanxian As String</p><p>  Public flag As Integer</p><p><b>  通用 main</b></p><p>  Sub Main()</p><p>  dataname = App.Path &a

51、mp; "\database.mdb" '兩句為加載數(shù)據(jù)源</p><p>  connectionstring = "Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=False;Data Source=" & dataname</p><p>  first_f.Show

52、</p><p><b>  End Sub</b></p><p>  接下來,我將創(chuàng)建系統(tǒng)啟動封面,在工程管理器中打開數(shù)據(jù)工程已經(jīng)創(chuàng)建的第一個窗體first_f。</p><p>  保存工程和該窗體到磁盤路徑之中,接下來設(shè)計first_f,該窗體作為系統(tǒng)啟動的封面,其布局如圖5.2.2.1.4所示。據(jù)源之后,在屬性窗</p>

53、<p><b>  其制作過程如下:</b></p><p>  1.設(shè)置窗體first_f的基本屬性如下表所示。</p><p>  系統(tǒng)啟動窗體first_f的主要屬性</p><p>  2.在窗體中放入一個標簽控件,設(shè)其Caption屬性為“系統(tǒng)登錄”并為該標簽控件賦予一個過程代碼,當(dāng)用戶單擊該標簽時即進入系統(tǒng)權(quán)限認證窗體。

54、其過程代碼如下:</p><p>  Private Sub Label1_Click()</p><p>  login_f.Show </p><p><b>  End Sub</b></p><p>  3.再放入一個標簽控件,設(shè)其Caption屬性為“旅行社綜合管理系統(tǒng)”,用于說明該系統(tǒng)的名稱。</p&

55、gt;<p>  4.最后放入一個標簽控件,設(shè)其Caption屬性為“退出系統(tǒng)”,用于退出系統(tǒng),其過程代碼如下:</p><p>  Private Sub Label2_Click()</p><p>  end '用于退出系統(tǒng)</p><p><b>  End Sub</b></p><p>

56、;  5.2.2.2 創(chuàng)建系統(tǒng)登錄界面</p><p>  系統(tǒng)登錄界面是一個管理系統(tǒng)進行權(quán)限認證中不可缺少的一環(huán),它主要用來驗證系統(tǒng)使用的合法身份。保證系統(tǒng)的安全運行。其制作過程如下:</p><p>  1.在工程中增加一個新的窗體Login_f;窗體布局如圖5.2.2.2.1所示。</p><p>  2.在Login_f窗體中放入兩個文本框控件用來接收用戶名

57、和密碼信息。在具體制作中將密碼框的passwordchar的屬性改為*,作用是為了保證輸入密碼時不被他人看見。</p><p>  3.在兩個文本框的邊上放入兩個標簽控件,設(shè)兩個標簽的Caption屬性分別為“用戶名和密碼”。用于說明兩個文本框的作用。</p><p>  4.在窗體中放入兩個按鈕控件,分別設(shè)置其Caption屬性為“進入”、“退出”。用于系統(tǒng)登錄和退出啟動界面之用。登錄按

58、鈕的過程代碼如下:</p><p>  進入按鈕的過程代碼如下:</p><p>  Private Sub Command1_Click()</p><p>  text1.Text = Replace(text1.Text, "'", "")</p><p>  text1.Text = R

59、eplace(text1.Text, Chr(34), "")</p><p>  Text2.Text = Replace(Text2.Text, "'", "")</p><p>  Text2.Text = Replace(Text2.Text, Chr(34), "")</p>&

60、lt;p>  sql = "select * from 密碼表 where 用戶名='" & text1.Text & "' and 密碼= '" & Text2.Text & "'" ‘查詢密碼和用戶是否與表中的相符</p><p>  Set rs = conn.Execu

61、te(sql)</p><p>  If rs.EOF Or rs.BOF Then ‘若其中至少有一個不相符,則不能登錄。</p><p>  MsgBox "帳號口令錯誤,請檢查后重新進入!", vbOKOnly + vbExclamation, "警告"</p><p><b>  Else</b>

62、</p><p>  glymc = rs("用戶名")</p><p>  quanxian = rs("權(quán)限")</p><p><b>  Unload Me</b></p><p>  MDIForm1.Show</p><p><b> 

63、 End If</b></p><p><b>  End Sub</b></p><p>  返回按鈕的過程代碼如下:</p><p>  Private Sub Command2_Click()</p><p>  Unload Me '放棄登錄,返回啟動界面</p><p&g

64、t;<b>  End Sub</b></p><p>  5.2.2.3 創(chuàng)建系統(tǒng)主控界面:</p><p>  系統(tǒng)主控界面是集中管理系統(tǒng)的界面,它主要通過菜單或命令按鈕對其他窗體進行調(diào)用,對報表進行顯示或打印,其制作過程如下:</p><p>  在工程中增加一個新的MDI窗體MDIform1,并加入一個圖片框picture1用于放入在系

65、統(tǒng)啟動后加載的圖片。保存后創(chuàng)建系統(tǒng)主菜單。</p><p>  右鍵單窗體,出現(xiàn)彈出式菜單,選擇“菜單編輯器”菜單項,進入菜單編輯對話框,菜單編輯器 如圖5.2.2.3.1所示。</p><p>  在菜單編輯器中添加系統(tǒng)各個模塊的信息,添加好后的系統(tǒng)界面如圖5.2.2.3.2所示。</p><p>  4.在系統(tǒng)使用中,若你登錄時的權(quán)限選擇為USER,你就不可

66、以使用添加用戶菜單,只有當(dāng)你的選擇權(quán)限為SYSTEM時,你才可使用。其認證代碼如下:</p><p>  Private Sub MDIForm_Load()</p><p>  Picture1.Picture = LoadPicture(App.Path & "\wuyi.jpg")</p><p>  If quanxian = &

67、quot;system" Then '當(dāng)權(quán)限為system時,增加用戶可用</p><p>  adduser_menu.Enabled = True</p><p><b>  Else</b></p><p>  adduser_menu.Enabled = False</p><p><b

68、>  End If</b></p><p><b>  End Sub</b></p><p>  其余菜單的過程代碼基本為打開其它窗體,在此不一一列出。</p><p>  完成窗體設(shè)置后,保存退出。</p><p>  5.2.2.4 創(chuàng)建旅游線路管理窗體</p><p> 

69、 旅游線路管理是旅行社管理的一個重要的管理方面,該窗體主要用于對一個旅行社的旅游線路數(shù)據(jù)進行增加、修改、刪除等操作,創(chuàng)建該管理窗體的基本方法如下:</p><p>  1.在工程中增加一個新的窗體,并將該窗體的名稱修改為lyxlgl。</p><p>  設(shè)置該窗體的基本屬性,如下表所示:</p><p>  窗體lyxlgl的主要屬性</p><

70、;p>  2.在窗體中放入一個ADODC1控件,作為該窗體的數(shù)據(jù)源,注意該工程完全可以直接引入由數(shù)據(jù)環(huán)境引入的數(shù)據(jù)源,但使用數(shù)據(jù)環(huán)境往往需要通過編制命令后再進行各種使用,比較麻煩,因此我們?nèi)圆捎檬褂胊dodc1控件引入數(shù)據(jù)源的方法,在窗體調(diào)用時,數(shù)據(jù)源就已經(jīng)加載,其代碼如下:</p><p>  Private Sub Form_Load()</p><p>  Adodc1.con

71、nectionstring = conn.connectionstring</p><p>  Adodc1.CommandType = adCmdUnknown</p><p>  sql = "select * from 旅游線路表"</p><p>  Adodc1.RecordSource = sql</p><p&g

72、t;  Adodc1.Refresh</p><p>  DataGrid1.AllowAddNew = False</p><p>  DataGrid1.AllowDelete = False</p><p>  DataGrid1.AllowUpdate = False</p><p>  If Adodc1.Recordset.EOF

73、 = False Then</p><p>  Adodc1.Recordset.MoveFirst</p><p><b>  End If</b></p><p>  Set DataGrid1.DataSource = Adodc1</p><p><b>  End Sub</b></

74、p><p>  3.在窗體中放入一個表格控件DataGrid1,該控件的主要作用是顯示數(shù)據(jù),對數(shù)據(jù)進行編輯,其表格控件的基本屬性如下表所示。</p><p>  表格控件DATAGIRD1的基本屬性</p><p>  4.在窗體中再放入八個按鈕控件,分別設(shè)置其CAPTION為,詳細信息、增加、刪除、修改、首記錄、前一個、下一個、尾記錄。其作用是為了對數(shù)據(jù)庫進行操作。其

75、操作過程代碼如下:</p><p><b>  詳細信息按鈕代碼:</b></p><p>  Private Sub Command1_Click()</p><p><b>  flag = 3</b></p><p>  lyxledit.Show 1</p><p>

76、<b>  End Sub</b></p><p><b>  增加按鈕代碼:</b></p><p>  Private Sub Command2_Click()</p><p><b>  flag = 1</b></p><p>  lyxledit.Show 1<

77、/p><p><b>  End Sub</b></p><p><b>  刪除按鈕代碼:</b></p><p>  Private Sub Command3_Click()</p><p>  If Adodc1.Recordset.EOF Then</p><p>  M

78、sgBox "不能刪除空記錄!", vbCritical + vbExclamation, "警告"</p><p><b>  Else</b></p><p>  Dim ok As Integer</p><p>  ok = MsgBox("確認刪除!", vbOKCancel

79、 + vbExclamation, "確認")</p><p>  If ok = 1 Then</p><p>  Adodc1.Recordset.Delete</p><p><b>  End If</b></p><p><b>  End If</b></p&g

80、t;<p><b>  End Sub</b></p><p><b>  修改按鈕代碼:</b></p><p>  Private Sub Command4_Click()</p><p><b>  flag = 2</b></p><p>  lyxled

81、it.Show 1</p><p><b>  End Sub</b></p><p><b>  首記錄按鈕代碼:</b></p><p>  Private Sub Command5_Click()</p><p>  Adodc1.Recordset.MoveFirst</p>

82、<p><b>  End Sub</b></p><p><b>  前一條按鈕代碼:</b></p><p>  Private Sub Command6_Click()</p><p>  If Adodc1.Recordset.BOF = True Then</p><p>  M

83、sgBox "已到文件首部!"</p><p><b>  Else</b></p><p>  Adodc1.Recordset.MovePrevious</p><p><b>  End If</b></p><p><b>  End Sub</b>

84、</p><p><b>  后一條按鈕代碼:</b></p><p>  Private Sub Command7_Click()</p><p>  If Adodc1.Recordset.EOF Then</p><p>  MsgBox "已經(jīng)在文件尾部!"</p><p&

85、gt;<b>  Else</b></p><p>  Adodc1.Recordset.MoveNext</p><p><b>  End If</b></p><p><b>  End Sub</b></p><p><b>  尾記錄按鈕代碼:</b&

86、gt;</p><p>  Private Sub Command8_Click()</p><p>  Adodc1.Recordset.MoveLast</p><p><b>  End Sub</b></p><p>  5.其中,詳細信息按鈕、數(shù)據(jù)的增加和修改按鈕所打開的都是同一個窗體,只是其變量FLAG的值不

87、同,它們的單擊事件是通過判斷FLAG的值不同來對窗體lyxledit進行查看詳細、修改記錄、增加記錄。而窗體lyxledit創(chuàng)建步驟如下:</p><p>  添加一個窗體,命名為lyxledit;</p><p>  在窗體中放入八個標簽控件,八個文本框控件,一個組合框控件,其中text(4)和組合框是重合的,八個標簽控件是為了說明八個文本框控的作用;此外,再放入二個按鈕控件。其過程代碼

88、如下:</p><p>  Option Explicit</p><p>  Dim i As Integer</p><p>  Dim sql As String</p><p>  系統(tǒng)初始化過程代碼:</p><p>  Private Sub init()

89、 '初始化</p><p>  Text1(0).Text = ""</p><p>  Text1(1).Text = ""</p><p>  Text1(2).Text = ""</p><p>  Text1(3).Text = ""<

90、;/p><p>  Text1(4).Text = ""</p><p>  Text1(5).Text = ""</p><p>  Text1(6).Text = ""</p><p>  Text1(7).Text = ""</p><p&g

91、t;  Combo1.Text = ""</p><p><b>  End Sub</b></p><p>  增加用戶時所調(diào)用窗體的過程代碼:</p><p>  Private Sub Command1_Click()</p><p>  If Text1(0).Text = "&qu

92、ot; Then</p><p>  MsgBox "請輸入線路名稱!", vbOKOnly + vbExclamation, "警告!"</p><p>  Text1(0).SetFocus</p><p><b>  Exit Sub</b></p><p><b>

93、;  End If</b></p><p>  If Text1(1).Text = "" Then</p><p>  MsgBox "請輸入主要景點!", vbOKOnly + vbExclamation, "警告!"</p><p>  Text1(1).SetFocus</p>

94、;<p><b>  Exit Sub</b></p><p><b>  End If</b></p><p>  If Text1(2).Text = "" Then</p><p>  MsgBox "請輸入行程天數(shù)!", vbOKOnly + vbExclama

95、tion, "警告!"</p><p>  Text1(2).SetFocus</p><p><b>  Exit Sub</b></p><p><b>  End If</b></p><p>  If Text1(3).Text = "" Then&l

96、t;/p><p>  MsgBox "請輸入報價!", vbOKOnly + vbExclamation, "警告!"</p><p>  Text1(3).SetFocus</p><p><b>  Exit Sub</b></p><p><b>  End If<

97、;/b></p><p>  If Combo1.Text = "" Then</p><p>  MsgBox "請輸入交通方式!", vbOKOnly + vbExclamation, "警告!"</p><p>  Combo1.SetFocus</p><p><

98、b>  Exit Sub</b></p><p><b>  End If</b></p><p>  If Text1(5).Text = "" Then</p><p>  MsgBox "請輸入住宿標準!", vbOKOnly + vbExclamation, "警告!&

99、quot;</p><p>  Text1(5).SetFocus</p><p><b>  Exit Sub</b></p><p><b>  End If</b></p><p>  If Text1(6).Text = "" Then '以上均為在輸入為空的警

100、告</p><p>  MsgBox "請輸入行程安排!", vbOKOnly + vbExclamation, "警告!"</p><p>  Text1(6).SetFocus</p><p><b>  Exit Sub</b></p><p><b>  End

101、If</b></p><p>  If flag = 1 Then '添加操作</p><p>  sql = "select * from 旅游線路表 where 名稱='" + Text1(0).Text + "'"</p><p

102、>  rs.CursorLocation = adUseClient</p><p>  rs.Open sql, conn, adOpenKeyset, adLockOptimistic</p><p>  If rs.EOF = False Then '判斷是否已經(jīng)存在記錄</p><p>  MsgBox

103、"已經(jīng)存在這個旅游線路的記錄!", vbOKOnly + vbExclamation, "警告!"</p><p>  Text1(0).SetFocus</p><p><b>  rs.Close</b></p><p><b>  Else</b></p><

104、;p><b>  rs.AddNew</b></p><p>  rs!名稱 = Text1(0).Text</p><p>  rs!主要景點 = Text1(1).Text</p><p>  rs!行程天數(shù) = Text1(2).Text</p><p>  rs!報價 = Text1(3).Text<

105、/p><p>  rs!交通 = Combo1.Text</p><p>  rs!住宿 = Text1(5).Text</p><p>  rs!行程安排 = Text1(6).Text</p><p>  rs!說明 = Text1(7).Text</p><p><b>  rs.Update</b&

106、gt;</p><p><b>  rs.Close</b></p><p>  Set rs = Nothing</p><p>  MsgBox "記錄已經(jīng)成功添加!", vbOKOnly + vbExclamation, "添加結(jié)果!"</p><p>  lyxlgl.Ad

107、odc1.RecordSource = "select * from 旅游線路表"</p><p>  lyxlgl.Adodc1.Refresh</p><p><b>  Unload Me</b></p><p><b>  End If</b></p><p>  Els

108、eIf flag = 2 Then '修改操作</p><p>  rs.Open "select * from 旅游線路表 where 名稱='" + Text1(0).Text + "'", conn, 1, 3</p><p>  If rs.EOF Then Exit S

109、ub</p><p>  rs!名稱 = Text1(0).Text</p><p>  rs!主要景點 = Text1(1).Text</p><p>  rs!行程天數(shù) = Text1(2).Text</p><p>  rs!報價 = Text1(3).Text</p><p>  rs!交通 = Combo1.

110、Text</p><p>  rs!住宿 = Text1(5).Text</p><p>  rs!行程安排 = Text1(6).Text</p><p>  rs!說明 = Text1(7).Text</p><p><b>  rs.Update</b></p><p><b> 

111、 rs.Close</b></p><p>  Set rs = Nothing</p><p>  MsgBox "記錄已經(jīng)成功修改!", vbOKOnly + vbExclamation, "修改結(jié)果!"</p><p>  lyxlgl.Adodc1.RecordSource = "select *

112、 from 旅游線路表"</p><p>  lyxlgl.Adodc1.Refresh</p><p><b>  Unload Me</b></p><p><b>  End If</b></p><p><b>  End Sub</b></p>

113、<p><b>  退出按鈕過程代碼:</b></p><p>  Private Sub Command2_Click()</p><p><b>  Unload Me</b></p><p><b>  Exit Sub</b></p><p><b&g

114、t;  End Sub</b></p><p>  窗體調(diào)用時加載信息的過程代碼:</p><p>  Private Sub Form_Load()</p><p>  If lyxlgl.Adodc1.Recordset.EOF = False And lyxlgl.Adodc1.Recordset.BOF = False Then</p>

115、;<p>  For i = 0 To 7</p><p>  Text1(i) = lyxlgl.Adodc1.Recordset.Fields(i + 1)</p><p><b>  Next i</b></p><p>  If Not IsNull(lyxlgl.Adodc1.Recordset.Fields(5)) T

116、hen Combo1.Text = lyxlgl.Adodc1.Recordset.Fields(5) Else Combo1.Text = ""</p><p>  lyxlgl.Adodc1.Refresh</p><p><b>  Else</b></p><p>  For i = 0 To 7</p>

117、<p>  Text1(i) = ""</p><p><b>  Next i</b></p><p>  Combo1.Text = ""</p><p><b>  End If</b></p><p>  With Combo1

118、 '添加交通方式選項</p><p>  .AddItem "雙飛"</p><p>  .AddItem "單飛"</p><p>  .AddItem "雙臥"</p><p>  .AddItem "旅行大巴

119、"</p><p><b>  End With</b></p><p>  If flag = 1 Then '判斷為添加信息</p><p>  Me.Caption = "添加" + Me.Caption</p><p>&l

120、t;b>  Call init</b></p><p>  Combo1.ListIndex = 0</p><p>  ElseIf flag = 2 Then '判斷為修改信息</p><p>  Me.Caption = "修改" + Me.Caption</p>

121、;<p><b>  Else</b></p><p>  Me.Caption = Me.Caption & "詳細信息" '判斷為查詢詳細信息</p><p>  Command1.Enabled = False</p><p>  Command1.Visible = False</

122、p><p>  Command2.Caption = "返回"</p><p><b>  End If</b></p><p><b>  End Sub</b></p><p>  創(chuàng)建旅游線路查詢窗體</p><p>  1.在工程中增加一個新的窗體,并

123、將該窗體的名稱修改為lyxlcx。該窗體的主要目的是用于對旅游線路進行條件查詢,設(shè)置該窗體的基本屬性,如下表所示:</p><p>  窗體lyxlcx的主要屬性</p><p>  2.在窗體中放入一個ADODC1控件,作為該窗體的數(shù)據(jù)源,注意該工程完全可以直接引入由數(shù)據(jù)環(huán)境引入的數(shù)據(jù)源,但使用數(shù)據(jù)環(huán)境往往需要通過編制命令后再進行各種使用,比較麻煩,因此我們?nèi)圆捎檬褂胊dodc1控件引入

124、數(shù)據(jù)源的方法,在窗體調(diào)用時,數(shù)據(jù)源就已經(jīng)加載,其代碼如下:</p><p>  Private Sub Form_Load()</p><p>  Adodc1.connectionstring = conn.connectionstring</p><p>  Adodc1.CommandType = adCmdUnknown</p><p&g

125、t;  sql = "select * from 旅游線路表"</p><p>  Adodc1.RecordSource = sql</p><p>  Adodc1.Refresh</p><p>  DataGrid1.AllowAddNew = False</p><p>  DataGrid1.AllowDele

126、te = False</p><p>  DataGrid1.AllowUpdate = False</p><p>  If Adodc1.Recordset.EOF = False Then</p><p>  Adodc1.Recordset.MoveFirst</p><p><b>  End If</b>&l

溫馨提示

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

評論

0/150

提交評論