基于C的库存管理系统.doc_第1页
基于C的库存管理系统.doc_第2页
基于C的库存管理系统.doc_第3页
基于C的库存管理系统.doc_第4页
基于C的库存管理系统.doc_第5页
已阅读5页,还剩45页未读 继续免费阅读

下载本文档

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

文档简介

毕业设计(论文)题 目: 基于C#的库存管理系统 系 别: 信息工程系 专 业: 计算机科学与技术 学生姓名: 指导教师: 年 月 日摘 要库存管理系统是物资管理系统的核心,是一个企业不可缺少的部分,它对于企业的决策者和管理者来说都至关重要。一直以来人们使用传统人工的方式管理仓库,效率低,查找、更新和维护困难。为此本文从而开发了库存管理系统。系统的主要功能模块包括货物管理模块、基本档案模块、查询统计模块和帮助模块。其中货物管理模块主要实现货物的出入库管理、借货还货以及盘点功能。基本档案模块主要实现供应商信息设置、货物档案设置以及仓库的基本信息设置功能。查询统计模块实现货物信息的查询和打印报表功能。本系统采用微软公司的Visual C#.NET作为前端应用程序开发工具,SQL Server 2005建立后台数据库来对库存管理系统进行开发。库存管理信息系统将为公司提供库存分类管理和快速查询的功能,是提高公司工作效率的最佳助手。库存管理系统是用计算机来帮助工作人员管理库存物品的一个系统,它可以避免重复劳动,省时又省力。关键字:库存管理;Visual C#.NET;数据库AbstractInventory management system is the core of the materials management system, It is an indispensable part of business. It is essential for business decision-makers and managers. Continuously, people use of the traditional artificial manage the warehouse, low efficiency, find, update and maintain extremely difficult. This article in order to develop the inventory management system.朗读显示对应的拉丁字符的拼音字典 - 查看字典详细内容The main function modules include cargo management module, the basic file module, query statistics module and help modules. Management module which the goods in goods out of storage management, borrowing, and also goods inventory functions. Main achieved basic file module supplier information settings, file settings, and storage of goods, basic information setting function. Statistics module cargo information query the query and print reporting.The system use Microsofts Visual C #. NET as a front-end application development tool, SQL Server 2005 establishing the background database, to develop the inventory management system in this graduation project. Inventory management information system will provide inventory classification management and rapid query function.It is to improve the efficiency of the companys best helpers. Inventory management system is to use computers to help staff to manage inventory in a system, it avoids duplication of effort, save time and effort.Key Word: Inventory Management; Visual C#.NET; Database目 录引 言11 基础知识21.1 C#语言21.2 .NET Framework 介绍31.3 SQL Server 2005数据库介绍42 系统分析62.1 开发背景及意义62.2 可行性研究82.3 功能需求92.4 系统总体架构103 系统设计123.1 系统总体设计123.2 系统功能模块设计143.2.1 系统登录模块143.2.2基本档案管理143.2.3 货物管理143.2.4 查询统计153.2.5 帮助174 数据库设计184.1数据库概念结构设计184.2数据库逻辑结构设计194.4.1 数据表结构设计194.4.2 存储过程234.3 数据载入245 系统实现255.1 库存管理系统功能实现详细设计255.3 疑难问题解析32结 论34致 谢35参考文献36附 录37附录A The advantages of C #37附录B C#的优点40附录C 公共类的编写42引 言随着Internet的快速发展,也带动了软件的快速发展,面对高度信息化、全球化和管理化的国际竞争,相对来说对于公司就必须更多地注重市场的动态发展,为了快速地响应市场瞬息万变的市场需求,就必须有合理的管理系统进行规划管理,因此开发一个库存管理系统是一个很热门的话题。而作为库存管理当然成为了各企业加强管理和灵活信息的制高点。而选择一个好的库存管理、它将解决好企业的存放量。系统效能,是预期一个系统满足一组特定任务的程度的量度。它是系统综合性能的反映,是系统的整体属性。效能评估,就是要对系统进行综合分析,把系统的各项性能与任务要求综合比较,最终得到表示系统的优劣程度的结果。目前,我国企业在仓库管理中还存在着不少问题,而仓库管理的作用在与可以有效的缩短响应时间,降低企业运作成本,达到高效率。库存管理系统能有效的保证了库存商品最优的库存吞吐量。库存管理系统是此ERP系统中最容易理解但又是最烦琐的模块,它要求实现强大的功能。本系统实现的主要功能有:仓库设置、供应商信息设置、货物出入库、货物借出和归还、货物盘点、查询统计等。 本库存管理系统的开发主要包括前端应用程序以及后台数据库的建立和维护两个方面。经过分析,我选用微软公司的Visual C#.NET来开发系统,利用其提供的各种面向对象的开发工具,来操纵数据库。本毕业论文分为六部分。第一部分简要概述了Visual C#.NET、 .NET Framework和SQL Server 2005。第二部分介绍系统开发前的准备,包括开发系统的背景及意义,可行性研究,系统的需求说明。第三部分简要概述系统总体结构设计和各个功能模块的详细设计。第四部分主要概述了数据库的设计。第五部分着重阐述了公共类的编写,系统主要功能模块的具体实现以及一些疑难问题的解析。第六部分是系统开发的后期工作,讲到了该系统的不完善之处及本次系统开发过程中一些切身的感受与想法,是我做这次毕业设计的心得体会。1 基础知识1.1 C#语言 20世纪80年代以来,C和C+一直是使用最为广泛的商业应用开发语言。这两种语言在带来强大控制能力和高度灵活性的同时,代价是相对较长的学习周期和较低的开发效率,同时对控制能力和灵活性的滥用也给程序的安全性带来了潜在的威胁。C+语言过度的功能扩张也破坏了面向对象的设计理念。软件行业迫切地需要一种全新的现代程序设计语言,它能够在控制能力与生产效率之间求得良好的平衡,特别是将快速应用开发与对底层平台所有功能的访问紧密结合在一起,并与Web标准保持同步,C#(读作“C-Sharp”)语言就是这一历史使命的承担者。 C#语言从C和C+发展而来,它汲取了包括C、C+、Java在内的多种语言的精华,是一种简单、完备、类型安全和完全面向对象的高级程序设计语言。它的设计目标就是在继承C和C+强大功能的同时,兼有RAD(Rapid Application Development,快速应用程序开发)语言的简易和高效。作为.NET的核心编程语言,C#充分享受了公共语言运行时所提供的优势,能够与其他应用程序方便地集成和交互。下面对它的几个突出特点进行了描述: 1、简洁的语法。C#取消了指针,也不定义烦乱的伪关键字,它使用有限的指令、修饰符和操作符,语法上几乎不存在任何冗余,整个程序结构十分清晰。初学者可以轻松快速地掌握C#的基本特性,而C和C+程序员转入C#则几乎不会有任何障碍。2、精心的面向对象设计。C#具有面向对象的语言所应有的基本特性:封装、继承和多态性。它禁止多继承,禁止各种全局方法、全局变量和常量。C#以类为基础来构建所有的类型,并通过命名空间对代码进行层次化的组织和管理,减少了发生命名冲突的可能性。 3、与Web的紧密结合。借助Web服务框架,C#使得网络开发和本地开发几乎一样简单。开发人员无需了解网络的细节,可以用统一的方式来处理本地的和远程的C#对象,而C#组件能够方便地转变为Web服务,并被其他平台上的各种编程语言调用。 4、完整的安全性与错误处理。C#符合通用类型系统的类型安全性要求,并用公共语言运行时所提供的代码访问安全特性,从而能够在程序中方便地配置安全等级和用户权限。此外,垃圾收集机制自动管理对象的生命周期,开发人员无须再负担内存管理的任务。应用程序的可靠性进一步得到了提高。 5、版本管理技术。C#在语言中内置了版本控制功能,并通过接口和继承来实现应用的可扩展性。应用程序的维护和升级更加易于管理。6、灵活性与兼容性。C#中允许使用非托管代码,能够与各种现有的组件和程序(包括COM组件、WIN32 API等)进行集成和交互。它还可以通过代表(delegates)来模拟指针的功能,通过接口来模拟多继承的实现。 为了吸引软件开发人员和合作伙伴对.NET的认同,Microsoft推出了新一代的集成开发环境Microsoft Visual Studio .NET。该环境提供了对C#语言编程的可视化支持,使得开发人员能够方便地创建、运行、调试和发布C#程序,从而针对.NET平台快速地构建广泛的应用。1.2 .NET Framework 介绍.NET Framework 是支持生成和运行下一代应用程序和 XML Web Services 的内部 Windows 组件。.NET Framework 旨在实现下列目标:1、提供一个一致的面向对象的编程环境,而无论对象代码是在本地存储和执行,还是在本地执行但在 Internet 上分布,或者是在远程执行的。 2、提供一个将软件部署和版本控制冲突最小化的代码执行环境。 3、提供一个可提高代码(包括由未知的或不完全受信任的第三方创建的代码)执行安全性的代码执行环境。 4、提供一个可消除脚本环境或解释环境的性能问题的代码执行环境。使开发人员的经验在面对类型大不相同的应用程序(如基于 Windows 的应用程序和基于 Web 的应用程序)时保持一致。 按照工业标准生成所有通信,以确保基于 .NET Framework 的代码可与任何其他代码集成。 .NET Framework 具有两个主要组件:公共语言运行库和 .NET Framework 类库。公共语言运行库是 .NET Framework 的基础。您可以将运行库看作一个在执行时管理代码的代理,它提供内存管理、线程管理和远程处理等核心服务,并且还强制实施严格的类型安全以及可提高安全性和可靠性的其他形式的代码准确性。事实上,代码管理的概念是运行库的基本原则。以运行库为目标的代码称为托管代码,而不以运行库为目标的代码称为非托管代码。.NET Framework 的另一个主要组件是类库,它是一个综合性的面向对象的可重用类型集合,您可以使用它开发多种应用程序,这些应用程序包括传统的命令行或图形用户界面 (GUI) 应用程序,也包括基于 ASP.NET 所提供的最新创新的应用程序(如 Web 窗体和 XML Web Services)。 .NET Framework 可由非托管组件承载,这些组件将公共语言运行库加载到它们的进程中并启动托管代码的执行,从而创建一个可以同时利用托管和非托管功能的软件环境。.NET Framework 不但提供若干个运行库宿主,而且还支持第三方运行库宿主的开发。 例如,ASP.NET 承载运行库以为托管代码提供可伸缩的服务器端环境。ASP.NET 直接使用运行库以启用 ASP.NET 应用程序和 XML Web Services(本主题稍后将对这两者进行讨论)。Internet Explorer 是承载运行库(以 MIME 类型扩展的形式)的非托管应用程序的一个示例。使用 Internet Explorer 承载运行库使您能够在 HTML 文档中嵌入托管组件或 Windows 窗体控件。以这种方式承载运行库使得托管移动代码(类似于 Microsoft ActiveX 控件)成为可能,不过它需要进行重大改进(如不完全受信任的执行和独立的文件存储),而这种改进只有托管代码才能提供。1.3 SQL Server 2005数据库介绍SQL Server 2005 是一个全面的数据库平台,使用集成的商业智能 (BI) 工具提供了企业级的数据管理。SQL Server 2005 数据库引擎为关系型数据和结构化数据提供了更安全可靠的存储功能,使您可以构建和管理用于业务的高可用和高性能的数据应用程序。SQL Server 2005 数据引擎是本企业数据管理解决方案的核心。此外 SQL Server 2005 结合了分析、报表、集成和通知功能。这使您的企业可以构建和部署经济有效的 BI 解决方案,帮助您的团队通过记分卡、Dashboard、Web services 和移动设备将数据应用推向业务的各个领域。与 Microsoft Visual Studio、Microsoft Office System 以及新的开发工具包(包括 Business Intelligence Development Studio)的紧密集成使 SQL Server 2005 与众不同。无论您是开发人员、数据库管理员、信息工作者还是决策者,SQL Server 2005 都可以为您提供创新的解决方案,帮助您从数据中更多地获益。Microsoft 仔细倾听了您的反馈,并对行业进行了认真研究,全世界的 Microsoft 研究团队共同努力,经过创造性思索才最终向您奉献出这一引入了上百种新增功能或改进功能的 SQL Server 2005。这些功能将有助于您在以下三个主要方面提高业务:1、企业数据管理SQL Server 2005 针对行业和分析应用程序提供了一种更安全可靠和更高效的数据平台。SQL Server 的最新版本不仅是迄今为止 SQL Server 的最大发行版本,而且是最为可靠安全的版本。 2、开发人员生产效率SQL Server 2005 提供了一种端对端的开发环境,其中涵盖了多种新技术,可帮助开发人员大幅度提高生产效率。 3、商业智能SQL Server 2005 的综合分析、集成和数据迁移功能使各个企业无论采用何种基础平台都可以扩展其现有应用程序的价值。构建于 SQL Server 2005 的 BI 解决方案使所有员工可以及时获得关键信息,从而在更短的时间内制定更好的决策。2 系统分析2.1 开发背景及意义1、选题的背景企业的库存物资管理往往是很复杂、很繁琐的。由于所掌握的物资种类众多,订货、管理、发放的渠道各有差异,各个企业之间的管理体制不尽相同,各类统计报表繁多,因此仓库的库存管理必须编制一套库存管理信息系统,实现计算机化操作,而且必须根据企业的具体情况制定相应的方案。 由于物资供应行业的特殊性,产品种类繁多,业务量巨大,若仍然采用人工记账的方式,必然不能满足企业的需求,企业需要利用计算机来进行库存管理,因此需要构造一个库存管理系统。一个完整的库存管理系统应包括采购计划管理,合同收托管理、仓库库存管理、定额管理、统计管理、财务管理等模块。其中仓库的库存管理是整个物资供应管理系统的核心。因此有必要开发一套独立的库存管理系统来提高企业工作效率, 而所使用的这套库存管理系统是企业生产经营管理活动中的核心,此系统必须可以用来控制合理的库存费用、适时适量的库存数量,使企业生产活动效率最大化。通过对这些情况的仔细调查,我开发了下面的仓库库存管理系统。2、系统需求分析 系统需求分析就是在用户需求调研的基础上,确定系统的总体结构方案,完成相应的需求分析报告。在确定系统的总体结构方案过程中,包括确定应用程序的结构、系统开发环境和开发工具的选择。1) 应用程序结构确定 从用户应用角度来看,可把应用程序系统的组成部分分成数据存储层、业务处理层和界面表示层等3个层次,而应用程序结构可归纳为:集中式应用程序结构、单机板应用程序结构、多层服务器应用程序结构、浏览器服务器应用程序结构、客户机服务器应用程序结构等5种类型。 本库存管理系统就采用了单机版应用程序结构,将数据库和应用程序置于一台机器上,这样更加节约成本,适合中小规模的公司使用。用户可以轻松将其拷贝到其他计算机上,可以同时运行程序。2) 开发及运行环境 由于大多数公司内部使用的计算机平台都是基于Windows环境的。为了降低系统成本,应最大程度地利用现有的资源、兼容现有的环境,可确定使用下面的开发及运行环境: 系统开发平台:Microsoft Visual Studio 2005。系统开发语言:C#。数据库管理系统软件:Microsoft SQL Server 2005。运行平台:Windows XP。运行环境:Microsoft.NET Framework SDK v3.5。3、开发工具的选择可视化(visual)程序设计是一种全新的程序设计方法,全面采用面向对象的程序设计技术,使用事件驱动机制进行程序设计。利用可视化开发工具可以快速、高效地开发应用程序。可视化的开发工具很多,如Microsoft公司推出的Visual Studio软件系列,Borland公司的Delphi、C+ Builder系列等。Visual Studio 是微软公司推出的集成开发环境,是目前最流行的 Windows 平台应用程序开发环境。它是把代码的编写、程序的调试、编译、运行以及其他的相关操作都集成在一起的“编程工具”。 作用是程序员通过它这个平台,利用编程语言来写程序,调试,运行。SQL Server 2005 是Microsoft 公司推出的SQL Server 数据库管理系统。该版本继承了SQL Server 7.0 版本的优点同时又比它增加了许多更先进的功能,具有使用方便,可伸缩性好与相关软件集成程度高等优点,可跨越从运行Microsoft Windows 98 的膝上型电脑到运行Microsoft Windows 2000 的大型多处理器的服务器等多种平台使用。经分析,本库存管理系统选用Visual C#.NET来设计界面,选用SQL Server 2005来建立后台数据库。2.2 可行性研究 可行性研究的目的,就是用最小的代价在尽可能短的时间内确定问题是否能够解决。要达到这个目的,必须分析几种主要的可能解法的利弊,从而判断原定的系统规模和目标是否现实,系统完成后所能带来的效益是否大到值得投资开发这个系统的程度。因此,可行性研究实质上是要进行一次大大压缩简化了的系统分析和设计的过程,也就是在较高层次上以较抽象的方式进行的系统分析和设计的过程。一般来说,可行性分析应从经济可行性、技术可行性、操作可行性等方面进行研究。本系统的可行性分析如下:1、经济可行性分析由于本库存管理系统所要求的硬件(计算机及相关硬件)和软件环境(Visual C#.NET+SQL Server 2000),市场上都容易购买到或从相关网站下载,系统成本主要集中在本管理系统的开发与维护上,对用户不造成过重的经济负担。而一旦此系统投入使用,不仅可以减少库存的工作强度,提高工作效率,而且方便了库存对信息的管理,延续了传统的管理模式,极大限度地方便了库存管理人员,而且,目标系统不是很复杂,开发的周期较短,人员经济支出不大,所节省的大量人力、财力产生的效益将远远大于本系统的开发成本,所以从经济方面讲开发此系统是可行的。2、技术可行性分析技术上的可行性分析要考虑现有技术条件能否顺利完成开发工作及将来要采用的硬件和软件技术能否满足用户提出的要求(如计算机的容量、速度等)。本系统采用Visual C#.NET作为系统前台应用程序开发工具,采用SQL Server 2000工具建立数据库,并通过Visual C#.NET中的ADO控件使两者进行连接从而进行系统软件开发。Visual C#.NET不仅能帮助软件开发者提高软件开发的质量和效率,缩短开发周期,而且还具备强大的数据库管理功能,完全能够满足本系统的开发需求。 3、操作可行性分析传统的库存管理系统,一般有两种方式:一是手工管理,这种方式应用最传统的“笔纸操作系统”,将库存的货物信息、销售信息、厂商信息管理及单据管理等均以纯手工的形式进行,将信息以表格文件的表现形式记录在纸上,再进行统一保存。这种方式虽然在简单信息查询时会有一定的方便,但是存在着更多的不便:信息保存时间和条件很受限制、容易被损坏、信息查询不便、信息传达容易造成失误等。另一种常见的信息管理方法是应用单机版的管理系统,本系统就是一款做的相对到位的单机版的库存管理系统,在库存信息处理方面做得很精准规范。因为库存管理人员已经有丰富的信息管理经验,加之有相当的计算机应用经验,所以对于此系统一定很容易就可操作熟练。综上所述,本库存管理系统投资少、收益大,且其运行操作简单易学,具备了开发的可行性。2.3 功能需求1、开发方法的选择信息系统的开发是一项比较复杂的工作,因此我们必须选用科学有效的开发方法。在系统设计时遵循系统调查研究、系统分析、系统设计和系统实施四个主要阶段进行设计,而在具体的设计上,则通过在系统的使用及对系统了解的不断加深中,对某一部分或几部分进行重新分析、设计、实施,使系统逐步完善。2、系统功能描述及系统安全性本库存管理系统是一套对货物入库、出库、借货、还货和盘点等信息进行全面管理的系统。在管理内容上,它的主要功能包括:入库管理:主要实现货物的入库登记,并对过期的数据进行删除。 出库管理:主要实现货物的出库登记,并对过期的数据进行删除。借货管理:主要实现货物的借货登记,并对过期的数据进行删除。还货管理:主要实现货物的还货登记,并对过期的数据进行删除。盘点管理:进行货物盘点单据的填写、修改和删除。货物档案设置:根据入库的货物,修改货物最低、最高库存量,以及货物出货单价。供应商信息设置:进行填写供应商信息,供应商信息的增加、修改、删除。在进行入库操作之前,首先应该对供应商信息设置,以便提高工作效率。仓库设置:进行填写仓库信息,仓库信息的增加、修改、删除。在进行入库操作之前,首先应该对仓库信息设置,以便提高工作效率。查询统计:根据用户选择的条件和输入的查询关键字查询货物的库存、出入库信息、借货还货信息并进行打印,以及货物出入库查询的月统计、年统计。系统管理:身份验证,修改本人密码,注册用户,修改、删除用户。由于库存管理系统包含比较重要的信息,因此,在系统设计时除了注重用户的需求,还要保证系统的安全性和一致性,体现如下:(1)安全性:本系统中共分为两类不同的用户,分别具有不同的权限。(2)一致性:系统的数据要保证一致性、准确性,当某一数据库中记录发生改变时,与之相关联的数据库也随之变化。2.4 系统总体架构系统登录系统主界面货物管理货物管理货物管理基本档案本系统的逻辑模型以系统的程序文件架构图为主要描述工具。主文件架构图如图2.1所示: 图2.1 主文件架构图货物管理文件架构图如图2.2所示:货物管理还货管理借货管理入库管理盘点管理出库管理图2.2 货物管理文件架构图基本档案文件架构图如图2.3所示:基本档案仓库设置供应商设置货物档案设置图2.3 基本档案文件架构图出入库货物月统计出入库货物年统计货物归还查询警戒查询货物借出查询出库查询入库查询库存查询查询统计查询统计文件架构图如图2.4所示:图2-4 查询统计文件架构图帮助文件架构图如图2.5所示:帮助关于本系统用户管理权限设置更改密码图2.5 帮助文件架构图3 系统设计企业的库存物资管理往往是很复杂、很繁琐的。由于所掌握的物资种类众多,订货、管理、发放的渠道各有差异,各个企业之间的管理体制不尽相同,各类统计报表繁多,因此仓库的库存管理必须编制一套库存管理信息系统,实现计算机化操作,而且必须根据企业的具体情况制定相应的方案。 3.1 系统总体设计1、系统功能分析系统开发的总体任务是实现企业物资设备管理的系统化、规范化和自动化,从而达到企业仓库库存管理效率的目的。本库存管理系统的功能模块有:(1)货物管理模块该模块主要包括货物的入库管理、出库管理、借货管理、还货管理和盘点管理等功能。 (2)基本档案模块该模块主要包括货物档案设置、供应商设置和仓库设置等功能。 (3)查询统计模块该模块主要包括货物的库存查询、入库查询、出库查询、借出查询、归还查询、警戒查询和出入库货物的年统计、月统计等功能。 (4)帮助模块该模块主要包括用户管理、更改密码、权限设置、关于本系统、重新登录和退出系统等功能。 2、系统业务流程图根据系统功能分析,画出库存管理系统业务流程图如下3.1所示:图3.1 库存管理系统业务流程图3、系统功能结构图库存管理系统功能结构图如图3.2所示:图3.2 库存管理系统功能结构图3.2 系统功能模块设计3.2.1 系统登录模块系统登录主要用于对进入库存管理系统的用户进行安全性检查,以防止非法用户进入该系统。在登录时,只有合法的用户才可以进入该系统,同时,系统还根据登录用户的级别,给予其不同的操作权限。3.2.2基本档案管理基本档案管理主要包括以下几个模块:1、供应商信息设置模块库存货物的进货渠道是供应商,为了使系统操作员使用方便,在进行出入库操作之前,首先应该对供应商信息进行设置,以便提高员工的工作效率。在供应商信息设置窗体中,可以添加、修改和删除供应商信息。添加和修改供应商信息时,使用了Regex类的IsMatch方法自定义正则表达式,来验证供应商的电话号码和传真号码是否合法。2、货物档案设置模块主要实现对已存在的货物进行销售价格、警戒底线库存、警戒顶线的库存进行修改以及删除功能。3、仓库信息设置模块为了使系统操作员使用方便,在进行出入库操作之前,首先应该对仓库信息进行设置,以便提高员工的工作效率。在仓库信息设置窗体中,可以添加、修改和删除仓库信息。添加和修改仓库信息时,使用了Regex类的IsMatch方法自定义正则表达式,来验证仓库的电话号码是否合法。3.2.3 货物管理货物管理主要包括以下几个模块:1、货物入库管理模块货物入库管理是库存管理系统中的一个重要功能,它主要实现货物的入库登记功能。在货物入库时,不仅需要记录货物名称、货物数量、进货价格和货物种类等信息,还需要修改货物信息表中货物的库存数量,本系统中,是通过调用触发器“trig_inGoods”来实现的。2、货物出货管理模块货物出库管理主要完成货物的出库功能。用户从仓库提取出货物之后,对应货物的库存数量也相应减少,因此货物出库管理不仅需要记录用户提货的数量、种类和盈利金额等信息,还需要修改货物信息表中货物的库存数量,本系统中,实现该功能是通过调用触发器“trig_outGoods”来实现的。3、借货管理模块借货管理是库存管理系统中的日常业务,在进行货物借出操作时,货物的借出数量不能大于货物的库存数量。另外,管理员还可以对货物借出信息进行删除。本系统中,实现货物借出功能时,首先使用自定义的正则表达式判断用户输入的货物借出数量是否为数字,然后判断该数量是否大于货物的库存数量,如果大于,弹出信息提示框,否则执行货物借出操作。4、还货管理模块还货管理就是对所借货物进行归还操作。本系统在实现货物归还功能时,首先判断输入的归还数量是否大于该货物的借出数量,如果大于,则弹出提示信息,否则,执行还货操作,同时,调用触发器“trig_reGoods”和“trig_updateGInfo”更新货物借出表和货物信息表中的相关记录。5、盘点管理模块盘点管理就是对库存产品进行整理,纠正不准确的库存数据。由于人为操作等原因,系统中的库存数据与实际数据之间可能会存在误差。所以每隔一段时间就需要对库存进行盘点,从而保证库存数据的准确性。3.2.4 查询统计查询统计主要包括以下模块:1、库存信息查询模块货物库存查询主要是根据用户选择的条件和输入的查询关键字查询货物的库存信息,仓库管理人员可以通过库存查询及时了解指定货物在库存中的详细信息。根据货物编号、货物名称、仓库名称对货物的基本信息进行查询,并可以生成报表,进行打印。2、入库查询模块货物入库查询主要是根据用户选择的条件和输入的查询关键字查询货物的入库信息。根据入库编号、货物编号、货物名称、仓库名称、入库日期对入库信息进行查询,并可以生成报表,进行打印。3、出库查询模块货物出库查询主要是根据用户选择的条件和输入的查询关键字查询货物的出库信息。根据出库编号、货物名称、仓库名称、出库日期对出库信息进行查询,自动计算盈利金额,生成报表并打印。4、货物借出查询模块货物借出查询主要是根据用户选择的条件和输入的查询关键字查询货物的借出信息。根据借货编号、货物名称、仓库名称、借货日期对出库信息进行查询,并可以生成报表,进行打印。5、货物归还查询模块货物归还查询主要是根据用户选择的条件和输入的查询关键字查询货物的归还信息。根据借货编号、还货编号、货物名称、仓库名称、出库日期对还货信息进行查询,并可以生成报表,进行打印。 6、出入库货物月统计模块出入库货物年统计由两部分组成,即入库货物月统计和出库货物月统计。在进行货物出入库统计时,首先使用当前窗体的CreateGraphics方法生成一个Graphics类对象,然后调用公共类中的相关方法,根据用户选择条件执行出入库货物统计操作。出入库按月统计完成统计某个仓库进出库的信息的按月统计功能。7、出入库货物年统计模块出入库货物年统计由两部分组成,即入库货物年统计和出库货物年统计。在进行货物出入库统计时,首先使用当前窗体的CreateGraphics方法生成一个Graphics类对象,然后调用公共类中的相关方法,根据用户选择条件执行出入库货物统计操作。按出库或进货,统计某个仓库,货物的进行情况信息。8、警戒查询模块查看低于库存下线和高于库存上线的货物信息。3.2.5 帮助帮助主要包括以下几项模块:1、更改密码模块完成用户密码的更改功能,更改密码时需要输入原来的密码,可以完成用户密码的修改功能。2、权限设置模块用于对用户的权限进行设定,用户的权限分为管理员及普通用户。 3、用户管理模块完成用户信息的添加,删除及修改的功能。4 数据库设计数据库在一个信息管理系统中占有非常重要的地位,数据库结构设计的好坏将直接对应用系统的效率以及实现的效果产生影响。合理的数据库结构设计可以提高数据存储的效率,保证数据的完整和一致。同时,合理的数据库结构也将有利于程序的实现。设计数据库时应该首先充分了解用户各个方面的需求,包括现有的以及将来可能增加的需求。4.1数据库概念结构设计 本系统相同的货品可以由不同的供应商供给,不同的货品可以由相同的供应商供给,每类货品存放在相同的仓库中,一个仓库中可存放多类货品。库存管理系统E_R图如图4.1所示:图4.1库存管理系统ER图4.2数据库逻辑结构设计4.4.1 数据表结构设计根据系统功能需求与数据流程图,本数据库管理系统需要9个数据表,分别是用户信息表、仓库信息表、货物信息表、货物入库表、货物出库表、供应商信息表、借取货物表、归还货物表、盘点信息表。9个表的数据库逻辑结构如下:用户信息表(tb_User):用于保存用户的基本信息。表4.1用户信息表字段列名字段类型长度是否主键说明UserIDbigint8是用户编号UserNamevarchar20否用户名称UserPwdvarchar20否用户密码UserRightchar10否用户权限 仓库信息表(tb_Storage):用于保存仓库的详细信息。表4.2仓库信息表字段列名字段类型长度是否主键说明StoreIDbigint8是仓库编号StoreNamevarchar20是仓库名称StorePeoplechar10否负责人StoreUnitvarchar50否所属单位StoreDatedatetime8否建库日期StorePhonevarchar20否电话号码StoreRemarkvarchar50否备注Editervarchar10否修改人EditDatedatetime8否修改日期 货物信息表(tb_GoodsInfo):用于保存货物的详细信息。表4.3货物信息表字段列名字段类型长度是否主键说明GoodsIDbigint8是货物编号字段列名字段类型长度是否主键说明GoodsNamevarchar20否货物名称StoreNamevarchar20否仓库名称GoodsSpecvarchar20否货物规格GoodsUnitchar8否计量单位GoodsNumbigint8否货物数量GoodsInPricemoney8否进货单价GoodsOutPricemoney8否出货单价GoodsLeastbigint8否库存下限GoodsMostbigint8否库存上限Editervarchar10否修改人EditDatedatetime8否修改日期货物入库表(tb_InStore):用于保存货物入库详细清单。 表4.4货物入库表字段列名字段类型长度是否主键说明ISIDbigint8是入库编号GoodsIDbigint8否货物编号GoodsNamevarchar20否货物名称PrNamevarchar20否供应商名称StoreNamevarchar20 否仓库名称GoodsSpecvarchar20否货物规格GoodsUnitchar8否计量单位GoodsNumbigint8否入库数量GoodsPricemoney8否入库单价GoodsAPricemoney8否入库总金额ISDatedatetime8否入库日期HandlePeoplevarchar10否经手人ISRemarkvarchar50否备注货物出库表(tb_OutStore):用于保存货物出库详细清单。表4.5货物出库表字段列名字段类型长度是否主键说明OSIDbigint8是出库编号StoreNamevarchar20否仓库名称GoodsNamevarchar20否货物名称GoodsSpecvarchar20否货物规格GoodsUnitchar8否计量单位GoodsNumbigint8否出库数量GoodsPricemoney8否出库单价GoodsAPricemoney8否出库总金额OSDatedatetime8否出库日期PGProvidervarchar8否提货单位PGPeoplevarchar10否提货人Profitmoney8否盈利金额HandlePeoplevarchar10否经手人OSRemarkvarchar50否备注供应商信息表(tb_Provider):用于保存供应商的详细信息。表4.6供应商信息表字段列名字段类型是否为空是否主键说明PrIDbigint8是供应商编号PrNamevarchar20否供应商名称PrPeoplevarchar10否联系人PrPhonevarchar20否电话号码PrRemarkvarchar50否备注Editervarchar10否修改人EditDatedatetime8否修改日期 借取货物表(tb_BorrowGoods):用于保存借取货物的详细清单。表4.7借取货物表字段列名字段类型长度是否主键说明BGIDbigint8是借货编号GoodsNamevarchar20否货物名称StoreNamevarchar20否仓库名称GoodsSpecvarchar20否货物规格GoodsNumbigint8否借货数量BGDatedatetime8否借货日期HandlePeoplevarchar10否经手人BGPeoplevarchar10否借货人BGUnitvarchar20否借货单位BGRemarkvarchar50否备注 归还货物表(tb_ReturnGoods):用于保存归还货物的详细清单。表4.8归还货物表字段列名字段类型长度是否主键说明RGIDbigint8是还货编号BGIDbigint8否借货编号StoreNamevarchar20否仓库名称GoodsNamevarchar20否货物名称GoodsSpecvarchar20否货物规格RGNumbigint8否归还数量NRGNumbigint8否未归还数量RGDatedatetime8否归还日期HandlePeoplevarchar10否经手人RGPeoplevarchar10否还货人Editervarchar10否修改人字段列名字段类型长度是否主键说明EditDatedatetime8否修改日期 盘点信息表(tb_Check):用于保存盘点货物的详细清单。表4.9盘点信息表字段列名字段类型长度是否主键说明CheckIDbigint8是盘点编号GoodsIDbigint8否货物编号StoreNamevarchar20否仓库名称GoodsNamevarchar20否货物名称GoodsUnitchar8否计量单位CheckNumbigint8否盘点数量PALNumbigint8否盈亏数量CheckDatedatetime8否盘点日期CheckPeoplevarchar10否盘点人CheckRemarkvarchar50否备注Editervarchar10否修改人EditDatedatetime8否修改日期4.4.2 存储过程所谓的存储过程就是存储在数据库当中的可以执行特定工作(查询和更

温馨提示

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

最新文档

评论

0/150

提交评论