企业进销存管理系统开发与实现[完整]_第1页
企业进销存管理系统开发与实现[完整]_第2页
企业进销存管理系统开发与实现[完整]_第3页
企业进销存管理系统开发与实现[完整]_第4页
企业进销存管理系统开发与实现[完整]_第5页
已阅读5页,还剩38页未读 继续免费阅读

下载本文档

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

文档简介

1、远程与继续教育学院本科毕业论文(设计)题目:企业进销存管理系统开发与实现 学习中心: 内蒙古学习中心 学 号: 090f24133042 姓 名: 毛晓艳 专 业: 计算机科学与技术 齐斯琴 2015年7 月 21日中国地质大学(武汉)远程与继续教育学院本科毕:毛晓艳 :090f24133042 专业: 计算机科学与技术 毕业设计(论文)题目: 企业进销存管理系统开发与实现 :(请对论文的学术水平做出简要评述。包括选题意义;文献资料的掌握;所用资料、实验结果和计算数据的可靠性;写作规范和逻辑性;文献引用的规范性等。还须明确指出论文中存在的问题和不足之处。)本设计尝试采用sql server数据

2、库技术,针对企业进销存业务需求,初步实现了小型企业日常销售业务管理功能。论文选题与内容相符,结构合理,文章结构完整,层次较为清楚。文献资料掌握、运用得当,论文撰写较规范。结论: 合格 (合格、不合格)齐斯琴所在单位内蒙古电大指导时间中国地质大学(武汉)远程与继续教育学院 本科毕业设计(论文)评阅教师评阅意见表 :毛晓艳 :090f24133042 专业: 计算机科学与技术 毕业设计(论文)题目: 企业进销存管理系统开发与实现 评阅意见:(请对论文的学术水平做出简要评述。包括选题意义;文献资料的掌握;所用资料、实验结果和计算数据的可靠性;写作规范和逻辑性;文献引用的规范性等。还须明确指出论文中存

3、在的问题和不足之处。)论文在研究现实意义的基础上选题企业进销存管理系统开发与实现具有一定的实践和经济价值。文章从背景、实际需求等方面阐述了系统的可行性,实现了该管理系统的基本功能,信息管理、进出货管理、系统维护等功能。论文结构比较分明,对于模块结构等介绍较为清晰,功能设计较详细。美中不足的是论文排版出现了些瑕疵,系统功能模块图制作不够规范,排版不合理造成版面溢出,图表等的标示不够规范。修改意见:(针对上面提出的问题和不足之处提出具体修改意见。评阅成绩合格,并可不用修改直接参加答辩的不必填此意见。)(1)完善论文排版方面的问题;(2)重新按规范制作图表;(3)增加参考文献;(4)第四章图片未编号

4、;(5)参考文献格式错误。毕业设计(论文)评阅成绩 (百分制): 70 评阅结论: 同意答辩 (同意答辩、不同意答辩、修改后答辩)李向所在单位计算机学院评阅时间2015-10-14论文原创性声明本人郑重声明:本人所呈交的本科毕业论文企业进销存管理系统开发与实现,是本人在导师的指导下独立进行研究工作所取得的成果。论文中引用他人的文献、资料均已明确注出,论文中的结论和结果为本人独立完成,不包含他人成果及使用过的材料。对论文的完成提供过帮助的有关人员已在文中说明并致以谢意。本人所呈交的本科毕业论文没有违反学术道德和学术规范,没有侵权行为,并愿意承担由此而产生的法律责任和法律后果。日期:2015年7

5、月 21日摘 要企业进销存管理系统是典型的信息管理系统,作为一种企业管理软件可以帮助企业快速有效地管理进货、销售、库存等各项业务。每个功能又有自己的子功能,可以完成对各类信息的查询、添加、删除、修改等功能。并且论述了商业进销存管理系统的设计思想,并给出了相应实现技术。系统中的数据格式和字段设置不具体针对某一个行业或企业,因而具有普遍的适用性,能够满足一般企业或者单位的进销存管理的需要。开发此软件是用的visual basic 6.0,microsoft sql server 2000 作为后台数据库。关键词:1、visual basic 6.0 2、sql server 2000 3、进销存管

6、理系统目 录一、绪论7(一)开发背景7(二)系统优点7二、开发此系统所用软件的介绍8(一) 开发工具的介绍8(二) sql server2000 介绍8三、系统分析11(一)进销存系统的调查11(二)系统流程调查13(三)项目规划13四、系统设计14(一)数据库结构设计14(二)数据库表具体设计14(三)系统模块功能图:23(三)设计目标24(四)开发与运行环境24五、系统实现25(一)系统模块介绍25(二)系统详细设计251 系统登录设计252 进货单273月销售状况304 库存状况325 库存盘点37六、总结41致谢42参考文献:43一、绪论(一)开发背景随着人类社会的进步与发展,当今的社

7、会已经进入了信息化的社会,中小企业在我国经济发展中具有重要地位,越来越多的信息已无法通过手工记录、人工管理来实现,信息在社会经济中发挥着越来越重要的作用,企业的来往业务也不断增加,这就要求通过一个好的管理软件来实现。因此,我国的中小企业必须借助先进的管理思想转变经营观念、使用信息化提高企业的管理水平和工作效率,只有这样在竞争激烈中才能取胜。要想在激烈的市场竞争中立于不败之地,没有现代化的管理是万万不行的,进销存管理的全面自动化、信息化则是其中极其重要的。为了加快企业管理自动化的步伐,提高企业的管理业务处理效率,建立进销存管理系统已经变得十分必要,进货、库存、销售还是现在企业管理的常规基本模式。

8、所以如何设计好进销存管理系统,尽可能地减少企业管理的重复性和低效性就成为当前最为重要的问题,而且这也将为企业管理带来前所示有的改变和意想不到的效益,同时也会为企业的飞速发展提供无限潜力。采用计算机管理信息系统已成为企业管理科学化和现代化的重要标志,它给企业管理带来了明显的经济效益。(二)系统优点主在体现在:极大提高了工作人员的工作效率,大减少了以往进、销、存流程繁琐,杂乱,周期长的弊端。基于进销存管理的全面自动化,可以减少进货管理、销售管理及库存管理中的漏洞,可以节约不少管理开支,增加企业收入。进销存管理的操作自动化和信息的电子化,全面提高了企业的管理水平,很好的处理了进货、销售、库存三者之间

9、的关系。二、开发此系统所用软件的介绍(一) 开发工具的介绍本系统采用的vb为开发工具,windows为前台开发平台microsoft sql server 2000 为后台数据库,采用c/s结构,客户/服务器的采用可以有效地为多个用户分配可用的资源。visual basic是一种可视化的、面对对象和利用事件驱动方式的结构化高级程序设计,可用于开发windows环境下的种类应用程序。它简单易学、效率高,且功能强大,可以与windows的专业开发工具sdk相媲美,而且程序开发人员不必具有c/c+编程基础。在visual basic环境下,利用事件驱动的编程机制、新颖易用的可视化设计工具,使用win

10、dows内部的应用程序接口(api)函数,以及动态链接库(dll)、动态数据交换(dde)、对象的链接与嵌入(ole)、开放式数据访问(odbc)等技术,可以高效、快速地开发出windows环境下功能强大、图形界面丰富的应用软件系统。visual basic是一种高级程序设计语言,不具备低级语言的功能,对访问机器硬件的操作不太容易实现。但它可以通过动态链接库技术将c/c+或汇编语言编写的程序加入到visual basic应用程序中,可以像调用内部函数一样调用其他语言编写的函数。此外,通过动态链接库,还可以调用windows应用程序接口(api)函数,实现sdk所具有的功能。visual bas

11、ic6.0 连接数据库的主要方式以下几种方式:一是:用data控件时行数据库链接,二是:利用adodc ( ado data control )进行数据库链接。三是:利用 dataenviroment 进行数据库链接。(二) sql server2000 介绍sql server 是microsoft公司开发的大型关系数据库管理系统,具有强大的关系数据库创建、开发、设计和管理功能。其最新版本sql server2000将数据库与internet紧密连接,可以通过web浏览器显示数据的操作,具有客户机/服务器的结构。sql server 2000 提供了对分布式事务处理的支持,并对开发工具有良好

12、的支持,为大型数据库项目提供了企业级解决方案。sql server2000 是在sql server 7.0 的基础上发展来的,作为在windows nt .windows 2000上运行的最好数据库,sql server 是企业用户和独立软件供应商们(indepent software vendors,isvs)创建企业应用程序时首选的关系数据库系统(rdvbms).随着用户需求的不断增长,sql server 已经在易用性,可收缩性和可靠性,数据仓库等方面获得了重大的创新。三、系统分析(一)进销存系统的调查通过对进销存管理各个方面进行了具体的了解之后,现对进销存管理系统的可行性进行分析。技

13、术上可行:该系统所需硬件设备,市场上销售且价格较低,甚至可以使用原有的设备,软件上,操作系统采用windows 系列操作系统,数据库管理系统采用visual basic,这些软件在mis开发中已被大量应用,技术上都比较成熟。因此在技术上是可行的。经济上可行:由于各个急需采用计算机来进行仓库的管理,因此对开发进销存系统大力支持,开发经费没有问题。管理上可行:进销存管理有很多的管理体制,每位入库物品都要有相应的记录,销售也要对相应入库的物品进入删减,同时入库和销售必须对每个物品的相应数量和单价进行录入。因此管理上可行。别外,进销存管理对开发该系统也是大力支持的,同时制定了培训计划,并进行了实施mi

14、s的物质准备和工作准备。系统分析阶段的目标,就是按系统规划所定的某个开发范围内明确系统开发的目标和用户的信息需求,提出系统的逻辑方案。1、需求分析通过实际调查,要求本系统具有以下功能:l 由于操作人员的计算机知识普遍偏低,因此要求系统具有良好的人机界面。l 如果系统的使用对象较多,则要求有较好的权限管理。l 方便的数据查询,支持多条件查询。l 批量填写进货单及销售单。l 在相应的权限下,删除数据方便简单、数据稳定性强。l 数据计算自动完成,尽量减少人工干预。2、可行性分析在现行系统初步调查的基础上就可以提出新系统目标,即新系统建立后所要求达到的运行指标,这是系统开发和评价的依据。新系统目标应充

15、分体现公司的战略目标、发展方向和基本特点,直接为公司管理服务,同时,新系统目标应该和现行系统的各项基本功能密切相关,并且可以分期分批实现。需要指出的是,新系统目标不可能在总体规划阶段就提得非常具体,它还将在开发过程中逐步明确和定量化。新系统目标的提法不尽相同,例如:提高工作效率和减轻劳动强度;提高信息处理速度和准确性;提供新的处理功能和决策信息等等。新系统的目标确定后,就可以从以下三方面对能否实现新系统目标进行可行性分析:(1)技术可行性根据新系统目标来衡量所需的技术是否具备,一般可从硬件、软件的性能要求、环境条件、技术人员水平和数量等方面去考虑和分析,其中开发人员的技术力量应首先考虑能力与水

16、平,并考虑近期内可以培养和发展的技术人员。(2)经济可行性估算新系统的开发费用和今后的运行、维护费用,估计新系统将获得的效益,并将费用与效益进行比较,看是否有利。购买和安装设备的费用:计算机硬件、系统软件、机房、电源、空调等,其它费用。系统的效益可以从经济效益和社会效益两方面考虑。对于企业管理信息系统则应着重分析其社会效益。例如,系统投入运行后可以提供哪些以前无法及时提供的信息,用户查询和使用信息的方便程度提高多少、速度增加了多少,对于管理人员进行决策提供了多少帮助等等。(3)运行可行性对新系统运行后给现行系统带来的影响(包括组织机构、管理方式、工作环境等)和后果进行估计和评价。同时还应考虑现

17、有管理人员的培训、补充,分析在给定时间里能否完成预定的系统开发任务等。按上述三方面进行可行性分析、研究后,就可整理并编制出新系统开发的可行性报告,它是总体规划工作的阶段性成果。(二)系统流程调查进销存系统主要是对货物的进货、销售、库存的管理。企业采用人工方式对物流进行统计,随着物流的加大,各类数据的统计报表的繁琐,原本的人工管理方式已经无法应付不断加大的物流。这就要求企业要有一套完整的管理系统对货物进行统一管理,实现进销存管理的机械化。通过调查得知系统应实现的功能:1、基本信息2、进货管理3、销售管理4、库存管理5、系统维护(三) 项目规划进销存管理系统具体规划如下:l 基础数据管理模块基础数

18、据管理模块主要负责对系统基本数据录入,相关基础数据为:库存商品、往来单位、内部职员。l 进货管理模块该模块主要负责商品的进货数据录入、进货退货数据录入、进货分析、进货统计(不含退货)、与供应商往来对账。l 销售管理模块该模块主要负责商品的销售数据录入、销售退货数据录入、销售统计(不含退货)、月销售状况(销售分析、明细账本)、商品销售排行、商品销售成本表。l 库存管理模块库存管理模块主要负责库存状况、库存商品数量上限报警、库存商品数量下限报警、商品进销存变动表、库存盘点(自支盘赢盘亏)。l 系统维护本单位信息、操作员设置、操作权限设置、数据备份和数据库恢复、数据清理四、系统设计(一)数据库结构设

19、计在企业进销存管理系统中,采用的是sql server 2000的数据库。数据库用来储存商品入库信息、商品出库信息、商品库存信息、操作员作息等。这里将数据库命名为db_spjxc,其中包含了11张数据表,用于存储不同的信息。企业进销存管理系统的数据库概要如下图所示。(二)数据库表具体设计表1 库存商品信息表(tb_kcspxx) 字段名数据类型长度描述tradecodevarchar5商品编号fullnamevarchar20商品全称namevarchar10商品简称typcvarchar10商品型号standardvarchar10商品规格unitvarchar10单位produccvarc

20、har20产地qtyfloat8库存数量priccfloat8时货时的最后一次进价avcragcpriccfloat8加权平均价salcpriccfloat8销售时的最后一次销价stockcbcckfloat8盘点数量uppcrlimitint4存货报警上限lowcrlimitint4存货报警下限providcinfvarchar40商品供货信息mcmovarchar40备注spcllvarchar20商品拼音简码表2 进货表(tb_jh)字段名数据类型长度描述billdotcdatctimc8录单日期billcodcvarchar20单据编号unitsvarchar20供货单位handlcv

21、archar10经手人summaryvarchar100摘要fullpaymcntfloat8应付金额paymcntfloat8实会金额表3 进货明细表(tb_jhmx)字段名数据类型长度描述billcodcvarchar20单据编号tradccodcvarchar20商品编号fullnamevarchar20商品名称typevarchar10商品型号standatdvarchar10商品规格produeevarchar20产地unitvarchar4单位qtyfloat8数量prieefloat8进价tsumfloat8金额billdatcdatetime8入账日期表4 销售表(tb_xs)

22、字段名数据类型长度描述billdatedatetime8录单日期billeodevarchar20单据编号unitsvaarchar20购货单位handlevarchar10经手人summaryvarchar100摘要fullgatberingfloat8应收金额gatheringfloat8实收金额tradccodcvarchar20商品编号fullnamevarchar20商品全称typcvarchar10商品类型standardvarchar10商品规格produccvarchar20商品产地unit varchar4单位qtyfloat8数量priccfloat8单价tsumfloat

23、8金额billdatedatetimc8入帐日期 表6 往来对账明细表(tb_wldzmx)字段名数据类型长度描述billdatc datcteme8录单日期billeodevarchar20单据编号summaryvarchar100摘要addgathcringfloat8应收增加rcduccgathcringfloat8应收减少balaneefloat8应收余额unitsvarchar20往来单位 表7 通讯录(tb_txl)字段名数据类型长度描述idintvarchar10性别varchar10电子邮件varchar50varchar50varchar20个人网页varchar50varc

24、har20varchar20职务varchar12部门varchar20办公室varchar20公司名称varchar50业务网页varchar50 表8 员工信息表(tb_ygxx)字段名数据类型长度描述cmpoyccoddvarchar5员工编号fullnaemvarcahr10全称namevarchar20sexvarchar2性别departmcptvarchar20部门tclvarchar20mcmovarchar40备注表9 系统用户表(tb_xtyh)字段名数据类型长度描述sysuservarchar20用户名passwordvarchar20密码stockbit库存vcndit

25、ionbit销售stotagebit存货systembit系统basebit基本信息表10 销售退货明细表(tb_xsthmx)字段名数据类型长度描述billeodcvarchar20编号tradccodevarchar20贸易编号fullnamevarchar20商品全称standardvarchar10标准typevarchar10类型produccvarchar20产品unitvarchar4单元qtyfloat数量priccfloat单价tsumfloat统计billdatcdatetime入帐日期 表11 销售主表(tbs_xsz)字段名数据类型长度描述billdatcdatctim

26、e入帐日期unitsvarchar20帐单编号unitsvarchar20单位handlevarchar10经手人summaryvarchar100摘要fulpaymcntfloat付款总额paymcntfloat付款金额表12 销售退货明细表(tb_xsthmx)字段名数据类型长度描述bilcodcvarchar20帐单编号tradccodcvarchar20贸易编号fullnamevarchar20商品全称typevarchar10类型standardvarchar10规格producevarchar20产品unitvarchar4单位qtyfloat数量prieefloat单价tsumf

27、loat统计数量billdatedatetimc入帐日期 表13 销售退货主表(tb_xsthz)字段名数据类型长度描述billdatedatetime入帐日期billeodevarchar20帐单编号unitsvarchar2单位handlevarchar10经手人wummaryvarchar100摘要fullgathcringfloat收款总数gatberingfloat收款 表14 销售排序表(tb_xspx)字段名数据类型长度描述tradeeodevarchar20贸易编号fullnamevarchar20商品全称qtyfloat数量tsumfloat统计表15 临时表(tb_lsb)

28、字段名数据类型长度描述billdatevarchar8入帐日期qtyfloat数量tsumfloat统计数量tradeeodevarchar20贸易代码 表16 商品单位表(tb_spdw)字段名数据类型长度描述uniteodevarchar5编号fullnamevarchar20商品全称namevarchar10名称taxvarchar30telvarchar20linkmanvarchar10联系人addressvarchar60地址aeeountsvarchar80帐号gatberingfloat收款金额paymeptfloat付款金额spellvarchar20商品简称表17 进货退货

29、明细表(tb_jhthmx)字段名数据类型长度描述billeodevarchar20帐单编号tradccodcvarchar20贸易编号fullnamevarchar20商品全称typevarchar10类型standardvarchar10规格produeevarchar20产品unitvarchar4单位qtyfloat数量prieefloat单价tsumfloat统计billdatedatetime入帐日期表18 进货退货表(tb_jhth)字段名数据类型长度描述billdatedatetime入帐日期billeodevarchar20帐单编号unitsvarchar20单位hardle

30、varchar10经手人wummaryvarchar100摘要fullpaymentfloat付款总额paymentfloat付款金额(三)系统模块功能图: 如下:系统登录企业进销存管理系统系统维护库存管理销售管理进货管理基本信息(四)设计目标 本系统属于小型数据库系统,可以对中小型企业进销存进行有效的管理。通过本系统可以达到以下目标。l 灵活地运用表格批量录入数据,使信息传递快捷。l 系统采用人机对话方式,界面友好美观,信息查询灵活、方便、数据存储安全可靠。l 实施强大的后台监控功能。l 实时功能强大的月营业分析。l 实现各种查询,如定位查询、模糊查询等。l 实现商品进货分析与统计、销售分析

31、与统计、商品销售成本明细功能。l 有强大的库存预警功能,尽可能减少商家不必要的损失。l 对用户输入的数据,系统进行严格的数据检验,尽可能排除人为的错误。l 系统最大限度地实现了安装易安装、易维护和易操作性。(五)开发与运行环境ll 数据库管理系统软件:sql server2000l 运行平台:windows xp/windows2000/windows 2003l 分辨率:最佳效果1034*768像素五、系统实现(一)系统模块介绍(1)公共模块设计:公共模块中定义了在本系统中需要使用的公共变量和公共过程。(2)系统登录模块设计:系统登录是用户进入到程序系统的门户,只有通过登录模块,才能对登录用

32、户进行身份验证,只有系统的合法用户才可以进入系统的主界面。(3)对商品的基础信息进行维护和管理模块:能够完成商品信息的添加、修改和删除,并按照一定的条件查询商品信息。(4)库存商品查看功能模块:可按不同字段和条件查询库存商品信息。(5)查询统计功能模块:要求既可以按日期查询也可以按用户选择的字段和输入的内容查询,并在查询过程中统计销售数量和销售金额。(6)统计分析某个客户或所有客户某段时间内商品销售品种、销售数量和销售金额。(二)系统详细设计1、系统登录设计系统登录主要用于对进入进销存管理系统的用户进行安全性检查,以防止非法用户进入该系统。只有合法的用户,才可以进入系统,同时根据管理员分配的权

33、限,给予操作员相应的操作权限。验证操作员及其密码,主要通过记录集结果并结合if语句判断用户选定的操作员及其输入的密码是否符合数据库中的操作员和密码,如果符合则允许登录,并给予登录,并给予相应的权限,否则提示用户非法登录。系统登录窗体运行结果如下图所示:图1 系统登录窗体(一)窗体设计(1) 新建一个窗体,将窗体的“名称”属性设置为frm_login , bordesstyle属性设置为none , 设置 picture属性,为窗体添加图片。(2) 在窗体上添加adodc 控件,由于该控件属于activex控件,在使用之前必须从“部件”对话框将其添加到工具箱中,添加方法为:在“工程”/“部件”对

34、话框中勾选“microsoft ado data controls6.0(sp4)”列表项。(3) 在窗体中添加个文本框控件,分别设置“名称”属性为txtname和txtpassword,设置barderstyle属性为none.(4) 在窗体中添加个label4的caption属性为“确定”和“取消”。(二)代码设计在代码窗口的声明部分定义如下变量。dim txtrs as string在窗体装载事件中,通过ado控件的connectionstring属性建立数据连接,代码如下:private sub form_load()adodc1.connectionstring=publicstr

35、建立数据库连接adodc1.recordsource=”select * from tb_enter” 执行sql语句adodc1.refresh 刷新数据源end sub2、进货单在商品进货过程中,如果进货的商品品种较多、数量也很大,那么使用文本框一条一条的录入数据,效率将会很低。vb提供的msflexgrid控件,处理数据比较灵活,虽然显示的数据是只读的,但可以通过textbox换件向msflexgrid控件中输入数据,然后使用for循环逐一将表格中数据添加到数据表中。(一)窗体设计(1) 新建个窗体,将窗体的“名称”属性设置为frm_stockbill, caption属性设置为“进货单

36、”、maxbutton属性为false。(2)在窗体上添加adodc控件和datagrid控件,由于这两个控件属于activex控件,在使用前必须从“部件”对话框(如图2所示)将其添加到工具箱中,添加方法;在“工程”/“部件”对话框中勾选“microsoft ado data controls6.0(sp4)”列表项(adodc控件)和勾选“microsoft datagrid controls6.0(sp5)”列表项(datagrid控件)。图2添加activex控件在窗体中添加3个datagrid控件,使用默认名称,分别设置控件的选取框样式,在datagrid控件上单击鼠标右键,选择“属性

37、”菜单,弹出“属性页”,选择“拆分”选项卡,将datagrid控件的选取边框样式设置为4-dbghighlightrowraise,如图3所示。a图3设置边框样式(3) 在窗体中添加6个ado控件,名称分别为adodc1、adodc2、adocunt、adostock、adoemploy、adounits, visible属性均设置为false.(4) 在窗体中添加textbox控件、label控件和commandbutton控件。(5) 添加dtpicker控件,该控件属于activex控件,在使用之前必须从“部件”对话框中添加到工具箱中。添加方法为:在“工程”/“部件”对话框中勾选“”列表

38、项,添加dtpicker控件后,其名称为默认的dtpicker1。(6) .添加 msflexgrid控件,由于该控件属于activex控件,在使用之前必须从“部件”对话框中添加到工具箱,添加方法为:在“工程”/“部件”对话框中勾选“microsoft flexgrid controls6.0(sp3)”列表项,添加后,设置名称为“msi”,其他属性均为默认设置。进化管理窗体的设计结果如图4所示:图4进货窗体的设计结果(二)代码设计窗体的装载过程中,主要实现以下功能:(1) 建立数据库的连接,初始化ado数据源。(2) 将职员表、往来单位表、库存表通过set语句绑定到相应的datagrid表格

39、中。(3) 初始化msflexgrid表格总行数和总列数、列标题。private sub form_load() adodc1.connectionstring=publicstr 建立数据库连接adodc1.recordsource=”select *from tbs_warehouse_main” 初始化数据源 adodc2.connectionstring=publicstr adodc2.recordsource=”select * from tbs_warehouse_detailed”adocount.connectionstring=publicstradocount.recor

40、dsource=”select * from tbs_currentaccount”adounits.connectionstring=publicstradounits.recordsource=”select unitcode.fullname from tbs_units” set datagrid2.datasource=adounitsadoemploy.connectionstring=publicstradoemploy.recordsource=”select employecode,fullname from tbs_employ”set datagrid1.datasour

41、ce=adoemploy 使用set语句设置datasource属性3、月销售状况月销售状况窗体下含有两个子窗体和一个商品销售状况报表。窗体别为销售分析窗体和明细账本窗体。月销售状况主要先统计当年的所有商品销售数据信息(含销售退货)和净销售商品数据信息,然后根据分析出的基础数据,以商品为单位利用图表月销售分析;以商品为单位分析商品的销售明细账本和销售退货明细账本。月销售状况模块运行结果如图5所示。图5月销售状况模块运行结果(一)月销售状况窗体设计(1) 新建一个窗体,将窗体的“名称”属性设置为frm_salestatus,caption属性设置为“月销售状况”、maxbutton属性为fals

42、e。(2) 在窗体中添加1个datagrid控件,使用默认名称;在窗体中添加个adodc控件均使用默认名称。(3) 添加toolbar控件和imagelist控件到工具箱在窗体上制作工具栏是通过toolbar换件和imagelist控件工同来实现的。toolbar控件和imagelist控件都属于activex控件,使用时需要从“部件”对话框中添加。(4) 在窗体上添加statusbar控件,为窗体设计状态栏,在状态栏的空格中显示合计商品销售数量和销售金额。(二)月销售状况代码设计在窗体装载时统计全年的商品销售状况,主要使用sql语句左外联接技术(左向外联接的结果集包括left子句中指定的左表

43、的所有行,而不仅仅是联接列所匹配的行,如果左表的某行在右表中没有匹配行,则在相关联的结果集行中右表的所有选择列表均为空值。)将销售明细表(tas_sell_detailed)和销售退货明细表(tbs_resell_detailed)进行统计计算,并显示销售数量和销售金额及除去净销售数量和销售金额(不含退货)。部分代码如下:private sub for _load()adodc1.connectionstring=publicstr 共享数据库连接adodc2.connectionstring=publicstradodc3.connectionstring=publicstrado控件的re

44、cordsource执行sql语句 统计销售状况adodc1.recordsource=“select a.tradecode as 商品编号,a.tsum as 销售金额,a.qty-b.qty2 as 销售数量【含退货】,a.tsum-b.tsum2 as 销售金额【含退货】” set datagrid1.datasource=adodc1 将数据源绑定到datagrid控件上datagrid1.columns(0).width=12*25*3 初始化datagrid单元格的宽度datagrid1.columns(1).width=12*25*7datagrid1.columns(2).w

45、idth=12*25*3 datagrid1.columns(3).width=12*25*3datagrid1.columns(4).width=12*25*3datagrid1.columns(5).width=12*25*6datagrid1.columns(6).width=12*25*6 ado控件的recordsource执行sql语句 统计销售数量和销售金额adodc2.recordsource=”select sum(qty) as 销售数量,sum(tsum) as 销售金额 from tbs_sell_detailed” adodc3.recordsource=”selec

46、t sum(qty) as 退货数量,sum(tsum) as 退货金额 from tbs_resell_detailed” sbar1.panels(1).alignment=sbrcenter 在状态栏的窗格中,显示文本sbar1.panels(2).alignment=sbrcentersbar1.panels(3).alignment=sbrcenter 在状态栏的第2个窗格中显示销售数量sbar1.panels(2).text = “销售数量:” & adodc2.recordset.fields(0).value-adodc3.recordset.fields(0).value s

47、bar1.panels(3).text = “销售金额:” &format(adodc2.recordset.fields(1).value adodc3.recordset.fields(1).value,”)end sub4、库存状况 库存状况主要功能为查看库存商品数量、商品均价、库存商品总价以及库存上下限设置,及调用了窗体库存明细账本,库存状况模块运行结果如图6所示。图6 库存状况运行模块(一)窗体设计(1) 新建1个窗体,将窗体的“名称”属性设置为frm_stock,caption属性设置为“库存状况”、maxbutton属性为false.(2) 在窗体上添加2个adodc控件和dat

48、agrid控件,由于二者属于activex控件(添加方法前面已经讲解过了),在此其属性均为默认设置。(3) 在窗体上添加toolbar控件和imagelist控件,设计二者控件的属性方法同“月销售状况窗体”的toolbar控件和imagelist控件,设计二者控件设计控件属性方法完全相同。(4) 添加datacombo控件,该控件属于activex控件,在使用之前必须从“部件”对话框中添加到工具箱,添加方法为:在“工程”/“部件”对话框中勾选”microsoft datalist controls 6.0(sp5)”列表项,其属性均为默认设置。 (5) 添加labcl控件、tcxtbox控件、

49、commandbutton控件。(6) 在窗体上添加stausbar控件,该控件属于activcx控件,添加toobar控件时已经将statusbar控件添加到工具箱中了,设置statusbar控件前面已经讲解过了在此不做介绍。本名称属性为默认值,添加3个窗格,第一个窗格文本设置为“合计“,其他属性均为默认设置。 库存状况窗体设计结果如图7所示。图7 库存状况窗体设计结果(二)程序代码设计保存库存上下限报警设置。在【确定】按钮的click事件下添加代码如下: privatc sub cmdsavc_click() ado控件的rccordsourcc执行sql语句 on error rcsum

50、c next adodc2.recordsouree=”select*fromtbs_stockwhere tradeeode= ”+adodc1.recordset.ficlds(0) +” if err.number0 thenif msgbox(“出现”数据库中无有效数据“错误,是否继续?“,vbquestion+vbyesno,”系统提示”)=vbno then frame2.visible=false exit subend ifend ifif adodc2.rceordset.rceordcount0 then adodc2.rceordset.fields(“upperlimit”).valuc = val(text1.text)adodc2.rceordset.fields(“lowerlimit”).valuc = val(text2.text)msgbox”设置成功!”frame2.visiblc=falsetext1.text=”: text2.text=”else msgbox”无库存商品”end ifend sub选择商品名称来提取上次设置的库存上下限设置。在datacombo1控件的change事件下添加代码如下:private sub datacombo1_chan

温馨提示

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

评论

0/150

提交评论