1、基于VB自助点餐管理系统摘 要:随着本国市场经济迅速发展和人们生活水平不断提高,宾馆餐饮业竞争越来越激烈。要想在竞争中获得优势,就必要在经营管理,产品服务等方面提高服务管理意识。面对餐饮经营中起决定作用餐饮管理,面对庞大信息量,就需要一种餐饮订餐管理系统来提高餐饮管理效率。因而,选取当前应用最广Windows操作系统作为开发、测试和运营平台,用Visual Basic 6.0作为软件开发工具,VB作为编程语言,ACCESS Server 作为数据库支持,开发一种以便上手且功能强大餐饮订餐管理系统软件,以提高餐饮管理水平。重要功能涉及登记、订餐、退餐、结算、查看客人信息、未结帐提示等。核心词:餐
2、饮订餐管理系统,VB,数据库设计,程序设计The Design and Realization of the Hostel Management System Based on the VBAbstract:With the rapid development of the domestic economy and the improvement of peoples life standard,the competition between hotel industry is becoming keener and keener. It is necessary to improve sin
3、ce of service and management on management,product,etc in order to get the advantage in the competition. Facing the room administration which plats the decisive role on the room management as well as the large information,it needs a hotel management system to improve room management efficiency.There
4、fore,the best way to improve the level of management is to explore a convenient and powerful systematic software of hotel management. That is to choose the widely used Windows operation system as a platform of exploration,test and operation,the Visual Basic 6.0 as a tool of software development,VB a
5、s programmer-edited language,ACCESS Server as the supporter of database. Its main function includes:registration,room reservation ,settlement of refunding,room situation check,tourists information check,etc .key words:Hostel Management System,VB,database design,programmer design目录前 言1第一章 绪 论21.1 课题背
6、景21.2 课题研究目和意义21.3 课题重要内容2第二章 开发工具和开发环境32.1 ACCESS 简介32.3 VB简介42.4 ADO 数据访问简介52.4.1 ADO 不依赖于持续活动连接62.4.2 ADO 长处8第三章 系统需求分析及总体设计103.1 系统功能分析103.2 数据库构造设计113.2.1 系统数据流程图113.2.2 实体关系图123.2.3 数据库逻辑构造设计14第四章 系统详细设计与实现154.1 登陆界面154.2 主界面174.3 客户换桌管理界面184.4 订餐界面204.5 菜谱管理界面254.6 顾客信息管理界面264.7 更改密码界面27第五章 系
7、统测试285.1 系统测试目285.2 系统测试办法28结 论29参照文献30致 谢31前 言互联网不断发展是推动科技发展最直接动力之一,而在这种趋势之下,各种管理系统也必要得跟上时代步伐,新需求在不断产生,管理系统也得跟着需求发展。对于餐饮管理来说,运用先进管理手段,提高餐饮管理水平,已是形势所趋。过去,Visual Basic 重要用于创立有着丰富顾客界面(涉及按钮、列表以及下拉列表框)应用程序。Visual Basic 编程人员在程序设计中初次实现完全面向对象能力。由于VB面向对象卓越设计,使它成为广大编程人员最抱负选取之一。餐饮订餐管理系统是基于VB编程语言在MicrosoftVisu
8、al Basic平台下开发,运用了ACCESS Server 数据库。强大数据库支持,能完毕大量数据解决,使得系统更加稳定安全。第一章 绪 论1.1 课题背景随着经济迅速发展和人们生活水平不断提高,宾馆餐饮业竞争越来越激烈。要想在竞争中获得优势,就必要在经营管理,产品服务等方面提高服务管理意识。面对餐饮经营起决定作用是餐饮管理。如何运用先进管理手段,提高餐饮管理水平,是每一种餐饮管理者所面临重要课题。简朴服务原则已经不是制胜法宝,只有管理做到最细微之处,才干让顾客体会到餐饮服务高原则,高质量,而精确,快捷,周全往往就是最基本成功要素。面对信息时代挑战,运用科技手段提高公司管理无疑是一条行之有效
9、途径。因而采用电脑管理业务,财务等诸多环节已成为宾馆餐饮业迅速发展先决条件。世界经济已从工业化社会进入信息化社会,西方发达国家已经进入相称发达信息化阶段,而本国信息产业当前尚处在起步阶段。信息高速公路和经济信息化,无疑将对人类社会经济发展带来主线性变化,对社会各行各业生产、工作和管理方式带来深刻变化,对涉及餐饮在内许多机构无疑是一种严峻挑战。1.2 课题研究目和意义国内餐饮业应用系统不同,对于一家餐饮,如果各部门使用是不同平台、不同软件,员工操作时还需要重新学习各种软件,这样不但耗费了大量时间,也同步影响餐饮效率。这样就需要一种容易上手并且实用一种管理软件,可以让员工可以在极短时间内掌握,减少
10、成本,增长收益。因而,制作一种餐饮订餐管理系统来解决这些问题已是势在必行。针对餐饮详细业务,重要是餐饮管理,为顾客提供迅速高效服务,减免手工解决啰嗦以及误差,并及时精确反映餐饮工作状况,从而提高餐饮管理服务质量,使餐饮获得更好经济效益。1.3 课题重要内容本餐饮订餐管理系统数据库选取是ACCESS,开发环境是MicrosoftVisual Basic,编程语言VB。基本思想是把开发过程提成:项目筹划、需求分析、详细设计、代码实现、系统测试以及系统维护等进行完毕。餐饮订餐管理系统开发设计,涉及数据库构造设计及程序设计。该系统具备登记、订餐、退餐、结算、查看客人信息等基本功能,可以用于普通中小型餐
11、饮餐饮管理。规定具备对某一领域熟悉状况下去寻找有关资料并通过自学逐渐掌握该门知识能力。第二章 开发工具和开发环境2.1 ACCESS 简介Microsoft Access软件与其她数据库应用程序(例如FoxPro,Oracle和dBase等)同样,从本质上说,都是一种数据库管理系统(DBMS),更为详细点,它是一种关系数据库管理系统(RDBMS), Access重要用于中小型数据库应用系统。而Oracle和Sybase重要用于大型数据库应用系统。作为一种模仿系统,数据量并不大,因此就采用了小型数据库Access。它合用于小型商务活动,用以存贮和管理商务活动所需要数据。Access具备一种数据库
12、管理系统所应具备功能,容许顾客构造应用程序来归档和存储数据,并使数据可以很容易地采用各种方式进行筛选、分类和查询数据。Access自身是一种较好应用程序开发环境,它有和VB类似界面设计办法,同样易学易用。在面向数据库应用程序开发方面比起VB开发效率更高,功能更强。它提供了诸多对象(表,窗体,查询,报表)设计向导,使得有VB基本非常容易使用。Access拥有子窗体、子报表控件,它在设计主细表构造界面和报表方面给程序员带来巨大以便。Access软件所能完毕功能基本上是一种数据库管理系统所就具备功能:1 可以依照需要定制Access数据库系统,对数据进行保存、查阅和计算。2 运用表存储相应数据信息,
13、为每一种实际对象信息创立一种表,在表中对不同数据以不同方式进行保存。3 可以按照实际中对象之间关系,定义各个表之间关系,将各个表中有关数据有机地联系在一起。4 可以检索顾客指定条件数据,创立相应查询来进行检索,也可以运用查询来更新或删除多条记录,并对表中数据执行各种计算。5 可以直接输入、查看或更改数据库中数据,运用表格或创立一定窗体来完毕上述功能。6 可以对数据库中数据进行分析,或者通过特定方式将数据打印出来,绘制一份相应规定报表。7 可以将数据库中数据传播到其她数据库服务器上,实现资源共享,通过Web页功能来制作数据访问页。Access特点:在Access中,数据库是由若干个数据表格构成,
14、在表格中具备主核心字和外部核心字定义,并且在数据库中提供了完全引用完整性,从而避免了数据库中不合理数据更新和删除。同步,Access表格具备数据确认规则,以避免非精准数据在输入时被忽视,并且对于大多数软件数据输入。表格每一种字段都具备自己格式和缺省定义。Microsoft Access支持文本、数字、货币、日期、备注、是/否以及OLE对象等字段类型。当进行特殊解决而缺少数值时,Access还提供完全支持空值特性。由上面列出内容来看,Microsoft Access可以完全满足对一种当代数据库就用需要,不但可以对数据基本操作可以完毕,同步还可以完毕更高档操作功能。IIS(Internet Inf
15、ormation Sever):微软Internet 信息服务器是一种Web服务器,安装在NT服务器上,支持网页信息发布和ASP编写各种商业应用程序。2.3 VB简介Visual Basic 6.0,是微软公司推出可视化编程工具MSDN之一, 是当前世界上使用最广泛程序开发工具。它快捷开发速度, 简朴易学语法, 体贴便利开发环境,不愧为一款先进编程工具, 是初学者首选。此外VB提供是可视化开发环境,咱们可以象搭积木同样构建出程序界面,并且VB提供了丰富控件组,省去了咱们自己写代码实现这些效果麻烦,这样咱们就能把更多精力放在程序功能实现上,因此用起来以便。在VB中,应用面向对象程序设计办法(OO
16、P),把程序和数据封装起来视为一种对象,每个对象都是可视。VB功能特点如下:1具备面向对象可视化设计工具 在VB中,应用面向对象程序设计办法(OOP),把程序和数据封装起来视为一种对象,每个对象都是可视。程序员在设计时只需用既有工具依照界面设计规定,直接在屏幕上“画”出窗口、菜单、按钮、滚动条等不同类型对象,并为每个对象设立属性。程序员编程工作仅限于编写有关对象要完毕功能程序,因而程序设计效率可大大提高。 2事件驱动编程机制 事件驱动是非常适合图形顾客界面编程方式。在图形顾客界面应用程序中,是由顾客动作即事件掌握着程序运营流向,每个事件都能驱动一段程序运营。程序员只要编写响应顾客动作代码,而各
17、个动作之间不一定有联系。 3提供了易学易用应用程序集成开发环境 在VB集成开发环境中,顾客可设计界面、编写代码、调试程序,直至把应用程序编译成可执行文献在Windows中运营,使顾客在和谐开发环境中工作。 4构造化程序设计语言 VB具备丰富数据类型和构造化程序构造,作为一种程序设计语言,它尚有如下某些特点: (1)强大数值和字符串解决功能 (2)丰富图形指令,可以便地绘制各种图形 (3)提供静态和动态数组,有助于简化内存管理 (4)过程可递归调用,使程序更为简洁 (5)支持随机文献和顺序文献访问 (6)提供了一种可供应用程序调用包括各种类型图标库 (7)具备完善运营出错解决 5支持各种数据库系
18、统访问 运用数据控件可访问数据库系统有:Microsoft Access、Btrieve、DBASE、Microsfot FoxPro和Paradox等,也可以访问Microsoft Excel、Lotus1-2-3等各种电子表格。 6支持动态数据互换(DDE)、动态链接库(DLL)和对象链接与嵌入(OLE)技术 7完备HELP联机协助功能 VB程序设计概念就是面向对象概念,对象就是数据(DATA)和代码(CODE)互相结合综合体。Windows上面每一种图标,涉及窗口自身都是对象,如果没有任何事情发生,对象处在停顿状态。当存在外来事件时,程序段执行,它执行是由外来事件决定。因而是“事件”驱动
19、。与Windows环境下软件同样,在VB中,运用协助菜单和F1功能键,顾客可以随时以便地得到所需要协助信息。VB协助窗口中显示了关于示例代码,通过复制、粘贴操作可获取大量示例代码,为顾客学习和使用提供了极大以便。 2.4 ADO 数据访问简介使用 ADO 开发应用程序时,将有操作数据各种规定。在某些状况下,也许只是想在窗体上显示数据。在其她状况下,则也许需要设计一种方式来与另一种公司共享信息。无论对数据进行如何操作,理解 ADO 中数据构造、主数据组件概念和组件组合方式是很有用。2.4.1 ADO 不依赖于持续活动连接在老式客户端/服务器应用程序中,组件将建立与数据库连接,并在应用程序运营过程
20、中使连接保持打开状态。出于各种因素,该办法在许多应用程序中是不实用: 打开数据库连接占用宝贵系统资源。在大多数状况下,数据库只可以维持少量并发连接。维持这些连接系统开销将减少应用程序总体性能。 类似地,需要打开数据库连接应用程序很难按比例扩展。对于没有较好地按比例扩展应用程序而言,也许几种顾客使用它时执行效果是可以接受,但如果有数百个顾客使用它时其效果也许就不能被接受了。ASP.NET Web 应用程序特别需要可以很轻松地进行扩展,由于 Web 站点通信量也许会在非常短时间内突增几种数量级。 在 ASP.NET Web 应用程序中,组件彼此之间本来就是不连接。浏览器从服务器祈求一页;在服务器完
21、毕解决并发送该页后,服务器即不再与浏览器有任何连接,直到下一次祈求为止。在这些状况下,维持打开数据库连接是不可行,由于没有办法懂得数据使用者(客户端)与否需要进一步数据访问。 基于始终连接数据模型也许使得使用连接构造在应用程序和组织边界之间互换数据变得困难且不实际。如果两个组件需要共享相似数据,则两者均必要连接,或者必要为这两个组件设计一种方式以互相传递数据。 出于所有这些因素,使用 ADO 进行数据访问是以有节制使用连接构造为中心进行设计。应用程序连接到数据库时间仅足够获取或更新数据。由于数据库并未被大某些时间空闲连接占用,因此它可觉得更多顾客提供服务。使用数据命令执行数据库交互若要在数据库
22、中执行操作,应执行 ACCESS 语句或存储过程(它涉及 ACCESS 语句)。使用 ACCESS 语句或存储过程读写行并执行聚合函数,例如添加或求平均值。使用 ACCESS 语句或存储过程创立或修改表或列、执行事务等。在 ADO 中,使用数据命令打包 ACCESS 语句或存储过程。例如,想要从数据库读取一组行,则创立一种数据命令并用 ACCESS Select 语句文本或获取记录存储过程名称配备它。如果要获取这些行,则执行如下操作: 1.打开一种连接。 2.按如下顺序调用命令执行办法: a.执行该命令引用 ACCESS 语句或存储过程。 b.然后关闭连接。 连接保持打开时间仅足够执行语句或存
23、储过程。 在调用命令执行办法后,它将返回一种值。更新数据库命令返回所影响行数;其她类型命令返回一种错误代码。如果该命令使用 SELECT 语句查询数据库,则它返回一组行。安全阐明 当使用 CommandType 属性设立为 Text 数据命令时,请对从客户端发送过来信息进行仔细检查,然后再将它传递给数据库。恶意顾客也许会试图发送(插入)修改过或其她 ACCESS 语句,以获得未经授权访问或破坏数据库。在将顾客输入内容传播到数据库之前,应始终确认这些信息是有效;如果也许话,始终使用参数化查询或存储过程,这是最佳办法。如果要执行各种操作(例如,读取某些行,然后更新它们),则可以使用各种数据命令,每
24、个操作一种命令。每一操作分别执行。例如,要读取多行,应打开连接,读取这些行,然后关闭该连接。如果要更新数据,再次打开连接,执行更新,然后再次关闭该连接。数据命令可以涉及各种参数(详细而言,参数对象集合),使用这些参数创立类似如下形式参数化查询:Select * From customers Where (customer_id = customerid)然后在运营时设立这些参数并执行命令以返回或更新所需数据。数据可被缓存到数据集中。最常用数据任务是从数据库检索数据并对数据进行某些操作:显示数据、解决数据或将数据发送给另一种组件。经常地,应用程序需要解决不止一条记录,而是一组记录:例如客户列表或
25、今天订单。普通应用程序所需该组记录来自各种表:我客户及其所有订单;所有名为Smith作者及她们写书;以及其她类似有关记录组。获取了这些记录后,应用程序普通将它们成组使用。例如,应用程序可以容许顾客浏览名为Smith所有作者,检查一种 Smith 书,然后检查下一种 Smith 书,等等。在许多状况下,每次应用程序需要解决下一条记录时都返回到数据库是不切实际。(这样做也许会失去将打开连接需求降至最低所带来许多好处。)因而解决方案就是暂时存储从数据库检索记录,然后使用该暂时集。这便是数据集概念。数据集是从数据源检索记录缓存。它工作方式犹如虚拟数据存储区:数据集包括一种或各种表(这些表基于实际数据库
26、中表),并且它可以包具关于这些表之间关系和对表可包括数据约束信息。数据集内数据普通是数据库中内容非常精简版本。但是,可以用与操作实际数据十分类似方式操作数据集。这样操作时,将保持与数据库不连接状态,使数据库可以自由执行其她任务。如果经常需要更新数据库中数据(尽管不会像从数据库检索数据那么频繁)。可以在数据集上执行更新操作,并且这些更新可以直接写到基本数据库。数据集是数据被动容器这一点很重要。若要实际从数据库获取数据和(可选)将数据写回数据库,请使用数据适配器。数据适配器包括一种或各种数据命令,这些命令用于填充数据集中单个表并更新数据库中相应表。(数据适配器普通包括四条命令,分别用于选取、插入、
27、更新和删除数据库中行。)因而,每当调用数据适配器 Fill 办法时,它都也许执行 SELECT au_id,au_lname,au_fname FROM authors 之类 ACCESS 语句。由于数据集事实上是数据库数据私有副本,因此它不一定反映数据库当前状态。如果想要查看其她顾客进行最新更改,可以通过调用恰当 Fill 办法刷新数据集。使用数据集一种便利之处是组件可以依照需要互换数据集。例如,中层某个业务对象可以创立和填充一种数据集,然后将它发送给应用程序中其她位置处另一种组件以供解决。该功能意味着组件不必分别查询数据库。数据集独立于数据源尽管数据集是作为从数据库获取数据缓存,但数据集与
28、数据库之间没有任何实际关系。数据集是容器;它由从数据适配器执行 ACCESS 命令或存储过程填充。由于数据集不直接绑定到数据源,因此它是来自各种源数据好集成点。例如,数据集内某些数据也许来自数据库,而它其她某些也许来自另一种数据库或电子表格之类非数据库源。数据集内某些数据也许来自另一种组件所发送流。一旦数据在数据集内,则不论它原始源是什么,都可以使用一致对象模型对它进行操作。数据保持为 XML数据需要从数据存储区移动到数据集以及从数据集移动到各种组件。在 ADO 中,传播数据格式是 XML。类似地,如果需要保持数据(例如保持到文献中),则将其存储为 XML。如果有 XML 文献,则可以像使用任
29、何数据源同样使用它,并从它创立数据集。事实上,在 ADO 中,XML 是数据基本格式。ADO 数据 API 自动用数据集内信息创立 XML 文献或流,并将它们发送给另一种组件。第二个组件可以调用类似 API 将 XML 读回数据集。2.4.2 ADO 长处与 ADO 初期版本和其她数据访问组件相比,ADO 提供了若干好处。这些好处提成如下几种类别:互操作性ADO 应用程序可以运用 XML 灵活性和广泛接受性。由于 XML 是用于在网络中传播数据集格式,因而可以读取 XML 格式任何组件都可以解决数据。事实上,接受组件主线不必是 ADO 组件:传播组件可以只是将数据集传播给其目的,而不考虑接受组
30、件实现方式。目的组件可以是 Visual Studio 应用程序或无论用什么工具实现其她任何应用程序。唯一规定是接受组件可以读取 XML。作为一项工业原则,XML 正是在谨记这种互操作性状况下设计。可维护性在已布置系统生存期中,适度更改是也许,实质构造更改十分困难。由于在事件自然过程中,这种实质上更改会变得很有必要。例如,当已布置应用程序越来越受顾客欢迎时,增长性能负荷也许需要进行构造更改。随着已布置应用程序服务器上性能负荷增长,系统资源会变得局限性,并且响应时间或吞吐量会受到影响。面对该问题,软件设计者可以选取将服务器业务逻辑解决和顾客界面解决划分到单独计算机上单独层上。事实上,应用程序服务
31、器层将替代为两层,缓和了系统资源缺少。该问题并不是要设计三层应用程序。相反,它是要在应用程序布置后来增长层数。如果原始应用程序使用数据集以 ADO 实现,则该转换很容易进行。当用两层替代单个层时,将安排这两层互换信息。由于这些层可以通过 XML 格式数据集传播数据,因此通信相对较容易。可编程性Visual Studio 中 ADO 数据组件以不同方式封装数据访问功能,加快编程速度并减少出错几率。例如,数据命令提取生成和执行 ACCESS 语句或存储过程任务。同样,由这些工具生成 ADO 数据类导致类型化数据集。使可以通过已声明类型编程访问数据。性能对于不连接应用程序,ADO 数据库提供性能优于
32、 ADO 不连接记录集。当使用 COM 封送在层间传播不连接记录集时,会因将记录集内值转换为 COM 可辨认数据类型而导致明显解决开销。在 ADO 中,这种数据类型转换则没有必要。可伸缩性由于 Web 可以极大增长对数据需求,因此可缩放性变得很核心。Internet 应用程序具备无限潜在顾客供应。尽管应用程序可以较好地为十几种顾客服务,但它也许不能向成百上千个(或几百万个)顾客提供同样好服务。使用数据库锁和数据库连接之类资源应用程序不能较好地为大量顾客服务,由于顾客对这些有限资源需求最后将超过其供应。ADO 通过勉励程序员节约有限资源来实现可缩放性。由于所有 ADO 应用程序都使用对数据不连接
33、访问,因而它不会在较长持续时间内保存数据库锁或活动数据库连接。第三章 系统需求分析及总体设计3.1 系统功能分析系统开发总体任务是实现餐饮餐饮各种信息系统化、规范化和自动化。重要完毕功能: 本餐饮订餐管理系统,有登记、订餐、退餐、查看菜谱信息、查看客人信息、管理员密码修改等重要功能。系统建立了三个数据表,第一种表记录管理员顾客名和密码信息;第二个表记录取餐信息;第三个表记录客人信息。用餐信息有三种状态,即“营业中”、“预定”、和“空闲”,客人信息也有三种状态,即“登记”、“订餐”、“退餐”。这些状态可以对用餐状况和客人状况进行记录。 程序重要构造如图31所示:登录界面客户订餐顾客管理菜谱管理餐
34、桌管理修改密码系统协助顾客添加顾客管理菜谱添加菜谱管理餐桌添加餐桌查询换桌管理点菜管理图31程序重要构造图各子界面设计: 顾客管理界面:可以对顾客进行管理和添加。 菜谱管理界面:可输入菜谱编号、类别、菜名、价格。 餐桌管理界面:餐桌添加和查询功能;其中可按编号和名称进行迅速查询;添加餐桌时可输入编号、人数、状态。 订单记录信息界面:可查看用餐信息、菜单、价格以等,并且可以依照销售记录记录出总额。修改密码界面:用于修改管理员密码。3.2 数据库构造设计3.2.1 系统数据流程图用餐登记基本信息输入订餐登记顾客信息返回用餐信息选定择结算信息餐饮信息返回基本信息输入分析调查关于餐饮管理信息需求基本上
35、得本系统所解决数据流程:图32 餐饮订餐管理信息系统数据流程图3.2.2 实体关系图本系统设计规划出实体有:管理员信息实体、订餐记录信息实体、菜谱信息实体、客户信息实体。各个实体详细描述-图如下:管理员信息实体顾客名密 码图33 管理员信息实体-图点餐信息实体菜名价格桌号菜谱图34 订餐记录信息实体-图菜谱信息实体菜谱编号菜名价格类别图35 菜谱信息实体-图桌号信息实体编号信息大小状态图36桌号信息实体-图登记信息管理登记订餐信息管理订 餐订餐信息管理结算菜谱信息管理图37 实体之间关系-图3.2.3 数据库逻辑构造设计系统设计了三个数据表即“管理员” 、“用餐表” 、“顾客信息表” 。其各个
36、表格设计如下: 表31 管理员列名数据类型可否为空阐明顾客名VarcharNOT NULL主键密码VarcharNULL注册时间TimeNULL表32 订餐表列名数据类型可否为空阐明客户编号VarcharNOT NULL主键客户姓名VarcharNULL菜名VarcharNULL订餐时间DatetimeNULL与否结账CharNULL价格FloatNULL表33 顾客信息表列名数据类型可否为空阐明系统编号CharNOT NULL主键顾客名VarcharNOT NULL密码CharNULL真空姓名CharNULL性别CharNULL证件类型CharNULL证件号VarcharNULL电话Floa
37、tNULL地址FloatNULL第四章 系统详细设计与实现4.1 登陆界面图41通过工具箱控件, 控件制作界面如图41所示。此程序段中,“IF”语句作用是判断顾客输入顾客名与密码和数据库与否相似,如果顾客名或密码输入错误,则提示相应错误信息。4.2 主界面图43主界面也是各个子界面接口界面,通过主界面可以打开各个子界面。一方面添加一种新窗体,作为主界面。界面中用到“ImageList1”控件,设计成如图43所示。主界面设有各子界面操作入口,涉及顾客管理、菜谱信息管理、订餐信息管理、餐桌管理及订餐记录等。界面清爽大方,操作简约明了。4.3 客户换桌管理界面图44该模块重要是让客户可以更换自己喜欢
38、桌位,其界面非常简朴,一是显示原桌号,二是选取新桌号,界面看似简朴,实现起来比较麻烦,由于客户换桌后还要将其所点菜谱信息所有更换到新桌里,这样才干保证不出错。实现本模块功能重要代码如下:Private Sub Command3_Click()mycon.Open ACCESS = update canzhuo set zhuangtai=空闲 where bianhao= & nzh & mycon.Execute ACCESS ACCESS = update canzhuo set zhuangtai=已占 where bianhao= & Trim(zhuohao.Text) & myco
39、n.Execute ACCESS ACCESS = update dcjl set khbh= & Trim(zhuohao.Text) & where isjz=未结 and khbh= & nzh & mycon.Execute ACCESS nzh = Trim(zhuohao.Text) MsgBox 换桌成功,系统提示 mycon.CloseEnd SubPrivate Sub Form_Load()Set rs = New ADODB.RecordsetLabel2.Caption = nzhACCESS = select bianhao from canzhuo where zh
40、uangtai=空闲 order by id descmycon.Openrs.Open ACCESS,mycon,1,1If rs.EOF ThenElse Do While Not rs.EOF zhuohao.AddItem (rs(bianhao) rs.MoveNext LoopEnd Ifrs.Closemycon.CloseEnd Sub4.4 订餐界面图46此界面为客户选取菜谱界面,界面很简洁。界面上方是顾客名选取,下方分为两边,左侧显示所有菜谱,右侧显示已选菜单,中间用两个方向相反箭头,表达选取或放弃菜谱,操作简朴。实现本模块功能重要代码如下:Private Sub Comb
41、o1_Click()mycon.Open ACCESS = select * from allkehu where username= & Trim(Combo1.Text) & Dim rs As New ADODB.Recordset rs.Open ACCESS,mycon,1,1 If rs.EOF Then Else Text1.Text = rs(realname) End If rs.Close mycon.CloseEnd SubPrivate Sub Command1_Click()If List2.ListCount = 0 Then ssss = MsgBox(你还没有选
42、取任何菜单!,vbInformation + vbOKOnly,警告) Exit SubEnd IfACCESS = select * from dcjlDim rs As New ADODB.RecordsetDim rs2 As New ADODB.Recordsetmycon.Openrs.Open ACCESS,mycon,3,3For i = o To List2.ListCount - 1 rs.AddNew rs(khbh) = Trim(Combo1.Text) rs(khxm) = Trim(Text1.Text) rs(cname) = Trim(List2.List(i)
43、 ACCESS2 = select price from allcai where cname= & Trim(List2.List(i) & rs2.Open ACCESS2,mycon,1,1 rs(price) = rs2(price) rs2.Close rs.UpdateNext issss = MsgBox(点菜成功!,vbInformation + vbOKOnly,提示)mycon.CloseEnd SubPrivate Sub Command2_Click()Unload MeEnd SubPrivate Sub Command3_Click()Dim i As Intege
44、ri = 0Do While i List1.ListCount If List1.Selected(i) = True Then List2.AddItem List1.List(i) List1.RemoveItem i Else i = i + 1 End IfLoopIf List1.ListCount = 0 ThenCommand3.Enabled = FalseEnd IfIf List2.ListCount 0 ThenCommand4.Enabled = TrueEnd IfEnd SubPrivate Sub Command4_Click()Dim i As Integer
45、i = 0Do While i List2.ListCount If List2.Selected(i) = True Then List1.AddItem List2.List(i) List2.RemoveItem i Else i = i + 1 End IfLoopIf List1.ListCount 0 ThenCommand3.Enabled = TrueEnd IfIf List2.ListCount = 0 ThenCommand4.Enabled = FalseEnd IfEnd SubPrivate Sub Form_Load()mycon.OpenACCESS = select * from allkehu order by id descDim rs As New