为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

酒店管理系统1酒店管理系统论文

2018-09-07 37页 doc 651KB 20阅读

用户头像

is_666004

暂无简介

举报
酒店管理系统1酒店管理系统论文白云酒店管理系统 毕业设计论文 -------摘要-------- 酒店管理管理系统是典型的信息管理系统(MIS),其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。对于前者要求建立起数据一致性和完整性强、数据安全性好的库。而对于后者则要求应用程序功能完备,易使用等特点。 经过分析,我们使用 MICROSOFT公司的 VISUAL Foxpro 开发工具,利用其提供的各种面向对象的开发工具,尤其是数据窗口这一能方便而简洁操纵数据库的智能化对象,首先在短时间内...
酒店管理系统1酒店管理系统论文
白云酒店管理系统 毕业论文 -------摘要-------- 酒店管理管理系统是典型的信息管理系统(MIS),其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。对于前者要求建立起数据一致性和完整性强、数据安全性好的库。而对于后者则要求应用程序功能完备,易使用等特点。 经过,我们使用 MICROSOFT公司的 VISUAL Foxpro 开发工具,利用其提供的各种面向对象的开发工具,尤其是数据窗口这一能方便而简洁操纵数据库的智能化对象,首先在短时间内建立系统应用原型,然后对初始原型系统进行需求迭代,不断修正和改进,直到形成用户满意的可行系统。 关键词:VISUAL FOXPRO 6.0 酒店管理 数据库 -----------前言-------- 酒店管理系统是一个现代酒店管理不可缺少的部分,它的对于酒店的决策者和管理者来说都至关重要,所以酒店管理系统应该能够为用户提供充足的信息和快捷的查询手段。但一直以来人们使用传统人工的方式管理客户档案,这种管理方式存在着许多缺点,如:效率低、保密性差,另外时间一长将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。 随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。 作为计算机应用的一部分,使用计算机对入住酒店的客户信息进行管理,具有手工管理所无法比拟的优点。例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高酒店的管理水平,简化各种复杂操作,在最合理、最短时间内完成酒店业务规范操作,这样才能另顾客满意,增加宾客回头率,也是酒店的科学化、正规化管理,与世界接轨的重要条件。 因此,开发这样一套管理软件成为很有必要的事情,在下面的各章中我将以自己开发的一套酒店管理系统为例,谈谈其开发过程和所涉及到的问题及解决方法。 目录 第一章 绪论··············································5 第二章 数据库理论基础··············································6 2.1  数据库系统设计·················································6 2.2 VISUAL FOXPRO 6.0 工具介绍································7 2.3 VISUAL FOXPRO 6.0的SELECT-SQL查询···················8 第3章 酒店管理系统设计分析·····························11 3.1  应用需求分析··················································11 3.2 功能分析·······················································11 3.3功能模块分析····················································12 第四章 系统数据库设计·····································15 4.1 表结构设计·····················································15 第五章 主要表单及其事件代码的实施·························17 5.1系统登陆表单····················································17 5.2基本信息管理表单················································17 5.3基本信息查询表单················································20 5.4基本信息一览表单················································22 5.5离店结帐管理表单················································23 5.6用户管理表单····················································25 5.7报表设计························································30 5.8主菜单的建立编写················································30 5.9 主程序代码的建立编写···········································31 5.10系统连编·······················································32 第六章 结论···············································34 第七章 总结和体会·········································35 第八章 谢词···············································36 第九章 参考文献··················································37 第一章、 绪论 数据库应用系统开发简介 在数据库应用系统开发之前,对开发数据库的基本概念应当了解,对数据库的结构、开发数据库应用程序的步骤、开发体系及方法都应当有相当清晰的了解和认识。 数据库应用系统开发的目标是建立一个满足用户长期需求的产品。开发的主要过程为:理解用户的需求,然后,把它们转变为有效的数据库设计。把设计转变为实际的数据库,并且这些数据库带有功能完备、高效能的应用。 图书管理系统是典型的管理信息系统(MIS),其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。对于前者要求建立起数据一致性和完整性强、数据安全性好的库。而对于后者则要求应用程序功能完备,易使用等特点。数据库设计是建立数据库及其应用系统的技术,是信息系统开发和建设中的核心技术,是指对于一个给定的环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效地存储数据,满足各种用户的应用需求。 数据库设计既是一项涉及多学科的综合性技术,有时一项庞大的工程项目数据库建设是硬件、软件、和干件的结合;数据库设计应该和应用系统设计相结合,即整个设计过程中要把结构设计和行为设计紧密结合起来。 第二章、 数据库理论基础 2.1  数据库系统设计 计算机信息系统以数据库为核心,在数据库管理系统的支持下,进行信息的收集、整理、存储、检索、更新、加工、统计和传播等操作。 对于数据库应用开发人员来说,为使现实世界的信息流计算机话,并对计算机话的信息进行各种操作,就是如何利用数据库管理系统、系统软件和相关硬件系统,将用户的要求转化成有效的数据结构,并使数据库结构易于实现用户新的要求的过程。 确切的说,数据库设计是指对于一个给定的应用环境,提供一个确定最优数据模型与处理模式的逻辑设计,以及一个确定数据库存储结构与存取方法的物理设计,建立起既能反映现实世界信息和信息联系,满足用户数据要求和加工要求,有能被某个数据库管理系统所接受,同时能实现系统目标,并有效存取数据的数据库。 数据库设计主要是进行数据库的逻辑设计,即将数据按一定的分类、分组系统和逻辑层次组织起来,是面向用户的。数据库设计时需要综合企业各个部门的存档数据和数据需求,分析各个数据之间的关系,按照DBMS提供的功能和描述工具,设计出规模适当、正确反映数据关系、数据冗余少、存取效率高、能满足多种查询要求的数据模型。 数据库设计的步骤是: (1) 数据库结构定义:目前的数据库管理系统(DBMS)有的是支持联机事务处理CLTP(负责对事务数据进行采集、处理、存储)的操作型DBMS,有的可支持数据仓库、有联机分析处理CLAP(指为支持决策的制定对数据的一种加工操作)功能的大型DBMS,有的数据库是关系型的、有的可支持面向对象数据库。针对选择的DBMS,进行数据库结构定义。 (2) 数据表定义:数据表定义指定义数据库中数据表的结构,数据表的逻辑结构包括:属性名称、类型、表示形式、缺省值、校验规则、是否关键字、可否为空等。关系型数据库要尽量按关系规范化要求进行数据库设计,但为使效率高,规范化程度应根据应用环境和条件来决定。数据表设计不仅要满足数据存储的要求,还要增加一些如反映有关信息、操作责任、中间数据的字段或临时数据表。 (3) 存储设备和存储空间组织:确定数据的存放地点、存储路径、存储设备等,备份,对多版本如何保证一致性和数据的完整性。 (4) 数据使用权限设置:针对用户的不同使用要求,确定数据的用户使用权限,确保数据安全。 (5) 数据字典设计:用数据字典描述数据库的设计,便于维护和修改。   2.2 VISUAL FOXPRO 6.0 工具介绍 VISUAL FOXPRO 6.0版本是微软公司开发的一个32位的数据库管理系统。这是自含型数据库管理系统,是解释型和编译混合的系统。它能够以解释的方式定义、操作数据库,也可将操作过程编写为程序进行编译,脱离系统直接运行,所以受到欢迎。 VISUAL FOXPRO 6.0支持标准的面向过程的程序设计方式,但更重要的是它提供真正的面向对象程序设计的能力。借助VISUAL FOXPRO 6.0的对象模型,用户可以利用所有的面向对象编程的特点,可以充分使用面向对象程序设计的所有功能,包括继承性、封装性、多态性和子类。这一方面可以减少用户的编程工作量,另一方面又加快程序开发过程。 VISUAL FOXPRO 6.0提供了用于应用程序开发的各种设计器、向导、工具栏、菜单和生成器。这些设计工具的可视化使尚不具备应用程序设计技术的广大用户,具有易于获得开发应用程序的能力。 VISUAL FOXPRO 6.0在创建项目的同时,生成了该项目的管理器;由它全面管理项目中的数据库、应用程序及文档等,使数据库的应用和开发更加方便。此外,其数据库的管理功能也更加强大,提供了过去只有在大型计算机的数据库管理系统中才具有的功能,如设置表字段的默认值、字段和记录的有效性规则,以用表间记录的参照完整性规则等。因此,也极大地提高了数据的安全性。可以对项目及数据有更强的控制,能够使用源代码管理产品,同时可以在“项目管理器”中看到组件的状态。数据库容器允许几个用户在同一个数据库中同时创建或修改规则等。因此,也极大地提高了数据库的安全性。可以借助“项目管理器”创建和集中管理应用程序中的任何元素,可以访问所有向导、生成器、工具栏和其他易于使用工具。它提供了一个进行集中管理的环境。 VISUAL FOXPRO 6.0添加了新的“应用程序向导”,其提供的新的对象和改进了的应用程序框架功能可以使用程序更有效率。VISUAL FOXPRO 6.0中还添加了一些功能来增强开发环境,以便更容易地向应用程序中添加有效的功能。 VISUAL FOXPRO 6.0提供了更多的生成器、工具栏和设计器等,利用它们可以快速开发应用程序。在VISUAL FOXPRO 6.0中,用户可以更简便地调试及监控应用程序组件;可以跟踪事件以及记录执行代码的工具;利用它可以深入程序,查看属性设置值,对象以及数组元素的值;为显示交互的或代码中的信息提供了方便的途径,同时可以把结果输出到应用程序窗口之外的另一个窗口;可以用来分析程序、应用程序或实际运行的项目代码。应用程序组件的实例中收集了一系列应用程序组件,它们显示了如何利用VISUAL FOXPRO 6.0的特性解决现实世界的问题。 VISUAL FOXPRO 6.0添加了新的“应用程序向导”,其提供的新对象和改进了的应用程序框架功能可以使用程序更有效率。VISUAL FOXPRO 6.0提供了更好的生成器、工具栏和设计器等,利用它可以快速开发应用程序。在VISUAL FOXPRO 6.0中,用户可以更简便地调试及监控应用程序组件;可以跟踪事件以及记录执行的工具;利用它可以深入程序,查看属性设置值,对象以及数组元素的值;为显示交互的或代码中的信息提们供了方便的途径,同时可以把结果输出到应用程序窗口之外的另一个窗口;可以用来分析程序、应用程序或实际运行的项目代码。 2.3 VISUAL FOXPRO 6.0的SELECT-SQL查询 SELECT-SQL是从SQL语言移植过来的查询令,具有最强大的单表与多表查询功能。VFP 支持在命令窗口直接使用SELECT-SQL命令,也允许通过一种称为“查询设计器”的窗口来设计查询步骤、生成查询文件,然后运行定制的查询。下面将对此作简单介绍。 1、 SQL功能强大,是一种完备的数据处理语言,不仅用于数据库查询,而且用于数据库中的数据修改和更新,概括起来,它可以分成以下几组: DML(Data Manipulation Language,数据操作语言):用于检索或者修改数据; DDL(Data Definition Language,数据定义语言): 用于定义数据的结构,比如 创建、修改或者删除数据库对象;  DCL(Data Control Language,数据控制语言):用于定义数据库用户的权限。 DML组可以细分为以下的几个语句: SELECT:用于检索数据 INSERT:用于增加数据到数据库; UPDATE:用于从数据库中修改现存的数据; DELETE:用于从数据库中删除数据。 DDL语句可以用于创建用户和重建数据库对象。下面是DDL命令: CREATE TABLE,ALTER TABLE,DROP TABLE,CREATE INDEX,DROP INDEX 下面是一个简单SQL语句的例子: 我们使用SQL语句来从客房信息中检索‘客房编号’为‘0308’的客房编号: SELECT 客房编号  FROM  客房信息   WHERE 客房编号 = ‘0308’ 2、 DDL与DML 数据定义语言DDL:它是用来创建和修改数据库结构的一种语句,包括 Create、Alter和Drop 语句。  数据操作语言DML:包括数据查询与数据更新。数据查询主要是由Select语句完成,这一点不再赘述。而数据更新所造成的风险大大超过数据查询。数据库管理系统必须在更改期内保护所存储的数据的一致性,确保有效的数据进入数据库,数据库必须保持一致性,DBMS还必须协调多用户的并行更新,以确保用户和它们的更改不至于影响其它用户的作业。 用于修改数据库内容的 SQL 语句主要有以下三个: (1)  Insert,向一个表中加入新的数据行  (2)  Delete,从一个表中删除数据行  (3)  Update,更改数据库中已经存在的数据  Insert标准语法: INSERT INTO  table_name (col1, col2...)  VALUES(value1, value2...) 下例要将客房编号‘0308’作为一个客房情况加入入住管理表中  Insert Into 入住管理 (入住单号,客房类型,入住人数,客房编号,抵店时间)    values (‘rz0000001’,‘1’,‘2’,‘0308’,‘05/08/2005 11:00:00AM’) Insert 语句还可以将多行数据添加到目标表中去,在这种形式的 Insert 语句中,新行的数据值不是在语句正文中明确地指定的,而是语句中指定的一个数据库查询。添加的值来自数据库自身的行,在某些特定的状态下,这是非常有用的。多行 Insert 语句为拷贝数据提供了一种紧凑而高效的方法,但我在自已做的图书管理系统中没有使用这种方法,我在系统中是使用循环依照上面的用法来完成多个记录的插入。 第3章 酒店管理系统设计分析 3.1  应用需求分析 需求描述与分析设计一个性能良好的数据库系统,明确应用环境对系统的要求是首要的和最基本的。特别是数据应用非常广泛,非常复杂,要是事先没有对信息进行充分和细致的分析,这种设计就很难取得成功。通过需求分析阶段对酒店客房的整个应用情况作全面的、详细的调查,确定酒店管理的目标,收集支持系统总的设计目标的基础数据和对这些数据的要求,确定用户的需求,并把这些写成用户和数据库设计者都能够接受的文档。事实上,需求分析是数据库开发中最难的任务之一。因为,第一,系统本身是可变的,用户的需求必须不断调整,使之与这种变化相适应。第二,用户很难说清某部分工作的功能处理过程。所以,设计人员必须认识到:在整个需求分析以及系统设计过程中,用户参与的重要性,通过各种方法展开调查分析。 1.开发目的: 这个管理系统主要为中、小型酒店设计,根据酒店的管理需求,经过分析后要实现的功能有: (1) 能够查看详细的客房类型、客房信息资料。 (2) 能够按一定条件查询相关资料的信息。 (3) 能够增加、修改和删除入住的相关资料。 (4) 能够打印相关资料信息。 (5) 有安全性较强的系统入口。 2. 数据需求: 经过数据需求分析,确定这个系统需要客房类型、客房信息、入住管理、收银退房和用户名5个表 3.2 功能分析 1. 浏览:能浏览客房类型和客房信息的资料。 2. 查询:能对空房、指定客房按照一定的条件进行查询或者模糊查询。 3. 数据维护:对入住客房、客户的相关数据进行修改、添加、删除等数据维护。 4. 撤销/保存:能撤消错误的操作,能保存用户更改的信息。 5. 资料打印:对收银退房的相关数据信息按照指定的条件进行打印。 6. 账户密码的管理:可以修改账户密码。 3.3功能模块分析 1. 基本信息管理模块 这个模块有一个表单,实现入住客房信息的增加、修改和删除功能。 2. 基本信息查询模块 这个模块通过输入客房编号或客房状态对客房是否有人入住进行查询,并且可以是模糊查询,也可以是精确查询。 3. 基本信息一览模块 这个模块包括两个表单,分别实现对客房类型和客房信息的总体浏览。 4. 离店结帐管理模块 通过一个表单实现对离店客户房间信息查询,在这个表单里,我们可以选择要打印的数据,实现按条件打印的目标。 5. 用户管理模块 用户管理模块包括了密码修改和系统退出等功能。这些功能是通过独立的表单实现的。 功能模块如下: 通过上述完整的需求分析,整个应用系统的大致结构模型已分析完成。E-R图如下 第四章 系统数据库设计 4.1 表结构设计 1.客房类型表(客房类型.dbf) 客房类型的基本情况,其字段属性如下 字段名称 数据类型 字段大小 说明 类型编号 字符型 4 类型名称 字符型 40 价格 货币型 8 2.客房信息表(客房信息.dbf) 客房信息的基本情况,其字段属性如下 字段名称 数据类型 字段大小 说明 客房编号 字符型 4 主索引 类型编号 字符型 4 楼层编号 字符型 4 额定人数 字符型 4 床数 字符型 4 状态 字符型 20 普通索引 3.入住管理表(入住管理.dbf) 入住管理的基本情况,其字段属性如下 字段名称 数据类型 字段大小 说明 入住单号 字符型 36 客房类型 字符型 4 入住人数 整型 4 客房编号 字符型 12 抵店时间 日期时间型 8 4.收银退房表(收银退房.dbf) 收银退房的基本情况,其字段属性如下 字段名称 数据类型 字段大小 说明 入住单号 字符型 36 客房类型 字符型 4 客房编号 字符型 12 主索引 抵店时间 日期时间型 8 离店时间 日期时间型 8 客房价格 货币型 8 结帐金额 货币型 8 结帐日期 日期时间型 8 第五章 主要表单及其事件代码的实施 5.1系统登陆表单 登录表单执行,当用户输入正确的登录信息时,单击“确定”按钮的时候或者单击“取消”按钮时,登录表单和主界面表单都会被释放,同时执行主菜单。 1.建立下图所示登录表单(登陆.scx)。 5.2基本信息管理表单 这个表单由入住管理表单和入住后台管理表单组成,用来添加、修改和删除客房信息。点入住后台管理表单中的‘添加客房信息’‘修改客房信息’‘删除客房信息’都可以转到入住管理表单上对客房信息进行添加、修改和删除。 1. 建立入住管理表单(入住管理.scx),表单显示结果如下 表单代码主要有 (1)“添加”按钮的Click事件代码 APPEND BLANK SELECT 入住管理 GO BOTTOM REPLACE 入住单号 WITH THISFORM.TEXT1.VALUE REPLACE 抵店时间 WITH THISFORM.TEXT2.VALUE REPLACE 客房编号 WITH THISFORM.TEXT3.VALUE REPLACE 入住人数 WITH THISFORM.TEXT4.VALUE REPLACE 客房类型 WITH THISFORM.TEXT5.VALUE (2)“修改”按钮的Click事件代码 THISFORM.TEXT1.ENABLED=.T. THISFORM.TEXT2.ENABLED=.T. THISFORM.TEXT3.ENABLED=.T. THISFORM.TEXT4.ENABLED=.T. THISFORM.TEXT5.ENABLED=.T. (3)“删除”按钮的Click事件代码 DELETE PACK (4)“确定”按钮的Click事件代码 REPLACE 入住单号 WITH THISFORM.TEXT1.VALUE REPLACE 抵店时间 WITH THISFORM.TEXT2.VALUE REPLACE 客房编号 WITH THISFORM.TEXT3.VALUE REPLACE 入住人数 WITH THISFORM.TEXT4.VALUE REPLACE 客房类型 WITH THISFORM.TEXT5.VALU 2. 建立入住后台管理表单(入住后台管理.scx),表单显示结果如下 表单代码主要有 (1)“确定”按钮的Click事件代码 THISFORM.TEXT1.ENABLED=.F. THISFORM.COMMAND1.ENABLED=.F. XH=ALLTRIM(THISFORM.TEXT1.VALUE) DO FORM 入住管理 (2)“添加客房信息”按钮的Click事件代码 THISFORM.TEXT1.VALUE="" COM_BT="APPEND_FORM" DO FORM 入住管理 (3)“修改客房信息”按钮的Click事件代码 THISFORM.TEXT1.ENABLED=.T. THISFORM.COMMAND1.ENABLED=.T. MESSAGEBOX("请输入客房编号!") COM_BT="DELETE_FORM" (4)“删除客房信息”按钮的Click事件代码 THISFORM.TEXT1.ENABLED=.T. THISFORM.COMMAND1.ENABLED=.T. MESSAGEBOX("请输入客房编号!") COM_BT="MODIFY_FORM" 5.3基本信息查询表单 空房的查询可以更加快捷的帮助客户查找到想要的房间 1. 建立空房查询表单(空房查询.scx),表单显示结果如下 表单主要代码有 (1)“查询”按钮的Click的事件代码 IF EMPTY(ALLTRIM(THISFORM.TEXT1.VALUE)) MESSAGEBOX("请输入查询条件!") THISFORM.TEXT1.SETFOCUS ELSE USE 客房信息.DBF SET FILTER TO IF VAL(alltrim(THISFORM.TEXT1.VALUE))>0 SET FILTER TO ALLTRIM(客房编号)=ALLTRIM(THISFORM.TEXT1.VALUE) thisform.command4.visible=.f. ELSE SET FILTER TO AT(alltrim(THISFORM.TEXT1.VALUE),状态)>0 thisform.command4.visible=.t. endif GO TOP GO TOP IF VAL(客房编号)>0 THISFORM.TEXT2.VALUE=客房编号 THISFORM.TEXT3.VALUE=额定人数 THISFORM.TEXT4.VALUE=楼层编号 THISFORM.TEXT5.VALUE=床数 THISFORM.TEXT6.VALUE=类型编号 THISFORM.TEXT7.VALUE=状态 ELSE MESSAGEBOX("对不起,没有您查询的房间!") ENDIF ENDIF (2)“下一个”按钮的Click事件代码 skip thisform.activate &&执行表单的Activate事件 THISFORM.TEXT2.VALUE=客房编号 THISFORM.TEXT3.VALUE=额定人数 THISFORM.TEXT4.VALUE=楼层编号 THISFORM.TEXT5.VALUE=床数 THISFORM.TEXT6.VALUE=类型编号 THISFORM.TEXT7.VALUE=状态 5.4基本信息一览表单 这一项主要由客房类型一览和客房信息一览。客房类型一览主要是用来看酒店客房的种类、价格。而客房信息一览主要用来看每个房间的类型、人数、床数和现在的状态。 1.建立客房类型一览表单(客房类型一览.scx),表单显示结果如下 3. 建立客房信息一览表单(客房信息一览.scx),表单显示结果如下 5.5离店结帐管理表单 这个表单主要用于在客户要离店结帐时使用,通过对离店客人客房编号的查询,可以查找到客户住店的时间、房间类型、房间价格,从而可以进行结帐金额的计算,还可以根据客户要求对表单进行打印。 1.建立离店结帐管理表单(离店结帐管理.scx),表单显示结果如下 表单主要代码有 (1)“查询”按钮的Click事件代码 IF EMPTY(ALLTRIM(THISFORM.TEXT1.VALUE)) MESSAGEBOX("请输入查询条件!") THISFORM.TEXT1.SETFOCUS ELSE USE 收银退房.DBF SET FILTER TO IF VAL(alltrim(THISFORM.TEXT1.VALUE))>0 SET FILTER TO ALLTRIM(客房编号)=ALLTRIM(THISFORM.TEXT1.VALUE) endif GO TOP GO TOP IF VAL(客房编号)>0 THISFORM.TEXT2.VALUE=客房编号 THISFORM.TEXT3.VALUE=客房类型 THISFORM.TEXT4.VALUE=客房价格 THISFORM.TEXT5.VALUE=抵店时间 THISFORM.TEXT6.VALUE=结帐日期 THISFORM.TEXT7.VALUE=结帐金额 ELSE MESSAGEBOX("对不起,没有您查询的房间!") ENDIF ENDIF (2)“打印”按钮的Click事件代码 messagebox('确定打印!',16,'提示信息') REPORT FORM 收银退房.frx NOEJECT NOCONSOLE TO PRINTER thisform.refresh 5.6用户管理表单 这个表单主要用来对登陆用户名的添加、查找、修改和删除用的,可以随时对用户名、密码进行修改、添加和删除。相应的添加、查找、修改、删除按钮都对应不同功能的“确定”或“查找”按钮功能。 1.建立用户管理表单(用户管理.scx),表单显示结果如下 表单主要代码有 (1)“添加”按钮的Click事件代码 THISFORM.TEXT1.VALUE="" THISFORM.TEXT2.VALUE="" *设置按钮状态 THISFORM.COMMAND1.ENABLED=.T. THISFORM.COMMAND1.VISIBLE=.T. *设置标签状态 THISFORM.LABEL2.ENABLED=.T. THISFORM.LABEL3.ENABLED=.T. *设置文本框状况 THISFORM.TEXT1.ENABLED=.T. THISFORM.TEXT2.ENABLED=.T. *设Text1为输入框 THISFORM.TEXT1.SETFOCUS 点击“添加”按钮同时会出现左上的“确定”按钮 Click事件代码 USE 用户名.DBF *插入新记录 APPEND BLANK *将用户的输入信息保存到用户信息库中 REPLACE 用户名 WITH ALLTRIM(THISFORM.TEXT1.VALUE) REPLACE 密码 WITH ALLTRIM(THISFORM.TEXT2.VALUE) USE *将表单设置成初始状态 THISFORM.TEXT1.VALUE="" THISFORM.TEXT2.VALUE="" THISFORM.TEXT1.ENABLED=.F. THISFORM.TEXT2.ENABLED=.F. THISFORM.COMMAND1.VISIBLE=.F. THISFORM.LABEL2.ENABLED=.F. THISFORM.LABEL3.ENABLED=.F. (2)“查找”按钮的Click事件代码 THISFORM.LABEL1.ENABLED=.T. THISFORM.LABEL2.ENABLED=.T. *将Text1控件设置成可用 THISFORM.TEXT1.ENABLED=.T. THISFORM.TEXT1.SETFOCUS *将查找按钮设置成可用和可见 THISFORM.COMMAND2.VISIBLE=.T. THISFORM.COMMAND2.ENABLED=.T. *将两个Text控件的值设置为空值 THISFORM.TEXT1.VALUE="" THISFORM.TEXT2.VALUE="" 点击“查找”按钮同时会出现左图的“查找”按钮 Click事件代码 USE 用户名.DBF *查找用户输入的信息 LOCATE FOR ALLTRIM(用户名)==ALLTRIM(THISFORM.TEXT1.VALUE) IF FOUND() *如果找到在表单中显示 THISFORM.TEXT1.VALUE=用户名 THISFORM.TEXT2.VALUE=密码 ELSE *如果没有找到提示用户 MESSAGEBOX("查无此用户!") THISFORM.TEXT1.VALUE="" THISFORM.TEXT2.VALUE="" ENDIF USE *恢复表单的初始化状态 THISFORM.TEXT1.ENABLED=.F. THISFORM.TEXT2.ENABLED=.F. THISFORM.LABEL2.ENABLED=.F. THISFORM.LABEL3.ENABLED=.F. THISFORM.COMMAND2.VISIBLE=.F. (3)“修改”按钮的Click事件代码 USE 用户名.DBF *在用户信息库中查找用户输入的信息 TEMP1=ALLTRIM(THISFORM.TEXT1.VALUE) TEMP2=ALLTRIM(THISFORM.TEXT2.VALUE) LOCATE FOR ALLTRIM(用户名)==TEMP1.AND.ALLTRIM(密码)==TEMP2 *如果找到,保存修改的信息 IF FOUND() REPLACE 用户名 WITH ALLTRIM(THISFORM.TEXT1.VALUE) REPLACE 密码 WITH ALLTRIM(THISFORM.TEXT2.VALUE) ENDIF USE *恢复表单的初始化设置 THISFORM.TEXT1.VALUE="" THISFORM.TEXT2.VALUE="" THISFORM.TEXT1.ENABLED=.F. THISFORM.TEXT2.ENABLED=.F. THISFORM.COMMAND3.VISIBLE=.F. 点击“修改”按钮同时会出现左图左下的“确定”按钮 Click事件代码 USE 用户名.DBF *在用户信息库中查找用户输入的信息 TEMP1=ALLTRIM(THISFORM.TEXT1.VALUE) TEMP2=ALLTRIM(THISFORM.TEXT2.VALUE) LOCATE FOR ALLTRIM(用户名)==TEMP1.AND.ALLTRIM(密码)==TEMP2 *如果找到,保存修改的信息 IF FOUND() REPLACE 用户名 WITH ALLTRIM(THISFORM.TEXT1.VALUE) REPLACE 密码 WITH ALLTRIM(THISFORM.TEXT2.VALUE) ENDIF USE *恢复表单的初始化设置 THISFORM.TEXT1.VALUE="" THISFORM.TEXT2.VALUE="" THISFORM.TEXT1.ENABLED=.F. THISFORM.TEXT2.ENABLED=.F. THISFORM.COMMAND3.VISIBLE=.F. (4)“删除”按钮的Click事件代码 THISFORM.COMMAND4.VISIBLE=.T. 点击“删除”按钮同时会出现左图右下的“确定”按钮 Click事件代码 USE 用户名.DBF LOCATE FOR ALLTRIM(用户名)==ALLTRIM(THISFORM.TEXT1.VALUE) *如果找到制定的用户,将其删除 IF FOUND() DELETE PACK ENDIF USE *恢复表单的初始化状态 THISFORM.TEXT1.VALUE="" THISFORM.TEXT2.VALUE="" THISFORM.COMMAND4.VISIBLE=.F. (5)在表单背景上控制“确定”和“查找”按钮的Click事件代码 THISFORM.TEXT1.ENABLED=.F. THISFORM.TEXT2.ENABLED=.F. THISFORM.LABEL2.ENABLED=.F. THISFORM.LABEL3.ENABLED=.F. THISFORM.COMMAND1.ENABLED=.F. THISFORM.COMMAND2.ENABLED=.F. THISFORM.COMMAND3.ENABLED=.F. THISFORM.COMMAND1.VISIBLE=.F. THISFORM.COMMAND2.VISIBLE=.F. THISFORM.COMMAND3.VISIBLE=.F. THISFORM.COMMAND4.VISIBLE=.F. 5.7报表设计 根据需要报表表单设计一个收银退房的报表,用来打印客户结帐资料,并可以提供给客户 1. 收银退房报表如下图 打印效果如下图 5.8 主菜单的建立编写 这个菜单是一个在全屏幕下显示的表单,是系统的主界面数据来源。主菜单做为整个系统的综合管理。 点击新建菜单,命名为“主菜单”在其目录下插入 菜单名称 结果 选项 菜单名称 结果 选项 基本信息管理 子菜单 编辑 入住管理 命令 do form [入住后台管理] 基本信息查询 子菜单 编辑 空房查询 命令 do form [空房查询] 基本信息一览 子菜单 编辑 客房信息一览 命令 do form [客房信息一览] 客房类型一览 命令 do form [客房类型一览] 离店结帐管理 子菜单 编辑 离店结帐管理 命令 do form [离店结帐管理] 用户管理 子菜单 编辑 用户管理 命令 do form [用户管理] 帮助 子菜单 编辑 关于 命令 do form [关于] 退出系统 命令 QUIT 5.9 主程序代码的建立编写 这个程序代码是一个支持主菜单的代码,用来生成系统主界面对其进行各方面调整,还可以用于美化系统主界面。 在代码栏新建程序,命名mail。代码如下 SET SCORE OFF &&关闭分值栏 SET SAFETY OFF &&关闭安全提示 SET STATUS BAR OFF &&关闭系统提示栏 SET CENTURY ON &&打开世纪开关 SET DELETED ON &&屏闭删除项 SET SYSMENU OFF &&关闭系统菜单 SET NOTIFY OFF &&关闭提示 &&设置系统窗口属性 _SCREEN.MaxButton = .F. &&取消最大化按钮 _SCREEN.MaxWidth = 700 &&设置最大宽度 _SCREEN.MaxHeight = 600 &&设置最大高度 _SCREEN.Caption = "白云酒店管理系统" &&设置窗口标题 _SCREEN.Picture = '01.jpg' &&设置窗口背景图片 _SCREEN.AutoCenter = .T. &&指定表单初次显示时,自动位于主窗口中央 &&公共变量 PUBLIC FindRecordNo PUBLIC UserName Do 主菜单.mpr &&打开菜单 &&打开登录表单 Do Form [登陆.scx] READ EVENTS Procedure OnQuit CLEAR EVENTS CLOSE ALL QUIT Endproc 5.10 系统连编 在项目管理器酒店管理系统中对系统进行连编。 连编完成后,整个白云酒店管理系统的设计实现以全部完成。开发工作至此结束。 系统主界面如下图 第6章 结论 通过前文所述,系统开发的全过程已经完成,系统已经产生。本酒店管理系统的优点是:采用全新的计算机信息管理系统为客人提供快捷、细致、周到的服务,以顾客为中心,了解顾客需求,细分目标市场,以合理的价格在相应的时间将客房销售出去。 与此同时,实现各模块功能的相关代码语言简练,功能完善,避免了过于复杂的代码给系统的调试与运行带来不便。也正基于上述原因,在功能模块的设计过程中,本系统应用了相关的向导与生成器来完成功能模块的初步设计,以此来减少一些简单而复杂的代码输入,从而提高了系统设计与实现的效率。但此系统也有一些瑕疵与不足之处,具体有以下几点: (1) 报表打印效果图不能在系统运行中查看,只能在开发过程中通过开发平台 来预览。 (2)本系统在VISUAL FOXPRO 6.0平台上开发,本系统仅能生成可执行的文件,系统在连编过程中还存在一些连编不成功的问题,因此系统还有待于以后的改进与完善。也正居于上述系统的不足之处,今后系统的改进方向将要解决上述的问题。 与此同时,系统的可扩充性较强,可将此系统进行必要的修改与添加,将其扩充成为一个其它的档案管理系统。 第七章 总结和体会 在系统的整个设计过程中,使我体会最深的是VISUAL FOXPRO 6.0是一个可视化的面向对象的程序设计语言,因为在表单的设计制作过程中,对于表单的每一个控件对象都是以可视化的方式对其进行过程代码的编辑与录入,而控件本身又通过自己独有的代码来使自己实现特定的功能操作。 与此同时,在程序设计的过程中,可运用大量VISUAL FOXPRO 6.0所提供的辅助设计工具来自动直接产生运用程序的界面与程序代码,这样一来使得只有少量关键的代码需要用户自己手工编写,这更加明显的体现出了VISUAL FOXPRO 6.0作为一个可视化程序设计的语言所表现出来的特点与优越性。 其次,通过本次设计巩固了我原有所学的知识。在开发过程中通过一次又一次反复的出现问题与解决问题,从自身来说,锻炼了自己独立思考与解决问题的能力,但同时也暴露了自己知识的有限与不足。在综合应用知识解决问题的同时,通过查阅资料,使我温故而知新,学到了一些新的知识,并且提高了自学能力,为将来的工作与学习奠定了基础。 总体而言,毕业设计既是对我们的一个挑战,又是对我们的一个锻炼,它考查了我们在校期间的学习情况。并且对我们的专业知识能力做出一个综合的评估。与此同时,在设计过程中通过解决问题使我们在意志上变得更加的坚强与自信,同时也使我们认识到了自己的不足之处。 通过七周的毕业设计,我们巩固了已学的知识,并对VISUAL FOXPRO 6.0有了一个更加深入的了解,同时也使我对一个系统的开发过程有了一个崭新的认识。 通过我和刘连伟共同努力和指导老师的帮助,我们完成了整个系统的设计开发,基本实现了预期的目的,同时,也通过这次设计开发过程增加了自身的实践经验,提高了自身的设计开发能力,为将来工作打下了良好的基础。 由于时间关系和自身的水平,我们的设计并不完善,其中也难免有错误之处,也请各位老师给予批评和指导。 第八章 谢辞 经过一个多月的构思与设计,在指导老师的精心指导和安排下,本系统已经设计完毕。其使用功能基本符合酒店在实际工作的需要,具有一定的实用性。但是由于时间比较仓促,加上本人软件设计经验的不足。因此,在分析问题、解决问题时显得不够严密、完善,还需要在以后的工作中不断地改进和完善。 在这次的毕业设计中,让我深深地体现到进行软件开发不是一件简单的事情,它需要设计者具有全面的专业知识、慎密的思维、严谨的工作态度以及较高的分析问题、解决问题的能力,而我在很多方面还有欠缺。 最后,我要衷心感谢导师雷金辉老师在我的设计过程中给予我的极大帮助,使我能够及时、顺利地完成此次的毕业设计。同时,也要感谢我的同学刘军、刘连伟、刘杰、白继在本系统的设计过程中给予我的支持和帮助。 第九章 参考文献 1.《visual foxpro 及其应用系统开发》 谭浩强编著; 清华大学出版社。 2.《visual foxpro 数据库开发 经典案例解析》 王晟 王松 刘强编著;清华大学出版社。 3.《visual foxpro 基础教程》 周永恒,梁洁,李志红,马竹芬编著;高等教育出版社。 4.《管理信息系实用教程》 王恩波主编 孙玉珊 缶桦编著;电子工业大学出版社。 5.《数据库管理系统》 王利主编; 中央电大出版社。 6.《中文Visual FoxPro 6.0数据库程序设计与实例》蔡卓毅 林盛雄 林羽扬 黄竺编著;冶金工业出版社。 7.《Visual FoxPro程序设计教程与上机指导》王建明主编;清华大学出版社。 基本信息管理 系统运行主程序 用户管理 离店结帐管理 客房信息一览 基本信息查询 用户登录界面 客房类型一览 基本信息登入 基本信息一览 客房登记 客房信息管理 客房信息返回 结帐信息管理 结帐信息输入 空房查询 客房类型 基本信息输入 客房类型实体 类型编号 类型名称 价格 客房信息实体 客房编号 类型编号 楼层编号 额定人数 床数 状态 离店结帐信息实体 客房编号 客房类型 客房价格 抵店时间 结帐时间 结帐金额
/
本文档为【酒店管理系统1酒店管理系统论文】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索