专业课程设计报告范文-Delphi餐饮管理系统.doc_第1页
专业课程设计报告范文-Delphi餐饮管理系统.doc_第2页
专业课程设计报告范文-Delphi餐饮管理系统.doc_第3页
专业课程设计报告范文-Delphi餐饮管理系统.doc_第4页
专业课程设计报告范文-Delphi餐饮管理系统.doc_第5页
免费预览已结束,剩余56页可下载查看

下载本文档

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

文档简介

1 南京审计学院信息科学学院南京审计学院信息科学学院 课程设计报告书课程设计报告书 课程名称 课程名称 信息系统开发工具课程设计信息系统开发工具课程设计 课题名称 课题名称 餐餐 饮饮 管管 理理 系系 统统 专专 业 业 信息管理与信息系统信息管理与信息系统 班班 级 级 08 级信息管理级信息管理 1 班班 学学 号 号 061415309061415309 姓姓 名 名 孙晓刚孙晓刚 成成 绩 绩 2010 年年 12 月月 26 日日 2 目 录 第一章第一章 系统需求分析系统需求分析 1 1 1 1 系统功能需求分析 1 1 2 系统数据流图 1 1 3 数据字典 2 第二章第二章 系统概要设计系统概要设计 5 5 2 1 系统总体框图设计 5 2 2 各模块功能分析 5 第三章第三章 数据库设计数据库设计 7 7 3 1 系统 E R 图设计 7 3 2 数据库结构的设计 8 第四章第四章 系统详细设计及实现系统详细设计及实现 1111 4 1 系统登陆界面设计 11 4 2 系统主界面设计 15 4 3 菜谱设置模块 19 4 3 1 菜谱信息设置设计 19 4 3 2 菜谱查询设计 20 4 3 3 菜谱添加设计 22 4 3 4 菜谱修改设计 24 4 3 5 菜谱删除设计 25 4 4 开台管理模块 27 4 4 1 搜索台号设计 27 4 4 2 开台设置设计 30 4 4 3 台号信息查询的设计 32 4 4 4 房台列表显示函数的设计 34 4 5 点菜管理模块 34 4 5 1 客户点菜设计 35 4 5 2 客户放弃开台设计 37 4 5 3 客户点菜完毕返回设计 37 第五章第五章 数据模块的创建与实现数据模块的创建与实现 45 45 5 1 数据模块的创建 45 5 2 数据模块的实现 46 第六章第六章 系统调试与测试系统调试与测试 53 53 6 1 软件功能测试 47 第七章第七章 结论结论 5454 7 1 系统开发遇到的问题 54 3 7 2 系统改进方面 54 7 3 总结 54 摘要摘要 近几年来 随着我国国民经济的稳定增长 餐饮业的竞争也越来越激励 想在这 样竞争激励的环境下生存 就必须运用科学的管理思想与先进的管理方法 使用点 餐与管理一体化 这样不仅提高了工作效率 也避免了以前手工作业的麻烦 从而 使得管理者能够准确 有效的管理餐饮 因此 餐饮业的管理者更需要一种综合实 时的管理模式 希望从更科学的管理中取得竞争的优势 在竞争激烈的商业市场中 取胜 结合管理信息系统的开发方法及步骤 以此为理论根据 开发出一个信息管 理系统 餐饮管理系统 它采用国际通用的先进餐饮管理模式 并结合中国的管 理实际特点开发而成 通过本系统功能模块 可为各种大小不同的餐饮管理所使用 为管理者提供高效的管理手段 本系统有着人性理的设置理念 流程清晰 易懂 具有独特的功能对于开台管理 点菜 菜谱设置等为管理人员带来很大的方便 减 少人为因素的错误 提高服务水平 提升企业形象 关键字 餐饮管理系统 提高服务水平 提高工作效率 4 第一章第一章 系统需求分析系统需求分析 1 11 1 系统功能需求分析系统功能需求分析 随着现在连锁餐饮店的不断崛起 作为餐饮业不可缺少的一部分 餐饮管理系 统 它的内容对于餐饮业的决策者和管理者来说都非常重要 本系统基于餐饮管理 系统之下的一个子系统 可以把整个餐饮店的日常经营管理信息化 包括点餐 库 存管理 员工信息等日常经营的一些统计功能 现在此系统还不够完善 将来使此 系统会集成更多的功能 例如 餐饮管理系统的开发成功 实现了餐饮业的现代化 表明了餐饮管理正与国际化接轨 有了更为深入的发展 餐软管理系统 采用国际通用的先进餐饮管理模式 并结合中国的管理实际特 点开发而成 通过本系统功能模块 可为各种大小不同的餐饮管理所使用 为管理 者提供高效的管理手段 本系统有着人性理的设置理念 流程清晰 易懂 具有独 特的功能对于开台管理 点菜 菜谱设置等为管理人员带来很大的方便 减少人为 因素的错误 提高服务水平 提升企业形象 根据实际情况的需要 系统主要功能如下 前台管理 开台管理 客户结账 退出系统 系统管理 权限管理 系统管理 帮助 基础信息管理 酒水信息查询 菜谱信息查询及设置 1 21 2 系统数据流图系统数据流图 根据实际情况要求 系统数据流图如图 1 2 1 所示 5 图 1 2 1 数据流图 1 31 3 数据字典数据字典 在这定义的酒店餐饮数据字典 主要对数据流程图中的数据流 数据存储和处 理过程进行说明 1 主要的数据流定义 1 数据流名称 客户信息 位置 客户P2 定义 客户信息 房间台号 所点菜 酒水 开单时间 服务员编号 数据流量 说明 客人点菜时可以进行特色菜和酒水信息的查询 买单时要核对消费名目是 否属实 2 数据流名称 菜谱信息 位置 菜谱P2 定义 菜谱信息 编号 房间台号 菜名 单位 价格 菜系类别 口味说明 数据流量 说明 编号不能有重复的 3 数据流名称 桌台状况 位置 桌台P1 定义 桌台状况 编号 房台名称 类型说 餐饮部门 服务费 简要说明 状态 数据流量 6 说明 只有状态为空闲的房台才能开台 4 数据流名称 开台人 位置 服务员 定义 开台人 编号 姓名 员工类别 密码 数据流量 说明 不同的员工类别具有不同的权限 管理员具有所有权限 服务员不具备系 统维修等权限 5 数据流名称 员工信息 位置 定义 员工信息 员工编号 姓名 性别 出生日期 联系电话 联系地址 聘用日期 工作部门 员工类别 身份证号 备注 数据流量 说明 员工编号不可相同 6 数据流名称 管理员情况 位置 管理员 定义 管理员 姓名 口令 数据流量 平均流量为每年传输 50 次 说明 通过管理员来不断的更新和维护这个系统 7 数据流名称 开台信息 位置 P1P4 定义 开台信息 房间台号 服务费 数据流量 说明 服务费可以省去 8 数据流名称 点菜信息 位置 P2P4 定义 点菜信息 房间台号 类别 编号 名称 类型 数量 价格 合计 点但日期 结 单日期 服务员编号 服务员姓名 结帐编号 数据流量 说明 房间台号是根据开台而来的 2 主要的数据存储定义 数据存储编号 7 数据存储名称 桌台信息 输入 输出 数据结构 桌台信息 编号 房台名称 类型说 餐饮部门 服务费 简要说明 状态 存取方式 检索和更新处理 以检索为主 说明 编号具有唯一性 状态只能是空闲或者营业 数据存储编号 D2 数据存储名称 员工信息 输入 P1 输出 P3 数据结构 员工信息 员工类别 口令 存取方式 主要是检索 说明 根据员工类别的不同 在后面的操作中具有不同的权限 3 数据存储编号 D3 数据存储名称 菜谱信息 输入 P2 输出 P2 数据结构 菜谱信息 菜名 单位 价格 菜系类别 口味说明 存取方式 检索 说明 在点菜时对菜谱进行查询 3 主要处理过程 1 处理过程编号 P1 处理过程名 开台 输入 服务员权限 桌台状况 输出 开台信息 处理说明 综合各方面信息 进行客人消费前最基本的准备 2 处理过程编号 P2 处理过程名 点菜 输入 D1 D3 D4 输出 点菜信息 处理说明 客人根据菜谱信息 酒水信息 特色菜信息 选择自己中意的项目 8 进行 3 处理过程编号 P3 处理过程名 权限管理 输入 员工类型 口令 输出 相应的操作权限 处理说明 输入员工类别和口令获得相应的操作权限 管理员比服务员具有更 多的操作权限 第二章第二章 系统概要设计系统概要设计 2 12 1 系统总体框架设计系统总体框架设计 根据业务情况 该系统共分为开台管理 客人买单 菜谱信息设置 客户点菜 酒水信息设置等模块 系统结构图如图 2 1 所示 图 2 1 餐饮管理系统结构图 9 2 22 2 各模块功能分析各模块功能分析 1 系统登录窗口主要功能 系统登录窗口主要功能 1 以图标形式显示数据库中操作员 并凭口令登入到主界面 2 操作员输入错误密码提醒错误并返回 三次输入错误口令则退出系统 3 实现权限登录 系统管理员拥有一切权利 其他操作员则被限制一些操作权 限 2 系统主界面主要功能 系统主界面主要功能 1 根据操作员权限设置相应权限的菜单和工具栏功能 2 可通过菜单或快捷键进入相应子界面 3 显示了系统当前时间和相应操作员 3 系统菜谱信息设置界面主要功能 系统菜谱信息设置界面主要功能 实现对菜谱信息的添加 修改 删除 查询的功能 4 4 系统开台管理界面主要功能 系统开台管理界面主要功能 1 以图标模式显示空台 营业台 点击台号图标则自动显示相应台号信息 2 通过输入台号检索符合条件的台号 3 点击空房自动弹出与昂查询窗口从而自动开台 5 5 系统点菜界面主要功能 系统点菜界面主要功能 1 实现菜谱 酒水查询的链接 2 点击 开始点菜 按钮台号状态自动变为开台 并聚焦到编号栏 3 在编号栏输入菜编号按回车自动录入菜的信息 4 自动生成结账编号 输入菜数量自动计算合计消费金额 5 可实现挂单 读单 放弃开台和点菜完毕返回的功能 10 第三章第三章 数据库设计数据库设计 3 13 1 系统系统 E RE R 图的设计图的设计 系统 E R 图如图 3 1 所示 11 12 图 3 1 系统 E R 图 3 23 2 数据库结构设计数据库结构设计 数据库结构设计是总体设计阶段非常重要的环节 好的数据库结构可以简化开发 过程 使系统功能更加清晰明确 因为数据库结构的变化会造成编码的改动 所以 必须认真设计数据库后再进行编码 从而避免了无谓的重复的工作 本系统采用了 SQL Server 数据库 数据库名称为 060412079 该数据库包含 4 个表 分别是 开台表 点菜表 菜谱费用信息表 台号信息表 下面分别介绍数 据表的结构 1 开台表 开台表用于保存开台的相关信息 开台表的结构见表 3 2 1 所示 表 3 2 1 开台表结构 字段名称数据类型字段大小允许为空否 编号int4设置为主键 房台名称char30允许为空 类型说明char20允许为空 13 餐饮部门char20允许为空 服务费money8允许为空 简要说明char30允许为空 状态char20允许为空 2 点菜表 点菜表用于保存点菜信息和相应的消费信息 点菜表的结构见表 3 2 2 所示 表 3 2 2 点菜表结构 字段名称数据类型字段大小是否允许为空 idchar16设置为主键 房间台号int4允许为空 类别Char 10允许为空 编号int4允许为空 名称char50允许为空 类型char20允许为空 单位char10允许为空 数量int4允许为空 价格money8允许为空 合计Money8允许为空 点单日期datetime8允许为空 结单日期datetime8允许为空 服务员编号int8允许为空 服务员姓名char12允许为空 状态char10允许为空 结账编号int4允许为空 是否结单char10允许为空 3 菜谱费用信息表用于查询餐饮店所有的菜的信息 菜谱费用信息表的结构如 图 3 2 3 所示 表 3 2 3 菜谱费用信息结构 14 字段名称数据类型字段大小是否允许为空 编号int4设为主键 菜名char50允许为空 单位char10允许为空 价格money8允许为空 菜系类别char20允许为空 口味说明char30允许为空 4 台号信息表用于台号信息的查询 方便了消费者选台 开台及其他的作用 台 号信息表的结构如图 3 2 4 示 表 3 2 4 台号信息表结构 字段名称数据类型字段大小是否允许为空 编号int4设为主键 房台名称char30设为主键 类型说明Char20允许为空 餐饮部门Char20允许为空 服务费money 8允许为空 简要说明char30允许为空 状态char10允许为空 容纳人数Int4允许为空 第四章第四章 系统详细设计及实现系统详细设计及实现 4 14 1 系统登陆界面设计系统登陆界面设计 1 实现目标 程序启动后 首先登陆此界面验证操作员的密码 主要实现的功能如下 1 以图标形式显示数据库中操作员 并凭口令登入到主界面 2 操作员输入错误密码提醒错误并返回 三次输入错误口令则退出系统 15 3 实现权限登录 系统管理员拥有一切权利 其他操作员则被限制一些操作权限 系统登录界面如图 4 1 1 所示 图 4 1 1 系统登录界面 2 实现过程 1 添加窗体设置窗体 caption 属性为 登录窗口 保存窗体为 u79in pas 2 向窗体中添加 Datasource Query Edit Listview ImageList Image Time Label 等控件 主要控件对象的属性如表 4 2 1 所示 表 4 2 1 主要控件对象的属性列表 控件名属性值功能 Query1Databasename SQL 060412079 Select from 员工信表 权限查询 Database1DatasetQuery1设置数据源 3 程序主要代码如下 单击 登陆 按钮 将判断操作员 操作密码是否正确 如果正确进入主界面 并根据操作员权限设置菜单和工具是否可用 如果输入密码错误将提醒并返回 三 次错误输入则自动退出系统 procedure TUser BitBtn1Click Sender TObject begin MainForm ToolButton1 Enabled True MainForm ToolButton2 Enabled True MainForm ToolButton5 Enabled True 16 MainForm ToolButton6 Enabled True MainForm N1 Enabled True MainForm N2 Enabled True MainForm N4 Enabled True MainForm N3 Enabled True MainForm N5 Enabled True MainForm N6 Enabled True MainForm N7 Enabled True MainForm N8 Enabled True MainForm N9 Enabled True MainForm N17 Enabled True MainForm N19 Enabled True if Query1 FieldByName 编号 AsString controller then 如果是系统管 理员 begin if Edit1 TextQuery1 FieldByName 密码 AsString then begin ShowMessage Query1 FieldByName 姓名 AsString 的口令错误 口令错误 Edit1 SetFocus End Else begin MainForm StatusBar1 Panels 1 Text 用户 Query1 FieldByName 姓名 AsString MainForm User1 Query1 FieldByName 姓名 AsString User Close 3 Timer1 Enabled False Close end End 17 Else begin MainForm ToolButton1 Enabled False MainForm ToolButton2 Enabled False MainForm ToolButton5 Enabled False MainForm N1 Enabled False MainForm N2 Enabled False MainForm N4 Enabled False MainForm N3 Enabled False MainForm N5 Enabled False MainForm N6 Enabled False MainForm N7 Enabled False MainForm N8 Enabled False MainForm N9 Enabled False MainForm N17 Enabled False MainForm N19 Enabled False if Edit1 TextQuery1 FieldByName 密码 AsString then begin ShowMessage Query1 FieldByName 姓名 AsString 的口令错误 Edit1 SetFocus End Else begin Name Query1 FieldByName 权限 AsString MainForm EnabledKey Name 设置操作员权限 MainForm StatusBar1 Panels 1 Text 用户 Query1 FieldByName 姓名 AsString User Close 3 Timer1 Enabled False Close end 18 end END 窗体启动 关闭钥匙 后将所有操作员添加到操作员列表 procedure TUser FormShow Sender TObject var List Array 0 1 of TListItem begin Timer1 Enabled True User Close 0 打开关闭钥匙 Query1 Close Query1 Open ListView1 Items Clear While not Query1 Eof do begin List 0 ListView1 Items Add List 0 Caption Query1 FieldByName 姓名 AsString if Query1 FieldByName 编号 AsString controller then begin List 0 ImageIndex 0 End Else begin List 0 ImageIndex 1 end Query1 Next end end 选择操作员 点击其中一个则将员工的姓名和类型添加到了相应位置 procedure TUser ListView1Click Sender TObject var List Array 0 1 of TListItem begin List 0 ListView1 Selected 19 if List 0 Nil then begin Query1 Locate 姓名 List 0 Caption loCaseInsensitive 查询姓名 但是如果有从名的按第一个算 end end 4 24 2 主界面设计主界面设计 1 程序启动后 系统在 登陆界面 验证操作员密码后 将进入此界面 系统主界 面主要功能 根据操作员权限设置相应权限的菜单和工具栏功能 可通过菜单或快捷键进入相应子界面 显示了系统当前时间和相应操作员 主程序界面如图 4 2 1 所示 图 4 2 1 主程序界面 2 实现过程 1 启动 Delphi 设置窗体名为 mainfrom 设置窗体 caption 为 餐饮管理系统 保存为 u791 pas 2 向窗体中添加 Imagelist mainmenu image toolbutton stausbar panel time label 等控 件主要属性为 控件名属性值功能 20 Toolbar1imagesImagelist1设置工具栏图标 stausbar 1Panel1用户登录 管理员 显示程序状态 参数 3 主要程序代码如下 使应用项目的提示信息挂钩程序 procedure TMainForm FormCreate Sender TObject begin Application OnHint DisPlayHint 与应用项目的提示信息挂钩 end 先调用系统登陆窗口 再设置窗体状态参数程序 procedure TMainForm FormShow Sender TObject var Year Month Day Word begin Close 1 1 User ShowModal 调用系统登陆窗口 If Close 1 0 Then Close Else begin Application MainForm WindowState wsMaximized Application MainForm WindowState wsNormal DecodeDate StrToDate DateTOStr Date Year Month day 分解日期 StatusBar1 Panels 2 Text 系统日期 IntToStr Year 年 IntToStr Month 月 IntToStr day 日 end end 调入开台界面程序 procedure TMainForm N8Click Sender TObject begin If Assigned KTGL Then begin DataModule1 THXX Open 打开台号信息表 21 DataModule1 cybmb Open 打开餐饮部门表 DataModule1 JZBH Open 打开结帐编号表 KTGL TKTGL Create Self KTGL ShowModal end end 设置 B 类权限有系统管理和系统维护操作权 A 类权限即系统管理员的操作 享有一切操作权限 如图 4 2 2 所示 图 4 2 2 B 类权限主程序界面 代码如下 Function TMainForm EnabledKey key String Boolean 声明操作权限函数 EnabledKey begin if Pos A key 0 then 具有 A 类权限 begin MainForm ToolButton1 Enabled True MainForm ToolButton2 Enabled True MainForm ToolButton5 Enabled True MainForm ToolButton6 Enabled True MainForm N1 Enabled True MainForm N2 Enabled True MainForm N4 Enabled True 22 MainForm N3 Enabled True MainForm N8 Enabled True MainForm N9 Enabled True MainForm N17 Enabled True MainForm N19 Enabled True End Else if Pos B key 0 then 具有 B 类权限 begin MainForm ToolButton1 Enabled True MainForm ToolButton2 Enabled True MainForm ToolButton6 Enabled True MainForm N1 Enabled True MainForm N5 Enabled True MainForm N6 Enabled True MainForm N7 Enabled True MainForm N4 Enabled True MainForm N3 Enabled True MainForm N8 Enabled True MainForm N9 Enabled True MainForm N17 Enabled True MainForm N19 Enabled True End end 调入菜谱信息设置界面程序 procedure TMainForm N6Click Sender TObject begin If Assigned CPXXSZ Then begin DataModule1 CPFYXX Open 打开菜谱费用信息表 DataModule1 cxlbxx open 打开菜系类别信息表 23 CPXXSZ TCPXXSZ Create Self CPXXSZ ShowModal end end 4 34 3 菜谱信息设置界面设计菜谱信息设置界面设计 4 3 14 3 1 菜谱设置模块菜谱设置模块 1 实现目标 程序启动后 调用菜单 基础信息设置 下的 菜谱信息设置 项 将打开 菜谱信息设置界面 系统菜谱信息设置界面主要功能 实现对菜谱信息的添加 修改 删除 查询的功能 2 实现过程 1 添加新窗体 设置窗体名为 cpxxsz 设置窗体 caption 为 菜谱信息设置 保存为 u79cpset pas 2 向窗体中添加 query panel groupbox dbgrid dbedit edit dbtext bitbtn dblookupcom bobox time datasetfrist actionlist label 等控件 主要控件属性如表 4 3 1 所示 表 4 3 1 主要控件属性 对象属性值功能 Query1Databasename sql 060412079 Slect MAX 编号 from 菜谱 信息费用表 设置数 据范围 DatasetFrist1Datasource Caption Hint Database1 cpxxfys 首记录 移动到第一条记录 移动到 首记录 DatasetLast1Datasource Caption Hint Database1 cpxxfys 尾记录 移动到最后一条记录 移动到 尾记录 DatasetNext1Datasource Caption Database1 cpxxfys 下一条记录 移动到 下一条 24 Hint移动到下一条记录记录 DatasetPrior1Datasource Caption Hint Database1 cpxxfys 上一条记录 移动到上一条记录 移动到 上一条 记录 DBLookupComBox1Listsource Keyfield Listfield Datasource Dtafirld Database1 cpfyxxs 菜系名称 菜系名称 Database1 cxlbxxs 菜系类别 选择菜 系类别 4 3 24 3 2 菜谱查询设计菜谱查询设计 1 菜谱信息设置查询界面如图 4 3 1 所示 图 4 3 1 菜谱信息查询设置界面 2 代码如下 procedure TCPXXSZ BitBtn1Click Sender TObject var a b c integer d String begin If Length Edit1 Text 0 Then 如果输入查询信息为空 begin ShowMessage 请输入查询的 编号或菜名 信息 25 Edit1 SetFocus End Else begin a Length Edit1 Text c 0 for b 1 to a do for 语句用于判断查询是按菜谱编号还是按菜名查询 begin D COPY edit1 text b 1 if D 0 or D 9 then begin c c 1 end end If c Length Edit1 Text Then 按菜谱编号查询 begin if DataModule1 CPFYXX Locate 编号 StrTOInt Edit1 Text loCaseInsensitive then begin DBGrid1 Setfocus DBGrid1 SelectedIndex 0 End Else begin ShowMessage 对不起 没有找到 Edit1 setfocus end End Else 按菜谱编号查询 begin if DataModule1 CPFYXX Locate 菜名 Edit1 Text loPartialKey then 26 begin DBGrid1 Setfocus DBGrid1 SelectedIndex 1 End Else begin ShowMessage 对不起 没有找到 Edit1 setfocus end end end end 4 3 34 3 3 菜谱添加设计菜谱添加设计 1 菜谱信息设置添加界面如图 4 3 2 所示 图 4 3 2 菜谱信息添加设置界面 2 代码如下 procedure TCPXXSZ BitBtn2Click Sender TObject var a integer begin Query1 Close Query1 Open 27 if Query1 RecordCount0 then a Query1 Fields 0 AsInteger else a 1 if Bitbtn2 Caption 添加 then 添加菜谱信息 begin DataModule1 CPFYXX Refresh If DataModule1 CPFYXX RecordCount 0 Then A 79000 添加菜谱信息 Else begin DataModule1 CPFYXX Last a DataModule1 CPFYXX FieldByName 编号 AsInteger end BitBtn2 Caption 保存 BitBtn3 CaPtion 取消 Aenabled 1 DataModule1 CPFYXX Insert DataModule1 CPFYXX FieldByName 编号 AsInteger a 1 DataModule1 CPFYXX FieldByName 菜系类别 AsString DataModule1 CXLBXX FieldByName 菜系名称 AsString DBEdit2 SetFocus End Else 保存菜谱信息 begin if Length DataModule1 CPFYXX FieldByname 菜名 AsString 0 or Length DataModule1 CPFYXX FieldByname 单位 AsString 0 or Length DataModule1 CPFYXX FieldByname 价格 AsString 0 then begin ShowMessage 请将 菜名 单位 价格 的数据添全 DBEdit1 SetFocus End Else begin 28 AEnabled 2 BitBtn2 Caption 添加 BitBtn3 Caption 修改 DataModule1 CPFYXX Post 保存菜谱信息 end end end 4 3 44 3 4 菜谱修改设计菜谱修改设计 1 菜谱信息设置修改界面如图 4 3 3 所示 图 4 3 3 菜谱信息设置修改界面 2 代码如下 procedure TCPXXSZ BitBtn3Click Sender TObject begin if BitBtn3 Caption 修改 then begin DataModule1 CPFYXX Refresh If DataModule1 CPFYXX RecordCount 0 Then 如果数据为空 begin ShowMessage 对不起 没有数据可以修改 End Else 如果数据不为空 begin 29 AEnabled 1 BitBtn2 Caption 保存 BitBtn3 Caption 取消 DataModule1 CPFYXX Edit 编辑 DBEdit1 SetFocus end End Else begin AENabled 2 Bitbtn2 Caption 添加 BitBtn3 Caption 修改 DataModule1 CPFYXX Cancel 取消保存信息 end end 4 3 54 3 5 菜谱删除设计菜谱删除设计 1 菜谱信息设置删除界面如图 4 3 3 所示 图 4 3 3 菜谱信息设置删除界面 2 代码如下 procedure TCPXXSZ BitBtn4Click Sender TObject 30 begin DataModule1 CPFYXX Refresh If DataModule1 CPFYXX RecordCount 1 Then begin ShowMessage 对不起 这是最后一个菜 不能删除 End Else if MessageDLG 确认删除指定的菜谱信息吗 mtCustom mbYes mbNO 0 mrYes then begin DataModule1 CPFYXX Delete 删除数据 end end 5 状态编辑与浏览状态函数 function AEnabled key integer Boolean 定义状态编辑与浏览状态函 数 begin If key 1 Then 编辑状态 begin CPXXSZ BitBtn4 Enabled False 删除 按钮不可用 CPXXSZ BitBtn5 Enabled False 退出 按钮不可用 CPXXSZ BitBtn1 Enabled False 查询 按钮不可用 CPXXSZ Edit1 Enabled False 查询输入框不可用 CPXXSZ DBGrid1 Enabled False CPXXSZ GroupBox1 Visible True End Else 浏览状态 begin CPXXSZ BitBtn4 Enabled True 删除 按钮可用 CPXXSZ BitBtn5 Enabled True 退出 按钮可用 CPXXSZ BitBtn1 Enabled True 查询 按钮可用 31 CPXXSZ Edit1 Enabled True CPXXSZ DBGrid1 Enabled True CPXXSZ GroupBox1 Visible False end end 4 44 4 系统开台管理设计系统开台管理设计 1 实现目标 程序启动后 调用菜单 前台管理 下的 开台管理 项 将打开 开台管理 界面 系统开台管理界面主要功能 以图标模式显示空台 营业台 点击台号图标则自动显示相应台号信息 通过输入台号检索符合条件的台号 点击空房自动弹出与昂查询窗口从而自动开台 2 实现过程 1 添加新窗体 设置窗体名为 ktgl 设置窗体 caption 为 开台管理 保存 为 u79ktgl pas 2 向窗体中添加 datasource query groupbox panel pagecontrol dbgrid dbedit edit db text bitbtn dblookupcombobox image label 等控件 主要控件属性如表 4 3 1 所示 表 4 3 1 主要控件属性 控件名属性值功能 打他搜如厕DatasetQuery设置数据源 DBLookupComBox1Listsource Keyfield Listfield Database1 cybmbs 部门名称 部门名称 选择餐饮部门 Dbgrid1datasourceDatabase1 thxxs显示台号信息 4 4 14 4 1 搜索台号设计搜索台号设计 1 开台管理搜索台号界面如图 4 4 1 所示 32 图 4 4 1 开台管理搜索台号界面 2 代码如下 procedure TKTGL BitBtn1Click Sender TObject 搜索房台 var List TListItem Lists integer ListText String a b c integer d String begin If Length Edit1 Text 0 Then begin ShowMessage 请输入查询的 房台编号或房台名称 信息 Edit1 SetFocus End Else begin a Length Edit1 Text c 0 for b 1 to a do begin D COPY edit1 text b 1 if D 0 or D 9 then begin 33 c c 1 end end If c Length Edit1 Text Then begin if DataModule1 THXX Locate 编号 StrTOInt Edit1 Text loCaseInsensitive then begin if DataModule1 THXX FieldByName 状态 AsString 空闲 then begin PageControl1 ActivePageIndex 1 显示第二页 BitBtn6 SetFocus 将焦点移到点菜服务按扭上 End Else begin PageControl1 ActivePageIndex 0 显示第一页 BitBtn3 SetFocus 将焦点移到开台设置按扭上 end End Else begin ShowMessage 对不起 没有找到 end End Else begin if DataModule1 THXX Locate 房台名称 Edit1 Text loPartialKey then begin if DataModule1 THXX FieldByName 状态 AsString 空闲 then begin 34 PageControl1 ActivePageIndex 1 显示第二页 BitBtn6 SetFocus 将焦点移到点菜服务按扭上 End Else begin PageControl1 ActivePageIndex 0 显示第一页 BitBtn3 SetFocus 将焦点移到开台设置按扭上 end End Else begin ShowMessage 对不起 没有找到 end end end end 4 4 24 4 2 开台设置设计开台设置设计 1 开台管理开台设置界面如图 4 4 2 所示 图 4 4 2 开台管理开台设置界面 2 代码如下 procedure TYGCX BitBtn1Click Sender TObject begin GB 2 35 If Length Edit1 Text 0 Then begin ShowMessage 请输入员工编号 Edit1 Setfocus End Else if DataModule1 YGXXB Locate 员工编号 StrToInt Edit1 Text loCaseInsensitive then begin If not Assigned DCFY LR Then begin DCFY LR TDCFY LR Create Self DCFY LR Label14 Caption YGCX Edit1 Text DCFY LR Label15 Caption DataModule1 YGXXB FieldByName 姓名 AsSTring DCFY LR Label16 Caption DateTimeToStr Now If DataModule1 JZBH RecordCount 0 Then begin DataModule1 JZBH Append DataModule1 JZBH FieldByName 编号 AsInteger 1 DataModule1 JZBH Post End Else DCFY LR Label17 Caption IntToStr DataModule1 JZBH FieldbyName 编 号 AsInteger 1 DCFY LR Show end GB 1 YGCX Close End Else 36 begin ShowMessage 对不起 没有找到此员工信息 Edit1 Setfocus end end 4 4 34 4 3 台号信息查询的设计台号信息查询的设计 1 开台管理台号信息查询界面如图 4 4 3 所示 图 4 4 3 开台管理台号信息查询界面 2 代码如下 procedure TKTGL ListView2Click Sender TObject 选择房台 var list TListItem ListString String begin List TlistView Sender Selected If List nil Then begin ListString List Caption If Length ListString 0 Then if DataModule1 THXX Locate 房台名称 ListString loPartialKey then begin Query1 Close query1 sql clear query1 sql add select 编号 名称 类型 单位 数量 价格 合计 状态 服务员 姓名 from 点菜临时表 37 query1 sql add where 房间台号 a and 是否结单 b Query1 Params 0 AsInteger DataModule1 THXX FieldByName 编号 AsInteger Query1 Params 1 AsString 否 Query1 Open Query2 Close Query2 SQL Clear Query2 SQL Add Select Sum 合计 From 点菜临时表 Query2 SQL Add Where 房间台号 A and 是否结单 B Query2 Params 0 AsInteger DataModule1 THXX FieldByName 编号 AsInteger Query2 Params 1 AsString 否 Query2 Open If Query1 RecordCount 0 Then begin Query1 last Label13 Caption Query1 FieldByName 服务员姓名 AsString Label15 Caption FloatToStr Query2 Fields 0 AsFloat DataModule1 THXX Fie ldByName 服务费 AsFloat End Else begin Label13 Caption Label15 Caption end end end end 38 4 4 44 4 4 房台列表显示函数的设计房台列表显示函数的设计 function ADDListView Boolean 定义房台列表显示函数 begin DataModule1 thxx RefResh KTGL Listview1 Items Clear DataModule1 thxx Filter Format 状态 S 空闲 DataModule1 THXX Filtered True While not DataModule1 THXX Eof do begin KTGL ListView1 Items Add Caption DataModule1 thxx fieldbyname 房台名 称 asstring DataModule1 TH

温馨提示

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

评论

0/150

提交评论