




已阅读5页,还剩20页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
课程设计说明书题目: 宾馆管理系统 课程设计任务书 学 号学生姓名专业(班级)设计题目人事管理系统设计技术参数后台数据库选用SQL Server 2000开发语言:isual Basic应用程序与数据库的连接方式可以采用ADO 、ODBC等。设计要求开发的系统要能够实现对数据库的添加、删除、修改、查询四项基本功能。工作量 说明书10000字VB数据库工作计划论文不少于8000完成VB模块与代码完成数据库建表和代码完成说明书部分参考资料1作者:李平一VisualBasic6.0程序设计参考手册出版社:工业出版社出版日期:2003.5.12作者:王磊VisualBasic开发指南出版社:邮电出版社出版日期:2002.7.13作者:蔡万坤编新编酒店客房管理出版社:广东旅游出版社出版日期:2003-1-14作者:王磊VisualBasic数据库开发指南出版社:清华大学出版社出版日期:2001.8.1 年 月 日目录1、系统概述.51.1题目设计与目的.51.2开发背景.51.3开发环境.52.系统分析与设计.62.1编写目的.62.2系统功能分析.62.3功能概述.62.4实现目标.62.5业务流程72.6系统功能模设计.72.6.1系统功能模块图.82.7 数据字典.83.数据库设计.93.1数据库设计步骤93.11数据库需求分析图.10宾馆管理信息系统数据流程图.103.12数据库概念结构设计.11客房标准信息实体-图.11客房信息实体-图.11订房信息实体-图结算信息实体-图.12实体之间关系-图.13 3.13数据库逻辑结构设计13 客房标准信息表.13 客房信息表.14订房信息表.14数据库的选择和部分重要的SQL代码与VB代码.144. 前台开发.245开发心得.27一、 系统概述一、题目设计意义及目的:随着我国经济的迅速发展,人们的生活水平有了显著提高,假日经济和旅游经济已成为人们消费的热点。各地也把旅游业当作本地经济发展的重要支柱之一,从而促进了宾馆酒店业的快速发展。同时,随着宾馆酒店越来越多,人们的要求越来越高,宾馆酒店业的竞争也愈来愈激烈。如何在激烈的竞争中生存发展,是每一个宾馆酒店必须面临的问题。对宾馆的经营状况起决定作用的是宾馆的服务管理水平。如何利用先进的管理手段,提高宾馆的管理水平,已成为宾馆酒店业发展的当务之急。面对信息时代的机遇和挑战,利用科技手段提高企业管理无疑是一条行之有效的途径。虽然计算机管理并不是宾馆管理走向成功的关键元素,但它可以最大限度地发挥准确、快捷、高效等作用,对宾馆的服务管理提供强有力的支持。因此,采用全新的计算机网络和宾馆管理系统,已成为提高宾馆的管理效率、改善服务水准的重要手段之一。在某种意义上,宾馆客房管理方面的信息化已成为现代化宾馆的重要标志。所以我们需要更完善的数据库宾馆管理系统。二、开发背景:阳光海岸座落在美丽的三亚海滨,占地面积12000多平方米,建筑面积122000多平方米,职工800多人。该宾馆设有豪华套间、标准间、普间、双人间,房间共388间。有闭路电视、宽带100M、程控电话、国内国际直拨电话、电梯、中央空调、现代消防设施、大小餐厅2个、停车场、大小会议室2个,同时能接待120人住宿、50人以内的中小型会议,提供代购火车、汽车、飞机票等各种旅游观光服务。随着信息技术的发展和人们对宾馆酒店的要求越来越高,该宾馆已明显觉得手工管理已不能适应当前宾馆高速发展的需要,已意识到使用计算机网络和计算机管理的重要性,决定首先在客房部采用宾馆客房管理系统。三、开发环境:CPU:Intel Pentium4 2GHz内存:512MB操作系统:Microsoft Windows Server 2000 + IIS5后台数据库在Microsoft SQL Server 2000 中文企业版 前台最终用户接口程序在 Insprise Delphi 7.0 Enterprise英文版 二、系统分析与设计一、编写目的:宾馆在正常的运营中需要对客房资源、顾客信息、结算信息进行管理,利用宾馆管理信息系统及时了解各个环节中信息的变更,有利于提高管理效率。二、系统功能分析:系统开发的总体任务是实现宾馆各种信息的系统化、规范化和自动化。主要完成功能:有关客房标准的制定、标准信息的输入,包括标准编号、标准名称、房间面积、床位数量、住房单价、是否有空调、电视机、电话以及单独卫生间等。客房标准信息的修改、查询等。客房基本信息的输入,包括客房编号、客房类型、客房位置、客房单价、备注等。客房基本信息的查询、修改,包括客房编号、客房类型、客房位置、客房单价、备注等。剩余客房信息的查询等。订房信息的输入,包括客房编号、客房种类、客房位置、客房单价、顾客姓名、顾客身份证号码、入住日期、折扣、备注信息等。订房信息的修改和查询,包括客房编号、客房种类、客房位置、客房单价、顾客姓名、顾客身份证号码、入住日期、折扣、备注信息等。结算信息的输入,包括客房编号、客房种类、位置、客房单价、顾客姓名、顾客身份证号码、入住日期、折扣、结算日期、备注信息等。结算信息的修改和查询,包括客房编号、客房种类、客房位置、客房单价、顾客姓名、顾客身份证号码、入住日期、折扣、结日期、备注信息等。三、功能概述:该系统应充分利用信息技术提高宾馆客房的管理水平、服务水平。宾馆客房管理系统要实现客房预定、住宿登记、宿费提醒、追加押金、调房登记、退房结账、挂账、查询统计、预收销售报表等等功能。其中宿费提醒可以在住宿费超过押金时预警,提示前台要客人补交押金,该功能可明显提高对住宿人员宿费的有效管理。将动态实时的住宿登记、客房调整、销售报表、追加押金等有机地联系在一起,对宾馆客房进行全方位的管理。四、实现目标:1可轻松管理多楼号及数百间客房.2可完全定制的房态图.能及时方便地查询实时房态,并处理打扫好的房间状态3灵活的复杂业务处理能力.业务规则可以由用户根据酒店实际情况自行设置,以 提高操作效率. 4内置多种统计.提供各种明细查询.5对宾客预定,入住,续住,离店结账等业务进行处理。6能对宾客的消费等账务进行修理7对于处理好团队订房事务8能对客房消费对行相关处理,及时快速的查询和统计客房物品的消耗情况五、业务流程六、系统功能模块设计:图系统功能模块图七、数据字典:本程序设计主要用于宾馆的客房管理,各部分具体功能如下:欢迎界面.scx: 显示界面,并用命令按钮调用其他子表单;主表单.scx: 为调用其他表单建立快捷菜单,方便使用;预定登记.scx: 录入预定人的基本资料,查寻空房;入住登记.scx: 登记已入住人的基本资料,查寻空房;后台管理.scx: 浏览客房状态,并能调出:客房资料维护、帐目浏览、月结算;客房帐目.scx: 计算客房的帐目资料; 客房资料维护.scx:对客房资料进行查寻、修改、添加、删除;退出界面.scx: 退出系统。 三、数据库设计1、数据库设计步骤: 数据库需求分析 数据库概念结构设计 数据库逻辑结构设计数据库需求分析分析调查有关宾馆管理信息需求的基础上得本系统所处理的数据流程图宾馆管理信息系统数据流程图数据库概念结构设计本系统根据以上的设计规划出的实体有:客房标准信息实体、客房信息实体、订房信息实体、结算信息实体。各个实体具体的描述-图如下:客房信息实体客房种类客房编号客房位置客房单价是否预定客房信息实体-图数据库逻辑结构设计首先将宾馆管理信息系统的数据库概念结构转化为SQL2000数据库系统所支持的实际数据模型,即:数据库的逻辑结构。其各个表格的设计结果如下 客房标准信息表列名 数据类型 可否为空客房编号 char NOTNULL (主键)标准名称 char NOTNULL 房间面积 numeric NULL房间类型 char NULL 是否有空调 char NULL 是否有电话 char NULL 是否有电视 char NULL是否有宽带 char NULL 单价 numeric NULL备注 text NULL 客房信息表列名 数据类型 可否为空 客房编号 char NOTNULL (主键)客房种类 char NOTNULL客房位置 char NULL 是否被预定 char NOTNULL备注 text NULL 订房信息表列名 数据类型 可否为空 客房编号 char NOTNULL (主键)顾客姓名 char NOTNULL 身份证号码 char NOTNULL 入住日期 datetime NULL 折扣 numeric NULL 结算日期 datetime NULL 金额 numeric NULL 备注 text NULL 2、数据库的选择和部分重要的SQL代码与VB代码创建系统用户表格user_InfoCREATETABLEdbo.user_Info1(user_IDchar(10)COLLATEChinese_PRC_CI_ASNOTNULL,user_PWDchar(10)COLLATEChinese_PRC_CI_ASNULL,user_Deschar(10)COLLATEChinese_PRC_CI_ASNULL)ONPRIMARY创建客房标准信息表格roomtypeCREATETABLEdbo.roomtype(客房编号char(10)COLLATEChinese_PRC_CI_ASNOTNULL,标准名称char(10)COLLATEChinese_PRC_CI_ASNOTNULL,房间面积numeric(5,0)NULL,是否有空调char(2)COLLATEChinese_PRC_CI_ASNULL,是否有电话char(2)COLLATEChinese_PRC_CI_ASNULL,是否有电视char(2)COLLATEChinese_PRC_CI_ASNULL,是否有宽带char(2)COLLATEChinese_PRC_CI_ASNULL, 单价numeric(10,2)NULL备注textCOLLATEChinese_PRC_CI_ASNULL)ONPRIMARY创建客房信息表格roomsCREATETABLEdbo.rooms(客房编号char(10)COLLATEChinese_PRC_CI_ASNOTNULL,客房种类char(10)COLLATEChinese_PRC_CI_ASNOTNULL,客房位置char(20)COLLATEChinese_PRC_CI_ASNULL,是否被预定char(2)COLLATEChinese_PRC_CI_ASNOTNULL,备注textCOLLATEChinese_PRC_CI_ASNULL)ONPRIMARYTEXTIMAGE_ONPRIMARY创建订房信息表bookinCREATETABLEdbo.bookin(客房编号char(18)COLLATEChinese_PRC_CI_ASNOTNULL,顾客姓名char(10)COLLATEChinese_PRC_CI_ASNOTNULL,身份证号码char(18)COLLATEChinese_PRC_CI_ASNOTNULL,入住日期datetimeNULL,折扣numeric(2,0)NULL,结算日期datetimeNULL,金额numeric(10,2)NULL备注textCOLLATEChinese_PRC_CI_ASNULL)ONPRIMARYTEXTIMAGE_ONPRIMARY宾馆管理信息系统具体程序实现创建公用模块Module1.bas添加公共数据操作函数,用以执行各种SQL语句。添加函数ExecuteSQL,代码如下:PublicFunctionExecuteSQL(ByValSQLAsString,MsgStringAsString)_AsADODB.Recordset执行SQL语句,并返回记录集对象DimcnnAsADODB.ConnectionDimrstAsADODB.RecordsetDimsTokens()AsString异常处理OnErrorGoToExecuteSQL_Error用Split函数产生一个包含各个子串的数组sTokens=Split(SQL)Setcnn=NEWADODB.Connection打开连接cnn.OpenConnectStringIfInStr(“INSERT,DELETE,UPDATE”,UCase$(sTokens(0)ThenCnn.ExecuteSQLMsgString=sTokens(0)&”querysuccessful”ElseSetrst=NEWADODO.Recordsetrst.OpenTrim$(SQL),cnn,adOpenKeyset,adLockOptimisticrst.MoveLastgetRecordCount返回记录集对象SetExecuteSQL=rstMsgString=”查询到”&rst.RecordCount&”条记录”EndIfExecuteSQL_Exit:Setrst=NothingSetcnn=NothingExitFunctionExecuteSQL_Error:MsgString=”查询错误:”&Err.DescriptionResumeExecuteSQL_ExitEndFunctionPublicSubEnterToTab(KeyascAsInteger)判断是否为回车键IfKeyasc=13ThenKeyasc用来保存当前按键转换成Tab键SendKeys”TAB”EndIfEndsub添加全局变量,用来记录各个窗口的读写状态,代码如下:PublicflagTeditAsBoolean标示是否进入修改的窗体PublicflagReditAsBooleanPublicflagBeditAsBooleanPublicflagCeditAsBooleanPublicgintCmodeAsIntegerPublicgintTmodeAsInteger记录是添加还是修改状态,1为添加,2为修改PublicgintRmodeAsIntegerPublicgintBmodeAsIntegerPublicflagSeditAsBoolean系统用户管理模块的创建用户管理模块主要实现:用户登陆。添加用户。修改用户具体客房标准添加代码:PrivateSubForm_Load()载入窗体后,判断所处状态DimintCountAsIntegerDimMsgTextAsStringDimiAsIntegerIfgintTmode=1Then判断是否属于添加状态Me.Caption=Me.Caption&”添加”Fori=0To3Combo1(i).AddItem”否”Combo1(i).AddItem”是”Combo1(i).ListIndex=0NextiElseIfgintTmode=2Then判断是否处于修改状态Setmrc=ExecuteSql(txtSQL,MsgText)Ifmrc.EOF=falseThenWithmrcForintCount=0To3txtItem(intCount)=.Fields(intCount)NextintCounttxtItem(4)=.Fileds(8)Fori=0To3Combo1(i).Additem”否”Combo1(i).Additem”是”Combo1(i).ListIndex=0NextiEndWithtxtItem(0).Enabled=FalseEndIfMe.Caption=Me.caption&”修改”EndIfmblChang=FalseEndSubPrivateSubcmd_Click()用户输入内容完毕后,单击cmdSave按钮触发Click事件DimintCountAsIntegerDimsMegAsStringDimMsgTextAsStringForintCount=0To4判断是否输入内容IfTrim(txtItem(intCount)&”)=”ThenSelectCaseintCountCase0sMeg=”客房编号”Case1sMeg=”标准名称”Case2sMeg=”房间面积”Case3sMeg=” 房间类型“Case4sMeg=”床位单价”EndSelectsMeg=sMeg&”不能为空!”MsgBoxsMeg,vbOkOnly+vbExclamation,”警告”txtItem(intCount).SetFocusExitSubEndifNextintCount判断输入内容是否为数字ForintCount=2To4IfNotIsNumeric(Trim(txtItem(intCount)ThenSelectCaseintCountCase2sMeg=”房间面积”Case3sMeg=” 房间类型”Case4sMeg=”床位单价”EndSelectsMeg=sMeg&”请输入数字!”MsgBoxsMeg,vbOKOnly+vbExclamation,”警告”txtItem(intCount).SeFocusExitSubEndIfNextintCountIfgintTmode=1Then判断是否有相同ID记录txtSQL=”select*fromroomtypewheretypeid_=”&Trim(txtItem(0)&”Setmrc=ExecuteSQL(txtSQL,MsgText)Ifmrc.EOF=FalseThenMsgBox“已经存在此标准编号的记录!”,vbOKOnly+vbExclamation,”警告”txtItem(0).SetFocusExitSubEndIfMrc.CloseEndIftxtSQL=”select*fromroomtypewheretypeid”&Trim(txtItem(0)&”andtypename=”&Trim(txtItem(1)&”Setmrc=ExecuteSQL(txtSQL,MsgText)Ifmrc.EOF=FalseThenMsgBox”已经存在相同客房标准的记录!”,vbOKOnly+vbExclamation,“警告”txtItem(1).SetfocusExitSubEndIftxtSQL=”deletefromroomtypewheretypeid=”&Trim(txtItem(0)&”删除已有记录Setmrc=ExecuteSQL(txtSQL,MsgText)txtSQL=”select*fromroottype”添加新记录Setmrc=ExecuteSQL(txtSQL,MsgText)mrc.AddNewForintCount=0To3mrc.Fields(intCount)=Trim(txtItem(intCount)NextintCountForintCount=0To3mrc.Fields(intCount+4)=Trim(Combo1(intCount)NextintCountmrc.Fields(8)=Trim(txtItem(4)mrc.Update更新数据库mrc.CloseifgintTmode=1Then判断是否属于添加状态MsgBox“添加纪录成功!”,vbOKOnly+vbExclamtion,“添加记录”ForintCount=0To4txtItem(intCount)=”清除已经输入的内容NextintCountForintCount=0To3Combo1(intCount).ListIndex=0NextintCountmblChange=False判断是否打开窗口ifflagTeditThenUnloadfrmRoomtypefrmRoomtype.txtSQL=“select*fromroomtype”frmRoomtype.ShowEndIfElseIfgintTmode=2Then判断是否处于修改状态UnloadMeIfflagTeditThenUnloadfrmRoomtypeEndIffrmRoomtype.txtSQL=”select*fromroomtype”frmRoomtype.ShowEndIfEndSubPrivateSubtxtItem_GotFocus(IndexAsInteger)文本框获得焦点时触发该事件,即自动选中输入的内容,便于修改txtItem(Index).SelStart=0txtItem(Index).SelLength=Len(txtItem(Index)EndSubPrivateSubcmdExit_Click()单击按钮cmdExit取消添加信息IfmblChangeAndcmdSave.EnabledThenIfMsgBox(“保存当前记录的变化吗?”,vbOKCancel+vbExclamation,”警告”)=vbOKThen保存CallcmdSave_ClickEndIfEndIfUnloadMeEndSubPrivateSubtxtItem_KeyDown(IndexAsInteger,KeyCodeAsInteger,Shift_AsInteger)输入完内容,单击回车键将自动进入下一个文本框,触发文本框的Keydown事件EnterToTabKeyCodeEndSub修改客房标准窗体的创建PrivateSubFrom_Load()ShowTitleShowDataflagTedit=TrueEndSubPrivateSubShowTitle()调用showTitle函数,显示表头DimiAsIntegerWithmsgList.Cols=10.TextMatrix(0,1)=”客房编号”.TextMatrix(0,2)=”标准名称”.TextMatrix(0,3)=”房间面积”.TextMatrix(0,4)=”床位数量”.TextMatrix(0,5)=”是否有空调”.TextMatrix(0,6)=”是否有电话”.TextMatrix(0,7)=”是否有电视”.TextMatrix(0,8)=”是否有宽带”.TextMatrix(0,9)=”房间单价”.FixedRows=1固定表头Fori=0To9设置各列的对齐方式.ColAlignment(i)=0Nexti.FillStyle=flexFillRepeat表头项居中.Col=0.Row=0.RowSel=1.ColSel=.Cols-1.CellAlignment=4.ColWidth(0)=300设置单元大小.ColWidth(1)=1000.ColWidth(2)=2000.ColWidth(3)=2000.ColWidth(4)=1000.ColWidth(5)=1000.ColWidth(6)=1000.ColWidth(7)=1000.ColWidth(8)=1000.ColWidth(9)=1000.Row=1EndWithEndSubPrivateSubShowData()调用showData函数,显示记录列表DimiAsIntegerSetmrc=ExecuteSQL(txtSQL,MsgText)根据需要设置SQL语句,显示需要的记录WithmsgList.Rows=1DoWhileNotmrc.EOF.Rows=Rows+1Fori=1Tomrc.Fields.CountSelectCasemrc.Fields(i-1).TypeCaseadDBDate.TextMatrix(.Rows-1,i)=Format(mrc.Fields(i-1)&”,”yyyy-mm-dd”)CaseElse.TextMatrix(.Rows-1,i)=mrc.Fields(i-1)&”EndSelectNextiMrc.MoveNextLoopEndWithmrc.CloseEndSubPrivateSubmsgList_MouseUp(ButtonAsInteger,ShiftAsInteger,xAsSingle,yAsSingle)选择记录,然后单击鼠标右键,触发MouseUp事件IfButton=2AndShift=0ThenPopupMenufMainFrom.menuRoomtypeEndIfEndSubPrivateSubmenuModifyroomtype_Click()DimintCountAsIntegerIfflagTeditThen判断是否打开记录窗体IffrmRoomtype.msgList.Rows1ThenfintTmode=2设置为修改状态intCount=frmRoomtype.msgList.Row记下选择记录frmRoomtype1.txtSQL=”select*fromroomtypewheretypeid”&Trim(frmRoomtype.msgList.TextMatrix(intCount,1)&”frmRoomtype1.ShowElseCallmenuAddroomtype_ClickEndIfElsefrmRoomtype.txtSQL=”select*fromroomtype”frmRoomtype.ShowEndIfEndSubPrivateSubFrom_Resize()窗体变化时,调整标签和表格位置,使标签处于窗体的最上方,而表格始终处于标签下方IfMe.WindowStatevbMinimizedAndfMainFrom.WindowStatevbMinimizedThen边界处理IfMe.Scaleheight10*lblTitle.HeightThenExitSubEndIfIfMe.ScaleWidth1ThenIfMsgBox(“真的要删除这条文件记录么?”,vbOKCancel+vbExclamation,”警告”)=vbOKThenintCount=frmRoomtype.msgList.RowtxtSQL=”deletefromroomtypewheretypeid”&Trim(frmRoomtype.msgList.TextMatrix(intCount,1)&”Setmrc=ExecuteSQL(txtSQL,MsgText)UnloadfrmRoomtype关闭记录窗体frmRoomtype.txtSQL=”select*fromroomtype”重新选择所有记录frmRoomtype.ShowEndIfEndIfEndIfEndSub客房信息管理模块的创建客房信息管理模块主要实现如下功能:添加客房信息修改客房信息删除客房信息查询客房信息具体实现代码如下:PrivateSubFrom_Load()载入窗体时,自动添加客房信息种类DimsSqlAsStringDimintCountAsIntegerDimMsgTextAsStringDimmrccAsADODB.RecordsetIfgintRmode=1Then判断是否处于添加状态Me.Caption=me.Caption&“添加”txtSQL=”selectDISTINCTtypenamefromroomtype”Setmrc=ExecuteSQL(txtSQL,MsgText)IfNotmrc.EOFThenDoWhileNotmrc.EOFcboItem(0).AddItemTrim(mrc.Fields(0)mrc.MoveNextLoopcboIte
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 重庆彭水苗族土家族自治县2025年上半年事业单位公开遴选试题含答案分析
- 云南省盐津县2025年上半年事业单位公开遴选试题含答案分析
- 河北省望都县2025年上半年事业单位公开遴选试题含答案分析
- 河北省任丘市2025年上半年公开招聘辅警试题含答案分析
- 河北省青县2025年上半年公开招聘城市协管员试题含答案分析
- 河北省孟村回族自治县2025年上半年公开招聘城市协管员试题含答案分析
- 2025年存量房交易全程资金监管与划转合同
- 2025橱柜安装工程质量监管与验收合同协议
- 2025版企业员工劳动合同解除与经济补偿合同
- 2025年度配送员劳动合同范本修订示范
- 口腔健康与全身系统性疾病关联机制
- 消防部队改革转隶课件
- 2025年安徽合肥包河区演艺集团有限责任公司招聘笔试参考题库含答案解析
- CJ/T 120-2016给水涂塑复合钢管
- T/CNIDA 010-2023核电厂建(构)筑物变形监测系统技术规程
- T/CECS 10214-2022钢面镁质复合风管
- 既有供暖蒸汽管网及设施改造项目建议书(参考范文)
- 公交从业人员考试试题及答案
- 智联招聘协议书
- 2025-2030中国细胞分选机行业市场发展趋势与前景展望战略研究报告
- 中国特色社会主义知识点总结中职高考政治一轮复习
评论
0/150
提交评论