1、VB课程设计报告课程设计报告课程设计题目:超市销售管理 学生姓名:专 业:班 级:学 号:指导教师: 年 月 日摘 要超市销售管理是相当繁重的工作,牵涉到超市商品入库管理、更新管理和销售统计管理等。由于商品记录的数量众多、管理复杂容易造成混乱,超市销售管理系统可以实现对整个商品信息进行准确而高效的记载。本系统的主要功能及任务是:方便顾客对商品信息进行浏览;方便工作人员对超市的商品信息进行浏览、查找并进行管理;提供一个电子化的超市销售管理平台。为满足为超市服务这一基本功能,数字超市应定位于信息服务,对商品的记录的高效而准确的管理系统设计的出发点和最终目的,既要能够满足顾客和服务人员的一般需求,又
2、要能够针对用户的类型、需求特征等确定它的的权限以便进行管理。 超市销售管理系统以超市实际销售管理情况为依据,提供了商品入库、查找和更新,统计查询等实用而丰富的功能。本系统使用Visual Basic 6.0中文版作为开发工具,后台数据库采用 Microsoft Access 的MDB数据库。关键词:超市销售管理系统,SQL, VB ,数据库,控件,控件与数据库的绑定 目 录一、实验目的4二、实验要求4 三系统功能简介41 系统概述42 系统的组成及各模块的功能43 系统的运行环境4四系统设计51 总体结构设计52 数据库设计6五系统实现71 登录模块的设计和实现72 主界面的设计与功能83 查
3、询的功能与实现174 销售统计的查看185 退出系统的实现19六.总结191 遇到及解决的问题192 心得体会20一、实验目的:使学生在理论课程结束之后,通过课程设计能进一步巩固对VB编程机制的理解,真正掌握运用VB进行软件开发的方法和原理,从而锻炼学生开发能力、程序调试能力,及程序错误处理能力二、实验要求:要求实现登录管理,超市销售商品管理(商品的添加,删除,和修改),查看超市的全部销售记录,可按销售记录号,销售商品名称查询相关销售记录、销售统计功能三、系统功能简介: 1.系统概述随着超市的规模不断扩大,商品数量急剧增加,有关商品的各种信息量也成倍增长。面对庞大的信息量,需要有超市销售管理系
4、统来提高销售管理工作的效率。通过这样的系统,可以做到信息的规范管理、科学统计和快速的查询,从而减少管理方面的工作量。2.系统的组成以及各模块的功能系统开发的总任务是实现商品信息关系的系统化、规范化和自动化。系统主要由五部分组成:系统用户的管理、商品销售的管理、销售记录信息的管理、信息的查询,其中还包括登录界面以及销售的统计模块。各模块的主要功能如下:系统用户的管理:实现用户的登陆商品销售的管理:实现商品信息的添加、删除和修改。销售记录的查询:实现销售记录的查询、成绩的查询。3.系统的运行环境系统使用环境操作系统:windows xp/2000/me/98系统支持: visual basic 6
5、.0及以上版本数据库: access系统开发环境操作系统:windows xp/2000/me/98系统支持: visual basic 6.0四、 系统设计1.总体结构设计对上述各项功能进行集中、分块,按照结构化层序设计的要求,得到如下所示的系统功能功能模块图。2.数据库设计数据库在本超市销售管理系统中占有非常重要的地位,数据库结构的好坏将直接对应用系统的效率以及实现的效率产生影响。合理的数据库及结构设计可以提高数据存储的效率,保证数据的完整和一致。同时合理的数据库结构也将有利于程序的实现。设计本系统的数据库应该充分满足用户的需求。针对一般超市销售管理系统的需求,通过对销售的内容的分析,设计
6、如下面所示的数据项和数据结构(1)基本信息表:包括的字段有:商品记录号,商品名称,商品价格,销售情况,商品库存。(2)得到上面的数据项就可以设计出能够满足用户需求的各种实体以及他们之间的关系。由上面的设计规划出的实体有:用户实体、信息实体。按照以上实体进行设计:(1)打开可视化数据管理器程序(2)建立数据库(3)创建数据库表(4)添加字段(5)生成表 添加内容基本信息表:字段名称数据类型字段大小商品记录号文本8商品名称文本7商品价格文本6销售情况数字8商品库存数字8五、系统实现现在已经完成了程序各个功能模块的创建,现在可以进行系统的实现了1、登录模块的设计和实现 用户名及密码默认为:admin
7、。 核心代码:Private Sub Command1_Click() If Text1.Text = admin And Text2.Text = admin Then Form2.Show 用户名、密码正确则显示窗体2 Unload Me 然后自我卸载 Else 用户名或者密码错误的情况下: MsgBox 用户或密码错误,请重新输入!, , 提示: Text1.Text = Text2.Text = Text1.SetFocus End IfEnd SubPrivate Sub Command2_Click() Unload MeEnd Sub2、主界面的设计与功能: 使用一个data控件
8、与数据库连接在文本框上一一将数据库里的内容显示出来。核心代码:Private Sub Form_Load() 初始化设置 Form2.Left = (Screen.Width - Form1.Width) / 4 Form2.Top = (Screen.Height - Form1.Height) / 4 Timer1.Interval = 200 Text1.ForeColor = vbRed Data1.RecordSource = 销售管理 Data1.Refresh txtname.Locked = True txtprice.Locked = True txtrecord.Locke
9、d = True txtsale.Locked = True txtstore.Locked = True txtname.DataField = 商品名称 txtprice.DataField = 商品价格 txtrecord.DataField = 商品记录号 txtsale.DataField = 销售情况 txtstore.DataField = 商品库存End SubPrivate Sub Addnew_Click() 实现商品添加功能 Select Case Addnew.Caption Case 添加 txtname.Locked = False 解除文本框锁定,进行添加 txt
10、price.Locked = False txtrecord.Locked = False txtsale.Locked = False txtstore.Locked = False txtrecord.SetFocus Data1.Recordset.Addnew 商品信息加入数据库 Addnew.Caption = 确定 Case 确定 If txtname.Text And txtprice.Text And txtrecord.Text Then Data1.UpdateRecord 数据库更新 Addnew.Caption = 添加 Else txtname.Locked = Fa
11、lse txtprice.Locked = False txtrecord.Locked = False txtsale.Locked = False txtstore.Locked = False MsgBox 您还未输入完成,请补充完整! End If txtname.Locked = True txtprice.Locked = True txtrecord.Locked = True txtsale.Locked = True txtstore.Locked = True End SelectEnd SubPrivate Sub Cancel_Click() 实现取消添加和修改功能 D
12、ata1.Recordset.MoveFirst 显示第一条数据 Addnew.Caption = 添加 Edit.Caption = 修改End SubPrivate Sub Delet_Click() 实现商品信息删除功能 Dim i% i = MsgBox(确认要删除此记录?, vbYesNo + vbExclamation, 提示:) If i = vbYes Then Data1.Recordset.Delete 删除当前的数据库记录 Data1.Refresh End IfEnd SubPrivate Sub Edit_Click() 实现商品信息修改功能 Select Case
13、Edit.Caption Case 修改 txtname.Locked = False txtprice.Locked = False txtrecord.Locked = False txtsale.Locked = False txtstore.Locked = False Data1.Recordset.Edit 编辑当前数据记录 Edit.Caption = 确定 Case 确定 Data1.UpdateRecord txtname.Locked = True txtprice.Locked = True txtrecord.Locked = True txtsale.Locked =
14、 True txtstore.Locked = True Edit.Caption = 修改 End SelectEnd SubPrivate Sub First_Click() 显示第一条 Data1.Recordset.MoveFirstEnd Sub Private Sub Last_Click() 显示最后一条 Data1.Recordset.MoveLastEnd Sub Private Sub Next_Click() 显示下一条 Data1.Recordset.MoveNext If Data1.Recordset.EOF Then Data1.Recordset.MoveLas
15、tEnd Sub Private Sub Previous_Click() 显示上一条 Data1.Recordset.MovePrevious If Data1.Recordset.BOF Then Data1.Recordset.MoveFirstEnd Sub Private Sub 查询_Click() 弹出查询体 Me.Hide Form3.ShowEnd Sub Private Sub 统计_Click() 弹出统计窗体 Me.Hide Form4.ShowEnd Sub Private Sub 注销_Click() 返回登录界面 Unload Me Form1.ShowEnd S
16、ub3、查询的功能与实现: 核心代码:Private Sub Command1_Click() Dim sql$ If Option1(0).Value = True Then sql = select 商品记录号,商品名称,商品价格,销售情况,商品库存 from 销售管理 where 商品记录号= + Text1(0).Text + Adodc1.RecordSource = sql Adodc1.Refresh DataGrid1.Visible = True Else sql = select 商品记录号,商品名称,商品价格,销售情况,商品库存 from 销售管理 where 商品名称=
17、 + Text1(1).Text + Adodc1.RecordSource = sql Adodc1.Refresh DataGrid1.Visible = True End IfEnd Sub4、销售统计的查看: 核心代码: 使用datagrid控件的visible属性值来实现查看功能Private Sub listshow_Click() DataGrid2.Visible = TrueEnd SubPrivate Sub cmdok_Click() Dim h% h = MsgBox(是否显示所有记录, vbYesNo + vbInformation, 提示:) If h = vbYe
18、s Then DataGrid1.Visible = True End If5、退出系统的实现: Private Sub 退出系统_Click() 退出系统 Unload Me Unload Form3 Unload Form4End Sub 五、小结1 遇到及解决的问题主要问题1:数据库建立以后无法与控件绑定,在系统运行时,无法通过系统对数据库的信息进行编辑,修改,删除。解决:通过看课本,查资料,以及询问老师等途径知道自己没有设置data控件的数据绑定常用属性,还有一些代码不是和数据库相应的位置连接的。主要问题2: 由于窗体喝控件太多,使得编写代码时,总是出现数据库与控件案不对应的情况。解决
19、方法:只要细心,认真就可以做的好。2 心得体会设计之前由于数据库知识的空白,使得我们毫无头绪,无从下去手,只是盲目的按照课本和参考资料进行设计和编程,没有动脑子思考,也没有进行结构的规划,使得我们的程序进行到一半时夭折,那时候我们就开始意识到,不应该盲目,我们认真地看了课本,有了数据库的思想和思路,自己又重新规划了系统的结构,但是由于时间的关系,我们错过了中期检查,但是我们并没有气馁,而是更加热情地的投入到系统的设计中,但我们又出现了新问题,我和另一个男生本来分工合作的,可是我们的窗体总是衔接不上,而且数据库也不同,而我们又都想尝试一下其他窗体的创建,获得更多的知识,于是我们最终各自完成了各自的管理系统。 这次课程设计实习我流的汗和泪,都是以成功的完成课程设计任务为收获的。不断的调试,使我认识即时丁点的错误也可以导致系统的非正常运行,细节决定成败。我只有在以后的学习之路上做到一丝不苟,才能获得成功.
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1