




已阅读5页,还剩21页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
沈 阳 航 空 航 天 大 学 课程设计学 号 _班 级 _姓 名 _指导教师 _年 月 日沈阳航空航天大学课程设计任务书院系:动力与能源工程学院 专业:飞行器动力工程 班级:04040402 学号:2010040404053题目:某超市会员卡管理系统一、课程设计时间2012年3月5日至2012年3月11日,共计1周,20学时。二、课程设计内容用vf数据库软件完成以下任务:本系统用来管理某超市的会员卡信息数据,包括会员卡基本信息维护、会员卡卡信息的查询,功能模块:购物时得到会员积分、根据会员卡上的积分换礼物等。三、课程设计要求1. 程序质量: 贯彻事件驱动的程序设计思想,使用可视化对象来维护数据库。 用户界面友好,功能明确,操作方便;可以加以其它功能或修饰,如有登陆界面等。 用户界面中的菜单至少应包括“会员卡信息维护”、“会员卡得积分和根据积分换礼物信息管理”、“会员卡信息的查询与统计”、“退出”等。 代码应适当缩进,并给出必要的注释,以增强程序的可读性。2. 课程设计说明书:课程结束后,上交课程设计说明书和数据库系统程序。课程设计说明书的格式和内容参见提供的模板。四、指导教师和学生签字指导教师:_ 学生签名:_五、说明书成绩:六、教师评语: 沈阳航空航天大学设计用纸目录一、需求分析1二、系统主要功能模块3三、数据库设计5四、各功能模块的具体设计6五、个人总结21六、参考文献2222一、需求分析根据任务书给定的“课程设计内容”和“课程设计要求”作如下的需求分析。该系统是一个数据管理系统,使用它的假定为某超市的会员卡管理人员,系统应该具有安全、稳定、功能齐全的特点。1. 安全性分析系统管理的数据涉及到超市的所有会员,数据量较大且是一种基础性数据,涉及到会员的切身利益,所以要通过设置密码等手段确保数据不能被随意的删减和修改。2. 稳定性分析指系统比较健壮,只要是用户的合理操作,系统都应给出合理正确的回应,而不是出现令用户感到意外的系统错误或系统崩溃。3. 主要功能分析(1)系统登录:允许用户输入用户名、密码进入系统。(2)数据查询:管理员输入查询条件,系统规则地在界面显示查询结果,且显示的数据尽量全面。而且数据只读,不能改变数据库数据。(3)数据维护:该模块是针对于管理员操作,一般包括浏览、修改、增加、删除等,对于输入的数据,或被修改的数据应该保存到某个磁盘文件中,实现永久存储。(4)功能界面:主要实现会员获得积分的录入与会员积分兑换礼物。二、系统主要功能模块超市会员卡管理系统基于visual foxpro9.0中文版开发(并非机房的visual foxpro6.0),vfp在数据库开发方面具有方面,实用,简单,直接等优点,同时其也具有一定的局限性。本系统主要面向超市会员卡管理人员开发使用,因此主要侧重于系统的使用性和方便性。 1. “超市会员卡管理系统”的模块结构图(如图1)图1 系统模块划分2、本系统的主要内容(如图2)图 2 项目管理器三、数据库设计数据库设计是总体设计阶段非常重要的环节,数据库结构的变化会造成编码的改动,所以必须认真设计数据库结构后再进行编码,从而避免无谓的重复工作。本系统的数据库包括2个表,即会员卡信息表,登陆密码表。1.会员卡信息表(会员卡信息表.dbf)会员卡信息表(会员卡信息表.dbf)用于记录会员卡号、会员姓名、联系电话、会员积分等信息,其逻辑结构如表1所示。表1 会员卡信息表字段名称字段类型宽度小数位null会员卡号c10否会员姓名c10否联系电话c11否会员积分n100否2.登录密码表(登录密码表.dbf)登录密码表(登录密码表.dbf)用于管理员登陆系统,包括用户名、密码等信息,其逻辑结构如表2所示。字段名称字段类型宽度小数位null用户名c10否密码c10否表2 登录密码表四、各功能模块的具体设计根据系统规划和需要分析,把系统划分为会员卡信息查询,会员卡信息维护,功能模块,退出系统四个模块。本系统用到的主要有以下文件:主控程序(main.prg)、登陆界面(登陆界面.scx)、主界面(主界面.scx)、会员卡信息查询界面(会员卡信息查询.scx)、会员卡信息维护界面(会员卡信息维护.scx)、购物积分界面(购物积分.scx)、礼品兑换界面(礼品兑换.scx),主菜单(菜单1.mpr)。程序的调用关系如下:主控程序(main.prg)中调用登陆界面表单(登陆界面.scx),口令正确则调用主界面(主界面.scx)菜单1附于主界面上。各菜单项调用相对应的表单。1主控程序main.prg的代码实现为:clear&清屏close all&关闭各种类型的文件set talk off&将命令执行信息不显示在屏幕或窗口set sysmenu off&在程序执行期间废止visual foxpro主菜单栏do form 登陆界面&调用登陆界面表单on shutdown do onshutdown&退出系统时调用函数onshutdown()read events&建立事件循环on shutdown&释放当前on shutdown命令*按菜单的“关闭”按钮退出时,出现的提示框function onshutdown()sel=messagebox(真的要退出吗?,4+32+256,提示)if sel=6close allclear events&退出事件循环quit&结束当前visual foxpro工作期,将控制权返还给操作系统endifendfunc2运行主程序后,系统调用登陆界面表单(登陆界面.scx)(图3)密码验证作为系统最基本的安全管理步骤。用户如果不输入合法的用户名和密码,系统是不能进入的。当用户输入合法的用户名和密码时,系统管理会自动判断此用户,使用户的操作具有合法性。密码验证页包括用户名和密码两个部分。具体的代码实现也将在详细设计书说明。下面是密码登陆页的图示(图3):用户在文本框输入用户名及密码,若正确则调用系统主界面。图3 登陆界面1) 将登陆密码表添加到系统调用的表单的数据环境中。2) 系统调用的登陆界面中主要控件属性如表3所示。表3 系统调用的登陆界面表单控件属性对象名称属性名称属性值form1caption登陆界面autocenter.t.command1caption确认command2caption取消3) 主要事件代码:command1的click事件代码:set exact on&打开精确比较select 登陆密码表if allt(thisform.text1.value)=&如果text1为空给出提示messagebox(用户名为空,请输入!,64,提示)thisform.text1.setfocus&光标聚在text1elseif allt(thisform.text2.value)=&如果text2为空给出提示messagebox(密码为空,请输入!,64,提示)thisform.text2.setfocus&光标聚在text2elselocate for allt(用户名)=allt(thisform.text1.value);and allt(密码)=allt(thisform.text2.value)if found()&如果输入信息无误运行主界面do form 主界面thisform.releaseelsemessagebox(输入的用户名或密码错误,45,提示)thisform.text1.value=thisform.text2.value=thisform.text1.setfocusendifendifendifcommand2的click事件代码:close all&全部关闭thisform.release3.系统主界面当用户名和密码均正确的时候,系统便会进入系统主界面使用菜单1。主菜单共分为四个分菜单项:会员卡信息查询,会员卡信息维护,功能模块,退出。如图(4)图4 主界面在功能模块中分为消费获得积分和积分兑换礼物两个菜单项,在程序中含有退出程序菜单项,会员卡信息查询,会员卡信息维护,消费获得积分和积分兑换礼物分别能调用实现其对应功能的表单,退出程序即返回操作系统。1)主界面表单中主要控件属性如表4所示表4主界面表单控件属性对象名称属性名称属性值form1caption主界面autocenter.t.pictured:010040404053刘涵tulips.jpgshowwindow2-作为顶层表单2)主要事件代码:form1的init事件代码:do 菜单1.mpr with this,.t.&菜单1附在此表单上4.系统菜单设计1、 超市会员卡管理系统的菜单在应用系统中,各个模块是通过菜单组织在一起的。通过对超市会员卡管理系统的设计,可以把系统划分为4大模块:会员卡信息查询、会员卡信息维护、功能模块、程序。具体的菜单设计见表5:表5 菜单1会员卡信息查询会员卡信息维护功能模块程序消费获得积分退出程序积分兑换礼物希望在主界面中显示还需要在菜单的常规选项中勾选“顶层表单”5. 会员卡信息查询表单(会员卡信息查询.scx)会员卡信息查询表单(如图5)包括下列功能:按会员卡卡号查询,按会员姓名查询,按会员联系电话查询。本表单左边是浏览窗口,便于管理员浏览整体数据;右边是文本窗口,主要用于显示查询出来的会员信息。更重要的是,查询一定不要改变数据,也就是数据只读。图5会员卡信息查询界面1) 在表单数据环境中添加会员卡信息表(会员卡信息表.dbf)。2) 会员卡信息查询表单界面中主要控件属性如表6所示。表6 会员卡信息查询表单控件属性对象名称属性名称属性值form1caption会员卡信息查询autocenter.t.showwindow1-在顶层表单中commandgroup1buttoncount3value1grid1recordsource会员卡信息表recordsourcetype1-别名text2controlsource会员卡信息表.会员卡号readonly.t.text3controlsource会员卡信息表.会员姓名readonly.t.text4controlsource会员卡信息表.联系电话readonly.t.text5controlsource会员卡信息表.会员积分readonly.t.command1caption查询3)事件代码:command1的click事件代码:select 会员卡信息表set filter todo casecase thisform.optiongroup1.value=1set filter to 会员卡号=alltrim(thisform.text1.value)locate for 会员卡号=alltrim(thisform.text1.value)case thisform.optiongroup1.value=2set filter to 会员姓名=alltrim(thisform.text1.value)locate for 会员姓名=alltrim(thisform.text1.value)case thisform.optiongroup1.value=3set filter to 联系电话=alltrim(thisform.text1.value)locate for 联系电话=alltrim(thisform.text1.value)endcasethisform.refresh4)运行界面:(如图6)图6会员卡信息查询6.会员卡信息维护表单(会员卡信息维护. scx)会员卡信息维护表单如图7,是基于会员卡信息表(会员卡信息表.dbf),为管理员提供数据的增加,改写,编辑,删除功能的表单。功能比较复杂与多样,这个表单左边是浏览窗口,便于管理员浏览整体数据;右边是文本窗口,主要用于编辑会员卡信息,底部是一排按钮,以实现不同功能。如下图图7会员卡信息维护表单1) 在表单数据环境中加入会员卡信息表(会员卡信息表.dbf)2) 会员卡信息维护表单界面中主要控件属性如表7所示。表7会员卡信息维护表单控件属性对象名称属性名称属性值form1caption会员卡信息维护autocenter.t.grid1recordsource会员卡信息表recordsourcetype1-别名text1controlsource会员卡信息表.会员卡号text2controlsource会员卡信息表.会员姓名text3controlsource会员卡信息表.联系电话text4controlsource会员卡信息表.会员积分command1caption第一个command2caption上一个command3caption下一个command4caption最后一个command5caption增加command6caption编辑command7caption保存command8caption删除3) 各事件的代码如下:command1的click事件代码:thisform.text1.readonly=.t.thisform.text2.readonly=.t.thisform.text3.readonly=.t.thisform.text4.readonly=.t.go topthisform.refreshcommand2的click事件代码:thisform.text1.readonly=.t.thisform.text2.readonly=.t.thisform.text3.readonly=.t.thisform.text4.readonly=.t.skip -1if bof()go topendifthisform.refresh command3的click事件代码:thisform.text1.readonly=.t.thisform.text2.readonly=.t.thisform.text3.readonly=.t.thisform.text4.readonly=.t.skipif eof()go bottomendifthisform.refreshcommand4的click事件代码:thisform.text1.readonly=.t.thisform.text2.readonly=.t.thisform.text3.readonly=.t.thisform.text4.readonly=.t.go bottomthisform.refreshcommand5的click事件代码:thisform.text1.readonly=.f.thisform.text2.readonly=.f.thisform.text3.readonly=.f.thisform.text4.readonly=.f.select 会员卡信息表append blankgo bottomthisform.text1.setfocus()thisform.refreshcommand6的click事件代码:thisform.text1.readonly=.f.thisform.text2.readonly=.f.thisform.text3.readonly=.f.thisform.text4.readonly=.f.select 会员卡信息表thisform.text1.setfocusthisform.refreshcommand7的click事件代码:replace 会员卡号 with alltrim(thisform.text1.value)replace 会员姓名 with alltrim(thisform.text2.value)replace 联系电话 with alltrim(thisform.text3.value)replace 会员积分 with thisform.text4.valuethisform.text1.readonly=.t.thisform.text2.readonly=.t.thisform.text3.readonly=.t.thisform.text4.readonly=.t.thisform.refreshcommand8的click事件代码:select 会员卡信息表hx=会员卡信息表.会员卡号sel=messagebox(真的要删除?,1)if sel=1deletepackthisform.grid1.recordsourcetype=1thisform.grid1.recordsource=会员卡信息表endif4)该表单的运行图示如下(图8)图8会员卡信息维护表单7.功能模块设计功能模块要求能实现购物时得到会员积分、根据会员卡上的积分换礼物的要求。因此我设计了两个表单分别来满足这两个功能需求。7.1购物获得积分表单设计(购物积分.scx)设计界面如图9,界面如下:图9购物积分表单1) 将会员卡信息表(会员卡信息表.dbf)添加到该表单的数据环境中。2) 购物积分表单中主要控件属性如表8所示。表8购物积分表单控件属性对象名称属性名称属性值form1caption购物积分autocenter.t.command1caption确认command2caption取消3)各事件的代码如下:command1的click事件代码为:select 会员卡信息表locate for alltrim(会员卡号)=alltrim(thisform.text1.value)if found()m=val(thisform.text2.value)replace 会员积分 with 会员积分+m messagebox(积分录入成功!)elsemessagebox(卡号输入错误!)endif*录入积分成功用户会得到明确的回应。command2的click事件代码为:close allthisform.release4)表单运行图如下(图10):图10购物积分表单7.2礼品兑换表单设计(礼品兑换.scx)设计图如图11,界面如下:图11礼品兑换表单1)将会员卡信息表(会员卡信息表.dbf)添加到该表单的数据环境中。2)礼品兑换表单中主要控件属性如表9所示。表9礼品兑换表单控件
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年事业单位工勤技能-江苏-江苏垃圾清扫与处理工五级(初级工)历年参考题库含答案解析(5套)
- 2025年事业单位工勤技能-广西-广西水工监测工一级(高级技师)历年参考题库典型考点含答案解析
- 2025年事业单位工勤技能-广西-广西房管员三级(高级工)历年参考题库典型考点含答案解析
- 2025年事业单位工勤技能-广西-广西园林绿化工三级(高级工)历年参考题库典型考点含答案解析
- 2025年事业单位工勤技能-广西-广西保安员四级(中级工)历年参考题库典型考点含答案解析
- 2025年事业单位工勤技能-广东-广东计量检定工一级(高级技师)历年参考题库含答案解析
- 2025年事业单位工勤技能-广东-广东水文勘测工二级(技师)历年参考题库含答案解析
- 2025年事业单位工勤技能-安徽-安徽土建施工人员四级(中级工)历年参考题库典型考点含答案解析
- 2025年事业单位工勤技能-北京-北京铸造工五级(初级工)历年参考题库典型考点含答案解析
- 热风炉安全知识培训内容课件
- 合作社和公司合作协议书(2篇)
- 路试作业安全操作规程(4篇)
- keycloak中文使用文档-Keycloak使用手册(打印版)
- 医药代表大客户管理经验分享
- 教师安全教育培训内容
- 人教版八年级下册地理2024-2025学年八年级下册地理期末综合测试卷(二)(含答案)
- 密态深度学习-记录
- 医院医学院医疗机构培训《烧伤病人护理教学查房》课件
- 家政服务协议书范本
- 中小学生研学旅行投标方案(技术方案)
- 成人手术后疼痛评估与护理-中华护理学会团体标准2023 2
评论
0/150
提交评论