大酒店标准管理系统的设计和实现_第1页
大酒店标准管理系统的设计和实现_第2页
大酒店标准管理系统的设计和实现_第3页
大酒店标准管理系统的设计和实现_第4页
大酒店标准管理系统的设计和实现_第5页
已阅读5页,还剩101页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

摘要:伴随计算机和信息技术飞速发展,酒店客房管理由传统工作模式逐步被信息化、网络化现代工作模式所替换。以住宿为主酒店假如再延用传统管理模式,就会增加酒店管理成本和降低工作效率。在酒店客房管理中融入优异计算机和软件技术,利用酒店客房管理系统进行管理就显得十分有意义。利用酒店客房管理系统进行管理能让管理者立即了解酒店整体情况,便于多种决议,同时也简化了管理多种复杂操作,提升了酒店管理效率。本文以茂名星期八商务酒店为例采取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编译环境,采取可视化编程,以MicrosoftOfficeAccess作为后台数据库,选择ADO访问数据库来实现多种功效。1.计算机及操作系统:WindowsXP或Windows7;2.开发工具:VisualBasic3.运行环境:装有完整MicrosoftOfficeAccess系统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.FileName<>""Then'假如文件不为空Image2.Picture=LoadPicture(CommonDialog1.FileName)'加载图片Str=CommonDialog1.FileName'将图片名赋给变量Open(App.Path&"\picture.txt")ForOutputAs#1'打开一个txt文件Print#1,Str'打印图片名Close#1'关闭文件CommonDialog1.FileName=""'把空值赋给文件名ElseCommonDialog1.FileName=""'把空值赋给文件名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.MoveFirstFori=1ToAdodc1.Recordset.RecordCountAdodc1.Recordset.Fields("房态")="空房"Adodc1.Recordset.UpdateIfAdodc1.Recordset.EOF=FalseThenAdodc1.Recordset.MoveNextNextiEndIfEndIfNextCounterEndIfMsgBox"初始化完成!",,"系统提醒"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'定义一个字符串变量ListView1.ListItems.Clear'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+"'"main_zscx.Adodc1.RefreshLoadmain_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)EndIfNextjAdodc2.Recordset.MoveNextNextiEndIfrs1.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>0ThenIfAdodc1.Recordset.EOF=FalseThenAdodc1.Recordset.MoveLastIfVal(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>0ThenFori=1ToAdodc3.Recordset.RecordCountCombo3.AddItemAdodc3.Recordset.Fields("房间号").ValueAdodc3.Recordset.MoveNextNextiEndIfCombo3.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.Value+Val(ZSDJ(6).text)'计算退宿日期'Val函数返回包含于字符串内数字,字符串中是一个合适类型数值。Case8ZSDJ(9).text=Format(Val(ZSDJ(7).text)*Val(ZSDJ(8).text)/100,"0.00")'计算实际宿费Case10IfZSDJ(10).text<>""ThenZSDJ(10).text=Val(ZSDJ(10).text)'用val函数将字符串转换为数字DTP2.Value=DTP1.Value+Int(Val(ZSDJ(10).text)/Val(ZSDJ(5).text))'计算提醒日期'Int函数返回参数整数部分。If(Val(ZSDJ(10).text)-Int(Val(ZSDJ(10).text)/Val(ZSDJ(5).text)))>0.5*Val(ZSDJ(5).text)Thentim2.Value=#6:00:00PM#'计算提醒时间Else

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论