1、化妆品销售管理系统课程名称:空间数据库基础专 业:地理信息系统班 级:0624111设 计 组:第七小组设 计 者:潘晓洋 秦建雨 刘钲 任高鹏指导教师:苗东利、毛政利设计时间:2012 年 12 月河南城建学院测绘与城市空间信息系一、课题及任务 - 2 -1. 课题简介 - 2 -2. 任务分派 - 2 -二、系统需求分析调查 - 3 -1.系统需求分析 - 3 -2.系统功能简介 - 3 -三、系统设计 - 4 -1.系统总体设计 - 4 -2.系统详细设计 - 4 -3.数据库设计 - 4 -四、系统实施 - 5 -1.数据资源 - 5 -月销售记录 - 5 -积分表 - 5 -资料表
2、- 5 -密码 - 6 -天销售记录 - 6 -年销售记录 - 6 -2.主程序设计 - 7 -3.主要工作窗口 - 7 -1.欢迎界面 - 7 -2.登陆表单 - 8 -3、主界面 - 9 -4.用户注册 - 17 -5.修改密码表单 - 17 -6.用户注销 - 18 -7.信息查询表单 - 19 -8.查询结果浏览表单 - 20 -9.基本信息修改表单 - 21 -10删除表单 - 23 -11、商品增添表单 - 24 -12、会员注册表单 - 25 -13.积分查询表单 - 26 -14.积分表单 - 27 -15.积分用户注销 - 29 -16.销售表单 - 29 -17、关于表单
3、- 31 -4.菜单设计 - 32 -五、设计体会 - 33 -六、参考文献 - 34 -Visualfoxpro 课程设计- 2 -一、课题及任务1. 课题简介根据化妆品店的实际需求,开发的一个运行良好,管理方便的,便于销售,便于查询的管理系统。2. 任务分派刘钲: 建立资料表,积分表,天销售记录表,月销售记录表,年销售记录表,登陆表单,欢迎表单,用户注销表单;秦建雨:信息查询表单,信息修改表单,信息增添表单,信息删除表单任高鹏:积分(注册,查询,增添,注销)潘晓洋:建立数据库,销售系统(销售表单,记录的删除(天记录,月记录,年记录)报表:天销售报表,月销售报表,年销售报表,关于表单,菜单与
4、表单的挂载,主程序,连编,调试,界面美化。Visualfoxpro 课程设计- 3 -二、系统需求分析调查1.系统需求分析现在发展迅速的信息时代,古老的纸质文档管理机制已不能很好的满足各大商家日常的管理与销售,一种有条理、简洁的管理系统迫切被需求。2.系统功能简介本系统具有基本的查询,增添,删除修改信息的功能,便捷易操作。在此基础之上,还增添了积分功能,使得来本店购买化妆品的每一个顾客都有一个记录,通过积分来促进销售,达到盈利倍增的目的。本系统支持多用户,可设置多个用户进行相同的管理。销售界面上具有保存记录的功能,可以通过相对应的菜单进行删除,使得管理更加人性化。通过本系统可以清晰地直观的看到
5、各个数据的相关信息,使得浏览速度更加快捷,使用起来更加方便Visualfoxpro 课程设计- 4 -三、系统设计1.系统总体设计2.系统详细设计系统管理模块:登录密码的修改,新管理员的密码账号的创建,管理员信息的注销,退出系统;数据更新维护模块:化妆品信息的基本查询,信息的修改,化妆品的删除,化妆品的增添;积分模块:积分用户的注册,积分的查询,积分值的添加,积分用户的注销;销售模块:1.销售3.数据库设计Visualfoxpro 课程设计- 5 -四、系统实施1.数据资源月销售记录积分表资料表Visualfoxpro 课程设计- 6 -密码天销售记录年销售记录Visualfoxpro 课程设
6、计- 7 -2.主程序设计 主程序:SET TALK OFFCLEAR ALLclose allclear all_SCREEN.VISIBLE=.F.set sysmenu offset defa to sys(5)+sys(2003)+do FORM 欢迎界面.scxread eventsRETURN QUIT3.主要工作窗口1.欢迎界面FormInitPUBLIC i as Integer i=1timetimeri=i+1Visualfoxpro 课程设计- 8 -IF i=9 THEN thisform.Visible= .F.RELEASE thisformDO FORM 登录.s
7、cxENDIF2.登陆表单数据环境:密码.dbfForm1 InitPUBLIC count as Integer count=1Combo1.rowsourcetype=6Combo1.rowsource=密码.姓名Oleboundcontrol1 控件:Recordsource=密码.头像command1 click:count=count+1loca for ALLTRIM(密码.姓名)=alltrim(bo1.value)IF thisform.text2.Value=“MESSAGEbox(“输入不能为空!“)elseif found()and ALLTRIM(密码.密码)=allt
8、rim(thisform.text2.value)DO FORM 主窗体.scxrelease thisformelseif count=thisform.text2.value and 单价=thisform.text3.value into cursor temp endcasedo form 查询结果浏览.scxcommand2click:release thisform8.查询结果浏览表单Visualfoxpro 课程设计- 20 -Form1init:Thisform.grid1.recordsourcr=tempThisform.grid1.refresh9.基本信息修改表单数据环
9、境:资料.dbfForm1init:thisform.text2.Enabled= .F.thisform.text3.Enabled= .F.thisform.text4.Enabled= .F.thisform.text5.Enabled= .F.thisform.text6.Enabled= .F.thisform.text2.readonly= .t.thisform.text3.readonly= .t.thisform.text4.readonly= .t.thisform.text5.readonly= .t.Visualfoxpro 课程设计- 21 -thisform.tex
10、t6.readonly= .t.Command1click:GO topLOCATE ALL FOR ALLTRIM(资料.编号)=ALLTRIM(thisform.text1.Value)IF thisform.text1.Value=“MESSAGEBOX(“查询不能为空!“,48,“温馨提示“)elseIF FOUND()thisform.text2.Value=编号thisform.text3.Value=品名thisform.text4.Value=单价thisform.text5.Value=规格thisform.text6.Value=数量ELSEMESSAGEBOX(“无此记录
11、“,48,“温馨提示“)endifendifcommand2click:DO CASE CASE thisform.check5.value=1replace 编号 WITH ALLTRIM(thisform.text2.Value)CASE thisform.check1.Value=1replace 品名 WITH ALLTRIM(thisform.text3.Value) CASE thisform.check2.Value=1replace 单价 WITH thisform.text4.Value CASE thisform.check3.Value=1replace 规格 WITH
12、ALLTRIM(thisform.text5.Value) CASE thisform.check4.Value=1replace 数量 WITH thisform.text6.Value ENDCASEMESSAGEBOX(“修改成功!“)Command3 thisform.text1.Value=“thisform.text1.setfocuscheck1click:thisform.text3.Enabled= .t.Visualfoxpro 课程设计- 22 -thisform.text3.readonly= .f.check2click:thisform.text4.Enabled=
13、 .t.thisform.text4.readonly= .f.check3click:thisform.text5.Enabled= .t.thisform.text5.readonly= .f.check4click:thisform.text6.Enabled= .t.thisform.text6.readonly= .f.check5click:thisform.text2.Enabled= .t.thisform.text2.readonly= mand4click:RELEASE thisform10删除表单数据环境:资料.dbfForm1init:thisform.list1.V
14、isible= .F.text1enteractivechange:thisform.list1.RowSource=”sele 品名 from 资料 where 品名 likeALLTRIM(thisform.text1.value)+% into cursor temp “thisform.list1.Refreshlist1click:thisform.text1.Value=thisform.list1.Value thisform.list1.Visible= .F.command1click:USE 资料.dbf EXCLUSIVEVisualfoxpro 课程设计- 23 -GO
15、 toploca ALL FOR 品名=alltrim(thisform.text1.value)IF FOUND()DELETE ALL FOR 品名=alltrim(thisform.text1.value)PACK MESSAGEBOX(“success!“)ELSE MESSAGEBOX(“no record!“)endif11、商品增添表单数据环境:资料.dbfCommand1click:SELECT 资料IF thisform.text1.Value=“ OR ;thisform.text1.Value=“ OR thisform.text2.Value=“MESSAGEBOX(“
16、输入不能为空!“,48,“温馨提示“)ELSEAPPEND blankreplace 编号 WITH ALLTRIM(thisform.text1.value)replace 品名 WITH ALLTRIM(thisform.text2.value)replace 单价 WITH thisform.text3.valuereplace 规格 WITH ALLTRIM(thisform.text4.value)replace 数量 WITH thisform.text5.valueMESSAGEBOX(“success!“)ENDIFVisualfoxpro 课程设计- 24 -Command2
17、click:thisform.text1.value=“thisform.text2.value=“thisform.text3.value=0thisform.text4.value=“thisform.text5.value=012、会员注册表单数据环境:积分表.dbfCommand1click:a=alltrim(thisform.text1.value)b=alltrim(thisform.text2.value)c=thisform.text3.valueif a=“.or.b=“.or.c=0messagebox(“输入不能为空!“,48,“温馨提示“)elseappend bla
18、nkreplace 姓名 with areplace 学号 with breplace 积分 with cmessagebox(“注册成功!“)endifcommand2click:Visualfoxpro 课程设计- 25 -thisform.text1.Value=“thisform.text2.Value=“thisform.text3.Value=013.积分查询表单数据环境:积分比表.dbfCommand1click:SELECT 积分表GO topDO CASE CASE thisform.optiongroup1.value=1IF thisform.text4.value=“M
19、ESSAGEBOX(“输入不能为空!“,48,“温馨提示“)elseLOCATE FOR 姓名=ALLTRIM(thisform.text4.Value )IF EOF()MESSAGEBOX(“查询信息不存在!“,48,“温馨提示“)elsethisform.text6.Value=积分ENDIFENDIFCASE thisform.optiongroup1.Value =2IF thisform.text5.value=“MESSAGEBOX(“输入不能为空!“,48,“温馨提示“)elseVisualfoxpro 课程设计- 26 -LOCATE FOR 学号=ALLTRIM(thisf
20、orm.text5.Value )IF EOF()MESSAGEBOX(“查询信息不存在!“,48,“温馨提示“)elsethisform.text6.Value=积分thisform.RefreshENDIFENDIFENDCASECommand2click:thisform.text4.Value=“thisform.text5.Value=“14.积分表单数据环境:资料表.dbfCommand1click:SELECT 积分表GO topDO CASE CASE thisform.optiongroup1.value=1IF thisform.text4.value=“MESSAGEBO
21、X(“输入不能为空!“,48,“温馨提示“)elseLOCATE FOR ALLTRIM(积分表.姓名)=ALLTRIM(thisform.text4.Value )IF EOF()Visualfoxpro 课程设计- 27 -MESSAGEBOX(“查询信息不存在!“,48,“温馨提示“)elsethisform.text6.Value=积分ENDIFENDIFCASE thisform.optiongroup1.Value =2IF thisform.text5.value=“MESSAGEBOX(“输入不能为空!“,48,“温馨提示“)elseLOCATE FOR ALLTRIM(积分表
22、.学号)=ALLTRIM(thisform.text5.Value )IF EOF()MESSAGEBOX(“查询信息不存在!“,48,“温馨提示“)elsethisform.text6.Value=积分thisform.RefreshENDIFENDIFENDCASECommand2click:thisform.text4.Value=“thisform.text5.Value=“Command3click:SELECT 积分表DO CASE CASE thisform.optiongroup1.value=1LOCATE ALL FOR 姓名=ALLTRIM(thisform.text4.
23、value)replace 积分 WITH thisform.text6.value+thisform.text8.valueMESSAGEBOX(“success!“)CASE thisform.optiongroup1.value=2LOCATE ALL FOR 学号=ALLTRIM(thisform.text5.value)replace 积分 WITH thisform.text6.value+thisform.text8.valueMESSAGEBOX(“success!“)ENDCASECommand4click:thisform.text6.Value=0Visualfoxpro
24、 课程设计- 28 -thisform.text8.Value=015.积分用户注销数据环境:积分表.dbfCommand1click:CLOSE TABLES ALL USE 积分表.dbf EXCLUSIVE LOCATE ALL FOR 学号=ALLTRIM(thisform.text7.value)IF EOF()MESSAGEBOX(“注销用户不存在!“,48,“温馨提示“)ELSEIF thisform.text7.Value=“MESSAGEBOX(“注销不能为空!“,48,“温馨提示“)elsea=messagebox(“是否删除?“,4+32+0,“温馨提示“)if a=6d
25、ele ALL FOR 学号=ALLTRIM(thisform.text7.value) packmessagebox(“删除成功!“)ENDIFENDIFENDIFthisform.Refresh16.销售表单Visualfoxpro 课程设计- 29 -数据环境:资料.dbf Command1click:IF thisform.text5.Value=0.0thisform.text6.Value=thisform.text3.value*thisform.text4.ValueELSEthisform.text6.Value=thisform.text3.value*thisform.t
26、ext4.Value*thisform.text5.Value/10ENDIFCommand2click:CLOSE TABLES ALL USE 天销售记录GO topAPPEND blankreplace 品名 WITH ALLTRIM(thisform.text1.value)replace 编号 WITH ALLTRIM(thisform.text2.value)replace 数量 WITH thisform.text4.Valuereplace 单价 WITH thisform.text6.valueMESSAGEBOX(“写入成功!“)Command3click:CLOSE TABLES ALL USE 月销售记录GO topAPPEND blank