1、扬 州大 学毕 业 设 计 说 明 书设计论文题目:餐饮管理系统系 别: 信息工程学院 专 业: 计算机应用基础 姓 名: 曹军 学 号: 0707020138 指导教师 : 完成时间: 2010.04 目录第一章 系统需求及功能分析1(一).系统需求分析1(二)系统功能分析1第二章 系统总体设计3(一)系统功能3(二)数据库设计4(三) 系统功能模块图9(四)系统流程分析图10第三章 系统详细设计11(一)系统启动界面的设计11(二)系统主界面的设计13第四章 系统测试运行与调试26(一) 系统调试中遇到的问题及解决办法26(二)系统性能分析26心得体会27谢辞29参考文献30文件清单30餐
2、饮管理系统摘要随着我国市场经济的快速发展,各行业都呈现出生机勃勃的发展景象,其中餐饮业的发展尤为突出。但在快速发展的同时,餐饮业在日常经营管理中仍普遍采用手工管理方式,整体科技含量低。手工管理模式无论是在工作效率、人员成本还是提供决策信息方面都已难以适应现代化经营管理的要求。有效的管理成为了一个难题,在这些中小型饭店中采用工作流技术,结合饭店绿色管理内容,实施计算机管理信息系统不失为一条有效的解决途径。 本系统主要针对中小型饭店餐饮管理中的一些问题,将其与计算机信息管理系统结合起来,实现中小型饭店管理信息计算机化、系统化,将中小型饭店管理中的工作流转化成比较科学化、规范化的业务流程,使管理基础
3、数据更加准确化,为经营决策提供了快捷和强大的数据支持。把计算机用于餐饮企业管理,可在很大程度上提高管理者分析和决策的科学性,提高经营管理水平,提高工作效率。 关键词: 餐饮管理 ,VB, ACESS第一章 系统需求及功能分析一.系统需求分析 随着我国加入世界贸易组织,餐饮娱乐行业与国际市场接轨已成为大势所趋,餐饮娱乐行业要迎接这场挑战,就必须提高整体竞争能力,提高整体竞争能力必须变革自身的管理模式,提高管理水平,实施信息化建设无疑是实现这一目的的必由之路和明智之举。目前,我国餐饮娱乐行业信息化管理的进程缓慢,跟国外的同类企业相比管理依然落后。在激烈的竞争中,如何能把握机会,保持自己的优势,立于
4、不败之地呢?这就需要提供最好的服务,提供最完善的设施和最先进的技术。一个成功的餐饮娱乐企业,其经营者不仅要提高服务水平和服务质量,从而提高自身的知名度和回头率,还要有好的工作效率,并控制成本。在信息时代,更重要的是还必须要有一个完善的管理信息系统,便于方便客人和更好地管理酒店。一套优秀的餐饮娱乐管理信息系统应该是一套适用于各种餐娱企业使用的优秀系统,操作简单、灵活性好、系统安全性高、运行稳定,是管理者的理想选择。我的毕业设计题目就是设计一个餐饮娱乐收银系统,在前期的实习和分析之后,对系统进行了设计,虽然受水平所限,实践经验十分匮乏,独立完成一套完备的优秀的餐饮娱乐企业管理信息系统有很大的难度,
5、但是我努力在实践中巩固以及整理自己在大学期间所学的知识,尽量把这个系统设计的更好。传统的餐饮管理模式受制于程序复杂、效率不高、服务质量跟不上、结账打单等候时间长、跑单等问题的困扰,且该模式对餐厅的整体运营情况(如餐品库存、营业数据、日记账等)无法进行科学分析和预测,使得经营者不能做到轻松管理各项数据(如无法快速知道本月的主营业务收入,实现利润最大化)来把握全局。餐饮管理系统拥有方便、时尚、效率高、掌控能力强等特点,它改变了传统的管理观念,充分体现了信息化餐饮管理软件给企业的快速发展带来的好处。所以,本系统是针对餐饮行业的管理而编制的一个系统。开发本系统的总体任务是实现餐饮管理的系统化和自动化。
6、我们采用最常见的access作为数据库,使用ADO和DAO数据访问技术进行连结,编制了本系统,希望对餐饮行业的管理有帮助。系统开发的总体目的是在餐饮信息管理系统化,自动化,减少工作量,增加效率及可靠性。二. 系统功能分析 在本案例的制作过程中,涉及到许多VB程序制作的方法、技巧和VB的编程内容,尤其是对于数据库应用系统的开发制作,介绍了许多有用的方法和过程的编制,包括数据库的创建、数据表的创建、窗体制作、系统封面制作、系统加密方法、数据统计方法、数据报表制作、系统菜单制作、以及许多控件、模块和类模块的创建方法。对于初学者,或是对于利用Visual Basic进行系统开发的编程人员和广大在校的大
7、学生、研究生和各类理工科学生来说,真正地掌握一个工具的使用并不是一件容易的事情。Visual Basic以优良有性能、极强的系统开发功能、完美的视觉界面和简单易学的特点,已经赢得了全世界广大用户的偏爱,这已经是广为人知的事实了。本系统要求实现系统初始化、预定餐台、点单、打印账单、营业查询、会员管理等功能。1系统初始化包括设置餐台数量和名称、设置菜品名称和价格、设置服务员和操作员名称和密码2预定管理能实现根据人数和餐别自动提供合适的餐台,还可以进行查询和删除等操作3点单模块是核心部分,要求能快速实现点菜功能,还可以实现增删改等功能;打印账单要求先打印消费清单给客户确认,如有问题则进行修改,确认后
8、再结帐,结帐方式允许多种,包括现金、银行卡、会员卡、抵用券等,还可以对结完帐的消费清单进行打印4营业查询要求实现按时间查询和按结帐方式查询,主要统计销售额5会员管理要求实现会员卡的发放、充值、消费、奖励等功能,充值单、消费单和奖励单必须打印供客户签字确认。因此,本系统从以上几个方面进行了设计,以实现上述的功能。第二章 系统总体设计一.系统功能 1.系统初始化添加操作员:设置初始用户名为:admin,密码admin具体操作员的添加修改可以通过系统设置选项卡来进行设置设置餐台数量和名称、设置菜品名称和价格、设置服务员:在系统设置表单中创建相应的餐台、菜品和价格、服务员等相关信息并分别保存在ACCE
9、SS数据库中餐台表、菜品表及服务员中。2.顾客开单管理 顾客开单包括:顾客开单、顾客消费(1) 顾客开单管理即新增客人及餐台的登记,登记内容包括:房间类型、顾客人数、餐别、餐台号、及服务员的登记。正确并完整的输入信息,通过点击“确定”按钮,将信息写入到数据库中。(2)顾客消费管理即根据顾客所订的餐台各所点的菜品计算出顾客的消费金额,如果顾客使用的是包间再根据不同包间所定的最低消费金额算出差额。并可通过“删除”、“修改”等按钮做相应的修改。还可根据企业规定消费满一定金额赠送相应的菜品。3.顾客结帐管理 顾客结账包括:打印清单、顾客结账 (1)打印清单:将顾客的消费清单打印出来由顾客确认,需连接打
10、印机,本系统中没有设计此项工能 (2)结账管理先打印出顾客的消费清单,在得到顾客的确认之后,再结账,在表单中输入顾客所使用的餐台号,表单自动生成账单号(按日期),再输入该顾客所点的菜,自动算出消费金额。正确记录结账方式,通过点击“结账”按钮将信息输入到表单中,并存入数据库。4、预定管理通过SSTabl控件,实现预定、退定、查询之间的切换。(1)预定:系统在控件Label2处自动产生订单号,便于管理。在预定日期下拉菜单中选择预定日期,并在所需信息栏中正确填入信息,点击“保存”按钮,则在数据库预定表中生成预定记录。(2)退定:在预定表中选 择要退定的记录,点击删除,则系统会清除此项记录。(3)查询
11、:此查询功能是通过时间来判断查询项的,通过DTPicker控件实现时间的选择。5、营业查询通过SSTabl控件,实现营业查询方式的选择(1)按时间查询,通过DTPicker控件实现日期的选择,可以查询当天的也可以查询一段时间之内的营业额的查询。(2)按结账方式查询,通过点击下拉菜单,选择相应的结账方式结合日期可实现营业额的查询。(3)挂单:通过对结账表结账方式的查询,列出所有挂单消费的记录6、会员管理 会员管理包括:开卡挂失、会员卡充值、积分奖励、充值查询、会员卡消费查询、积分奖励查询、设置密码(1)开卡挂失:点击开卡,弹出会员开卡窗口,输入想关信息,点击保存则将信息保存到数据库中(2)会员充
12、值 :在Text控件中输入卡号,再输入充值金额,点击保存,将信息存入数据库中。(3)积分奖励:在Text控件中输入卡号,再输入所要奖励的奖品,并扣除相应的积分,将信息保存到数据库中积分奖励表中。(4)查充值、查消费、查奖励 用户可以通过输入卡号来查询会员卡的充值情况、消费情况、及奖励情况。(5)设置密码 如果用户遗失密码,则可以能过此项来重高密码,点击保存可将数据保存到数据库中。7、系统设置 通过选项卡控件实现餐台项目设置、菜品项目设置服务员设置及操作员设置之间的相互转换,能够灵活添加,删除,修改。二.数据库设计数据库表的制作是制作整个系统的第一步,我们采用了access制作完成。针对餐饮管理
13、的需要,一共制作了十二张表,分别是:序号数据库表名1菜品表2餐台表3 操作员表4服务员表5会员卡充值表6会员卡消费表7会员卡信息表8积分奖励表9结账表10开单表11消费表12预定表图1-1 餐饮管理统数据表字段名类型大小编码 TEXT10名称TEXT20单位TEXT5单价TEXT 10图1-2 餐饮管理系统数据表 菜品表结构字段名类型大小餐台号TEXT10房间类型TEXT10餐台状态TEXT10 座位数TEXT10 最低消费TEXT 10图1-3餐饮管理系统数据表 餐台表结构字段名类型大小编号TEXT10姓名TEXT10密码TEXT10图1-4餐饮管理系统数据表 操作员表结构字段名类型大小编号
14、TEXT10姓名TEXT10性别TEXT 5 身份证TEXT 20 联系电话TEXT 20图1-5 餐饮管理系统数据表 服务员表结构字段名类型大小卡号TEXT20日期日期/时间金额TEXT20 序号自动编号长整型图1-6餐饮管理系统数据表 会员卡充值表结构字段名类型大小大卡号TEXT20日期日期/时间账单号TEXT20 金额TEXT20 序号自动编号 长整型图1-7餐饮管理系统数据表 会员卡消费表结构字段名类型大小卡号TEXT20姓名日期/时间20身份证TEXT30 电话TEXT20余额TEXT20积分TEXT20折扣日期/时间10状态TEXT10 密码TEXT10图1-8餐饮管理系统数据表
15、会员卡信息表结构字段名类型大属性大小大大小卡号TEXT20日期日期/时间奖品TEXT50 扣积分TEXT20 序号自动编号 长整型图1-9餐饮管理系统数据表 积分奖励表结构字段名类型大小账单号TEXT20应收金额TEXT10实收金额TEXT10 结算日期日期/时间 服务员TEXT10结账方式TEXT10餐台号TEXT10图1-10餐饮管理系统数据表 结账表结构字段名类型大小餐台号TEXT10顾客人数TEXT3服务员TEXT10 餐别TEXT10 房间类型TEXT10账单号TEXT20图1-11餐饮管理系统数据表 开单表结构字段名类型大小餐台号TEXT10序号TEXT3菜品名称TEXT20 金额
16、TEXT10 账单号TEXT20消费日期日期/时间总价TEXT10数量TEXT10图1-12餐饮管理系统数据表 消费表结构字段名类型大小订单号TEXT20预定日期日期/时间顾客姓名TEXT10 联系电话TEXT20 预定餐别TEXT10预定人数TEXT5房间类型TEXT10餐台号TEXT10图1-13餐饮管理系统数据表 预定表结构 本系统包括菜品表、餐台表、操作员表、服务员表、会员卡充值表、会员卡消费表、会员卡信息表、积分奖励表、结账表、开单表、消费表、预定表。对每一个字段的数据类型和字段大小都进行了设置,对每一张表都分别建立了索引。表与表之间有联系,便于系统中的复合查询.系统的窗体中都有要执
17、行的公共代码,需要为系统添加一个模块,在其中定义一些公共变量。定单号,账单号,餐台号,服务员,餐别,顾客人数等公共变量。三. 系统功能模块图 在对上述功能进行分析和集中,按照模块化程序设计的要求,得到了如图2-1所示的系统功能模块图餐饮管理系统顾客开单宾客结账营业查询按结账方式挂单按时间预定管理退订查询预定系统设置餐台项目设置菜品项目设置 服务员设置操作员设置会员管理积分奖励充值查充值开卡挂失查消费查奖励设置密码图2-1系统功能模块四.系统流程分析图 在了解了系统的各个功能模块之后,我们还要对系统的流程有一个整体的认识。所谓系统流程,就是用户在使用系统时的工作过程。多用户系统的工作流程都是从用
18、户登录模块开始,对用户身份进行权限验证,进而对系统进行管理的。开 始用户登陆警告进入系统顾客开单预定管理系统设置宾客结账营业查询会员管理 重试 失败 密码错误 是 成功 -登录图2-2 系统流程分析图第三章 系统详细设计本人主要设计的是系统主界面以及登陆界面,具体如图表3-1等图。数据库是数据管理的最新技术,是计算机科学的重要分支。数据库,顾名思义,是存放数据的仓库。只不过这个仓库是在计算机存储设备上,而且数据是按一定的格式存放的。所谓数据库是指长期储存在计算机内的、有组织的、可共享的数据集合。数据库中的数据按一定的数据模型组织、描述、和储存,具有较小的冗余度、较高的数据独立性和易扩展性,并可
19、为各种用户共享。为了有效的管理数据库,常常需要一些数据库管理系统为用户提供对数据库操作的各种命令、工具及方法,包括数据库的建立和记录的输入、修改、检索、显示、删除和统计等。数据库表的制作是制作整个系统的第一步,我们采用了access制作完成。针对图书管理的需要,一共制作了十三张表,分别是:菜品表、餐台表、操作员表、服务员表、会员卡充值表、会员卡消费表、会员卡信息表、积分奖励表、结账表、开单表、消费表、预定表。对每一个字段的数据类型和字段大小都进行了设置,对每一张表都建立了索引。表与表之间有联系,便于系统中的复合查询一系统启动界面的设计在工程中,往往需要创建一个系统启动画面,当出现系统启动画面后
20、,用户可以选择相应用户,输入正确的用户名和密码后,点击相关控件进入系统。其创建过程如下: 对象名称 属性项名 属性设置内容Form 名称 formloginCombol Data Source DATA1 Data Field 用户名TEXT1 Data source DATA1 Data Field 密码Password Char *Command1 确定Command2 取消表3-1 用户登录窗体控件的主要属性(1)启动VB应用程序,创建一个新的工程。(2)在新工程中选择窗体为标准EXE工程,出现FORM1窗体,保存窗体与工程。(3)在窗体中放入一个ListView1控件,设置相关的属性,
21、该窗体用于进入系统主控界面。(4)在窗体中放入一个下拉列表框控件和一个文本框控件,其属性设置如表3-1所示。 (5)窗体中放入两个标签控件,用于说明文本框控件。其用户登录窗体布局,如图 3-2所示:图3-2 用户登录窗体图2-4 系统登录密码出错界面当用户输入操作员及密码时,系统从操作员表中读取数据进行比较,若表中有此项记录则进入系统主界面,若表中没有此记录则显示出错警告。Private Sub Text1_KeyPress(KeyAscii As Integer)If KeyAscii = 13 ThenDim i As Integerrs.CursorLocation = adUseCli
22、entrs.LockType = adLockOptimisticrs.CursorType = adOpenKeysetsql = select * from 操作员表 where 编号= & Combo1.Text & rs.Open sql, conIf rs.Fields(2) = Text1.Text ThenFormmain.ShowUnload FormloginElse i = MsgBox(密码不正确!, vbOKOnly + vbExclamation, 警告!)End IfSet rs = NothingEnd IfEnd Sub二系统主界面的设计 通过系统启动界面,可以
23、进入系统主控界面,制作主控界面的过程如下:(1)在工程中增加一个窗体FORM2。(2)设置窗体的相关属性,如窗体位置、颜色、图片以及极大化、极小化或正常等属性设置,主窗体的基本属性如表3-3所示:属性项名 属性设置内容名称 FormmainCaption 餐饮管理系统Border Style 2-SizableStart Up position 2-屏幕中心Windows State 2-Maximized表3-3 系统主界面窗体控件的主要属性图3-4 主系统界面1.首先实现对系统中几个数据表的维护,(1).实现将消费记录保留两天rs.CursorLocation = adUseClientr
24、s.LockType = adLockOptimisticrs.CursorType = adOpenKeyset sql = select * from 消费表 order by 消费日期 rs.Open sql, conDo While Not rs.EOFIf rs.Fields(5) Date - 2 Thenrs.DeleteEnd Ifrs.MoveNextLoopSet rs = Nothing(2).实现将结账表中的记录保留三个月rs.CursorLocation = adUseClientrs.LockType = adLockOptimisticrs.CursorType
25、= adOpenKeyset sql = select * from 结帐表 order by 结算日期 rs.Open sql, conDo While Not rs.EOFIf rs.Fields(3) Date - 90 Thenrs.DeleteEnd Ifrs.MoveNextLoopSet rs = Nothing(3).实现会员卡充值记录保留半年rs.CursorLocation = adUseClientrs.LockType = adLockOptimisticrs.CursorType = adOpenKeyset sql = select * from 会员卡充值表 or
26、der by 日期 rs.Open sql, conDo While Not rs.EOFIf rs.Fields(1) Date - 180 Thenrs.DeleteEnd Ifrs.MoveNextLoopSet rs = Nothing(4).实现将积分奖励记录保留半年rs.CursorLocation = adUseClientrs.LockType = adLockOptimisticrs.CursorType = adOpenKeyset sql = select * from 积分奖励表 order by 日期 rs.Open sql, conDo While Not rs.E
27、OFIf rs.Fields(1) Date - 180 Thenrs.DeleteEnd Ifrs.MoveNextLoopSet rs = Nothing(5).将早于当前日期的预定记录删除rs.CursorLocation = adUseClientrs.LockType = adLockOptimisticrs.CursorType = adOpenKeysetsql = select * from 预订表 order by 预订日期 rs.Open sql, conDo While Not rs.EOFIf rs.Fields(1) Date Thenrs2.CursorLocati
28、on = adUseClientrs2.LockType = adLockOptimisticrs2.CursorType = adOpenKeysetsql2 = update 餐台表 set 餐台状态 =空闲 where 餐台号= & rs.Fields(7) & rs2.Open sql2, conSet rs2 = Nothingrs.DeleteEnd Ifrs.MoveNextLoopSet rs = Nothing2.建立菜单栏中各子菜单与系统中与其相对应的窗体之间建立链接Private Sub mnudylsqd_Click()Formdylsqd.ShowEnd SubPri
29、vate Sub mnuhygl_Click()Formhygl.ShowEnd SubPrivate Sub mnuxtsz_Click()Formxtsz.ShowEnd SubPrivate Sub mnuyycx_Click()Formyycx.ShowEnd SubPrivate Sub mnuzjxf_Click()Formzjxf.ShowEnd Sub图3-5菜单编辑器界面3. 在系统主界面上添加工具栏控件如图3-7所示:图3-7 工具栏控件在Toolbar控件中,通过将 Button 对象添加到 Buttons 集合中来创建工具栏。每个 Button 对象都选一幅图像,这些都
30、是由相关联的ImageList 控件提供的。每个按钮的状态都由 Style属性决定 ,将Toolbar 的style属性设置为0-tbrStandard在一个按钮上用Image 属性为每个 Button对象加一幅图像,在设计时用Toolbar 控件的属性页将Button对象添加到控件中。在运行时Add和Remove方法添加按钮或从Buttons 集合中删除按钮。用Select Case实现工具栏上各按钮与其相对应的窗体之间建立链接。Private Sub Toolbar1_ButtonClick(ByVal Button As MSComctlLib.Button) Select Case B
31、utton.Index Case 1Formgkkd.Show Case 2Formbkjz.Show Case 3Formdyqd.ShowCase 4Formydgl.Show Case 5Formyycx.ShowCase 6Formxtsz.ShowCase 7End SelectEnd Sub 4.在系统主界面上添加选项卡控件,如图3-9所示:图3-9选项卡控件(1).将图片及标签数组的属性均设为不可见,然后在程序中根据餐台表的信息动态添加。If SSTab1.Tab = 0 ThenFor i = 1 To 50Image2(i).Visible = FalseLabel4(i).
32、Visible = FalseImage1(i).Visible = FalseLabel3(i).Visible = FalseNext iEnd if(2).实现大厅餐台的动态排列,m为读取数据库中房间类型为大厅的餐台的数量, m与6相除截尾之后的结果为n (设每行餐台数为6),m与6求余结果为k 不足一行时单独排列,采用双重循环实现大厅选项卡上餐台号的动态排列,并将图片及标签的可见属性设为真。图片及标签均为数组。rs.CursorLocation = adUseClientrs.LockType = adLockOptimisticrs.CursorType = adOpenKeyset
33、sql = select * from 餐台表 where 房间类型=大厅 order by 餐台号rs.Open sql, conm = rs.RecordCountn = Fix(m / 6)k = m Mod 6For i = 1 To n For j = 1 To 6Image1(i - 1) * 6 + j).Move 1200 + 2200 * (j - 1), 1800 + 1800 * (i - 1) Image1(i - 1) * 6 + j).Visible = TrueLabel3(i - 1) * 6 + j).Move 1320 + 2200 * (j - 1), 3
34、000 + 1800 * (i - 1)Label3(i - 1) * 6 + j).Visible = TrueNext jNext iIf k 0 Theni = n + 1For j = 1 To kImage1(i - 1) * 6 + j).Move 1200 + 2200 * (j - 1), 1800 + 1800 * (i - 1)Image1(i - 1) * 6 + j).Visible = TrueLabel3(i - 1) * 6 + j).Move 1320 + 2200 * (j - 1), 3000 + 1800 * (i - 1)Label3(i - 1) *
35、6 + j).Visible = True Next jEnd If(3).动态排列完餐台之后,到数据库中读取数据,分别用if语句来判断各餐台的状态,并将Label3(i).Caption属性设为餐台名称。将Image1(i)设置为其状态相对应的图片,在餐台状态变化时, Image1(i)也会变为其相对应的图片。For i = 1 To rs.RecordCountLabel3(i).Caption = rs.Fields(0)If rs.Fields(2) = 空闲 ThenImage1(i) = LoadPicture(App.Path & image01.bmp)End IfIf rs.
36、Fields(2) = 占用 ThenImage1(i) = LoadPicture(App.Path & image02.bmp)End IfIf rs.Fields(2) = 预订 ThenImage1(i) = LoadPicture(App.Path & image03.bmp)End Ifrs.MoveNextNext iSet rs = NothingEnd If(4).实现包间餐台的动态排列,m为读取数据库中房间类型为大厅的餐台的数量, m与6相除截尾之后的结果为n (设每行餐台数为6),m与6求余结果为k 不足一行时单独排列,采用双重循环实现包间选项卡上餐台号的动态排列,并将图
37、片及标签的可见属性设为真。图片及标签均为数组。rs.CursorLocation = adUseClientrs.LockType = adLockOptimisticrs.CursorType = adOpenKeysetsql = select * from 餐台表 where 房间类型=包间 order by 餐台号rs.Open sql, conm = rs.RecordCountn = Fix(m / 6)k = m Mod 6For i = 1 To n For j = 1 To 6 Image2(i - 1) * 6 + j).Move 1200 + 2200 * (j - 1)
38、, 1800 + 1800 * (i - 1) Image2(i - 1) * 6 + j).Visible = True Label4(i - 1) * 6 + j).Move 1320 + 2200 * (j - 1), 3000 + 1800 * (i - 1)Label4(i - 1) * 6 + j).Visible = TrueNext jNext iIf k 0 Theni = n + 1 For j = 1 To kImage2(i - 1) * 6 + j).Move 1200 + 2200 * (j - 1), 1800 + 1800 * (i - 1)Image2(i -
39、 1) * 6 + j).Visible = TrueLabel4(i - 1) * 6 + j).Move 1320 + 2200 * (j - 1), 3000 + 1800 * (i - 1) Label4(i - 1) * 6 + j).Visible = True Next jEnd If(5).动态排列完餐台之后,到数据库中读取数据,分别用if语句来判断各餐台的状态,并将Label3(i).Caption属性设为餐台名称。将Image1(i)设置为其状态相对应的图片,在餐台状态变化时, Image1(i)也会变为其相对应的图片。For i = 1 To rs.RecordCount
40、Label4(i).Caption = rs.Fields(0)If rs.Fields(2) = 空闲 ThenImage2(i) = LoadPicture(App.Path & image01.bmp)End IfIf rs.Fields(2) = 占用 ThenImage2(i) = LoadPicture(App.Path & image02.bmp)End IfIf rs.Fields(2) = 预订 ThenImage2(i) = LoadPicture(App.Path & image03.bmp)End Ifrs.MoveNextNext iSet rs = NothingE
41、nd IfEnd Sub5.按照“DD”,”日期”,“编号”的格式自动生成订单号rs.CursorLocation = adUseClientrs.LockType = adLockOptimisticrs.CursorType = adOpenKeyset sql = select * from 预订表 order by 订单号rs.Open sql, conIf Not rs.EOF Thenrs.MoveLastddh = Trim(rs.Fields(0)Elseddh = End Ifrs.CloseSet rs = Nothing s1 = Mid(ddh, 3, 8) s2 = Trim(st
版权声明:以上文章中所选用的图片及文字来源于网络以及用户投稿,由于未联系到知识产权人或未发现有关知识产权的登记,如有知识产权人并不愿意我们使用,如有侵权请立即联系:2622162128@qq.com ,我们立即下架或删除。
Copyright© 2022-2024 www.wodocx.com ,All Rights Reserved |陕ICP备19002583号-1
陕公网安备 61072602000132号 违法和不良信息举报:0916-4228922