




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要:随着计算机和信息技术的飞速发展,酒店客房的管理由传统的工作模式逐渐被信息化、网络化的现代工作模式所代替。以住宿为主的酒店假如再延用传统的管理模式,就会增加酒店管理成本和降低工作效率。在酒店客房管理中融入先进的计算机和软件技术,利用酒店客房管理系统进行管理就显得十分有意义。利用酒店客房管理系统进行管理能让管理者与时了解酒店整体情况,便于各种决策,同时也简化了管理的各种复杂操作,提高了酒店的管理效率。本文以茂名星期八商务酒店为例采用VisualBasic和ACCESS相结合,创建一个适合实际情况的酒店客房管理系统。关键词:酒店客房管理系统设计实现Abstract:Withtherapiddevelopmentofcomputerandinformationtechnology,themanagementofhotelroomsbythetraditionalworkingmodehasgraduallyreplacedbymoderninformationtechnology,thenetworkworkmode.Inordertostayatthemainhoteliftheextensionofthetraditionalmanagementmode,willincreasethecostandreducetheefficiencyofhotelmanagement.Withadvancedcomputersandsoftwaretechnologyinthehotelguestroommanagement,itisverymeaningfulandmanagedbythehotelguestroommanagementsystem.Managementcanmakemanagerstounderstandtheoverallsituationofthehotel,hotelroomsmanagementsystem,convenientforvariousdecision-making,butalsosimplifiesthemanagementofavarietyofcomplexoperation,improvethemanagementefficiencyofthehotelmanagement.Inthispaper,MaomingweekeightTradersHotelasanexampleusingVisualBasicandACCESScombination,tocreateasuitablefortheactualsituationofthehotelroommanagementsystem.Keywords:HotelroommanagementsystemDesignRealization目录第一章课题研究背景 3(一)酒店客房管理现状 3(二)课题研究的意义 3第二章需求分析 3(一)系统目标 3(二)系统需求 3(三)功能需求 4(四)系统的性能需求 4(五)开发技术 5第三章系统总体功能 5(一)系统功能结构 5(二)系统流程图 6第五章各功能模块代码 11(一)酒店客房管理系统Main模块 11(二)初始化main_csh模块 16(四)操作员设置main_czysz模块 17(五)房态查询main_ftcx模块 19(六)挂账结款main_gzjk 20(七)客房查询main_kfcx 23(八)住宿登记main_kfdj 23(九)客房设置main_kfgl 31(十)密码设置main_mmsz 34(十一)权限设置main_qxsz 36(十二)数据备份main_sjbf 38(十三)数据恢复main_sjhf 38(十四)退宿结账main_tf 39(十五)退宿查询main_tfcx 50(十六)调房登记main_tfdj 51(十七)宿费提醒main_xftx 55(十八)客房销售报表main_xsbb 56(十九)客房销售统计main_xstj 59(二十)登记预收报表main_ysbb 60(二十一)追加押金main_zjyj 61(二十二)住宿查询main_zscx 66(二十三)酒店客房管理系统main_Login 67第六章调试与结果 68(一)初始化系统登录调试 68(二)登记模块的功能调试 68(三)退房的功能调试 69(四)住房查询的功能调试 69参考文献 70致谢 71酒店客房管理系统的设计与实现第一章课题研究背景随着经济的迅速发展,酒店业的竞争日趋激烈。酒店业内不得不进一步寻求通过扩大酒店销售、改进服务质量、降低管理成本和提升客户满意度等办法来增强酒店的核心竞争力。其中最有效的手段就是应用现代化信息化技术,变革传统意义上的酒店业经营管理模式,跟上时代竞争的步伐。考虑到酒店业务的不断提升和用户需求的日益多样化,尽量满足酒店的个性化需求,同时吸收了同类产品与现有软件系统的优点,力争设计成为一套先进适用的酒店管理软件系统,为顾客提供更加便捷的信息化服务,为酒店管理者、决策者提供准确与时的酒店经营信息,以达到酒店节约经营成本、提高经营质量和经济效益的信息化管理目标。(一)酒店客房管理现状随着计算机和信息技术的飞速发展,传统的酒店客房管理模式逐渐被信息化的现代酒店客房管理模式所代替。传统的酒店管理往往令管理者花大量的人力和物力以满足各种繁琐的经营活动的需要,例如冗长的登记和结账手续、手工记录所有客房状态、列表统计顾客消费情况等。这种工作模式不但效率低下,且极易出现错误和遗漏,有时甚至会导致严重的经济损失,给酒店的经营带来负面影响。(二)课题研究的意义对酒店整个来说,对酒店经营状况起决定作用的是酒店的服务管理水平。如何利用先进的管理手段来提高酒店的管理水平成为酒店业务发展的当务之急。面对信息时代的机遇和挑战,利用科技手段提高酒店的管理无疑是一条行之有效的途径。虽然计算机管理并不是酒店管理走向成功的关键元素,但它可以最大限度地发挥准确、快捷、高效等作用,对酒店的业务管理提供强有力的支持。因此,采用全新的计算机网络和酒店业务管理系统,已成为提高酒店的管理效率,使作业人员与管理系统之间灵活互动,实现流畅的工作流衔接,帮助酒店有效地进行业务管理,释放最大价值。酒店业务管理系统在达到在节省人力资源成本的同时,可以提高业务效率,并能够与时、准确、迅速地满足顾客服务的需求。第二章需求分析(一)系统目标本系统需要满足以下几个系统设计目标。(1)实用性原则:真正为酒店工作人员的实际工作服务,按照酒店客房管理工作的实际流程,设计出实用的酒店客房管理系统。(2)安全性原则:必须为酒店客房提供信息安全的服务,以保证酒店信息的不被泄露。(3)可操作性原则:本酒店客房管理系统面向的是酒店内工作人员,所以系统操作上要求简单、方便、快捷,便于用户使用。(4)可扩展性原则:采用开发的标准和接口,便于系统向更大的规模和功能扩展。(二)系统需求根据酒店客房管理系统的理念,此酒店客房管理系统必须满足以下需求:(1)具有设置酒店客房类型和房间信息的功能(2)能快速、准确地了解酒店的客房状态,以便订房和退房(3)提供多种手段查询客房订房信息(4)提供修改订房和修改退房功能(5)提供简单的酒店工作人员的添加用户和修改密码功能(三)功能需求(1)利用系统设置中的初始化模块清空系统中所有数据。(2)系统设置模块主要是设置操作员、密码与权限。(3)客房管理模块主要是对客房进行设置和查询。(4)住宿管理模块主要是对住宿登记、追加押金、调房登记和退宿结账进行管理。(5)挂账查询模块主要是对挂账和客户结款进行查询。(6)查询统计模块主要是对住宿、退宿进行查询以与对宿费进行提醒。(7)日结模块主要是对登记预收、客房销售进行报表管理以与对客房销售进行统计。(8)系统维护主要是对数据备份和恢复进行维护。(四)系统的性能需求为了保证系统能够长期、安全、稳定、可靠、高效的运行,系统应该满足以下的性能需求:(1)系统处理的准确性和与时性系统处理的准确性和与时性是系统的必要性能。在系统设计和开发过程中,要充分考虑系统当前和将来可能承受的工作量,使系统的处理能力和响应时间能够满足用户对信息的处理。由于系统的查询功能对于整个系统的功能和性能完成很重要。从系统的多个数据来源来看,客房信息查询、订房信息查询、结算信息查询,其准确性很大程度上决定了系统的成败。因此,在系统开发过程中,系统采用优化的SQL语句与安全扩展存储过程来保证系统的准确性和与时性。(2)系统的开放性和系统的可扩充性系统在开发过程中,应该充分考虑以后的可扩充性。例如系统权限和客房信息设置等模块也会不断的更新和完善。所有这些都要求系统提供足够的手段进行功能的调整和扩充。而要实现这一点,应通过系统的开放性来完成,既系统应是一个开放系统,只要符合一定的规范,可以简单的加入和减少系统的模块,配置系统的硬件。通过软件的修补、替换完成系统的升级和更新换代。(3)系统的可操作性性本酒店客房管理系统面向的用户是酒店内工作人员,而有些使用人员往往对计算机并不是非常熟悉,所以系统操作上要求简单、方便、快捷,便于用户使用。这就要求系统能够提供良好的用户接口,易用的人机交互界面。(4)系统的响应速度系统设计中摒弃大量数据冗余,提出了优化数据库的解决方案,大量使用存储过程,大大提高系统响应时间和速度。系统在日常处理中的响应速度为秒级,达到实时要求,以与时反馈信息。严格保证操作人员不会因为速度问题而影响工作效率。(五)开发技术本系统利用VisualBasic编译环境,采用可视化编程,以MicrosoftOfficeAccess2003作为后台数据库,选用ADO访问数据库来实现各种功能。1.计算机与操作系统:WindowsXP或Windows7;2.开发工具:VisualBasic3.运行环境:装有完整MicrosoftOfficeAccess2003的系统4.语言:VisualBasic与SQL查询语言第三章系统总体功能(一)系统功能结构1.基本系统模型登录身份验证登录身份验证工作界面2.系统功能模型根据星期八商务酒店实际情况,酒店客房管理系统总体功能模型如下图所示。酒店客房管理系统酒店客房管理系统住宿管理客房管理挂账管理查询统计日结系统设置系统维护(二)系统流程图1.预订流程:2.结账流程:第四章数据库设计根据酒店客房管理系统需要,设置的数据库包含入住登记表tb_djb、预收登记表tb_djys、挂账信息表tb_gzmx、酒店房间信息表tb_kf、权限设置表tb_qxsz、调房登记表tb_tfd和管理者信息表tb_user。其结构如下:入住登记表tb_djb:字段字段名类型字段大小1凭证号码文本202姓名文本203证件名称文本204证件号码文本205详细地址文本506住宿事由文本507房间号文本308客房类型文本209客房价格货币10住宿日期日期/时间11住宿时间日期/时间12住宿天数数字双精度型13宿费货币14折扣数字双精度型15应收宿费货币16预收金额货币17提醒日期日期/时间18退宿日期日期/时间19备注文本5020标志文本1021日期日期/时间22时间日期/时间23结款方式文本1024退宿时间日期/时间25提醒时间日期/时间26摘要文本20027BZ数字双精度型预收登记表tb_djys:字段字段名类型字段大小1凭证号码文本202姓名文本203证件名称文本204证件号码文本205详细地址文本506住宿事由文本507房间号文本308客房类型文本9客房价格货币10住宿日期日期/时间11住宿时间日期/时间12住宿天数数字双精度型13宿费货币14折扣数字双精度型15应收宿费货币16预收金额货币17提醒日期日期/时间18退宿日期日期/时间19备注文本5020标志文本1021日期日期/时间22时间日期/时间23结款方式文本1024摘要文本20025退宿时间日期/时间26提醒时间日期/时间27BZ数字双精度型挂账信息表tb_gzmx:字段字段名类型字段大小1日期日期/时间2挂账单位文本1003摘要文本1004住宿金额货币5欠款金额货币6还款金额货币7金额累计文本208姓名文本209证件号码文本2010票号文本2011时间日期/时间12序号数字整型13房间标准文本1014房间价格文本10酒店房间信息表tb_kf:字段字段名类型字段大小1房间号文本302房间类型文本203价格货币4房态文本45标志是/否6备注文本1007配置文本1008使用设置文本1009营业日期日期/时间权限设置表tb_qxsz:字段字段名类型字段大小1住宿登记是/否2追加押金是/否3调房登记是/否4退宿登记是/否5客房管理是/否6客房查询是/否7房态查看是/否8挂账查询是/否9挂账结款是/否10住宿查询是/否11退宿查询是/否12宿费提醒是/否13登记预收报表是/否14客房销售报表是/否15客房销售统计报表是/否16操作员设置是/否17密码设置是/否18初始化是/否19权限设置是/否20设置窗口图像是/否21数据备份是/否22数据恢复是/否23编号文本5024操作员文本5025密码文本50调房登记表tb_tfd:字段字段名类型字段大小1凭证号码文本202姓名文本203证件名称文本204证件号码文本205详细地址文本506工作单位文本507房间号文本308客房类型文本209客房价格货币10住宿日期日期/时间11住宿时间日期/时间12住宿天数数字双精度型13宿费货币14折扣或招待文本1615折扣货币16应收宿费货币17杂费货币18电话费货币19会议费货币20存车费货币21赔偿费货币22金额总计货币23预收宿费货币24退还宿费货币25退房日期日期/时间26退房时间日期/时间27备注文本10028BZ数字双精度型管理者信息表tb_user:字段字段名类型字段大小1操作员文本102密码文本50第五章各功能模块代码(一)酒店客房管理系统Main模块:DimstrtempAsString*60'定义字符变量存储路径PrivateDeclareFunctionGetSystemDirectoryLib"kernel32"Alias"GetSystemDirectoryA"(ByVallpBufferAsString,ByValnSizeAsLong)AsLong'声明API函数PrivateSubForm_Load()'自动识别数据库路径Adodc1.ConnectionString="Provider=Microsoft.Jet.OLEDB.4.0;DataSource="&App.Path&"\DB_KFGL.mdb;PersistSecurityInfo=False"Adodc1.RecordSource="select*fromtb_user"Adodc1.RefreshAdodc2.ConnectionString="Provider=Microsoft.Jet.OLEDB.4.0;DataSource="&App.Path&"\DB_KFGL.mdb;PersistSecurityInfo=False"Adodc2.RecordSource="select*fromtb_qxsz"Adodc2.RefreshOnErrorGoToaa'错误处理。当找不到路径时则转向错误处理Open(App.Path&"\picture.txt")ForInputAs#1LineInput#1,intextTemp=intextClose#1Image2.Picture=LoadPicture(intext)ExitSubaa:Image2.Picture=LoadPicture(App.Path&"\image\酒店客房管理系统主界面.bmp")'当找不到路径时,赋给一个固定的图片路径EndSubPrivateSubForm_Activate()'设置操作员权限Adodc1.RecordSource="select*fromtb_userwhere操作员='"+StatusBar1.Panels(4).text+"'"Adodc1.RefreshIfAdodc1.Recordset.RecordCount>0ThenAdodc2.RecordSource="select*fromtb_qxszwhere操作员='"+StatusBar1.Panels(4).text+"'"Adodc2.RefreshIfAdodc2.Recordset.RecordCount>0ThenWithAdodc2.RecordsetMain.zjyj.Enabled=.Fields("追加押金")Main.ZSDJ.Enabled=.Fields("住宿登记")Main.tf.Enabled=.Fields("退宿登记")Main.tfdj.Enabled=.Fields("调房登记")Main.kfsz.Enabled=.Fields("客房管理")Main.kfcx.Enabled=.Fields("客房查询")Main.ftck.Enabled=.Fields("房态查看")Main.gzcx.Enabled=.Fields("挂账查询")Main.gzjk.Enabled=.Fields("挂账结款")Main.zscx.Enabled=.Fields("住宿查询")Main.tfcx.Enabled=.Fields("退宿查询")Main.sftx.Enabled=.Fields("宿费提醒")Main.ysbb.Enabled=.Fields("登记预收报表")Main.xsbb.Enabled=.Fields("客房销售报表")Main.xstj.Enabled=.Fields("客房销售统计报表")Main.czysz.Enabled=.Fields("操作员设置")Main.ma.Enabled=.Fields("密码设置")Main.csh.Enabled=.Fields("初始化")Main.qxsz.Enabled=.Fields("权限设置")Main.sztx.Enabled=.Fields("设置窗口图像")Main.sjbf.Enabled=.Fields("数据备份")Main.sjhf.Enabled=.Fields("数据恢复")Main.Toolbar1.Buttons(1).Enabled=.Fields("住宿登记")Main.Toolbar1.Buttons(3).Enabled=.Fields("退宿登记")Main.Toolbar1.Buttons(5).Enabled=.Fields("房态查看")Main.Toolbar1.Buttons(7).Enabled=.Fields("住宿查询")Main.Toolbar1.Buttons(9).Enabled=.Fields("客房销售报表")Main.Toolbar1.Buttons(11).Enabled=.Fields("宿费提醒")EndWithEndIfEndIfEndSubPrivateSubToolbar1_ButtonClick(ByValButtonAsMSComctlLib.Button)SelectCaseButton.KeyCase"DJ"zsdj_Click'调入住宿登记Case"TF"tf_Click'调入退宿结账Case"FT"ftck_Click'调房态宿查询Case"CX"zscx_Click'调入住宿查询Case"RJ"xsbb_Click'调入客房销售报表Case"TX"sftx_Click'调入提醒Case"counter"DimL,S'调用计算器L=GetSystemDirectory(strtemp,Len(strtemp))Paths=Left(strtemp,L)&"\CALC.EXE"S=Shell(Paths,1)'Shell函数执行一个可执行文件,返回一个Variant(Double),如果成功的话,代表这个程序的任务ID,若不成功,则会返回0。Case"CXDL"'重新登录Loadmain_Loginmain_Login.ShowCase"exit"IfMsgBox("确定退出该系统?",4,"系统提示")=vbYesThenEndEndIfEndSelectEndSubPrivateSubsztx_Click()'设置主窗口图像DimStr'定义变量CommonDialog1.Filter="BMP图片(*.BMP)|*.BMP|JPG图片(*.JPG)|*.JPG|GIF图片(*.GIF)|*.GIF|所有文件(*.*)|*.*"'设置图片格式'CommonDialog控件CommonDialog控件提供一组标准的操作对话框,进行诸如打开和保存文件,设置打印选项,以与选择颜色和字体等操作。CommonDialog1.ShowOpen'显示“打开”对话框IfCommonDialog1.<>""Then'如果文件不为空Image2.Picture=LoadPicture(CommonDialog1.)'加载图片Str=CommonDialog1.'将图片名赋给变量Open(App.Path&"\picture.txt")ForOutputAs#1'打开一个txt文件Print#1,Str'打印图片名Close#1'关闭文件CommonDialog1.=""'把空值赋给文件名ElseCommonDialog1.=""'把空值赋给文件名EndIfEndSubPrivateSubsjbf_Click()'调入数据备份main_sjbf.ShowMain.Enabled=FalseEndSubPrivateSubsjhf_Click()'数据恢复main_sjhf.ShowEndSubPrivateSubzsdj_Click()'调入住宿登记main_kfdj.ShowMain.Enabled=FalseEndSubPrivateSubzjyj_Click()'调入追加押金Loadmain_zjyjmain_zjyj.ShowMain.Enabled=FalseEndSubPrivateSubtfdj_Click()'调入调房登记main_tfdj.ShowMain.Enabled=FalseEndSubPrivateSubtf_Click()'调入退宿结账main_tf.ShowMain.Enabled=FalseEndSubPrivateSubkfsz_Click()'调入客房管理main_kfgl.ShowMain.Enabled=FalseEndSubPrivateSubkfcx_Click()'调入客房查询main_kfcx.ShowMain.Enabled=FalseEndSubPrivateSubftck_Click()'调入房态查看main_ftcx.ShowMain.Enabled=FalseEndSubPrivateSubgzcx_Click()'调入挂账查询Loadmain_gzcxmain_gzcx.ShowMain.Enabled=FalseEndSubPrivateSubgzjk_Click()'调入挂账结款Loadmain_gzjkmain_gzjk.ShowMain.Enabled=FalseEndSubPrivateSubzscx_Click()'调入住宿查询Loadmain_zscxmain_zscx.ShowMain.Enabled=FalseEndSubPrivateSubtfcx_Click()'调入退宿查询Loadmain_tfcxmain_tfcx.ShowMain.Enabled=FalseEndSubPrivateSubsftx_Click()'调入宿费提醒Loadmain_xftxmain_xftx.ShowMain.Enabled=FalseEndSubPrivateSubysbb_Click()'调入登记预收报表main_ysbb.ShowMain.Enabled=FalseEndSubPrivateSubxsbb_Click()'调入客房销售报表main_xsbb.ShowMain.Enabled=FalseEndSubPrivateSubxstj_Click()'调入客房销售统计main_xstj.ShowMain.Enabled=FalseEndSubPrivateSubczysz_Click()'调入操作员设置Loadmain_czyszmain_czysz.ShowMain.Enabled=FalseEndSubPrivateSubma_Click()'调入密码设置main_mmsz.ShowMain.Enabled=FalseEndSubPrivateSubcsh_Click()'调入初始化main_csh.ShowMain.Enabled=FalseEndSubPrivateSubqxsz_Click()'调入权限设置main_qxsz.ShowMain.Enabled=FalseEndSubPrivateSubDL_Click()'重新登录Loadmain_Loginmain_Login.ShowEndSub(二)初始化main_csh模块:Dimworkarea(200),sqlAsString'定义字符串变量DimrsAsADODB.RecordsetPrivateSubForm_Load()'自动识别数据库路径Adodc1.ConnectionString="Provider=Microsoft.Jet.OLEDB.4.0;DataSource="&App.Path&"\DB_KFGL.mdb;PersistSecurityInfo=False"Adodc1.RecordSource="select*fromtb_kf"Adodc1.RefreshEndSubPrivateSubForm_Unload(CancelAsInteger)Main.Enabled=TrueEndSubPrivateSubcomstart_Click()Frame1.Enabled=True:Comcreat.Enabled=TrueEndSubPrivateSubcomcreat_Click()'清空选定表中的数据A=MsgBox("确认初始化该数据?",4,"系统提示")IfA=vbYesThenProgressBar1.Visible=True'ProgressBar控件ProgressBar控件通过从左到右用一些方块填充矩形来表示一个较长操作的进度。ProgressBar1.Max=UBound(workarea)ProgressBar1.Value=ProgressBar1.MinForCounter=LBound(workarea)ToUBound(workarea)'LBound函数返回一个Long型数据,其值为指定数组维可用的最小下标。'UBound函数返回一个Long型数据,其值为指定的数组维可用的最大下标。workarea(Counter)="initialvalue"&CounterProgressBar1.Value=CounterIfCheck1.Value=1Thensql="delete*fromtb_djb"Setrs=ESQL(sql)'调用模块中的自定义函数sql="delete*fromtb_djys"Setrs=ESQL(sql)'调用模块中的自定义函数EndIfIfCheck2.Value=1Thensql="delete*fromtb_tfd"Setrs=ESQL(sql)'调用模块中的自定义函数EndIfIfCheck3.Value=1Thensql="delete*fromtb_gzmx"Setrs=ESQL(sql)'调用模块中的自定义函数EndIfIfCheck5.Value=1ThenAdodc1.RecordSource="select*fromtb_kfwhere房态='入住'"Adodc1.Refresh'ADOData控件ADOData控件与内部Data控件以与RemoteData控件(RDC)相似。ADOData控件使您能使用MicrosoftActiveXDataObjects(ADO)快速地创建一个到数据库的连接。IfAdodc1.Recordset.RecordCount>0ThenAdodc1.Recordset.Fields("房态")="空房"NextiEndIfEndIfNextCounterEndIfMsgBox"初始化完成!",,"系统提示"ProgressBar1.Visible=FalseProgressBar1.Value=ProgressBar1.MinEndSubPrivateSubcomend_Click()Main.Enabled=TrueUnloadMeEndSub(四)操作员设置main_czysz模块:PrivateSubForm_Load()'自动识别数据库路径Adodc1.ConnectionString="Provider=Microsoft.Jet.OLEDB.4.0;DataSource="&App.Path&"\DB_KFGL.mdb;PersistSecurityInfo=False"Adodc1.RecordSource="select*fromtb_qxsz"Adodc1.RefreshAdodc2.ConnectionString="Provider=Microsoft.Jet.OLEDB.4.0;DataSource="&App.Path&"\DB_KFGL.mdb;PersistSecurityInfo=False"Adodc2.RecordSource="select*fromtb_user"Adodc2.RefreshEndSubPrivateSubForm_Activate()Text1.SetFocus'text1获得焦点EndSubPrivateSubForm_Unload(CancelAsInteger)Main.Enabled=TrueEndSubPrivateSubText1_KeyDown(KeyCodeAsInteger,ShiftAsInteger)IfKeyCode=vbKeyReturnThenText2.SetFocus'回车text2获得焦点EndSubPrivateSubtext2_KeyDown(KeyCodeAsInteger,ShiftAsInteger)IfKeyCode=vbKeyReturnThenText3.SetFocus'回车text3获得焦点EndSubPrivateSubText3_KeyDown(KeyCodeAsInteger,ShiftAsInteger)IfKeyCode=vbKeyReturnThenCommand1.SetFocus'回车Command1获得焦点EndSubPrivateSubCommand1_Click()'保存操作员与密码IfText1.text<>""ThenIfText2.text<>""AndText3.text<>""AndText2.text=Text3.textThenadocon.Open"Provider=Microsoft.Jet.OLEDB.4.0;DataSource="&App.Path&"\DB_KFGL.mdb;PersistSecurityInfo=False"adoRs.Open"select*fromtb_user",adocon,adOpenKeyset,adLockOptimisticadoRs.AddNewadoRs.Fields("操作员")=Text1.textadoRs.Fields("密码")=Text2.textadoRs.Updateadocon.Closeadocon.Open"Provider=Microsoft.Jet.OLEDB.4.0;DataSource="&App.Path&"\DB_KFGL.mdb;PersistSecurityInfo=False"adoRs.Open"select*fromtb_qxsz",adocon,adOpenKeyset,adLockOptimisticadoRs.AddNewadoRs.Fields("操作员")=Text1.textadoRs.Fields("密码")=Text2.textadoRs.Updateadocon.CloseText1.text="":Text2.text="":Text3.text=""MsgBox"操作员设置成功!",,"系统提示"'MsgBox函数在对话框中显示消息,等待用户单击按钮,并返回一个Integer告诉用户单击哪一个按钮。ElseIfText3.text=""ThenMsgBox"请输入确认密码",,"系统提示"Text3.SetFocusElseIfText2.text<>Text3.textThenMsgBox"两次输入的密码不相同",,"系统提示"Text2.text=""Text3.text=""Text2.SetFocusEndIfElseMsgBox"请输入操作员!",,"系统提示"EndIfEndSubPrivateSubCommand2_Click()Text1.text="":Text2.text="":Text3.text=""EndSubPrivateSubCommand3_Click()Main.Enabled=TrueUnloadMeEndSub(五)房态查询main_ftcx模块:DimitmXAsListItem'声明一个ListItem对象DimtextAsString'声明字符串变量DimMyIconAsInteger'声明一个整型变量PrivateSubCommand1_Click()UnloadMeMain.Enabled=TrueEndSubPrivateSubForm_Activate()Dimrs1AsADODB.RecordsetDimrs2AsADODB.RecordsetDimrs3AsADODB.RecordsetDimsqlAsString'定义一个字符串变量'ListView控件ListView控件可使用四种不同视图显示项目。通过此控件,可将项目组成带有或不带有列标头的列,并显示伴随的图标和文本。sql="select*fromtb_kfwheretb_kf.房态='入住'"Setrs1=ESQL(sql)'调用模块中的自定义函数Ifrs1.RecordCount>0ThenDoWhilers1.EOF=Falsetext=rs1.Fields("房间号")SetitmX=ListView1.ListItems.Add(,,text,1)rs1.MoveNextLoopEndIfsql="select*fromtb_kfwheretb_kf.房态='空房'"Setrs1=ESQL(sql)Ifrs1.RecordCount>0ThenDoWhilers1.EOF=Falsetext=rs1.Fields("房间号")SetitmX=ListView1.ListItems.Add(,,text,2)rs1.MoveNextLoopEndIfsql="select*fromtb_kfwheretb_kf.房态='维修'"Setrs1=ESQL(sql)'调用模块中的自定义函数Ifrs1.RecordCount>0ThenDoWhilers1.EOF=Falsetext=rs1.Fields("房间号")SetitmX=ListView1.ListItems.Add(,,text,3)rs1.MoveNextLoopEndIfsql="select*fromtb_kfwheretb_kf.房态='入住'"Setrs2=ESQL(sql)'调用模块中的自定义函数sql="select*fromtb_kfwheretb_kf.房态='维修'"Setrs3=ESQL(sql)'调用模块中的自定义函数Labsy.Caption=rs2.RecordCount'客房入住数Labwx.Caption=rs3.RecordCount'客房维修数Labkx.Caption=25-Val(Labwx.Caption)-Val(Labsy.Caption)'客房空闲数Labsyl.Caption=Val(Labsy.Caption)/25*100&"%"'客房使用率EndSubPrivateSubForm_Unload(CancelAsInteger)Main.Enabled=TrueEndSubPrivateSubListView1_Click()'ListView控件可使用四种不同视图显示项目。通过此控件,可将项目组成带有或不带有列标头的列,并显示伴随的图标和文本。main_zscx.Text2.text="1"main_zscx.Adodc1.RecordSource="select*fromtb_djbwhere标志='1'and房间号='"+ListView1.SelectedItem+"'"Loadmain_zscxmain_zscx.ShowEndSub(六)挂账结款main_gzjk:DimdAsStringDimrs1AsNewADODB.RecordsetPrivateSubForm_Load()d=Format(Date,"YYYY-MM-DD")t=Format(Time,"HH:MM:SS")DimiAsInteger'自动识别数据库路径Adodc1.ConnectionString="Provider=Microsoft.Jet.OLEDB.4.0;DataSource="&App.Path&"\DB_KFGL.mdb;PersistSecurityInfo=False"Adodc1.RecordSource="select*fromtb_gzmx"Adodc1.RefreshSetDataGrid1.DataSource=Adodc1Adodc2.ConnectionString="Provider=Microsoft.Jet.OLEDB.4.0;DataSource="&App.Path&"\DB_KFGL.mdb;PersistSecurityInfo=False"adocon.Open"Provider=Microsoft.Jet.OLEDB.4.0;DataSource="&App.Path&"\DB_KFGL.mdb;PersistSecurityInfo=False"rs1.Open"selectdistinct挂账单位fromtb_gzmx",adocon,adOpenKeyset,adLockOptimisticFori=1Tors1.RecordCountCombo2.AddItemrs1.Fields("挂账单位").Valuers1.MoveNextNextiAdodc2.RecordSource="select*fromtb_gzmxwhere摘要='房费已结清'"Adodc2.RefreshIfAdodc2.Recordset.RecordCount>0ThenFori=0ToAdodc2.Recordset.RecordCount-1Combo2.ListIndex=0Forj=0ToCombo2.ListCountIfCombo2.List(j)=Adodc2.Recordset.Fields("挂账单位")ThenCombo2.RemoveItem(j)EndIfNextjNextiEndIfrs1.Closeadocon.CloseEndSubPrivateSubForm_Activate()czy.text=Main.StatusBar1.Panels(4).text'赋值给czy.textEndSubPrivateSubForm_Unload(CancelAsInteger)Main.Enabled=TrueEndSubPrivateSubtext2_Change()'查询挂账单位Adodc1.RecordSource="select*fromtb_gzmxwhere挂账单位='"+Combo2.text+"'"Adodc1.RefreshEndSubPrivateSubCombo1_KeyDown(KeyCodeAsInteger,ShiftAsInteger)IfKeyCode=vbKeyReturnThenText1.SetFocus'按回车键text1获得焦点EndSubPrivateSubCommand1_Click()IfText1.text=""OrCombo2.text=""ThenMsgBox"请输入完整信息"ExitSubEndIf'查询挂账单位Adodc1.RecordSource="select*fromtb_gzmxwhere挂账单位='"&Combo2.text&"'"Adodc1.RefreshIfAdodc1.Recordset.RecordCount>0ThenIfVal(Adodc1.Recordset.Fields("金额累计"))>0Thenkhye.text=Adodc1.Recordset.Fields("金额累计")adocon.Open"Provider=Microsoft.Jet.OLEDB.4.0;DataSource="&App.Path&"\DB_KFGL.mdb;PersistSecurityInfo=False"adoRs.Open"select*fromtb_gzmx",adocon,adOpenKeyset,adLockOptimisticadoRs.AddNew'添加新记录adoRs.Fields("日期")=dadoRs.Fields("时间")=tadoRs.Fields("摘要")="客户还款"adoRs.Fields("姓名")=Text2.textIfCombo2.text<>""ThenadoRs.Fields("挂账单位")=Combo2.textadoRs.Fields("还款金额")=Format(Val(Text1.text),"0.00")adoRs.Fields("金额累计")=Format((Val(khye.text)-Val(Text1.text)),"0.00")IfVal(adoRs.Fields("金额累计"))<=0ThenMsgBox"房费已结清,找零为"&Trim(-adoRs.Fields("金额累计"))&""adoRs.Fields("摘要")="房费已结清"Combo2.RemoveItem(Combo2.ListIndex)EndIfrs1.Open"select*fromtb_gzmxwhere挂账单位='"&Combo2.text&"'",adocon,adOpenKeyset,adLockOptimisticDoWhilers1.EOF=Falsers1.DeleteLooprs1.Close'IfVal(adoRs.Fields("金额累计"))<0Then'MsgBox"超出剩余金额,找零为"&Trim(-adoRs.Fields("金额累计"))&""'adoRs.Fields("摘要")="房费已结清"'EndIfadoRs.Update'更新记录adocon.CloseEndIfEndIf'清空数据Text1.text="":khye.text="":Text2.text=""EndSubPrivateSubCommand2_Click()Main.Enabled=TrueUnloadMeEndSub(七)客房查询main_kfcx:PrivateSubCommand2_Click()'查询Adodc1.RecordSource="select*fromtb_kfwhere房间号like'%"+Text1.text+"%'"Adodc1.RefreshEndSubPrivateSubForm_Load()'自动识别数据库路径Adodc1.ConnectionString="Provider=Microsoft.Jet.OLEDB.4.0;DataSource="&App.Path&"\DB_KFGL.mdb;PersistSecurityInfo=False"Adodc1.RecordSource="select*fromtb_kf"Adodc1.RefreshSetDataGrid1.DataSource=Adodc1DataGrid1.Columns(4).Width=0EndSubPrivateSubForm_Unload(CancelAsInteger)Main.Enabled=TrueEndSubPrivateSubCommand3_Click()Main.Enabled=TrueUnloadMeEndSubPrivateSubText1_KeyDown(KeyCodeAsInteger,ShiftAsInteger)IfKeyCode=13ThenCommand2.SetFocus'按回车键Command2获得焦点EndSub(八)住宿登记main_kfdj:DimiAsInteger'定义一个整型变量DimFdateAsString,FtimeAsStringPrivateSubbh_Change()EndSubPrivateSubCombo3_Click()'查询客房信息Adodc1.RecordSource="select*fromtb_kfwhere房间号='"&Combo3.text&"'and房态='空房'"Adodc1.Refresh'查询住宿登记信息Adodc2.RecordSource="select*fromtb_djbwhere房间号='"&Combo3.text&"'and标志='1'"Adodc2.RefreshIfAdodc1.Recordset.RecordCount>0Then'如果存在空房IfAdodc2.Recordset.RecordCount=0Then'如果选择的房间没被登记ZSDJ(4).text=Adodc1.Recordset.Fields("房间类型")'为“客房标准”文本框赋值ZSDJ(5).text=Adodc1.Recordset.Fields("价格")'为“客房价格”文本框赋值EndIfEndIfEndSubPrivateSubForm_Load()Fdate=Format(Date,"YYYY-MM-DD")Ftime=Format(Time,"HH:MM:SS")'自动识别数据库路径Adodc1.ConnectionString="Provider=Microsoft.Jet.OLEDB.4.0;DataSource="&App.Path&"\DB_KFGL.mdb;PersistSecurityInfo=False"Adodc1.RecordSource="select*fromtb_kf"Adodc1.RefreshAdodc2.ConnectionString="Provider=Microsoft.Jet.OLEDB.4.0;DataSource="&App.Path&"\DB_KFGL.mdb;PersistSecurityInfo=False"Adodc2.RecordSource="select*fromtb_djb"Adodc2.RefreshAdodc3.ConnectionString="Provider=Microsoft.Jet.OLEDB.4.0;DataSource="&App.Path&"\DB_KFGL.mdb;PersistSecurityInfo=False"Adodc3.RecordSource="select*fromtb_kfwhere房态='空房'"Adodc3.RefreshIfAdodc3.Recordset.RecordCount>0ThenCombo3.AddItemAdodc3.Recordset.Fields("房间号").ValueNextiEndIfCombo3.Enabled=FalseComok.Enabled=FalseEndSubPrivateSubForm_Activate()'初始化日期与时间DTP1.Value=Fdate:tim1.Value=Ftimetim2.Value=#12:00:00PM#:DTP2.Value=Fdate:DTP3.Value=Fdate'DateTimePicker控件使您可以提供格式化的日期字段,使得进行日期选择很容易。另外,用户还可以从类似于MonthView控件的下拉式日历界面中选择日期。czy.text=Main.StatusBar1.Panels(4).text'赋值给czyComdj.SetFocus'Comdj获得焦点EndSubPrivateSubForm_Unload(CancelAsInteger)Main.Enabled=True'设置主窗体有效EndSubPrivateSubCombo2_Click()IfCombo2.text="折扣"ThenZSDJ(8).Enabled=True'设置ZSDJ(8)有效ZSDJ(8).SetFocus'ZSDJ(8)获得焦点EndIfIfCombo2.text="招待"ThenZSDJ(8).Enabled=False'设置ZSDJ(8)无效ZSDJ(8).text=0'赋值给ZSDJ(8)EndIfEndSubPrivateSubZSDJ_Change(IndexAsInteger)SelectCaseIndexCase6ZSDJ(7).text=Format(Val(ZSDJ(6).text)*Val(ZSDJ(5).text),"0.00")'计算折前宿费'Format函数返回Variant(String),其中含有一个表达式,它是根据格式表达式中的指令来格式化的。ZSDJ(9).text=ZSDJ(7).text'赋值给ZSDJ(9)ZSDJ(8).text=100DTP3.Value=DTP1.
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年中国耐磨涂层项目商业计划书
- 中国一氯甲烷项目投资计划书
- 朔州市人民医院药物抗体检测考核
- 重庆市中医院导乐陪伴分娩技能考核
- 张家口市人民医院甲状腺功能异常的筛查与长期管理考核
- 唐山市中医院颈椎术后血肿急诊处理考核
- 2025第三人民医院神经系统急症考核
- 中国固化促进剂项目创业计划书
- 张家口市人民医院呼吸科住院医师规范化培训出科考核模拟题库
- 赤峰市人民医院肌电图临床科研考核
- 学校对外交流与合作的机会拓展
- 陕煤化工笔试题及答案
- 全国青少年编程等级考试(Scratch一级)考试真题库(2022-2024年)
- 2025年春季形势与政策-从教育大国迈向教育强国
- 乡村旅游发展规划模板
- 如何有效实施“阅读综合实践”
- 有限空间告知牌的模板
- 第四章-运动系统
- 《边防检查法律法规》课件
- 住宅小区分布式光伏安装方案
- 2023中华护理学会团体标准-注射相关感染预防与控制
评论
0/150
提交评论