摘要随着现代工业的发展,计算机信息管理系统越来越受到企业重视。本文主要分析了库存管理系统的一些基本功能和组成情况,包括系统的需求分析、系统结构,功能模块划分以及数据库模式分析等,重点对应用程序的实际开发实现作了介绍。达到了数据的一致性和安全性,且应用程序功能完备,符合了库存管理系统作为典型的信息管理系统(MIS)的要求。同时简单介绍了Visual Studio 编程环境和SQL Server数据库管理系统的功能特点,库存管理系统是企业物流管理中不可或缺的一部分。 关键词:库存管理,数据库,信息管理,VSAbstractWith the development of modern industry, the information management system of the computer is being paid attention to by enterprises. This text has analysed some basic functions of the administrative system of the stock and makes up the situation mainly, including the systematic demand is analysed, systematic structure, the function module divides and the data base mode is analysed etc., have realized doing the introduction to the actual development of the application program especially. Having reached the consistency and security of the data, and the application program function is complete, have accorded with the administrative system of the stock as the request for the typical information management system (MIS). Introduced the function characteristics of Visual Studio programming environment and SQL Server data base management system briefly at the same time, the administrative system of the stock is an indispensable part in enterprise's material flow management. Keywords: stock management, database, information management, VS 目 录第1章 绪论 概述 背景 本文的内容及工作安排 意义第2章 系统平台和开发工具 系统开发语言 微软推出C# 效率与安全性 支持现有的网络编程新标准 消除大量程序错误 对版本的更新提供内在的支持降低了开发成本 商业过程和软件实现的更好对应 扩展交互性 结论 数据库理论 SQL Server 简介 客户端—服务器组件 客户端—服务器通信过程 SQL Server 服务 SQL Server常用工具 SQL Server数据库的系统数据库 数据定义语言 数据操纵语言 存储过程 触发器 系统开发工具 Visual Studio 2005 简介 .NET Windows 窗体第3章 库存管理系统的设计及分析 总体设计 项目规划 系统业务流程分析 系统功能结构 系统设计 设计目标 开发及运行环境 数据库设计 技术准备 Graphics类的使用 在Windows应用程序中按日期查询记录第4章 库存系统的实现与测试 公共模块 DataCon类 DataOperate类 主要功能模块 系统登录 供应商信息设置 货物入库管理 货物出库管理 借货管理 还货管理 库存信息查询 出入库货物年统计 疑难问题分析与解决 货物入库时更新货物信息表 通过饼图分析货物出入库情况 程序调试与错误处理第5章 总结 技术总结 经验总结结束语参考文献致谢附录附录一:库存管理系统主页面外文资料原文翻译文稿 第1章 绪论 概述库存管理是企业日常经营管理中十分重要的组成部分,传统的手工管理方式弊端很多,入库、统计、汇总处理时的工作量极其繁重,处理效率非常低,领导也无法及时了解企业资金占用的实际状况。越来越多的企业经营者意识到:只有采用信息化的管理系统,才能适应日益激烈的市场竞争。本人做的库存管理系统是一个Windows应用程序,它不仅可以有效管理企业的库存,还能够用图表分析某年某月的货物出入库情况,给企业管理者的经营决策提供依据。 背景当今企业竞争范围的扩大,要求在企业的各个方面加强管理,并要求企业有更高的信息化集成,要求对企业的整体资源进行集成管理,而不仅仅对制造资源进行集成管理。现代企业都意识到,企业的竞争是综合实力的竞争,要求企业有更强的资金实力,更快的市场响应速度。因此,信息管理系统与理论仅停留在对制造部分的信息集成与理论研究上是远远不够的。与竞争有关的物流、信息及资金要从制造部分扩展到全面质量管理、企业的所有资源(分销资源、人力资源和服务资源等)及市场信息和资源,并且要求能够处理工作流。另一方面,企业规模不断扩大。这就要求企业各部门之间统一计划,协调生产步骤,汇总信息,调配集团内部资源。这些既要独立,又要统一的资源共享管理。第三,信息全球化趋势的发展要求企业之间加强信息交流和信息共享。企业之间既是竞争对手,又是合作伙伴,信息管理要求扩大到整个供应链的管理。随着现代管理思想和方法的提出和发展,如JIT(Just ln Time——及时生产)、TQC(TotalQualityControl——全面质量管理)、OPT(OptimizedProduction Technology——优化生产技术)及DRP(Distribution Resource Planning——分销资源计划)等,又相继出现了MES(ManufacturingExecuteSystem——制造执行系统)、AMS(Agile Manufacturing System——敏捷制造系统)等现代管理思想。MRP-II逐步吸收和融合其他先进思想来完善和发展自身理论。20世纪90年代MRP-II发展到了一个新的阶段:ERP(EnterpriseResourcePlanning——企业资源计划)。简要地说企业的所有资源包括3大流:物流、资金流和信息流。ERP也就是对这3种资源进行全面集成管理的管理信息系统。概括地说,ERP是建立在信息技术基础上,利用现代企业的先进管理思想,全面地集成了企业的所有资源信息,并为企业提供决策、计划、控制与经营业绩评估的全方位和系统化的管理平台。ERP系统是一种管理理论和管理思想,不仅仅是信息系统。它利用企业的所有资源,包括内部资源与外部市场资源,为企业制造产品或提供服务创造最优的解决方案,最终达到企业的经营目标。ERP理论与系统是从MRP-II发展而来的,它除继承了MRP-II的基本思想(制造、供销及财务)外,还大大地扩展了管理的模块,如多工厂管理、质量管理、设备管理、运输管理、分销资源管理、过程控制接口、数据采集接口、电子通信等模块。它融合了离散型生产和流程型生产的特点,扩大了管理的范围,更加灵活或“柔性”地开展业务活动,实时地响应市场需求。它还融合了多种现代管理思想,进一步提高了企业的管理水平和竞争力。因此ERP理论不是对MRP-II的否认,而是继承与发展。MRP-II的核心是物流,主线是计划。伴随着物流的过程,同时存在资金流和信息流。ERP的主线也是计划,但ERP已将管理的重心转移到财务上,在企业整个经营运作过程中贯穿了财务成本控制的概念。总之,ERP极大地扩展了业务管理的范围及深度,包括质量、设备、分销、运输、多工厂管理、数据采集接口等。ERP的管理范围涉及企业的所有供需过程,是对供应链的全面管理和企业运作的供需链结构的全面管理。 本文的内容及工作安排本文是利用Visual Studio平台、C#编程语言及SQL Server数据库做的一个库存管理系统,库存作为一个企业货物管理的中枢,首先要了解它的功能及流程。库存的功能就是能对所存储的货物进行分析统计,让企业能够进行管理。在确定好功能后,写出业务流程和功能结构,根据功能结构在SQL Server数据库中建相应的数据表以及各表间的关系。有了数据库用一种自己比较熟悉的编程语言在Visual Studio平台中开始编写所确定好的功能模块,本文的功能模块有:货物管理、基本档案、查询统计、系统维护及帮助。编写系统各功能模块完对各个模块及整体进行测试,针对不同的报错修改,直到所有功能都可以正常使用。我的工作安排:确定好论文题目后,通过书籍和网络查找与库存管理相关的资料,了解库存管理的流程和功能,接着确定库存管理系统的开发语言、所用的数据库及开发工具。之后明确库存管理系统的总体设计方案,开始编写代码,编写好程序好对其进行调试及系统优化。最后书写论文,熟悉设计操作准备毕业答辩。 意义库存管理系统是生产、计划和控制的基础。库存管理系统主要通过对仓库、入库、出库的管理,及时反映物资的仓储、流向情况,为生产管理和成本核算提供依据。并通过库存分析信息。同时为计划及决策人员提供实时准确的存货信息,以便及时调整生产,保证企业各项生产经营活动的顺利进行。通过库存管理信息化,可以全面监控企业商品的进、出、存等各种状况,满足现代企业的库存管理需要。 第2章 系统平台和开发工具 系统开发语言 微软推出C#C# (C sharp) 是微软对这一问题的解决方案。C#是一种最新的、面向对象的编程语言。它使得程序员可以快速地编写各种基于Microsoft .NET平台的应用程序,Microsoft .NET提供了一系列的工具和服务来最大程度地开发利用计算与通讯领域。正是由于C#面向对象的卓越设计,使它成为构建各类组件的理想之选——无论是高级的商业对象还是系统级的应用程序。使用简单的C#语言结构,这些组件可以方便的转化为XML 网络服务,从而使它们可以由任何语言在任何操作系统上通过Internet进行调用。最重要的是,C#使得C++程序员可以高效的开发程序,而绝不损失C/C++原有的强大的功能。因为这种继承关系,C#与C/C++具有极大的相似性,熟悉类似语言的开发者可以很快的转向C#。 效率与安全性新兴的网络经济迫使商务企业必须更加迅速的应对竞争的威胁。开发者必须不断缩短开发周期,不断推出应用程序的新版本,而不仅仅是开发一个“标志性”的版本。C#在设计时就考虑了这些问题。它使开发者用更少的代码做更多的事,同时也不易出错。 支持现有的网络编程新标准新的应用程序开发模型意味着越来越多地解决方案依赖于新出现的网络标准,例如HTML,XML,SOAP等。现存的开发工具往往都是早于Internet出现的,或者是在我们所熟知的网络还处于孕育期时出现的。所以,它们一般无法很好地支持最新的网络技术。C#程序员可以在Microsoft .NET平台上事半功倍的构建应用程序的扩展框架。C#包含了内置的特性,使任何组件可以轻松转化为XML网络服务,通过Internet被任何操作系统上运行的任何程序调用。更突出的是,XML网络服务框架可以使现有的XML网络服务对程序员来说就和C#对象一样。这样,程序员就可以方便地使用他们已有的面向对象的编程技巧来开发利用现有的XML网络服务。还有一些精细的特性,使得C#成为一流的网络编程工具。例如,XML正逐渐成为在网络上传输结构化数据的标准。这种数据集合往往非常小。为提高性能,C#允许把XML数据直接映射到struct数据类型,而不是class。这样对处理少量的数据非常有效。 消除大量程序错误即使是专家级的C++程序员也常会犯一些最简单的小错误——比如忘了初始化变量,但往往就是这些小错误带来了难以预料的问题,有些甚至需要很长时间来寻找和解决。一旦一个程序作为产品来使用,就算最简单的错误纠正起来也可能要付出极其昂贵的代价。C#的现代化设计能够消除很多常见的C++编程错误。例如:1. 资源回收减轻了程序员内存管理的负担。2. C#中变量由环境自动初始化。3. 变量是类型安全的。这样,程序员编写与维护那些解决复杂商业问题的程序就更方便了。 对版本的更新提供内在的支持降低了开发成本更新软件组件是一项很容易出错的工作,因为代码的修改可能无意间改变原有程序的语义。为协助开发者进行这项工作,C#为版本的更新提供内在的支持。例如,方法重载必须显式声明。这样可以防止编码错误,保证版本更新的灵活性。还有一个相关的特性就是对接口和接口继承的内在支持。这些特性使得C#可以开发复杂的框架并且随着时间不断发展更新它。总体来说,这些特性使得开发程序项目的后续版本的过程更加健壮,从而减少后续版本的开发成本。 商业过程和软件实现的更好对应企业的商业计划要付诸现实,必须在抽象的商业过程和实际的软件实现之间建立紧密地对应。不过大多数语言都很难做到这点。例如,如今的程序员们一般使用代码注释来注明哪个类对应于某个抽象的商业对象。C#语言允许类型定义的,扩展的元数据。这些元数据可以应用于任何对象。项目构建者可以定义领域特有的属性并把他们应用于任何语言元素-类,接口等等。然后,开发人员可以编程检查每个元素的属性。这样,很多工作都变得方便多了,比如编写一个小工具来自动检查每个类或接口是否被正确定义为某个抽象商业对象的一部分,或者只是创建一份基于对象的领域特有属性的报表。定制的元数据和程序代码之间的紧密对应有助于加强程序的预期行为和实际实现的之间的对应关系。 扩展交互性作为一种自动管理的,类型安全的环境,C#适合于大多数企业应用程序。但实际的经验表明有些应用程序仍然需要一些底层的代码,要么是因为基于性能的考虑,要么是因为要与现有的应用程序接口兼容。这些情况可能会迫使开发者使用C++, 即使他们本身宁愿使用更高效的开发环境。C#采用以下对策来解决这一问题:1. 内置对组建对象模型(COM)和基于Windows?的API的支持;2.允许有限制地使用纯指针(Native Pointer)。在C#中,每个对象都自动生成为一个COM对象。开发者不再需要显式的实现IUnknown和其他COM接口.这些功能都是内置的.类似的,C#可以调用现有的COM对象,无论它是由什么语言编写的。C#包含了一个特殊的功能,使程序可以调用任何纯API。在一段特别标记的代码中,开发者可以使用指针和传统C/C++特性,如手工的内存管理和指针运算。这是其相对于其它环境的极大优势。这意味着C#程序员可以在原有的C/C++代码的基础上编写程序,而不是彻底放弃那些代码。无论是支持COM还是纯API的调用,都是为了使开发者在C#环境中直接拥有必要的强大功能。 结论C#是一种现代的面向对象语言。它使程序员快速便捷地创建基于Microsoft .NET平台的解决方案。这种框架使C#组件可以方便地转化为XML网络服务,从而使任何平台的应用程序都可以通过Internet调用它。C#增强了开发者的效率,同时也致力于消除编程中可能导致严重结果的错误。C#使C/C++程序员可以快速进行网络开发,同时也保持了开发者所需要的强大性和灵活性。 经验总结开发一个系统之前,一定要先弄清楚开发该系统的目的是什么,并将其业务流程图画出来,然后根据所做的需求分析对系统进行可行性分析、总体设计和系统设计,在这些前期工作完善之后,最后进行编码,这时你将会发现自己的编程思路非常明确。另外,在开发数据库应用程序时,如果遇到涉及多个表操作的问题,可以通过使用触发器来简化代码的设计。结束语踉踉跄跄地忙碌了两个月,我的毕业设计课题也终将告一段落。我终于完成了《库存管理系统的设计与实现》的论文。从开始接到论文题目到系统的实现,再到论文文章的完成,每走一步对我来说都是新的尝试与挑战,这也是我在大学期间独立完成的最大的项目。在这段时间里,我学到了很多知识也有很多感受,从对库存管理一无所知,对,ADO等相关技术很不了解的状态,我开始了独立的学习和试验,查看相关的资料和书籍,让自己头脑中模糊的概念逐渐清晰,使自己非常稚嫩作品一步步完善起来,每一次改进都是我学习的收获,每一次试验的成功都会让我兴奋好一段时间。点击运行,也基本达到预期的效果,虚荣的成就感在没人的时候也总会冒上心头。但由于能力和时间的关系,总是觉得有很多不尽人意的地方,譬如功能不全、外观粗糙、底层代码的不合理……数不胜数。可是,我又会有点自恋式地安慰自己:做一件事情,不必过于在乎最终的结果,可贵的是过程中的收获。以此语言来安抚我尚没平复的心。毕业设计,也许是我大学生涯交上的最后一个作业了。想籍次机会感谢四年以来给我帮助的所有老师、同学,你们的友谊是我人生的财富,是我生命中不可或缺的一部分。我的毕业指导老师张凤荔教授,虽然我们是在开始毕设时才认识,但她却能以一位长辈的风范来容谅我的无知和冲动,给我不厌其烦的指导。在此,特向她道声谢谢。 大学生活即将匆匆忙忙地过去,但我却能无悔地说:“我曾经来过。”大学四年,但它给我的影响却不能用时间来衡量,这四年以来,经历过的所有事,所有人,都将是我以后生活回味的一部分,是我为人处事的指南针。就要离开学校,走上工作的岗位了,这是我人生历程的又一个起点,在这里祝福大学里跟我风雨同舟的朋友们,一路走好,未来总会是绚烂缤纷。参考文献[1]微软公司.数据库程序设计—SQL Server 2000 数据库程序设计.北京:高等教育出版社,2005[2]张跃廷.C#数据库系统开发案例精选.北京:人民邮电出版社,[3]微软公司.C#程序设计语言.北京:高等教育出版社,2005[4]胡海璐.网络系统开发实例精粹(版).北京:电子工业出版社,2006,6[5]严蔚敏.数据结构(第二版).北京:清华大学出版社,2003,1致谢更多资料参考请点击