超市管理系统毕业设计_第1页
超市管理系统毕业设计_第2页
超市管理系统毕业设计_第3页
超市管理系统毕业设计_第4页
超市管理系统毕业设计_第5页
已阅读5页,还剩52页未读 继续免费阅读

下载本文档

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

文档简介

1、毕业设计(论文)题目:超市管理系统的设计信息工程系专业电子信息工程班级编号 学生曲指导员 2020年5月毕业设计(论文)任务书一、毕业设计(论文)题目:超市管理系统的设计本课题以ACCESS2000为后台数据库,以VC+6.0为前台开发工具,设计了。超市管理系统需要系统用户和权限管理、系统日志管理、系统数据管理和系统。数据备份,商品信息管理,员工信息管理,周转等功能。这位同学主要负责系统用户和权限管理、商品信息管理、员工信息管理的设计。工作安排如下:1.查阅文献,翻译英文资料,撰写开题报告1-4周。2.获取相关信息和学习必要的知识。第5-9周3.设计系统的硬件和软件模块,并在第10-14周进行

2、调试。4.写论文的第15-16周。5.总结准备第18周答辩。1.谭浩强。c程序设计(第三版)。:清华大学. 20062.徐。c语言编程案例教程。:人民邮电200514-1614-163.奈德斯内尔。微软Office 97自学中文版,机械工业,2001。4.天舟。c语言高级编程。:人民邮电. 20025.雅,王芬,超市管理系统的设计与实现J.计算机-1,20066.谭浩强。编程基础。:清华大学。20047.罗,人。管理信息系统原理与应用M。:清华大学,20028.胡。Visual C+ 6.0开发技巧及实例。人民邮电,20009.白色(美国)。Visual C+程序员实用大全。中国水利水电,20

3、0510.毕舒威。管理信息系统的分析与设计。:机械工业,1992;11.朱洪波。Visual C+6.0完全自学合集M。:清华大学,200812.胡。Visual C+ 6.0开发技巧及实例。人民邮电,200013.青香。Visual C+编程教程。航空工业,2005年14.党建武。管理信息系统,大学,2001年;15.基本温度。信息系统开发案例。清华大学,1999;信息工程系电子信息工程0982051班学生(签名):填写日期:2013年2月18日讲师(签名):助教(并指出责任部分):信息工程部门负责人(签名):注:任务书应附在已完成的毕业设计说明书的第一页。学士学位论文声明原件我声明所提交的

4、论文是我的导师独立完成的研究成果。除文中特别标注和引用的内容外,本文不包含任何法律意义上属于他人的研究成果,也不包含任何本人用于其他学位申请的论文或成果。对本论文的研究做出重要贡献的个人和集体已在本文中明确注明。本人完全清楚,此声明的法律后果由本人承担。作者签名:日期:2013年5月学位论文使用授权书本学位论文的作者完全了解学校关于保存和使用学位论文的规定,并同意学校保存和向国家有关部门或机构发送学位论文的副本和电子版本,允许查阅和借阅学位论文。本人授权航空大学科学技术学院将本学位论文的全部或部分内容编入相关数据库进行检索,并以影印、缩印或扫描的方式保存和编辑本学位论文。签名:日期:导师签名:

5、日期:超市管理系统的设计摘要:随着小型超市的发展,商品数量急剧增加,商品信息量成倍增长。超市里每时每刻都需要对商品的各种信息进行统计分析。超市管理系统功能过于强大,导致操作繁琐,降低工作效率。超市管理系统是市场上最流行的超市常用系统之一。主要包括以下模块:设置系统权限、输入原始数据、汇总查询数据等。从而实现对采购、销售、员工信息的全面、动态、及时的管理。本文系统地分析了软件开发的背景和过程;首先,介绍了软件的开发环境。其次,介绍了软件的详细设计过程:数据库的设计,各个模块的设计与实现,以及具体界面的设计与功能。关键词:超市管理信息系统讲师签名:目录序 HYPERLINK l _RefHeadi

6、ng_Toc357365683 1TOC o 1-3 h z u HYPERLINK l _RefHeading_Toc357365682 第一章 需求分析 HYPERLINK l _RefHeading_Toc357365683 2 HYPERLINK l _RefHeading_Toc357365684 1.1开发背景3 HYPERLINK l _RefHeading_Toc357365684 1.2系统分析3 HYPERLINK l _RefHeading_Toc357365685 第二章 系统实现的理论基础5 HYPERLINK l _RefHeading_Toc357365686 2

7、.1 ACCESS数据库介绍5 HYPERLINK l _RefHeading_Toc357365687 2.2 ADO技术5 HYPERLINK l _RefHeading_Toc357365688 2.3 SQL语言6 HYPERLINK l _RefHeading_Toc357365689 第三章 系统数据库设计8 HYPERLINK l _RefHeading_Toc357365690 3.1数据库的概念8 HYPERLINK l _RefHeading_Toc357365691 3.2创建数据库文件9 HYPERLINK l _RefHeading_Toc357365692 3.3创

8、建数据表10 HYPERLINK l _RefHeading_Toc357365693 3.4 VC+6.0连接ACCESS2000数据库11 HYPERLINK l _RefHeading_Toc357365694 3.5数据库设计12 HYPERLINK l _RefHeading_Toc357365695 第四章 系统功能模块实现15 HYPERLINK l _RefHeading_Toc357365696 4.1 系统登录模块15 HYPERLINK l _RefHeading_Toc357365697 4.2 商品信息管理模块18 HYPERLINK l _RefHeading_To

9、c357365698 4.3 员工信息管理模块20 HYPERLINK l _RefHeading_Toc357365699 4.4仓库管理模块23 HYPERLINK l _RefHeading_Toc357365700 4.5营业统计模块28 HYPERLINK l _RefHeading_Toc357365702 第五章 系统测试运行33 HYPERLINK l _RefHeading_Toc357365703 5.1 模块测试33 HYPERLINK l _RefHeading_Toc357365704 5.2 整体测试33 HYPERLINK l _RefHeading_Toc357

10、365705 第六章总结34 HYPERLINK l _RefHeading_Toc357365706 第七章 参考文献35 HYPERLINK l _RefHeading_Toc357365707 致36 HYPERLINK l _RefHeading_Toc357365708 附 录37前言随着现代科学技术的飞速发展,计算机技术已经渗透到各个领域,成为各个行业不可或缺的工具。特别是互联网技术的普及和信息高速公路的建立,使IT产业在市场竞争中显示出独特的优势。在数字化时代,有大量的数据等待处理和传输,这使得进一步开发和利用数据库显得尤为迫切。同时,迫切需要企业资源管理、信息存储和处理。为了适

11、应市场竞争,需要有高效的加工方法和管理方法。因此,加快超市的电脑化进程至关重要。超市需要处理大量的库存信息,还要更新产品的销售信息,不断添加商品信息。面对不同种类的信息,我们需要一个合理的数据库结构来存储数据信息,需要一个有效的程序结构来支持各种数据操作的执行。门店自动化产品管理在欧美等国家早已实现,也是零售管理的基础。它的主要特点是可以实时准确的控制门店的销售。如果能实时掌握销售过程和销售情况,就能有效加快商品周转速度和提高服务质量,减少产品价格不一致带来的问题。顾客的消费诉求是在超市购物基本能买到自己需要的商品,既要保证商品质量,又要享受优质便捷的服务。第一章需求分析1.1开发背景随着我国

12、改革开放的深入和经济的快速发展,企业要想生存和发展,要想在激烈的市场竞争中立于不败之地,没有现代化的管理是绝对不行的,而超市管理的全自动化和信息化是极其重要的一环。为了加快超市管理自动化的步伐,提高超市管理的效率,有必要建立超市管理系统。将计算机这一信息处理工具应用于超市的日常管理是必然的,它将给超市管理带来前所未有的变化。能带来意想不到的收益,为企业的快速发展提供无限潜力。计算机管理信息系统的应用已成为超市管理科学化、现代化的重要标志,给企业管理带来了明显的经济效益和社会效益。主要是:大大提高了超市工作人员的工作效率,大大减少了过去繁琐、凌乱、周期长的弊端,减少了仓储管理、出库管理、库存管理

13、的漏洞,节省了大量的管理费用,增加了企业收入。超市管理的自动化和信息的电子化,全面提升了超市的管理水平。入库、出库、出库仍然是企业超市管理的常规基本模式。尽管最近出现了许多新的管理模式,如基于零库存思想的沃尔玛管理模式,但这些新思想在中国大多数企业的管理中仍然难以实现。因此,如何设计一个好的超市管理系统,尽可能的减少超市管理的重复性和低效性,成为了当前最重要的问题。超市供销管理的核心是仓储、库存和配送之间的关系,而如何处理它们之间的关系是系统中最关键的部分。此外,管理者信息和制造商信息管理也是超市管理中必不可少的一部分,它提供了一些与入库和入库相关的信息,使得整个系统更加完整和实用。通过对超市

14、管理日常工作的详细调查,收集了大量资料,从系统结构组织、功能实现、技术要求、可行性等方面,认为本课题是一个满足超市供销管理需要的计算机信息管理系统,具有一定的实际开发价值和使用价值。超市管理系统的框架如图1-1所示:商品信息顾客仓库顾客仓库入库确认采购清单超级市场超级市场消费清单营地卖出售统一数字措施经理经理工业图1-1超市管理系统框架1.2系统分析作为一个超市管理系统,其功能是实现超市商品进销存管理的系统化、规范化和自动化。该系统的主要功能是:(1)交易管理:包括采购登记、销售登记和退货登记。采购登记还包括采购登记。如果是新购厂家,可以直接在这里注册。主要的买卖交易都在这里进行。每笔交易(包

15、括进货、销售、退货)都需要记录商品名称、生产厂家、商品型号、单价、数量、总金额、交易日期、经手业务员编号。在交易的过程中,程序尽量写的方便员工交易。比如购买登记时商品编号相同,商品的其他属性会自动添加;注册销售时,用户只需输入商品编号,商品的其他属性就能自动出现。退货时,只要输入正确的销售号,就会自动列出其销售信息,尽可能方便用户的操作。同时,已登录的员工号程序会自动将其列在购买登记和销售登记中,已防止员工进行非正常交易。(2)采购统计:包括今日采购统计、本月采购统计、本季度采购统计、本季度采购统计、本年度采购统计等。其中,每次采购的统计是按采购厂商和采购总额显示的。使用表格显示所选时间段的所

16、有采购数据,包括采购编号、商品名称等。然后使用另一个表显示从每个制造商购买的数量,并用一个文本框显示下一个时间段的购买总量。(3)销售统计:包括今日销售统计、本月销售统计、本季度销售统计、本年销售统计等。,其中每个销售统计是按制造商和总销售金额显示的。使用表格显示所选时间段的所有销售数据,包括销售编号、商品名称等。然后使用另一个表来显示从每个制造商购买的商品数量,并用一个文本框来显示下一个时间段的总销售额。(4)查看数据表:浏览各种数据表,包括采购表、商品库存表、销售表、退货表、员工表、采购员表。雇员表管理员也可以删除或添加用户。(5)系统管理:包括更改用户、更改密码、注销系统等。更换用户的操

17、作方便了用户,同时也更方便了管理员查询系统数据,可以随时查看,让管理员对账目一目了然,同时也方便了普通用户陆续使用本系统。修改密码和退出系统都是系统管理的辅助功能,这里不做详细说明。(6)其他表单:包括主表单、登录表单和系统初始化表单。第二章是系统实现的理论基础。2.1 access数据库简介Microsoft Access是微软公司为Windows平台开发的第一个桌面数据库管理系统,它充分利用了Windows平台的优势,如Windows的图形界面和事件驱动机制。作为微软的办公套件产品之一,access已售出近700万份,成为全球最受欢迎的桌面数据库系统。Access像许多优秀的关系数据库一样

18、,允许您轻松地连接相关信息,并补充其他数据库系统。它可以操作来自其他来源的数据,包括许多流行的PC数据库程序(如dBASE、Paradox、Microsoft FoxPro)以及服务器和小型主机上的许多SQL数据库。Access还完全支持微软的OLE技术。Access还为windows操作系统提供了一个高级应用程序开发系统。Access与其他数据库开发系统的显著区别在于,您可以在极短的时间内开发出一个强大而专业的数据库应用程序,而无需编写一行代码,而且这个愉快的过程是完全可见的!如果你能在其中加入简短的VBA代码,那么你的程序绝对不会比专业程序员开发的程序差。2.2 ADO技术活动数据对象(A

19、DO)是微软最新的数据库访问技术,旨在与新的数据访问层OLE DB提供程序一起改进通用数据访问。OLE DB是一个低级数据访问接口,可用于访问各种数据源,包括传统的关系数据库,与电子系统和自定义业务对象进行通信。ADO为OLE DB的自动化提供了我们熟悉的高级封装接口。对于熟悉RAO的程序员来说,OLE DB可以比作ODBC驱动。正如RAO对象是ODBC驱动程序接口一样,不同的数据源需要它们自己的OLE DB提供程序。ADO的三个最重要的对象是:连接、命令、记录集。(1)连接对象Connection对象用于建立与数据库的连接。可以通过连接从应用程序访问数据源。它保存连接信息,如指针类型、连接字

20、符串、查询超时、连接超时和默认数据库。(2)命令对象建立连接后,您可以发出命令来操作数据源。一般来说,命令对象可以添加、删除或更新数据库中的数据,或者查询表中的数据。当定义查询参数或执行带有输出参数的存储过程时,命令对象非常有用。(3)记录集对象Recordset对象仅代表一个记录集,它是连接的数据库中的一个表或由Command对象的执行结果返回的记录集。在ADO对象模型中,它是检查和修改行中数据的主要方法,几乎所有对数据的操作都是在记录集对象中完成的。记录对象用于指定行、移动行、添加、更改和删除记录。2.3 SQL语言SQL是介于关系代数和关系演算之间的结构化查询语言,它的作用不仅仅是查询。

21、SQL是一种通用而强大的关系数据库语言。SQL之所以能被用户和业界接受,成为国际标准,是因为它是一门全面、强大、易学的语言。SQL语言集成了数据查询、数据操作、数据定义和数据控制的功能。其主要特点包括:一致数据库的主要功能是通过数据库支持的数据语言来实现的。SQL语言集成了数据定义语言DDL、数据操作语言DML和数据控制语言DCL的功能,具有统一的语言风格。它可以独立完成数据库生命周期中的所有活动,包括定义关系模式、建立数据库、插入数据、查询、更新、维护、数据库重构、数据库安全控制等一系列操作需求。,为数据库应用系统的开发提供了良好的环境。数据库系统投入运行后,用户还可以根据需要随时逐步修改模

22、式,并且不会影响数据库的操作,因此系统具有良好的可扩展性。(2)高度非程序性非关系数据模型的数据操作语言是一种面向过程的语言。当请求完成时,必须指定访问路径。而使用SQL语言操作数据时,只需要提出“做什么”而不需要指明“怎么做”,所以不需要知道访问路径。访问路径的选择和SQL语句的操作过程由系统自动完成。这不仅大大减轻了用户的负担,也有助于提高数据独立性。(3)面向集合的操作模式非关系数据模型采用面向记录的操作方式,操作对象是一条记录。比如要查询所有平均分在80分以上的产品,用户必须逐一找出符合条件的产品记录(通常是具体的处理过程,即走哪条路,如何循环等。).而SQL语言采用集合操作方式,不仅

23、可以操作对象和搜索结果是一组元组,而且可以一次插入、删除和更新对象。(4)提出同一语法结构的两种用法。SQL既是一种自包含的测试语言,也是一种嵌入式语言。作为一门独立的语言,它可以独立用于在线交互。用户可以直接在终端键盘上键入SQL命令来操作数据库。SQL语言作为一种嵌入式语言,可以嵌入到高级语言(如C、COBOL、FORTRAN)中,供程序员设计程序时使用。但是,SQL语言的语法结构在两种不同的使用方式下基本相同。这种为两种不同的使用模式提供统一语法结构的做法提供了极大的灵活性和便利性。(5)语言简单,易学易用。SQL功能极其强大,但由于其巧妙的设计和简单性,只用了9个动词就完成了它的核心功

24、能:数据查询(SELECT)、数据定义(CREATE、DROP、ALTER)、数据操作(INSERT、UPDATE、DELETE)和数据控制(GRANT、REVOKE)。SQL语言接近英语口语,易学易用。第三章系统数据库设计3.1数据库的概念数据库处理一直是信息系统研究中一个非常重要的课题。然而,近年来,随着万维网的快速增长和互联网技术的快速发展,数据库技术已经成为最热门的技术之一。数据库技术可以使互联网应用超越简单的发布,具有早期应用的特征。同时,互联网技术为向用户发布数据库内容提供了标准化的访问方法。这些技术没有偏离经典数据库技术的要求。他们只是增加了数据库技术的重要性,了解用户的需求。然

25、后,将它们转化为有效的数据库设计是一个艺术化的过程。将设计转化为实际的数据库是一个工程化的过程,这些数据库具有完整的功能和高性能的应用。数据库的目的是帮助人们跟踪交易。传统的数据库应用程序涉及订单、客户、工作、员工、学生等项目。、或其他需要密切关注的具有大量数据的事项。最近,由于数据库的普及,数据库技术已经被应用到新的领域,例如用于互联网或公司网络的数据库。数据库也越来越多地用于生成和维护多媒体应用。在计算机数据处理的应用中,大量的信息要以数据的形式存储在内存中。存储容量和存储速率直接影响着数据管理技术的发展。自1956年第一台计算机问世以来,内存的发展为数据库技术提供了良好的物质基础。使用计

26、算机后,数据处理的速度和规模,无论是相对于手工还是机械方法,都有着无可比拟的优势。通常,在数据处理中,计算相对简单,但数据管理相当复杂。数据管理是指数据的收集、整理、组织、存储、维护、检索、传输等操作。这部分操作是数据处理业务的基本环节,是任何数据处理业务必不可少的一部分。数据管理技术的好坏将直接影响数据处理的效率。数据库在信息管理系统中占有非常重要的地位,数据库结构的设计将直接影响应用系统的效果。合理的数据库设计可以提高数据库存储的效率,保证数据的完整性和一致性。同时,合理的数据结构也将有利于程序的实现。在设计一个数据库系统的时候,首先要了解用户的各方面需求,包括现有的和未来可能增加的。3.

27、2创建数据库文件如果操作系统中安装了ACCESS2000,可以在“开始”菜单的“程序”菜单中找到它。如下所示:打开ACCESS2000后,将会打开一个窗口。您可以选择是打开以前的数据库文件还是创建一个新的空数据库文件。如果选择空的ACCESS数据库,请单击“确定”。这将创建一个新的数据库文件。最后一步是选择保存数据库文件的名称和位置。单击创建完成。3.3创建数据表上面已经谈到了如何创建一个数据库文件。按照上述步骤创建数据库文件后,您需要在数据库文件中创建一个数据表。在下面的对话框中选择“用设计器创建表格”,上面有三个按钮,一个是打开,一个是设计,一个是新建。单击“设计”开始设计数据表。设计界面

28、出现后,就可以开始设计数据表了!3.4 VC+6.0连接到ACCESS2000数据库如果连不上数据库,用VC+6.0写个管理软件也没用。我们来看看VC+6.0是如何连接ACCESS2000数据库的。void ADOConn:OnInitADOConn()尝试m _连接。CreateInstance(ADODB。连接”);/创建ADO/的实例m _ p connection- Open( Provider = Microsoft。Jet . OLEDB.4.0数据源=supermarket.mdb ,admode unknown);/调用open函数打开指定的数据库并连接到数据库/Catch(_

29、error e)/捕捉异常,弹出对话框/AfxMessageBox(e . Description();exit connect();/调用ExitConnect函数断开连接/3.5数据库设计上述功能的实现都离不开数据库的支持,因此数据库设计作为系统设计的一部分是不可缺少的。本系统使用的数据库系统是Windows Access 2000。从上面的功能分析不难看出,本系统需要建立以下数据表:商品表、GOODSPACK表、存储表、STORAGEINFO表、票证表、工人表。由于数据量小,这些数据表都存在于一个数据库中:sellsystem.mdb下面简单介绍一下每个数据表的结构:在系统的数据库设计中

30、,采购表、销售表、商品库存表、退货表涉及到交易管理三个子菜单的大部分数据,是系统数据库的核心,所以会显示一些表的设置列表。商品表包括商品ID、商品名称、条形码、商品价格等。GOODSPACK表包括新商品、礼品、仓储、入库等。入库表包含了下架商品,销售数量等。INFO表包含商品数量、商品单价、厂商等信息;商品销售、销售商品名称、每日结算等。在票表中;员工表包括员工编号、员工、员工密码、员工、员工地址、员工的省证明等。商品表包括采购编号、商品编号、商品名称、生产厂家、数量、采购价格、总金额、业务员编号等。设计这个数据表的主要目的是方便管理员查看,使系统的数据管理更加层次化。具体设置如下:字段名数据

31、类型解释商品编号文本字段大小为20商品名称文本字段大小为20制造商文本字段大小为20量数字长整数买价钱钱日营业额钱钱销售员编号文本字段大小为20总金额钱钱表3-1购买表商品表(现有商品表)包括商品编号、生产厂家、商品名称、型号、进价、售价、数量、采购年份、采购月份、采购日期、业务员编号、总金额等字段。详见表3-2。字段名数据类型解释商品编号文本字段大小为20商品名称文本字段大小为20制造商文本字段大小为20模型文本字段大小为20量数字长整数买价钱钱卖价钱钱表3-2商品表销售表(sales table)包括销售编号、商品编号、商品名称、制造商、型号、数量等字段。由于篇幅有限,表省略了。退库表(退

32、货表)包括退货编号、销售编号、生产厂家、商品名称、型号、单价、数量、总金额、退货年份、退货月份、退货日期、业务员编号等。详见表3-3。字段名数据类型解释退货数量文本字段大小为20销售编号文本字段大小为20商品名称文本字段大小为20制造商文本字段大小为20模型文本字段大小为20单价钱钱量数字长整数总金额钱钱返回年份数字整数返回月份数字整数返回日期数字整数销售员编号文本字段大小为20表3-3撤退表第四章是系统功能模块的实现。4.1系统登录模块用户登录模块在本系统的主页上。用户输入用户名和密码后,系统会进行验证,验证后进入程序主界面。如图4-1所示。图4-1用户登录世界基本功能如下:void CLo

33、gInDlg:DoDataExchange(CDATA exchange * pDX)CDialog:DoDataExchange(pDX);/AFX_DATA_MAP(CLogInDlg)DDX_Control(pDX,IDOK,m _ OK);DDX_Control(pDX,IDCANCEL,m _ Cancel);DDX_Text(pDX,IDC_ID,m _ work ID);DDX_Text(pDX,IDC_PW,m _ PassWord);/AFX_DATA_MAPBEGIN_MESSAGE_MAP(CLogInDlg,CDialog)END_MESSAGE_MAP()bool C

34、loginDLG:pretranslatemessage(msg * pMsg)/完成对话窗口的一个事件函数,(pMsg:当前截获事件的类型)/if(pmsg- message = = WM _ lbuttondown)/判断一个事件是否是鼠标左键被按下的事件,(如果是,处理)/CRect rect,RC;好的。GetWindowRect(& rect);m _取消。GetWindowRect(& RC);/是的,获取按钮的面积/CPoint点;GetCursorPos(& point);/获取鼠标被按下的位置/如果(rect。PtInRect(point)/确定鼠标按下的位置是否在OK按钮上

35、/update data(TRUE);if(m_WorkID。IsEmpty() | m_PassWord。IsEmpty()MessageBox(用户名或密码不能为空);返回FALSEm _ times+;/非空,登录次数加1/ADOConn m _ AdoConnm_AdoConn。OnInitADOConn();CString sqlsql。format( select * from worker where worker id = % s and PWD = % s ,m_WorkID,m _ PassWord);m _ AdoConn . m _ pRecordset = m _ A

36、doConn。get recordset(_ bstr _ t)SQL);如果(!m _ adoconn . m _ p Recordset- adoeof)/判断登录账号和密码是否存在于数据库的工作表中/CString字符串;str =(char *)(_ bstr _ t)m _ adoconn . m _ pRecordset- get collect( Permissions );m _ type = atoi(str);/判断成功与否的函数/CDialog:OnOK();m_AdoConn。exit connect();其他if(m_times = 3)MessageBox(密码已经

37、输错3次,系统会自动退出!);CDialog:on cancel();m_AdoConn。exit connect();其他CString字符串;海峡。Format(用户名或密码不正确,可以再输入%d次!,3-m _次);MessageBox(str);m _ WorkID =m _ PassWord =update data(FALSE);如果(rc。PtInRect(point)/如果不在登录按钮区域,而是在取消按钮区域/CDialog:on cancel();/直接让对话框消失/返回CDialog:PreTranslateMessage(pMsg);4.2商品信息管理模块该模块可以输入商

38、品信息,合理管理商品。界面如图4-2所示。图4-2商品信息管理界面查询功能如下:void CGoodsDlg:OnSelect()m_list。DeleteAllItems();CString sqlupdate data(true);double值= 0;int索引= m_index。GetCurSel();开关(索引)案例0:sql。format( select * from GOODS id % s % s ,m_opStr,m _ info);打破;案例1:sql。format( select * from GOODS name % s % s ,m_opStr,m _ info);打

39、破;案例二:sql。format( select * from GOODS where GOODS barcode % s % s ,m_opStr,m _ info);打破;案例三:value = atof(m _ info);sql。format( select * from GOODS where GOODS value % s % . 2f ,m_opStr,value);打破;阿多康恩阿多康恩;阿多康恩。OnInitADOConn();adoConn.m_pRecordset = adoConn。get recordset(_ bstr _ t)SQL);CString工作id、姓名

40、、权限、性别、id、电话、地址、密码;int I = 0;而(!adoConn.m_pRecordset-adoEOF)m_list。InsertItem(i, );m_list。SetItemText(i,0,(char *)(_ bstr _ t)adoconn . m _ pRecordset- get collect( GoodsID );m_list。SetItemText(i,1,(char *)(_ bstr _ t)adoconn . m _ pRecordset- get collect( goodname );m_list。SetItemText(i,2,(char *)(

41、_ bstr _ t)adoconn . m _ pRecordset- get collect( goods barcode );m_list。SetItemText(i,3,(char *)(_ bstr _ t)adoconn . m _ pRecordset- get collect( goods value );adoconn . m _ pRecordset- MoveNext();void CGoodsDlg:OnAdd()CString goodsid = GetGoodsID();CNewGoodsDlg dlgdlg.m _ goodsid = goodsid错误_结束:如

42、果(dlg。DoModal() = IDOK)if(DLG . m _ goods name = = | | DLG . m _ barcode = = | | DLG . m _ goods value = = 0)MessageBox(新品信息不完整,请检查!);goto ERROR _ END其他阿多康恩阿多康恩;阿多康恩。OnInitADOConn();CString sqlsql。format( insert into GOODS(GOODS id,GoodsName,GoodsBarCode,GoodsValue)值( %s , %s , %s ,%.2f),dlg.m_goods

43、id,dlg.m_goodsname,dlg.m_barcode,DLG . m _ GOODS value);阿多康恩。execute SQL(_ bstr _ t)SQL);sql。format( Insert into GOODSPACK(GoodsID,PackMain,PackParts,PackAnnotation)值( %s , %s , %s , %s ),dlg.m_goodsid,dlg.m_main,dlg.m_part,DLG . m _ info);阿多康恩。execute SQL(_ bstr _ t)SQL);阿多康恩。exit connect();4.3员工信息

44、管理模块该模块具有添加、修改、删除员工的功能,可以合理管理用户。界面如图4-3所示。图4-3员工管理系统界面给不同的用户分配不同的权限,有利于系统的管理。只有超级管理员才有分配权限的功能。如图4-4所示。图4-4员工信息设置管理界面基本功能如下:voicuserdlg:on select()/查询按钮的处理函数/ TODO:在此添加控件通知处理程序代码m_list。DeleteAllItems();CString sqlint intInfoupdate data(true);int索引= m_index。GetCurSel();开关(索引)案例0:sql。format( select * f

45、rom WORKER where WORKER id = % s ,m _ info);打破;案例1:sql。format( select * from WORKER where Name = % s ,m _ info);打破;案例二:如果(!M_info pare(男)sql。格式( select * from WORKER where Sex = 1 );其他sql。format( select * from WORKER where Sex = 0 );打破;案例三:sql。format( select * from WORKER where WORKER position = % s

46、 ,m _ info);打破;案例4:intInfo = atoi(m _ info);sql。format( select * from WORKER where Permissions = % d ,intInfo);打破;案例5:sql。format( select * from WORKER where ID = % s ,m _ info);打破;案例6:sql。format( select * from WORKER where Phone = % s ,m _ info);打破;案例7:sql。format( select * from WORKER where Address

47、= % s ,m _ info);打破;阿多康恩阿多康恩;/调用ADO连接的实体连接对象/阿多康恩。OnInitADOConn();adoConn.m_pRecordset = adoConn。get recordset(_ bstr _ t)SQL);CString工作id、姓名、权限、性别、id、电话、地址、密码;int I = 0;而(!adoConn.m_pRecordset-adoEOF)m_list。InsertItem(i, );m_list。SetItemText(i,0,(char *)(_ bstr _ t)adoconn . m _ pRecordset- get col

48、lect( WorkerID );m_list。SetItemText(i,1,(char *)(_ bstr _ t)adoconn . m _ pRecordset- get collect( PWD );m_list。SetItemText(i,2,(char *)(_ bstr _ t)adoconn . m _ pRecordset- get collect( Permissions );m_list。SetItemText(i,3,(char *)(_ bstr _ t)adoconn . m _ pRecordset- get collect( worker position )

49、;m_list。SetItemText(i,4,(char *)(_ bstr _ t)adoconn . m _ pRecordset- get collect( Name );CString strSex =(char *)(_ bstr _ t)adoconn . m _ pRecordset- get collect( Sex );int bMan = atoi(strSex);if(bMan)M_list。SetItemText(i,5,“男”);其他M_list。SetItemText(i,5,“女”);m_list。SetItemText(i,6,(char *)(_ bstr

50、_ t)adoconn . m _ pRecordset- get collect( ID );m_list。SetItemText(i,7,(char *)(_ bstr _ t)adoconn . m _ pRecordset- get collect( Phone );m_list。SetItemText(i,8,(char *)(_ bstr _ t)adoconn . m _ pRecordset- get collect( start time );m_list。SetItemText(i,9,(char *)(_ bstr _ t)adoconn . m _ pRecordset

51、- get collect( Address );adoconn . m _ pRecordset- MoveNext();4.4仓库管理模块该模块具有查询、入库、入库货物的功能,可以合理管理供应商。如图4-5所示。图4-5仓库系统管理界面基本功能如下:void CStorageDlg:OnInstorage()CInOutDlg dlgdlg.m _ bIn = true错误_DEEL:如果(dlg。DoModal() = IDOK)if(DLG . m _ num = = 0 | | DLG . m _ value = = 0 | | DLG . m _ supplier = = )Mes

52、sageBox(进货信息不完整,请检查! r n r 价格和数量不能为0,需要添加买家信息!);goto ERROR _ DEELCString sql阿多康恩阿多康恩;阿多康恩。OnInitADOConn();if(CheckExit(GoodsID ,dlg.m_goosid, STORAGE )sql。Format(更新存储集GoodsLeftNum = GoodsLeftNum + %d其中GoodsID =%s ,dlg.m_num,DLG . m _ goosid);阿多康恩。execute SQL(_ bstr _ t)SQL);阿多康恩。exit connect();其他sql

53、。format( insert into STORAGE(GoodsID,GoodsLeftNum,GoodsSaleNum) 值( %s ,%d,%d),dlg.m_goosid,dlg.m_num,0);阿多康恩。execute SQL(_ bstr _ t)SQL);阿多康恩。exit connect();m_comb。InsertString(m_comb。GetCount()+1,DLG . m _ goosid);m_comb。SetCurSel(m_comb。GetCount();on select();CString ticketidCTime time = CTime:Get

54、CurrentTime();ticketid = GetTicketID(时间);阿多康恩。OnInitADOConn();sql。format( insert into storage INFO(ticket id,GoodsID,Num,GoodsValue,InOrOut,Info,OpDate,OpTime)值( %s , %s ,%d,%.2f,%d, %s ,#%s#,#%s#),ticketid,dlg.m_goosid,dlg.m_num,dlg.m_value,1,dlg.m_supplier,时间。格式( %Y-%m-%d ),时间。格式( % H:% M:% S );阿多

55、康恩。execute SQL(_ bstr _ t)SQL);void CStorageDlg:OnOutstorage()CInOutDlg dlgdlg.m _ bIn = false错误_DEEL:如果(dlg。DoModal() = IDOK)if(DLG . m _ num = = 0 | | DLG . m _ value = = 0 | | DLG . m _ supplier = = )MessageBox(出库商品信息不完整,请检查! r n r 价格和数量不能为0,需要添加买家信息!);goto ERROR _ DEELif(CheckExit(GoodsID ,dlg.m

56、_goosid, STORAGE )if(CheckNum(GoodsID ,dlg.m_goosid, STORAGE ,dlg.m_num) adoEOF)m_infoComb。InsertString(index,(char *)(_bstr_t)adoConn.m_pRvoid CStorageDlg:OnId()update data(true);set control();void CStorageDlg:OnLeft()update data(true);set control();void CStorageDlg:OnSale()update data(true);set co

57、ntrol();bool CStorageDlg:check exit(CString索引,CString值,CString表)阿多康恩阿多康恩;阿多康恩。OnInitADOConn();CString sqlsql。格式( select * from %s,其中%s = %s ,表,索引,值);adoConn.m_pRecordset = adoConn。get recordset(_ bstr _ t)SQL);如果(!adoConn.m_pRecordset-adoEOF)阿多康恩。exit connect();返回true其他阿多康恩。exit connect();返回false阿多康

58、恩。exit connect();int CStorageDlg:CheckNum(CString索引,CString值,CString表,int num)阿多康恩阿多康恩;阿多康恩。OnInitADOConn();CString sqlsql。格式( select * from %s,其中%s = %s ,表,索引,值);adoConn.m_pRecordset = adoConn。get recordset(_ bstr _ t)SQL);如果(!adoConn.m_pRecordset-adoEOF)CString str =(char *)(_ bstr _ t)adoconn . m

59、 _ pRecordset- get collect( GoodsLeftNum );阿多康恩。exit connect();return atoi(str)-num;其他阿多康恩。exit connect();return-1;4.5业务统计模块基本功能如下:void CTicketDlg:InitControl()m_list。SetExtendedStyle(LVS_EX_FLATSB|LVS_EX_FULLROWSELECT|LVS_EX_HEADERDRAGDROP|LVS_EX_ONECLICKACTIVATE| LVS _ EX _ GRIDLINES);M_list。Inser

60、tColumn(0,“票据编号”,LVCFMT_LEFT,100,500);M_list。InsertColumn(1,“商品编号”,LVCFMT_LEFT,100,500);M_list。InsertColumn(2,“数量”,LVCFMT_LEFT,86500);M_list。InsertColumn(3,价格,LVCFMT_LEFT,80,500);M_list。InsertColumn(4, date ,LVCFMT_LEFT,100,500);M_list。InsertColumn(5, time ,LVCFMT_LEFT,100,500);M_combType。InsertStri

温馨提示

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

评论

0/150

提交评论