超市管理系统正文.doc_第1页
超市管理系统正文.doc_第2页
超市管理系统正文.doc_第3页
超市管理系统正文.doc_第4页
超市管理系统正文.doc_第5页
已阅读5页,还剩36页未读 继续免费阅读

下载本文档

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

文档简介

摘 要现在为方便小区居民生活社区便利超市已运而生,随着社区超市所售商品的不断增多,有关商品的各种信息量也成倍增长。仅仅依靠以往的人工记账操作和商品管理已经不能应付超市的日常工作,超市随时需要对商品各种信息进行统计分析,其中包括进货管理,销售管理,退货管理和基本系统管理等功能。本系统正是针对这些需要为目的开发的。系统实现了超市日常经营管理所必需的交易管理,进货统计,销售统计,查看数据表,系统管理等基本功能模块。并且在每个模块中又分别实现了若干相应的子功能。并且针对超市中的具体情况进行了不同权限的设置,不同权限的可以进行不同操作。系统主要利用VB6.0作为前端的应用开发工具,利用Access作为后台的数据库。首先经过总体设计后再进行各功能模块逐一设计,然后通过各模块编程、调试,最后的组合调试和数据测试最终调试成功。关键词:物资管理系统 VB6.0 数据库ABSTRACTA supermarket management system is an indispensable part in the management process for supermarket, it is vital for decision-makers and managers of the supermarket, because a supermarket management system can provide enough information for users, increase the benefits and save the cost. The system is developed just for this purpose. VB6.0 is taken as the foreground development tool while Access is taken as the background database. Five functional modules are implemented in the system, including exchange management, stock statistic, sale statistic, viewing data tables, system management etc. Many subsystems corresponding with the modules are also implemented. The system is easy to use, and the interface is laconic and decent.Keywords: Materials management system VB6.0 Database第一章 绪论1.1超市管理系统的发展现状以及前人做出的成就计算机信息系统的发展有以下四个阶段:第一阶段(1954-1964)电子数据处理阶段(EDP)。此阶段以单项数据处理为主,如财务管理、物资管理、工资管理等。第二阶段(1964-1974)管理信息系统阶段(MIS)。在这期间,由于高速度的处理机、高速度大容量的存储器与其它器件有了突破性进展,使得计算机应用系统从单项应用的EDP发展到多功能、多层次、综合性的应用阶段,使得MIS日渐成熟,具有了控制、预测、辅助和决策的功能。 第三阶段(1974-1980)决策支持系统阶段(DSS)。在此阶段解决的主要是面向高层管理,大范围的决策问题以及非结构化信息的处理。第四阶段(1980-)职能管理系统阶段(IMS)。这个阶段强调的是综合管理功能,多维服务模式,人机协调的、智能化的、集成化的计算机辅助管理功能等。据统计,目前美国在物资管理中80-100%的信息处理由计算机完成。由此可以看出,当今物资管理对计算机的依赖程度已经达到一个前所未有的水平。可以说,没有信息化的支撑,就不可能实现现代零售商业的高效率管理。1.2超市管理系统的背景及意义当今社会是一个信息社会,是一个知识经济时代。谁控制的信息越多,谁利用信息资源的效率越高,谁就会在各方面的竞争中占有一席之地,谁就会有更多的优势。管理信息系统(MIS)的概念是1961年美国人J.D.GALLAGHER首先提出来的,它是一门新兴的、集管理科学、信息科学、系统科学及计算机科学为一体的综合性学科,研究的是企业中信息管理活动的全过程,以便有效的管理信息,提供各类管理决策信息,辅助企业进行现代化管理。随着超市规模的发展不断扩大,商品数量急剧增加,有关商品的各种信息量也成倍增长。超市在时时刻刻需要对商品各种信息进行统计分析,如日报表、月报表、年报表,员工信息的管理等。以上说明开发一套超市管理系统具有积极的现实意义。 1.3本文所做的主要工作本文是针对超市管理方面的需求开发设计了一套适合超市管理应用的计算机管理信息系统。论文对系统进行了较为全面的业务需求分析,并进行有针对性的系统设计,包括开发平台和工具选型、功能模块设计、数据库设计等,最后选用VB 6.0和Access数据库进行了系统实现,并进行了相应的系统测试和调试。第二章 系统可行性与需求分析2.1系统的可行性分析该系统所需硬件设备,如服务器、PC机、打印机及网络配件等,与过去相比这些设备在性能上已经有了很大提高,价格又相对较低,能满足系统功能需求。软件上,操作系统采用WINDOWSXP,数据库采用ACCSEE,这些软件在MIS开发中已被大量应用,技术上都比较成熟,因此技术上是可行的。本系统属于一个工具型的系统,它可以将工作人员从手工操作中解脱出来,而且可以迅速准确地进行录入、整理、查询、修改,极大地提高工作效率,同时促进业务的规范化、程序化,及时给各级领导提供必要的信息统计。系统开发所需的费用是比较低的,由于系统并不复杂,其运行与培训费用也不会占用很多资金,可以预见系统完成后可以带来较大的经济效益。2.2需求分析2.2.1系统需求超市管理系统开发应该满足一定的需求。1) 满足超市行业经营管理的基本要求。2) 进行多层次数据汇总,为经营管理决策者、普通职员等各层次的管理者提供数据支持。 3) 提供方便灵活的数据查询功能,满足繁杂,多样的数据查询需求。4) 对操作人员的技能要求比较低,操作方便。5) 能够实现方便的扩展,满足超市企业发展的需要。6) 能够保障管理数据的安全,准确。2.2.2功能需求在对超市行业的组织结构及职能充分调查了解后,依据对超市行业的数据流动特点的分析,现在可以进行系统的功能分析。根据软件工程的原理,需求分析的任务是确定系统必须完成的工作。经过详细的调研分析之后,可以得出超市管理系统必须具备的功能下:1) 交易管理:在交易管理中要实现进货登记、销售登记、退货登记这三大功能模块。第一,在进货登记这个模块下要实现对入库的每个商品及其对应的供货商的详细信息(例如,进货编号、商品编号、厂商名称、联系人等等)一一记录的功能。第二,在销售登记这个模块下要实现对已售出商品的详细信息(例如,销货编号,生产厂商,销售日期等等)一一记录的功能。第三,在退货登记这个模块下要实现对退货商品的详细信息(例如,退货编号,销售日期,退货日期,生产厂商等等)一一记录的功能。2) 进货统计:在进货统计中包括今日进货统计、本月进货统计、本季度进货统计、本年度进货统计这四个功能模块。本系统需要实现无论按日,按月还是按季度,按年都可以查询相应时间段内进货的详细信息(例如,进货编号、商品名称、生产厂商、总金额等等)这样的功能。3) 销售统计:在销售统计中包括今日销售统计、本月销售统计、本季度销售统计、本年度销售统计这四个功能模块。本系统需要实现无论按日,按月还是按季度,按年都可以查询相应时间段内货物销售的详细信息(例如,销货编号、商品名称、销售时间、销售单价等等)这样的功能。4) 查看数据表:在这一功能模块中要实现随时随地查看超市的进货表、现存商品表、销售表、退货表、管理员工表、进货商表这六项表格的功能。从而达到为超市管理人员提供了超市运营的各种实时数据,以便其做出正确的决策的目的。5) 系统管理: 在这一功能模块中要需要实现更换用户、修改密码、退出系统这三项功能。以便用户在进入后可以根据自己的需要进行更改密码,调换用户重新登陆和退出本系统。6)数据库管理:在本系统中管理员应该可以对现有的数据库进行管理和维护,包括数据备份和恢复等,从而达到提高系统的数据安全性的目的。 2.2.3硬件需求硬件环境:在最低配置的情况下,系统的性能往往不令人满意,现在的硬件性能已经相当出色,而且价格也很便宜,因此我们通常给服务器端配置高性能硬件。以下为最低配置:处理器:Inter Pentium IV 或更高内存:1GB以上硬盘空间:10GB以上显卡:SVGA 显示适配器操作系统:Windows XP数据库:Microsoft Access 2003第三章 系统设计3.1系统功能设计系统开发的总体任务是实现各种信息的系统化、规范化和自动化。系统功能分析是在系统开发的总体任务的基础上完成。根据系统需要与任务的分配要完成的主要任务与功能有:对本系统的登录模块的实现,根据不同的用户权限来登录到主窗体。对本统主要界面的设计实现,在主界面中要实现五个弹出菜单;有交易管理菜单,进货统计菜单,销售统计菜单,查看数据表菜单,系统管理菜单。(1)交易管理:包括进货登记、销售登记、退货登记等。其中进货登记中还包含进货商登记,如果是新的进货厂商,可以直接在此登记入库。进货和销售的主要交易都是在此进行。每次交易(包括进货、销货和退货)都需要对商品名称、生产厂商、商品型号、单价、数量、总金额、交易日期、经手业务员编号等各项记录。在交易过程中,程序的编写尽可能的方便员工进行交易,比如:进货登记时,如果商品编号相同,则自动添加该商品的相关属性;销货登记时,用户只要输入商品编号,该商品的属性即可自动出现。退货登记时,只要输入正确的销货编号,其销售信息也将自动列出,尽量的方便用户的操作,同时对于登陆的员工编号程序也自动的将其列在进货登记、销货登记中,以防止员工进行非正常的交易。(2)进货统计:包括今日进货统计、本月进货统计、本年度进货统计等。其中每次进货统计都是按进货厂商和进货总金额统计显示的。使用一个表格显示所选时间段的全部进货数据,包括进货编号、商品名称等。再使用另一个表格显示分别从各个厂商进货的金额,还有一个文本框用于显示次时间段的进货总金额。(3)销货统计:包括今日销售统计、本月销售统计、本季度销售统计、本年度销售统计等,其中每次销售统计都是按生产厂商和销售总金额统计显示的。使用一个表格显示所选时间段的全部销售数据,包括销货编号、商品名称等。再使用另一个表格显示分别从各个厂商进货的金额,还有一个文本框用于显示次时间段的销售总金额。(4)查看数据表:实现各种数据表的浏览,包括进货表,商品库存表、销售表、退货表、员工表、进货商表等。对于员工表管理员还可以对其进行删除或添加用户操作。(5) 系统管理: 包括更换用户、修改密码、退出系统等。更换用户的操作方便了用户的使用,同时更加方便了管理员对于系统数据的查询,可以做到随时查看,以使管理员对账目一目了然,同时方便了普通用户的交接班使用本系统。修改密码和退出系统都是对于系统管理的辅助功能。3.2程序流程图系统管理图3.1程序流程图3.3 E-R图设计1交易管理模块:用于管理商品的进货,销售,退货登记的操作。实体E-R图如下:交易管理销售登记退货登记进货登记图3.2交易管理模块2进货统计管理:主要用于对商品每日,每月,每季度,每年的进货情况进行统计管理,此功能只有以管理员的身份进入时才为可用状态。实体E-R图如下:进货统计管理 本季度进货今年进货本月进货今日进货图3.3进货统计管理3销售统计管理:主要用于对商品每日,每月,每季度,每年的销售情况进行统计管理,此功能只有以管理员的身份进入时才为可用状态。实体E-R图如下:销售统计管理 今日销售今年销售本季度销售本月销售图3.4销售统计管理4查看数据:主要能查看进货表,商品信息表,销售表,退货表等进行查看,以实现对商品信息的及时了解。实体E-R图如下:查看数据表管理员工表进货商品表进货表退货表销售表现存商品表图3.5查看数据3.3数据库设计在系统的数据库设计中,进货表、销货表、商品库存表和退货表涉及了交易管理三个子菜单的绝大部分数据,是本系统数据库的核心。buy表(进货表)中包括有进货编号、商品编号、商品名称、生产厂商、型号、数量、进货价、进货年、进货月、进货日、总金额、业务员编号等。设计该数据表的主要目的是方便管理员的查看,使系统的数据管理能够更加层次化。具体设置如表3.1所示:表3.1 buy表字段名数据类型说明进货编号文本字段大小为20商品名称文本字段大小为20生产厂商文本字段大小为20型号文本字段大小为20数量数字长整型进货价货币货币进货年数字整型进货月数字整型进货日数字整型业务员编号文本字段大小为20总金额货币货币goods表(现存商品表)中包括有商品编号、生产厂商、商品名称、型号、进货价、销货价、数量、进货年、进货月、进货日、业务员编号、总金额等字段。具体设置如表3.2所示:表3.2 goods表字段名数据类型说明商品编号文本字段大小为20商品名称文本字段大小为20生产厂商文本字段大小为20型号文本字段大小为20数量数字长整型进货价货币货币销货价货币货币sell表(销货表)中包括有销货编号、商品编号、商品名称、生产厂商、型号、数量等字段。具体设置如表3.3所示:表3.3 sell表字段名数据类型说明销货编号文本字段大小为20商品编号文本字段大小为20商品名称文本字段大小为20生产厂商文本字段大小为20型号文本字段大小为20数量数字长整型 retreat表(退货表)中包括有退货编号、销货编号、生产厂商、商品名称、型号、单价、数量、总金额、退货年、退货月、退货日、业务员编号等。具体设置如表3.4所示:表3.4 retreat表字段名数据类型说明退货编号文本字段大小为20销货编号文本字段大小为20商品名称文本字段大小为20生产厂商文本字段大小为20型号文本字段大小为20单价货币货币数量数字长整型总金额货币货币退货年数字整型退货月数字整型退货日数字整型业务员编号文本字段大小为20第四章 详细设计4.1开发工具介绍4.1.1 VISUAL BASIC 6.0Visual Basic作为当今社会功能强大的可视化开发工具具有以下几大特点:(1)成功的简化了界面的设计过程。(2)提供了多种向导。(3)具有强大的数据和字符串处理功能。(4)提供了IntelliSense技术。4.1.2 ACCESS数据库Access与许多优秀的关系数据库一样,可以很容易地连接相关的信息而且还对其他的数据库系统有所补充。它能操作其它来源的资料,包括许多流行的PC数据库程序(如DBASE,Paradox,Microsoft FoxPro)和服务器、小型积极大型机上的许多SQL数据库。Access还完全支持Microsoft的OLE技术。Access还提供windows操作系统的高级应用程序开发系统。Access与其它数据库开发系统之间相当显著的区别就是:不用写一行代码,就可以在很短的时间里开发出一个功能强大而且相当专业的数据库应用程序,并且这一过程是完全可视的。如果能给它加上简短的VBA代码,那么程序决不比专业程序员潜心开发的程序差。4.1.3 ADO技术Active Data Objects(ADO)微软最新的数据库访问技术,它被设计用来同新的数据访问层OLE DB Provider一起协同工作,以提高通用数据访问(Universal Data Access).OLE DB是一个低层的数据访问接口,用它可以访问各种数据源,包括传统的关系型数据库,以及电子邮件系统及自定义的商业对象。ADO最重要的三个对象是:Connection, Command, Recordset。(1) Connection对象Connection对象用于建立与数据库的连接。通过连接可从应用程序访问数据源。它保存诸如指针类型,连接字符串,查询超时,连接超时和缺省数据库这样的连接信息。(2) Command对象在建立Connection后,可以发出命令操作数据源。一般情况下,Command对象可以在数据库中添加,删除或更新数据,或者在表中进行数据查询。Command对象在定义查询参数或执行一个有输出参数的存储过程时非常有用。(3) Recordset对象Recordset对象只代表一个记录集,这个记录集是一个连接的数据库中的表,或者是Command对象的执行结果返回的记录集。在ADO对象模型中,是在行中检查和修改数据的最主要的方法,所有对数据的操作几乎都是在Recordset对象中完成的。Record对象用于指定行,移动行、添加、更改、删除记录。4.2系统主界面4.2.1登陆窗体一设计思路: 本窗口的主要作用是提供用户一个登陆界面,需要用户在相应的对话框中输入正确的用户名和密码之后才可以正常登陆,并且根据系统的内部设定来识别登陆用户的具体操作权限,是操作员还是系统管理员。操作员则进入操作员界面,管理员则进入管理员界面。二具体设计:首先点击工程菜单,选择添加窗体,在新建工程内添加一个空窗体,先在适当位置画出一个框架,然后在框架内添加两个标签控件和两个文本框,然后把另一个标签和两个命令按钮画在预定位置。设置各控件属性,最后编写源代码。例如:将第二个标签控件控制名设为“Label4_Click”,Caption属性设为“退出”,字体属性设为“华文行楷”,Enabled和Visible属性均设为“True”编写按钮单击事件源代码如下:Private Sub Label4_Click()Unload Mecnn.Close其界面如图4.1所示:图4.1登陆窗体输入相应的用户名和密码。如果用户的密码输错错误,则不能登录到系统主窗体;如果用户密码正确,则进入系统的MDI主窗体。代码设计:Private Sub Label3_Click() If Combo1.Text = Then MsgBox 请输入用户名!, vbOKOnly + vbInformation, 注意 Combo1.SetFocus Exit Sub ElseIf Text1.Text = Then MsgBox 请输入密码!, vbOKOnly + vbInformation, 注意 Text1.SetFocus Exit Sub4.2.2系统主界面一设计思路:本窗口的是系统的主要界面,在此界面下可以根据不同的用户权限来进行相应的菜单操作,操作员只能进行交易管理,进行普通的进货,销售和退货登记。系统管理员则可在此界面下进行进货,销售的统计,以及察看各类数据。还可以进行系统管理。二具体设计:首先点击工具栏内新建工程按钮,新建一个工程,自动产生了一个空窗体,在窗体上单击右键,在弹出的菜单上点击“菜单编辑器”命令,打开菜单编辑器。按计划设计好程序各级菜单。其界面如图4.2所示:图4.2系统主界面在主窗体中,设计了5项菜单,分别为“交易管理”、“进货统计”、“销售统计”、“查看数据表”、“系统管理”。其中管理员权限包括进货统计、销货统计、查看数据表、系统管理。操作员权限只有交易管理。部分设计代码如下: Private Sub mnBuyMonth_Click()frmBuyall.Text2.Enabled = FalsefrmBuyall.SSTab1.Tab = 1frmBuyall.SSTab1.TabEnabled(0) = FalsefrmBuyall.SSTab1.TabEnabled(1) = TruefrmBuyall.SSTab1.TabEnabled(2) = FalsefrmBuyall.SSTab1.TabEnabled(3) = FalsefrmBuyall.Showstrbuy = select * from buy where 进货年= & inty & and 进货月= & intm & rs_buy.Open strbuy, cnn, adOpenKeyset, adLockPessimisticfrmBuyall.Adodc2.RecordSource = strbuyfrmBuyall.Adodc2.RefreshfrmBuyall.DataGrid2.ReBindIf rs_buy.EOF = True Then frmBuyall.Adodc6.RecordSource = strbuy frmBuyall.Adodc6.Refresh frmBuyall.DataGrid6.ReBind MsgBox 您本月没有进货记录!, vbOKOnly + vbInformation, 注意rs_buy.Closestrfctotal = select 生产厂商,sum(总金额) as 各厂商进货总金额 from buy where 进货年= & inty & and 进货月= & intm & group by 生产厂商rs_fctotal.Open strfctotal, cnn, adOpenKeyset, adLockPessimisticfrmBuyall.Adodc6.RecordSource = strfctotalfrmBuyall.Adodc6.RefreshfrmBuyall.DataGrid6.ReBindrs_fctotal.Closestrtotal = select sum(总金额) as 进货总金额 from buy where 进货年= & inty & and 进货月= & intm & rs_total.Open strtotal, cnn, adOpenKeysetm, adLockPessimisticfrmBuyall.Text2.Text = rs_total.Fields(进货总金额)rs_total.CloseEnd Sub4.2.3进货登记模块一设计思路: 在此模块中操作员可以进行供货厂商的登记以及进货商品的登记,每次进货都需要对商品名称、生产厂商、商品型号、单价、数量、总金额、交易日期、经手业务员编号等各项记录。供货厂商则需要对具体的联系人厂商的名称、地址、联系电话进行记录。在登记过程中添加进货编号和厂商编号不允许重复,但具体进货的商品编号是允许重复的。二具体设计:首先按设计添加窗体,添加2个框架,在框架里做好各控件的布局,设置相应属性,例如:将添加框架里面的添加入库按钮的caption属性设置为添加入库,backcolor属性设置为&H00C0C0等,设置完成后编写源代码。其界面如图4.3所示:图4.3进货登记进货登记模块中可以进行对所进的商品的信息及生产厂商的相关信息的添加,清空等操作。 其实现的部分代码如下:下面是对进货表进行添加记录操作! str_buy = select * from buy where 进货编号= & Text1.Text & rs_buy.Open str_buy, cnn, adOpenStatic, adLockOptimistic 打开进货表 If rs_buy.EOF = True Then rs_buy.AddNew rs_buy.Fields(进货编号) = Text1.Text rs_buy.Fields(商品名称) = Text3.Text rs_buy.Fields(生产厂商) = Text4.Text rs_buy.Fields(型号) = Text5.Text rs_buy.Fields(数量) = Val(Text6.Text) rs_buy.Fields(进货价) = Val(Text7.Text) rs_buy.Fields(进货年) = Text9.Text rs_buy.Fields(进货月) = Text10.Text rs_buy.Fields(进货日) = Text11.Text rs_buy.Fields(业务员编号) = Text12.Text rs_buy.Fields(总金额) = Val(Text13.Text) rs_buy.Update rs_buy.Close 关闭进货表 Else MsgBox 此进货编号已存在,请重添!, vbOKOnly + vbInformation, 注意 Text1.Text = Text1.SetFocus rs_buy.Close Exit Sub 关闭进货表 End If 下面是对商品库存表进行入库操作! Dim sql As String sql = select * from goods where 商品编号 = & Text2.Text & rs_goods.Open sql, cnn, adOpenStatic, adLockOptimistic If rs_goods.EOF = True Then rs_goods.Close str_goods = select * from goods rs_goods.Open str_goods, cnn, adOpenStatic, adLockOptimistic 打开库存表 rs_goods.AddNew rs_goods.Fields(商品编号) = Text2.Text rs_goods.Fields(商品名称) = Text3.Text rs_goods.Fields(生产厂商) = Text4.Text rs_goods.Fields(型号) = Text5.Text rs_goods.Fields(数量) = Val(Text6.Text) rs_goods.Fields(进货价) = Val(Text7.Text) rs_goods.Fields(销货价) = Val(Text8.Text) rs_goods.Update MsgBox 商品入库成功, vbOKOnly + vbExclamation, rs_goods.Close 关闭库存表 Else numgoods = rs_goods.Fields(数量) rs_goods.Fields(数量) = Val(Text6.Text) + numgoods rs_goods.Update MsgBox 商品入库成功, vbOKOnly + vbExclamation, 关闭库存表 rs_goods.Close End IfEnd Sub4.2.4销售登记模块一设计思路: 在本模块中操作员可以进行商品的销售登记,操作时需要具体登记此次销售记录的编号和商品名称、型号、销售日期、业务员编号、总金额、销售时间、商品编号、生产厂商、单价、数量。并且销售编号不允许重复而且商品编号也必须是在进货登记时所添加过的,能在进货纪录中查询到的编号,若是编号不存在则会提示非法操作。二具体设计:新添加一个窗体后,在窗体中添加标签:销货编号、商品名称、型号、销售日期、业务员编号、总金额、销售时间、商品编号、生产厂商、单价、数量。分别设置好标签对应的caption属性.在添加2个命令按钮。其界面如图4.4所示:图4.4销售登记销售登记模块中对销售的商品进行相关信息的登记,并进行销售金额的计算。其部分设计代码如下:Private Sub Command1_Click() If Text1.Text = Then MsgBox 请填写销货编号!, vbOKOnly + vbInformation, 注意 Text1.SetFocus Exit Sub ElseIf Text2.Text = Then MsgBox 请填写商品编号!, vbOKOnly + vbInformation, 注意 Text2.SetFocus Exit Sub End If str_goods = select * from goods where 商品编号= & Text2.Text & rs_goods.Open str_goods, cnn, adOpenStatic, adLockOptimistic If rs_goods.EOF = True Then MsgBox 对不起,此商品型号已无货!请选择其他型!, vbOKOnly + vbInformation, 注意 rs_goods.Close Exit Sub4.2.5退货登记模块一设计思路:在此模块中操作员可以对用户退回的商品进行登记,需要对退货编号、商品名称、型号、销售日期、业务员编号、总金额、销售日期、销货编号、生产厂商、单价、数量和商品编号逐一登记核对。在核对过程中需要查询是否与销售库中的商品名称、型号、总金额、销售日期、销货编号、生产厂商、单价、数量和商品编号逐一核对若是有一项核对结果有误则系统会提示无法进行退货操作。若是操作成功则会删除相应的销售记录。二具体设计:新建一个窗体,新添加一个窗体后,在窗体中添加标签:退货编号、商品名称、型号、销售日期、业务员编号、总金额、销售日期、销货编号、生产厂商、单价、数量和商品编号。分别设置好标签对应的caption属性.然后添加2个命令按钮.其界面如图4.5所示:图4.5退货登记退货登记模块对退货的相关信息进行记。如商品名、编号、价格、退货员、数量,金额、时间等等进行登记。 其部分实代码如下:Private Sub Command1_Click()If Text1.Text = Then MsgBox 请填写退货编号!, vbOKOnly + vbInformation, 注意 Text1.SetFocus Exit Sub ElseIf Text2.Text = Then MsgBox 请填写销货编号!, vbOKOnly + vbInformation, 注意 Text2.SetFocus Exit Sub ElseIf Text11.Text = Then MsgBox 请填写商品数量!, vbOKOnly + vbInformation, 注意 Text11.SetFocus Exit SubEnd If 下面是对销售表进行操作! str_sell = select * from sell where 销货编号= & Text2.Text & rs_sell.Open str_sell, cnn, adOpenStatic, adLockOptimistic If rs_sell.EOF = True Then MsgBox 对不起,没有销售此商品型号!无法退货!, vbOKOnly + vbInformation, 注意 rs_sell.Close Exit Sub ElseIf rs_sell.Fields(数量) Val(Text11.Text) Then MsgBox 对不起,退货数量过大,无法退货!, vbOKOnly + vbInformation, 注意 rs_sell.Close Exit Sub4.2.6进货统计模块一设计思路:此模块主要用于对商品每日、每月、每季度、每年的进货情况进行统计管理,并且以列表的形势进行显示。在列表中可以对进货纪录逐一进行查询并对进货总金额进行统计并且显示。二具体设计:此窗体上设置八个命令按钮,二个Adodc控件,二个Datagrid控件,一个标签控件和一个文本框,一个SSTab控件.首先按设计添加窗体,做好各控件的布局,设置相应属性,如:Datagrid控件名称属性设置为Datagrid1,DragMode属性设置为0,控件SSTab1的caption属性设置为今日进货等.其界面如图4.6所示:图4.6进货统计进货统计主要用于对商品每日、每月、每季度、每年的进货情况进行统计管理,此功能只有以管理员的身份进入时才为可用状态。其部分设计代码如下:Private Sub Form_Load()inty = Year(Date)intm = Month(Date)intd = Day(Date)Dim str As Stringstr = Provider=Microsoft.Jet.OLEDB.4.0;Data Source= & App.Path & sellsystem.mdb;Adodc1的相对路径连接Adodc1.ConnectionString = strAdodc1.CommandType = adCmdTextAdodc1.RecordSource = select * from buy where 进货年= & inty & and 进货月= & intm & and 进货日= & intd & Adodc1.RefreshSet DataGrid1.DataSource = Adodc1DataGrid1.RefreshAdodc2的相对路径连接Adodc2.ConnectionString = strAdodc2.CommandType = adCmdTextAdodc2.RecordSource = select * from buy where 进货年= & inty & and 进货月= & intm & Adodc2.RefreshSet DataGrid2.DataSource = Adodc2DataGrid2.Refresh4.2.7销售统计模块一设计思路:此模块主要用于对商品每日、每月、每季度、每年的销售情况进行统计管理,并且以列表的形势进行显示。在列表中可以对进货纪录逐一进行查询并对销售总金额进行统计并且显示。二具体设计:本窗体上设置八个命令按钮,二个Adodc控件,二个Datagrid控件,一个标签控件和一个文本框,一个SSTab控件.首先按设计添加窗体,做好各控件的布局,设置相应属性,如:Datagrid控件名称属性设置为Datagrid1,DragMode属性设置为0,控件SSTab1的caption属性设置为今日销货等.其界面如图4.7所示:图4.7销售统计销售统计主要用于对商品每日,每月,每季度,每年的进销存情况进行统计管理,此功能只有以管理员的身份进入时才为可用状态。其部分设计代码如下:Private Sub Form_Load()inty = Year(Date)intm = Month(Date)intd = Day(Date)Text1.Enabled = FalseText2.Enabled = FalseText3.Enabled = FalseText4.Enabled = FalseDim str As Stringstr = Provider=Microsoft.Jet.OLEDB.4.0;Data Source= & App.Path & sellsystem.mdb;Adodc1.ConnectionString = strAdodc1.CommandType = adCmdTextAdodc1.RecordSource = select * from sell where 销售年= & inty & and 销售月= & intm & and 销售日= & intd & Adodc1.RefreshSet DataGrid1.DataSource = Adodc1DataGrid1.RefreshAdodc2.ConnectionString = strAdodc2.CommandType = adCmdTextAdodc2.RecordSource = select * from sell where 销售年= & inty & and 销售月= & intm & Adodc2.RefreshSet DataGrid2.DataSource = Adodc2DataGrid2.Refresh4.2.8查看数据表功能模块的设计一设计思路:在这个功能模块中,主要有如下几个小功能模块组成:查看进货表, 查看超市库存表,查看超市退货表,查看销售表,员工信息表等几个功能。主要实现对超市的进、存、销进行管理以及对超市员工的管理。这几个功能都是以表格的形式来显示相关的数据。在查看现成超市表中,采用搜索的功能,在表中填入相关的关键词,就能查到相关的商品名,商品号,生产商,条码等信息。主要是采用SQL语言中的搜索,SELCET语句进行关键字的搜索。在员工管理中,可以对用户及用户的相关信息进行添加或删除。二具体设计:在新建的窗体上设置4个命令按钮,在工程菜单栏中选择部件(O).在控件选项里把Microsoft Ado Data Control6.0(OLEDB)和Microsoft DataGrid Control 6.0(OLEDB)选中,并确定。此时一个Adodc控件和一个Datagrid控件便在工具箱中出现了,把它们拖到本窗体上,并进行相应的设置。进货表界面如图4.8所示:图4.8进货表库存查询界面如图4.9所示:图4.9库存查询销售表界面如图4.10所示:图4.10销售表退货表界面如图4.11所示:图4.11退货表员工信息表界面如图4.12所示:图4.12员工信息表进货商表界面如图4.13所示:图4.13进货商表这六个小功能模块设计的部分代码如下:Private Sub Command2_Click()当文本框为空时的屏蔽操作If Text1.Text = And Text2.Text = Then MsgBox 请输入查询条件!, vbOKOnly + vbInformation, Exit SubEnd If 定义连接库存表条件时的SQL条件句 If Text1.Text = And Text2.Text Then strgo

温馨提示

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

评论

0/150

提交评论