小型企业办公耗材库存管理软件的设计与实现——毕业论文_第1页
小型企业办公耗材库存管理软件的设计与实现——毕业论文_第2页
小型企业办公耗材库存管理软件的设计与实现——毕业论文_第3页
小型企业办公耗材库存管理软件的设计与实现——毕业论文_第4页
小型企业办公耗材库存管理软件的设计与实现——毕业论文_第5页
已阅读5页,还剩28页未读 继续免费阅读

下载本文档

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

文档简介

小型企业办公耗材库存管理软件的设计与实现摘 要在经济全球化和信息技术飞速发展的今天,企业信息化水平的高低是带动企业技术创新和各项工作升级与否的关键。目前,基于B/S (Browser/ Server)模式的MIS(Management information system)日益成熟,企业的Web已从静态的HTML到动态的网页,使系统的开发、管理和维护变得非常方便。因此,本系统研究并开发了基于B/S模式的库存管理信息系统。库存管理系统是将企业的存和转等企业的经营业务有机的结合起来,达到数据共享、降低成本、提高效率。本系统前台采用.NET,后台数据库采用SQL Server 2000,语言采用C#。本系统实现的主要功能有库存查询、进货作业、领料作业、库存盘点、损坏处理等。在系统完成后对工作进行了总结,对系统功能进行了测试,并指出了系统中的问题和需要改进的地方。关键词:B/S,C#,库存管理系统,.NETThe Design and Implementation of Stock Management Software for Small Business Consumption MaterialAbstractNowadays, with the economic globalization and information technology develop rapidly, the lever of enterprise technology is the key to the innovation and upgrading of enterprise technology .Currently, the model of MIS (Management in formation system) which Based on the B / S (Browser / Server) becomes increasingly mature. The enterprise Web has changed from static HTML to dynamic website, with the system of development, management and maintenance becomes more convenient. Therefore, the research and development system has developed stock management information system which based on the B / S mode.The stock management system is the organic combination of enterprise storage, transfer and other enterprises operating, in order to achieve data sharing, reduce costs and improve efficiency. This system onstage uses NET, the backstage database uses SQL Server 2000 and the language uses C#. The main function includes that: inventory inquiries, wholesale operations, the Material operations, inventory checks, damage processing. After the work and the functional text, the system will point out where needs to be improved.Key words:B/S, C#, Stock management system, .NET目录论文总页数:29页1 引言11.1 系统的背景和意义11.2 系统设计目标11.3 系统的开发工具11.3.1 开发环境11.3.2 编程运行环境32 系统需求分析32.1 用户身份级别要求32.2 系统功能模块设置43 库存管理系统总体设计53.1 数据库设计53.2 系统模块分析与设计103.3 界面设计123.4 系统流程图134 库存管理系统功能模块的具体实现144.1 系统主要功能模块的实现及部分代码144.1.1 用户注册和登录界面144.1.2 进货作业154.1.3 库存盘点194.2系统实现的关键技术204.2.1 数据库的连接技术205 系统功能的测试与分析225.1 用户注册功能测试与分析225.2 进货作业功能测试与分析245.3 库存盘点功能测试与分析25结 论27参考文献27致 谢28声 明291 引言随着互联网技术的迅猛发展,网络给人们带来了很多便利,借助于网络进行各种信息的管理与查询。库存管理系统是将企业的存和转等企业的经营业务有机的结合起来,达到数据共享、降低成本、提高效率、改进服务等目的。研制库存管理系统的总体目标是将网络技术、信息技术、现代管理技术和科学的评价方法相结合,建立库存管理和信息交流平台,以推动库存管理工作的科学化、规范化,提高库存管理的效率。我们引入了科学的管理机制,建立了较完善的管理功能体系,管理过程涉及货物进货、出货、转存和盘点等各个阶段,实现了对仓库货物的标准化管理。1.1 系统的背景和意义电子商务的发展和市场竞争的加剧将企业推上了风口浪尖,中小企业除了积极迎接挑战之外,别无选择。网络的兴起与电子商务的发展带来了时空界限的突破、贸易方式的变革和经济活动的革命,从某种意义上来讲,这些变化为中小企业创造了与大型企业、国外企业平等竞争的有利条件。然而,管理水平的差异会弱化这种平等的实际意义。具体而言,中小企业在进、销、存等环节的管理上都存在着一定程度的不足,而这些不足无疑将使其在市场竞争中陷入被动的境地。在网络经济的时代背景下,进行有效的库存管理必然存在着一定的难度,因此必须借助现代化的管理方法和管理技术库存管理系统。库存管理系统是基于先进的软件和高速基础上的新型存储管理模式通过集中式的信息数据库,将企业的调、存、转等企业的经营业务有机的结合起来,达到数据共享、降低成本、提高效率、改进服务等目的。主要作用是:提高管理效率降低人工成本;降低采购成本;及时调整营销策略,防止价格流失;减少仓储面积,提高房产综合利用率;降低储备资金占用。1.2 系统设计目标1) 本系统首先要实现动态性和交互性。所谓的动态性就是能动态更新内容,如更新库存信息、进货信息和出货信息等,这要求与数据库有良好的连接; 2) 一般用户和管理员在使用系统时,实现系统操作方便的特点;3) 实现系统的安全性和可靠性,避免他人进入破坏数据库信息。1.3 系统的开发工具1.3.1 开发环境1) B/S模式介绍:B/S(Browser/Server)结构即浏览器和服务器结构。它是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。在这种结构下,用户工作界面是通过WEB浏览器来实现,极少部分事务逻辑在前端(Browser)实现,但是主要事务逻辑在服务器端(Server)实现,形成所谓三层3-tier结构。这样就大大简化了客户端电脑载荷,减轻了系统维护与升级的成本和工作量,降低了用户的总体成本(TCO)。以目前的技术看,局域网建立B/S结构的网络应用,并通过Internet/Intranet模式下数据库应用,相对易于把握、成本也是较低的。它是一次性到位的开发,能实现不同的人员,从不同的地点,以不同的接入方式(比如LAN、WAN、Internet/Intranet等)访问和操作共同的数据库;它能有效地保护数据平台和管理访问权限,服务器数据库也很安全。特别是在JAVA这样的跨平台语言出现之后,B/S架构管理软件更是方便、快捷、高效。2) .NET介绍.NET 就是 Microsoft 的 XML Web 服务平台。不论操作系统或编程语言有何差别,XML Web 服务能使应用程序在 Internet 上传输和共享数据。Microsoft .NET 平台包含广泛的产品系列,它们都是基于XML和Internet行业标准构建,提供从开发、管理、使用到体验 XML Web 服务的每一方面。XML Web 服务将成为您今天正在使用的 Microsoft 的应用程序、工具和服务器的一部分并且将要打造出全新的产品以满足您所有业务需求。 更具体地说,Microsoft 正在五个方面创建 .NET 平台,即工具、服务器、XML Web 服务、客户端和 .NET 体验。Web服务从由简单网页构成的静态服务网站,发展到可以交互执行一些复杂步骤的动态服务网站,这些服务可能需要一个Web服务调用其他的Web服务,并且像一个传统软件程序那样执行命令。这就需要和其他服务整合,需要多个服务能够一起无缝地协同工作,需要能够创建出与设备无关的应用程序,需要能够容易地协调网络上的各个服务的操作步骤,容易地创建新的用户化的服务。3) C#介绍微软推出C#(C sharp) 是微软对这一问题的解决方案。C#是一种最新的、面向对象的编程语言。它使得程序员可以快速地编写各种基于Microsoft .NET平台的应用程序,Microsoft .NET提供了一系列的仅是开发一个“标志性”的版本。C#在设计时就考虑了这些问题。它使开发者用更少的代码做更多的事,同时也不易出错。支持现有的网络编程新标准 新的应用程序开发模型意味着越来越多地解决方案依赖于新出现的网络标准,例如HTML,XML,SOAP等。现存的开发工具往往都是早于Internet出现的,或者是在我们所熟知的网络还处于孕育期时出现的。所以,它们一般工具和服务来最大程度地开发利用计算与通讯领域。正是由于C#面向对象的卓越设计,使它成为构建各类组件的理想之选。无论是高级的商业对象还是系统级的应用程序。使用简单的C#语言结构,这些组件可以方便的转化为XML 网络服务,从而使它们可以由任何语言在任何操作系统上通过Internet进行调用。最重要的是,C#使得C+程序员可以高效的开发程序,而绝不损失C/C+原有的强大的功能。因为这种继承关系,C#与C/C+具有极大的相似性,熟悉类似语言的开发者可以很快的转向C#。效率与安全性新兴的网络经济迫使商务企业必须更加迅速的应对竞争的威胁。开发者必须不断缩短开发周期,不断推出应用程序的新版本,而不仅无法很好地支持最新的网络技术。4) MS SQL Server 2000介绍SQL Server 2000还为数据库管理与分析带来了灵活性,允许单位在快速变化的环境中从容响应。从而获得竞争优势。从数据和分析角度看,将原始数据转化为商业只能和充分利用Web带来的机会非常重要。作为一个完整的数据库和数据分析包,SQL Server 2000为快速开发新一代企业级商业应用程序,为企业赢得了核心竞争优势。1.3.2 编程运行环境本系统的开发环境为:l 硬件环境: CPU: AMD Sempron(tm) 2400+ 内存:512 MB 硬盘:80 Gl 软件环境: 操作系统:Microsoft Windows XP 应用软件:SQL Server 2000 + Microsoft Visual Studio 20052 系统需求分析本系统目的是让管理者能够对仓库存储进行更有效,更经济,更方便地管理而开发的。2.1 用户身份级别要求即根据身份的不同对系统的使用权限有所不同。从权限大小大致可以分为:系统管理员、一般注册用户、未注册用户。系统提供灵活的角色设定和权限的分配功能。1) 系统管理员:最高级权限的用户,拥有库存管理系统的所有权限。主要负责对库存数据的添加,修改,删除等操作,对一般注册用户下放权限,对系统进行日常的维护和管理,排除故障。2) 一般注册用户:权限被限制用户。只具有访问系统中某些功能的操作(如查询。3) 未注册用户:未具有任何权限的用户。只能通过注册才能进入库存管理系统。2.2 系统功能模块设置1) 用户注册:未注册用户需注册后才能进入系统。 操作对象:所有未注册用户。 浏览对象:所有未注册用户。 具体操作:注册用户在需填写用户名和密码才能注册。2) 用户管理:对注册用户和管理员的基本信息进行操作。对用户权限进行设置。 操作对象:系统管理员 浏览对象:系统管理员3) 库存查询:合法用户可以查看库存的所有信息,可以查询总库存和各分仓库的库存,用户可以根据种类名和货物名查找匹配的物品。 操作对象:注册用户、管理员 浏览对象:注册用户、管理员4) 进货作业:管理员通过记录每次进货的物品的详细信息,系统在进货表中产生一条进货记录。 操作对象:管理员 浏览对象:管理员 具体操作:管理员需将物品的货物号,种类号,种类名,货物名,数量,进货价格,仓库号,厂家号依次填入对应的栏目中,最后点击确定即可。5) 领料作业:管理员输入每次出货物品的信息,系统在出货单中产生一条出货记录。 操作对象:管理员 浏览对象:管理员 具体操作:管理员在下拉菜单中选择相应的货物种类和货物名,在对应的空白栏中输入出货货物的厂家、数量、单价、领料人的名字,最后单击确定即完成该操作。6) 损坏处理:由于功能与领料作业类似,所以属于领料作业的子功能模块。 操作对象:管理员 浏览对象:管理员 具体操作:与领料作业类似。7) 库存转库:用于将一个仓库的商品转移到另一个仓库。内容包括编号、源部门、目的部门、数量、货物号、经手人、调货日期等。由于是小型企业,所以同种类的商品都分在同个仓库中,需要调库时需将所有同种类的货物进行转库,不再对同种类不同货物名的商品进行细分。 操作对象:管理员 浏览对象:管理员 具体操作:管理员在下拉菜单中选择该种类货物对应的货物种类、数量和源仓库号,填入目的仓库和经手人即可。8) 库存盘点:用于管理企业的库存盘点工作,将实际盘存的商品数量输入计算机,计算机自动与数据库中的库存数量进行核对,并产生盘盈盘亏统计信息。 操作对象:管理员 浏览对象:管理员 具体操作:管理员选择盘点的货物名,输入该货物的厂家和数量,点击确定后即在该页面的下放显示出盘盈盘亏的信息。9) 历史查询:用于查询各种转库、盘点、进货、出货的历史数据。 操作对象:注册用户、管理员 浏览对象:注册用户、管理员10) 退出登录:让所有合法用户在操作完后顺利的退出系统。 操作对象:所有用户3 库存管理系统总体设计3.1 数据库设计数据库设计是系统设计中非常重要的一个环节,因为数据库设计就像在建设高楼大厦的根基一样,如果设计不好,在后来的系统维护,变更和功能扩充时,甚至于在系统开发过程中,将会引起比较大的问题,有时大量的工作将会重新进行。因此,设计出合理的数据库成为本系统设计一个十分关键的步骤。至今,数据库设计的很多工作仍需要人工来做,除了关系型数据库已有一套较完整的数据范式理论可用来部分地指导数据库设计之外,尚缺乏一套完善的数据库设计理论、方法和工具,以实现数据库设计的自动化或交互式的半自动化设计。所以数据库设计今后的研究发展方向是研究数据库设计理论,寻求能够更有效地表达语义关系的数据模型,为各阶段的设计提供自动或半自动的设计工具和集成化的开发环境,使数据库的设计更加工程化、更加规范化和更加方便易行,使得在数据库的设计中充分体现软件工程的先进思想和方法。用户的需求具体体现在各种信息的提供,保存,更新和查询,这就要求数据库结构能充分满足各类信息的输入和输出。收集基本数据,数据结构以及数据处理的流程而制作一份详细的数据库需求分析表,为合理的数据库结构设计打下坚实的基础。根据毕业设计库存管理系统的一般要求,再通过需求分析得出系统的实体表:用户管理表:ADMIN_LIST,总库存表:GOODS_LIST,货物明细表:GOODS_LIST,货物种类表:GOODS_TYPES,货物名表:GOODSNAME_LIST,进货明细表:JINHUO_LIST,出货明细表:CHUHUO_LIST,货物调拨表:MOVE_LIST,盘点表:PanDian_LIST,货物损坏表:SUNHUAI_LIST。共10张表。根据系统运行分析和数据流程分析,设计出实际的数据库实体,以及他们之间的关系,为后边的数据库逻辑结构设计打基础。这些实体包括各种具体信息,通过相互之间的作用形成数据的流动。通过Microsoft Office Visio 2003软件绘制出表与表之间的逻辑关系。(如图1)图1 库存管理系统E-R图经过前面的需求分析和数据库表的逻辑结构设计。系统采用Microsoft SQL Server 2000作为数据库开发工具,创建名为KunCunManage数据库,根据数据功能的实现和将来系统功能的扩展,设计如下数据项:表1 用户管理表ADMIN_LIST简称列名数据类型长度允许空备注用户IDUserIdchar10not nullPK用户密码Passwordchar10not null权限Jurisdictionchar10not null表2 货物明细表GOODS_LIST简称列名数据类型长度允许空备注货物号HuoWuIdchar10not nullPK厂家BusinessIdchar10not nullPK货物名HuoWuNamechar20null种类号TypeIdchar5null数量SiQtyint4null进货价EnterPricedecimal9null出售价OutPricedecimal9null表3 总库存表GOODS_LIST简称列名数据类型长度允许空备注种类名TypeNamechar50null种类号TypeIdchar10not nullPK数量SiQtyint4null仓库号StoreHouseIdchar10null库存金额StorePricedecimal9null表4 货物种类表GOODS_TYPES简称列名数据类型长度允许空备注种类号TypeIdchar10not nullPK种类名TypeNamechar50null表5 货物名表GOODSNAME_LIST简称列名数据类型长度允许空备注货物号HuoWuIdchar10not nullPK货物名HuoWuNamechar20null表6 进货明细表JINHUO_LIST简称列名数据类型长度允许空备注清单编号SeriaNumberint4not nullPK货物号HuoWuIdchar10null货物名HuoWuNamechar20null种类号TypeIdchar10null进货数量JinHuoSiQtyint4null进货单价EnterPricedecimal9null进货总价EnterTotalPricedecimal9null仓库号StoreHouseIdchar10null厂家BusinessIdchar10null进货日期DateTimedatetime8null表7 出货明细表CHUHUO_LIST简称列名数据类型长度允许空备注清单编号SeriaNumberint4not nullPK货物名HuoWuNamechar20null货物号HuoWuIdchar10null种类号TypeIdchar10null出货数量ChuHuoSiQtyint4null出售单价OutPricedecimal9null出售总价OutTotalPricedecimal9null仓库StoreHouseIdchar10null厂家BusinessIdchar10null出货日期DateTimedatetime8null领料人PeopleNamechar10null表8 货物调拨表MOVE_LIST简称列名数据类型长度允许空备注清单编号SeriaNumberint4not nullPK源仓库SourceStoreHouseIdchar10null目的仓库DestinationStoreHouseIdchar10null种类号TypeIdchar10null种类名TypeNamechar10null数量SiQtyint4null日期DateTimedatetime8null经手人PeopleNamevarchar50null表9 盘点表PanDian_LIST简称列名数据类型长度允许空备注清单编号SeriaNumberint4not nullPK货物号HuoWuIdchar10null货物名HuoWuNamechar10null厂家BusinessIdchar10null盘点数量PanDianSiQtyint4null库存数量StoreSiQtyint4null出售价OutPricedecimal9null盘盈PanYdecimal9null盘亏PanKdecimal9null日期DateTimedatetime8null表10 货物损坏表SUNHUAI_LIST简称列名数据类型长度允许空备注清单编号SeriaNumberint4not nullPK货物名HuoWuNamechar20null货物号HuoWuIdchar10null种类号TypeIdchar10null损坏数量SunHuaiSiQtyint4null厂家BusinessIdchar10null日期DateTimedatetime8null3.2 系统模块分析与设计1) 系统登录:与一般的登录系统相似,主要是对登录用户的身份进行合法性验证。登录身份分为两种:一般用户和管理员。若为为注册用户,则需先注册后才能登录系统。2) 用户注册:在登录界面未注册用户通过点击注册按钮跳转到注册界面。与一般的注册流程一样,用户在注册时需检验用户名是否可用,以及密码与确认密码是否匹配。3) 用户管理:一般用户和管理员的权限的管理都在“用户管理”模块中,系统管理员可以查看所有合法用户的信息,有权添加、删除和修改所有合法用户的信息,一般用户没有该权限。4) 库存查询:系统的合法用户可以通过汇总查询查看库存中的所有信息,也可以选择种类名和货物名查看自己所想找的货物。5) 进货作业:由管理员输入所进货物的详细信息,在进货单中生成一条记录。此时要判断货物几种情况:(1)该货物在库存中已经存在;(2)所进的货物在库存中不存在时又分三种情况:1是在库存中有该种类和名字但没有该厂家的货物(如库存中有墨盒1,厂家为A;墨盒1,厂家B;所进货物为墨盒1,厂家C);2是在库中有该种类但没有该名字的货物(如库中有墨盒1,墨盒2,所进货物为墨盒3);3是库中没有该种类的货物。管理员在确定数据无误后,系统会根据不同的情况对不同的表进行插入和更新。6) 领料作业:由管理员输入所领货物的详细信息,在领货单中生成一条记录。此时要判断领出货物数量的情况:首先要判断所输入的数量是否合法(是否超出了库存数量);其次判断所领货物的数量小于和等于库存中该产品的数量。管理员在确认后,系统会根据不同的情况对不同的表进行更新和删除操作。7) 损坏清理:属于领料作业的子功能,系统将通过损坏的货物数量对明细表和总库存表进行更新和删除操作。8) 库存转库:管理员输入目的仓库后,系统将选定的货物的仓库转向目的仓库,达到调拨货物的作用。同种类的商品都分在同个仓库中,需要调库时需将所有同种类的货物进行转库,不再对同种类不同货物名的商品进行细分。9) 库存盘点:管理员将实际盘存的货物数量输入计算机,计算机自动与数据库中的库存数量进行核对,并产生盘盈盘亏统计信息。计算盘盈盘亏采用了教为简便的方法,即将实际盘存的货物数量与数据库中的库存数量进行相减,得到正值即为盘盈,负值为盘亏。10) 历史查询:用户通过输入日期,系统将列出符合该日期的数据。分为三种情况:1是只输入起始日期,则系统输出符合从起始日期开始的所有数据;2是只输入截止日期,则系统输出符合到截止日期之前包括截止日期的所有数据;3是既有起始日期也有截止日期,则系统输出满足这段时间的数据。系统功能模块层次,如图2图2 库存管理功能模块图2 库存管理功能模块3.3 界面设计本系统采用蓝色基调,橙色,棕褐色,白色,红色为辅调。由于系统是基于WEB页面的,所以界面设计必须符合以完成网站可视性阅读功能为目的。橙色具有明亮、华丽、健康、兴奋、温暖、欢乐、辉煌、以及容易动人的色感,在空气中的穿透力仅次于红色,而色感较红色更暖,最鲜明的橙色应该是色彩中感受最暖的色,能给人有庄严、尊贵、神秘等感觉,所以基本上属于心理色性。现代社会上往往作为标志色和宣传色。不过也是容易造成视觉疲劳的色。故将它用户注册界面的主色调,如图3图3 注册界面天蓝:最浅的蓝,几乎不含有红的痕迹,好像天空的清冷。是代表 初始 的图4 主界面颜色,是生物在年轻时的代表(成熟色是绿色)。在心理暗示来说,天蓝和粉红色一样,都是“安抚色”,是令人安静并放松的颜色。白色在系统中主要作为背景色,导航栏字体颜色。白色视觉度,注目度都比较高,因为白色为全色相,所以也能满足本管理系统用户心理要求,加之与蓝色配合,使整个系统更具阅读可视性,操作易用性。整个系统看起来颇大气,富有立体感。再者,白色代表纯洁、简单、洁净。如图4:代表和谐、统一、优雅、高贵的白色,混以深思、平和的灰色,携带宁静的蓝色和充满大自然气息的棕色,这些宁静色系可以营造出舒适宽广的空间感,给人柔美、高雅与平和的感觉,整体风格清淡雅致、宁静安稳。故放在历史查询界面,调节主界面单一的色调。如图5:图5 盘点表查询界面3.4 系统流程图图6 系统流程图用户进入系统登录页面后,输入用户名和密码,点击确定后,系统将根据用户输入的用户名和密码判断该用户是否为合法用户;如果用户输入的用户名和密码出错,系统将提示出错,并返回到登录界面;如果用户输入的用户名和密码正确,系统将根据用户的身份选择相应的主页以及功能;所有合法用户在处理完业务后,都需要进行退出登录,以免被他人窃取信息。退出后,将返回到登录界面。如图6:4 库存管理系统功能模块的具体实现4.1 系统主要功能模块的实现及部分代码4.1.1 用户注册和登录界面在用户注册时首先检测该用户注册的用户名是否可用,即检查数据库该用户名是否已经存在,代码如下:ConnectionSQL sqlcon1 = new ConnectionSQL(); string User; User = TextBox1.Text.Trim(); SqlDataReader UserReader = sqlcon1.SqldataReader(select *from ADMIN_LIST where UserId= + User + ); if (UserReader.Read() Label5.Text = 该用户名已经被使用,请重新注册; else Label5.Text = 该用户名可以使用; 检测完后,再判断注册用户输入的密码是否为空,若为空,则弹出“密码不能为空”的对话框;若不为空,则检测注册用户输入的密码与确认密码是否吻合,代码如下: if (Password =) HttpContext.Current.Response.Write(alert(密码不能为空!);window.location.href=Registration.aspx); else if (Password != Surepassword) HttpContext.Current.Response.Write(alert(确认密码与密码不匹配,请重新输入!);window.location.href=Registration.aspx); else sqlcon.Sqldataset(insert ADMIN_LIST(UserId,Password,Jurisdiction)values( + User + , + Password + ,1); HttpContext.Current.Response.Write(alert(恭喜,用户注册成功!);window.location.href=Admin.aspx); / Label4.Text = 恭喜,用户注册成功,请点击返回登录; TextBox1.Text = null; 对于密码过长的限制,在前台使用了RegularExpressionValidator验证控件,通过输入.0,10表达式,将密码长度限制在10个字符以下。在用户登录界面,除了对用户名与密码的合法性验证外,还要将管理员权限的值赋给SessionRight这个全局变量,目的是为了以后方便对用户权限的判断。具体代码如下:User = TextBox1.Text.Trim(); PassWord = TextBox2.Text.Trim(); SqlDataReader UserReader = skycon1.SqldataReader(select * from ADMIN_LIST where UserId= + User + and Password= + PassWord + ); if (UserReader.Read() if (UserReader.GetString(2).Trim()=2) SessionRight= 2; HttpContext.Current.Response.Write(alert(登录成功!);window.location.href=Admin.aspx); UserReader.Close(); else Label3.Text = 你输入的用户名和密码不正确,请重新输入; UserReader.Close(); 4.1.2 进货作业进货作业是库存管理系统中最为重要的模块之一,上面的模块设计中已经分析了进货作业中存在的几种情况,除此之外,系统还要判断管理员是否出现输入有误现象。如输入的种类号与种类名不相符时,货物号与货物名不相符合时,系统都应该报错,但这两种出现的几率不是很大,为了减轻服务器负担,并没有把这些判断加入到系统中,只是对管理员输入时进行默认,认为输入的对应的货物种类和名称都是相符合的。当输入的仓库号与货物所属仓库不一致时(同种类的货物都存放在一个仓库中),由于此类错误出现的几率很大,所以在系统中加入了判断,如出现错误,则系统弹出“您输入的仓库号与物品仓库号不符合,请重新输入”的对话框。对与管理员输入的进货数量,进货价的合法性判断都采用了RegularExpressionValidator验证控件进行判断,以减少后台的操作。具体代码如下: DataSet dt1 = skycon1.Sqldataset(select *from GOODS_DETAIL where HuoWuId= + HuoWuId + and BusinessId= + BusinessId + ); if (dt1.Tables0.Rows.Count != 0)/当该物品在明细表中已经存在时: DataSet dt2 = skycon1.Sqldataset(select *from GOODS_LIST where TypeId= + TypeId+);/GooddataRowTypeId.ToString() if (dt2.Tables0.Rows.Count != 0) DataRow GooddataRow1 = dt2.Tables0.Rows0; /判断仓库号 if (StoreHouseId != GooddataRow1StoreHouseId.ToString().Trim() HttpContext.Current.Response.Write(alert(您输入的仓库号与物品仓库号不符合,请重新输入!);window.location.href=Enter.aspx); else skycon1.SqlExcute(insert JINHUO_LIST(HuoWuId,HuoWuName,TypeId,JinHuoSiQty,EnterPrice,EnterTotalPrice,StoreHouseId,BusinessId,DateTime)values( + HuoWuId + , + HuoWuName + , + TypeId + , + JinhuoSiQty.ToString() + , + EnterPrice.ToString() + , + EnterTotalprice.ToString() + , + StoreHouseId + , + BusinessId + , + Datetime + ); DataRow GooddataRow = dt1.Tables0.Rows0; SiQtyG = (int)GooddataRowSiQty + JinhuoSiQty; EnterPriceG = (decimal)GooddataRowEnterPrice * (int)GooddataRowSiQty + EnterTotalprice) / (int)GooddataRowSiQty + JinhuoSiQty); skycon1.SqlExcute(update GOODS_DETAIL set SiQty= + SiQtyG.ToString() + ,EnterPrice= + EnterPriceG.ToString() + where HuoWuId= + HuoWuId + and BusinessId= + BusinessId + ); /更新细表 int SiQtyG1 = (int)GooddataRow1SiQty + JinhuoSiQty; decimal StorePrice = (decimal)GooddataRow1StorePrice + EnterTotalprice; skycon1.SqlExcute(update GOODS_LIST set SiQty= + SiQtyG1.ToString() + ,StorePrice= + StorePrice.ToString() + where TypeId= + TypeId + );/GooddataRowTypeId.ToString() /更新总表 HttpContext.Current.Response.Write(alert(恭喜您的操作已成功!);window.location.href=Enter.aspx); else HttpContext.Current.Response.Write(alert(您输入的货物种类和和货物不相符,请重新输入!);window.location.href=Enter.aspx); else /如果是同种类不同名字的或不同产家的货物则执行下列步骤; DataSet dt4 = skycon1.Sqldataset(select *from GOODS_LIST where TypeId

温馨提示

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

评论

0/150

提交评论