




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、畢業(yè)設(shè)計(jì)(論文)題目 賓館信息管理系統(tǒng) 系 別 專 業(yè) 軟件開發(fā) 班 級(jí) 姓 名 學(xué) 號(hào) 指導(dǎo)教師(職稱) 日 期 *大學(xué) 摘要隨著計(jì)算機(jī)科學(xué)技術(shù)的發(fā)展,人們已進(jìn)入了互聯(lián)網(wǎng)的時(shí)代,由于目前計(jì)算機(jī)文化基礎(chǔ)以全部提升到Windows平臺(tái),因此作為其后繼課程的程序設(shè)計(jì)語言,自然也應(yīng)在這一平臺(tái)上深入下去。本次設(shè)計(jì)之所以采用Visual Basic ,就是因?yàn)槠渚哂谐绦蛟O(shè)計(jì)語言簡單易學(xué)、易用的特點(diǎn),又在編程系統(tǒng)中引入了面向?qū)ο蟮臋C(jī)制,用一種巧妙的方法把Windows編程的復(fù)雜性封裝起來,提供了一種可視界面的設(shè)計(jì)方法,使用窗體和控件設(shè)計(jì)應(yīng)用程序界面,從而極大的提高了用戶開發(fā)應(yīng)用程序的效率?,F(xiàn)代社會(huì)中,各行
2、各業(yè)都通過應(yīng)用計(jì)算機(jī)實(shí)現(xiàn)自動(dòng)化,提高工作效率,把勞動(dòng)者從繁雜的腦力勞動(dòng)和體力勞動(dòng)中解放出來。近20年間,管理信息系統(tǒng)(MIS)的應(yīng)用得到了迅速的發(fā)展,尤其是今年來Internet/Intranet技術(shù)的飛速發(fā)展,為企業(yè)建立MIS系統(tǒng)提供了良好的支持環(huán)境。通過本次設(shè)計(jì),開發(fā)軟件應(yīng)如何下手,按照怎樣的順序來完成軟件,從這種基本思想出發(fā),提出了軟件開發(fā)中一些問題的復(fù)雜性和軟件工程學(xué)的概念。 SUMMARYWith the development of computer, the period of the Internet has come into the humanity. Because th
3、e basis of the computer agriculture has returned the stage of Windows, and as the continuing process design computer language, so it will be continuing. The design uses the Visual Basic, owning to its character of easing to learn and it also use the operate object system; another method is that It c
4、overs the design of the Windows and private a picture design method, which private a visual designing method, and designing the application process through using the window and control, therefore it increase the efficiency of designing application by process-designer.In the modern society, all kinds
5、 of company has already made out of automatic by using computer as well as increasing the work-efficiency, therefore it celebrate the worker from complex brain and hand. In recent twenty years, the Management Information System gets rapidly development, especially for the rapid development of the In
6、ternet in recent years, which private the environment for making up the MIS.Through the design, I know how to design application software, and how to order the sequence to finish the application software. Starting from this basic thought, it private a serious question in designing application softwa
7、re and software project exception.第一章 緒論數(shù)據(jù)是信息的一種,它是一種存儲(chǔ)數(shù)據(jù)并對(duì)數(shù)據(jù)進(jìn)行操作的工具。數(shù)據(jù)庫的作用在于組織和表達(dá)信息,簡而言之,數(shù)據(jù)庫就是信息的集合。計(jì)算機(jī)的數(shù)據(jù)庫可以分為兩類:關(guān)系數(shù)據(jù)庫和非關(guān)系數(shù)據(jù)庫。 Microsoft公司的Access數(shù)據(jù)庫管理系統(tǒng)是目前國內(nèi)使用較為普遍的一種數(shù)據(jù)庫軟件。它既是一個(gè)獨(dú)立的數(shù)據(jù)庫平臺(tái)也是一個(gè)強(qiáng)大的數(shù)據(jù)庫開發(fā)工具,可以用來開發(fā)定制客戶機(jī)/服務(wù)器數(shù)據(jù)庫應(yīng)用程序。它包括了30多個(gè)向?qū)Э梢詧?zhí)行許多常見的任務(wù),如創(chuàng)建窗體,報(bào)表和查詢。Access數(shù)據(jù)庫在設(shè)計(jì)大量的用戶或頻繁的操作時(shí),它的性能和可靠性會(huì)大幅度下降。
8、Visual Basic6.0是微軟推出的基于窗口的可視化開發(fā)工具。Visual所指的是開發(fā)圖形用戶界面的可視化方法,無需寫大量源代碼去描述用戶界面元素的外觀和位置,而只要把預(yù)先建立好的控件對(duì)象拖入到設(shè)計(jì)窗體上,著就是可視化。Visual Basic是Windows下最快捷,便利的通用開發(fā)工具之一,它具有智能特性集成開發(fā)環(huán)境。VB6.0的特有四大特點(diǎn):可視化,面向?qū)ο螅考幊?,事件?qū)動(dòng)等。 賓館信息管理系統(tǒng)是典型的信息管理系統(tǒng),其開發(fā)主要包括后臺(tái)數(shù)據(jù)庫的建立和維護(hù)以及前端應(yīng)用程序的開發(fā)兩個(gè)方面。對(duì)于前者要求建立起數(shù)據(jù)一致性和完整性強(qiáng),數(shù)據(jù)安全性較好的庫,而對(duì)于后者而言則要求應(yīng)用程序功能完備,
9、易使用的特點(diǎn)。賓館信息要實(shí)現(xiàn)一個(gè)管理系統(tǒng)為用戶使用最關(guān)鍵的是系統(tǒng)能夠快速高效地處理并優(yōu)化多用戶條件下的數(shù)據(jù)訪問和查詢要求,以及更快捷的實(shí)現(xiàn)它便于用戶使用。基于Microsoft Access2000和VB6.0各自的特點(diǎn),本文通過使用這兩者的集成設(shè)計(jì)并開發(fā)了賓館信息管理系統(tǒng)的網(wǎng)絡(luò)實(shí)現(xiàn)方案。第二章 需求分析信息社會(huì)的高科技,商品經(jīng)濟(jì)化的高效益,使計(jì)算機(jī)的應(yīng)用已普及到經(jīng)濟(jì)和社會(huì)生活的各個(gè)領(lǐng)域。計(jì)算機(jī)雖然與人類的關(guān)系愈來愈密切,還有人由于計(jì)算機(jī)操作不方便繼續(xù)用手工勞動(dòng)。為了適應(yīng)現(xiàn)代社會(huì)人們高度強(qiáng)烈的時(shí)間觀念,檔案管理系統(tǒng)軟件為企業(yè)和公司帶來了極大的方便。該軟件是以編程語言為實(shí)現(xiàn)的,其功能在系統(tǒng)內(nèi)部有
10、源代碼直接完成。使用者可以了解本軟件的基本工作原理。操作人員只需輸入一些簡單的知識(shí)和培訓(xùn),即可達(dá)到操作的目標(biāo)??尚孕蟹治鲑e館在正常的運(yùn)營中需要對(duì)客房資源、顧客信息、結(jié)算信息進(jìn)行管理,利用賓館管理信息系統(tǒng)及時(shí)了解各個(gè)環(huán)節(jié)中信息的變更,有利于提高管理效率.經(jīng)濟(jì)上的可行性首先,本系統(tǒng)功能實(shí)現(xiàn)較容易,需要花費(fèi)的人力物力相對(duì)較少,在經(jīng)濟(jì)上是可以承擔(dān)。其次,當(dāng)前電腦配件的性能不斷提高,高檔計(jì)算機(jī)的性能甚至超過了小型服務(wù)器,可以花費(fèi)相對(duì)較少的費(fèi)用就可買到性能比較高的機(jī)器。這些都為本系統(tǒng)的開發(fā)提供了較為充分的經(jīng)濟(jì)基礎(chǔ)。 技術(shù)上的可行性該軟件適用于Win98/2000/NT/XP等系統(tǒng),并且功能齊全、操作方便、
11、效果甚佳。開發(fā)工具可選用Visual Basic 6.0,它作為一種面向?qū)ο蟮目梢暬_發(fā)工具,不僅開發(fā)速度快,效率高,成本低,界面友好,數(shù)據(jù)和圖形功能強(qiáng)大,而且易于掌握和使用。另外,在數(shù)據(jù)庫功能方面新增了功能強(qiáng)大、使用方便的ADO(Active Database Object)技術(shù),可以方便地和多種數(shù)據(jù)庫相連,并支持Client/Server多層結(jié)構(gòu)模式,易于將本系統(tǒng)向其他數(shù)據(jù)庫環(huán)境的移植和擴(kuò)展。數(shù)據(jù)庫可選用 Microsoft Access 2000,作為微軟出品的數(shù)據(jù)庫產(chǎn)品,其性能比較高,而且數(shù)據(jù)庫安全管理形式靈活方便,更為突出的是它與Windows2000操作系統(tǒng)的集成和協(xié)調(diào)性是其他數(shù)據(jù)
12、庫產(chǎn)品不能比擬的系統(tǒng)總體設(shè)計(jì) 軟件的研制工作經(jīng)過需求分析階段,完全弄清楚了用戶的需求,也就是解決軟件“做什么”的問題以后,就進(jìn)入了軟件設(shè)計(jì)階段,在該階段著手實(shí)現(xiàn)軟件需求的工作,也就是解決“怎么做”的問題。通常把設(shè)計(jì)階段分成兩步,即結(jié)構(gòu)設(shè)計(jì)(或概要設(shè)計(jì))及詳細(xì)設(shè)計(jì)。結(jié)構(gòu)設(shè)計(jì)階段著重解決實(shí)現(xiàn)需求的程序模塊設(shè)計(jì)問題,包括如何把被開發(fā)的軟件分成若干個(gè)對(duì)象,決定對(duì)象的屬性、方法、事件等接口,確定用戶與應(yīng)用程序如何交互作用。詳細(xì)設(shè)計(jì)是指開發(fā)代碼以實(shí)現(xiàn)在結(jié)構(gòu)設(shè)計(jì)中決定的類及用戶界面。模塊設(shè)計(jì)具體描述系統(tǒng)開發(fā)的總體任務(wù)是實(shí)現(xiàn)賓館各種信息的系統(tǒng)化、規(guī)范化和自動(dòng)化。2.1主要完成功能:有關(guān)客房標(biāo)準(zhǔn)的制定、標(biāo)準(zhǔn)信息
13、的輸入,包括標(biāo)準(zhǔn)編號(hào)、標(biāo)準(zhǔn)名稱、房間面積、床位數(shù)量、住房單價(jià)、是否有空調(diào)、電視機(jī)、電話以及單獨(dú)衛(wèi)生間等客房標(biāo)準(zhǔn)信息的修改、查詢等??头炕拘畔⒌妮斎耄头烤幪?hào)、客房類型、客房位置、客房單價(jià)、備注等??头炕拘畔⒌牟樵?、修改,包括客房編號(hào)、客房類型、客房位置、客房單價(jià)、備注等。剩余客房信息的查詢等。訂房信息的輸入,包括客房編號(hào)、客房種類、客房位置、客房單價(jià)、顧客姓名、顧客身份證號(hào)碼、入住日期、折扣、備注信息等。訂房信息的修改和查詢,包括客房編號(hào)、客房種類、客房位置、客房單價(jià)、顧客姓名、顧客身份證號(hào)碼、入住日期、折扣、備注信息等。結(jié)算信息的輸入,包括客房編號(hào)、客房種類、位置、客房單價(jià)、顧客姓名
14、、顧客身份證號(hào)碼、入住日期、折扣、結(jié)算日期、備注信息等。結(jié)算信息的修改和查詢,包括客房編號(hào)、客房種類、客房位置、客房單價(jià)、顧客姓名、顧客身份證號(hào)碼、入住日期、折扣、結(jié)日期、備注信息等。對(duì)系統(tǒng)進(jìn)行分析得到如下的系統(tǒng)功能模塊圖。 賓館管理系統(tǒng) 客房信息管理系統(tǒng)管理結(jié)算信息管理訂房信息管理修改密碼用戶管理剩余客房信息查詢?cè)O(shè)置客房標(biāo)準(zhǔn)訂房信息查詢?cè)O(shè)置客房信息訂房信息添加訂房信息修改結(jié)算信息查詢結(jié)算信息修改結(jié)算信息添加 客房信息查詢客房信息查詢客房信息查詢客房信息查詢客房信息查詢2.2數(shù)據(jù)流程圖基本信息輸入客房登記客房標(biāo)準(zhǔn)設(shè)置客房標(biāo)準(zhǔn)信息管理基本信息錄入顧客登記客房信息管理訂房信息輸入結(jié)算信息輸入訂房信
15、息設(shè)置客房信息返回結(jié)算信息管理2.3實(shí)體客房單價(jià)床位數(shù)量標(biāo)準(zhǔn)編號(hào)E-R圖客房標(biāo)準(zhǔn)信息實(shí)體E-R圖客房標(biāo)準(zhǔn)信息實(shí)體標(biāo)準(zhǔn)名稱客房信息實(shí)體E-R圖客房編號(hào)客房標(biāo)準(zhǔn)客房位置客房單價(jià)客房信息實(shí)體訂房信息實(shí)體E-R圖訂房信息實(shí)體客房信息折扣顧客信息入住時(shí)間結(jié)算信息實(shí)體E-R圖結(jié)算信息實(shí)體顧客信息結(jié)算金額客房信息結(jié)算時(shí)間第三章 系統(tǒng)的配置 本文中的企業(yè)檔案管理系統(tǒng)是基于Microsoft Access2000和Visual Basic6.0來設(shè)計(jì)并開發(fā)的,因此在進(jìn)行數(shù)據(jù)庫的設(shè)計(jì)創(chuàng)建之前,必須安裝并配置上述兩個(gè)軟件。3.1 Microsoft Access2000的安裝 安裝Microsoft Access2
16、000的時(shí)候,可以選擇只安裝Microsoft Access2000,也可以同時(shí)安裝其他的Office應(yīng)用程序或組件,安裝時(shí)采用默認(rèn)設(shè)置即可。3.2 Visual Basic 6.0的安裝 啟動(dòng)安裝程序,通過Windows的“控制面板/添加刪除程序”,“資源管理器”,“我的電腦”“更改文件夾”按鈕設(shè)置安裝路徑,在Visual Basic6.0提供的“典型安裝”和“自定義安裝”方式中選擇一種,重新啟動(dòng)計(jì)算機(jī)完成安裝過程。第四章 數(shù)據(jù)庫的設(shè)計(jì)4.1數(shù)據(jù)表的設(shè)計(jì)設(shè)置操作人員。系統(tǒng)初始設(shè)置一個(gè)超級(jí)用戶名和密碼,操作人員可以利用這個(gè)超級(jí)用戶名和密碼登錄,之后,可以設(shè)置其他的超級(jí)用戶名稱,也可以設(shè)置權(quán)限用
17、戶,設(shè)置這個(gè)用戶可以使用的權(quán)限。roomtype 客房標(biāo)準(zhǔn)信息表列名數(shù)據(jù)類型可否為空說明TypeidvarcharNOTNULL標(biāo)準(zhǔn)編號(hào)TypenamevarcharNOTNULL標(biāo)準(zhǔn)名稱areafloatNULL房間面積bednumfloatNULL床位數(shù)量hairconditionvarcharNULL是否有空調(diào)htelephonevarcharNULL是否有電話htekevisionvarcharNULL是否有電視htolietvarcharNULL是否有獨(dú)立衛(wèi)生間pricefloatNULL單價(jià)Rooms 客房信息表列名數(shù)據(jù)類型可否為空說明roomNOvarcharNOTNULL客房編
18、號(hào)roomtypevarcharNOTNULL客房種類roompositionvarcharNULL客房位置roompriceFloatNULL單價(jià)PutupvarcharNULL是否被預(yù)定roommemotextNULL備注信息Bookin 訂房信息表列名數(shù)據(jù)類型可否為空說明booknovarcharNOTNULL訂房編號(hào)customnamevarcharNOTNULL顧客姓名customIDvarcharNOTNULL身份證號(hào)roomnovarcharNOTNULL客房編號(hào)iddatedatetimeNULL入住信息discountfloatNULL折扣inmemotextNULL備注ch
19、eckdatedatetimeNULL結(jié)算日期amountfloatNULL金額42關(guān)系的設(shè)計(jì)數(shù)據(jù)庫之間的關(guān)系指明兩個(gè)庫之間共享一個(gè)共同的關(guān)鍵字值。一個(gè)連接是指一種虛擬的表,這種表是在當(dāng)用戶要求從相互關(guān)聯(lián)的各個(gè)不同的表中獲取信息時(shí)建立的,關(guān)鍵字段用于在相互連接的不同表中查找匹配的記錄,一個(gè)更高級(jí)的連接形式稱為自然連接。這種連接是指一個(gè)表被連接到它自己的一個(gè)字段,或在不同的記錄中由重復(fù)數(shù)據(jù)的組合字段。數(shù)據(jù)庫有三種不同類型的關(guān)鍵字:主關(guān)鍵字,組合關(guān)鍵字和外關(guān)鍵字。在表中使用的關(guān)鍵字類型用于描述庫表示什么以及在數(shù)據(jù)庫中如何與其他的庫建立關(guān)系。關(guān)系是數(shù)據(jù)庫查詢?cè)O(shè)計(jì)的基礎(chǔ)。關(guān)系數(shù)據(jù)庫中表之間的關(guān)系有一對(duì)
20、一的關(guān)系,一對(duì)多的關(guān)系以及多對(duì)多的關(guān)系,其中前兩種是最為常用的兩種關(guān)系。 第五章 詳細(xì)設(shè)計(jì)51詳細(xì)窗體的設(shè)計(jì)主窗體 子窗體這部分窗體是整個(gè)系統(tǒng)的核心部分。建立登錄窗體作為一個(gè)管理系統(tǒng),不僅要求它具有實(shí)用性和可操作性,系統(tǒng)安全也是必不可少的分之一,一個(gè)檔案管理系統(tǒng)應(yīng)該不是任何人都可以隨便使用的,應(yīng)該具有不同的權(quán)限。為了區(qū)分這一不同,登錄窗體就顯得很必要了。為了在一定程序上防止使用窮舉法破解用戶密碼,設(shè)定用戶如果輸入用戶和密碼出錯(cuò)3次,系統(tǒng)將自動(dòng)退出。首先判斷用戶輸入是否為空,如果為空,則給出提示;如果不為空,則在系統(tǒng)數(shù)據(jù)中的系統(tǒng)信息表中檢查是否有這個(gè)用戶名,然后打開數(shù)據(jù)中確定存在這個(gè)用戶名,則檢
21、查對(duì)應(yīng)的密碼是否正確,如果不正確則給提示,并要求用戶重新輸入密碼:如果用戶和密碼都正確,則記錄當(dāng)前用戶的用戶和權(quán)限,關(guān)閉數(shù)據(jù)對(duì)象,關(guān)閉窗體同時(shí)加載主窗體:除非用戶名和密碼都正確,否則cnt的值將隨著每一次單擊“確定”按鈕而增加1,當(dāng)出錯(cuò)3次,即cnt的值為3時(shí),退出系統(tǒng)。用戶以正確的用戶名和密碼登錄后,還有著權(quán)限不同的區(qū)別。本系統(tǒng)設(shè)立了兩種用戶權(quán)限System和guest。其中,system為系統(tǒng)管理員權(quán)限,具有瀏覽、管理數(shù)據(jù)庫,添加新用戶等全部權(quán)限。52程序代碼的編寫創(chuàng)建公用模塊 Module1.bas Public Function ExecuteSQL(ByValSQL As Strin
22、g,MsgString AsString)ADODB.Recordset 執(zhí)行SQL語句,并返回記錄集對(duì)象Dim cnn As ADODB.ConnectionDim rst As ADODB.RecordsetDim sTokens() As String異常處理On Error GoTo ExecuteSQL_Error用Split函數(shù)產(chǎn)生一個(gè)包含各個(gè)子串的數(shù)組 sTokens=Split(SQL) Set cnn=NEW ADODB.Connection打開連接 cnn.Open ConnectString If InStr(“INSERT,DELETE,UPDATE”,UCase$(s
23、Tokens(0) Then Cnn.Execute SQL MsgString=sTokens(0)&”query successful” Else Set rst=NEW ADODO.Recordset rst.Open Trim$(SQL),cnn,adOpenKeyset,adLockOptimistic rst.MoveLast get RecordCount 返回記錄集對(duì)象 Set ExecuteSQL=rst MsgString=”查詢到”&rst.RecordCount&”條記錄” End IfExecuteSQL_Exit: Set rst=Nothi
24、ng Set cnn=Nothing Exit FunctionExecuteSQL_Error: MsgString=”查詢錯(cuò)誤:”&Err.Description Resume ExecuteSQL_ExitEnd FunctionPublic Sub EnterToTab(Keyasc As Integer)判斷是否為回車鍵 If Keyasc=13 Then Keyasc用來保存當(dāng)前按鍵 轉(zhuǎn)換成Tab鍵 SendKeys”TAB” End IfEnd sub添加全局變量,用來記錄各個(gè)窗口的讀寫狀態(tài),代碼如下:Public flagTedit As Boolean 標(biāo)示是否進(jìn)入修
25、改的窗體Public flagRedit As BooleanPublic flagBedit As BooleanPublic flagCedit As BooleanPublic gintCmode As Integer Public gintTmode As Integer 記錄是添加還是修改狀態(tài),1為添加,2為修改Public gintRmode As IntegerPublic gintBmode As Integer Public flagSedit As Boolean系統(tǒng)用戶管理模塊的創(chuàng)建 用戶管理模塊主要實(shí)現(xiàn): ·用戶登陸。 ·添加用戶。·修改用
26、戶 具體客房標(biāo)準(zhǔn)添加代碼:Private Sub Form_Load() 載入窗體后,判斷所處狀態(tài) Dim intCount As Integer Dim MsgText As String Dim i As Integer If gintTmode=1 Then 判斷是否屬于添加狀態(tài) Me.Caption=Me.Caption & ”添加” For i=0 To 3 Combo1(i).AddItem ”否” Combo1(i).AddItem ”是” Combo1(i).ListIndex=0 Next i ElseIf gintTmode=2 Then 判斷是否處于修改狀態(tài) Se
27、t mrc=ExecuteSql(txtSQL,MsgText) If mrc.EOF=false Then With mrc For intCount=0 To 3 txtItem(intCount)=.Fields(intCount) Next intCount txtItem(4)=.Fileds(8) For i=0 To 3 Combo1(i).Additem ”否” Combo1(i).Additem ”是” Combo1(i).ListIndex=0 Next i End With txtItem(0).Enabled=False End If Me.Caption=Me.cap
28、tion&”修改”End IfmblChang=False End SubPrivate Sub cmd_Click()用戶輸入內(nèi)容完畢后,單擊cmdSave按鈕觸發(fā)Click事件 Dim intCount As Integer Dim sMeg As String Dim MsgText As String For intCount=0 To 4 判斷是否輸入內(nèi)容 If Trim(txtItem(intCount)&”)=” Then Select Case intCount Case 0 sMeg=”標(biāo)準(zhǔn)編號(hào)” Case 1 sMeg=”標(biāo)準(zhǔn)名稱” Case 2 sMeg=
29、”房間面積” Case 3 sMeg=”床位數(shù)量” Case 4 sMeg=”床位單價(jià)” End Select sMeg=sMeg&”不能為空!” MsgBox sMeg,vbOkOnly+vbExclamation,”警告” txtItem(intCount).SetFocus Exit Sub End if Next intCount 判斷輸入內(nèi)容是否為數(shù)字 For intCount=2 To 4 If Not IsNumeric(Trim(txtItem(intCount) Then Select Case intCount Case 2 sMeg=”房間面積” Case 3 s
30、Meg=”床位數(shù)量” Case 4 sMeg=”床位單價(jià)” End Select sMeg=sMeg&”請(qǐng)輸入數(shù)字!”MsgBox sMeg,vbOKOnly+vbExclamation,”警告”txtItem(intCount).SeFocusExit Sub End If Next intCount If gintTmode=1 Then 判斷是否有相同ID記錄 txtSQL=”select*from roomtype where typeid_ =”&Trim(txtItem(0)&” Set mrc=ExecuteSQL(txtSQL,MsgText) If m
31、rc.EOF=False Then MsgBox “已經(jīng)存在此標(biāo)準(zhǔn)編號(hào)的記錄!”,vbOKOnly+vbExclamation,”警告” txtItem(0).SetFocus Exit Sub End If Mrc.Close End If txtSQL=”select * from roomtype where typeid<>”&Trim(txtItem(0)&”and typename=”&Trim(txtItem(1)&” Set mrc=ExecuteSQL(txtSQL,MsgText) If mrc.EOF=False Then Ms
32、gBox”已經(jīng)存在相同客房標(biāo)準(zhǔn)的記錄!”,vbOKOnly+vbExclamation,“警告” txtItem(1).Setfocus Exit Sub End If txtSQL=”delete from roomtype where typeid=”&Trim(txtItem(0)&”刪除已有記錄 Set mrc=ExecuteSQL(txtSQL,MsgText) txtSQL=”select *from roottype”添加新記錄 Set mrc=ExecuteSQL(txtSQL,MsgText) mrc.AddNew For intCount=0 To 3 mr
33、c.Fields(intCount)=Trim(txtItem(intCount) Next intCount For intCount=0 To 3 mrc.Fields(intCount+4)=Trim(Combo1(intCount) Next intCount mrc.Fields(8)=Trim(txtItem(4) mrc.Update 更新數(shù)據(jù)庫 mrc.Close if gintTmode=1 Then 判斷是否屬于添加狀態(tài) MsgBox “添加紀(jì)錄成功!”,vbOKOnly+vbExclamtion,“添加記錄” For intCount=0 To 4 txtItem(int
34、Count)=” 清除已經(jīng)輸入的內(nèi)容 Next intCount For intCount=0 To 3 Combo1(intCount).ListIndex=0 Next intCount mblChange=False判斷是否打開窗口 if flagTedit Then Unload frmRoomtype frmRoomtype.txtSQL=“select *from roomtype” frmRoomtype.Show End If ElseIf gintTmode=2 Then 判斷是否處于修改狀態(tài) Unload Me If flagTedit Then Unload frmRoo
35、mtype EndIf frmRoomtype.txtSQL=”select *from roomtype” frmRoomtype.Show End If End SubPrivate Sub txtItem_GotFocus(Index As Integer)文本框獲得焦點(diǎn)時(shí)觸發(fā)該事件,即自動(dòng)選中輸入的內(nèi)容,便于修改txtItem(Index).SelStart=0txtItem(Index).SelLength=Len(txtItem(Index)End SubPrivate Sub cmdExit_Click()單擊按鈕cmdExit取消添加信息If mblChange And cmd
36、Save.Enabled Then If MsgBox(“保存當(dāng)前記錄的變化嗎?”,vbOKCancel+vbExclamation,”警告”)=vbOK Then 保存 Call cmdSave_Click End IfEnd IfUnload MeEnd SubPrivate Sub txtItem_KeyDown(Index As Integer,KeyCode As Integer,Shift_ As Integer)輸入完內(nèi)容,單擊回車鍵將自動(dòng)進(jìn)入下一個(gè)文本框,觸發(fā)文本框的Keydown事件 EnterToTab KeyCodeEnd Sub修改客房標(biāo)準(zhǔn)窗體的創(chuàng)建Private Su
37、b From_Load()ShowTitleShowDataflagTedit=TrueEnd SubPrivate Sub ShowTitle()調(diào)用showTitle函數(shù),顯示表頭Dim i As IntegerWith msgList .Cols=10 .TextMatrix(0,1)=”標(biāo)準(zhǔn)編號(hào)” .TextMatrix(0,2)=”標(biāo)準(zhǔn)名稱” .TextMatrix(0,3)=”房間面積” .TextMatrix(0,4)=”床位數(shù)量” .TextMatrix(0,5)=”是否有空調(diào)” .TextMatrix(0,6)=”是否有電話” .TextMatrix(0,7)=”是否有電視”
38、 .TextMatrix(0,8)=”是否有衛(wèi)生間” .TextMatrix(0,9)=”房間單價(jià)” .FixedRows=1固定表頭 For i=0 To 9 設(shè)置各列的對(duì)齊方式 .ColAlignment(i)=0 Next i .FillStyle=flexFillRepeat表頭項(xiàng)居中 .Col=0 .Row=0 .RowSel=1 .ColSel=.Cols-1 .CellAlignment=4 .ColWidth(0)=300設(shè)置單元大小 .ColWidth(1)=1000 .ColWidth(2)=2000 .ColWidth(3)=2000 .ColWidth(4)=1000
39、.ColWidth(5)=1000 .ColWidth(6)=1000 .ColWidth(7)=1000 .ColWidth(8)=1000 .ColWidth(9)=1000 .Row=1End WithEnd SubPrivate Sub ShowData()調(diào)用showData函數(shù),顯示記錄列表 Dim i As Integer Set mrc=ExecuteSQL(txtSQL,MsgText)根據(jù)需要設(shè)置SQL語句,顯示需要的記錄 With msgList .Rows=1 Do While Not mrc.EOF .Rows=Rows+1 Select Case mrc.Field
40、s(i-1).Type Case adDBDate .TextMatrix(.Rows-1,i)=Format(mrc.Fields(i-1)&”,”yyyy-mm-dd”) Case Else .TextMatrix(.Rows-1,i)=mrc.Fields(i-1)&” End Select Next i Mrc.MoveNext Loop End With mrc.CloseEnd SubPrivate Sub msgList_MouseUp(Button As Integer,Shift As Integer,x As Single,y As Single)選擇記錄,
41、然后單擊鼠標(biāo)右鍵,觸發(fā)MouseUp事件 If Button=2 And Shift=0 Then PopupMenu fMainFrom.menuRoomtype End IfEnd SubPrivate Sub menuModifyroomtype_Click() Dim intCount As Integer If flagTedit Then 判斷是否打開記錄窗體 fintTmode=2設(shè)置為修改狀態(tài)記下選擇記錄 frmRoomtype1.Show Else Call menuAddroomtype_Click End If Else frmRoomtype.txtSQL=”selec
42、t*from roomtype” frmRoomtype.Show End IfEnd SubPrivate Sub From_Resize()窗體變化時(shí),調(diào)整標(biāo)簽和表格位置,使標(biāo)簽處于窗體的最上方,而表格始終處于標(biāo)簽下方 If Me.WindowState<>vbMinimized And fMainFrom.WindowState<>vbMinimized Then邊界處理 If Me.Scaleheight<10*lblTitle.Height Then Exit Sub End If If Me.ScaleWidth<lblTitle.Width+l
43、blTitle.Width/2 Then Exit Sub End If lblTitle.Top=lblTitle.Height控制控件的位置 lblTitle.Left=(Me.Width-lblTitle.Width)/2 msgList.Top=lblTitle.Top+lblTitle.Height+lblTitle.Height/2 msgList.Width=Me.ScaleWidth-200 msgList.Left=Me.ScaleLeft+100 msgList.Height=Me.ScaleHeight-msgList.Top-200 End IfEnd Sub刪除客房標(biāo)
44、準(zhǔn)Private Sub menuDeleteroomtype_Click() Dim txtSQL As String Dim intCount As Integer Dim mrc As ADODB.Recordset Dim MsgText As String If flagTedit Then 判斷是否打開記錄窗體 If MsgBox(“真的要?jiǎng)h除這條文件記錄么?”,vbOKCancel+vbExclamation,”警告”)=vbOK Then txtSQL=”delete from roomtype where typeid”&Trim(frmRoomty Set mrc=
45、ExecuteSQL(txtSQL,MsgText) Unload frmRoomtype關(guān)閉記錄窗體 frmRoomtype.txtSQL=”select*from roomtype”重新選擇所有記錄 frmRoomtype.Show End If End If End IfEnd Sub客房信息管理模塊的創(chuàng)建 客房信息管理模塊主要實(shí)現(xiàn)如下功能: ·添加客房信息 ·修改客房信息 ·刪除客房信息 ·查詢客房信息 具體實(shí)現(xiàn)代碼如下:Private Sub From_Load()載入窗體時(shí),自動(dòng)添加客房信息種類 Dim sSql As String Dim intCount As Integer Dim MsgText As String Dim mrcc As ADODB.Recordset If gintRmode=1 Then 判斷是否處于添加狀態(tài) Me.Caption=me.Caption&“添加”
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 小學(xué)英語試卷總體評(píng)價(jià)
- 高壓化成箔競(jìng)爭(zhēng)策略分析報(bào)告
- 非公路礦用車戰(zhàn)略市場(chǎng)規(guī)劃報(bào)告
- 外貿(mào)進(jìn)貨合同范本
- 醫(yī)院食堂裝修合同范本
- 個(gè)人簡單租房協(xié)議書
- 加盟籃球加工合同范本
- 集控運(yùn)行初級(jí)工題庫含答案
- 合伙做茶莊合同范本
- 加裝電梯安全合同范本
- 2025年湖南環(huán)境生物職業(yè)技術(shù)學(xué)院單招職業(yè)技能測(cè)試題庫及答案一套
- 14 文言文二則 學(xué)弈 教學(xué)設(shè)計(jì)-2024-2025學(xué)年語文六年級(jí)下冊(cè)統(tǒng)編版
- Unit 4 Eat Well(大單元教學(xué)設(shè)計(jì))2024-2025學(xué)年七年級(jí)英語下冊(cè)同步備課系列(人教版2024)
- 2024-2030年中國游戲直播行業(yè)市場(chǎng)深度分析及投資策略研究報(bào)告
- 統(tǒng)編版小學(xué)語文六年級(jí)下冊(cè)第四單元《理想和信念》作業(yè)設(shè)計(jì)
- 2025年春季學(xué)期學(xué)校工作計(jì)劃及安排表
- 化驗(yàn)班組安全培訓(xùn)
- 英語-廣東省大灣區(qū)2025屆高三第一次模擬試卷和答案
- 丹佛斯變頻器培訓(xùn)經(jīng)典課件
- 2024年06月日照銀行社會(huì)招聘筆試歷年參考題庫附帶答案詳解
- 烤房租賃合同范例
評(píng)論
0/150
提交評(píng)論