版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、<p> 畢業(yè)設(shè)計(論文、作業(yè))</p><p> 畢業(yè)設(shè)計(論文、作業(yè))題目:</p><p> xx分校學(xué)生成績管理系統(tǒng) </p><p> 分校(站、點): </p
2、><p> 年級、專業(yè): 09秋計算機 </p><p> 教育層次: </p><p> 學(xué)生姓名: </p><p> 學(xué) 號:
3、 </p><p> 指導(dǎo)教師: xx </p><p> 完成日期: 2011年11月 </p><p><b> 目 錄</b></p&g
4、t;<p> 內(nèi)容摘要和關(guān)鍵詞 ……………………………………………………………………Ⅰ</p><p> 一、XXXXXXXX …………………………………………………………………………1</p><p> (一)XXXXXXXX …………………………………………………………………………2</p><p> 1、XXXXXXXX …………
5、………………………………………………………………4 </p><p> 二、XXXXXXXX …………………………………………………………………………7</p><p> (一)XXXXXXXX …………………………………………………………………………8</p><p> 1、XXXXXXXX ……………………………………………………………………………10&
6、lt;/p><p> 三、XXXXXXXX …………………………………………………………………………12</p><p> (一)XXXXXXXX …………………………………………………………………………13</p><p> 1、XXXXXXXX ……………………………………………………………………………14 </p><p> 四
7、、XXXXXXXX …………………………………………………………………………20</p><p> (一)XXXXXXXX …………………………………………………………………………21</p><p> 1、XXXXXXXX ……………………………………………………………………………23 </p><p> 五、XXXXXXXX …………………………………
8、………………………………………25</p><p> (一)XXXXXXXX …………………………………………………………………………26</p><p> 1、XXXXXXXX ……………………………………………………………………………27 </p><p> 參考文獻(xiàn) ………………………………………………………………………………30</p>
9、<p> 附錄 ………………………………………………………………………………31</p><p> 致謝 …………………………………………………………………………………32</p><p> 內(nèi) 容 摘 要</p><p> 隨著計算機普及, 網(wǎng)絡(luò)技術(shù)的發(fā)展, 越來越多的企業(yè)為引進(jìn)現(xiàn)代化計算機工具,推動現(xiàn)代化管理,使公司管理規(guī)范化、程
10、序化、迅速快捷。各個企業(yè)單位的管理系統(tǒng)也不得不與時俱進(jìn),及時開發(fā)出新的軟件或?qū)υ械能浖M(jìn)行功能更新或版本升級。旅游事業(yè)的蓬勃發(fā)展和賓館管理業(yè)務(wù)的不斷擴大,賓館管理人員尤其是星級賓館的管理人員對賓館管理的現(xiàn)代化科學(xué)化的要求逐漸迫切起來。越來越多的賓館領(lǐng)導(dǎo)認(rèn)識到賓館管理計算機化的重要性和必要性,計算機信息管理系統(tǒng)對賓館管理來說,已不再是一個時髦的奢侈品,而是一個必不可少的得力助手。</p><p> 本系統(tǒng)使用V
11、isual Basic 2003編程技術(shù)和SQL Server 2000數(shù)據(jù)庫技術(shù)進(jìn)行開發(fā),操作系統(tǒng)為Windows2000 Server。本系統(tǒng)共有登入功能、基礎(chǔ)設(shè)置、業(yè)務(wù)管理、房態(tài)管理等模塊。通過這些模塊可以對酒店的客房,入住情況等進(jìn)行搜索、新增、更改、刪除等操作。本系統(tǒng)簡單易操作,為酒店管理提供了方便。</p><p><b> 關(guān)鍵詞:</b></p><p&g
12、t; 酒店管理 VB.NET2003 SQLServer2000</p><p><b> 酒店管理系統(tǒng)</b></p><p><b> 一、引言</b></p><p> ?。ㄒ唬┍菊n題的研究意義</p><p> 酒店作為旅游業(yè)的主要組成部分,正在發(fā)揮越來越重要的作用。酒店的內(nèi)涵也隨著
13、客人需要的發(fā)展而不斷變革,消費者對現(xiàn)代酒店的功能、經(jīng)營管理提出了新的衡量標(biāo)準(zhǔn)。以此為基礎(chǔ),酒店的等級標(biāo)準(zhǔn)也在逐漸提高。現(xiàn)代酒店競爭格局的變化帶來現(xiàn)代酒店集團(tuán)的產(chǎn)生與發(fā)展,它對酒店功能的設(shè)置與資源管理也提出了更為嚴(yán)格的要求。</p><p> ?。ǘ┍菊撐牡哪康?、內(nèi)容</p><p> 酒店組織龐大,服務(wù)項目多,信息量大,要想提高勞動生產(chǎn),降低成本,提高服務(wù)質(zhì)量和管理水平,促進(jìn)經(jīng)濟效益,
14、必須借助計算機來進(jìn)行現(xiàn)代化的信息管理。</p><p> 用酒店管理系統(tǒng)通過節(jié)省大量的人力物力,增加飯店的服務(wù)項目,提高酒店的服務(wù)檔次,減少管理上的漏洞,從整體上提高酒店的經(jīng)濟效益。如完善的預(yù)訂功能可防止有房不能租或滿房重訂的情況出現(xiàn),可隨時提供準(zhǔn)確的房間使用和預(yù)訂情況,從而提高客房出租率。</p><p> 二、研究現(xiàn)狀及設(shè)計目標(biāo)</p><p> (一)相
15、近研究課題的特點及優(yōu)缺點分析</p><p> 傳統(tǒng)的酒店管理,多采用手工的形式,既繁瑣又易于出差錯,隨著電子技術(shù)的發(fā)展,酒店管理多采用使用計算機的方式進(jìn)行管理,避免進(jìn)行簡單的重復(fù)計算,從而做到準(zhǔn)確、快捷。酒店管理系統(tǒng)發(fā)揮其強大的優(yōu)勢,在數(shù)據(jù)保存、數(shù)據(jù)交換等方面均快速可靠,是手工操作所不能完成的。</p><p> (二)本課題要達(dá)到的設(shè)計目標(biāo)</p><p>
16、 酒店作為一個服務(wù)型行業(yè),從客房的營銷即客人的預(yù)訂開始,到入住登記直至最后退房結(jié)帳,整個過程應(yīng)該能夠體現(xiàn)以賓館為中心,提供快捷,方便的服務(wù),給賓客一種顧客至上的享受,提高酒店的管理水平,簡化各種復(fù)雜操作,在最合理最短時間內(nèi)完成酒店業(yè)務(wù)規(guī)范操作,這樣才能令旅客舒適難忘。因此,采用計算機網(wǎng)絡(luò)和管理系統(tǒng),將成為提高酒店的管理效率、改善服務(wù)水準(zhǔn)的重要手段之一。</p><p> 三、要解決的幾個關(guān)鍵問題</p&
17、gt;<p> ?。ㄒ唬﹩栴}:房態(tài)設(shè)置</p><p> 解決方案:酒店客房在不同時間有不同的狀態(tài),如空房、維修房等,在酒店的管理中需要實時掌握每一個客房所處的狀態(tài),從而安排各種工作。為了直觀的表示和更改這些信息,酒店管理系統(tǒng)中一般都使用房態(tài)圖來表示。房態(tài)圖是酒店管理系統(tǒng)中最為重要的一個功能,它以圖形的形式顯示了酒店各個房間的不同狀態(tài),從而使操作者準(zhǔn)確、快速地分析酒店目前的房間占用情況,用鼠標(biāo)單擊
18、任意一間客房,就可以瀏覽到該客房相關(guān)的信息。</p><p> ?。ǘ﹩栴}:系統(tǒng)與數(shù)據(jù)庫連接</p><p> 解決方法:數(shù)據(jù)庫建立完成后,創(chuàng)建保存入住單、計算應(yīng)收賬款、收銀退房三個存儲過程。在程序設(shè)計界面時,從工具箱拖動一個SqlDataAdapter對象,添加界面需要的表,然后生成數(shù)據(jù)集,在生成數(shù)據(jù)集對話框單擊確定。為TextBox控件以及Combobox控件設(shè)置數(shù)據(jù)源。Textb
19、ox控件屬性DataBingings與Text進(jìn)行數(shù)據(jù)綁定。</p><p> ?。ㄈ﹩栴}:登入系統(tǒng)</p><p> 解決方法:在數(shù)據(jù)庫中創(chuàng)建一個登入使用的“用戶信息” 表,規(guī)定只有數(shù)據(jù)庫有信息的操作員才能登入系統(tǒng),里面包含操作員登入時使用的用戶編號、姓名、密碼等信息。程序設(shè)計里添加一個frmLogin登入界面,并為其添加Label、Textbox、Button等控件,操作員需輸入正
20、確的用戶名和密碼方可進(jìn)入操作,輸入錯誤則提示確認(rèn)用戶名密碼是否正確,確定后返回重新輸入</p><p><b> 四、系統(tǒng)結(jié)構(gòu)與模型</b></p><p><b> ?。ㄒ唬┫到y(tǒng)結(jié)構(gòu)</b></p><p> 圖1 系統(tǒng)模塊結(jié)構(gòu)圖</p><p><b> ?。ǘ┫到y(tǒng)流程<
21、/b></p><p><b> 圖2 系統(tǒng)流程圖</b></p><p> ?。ㄈ┰O(shè)計實現(xiàn)的策略和算法描述</p><p> 客房信息是系統(tǒng)關(guān)鍵的表,其它信息均與通過客房編號字段相對應(yīng)進(jìn)行多對一的關(guān)聯(lián)。系統(tǒng)共需要10張表格,用途分別如下表:</p><p> 系統(tǒng)數(shù)據(jù)表及其用途表</p>
22、<p> 創(chuàng)建完成各個表格后,還要創(chuàng)建主鍵及外鍵等表約束,尤其關(guān)鍵的是創(chuàng)建存儲過程,這個系統(tǒng)使用了“sf_保存入住單”,“sf_計算應(yīng)收賬款”,“sf_收銀退房”三個存儲過程,操作實現(xiàn)的功能分別為保存入住單時修改房態(tài),收銀結(jié)帳時計算應(yīng)收賬款總額和收銀結(jié)帳。具體計算方法在下面的腳本中有詳細(xì)的注釋:</p><p> 1. sf_保存入住單</p><p> create pr
23、oc sf_保存入住單 @入住單號 varchar(36)</p><p><b> as</b></p><p> begin tran</p><p> -- 修改客房信息</p><p> update 客房信息 set 狀態(tài)='住房' from 客房信息 as a, 入住單 as b &
24、lt;/p><p> where a.客房編號=b.客房編號 and b.入住單號=@入住單號</p><p> -- 修改預(yù)定單狀態(tài)</p><p> update 預(yù)定單 set 單據(jù)狀態(tài)='入住' from 預(yù)定單 as a, 入住單 as b </p><p> where a.預(yù)定單號=b.預(yù)定單號 and b.
25、入住單號=@入住單號</p><p> -- 將已入住的預(yù)定單放入歷史</p><p> insert into 預(yù)定單歷史 select * from 預(yù)定單 where 單據(jù)狀態(tài) = '入住'</p><p> -- 清除已入住預(yù)定單</p><p> delete from 預(yù)定單 where 單據(jù)狀態(tài) =
26、39;入住'commit</p><p><b> GO</b></p><p> 2. sf_計算應(yīng)收賬款</p><p> create proc sf_計算應(yīng)收帳款 @入住單號 varchar(36)</p><p><b> as</b></p><p&g
27、t; begin tran</p><p> declare @total money</p><p> declare @datecount int</p><p><b> -- 設(shè)置離電時間</b></p><p> update 入住單 set 離店時間 = getdate() where 入住單號 =
28、 @入住單號</p><p><b> -- 住店天數(shù)</b></p><p> select @datecount = datediff(dd,抵店時間,getdate())</p><p> from 入住單 where 入住單號 = @入住單號</p><p><b> -- 住店金額</b
29、></p><p> select @total = 0</p><p> select @total = @datecount*(isnull(入住價格,0)+isnull(加床價格,0))</p><p> from 入住單 where 入住單號 = @入住單號</p><p><b> -- 消費金額</b
30、></p><p> select @total = @total + isnull(b.消費金額,0) from</p><p> (select sum(消費金額) as 消費金額 from 帳單明細(xì)</p><p> where 入住單號 = @入住單號) as b</p><p> -- 設(shè)置應(yīng)收帳款和結(jié)算金額</
31、p><p> update 入住單 set 應(yīng)收帳款 = @total, </p><p> 結(jié)帳金額 = @total - isnull(預(yù)收款,0) </p><p> where 入住單號 = @入住單號</p><p><b> commit</b></p><p><b>
32、 GO</b></p><p> 3. sf_收銀退房</p><p> create proc sf_收銀退房 @入住單號 varchar(36), @付款方式 varchar(20)</p><p><b> as</b></p><p> begin tran</p><p
33、> update 入住單 set 離店時間 = getdate(), 單據(jù)狀態(tài) = '離店',</p><p> 付款方式 = @付款方式, 是否結(jié)帳=1,</p><p> 結(jié)帳日期 = getdate() </p><p> where 入住單號 = @入住單號</p><p><b> -- 設(shè)
34、置房態(tài)</b></p><p> update 客房信息 set 狀態(tài)='空房' from 客房信息 as a, 入住單 as b </p><p> where a.客房編號=b.客房編號 and b.入住單號=@入住單號</p><p><b> -- 倒入歷史</b></p><p&g
35、t; insert into 入住單歷史 select * from 入住單 </p><p> where 入住單號 = @入住單號</p><p> insert into 帳單明細(xì)歷史 select * from 帳單明細(xì) </p><p> where 入住單號 = @入住單號</p><p> delete from 帳單
36、明細(xì) </p><p> where 入住單號 = @入住單號</p><p><b> -- 清除入住單</b></p><p> delete from 入住單</p><p> where 入住單號 = @入住單號</p><p><b> commit</b>
37、;</p><p><b> GO</b></p><p> 本系統(tǒng)采用多文檔窗體程序,每一功能對應(yīng)一個子窗體,選擇主菜單中的各菜單命令可以進(jìn)入相應(yīng)的功能。</p><p> ?。ㄋ模┚幊棠P图皵?shù)據(jù)結(jié)構(gòu)</p><p> 1.酒店管理系統(tǒng)E-R圖</p><p> 圖3 酒店管理系統(tǒng)E-
38、R圖</p><p><b> 2.數(shù)據(jù)庫結(jié)構(gòu)</b></p><p><b> 表1 用戶信息表</b></p><p><b> 表2 入住單表</b></p><p> 表3 入住單歷史表</p><p><b> 表4
39、 客房信息表</b></p><p><b> 表5 客房類型表</b></p><p><b> 表6 賬單明細(xì)表</b></p><p> 表7 賬單明細(xì)歷史表</p><p><b> 表8 樓層信息表</b></p><p
40、><b> 表9 預(yù)訂單表</b></p><p> 表10 預(yù)訂單歷史表</p><p><b> 五、系統(tǒng)實現(xiàn)技術(shù)</b></p><p> 程序設(shè)計首先要創(chuàng)建一個登入窗體,再進(jìn)行創(chuàng)建系統(tǒng)主窗體,系統(tǒng)主窗體包括“基礎(chǔ)設(shè)置”、“業(yè)務(wù)管理”、“房態(tài)管理”三大模塊。</p><p>
41、 基礎(chǔ)設(shè)置包括:客房類型設(shè)置和客房信息設(shè)置;</p><p> 業(yè)務(wù)管理包括:預(yù)訂管理、入住管理、消費記賬和收銀退房。</p><p> 然后創(chuàng)建各個模塊的控件。</p><p><b> (一)創(chuàng)建登入窗體</b></p><p> 本系統(tǒng)采用多文檔窗體程序,每一功能對應(yīng)一個子窗體,利用Visual Basi
42、c.NET實現(xiàn)登入系統(tǒng)的功能。如圖5,在用戶輸入“用戶號”和“密碼” 后對用戶的輸入進(jìn)行驗證,并記錄登錄用戶的姓名和用戶號,供系統(tǒng)使用(權(quán)限管理、制單人指定等)。</p><p><b> 圖4 登入窗口</b></p><p> 登入窗體將其Name屬性設(shè)置為“frmlogin”,主要代碼:</p><p> 在“確定”的Click事
43、件中添加如下代碼</p><p> Private Sub btnSubmit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSubmit.Click</p><p> '判斷用戶輸入密碼的合法性</p><p> If Me.UserPwd.T
44、rim() = Me.txbPwd.Text.Trim() _</p><p> And UserPwd <> "" Then</p><p><b> '合法用戶</b></p><p> bResult = True</p><p> UserName = Me.txb
45、Name.Text.Trim()</p><p> Me.Close()</p><p><b> Else</b></p><p><b> '密碼錯誤</b></p><p> bResult = False</p><p> MessageBox.Sh
46、ow("請確認(rèn)你的用戶名或密碼是否正確")</p><p><b> End If</b></p><p><b> End Sub</b></p><p> ?。ǘ﹦?chuàng)建數(shù)據(jù)訪問模塊</p><p> 因為各個窗體均需要對數(shù)據(jù)庫進(jìn)行訪問,可以把對數(shù)據(jù)庫的一些操作通過一個類
47、來實現(xiàn),這樣可以使數(shù)據(jù)庫的訪問更加簡單。添加一個名為“DadaBase.vb”的類文件,主要代碼:</p><p> Private SqlConn As SqlConnection</p><p> Public Shared sConn As String = "Persist Security Info=False;Integrated Security=SSPI;da
48、tabase=hotelbook;server=localhost;Connect Timeout=30"</p><p> Public Sub Dispose() Implements System.IDisposable.Dispose</p><p> Dispose(True)</p><p> GC.SuppressFinalize(Tr
49、ue)</p><p><b> End Sub</b></p><p> Protected Sub Dispose(ByVal disposing As Boolean)</p><p> If disposing <> True Then</p><p><b> Return<
50、/b></p><p><b> End If</b></p><p> If SqlConn Is Nothing = False Then</p><p> SqlConn.Dispose()</p><p> SqlConn = Nothing</p><p><b>
51、; End If</b></p><p><b> End Sub</b></p><p> Public Sub Open()</p><p> If SqlConn Is Nothing = True Then</p><p> '建立數(shù)據(jù)庫連接對象</p><p&g
52、t; SqlConn = New SqlConnection(Me.sConn)</p><p><b> '打開數(shù)據(jù)庫連接</b></p><p> SqlConn.Open()</p><p><b> End If</b></p><p><b> End Sub&
53、lt;/b></p><p> Public Sub Close()</p><p> '如果數(shù)據(jù)庫連接對象不為空則關(guān)閉數(shù)據(jù)庫連接</p><p> If SqlConn Is Nothing = False Then</p><p> SqlConn.Close()</p><p><b&
54、gt; End If</b></p><p><b> End Sub</b></p><p> Public Function RunSelectSQL(ByVal sSQLString As System.String) As DataView</p><p><b> Me.Open()</b>&
55、lt;/p><p> Dim SqlDS As DataSet = New DataSet</p><p> Dim SqlDA As SqlDataAdapter = New SqlDataAdapter(sSQLString, Me.SqlConn)</p><p> SqlDA.Fill(SqlDS)</p><p> Return
56、 SqlDS.Tables(0).DefaultView</p><p> End Function</p><p> Public Function RunDelOrInsSQL(ByVal sSQLString As System.String)</p><p><b> Me.Open()</b></p><p&
57、gt; Dim SqlComm As SqlCommand = New SqlCommand(sSQLString, Me.SqlConn)</p><p> SqlComm.ExecuteNonQuery()</p><p> End Function</p><p><b> End Class</b></p><
58、;p> ?。ㄈ﹦?chuàng)建數(shù)據(jù)操作窗體的父類窗體</p><p> 因為系統(tǒng)中所有對數(shù)據(jù)庫表進(jìn)行維護(hù)的窗體界面及實現(xiàn)的功能大體是一致的,為了減少系統(tǒng)編程的工作量,可以把這些共同的部分抽出來,生成一個父類窗體,其它數(shù)據(jù)庫操作窗體均可以通過繼承父類窗體獲得數(shù)據(jù)維護(hù)的功能。新建一個窗體,將其Name屬性改為“frmBase”,并為其添加如圖6控件。</p><p><b> 圖5
59、 基礎(chǔ)窗體</b></p><p> 設(shè)置完成ToolBar控件Buttons屬性,主要代碼:</p><p> 在ToolBar1的ButtonClick事件輸入代碼</p><p> Private Sub ToolBar1_ButtonClick(ByVal sender As Object, _</p><p>
60、ByVal e As ToolBarButtonClickEventArgs) _</p><p> Handles ToolBar1.ButtonClick</p><p> Select Case e.Button.Text</p><p> Case "首記錄"</p><p><b> '
61、返回首記錄</b></p><p> bmData.Position = 0</p><p> Case "上記錄"</p><p> If bmData.Position <> 0 Then</p><p> bmData.Position -= 1</p><p>
62、;<b> End If</b></p><p> Case "下記錄"</p><p> If bmData.Position <> bmData.Count Then</p><p> bmData.Position += 1</p><p><b> End If
63、</b></p><p> Case "尾記錄"</p><p><b> '返回尾記錄</b></p><p> bmData.Position = bmData.Count</p><p><b> Case "新增"</b>&
64、lt;/p><p> Me.dgdList.Enabled = False</p><p> SetTextBoxState(False)</p><p> SetToolBarState(False)</p><p> bAdd = True</p><p><b> Clear()</b>
65、;</p><p><b> Case "修改"</b></p><p> Me.dgdList.Enabled = False</p><p> SetTextBoxState(False)</p><p> SetToolBarState(False)</p><p&g
66、t; bAdd = False</p><p><b> Case "刪除"</b></p><p><b> '彈出詢問對話框</b></p><p> Dim dlgResult As DialogResult = _</p><p> MessageBox
67、.Show("你確認(rèn)刪除此數(shù)據(jù)?", _</p><p> "刪除", MessageBoxButtons.OKCancel)</p><p> If dlgResult = DialogResult.OK Then</p><p> DeleteData()</p><p><b>
68、 End If</b></p><p><b> Case "保存"</b></p><p> SetToolBarState(True)</p><p> SetTextBoxState(True)</p><p> If bAdd = True Then</p>
69、<p><b> '為新增數(shù)據(jù)保存</b></p><p> SaveForAdd()</p><p><b> Else</b></p><p><b> '為更新數(shù)據(jù)保存</b></p><p> SaveForUpdate()</
70、p><p><b> End If</b></p><p> Me.dgdList.Enabled = True</p><p><b> Case "取消"</b></p><p> SetTextBoxState(True)</p><p> S
71、etToolBarState(True)</p><p> Me.dgdList.Enabled = True</p><p> SearchResult()</p><p><b> Case "退出"</b></p><p><b> '關(guān)閉本窗體</b>&l
72、t;/p><p> Me.Close()</p><p> End Select</p><p><b> Try</b></p><p> Me.dgdList.CurrentRowIndex = bmData.Position</p><p><b> SetData()<
73、;/b></p><p> Catch ex As Exception</p><p><b> End Try</b></p><p><b> End Sub</b></p><p> 搜索btnSearch的Click事件主要代碼</p><p> Pr
74、ivate Sub btnSearch_Click(ByVal sender As System.Object, _</p><p> ByVal e As System.EventArgs) Handles btnSearch.Click</p><p> SearchResult()</p><p><b> End Sub</b>&
75、lt;/p><p> ?。ㄋ模┰O(shè)置系統(tǒng)界面與數(shù)據(jù)庫連接</p><p> 創(chuàng)建客房類型設(shè)置、客房信息設(shè)置、預(yù)訂管理、入住管理、消費記賬和收銀退房的窗體界面相似:選擇文件,添加新項命令,在添加新項對話框模板列表框中選擇繼承的窗體選項,并分別命名為“frmRoomType.vb”、“frmRoomInfo.vb”、“frmReserve.vb”、“frmReside.vb”、“frmConsum
76、e.vb”和“frmCash.vb”。單擊打開按鈕后出現(xiàn)繼承選擇器對話框,在其中選擇frmBase選項并確定。</p><p> 客房類型設(shè)置、客房信息設(shè)置、預(yù)訂管理、入住管理和消費記賬都是從工具箱中拖動一個SqlDataAdapter對象到窗體上,連接hotelbook數(shù)據(jù)庫,添加相對應(yīng)的表,并選折所有字段。</p><p> 收銀退房連接hotelbook數(shù)據(jù)庫后,則要添加入住單表
77、并選者“入住單號、客房類型、客房編號、抵店時間、離店時間、入住價格、加床價格、預(yù)收款、應(yīng)收賬款、結(jié)帳金額、是否結(jié)帳、結(jié)帳日期、付款方式”字段。</p><p> 然后在SqlDataAdapter1對象上右擊,在彈出的快捷菜單中選擇生成數(shù)據(jù)集命令,在生成數(shù)據(jù)集對話框中單擊確定按鈕。</p><p> 為每個TextBox、ComboBox和CheckBox控件設(shè)置數(shù)據(jù)源:在控件屬性設(shè)計
78、器中對TextBox和ComboBox的屬性Databingdings與Text進(jìn)行數(shù)據(jù)綁定,CheckBox的屬性Databingdings與Checked進(jìn)行數(shù)據(jù)綁定。</p><p> ?。ㄎ澹┰O(shè)置房態(tài)圖功能</p><p> 新建一個Name屬性為“frmRoomState”的窗體,并為其添加如圖7所示的控件。</p><p><b> 圖6
79、 房態(tài)圖窗體</b></p><p> 在文件添加現(xiàn)有項命令,將表示客房狀態(tài)的圖片加入到項目中去,單擊打開按鈕,解決方案資源管理器對話框中設(shè)置加入到項目中的表示客房狀態(tài)的位圖文件,將屬性中的生成操作設(shè)置為嵌入的資源,主要代碼:</p><p> frmRoomState的LoadData事件</p><p> Private Sub LoadDat
80、a()</p><p> dtData.Rows.Clear()</p><p> Dim db As DataBase = New DataBase</p><p> Dim dvFloor As DataView = _</p><p> db.RunSelectSQL("select 樓層編號 from 樓層信息&qu
81、ot;)</p><p> Dim strSQL As String</p><p> For i As Int16 = 0 To dvFloor.Count - 1</p><p> strSQL = "select 樓層編號,狀態(tài) from 客房信息 "</p><p> Dim strTmp As Strin
82、g = ""</p><p> If strFilter.Trim <> "" Then</p><p> strTmp = " and " + strFilter</p><p><b> End If</b></p><p> strSQ
83、L += " where 樓層編號 = "</p><p> strSQL += dvFloor(i)(0).ToString.Trim + strTmp</p><p> '查詢出每個樓層的房間信息</p><p> Dim tmpdv As DataView = db.RunSelectSQL(strSQL)</p>
84、<p><b> '新建數(shù)據(jù)行</b></p><p> Dim dr As DataRow = dtData.NewRow()</p><p> '將樓層房間信息添加到數(shù)據(jù)行中</p><p> dr(0) = dvFloor(i)(0).ToString.Trim + "/F"<
85、;/p><p> For j As Int16 = 0 To iMaxRoomNumber - 1</p><p> '設(shè)置房間的狀態(tài)信息</p><p> If j < tmpdv.Count Then</p><p> dr(j + 1) = GetStateNumber(tmpdv(j)("狀態(tài)")
86、)</p><p><b> Else</b></p><p> dr(j + 1) = "6"</p><p><b> End If</b></p><p><b> Next</b></p><p> dtData.R
87、ows.Add(dr)</p><p><b> Next</b></p><p><b> End Sub</b></p><p> 更新房態(tài)圖btnUpate的Click事件</p><p> Private Sub btnUpate_Click(ByVal sender As Syst
88、em.Object, _</p><p> ByVal e As System.EventArgs) Handles btnUpate.Click</p><p> LoadData()</p><p> Dim dv As DataView = dtData.DefaultView</p><p> dv.AllowNew = Fa
89、lse</p><p> dv.AllowDelete = False</p><p> dv.AllowEdit = False</p><p><b> '設(shè)置數(shù)據(jù)源</b></p><p> dgdList.DataSource = dtData.DefaultView</p><
90、;p><b> End Sub</b></p><p> 設(shè)置房態(tài)btnSet的Clickshij</p><p> Private Sub btnSet_Click(ByVal sender As System.Object, _</p><p> ByVal e As System.EventArgs) Handles btn
91、Set.Click</p><p> Dim iRow, iCol As Integer</p><p> iRow = dgdList.CurrentCell.RowNumber</p><p> iCol = dgdList.CurrentCell.ColumnNumber</p><p> Dim strState As Str
92、ing = dgdList.Item(iRow, iCol)</p><p> Dim strTmpState As String</p><p> If iCol <> 0 Then</p><p> If Me.rbnArrive.Checked = True Then</p><p> strTmpState = &
93、quot;0"</p><p> ElseIf Me.rbnEmpty.Checked = True Then</p><p> strTmpState = "2"</p><p> ElseIf Me.rbnFull.Checked = True Then</p><p> strTmpState =
94、"4"</p><p> ElseIf Me.rbnLeave.Checked = True Then</p><p> strTmpState = "1"</p><p> ElseIf Me.rbnRepair.Checked = True Then</p><p> strTmpState
95、 = "3"</p><p> ElseIf Me.rbnSelf.Checked = True Then</p><p> strTmpState = "5"</p><p><b> End If</b></p><p><b> Else</b>
96、</p><p><b> Return</b></p><p><b> End If</b></p><p><b> '如果狀態(tài)已經(jīng)更新</b></p><p> If strTmpState <> strState Then</p>
97、;<p> Dim db As DataBase = New DataBase</p><p> Dim dv As DataView = dtRoom.Copy.DefaultView</p><p> dv.RowFilter = "樓層編號=" + _</p><p> dgdList.Item(iRow, 0).To
98、String.Split("/")(0)</p><p> Dim strSQL As String = "update 客房信息 set 狀態(tài)='"</p><p> strSQL += GetStateText(strTmpState) + "'"</p><p> strSQL
99、+= " where 客房編號='"</p><p> strSQL += dv(iCol - 1)(0).ToString.Trim + "'"</p><p> db.RunDelOrInsSQL(strSQL)</p><p> db.Dispose()</p><p>&l
100、t;b> End If</b></p><p> LoadData()</p><p> Dim dvTmp As DataView = dtData.DefaultView</p><p> dvTmp.AllowNew = False</p><p> dvTmp.AllowDelete = False<
101、/p><p> dvTmp.AllowEdit = False</p><p><b> '設(shè)置數(shù)據(jù)源</b></p><p> dgdList.DataSource = dtData.DefaultView</p><p><b> End Sub</b></p><
102、;p><b> 六、性能測試與分析</b></p><p> ?。ㄒ唬y試實例(測試集)的研究與選擇</p><p> 在系統(tǒng)完成后,進(jìn)行用戶的驗收測試,它是用戶在實際應(yīng)用環(huán)境中所進(jìn)行的真實數(shù)據(jù)測試。一般來說,對程序測試有兩種測試方法:根據(jù)系統(tǒng)應(yīng)具有的功能,來測試每個功能是否都能正常使用;如果知道程序的內(nèi)部工作過程,根據(jù)系統(tǒng)程序結(jié)構(gòu),來測試程序內(nèi)部是否按照程
103、序設(shè)計正常進(jìn)行。測試程序?qū)嵗斎霐?shù)據(jù)和預(yù)期輸出結(jié)果是否符合設(shè)計的效果,還要輸入不正確或非法的數(shù)據(jù)進(jìn)行測試,檢查程序是否做了不應(yīng)該做得工作,主要測試容易出錯的程序模塊并對其修改,修改完成后必須重新進(jìn)行測試。</p><p> ?。ǘy試環(huán)境與測試條件</p><p> 1.運行Intel Core 2 Duo E7500雙核處理器的計算機,內(nèi)存2GB。</p><p&
104、gt; 2.運行環(huán)境:Microsoft windows 2000 Server,Microsoft Visual Studio .NET 2003,Microsoft SQL Server2000。</p><p><b> (三)實例測試</b></p><p> 1. 首先Microsoft SQL Server2000導(dǎo)入hotelbook數(shù)據(jù)庫;&l
105、t;/p><p> 2. 運行系統(tǒng)登入,輸入密碼,正確驗證密碼,系統(tǒng)報錯如下圖所示,返回輸入正確的用戶名密碼,就能夠登入系統(tǒng)主界面進(jìn)行操作了。</p><p> 圖7 酒店管理性能測試一</p><p> 3.系統(tǒng)里修改數(shù)據(jù)要輸入數(shù)據(jù)庫表規(guī)定的數(shù)據(jù),超出則提示錯誤信息,如下圖:</p><p> 圖8 酒店管理性能測試二</p
106、><p><b> 七、結(jié)束語</b></p><p> 經(jīng)過近三個月的構(gòu)思與設(shè)計,在指導(dǎo)老師的精心指導(dǎo)和安排下,本系統(tǒng)已經(jīng)設(shè)計完畢。其使用功能基本符合酒店在實際工作的需要,具有一定的實用性。但是由于個人水平有限,時間比較倉促,系統(tǒng)還是有些不盡人意的地方,以后還要加強改進(jìn)。</p><p><b> 參考文獻(xiàn):</b>&
107、lt;/p><p> [1]VB.NET入門經(jīng)典(第3版) 清華大學(xué)出版社 </p><p> [2]VISUAL BASIC 高級編程解決方案 機械工業(yè)出版社</p><p> [3]SQL Server 2000 編程員指南 北京希望電子出版社</p><p> [4]VB.Net高級編程
108、 電子書版本</p><p> [5]Visual Basic.NET項目開發(fā)寶典 電子工業(yè)出版社</p><p><b> 致 謝</b></p><p> 特別感謝我的導(dǎo)師xx老師,本文是在xx老師精心指導(dǎo)和大力支持下完成的。xx老師以其嚴(yán)謹(jǐn)求實的治學(xué)態(tài)度、高度的敬業(yè)精神、兢兢業(yè)業(yè)、孜孜以求的工作作風(fēng)和大膽
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 學(xué)生成績管理系統(tǒng)畢業(yè)設(shè)計
- 學(xué)生成績管理系統(tǒng)畢業(yè)設(shè)計
- 學(xué)生成績管理系統(tǒng)畢業(yè)設(shè)計
- 學(xué)生成績管理系統(tǒng)畢業(yè)設(shè)計
- 學(xué)生成績管理系統(tǒng)---畢業(yè)設(shè)計
- 學(xué)生成績管理系統(tǒng)畢業(yè)設(shè)計
- 學(xué)生成績管理系統(tǒng)畢業(yè)設(shè)計
- 學(xué)生成績管理系統(tǒng)畢業(yè)設(shè)計論文
- 學(xué)生成績管理系統(tǒng)畢業(yè)設(shè)計 (3)
- 學(xué)生成績管理系統(tǒng)畢業(yè)設(shè)計論文
- 學(xué)生成績管理系統(tǒng)畢業(yè)設(shè)計 (3)
- 學(xué)生成績管理系統(tǒng)畢業(yè)設(shè)計報告
- 學(xué)生成績管理系統(tǒng)畢業(yè)設(shè)計(論文)
- 學(xué)生成績管理系統(tǒng)畢業(yè)設(shè)計 (2)
- 學(xué)生成績管理系統(tǒng)畢業(yè)設(shè)計3
- 學(xué)生成績管理系統(tǒng)畢業(yè)設(shè)計(論文)
- 學(xué)生成績管理系統(tǒng)畢業(yè)設(shè)計論文
- 畢業(yè)設(shè)計--學(xué)生成績管理設(shè)計
- 基于bs學(xué)生成績管理系統(tǒng)畢業(yè)設(shè)計
- 畢業(yè)設(shè)計-----學(xué)生成績信息管理系統(tǒng)
評論
0/150
提交評論