仓储物资管理系统-数据库课程设计

合集下载

数据库课程设计---库存物资管理系统后台数据库

数据库课程设计---库存物资管理系统后台数据库

大型数据库课程设计设计报告题目:库存物资管理系统后台数据库学号:学生姓名: 指导教师:提交时间: 2013-11-22目录库存物资管理系统后台数据库 (1)第1章进行需求分析,编写数据字典 (1)1.1系统功能要求设计: (1)1.2模块设计 (1)1.3数据字典 (2)第2章面向对象分析和设计 (4)第3章逻辑结构设计 (5)3.1类和对象向关系模式转换 (6)第4章数据库物理结构设计 (7)4.1存取方法设计 (7)4.2存储结构设计 (7)4.3物理设计 (7)第5章数据完整性设计 (11)5.1主键及索引 (11)表名 (11)5.2完整性约束的说明 (11)5.3 check约束 (12)5.4 Default默认值 (12)5.5 触发器设计 (12)第6章数据库视图的设计 (16)第7章存储过程设计 (19)总结 (28)参考文献: (28)库存物资管理系统后台数据库第1章进行需求分析,编写数据字典1.1系统功能要求设计:(1)数据表以及数据量1)有一个存放商品的仓库,每天都有商品出库和入库。

2)商品有1000多种,每种商品都有名称、生产厂家、型号、规格等。

3)出入库时必须填写出入库单据,单据包括商品名称、生产厂家、型号、规格、数量、日期、时间、入库单位(或出库单位)名称、送货(或提货)人姓名。

(2)设计要求:1) 进行需求分析,编写数据字典。

2) 设计E-R图。

3) 设计出入库单据的录入。

4) 实现按商品名称、出入库日期的查询。

5) 实现分别按日、月和年对出入库商品数量的统计。

(3)主要功能:1)商品管理:增加商品、修改商品、删除商品、浏览商品2)库存管理:通过触发器实现商品的入库,同时完成对库存表的更新通过触发器实现商品的出库,同时完成对库存表的更新实现按商品名称查询库存数量、入库数量和出库数量实现按入库日期查询入库数量、出库数量实现分别按日、月和年对入库商品数量的统计实现分别按日、月和年对入库商品数量的统计1.2模块设计库存物资管理大体可以分为3大块,如下图所示:首先是商品入库模块,该模块主要是描述把采购回来的商品,分类别的放置到指定的仓库中去,然后是商品出库模块,该模块主要描述从指定的仓库中拿出商品,最后是商品库存模块,这个模块主要是记录商品的库存数量。

仓库管理系统数据库设计课程设计

仓库管理系统数据库设计课程设计

仓库管理系统的应用和发展
仓库管理系统概述:介绍仓库管理系统的发展历程、应用领域和重要性。 仓库管理系统应用现状:分析当前仓库管理系统的应用现状,包括企业规模、行业分布、地域分布等。 仓库管理系统发展趋势:探讨仓库管理系统的发展趋势,包括技术、功能、应用等方面的变化。 课程设计背景:介绍本次课程设计的背景,包括课程目标、设计要求、设计内容等。
安全性原则: 保护数据不 被未经授权 的访问和篡 改
性能优化原 则:提高数 据查询和处 理的速度和 效率
数据库设计规范
数据库设计原则:满足用户需求,保证数据一致性、完整性、安全性
数据库设计规范:采用统一的数据命名规范、数据类型规范、数据存储规范等
数据库设计流程:需求分析、概念设计、逻辑设计、物理设计、实施与维护
出库记录与查询:系统记录每笔出库操作,并可查询历史出库记录,方便管理和追溯
库存管理
库存查询:实时查 询仓库库存数量和 状态
库存预警:设定安 全库存阈值,低于 预警线及时提醒
库存盘点:定期对 仓库库存进行盘点 ,确保数据准确性
库存调拨:在不同 仓库之间进行库存 调拨,满足客户需 求
报表生成与查询
报表内容:详细记录仓库的 进货、销售、库存等信息
添加标题
数据库设计可以保证数据安全性:通过数据库设计,可以设置合适的数据 访问权限和数据加密方式,保证数据的安全性。
仓库管理系统功能需求 分析
货物入库流程:描述货物入库的具 体流程,包括货物的接收、检验、 入库等环节。
货物入库管理
入库数据核对:说明如何核对入库 数据,确保数据的准确性和完整性。
添加标题
触发器条件:WHEN INSERTING, UPDATING, DELETING

数据库课程设计-仓库管理系统

数据库课程设计-仓库管理系统

任务书1、课程设计题目仓库管理系统2、设计任务和内容一个小型通用的仓库管理系统是实现企业对库存商品出库、入库进行高效的管理。

通过应用系统应能结合销售情况对库存商品进行录入、删除、修改等操作。

按照一定的条件,查询、统计符合条件的商品信息;并且对查询、统计的结果有一定的输出。

本课题任务是开发一个小型的仓库管理系统,并撰写符合规范的课程设计说明书以体现设计过程和设计结果。

3、设计步骤和要求设计步骤:首先进行相关资料查阅和学习,了解基本的业务流程和系统数据功能要求。

然后结合软件工程的理论和教材中数据库设计的六个阶段(重点是前三个阶段)完成设计任务,即系统结构设计(需求分析、概念结构设计、逻辑结构设计、物理结构设计)和系统功能设计。

设计要求:1、撰写课程设计说明书。

其要求如下:(1)基本要求:①能反映完成了上述设计内容要求。

②要求撰写不少于5000个文字(20页)的文档。

③文档中至少要包括:数据流图、数据字典、E-R图、数据库表的详细说明、系统功能结构图、主要功能模块说明。

④课程设计说明书一律用碳素墨水书写,其中用户界面设计可以附界面的计算机截图或手工绘图。

(2)文档格式要求(遵循数据库原理及应用课程设计大纲上的要求)其中,正文部分:①分章、层次等,每一章从新一页开始。

②章节安排可如下安排.概述:包括项目背景、编写目的、软件定义、开发环境等内容。

.需求分析:问题陈述、需完成的功能。

以数据流图和数据字典表达。

.概念结构设计:将上述需求分析的成果抽象为ER模型图。

.逻辑结构设计:把ER模型图转换为关系表;描述每一个基本表关系。

并进行规范化;定义视图、定义索引、主关键字、定义权限。

.软件功能设计:画出系统功能结构图,描述每个功能所完成的任务。

.代码设计和界面设计:给出主要功能的代码并有适当的说明;界面设计要合理,给出主要界面。

2、一个可运行的仓库管理系统原型。

(可选)教师签名:摘要随着计算机技术的飞速发展,计算机在企业管理中应用的普及,利用计算机实现管理企业势在必行。

数据库课程设计—物资管理系统

数据库课程设计—物资管理系统

目录1概述......................................................... - 0 - 1。

1 项目背景:................................. 错误!未定义书签。

1.2 编写目的:............................................... - 1 -1.3 项目名称:.............................................. - 1 -1.4 开发环境:............................................... - 1 -2 需求分析 ................................................... - 1 -2。

1 问题的提出:........................................... - 1 -2.2 需完成的功能:.......................................... - 2 -3 数据库设计的过程 ............................................ - 2 -3。

1 概念模型设计........................................... - 2 -3.2 逻辑数据库设计.............................. 错误!未定义书签。

3.3 规范化理论的应用........................................ - 6 -3。

4 物理数据库设计......................................... - 6 - 4 软件功能设计 ................................................ - 9 -4。

仓储物资管理系统数据库设计报告

仓储物资管理系统数据库设计报告

仓储物资管理系统数据库设计报告引言仓储物资管理系统是一个用于管理和跟踪仓储物资的系统,旨在提高物资管理的效率和准确性。

数据库设计是该系统的核心组成部分,本报告将详细介绍仓储物资管理系统的数据库设计。

数据库设计目标仓储物资管理系统的数据库设计目标包括: 1. 提供一个可靠的数据存储和管理平台,确保数据的完整性和安全性。

2. 支持多用户并发访问,保证系统的性能和可扩展性。

3. 提供高效的数据查询和分析功能,满足用户对数据的实时需求。

数据库架构仓储物资管理系统的数据库采用关系型数据库,基于客户端/服务器模型构建。

数据库架构包括以下几个主要组成部分:表结构数据库表的设计是系统数据存储和管理的基础。

以下是仓储物资管理系统的主要表结构:物资表(material)字段名数据类型描述id INT 物资唯一标识符name VARCHAR(100) 物资名称price DECIMAL(10,2) 物资单价quantity INT 物资数量category VARCHAR(50) 物资类别supplier VARCHAR(100) 供应商仓库表(warehouse)字段名数据类型描述id INT 仓库唯一标识符name VARCHAR(100) 仓库名称address VARCHAR(200) 仓库地址入库记录表(inbound_record)字段名数据类型描述id INT 入库记录唯一标识符material_id INT 入库物资的唯一标识符(外键)quantity INT 入库数量inbound_date DATE 入库日期出库记录表(outbound_record)字段名数据类型描述id INT 出库记录唯一标识符material_id INT 出库物资的唯一标识符(外键)quantity INT 出库数量outbound_date DATE 出库日期数据库关系数据库中的表间有多种关系,包括一对一关系、一对多关系和多对多关系。

仓库管理系统数据库课程设计-课程设计

仓库管理系统数据库课程设计-课程设计

仓库管理系统数据库课程设计-课程设计仓库管理系统1.课程设计的目的仓库管理信息系统主要是为公司的经营活动提供信息服务,它涵盖了仓库的各项管理工作,涉及多方面的职能。

系统能够对客户信息管理、订单管理、报价单管理、供应商管理、出货管理等信息提供存储、更新、查询、统计的功能,使公司能够合理控制进销存的各个环节,提高资金的利用率和结算速度,实现管理的高效率、实时性、安全性、科学化、现代化和智能化。

按照管理信息系统的原理和方法,采用成熟的信息技术和手段,支持公司管理工作的全过程,加强各种信息资源的管理与运用,提高企业管理工作的现代化水平,优化人、财、物和信息资源在供、销等各环节的运行机制。

管理信息系统应逐步覆盖公司内部的所有部门和一切经营活动,使所有业务部门的工作人员在信息系统的辅助下进行工作,提高管理的整体水平,同时企业领导可以通过系统及时了解各部门工作的进展情况。

2.需求分析的任务2.1功能需求该系统主要分为三大功能: 管理员功能、用户功能。

管理员功能包括:产品入库登记、确认入库信息、删除库内信息、借出信息登记、产品分类管理、添加人员、删除人员、查询库内信息、系统配置、查看系统事件。

用户功能包括:查询库内信息、查询出库信息、查询入库信息、修改本用户密码。

2. 2用户需求根据用户需求,该系统应该实现以下功能:(1)进、出库管理。

对进、出库信息进行记录。

(2)查询功能。

仓库管理对查询要求高,通过主菜单记录当前操作用户的用户编号,保证了对进、出库信息录入负责人的确认。

(3)部门资料管理与库存报表生成。

资料管理包括了人员信息管理,财政支出信息管理,以及各项业务单据的资料管理。

报表主要分类为:日报表,月报表,销售报表,入库报表等等。

(4)应用计算机管理后,由于计算机能存贮大量的数据,而且数据只要一次存入,便可多次重复使用,所以管理数据达到完整,统一,原始记录能保证及时,准确。

(5)应用计算机管理后,许多重复性的工作,都可由计算机去执行,从而使管理人员从事务性工作解脱出来,真正变为从事一些信息的分析,判断,决策等创造性的工作3数据库设计3.1数据库的概念模型用E—R图表示当前的数据库概念模型图2.4入库实体图2.5 出库实体图2.6 库存台账实体图2.7总 E-R图3.2功能模块图库存管理人员可能对数据库的管理有不同的权限,根据要求赋予不同人员对数据库管理的权限根据系统的业务流程和用户的需求分析可以得出,本系统应该包含产品基本信息管理、出入库管理、库存管理、系统管理、操作人员管理、查询、打印、统计等几大功能,如下图所示:图3.2 总体功能模块图其中入库管理包括新物品初次入库(包含基本信息的入库)和非新物品入库,打印可以按需要采购的物品和借出,进库,入库信息进行打印.1)基本管理:具体用户是系统管理员,对于出库进库成功时系统直接算出该产品的余料2)进库管理:主要完成对产品品名,规格型号,数量,单价,入库日期,入料人编号,入料人(入料人和编号为统一的,一入料人编号对应于一个入料人),经手人出库管理主要完成产品品名,规格型号,数量,单价,出库日期,出料人编号,出料人3)交接班是为了便于用户交接班时不用退出系统就可以进行数据库用户更换4)修改密码必须先输入原始密码才让修改密码,防止用户离开时的疏忽而被其他人篡改用户信息和密码。

仓库管理系统-数据库课程设计文档

仓库管理系统-数据库课程设计文档

仓库管理系统-数据库课程设计文档2006410206-1引言…………………………………………………………………………………………………3 第一章概述1、项目背景 (3)2、项目目的和意义 (4)3、软件定义 (5)4、开发环境……………………………………………………………………………………6 第二章需求分析1、问题陈述 (8)2、系统功能 (9)3、数据库概念结构设计 (10)4、数据库逻辑结构设计 (11)5、软件功能模块设计 (15)6、视图定义 (16)7、输入输出设计 (17)8、安全设计…………………………………………………………………………………17 第三章系统的详细设计与实现1、引言 (18)2、模块实现.......................................................................................... 18 第四章结束语............................................................................................. 20 参考资料......................................................................................................21 源程序清单 (22)随着社会经济的迅速发展和科学技术的全面进步,计算机事业的飞速发展,以计算机及与通信技术为基础的信息系统正处于蓬勃发展的时期。

各种仓库管理的方法也是日新月异。

以前全是由人力管理的方法存在很多缺点,仓库的管理问题也就提上了日程。

随着这种企事业单位产品和材料的大量增加,起管理难度也越来越大,如何优化仓库夫人日常管理也就成为了一个重要的课题。

在计算机飞速发展的今天,将计算机这一信息处理利器应用于仓库的日常管理已经是势在必行,而且这也将为仓库管理带来前所未有的改变,它可以带来意想不到的效益,同时也会为企业飞速发展提供无限制的潜力。

数据库课程设计-仓库货物管理系统

数据库课程设计-仓库货物管理系统

网络教育学院《数据库课程设计》题 目:XXXX数据库系统的设计与实现学习中心: 学 学目录摘要.............................................................................................................................. 序言..............................................................................................................................1、系统概况....................................................................................................................1.1编写目的.............................................................................................................1.2开发背景.............................................................................................................1.3实现目标.............................................................................................................2、系统需求分析............................................................................................................2.1系统总体需求.....................................................................................................2.2系统整体功能介绍.............................................................................................2.3系统元素、实体介绍.........................................................................................2.4软硬件平台介绍.................................................................................................3、系统设计与实现........................................................................................................3.1概念设计.............................................................................................................3.2模块功能设计.....................................................................................................3.2.1模块的功能设计.....................................................................................3.3系统总体功能.....................................................................................................3.3.1给出总体系统设计的介绍,并给出相应的E-R图.............................3.4逻辑设计.............................................................................................................3.4.1本部分设计主要包括各数据库功能表的设计.....................................3.5界面设计.............................................................................................................3.5.1介绍各功能界面的设计与介绍.............................................................4、系统总结....................................................................................................................1系统概况1.1编写目的随着科学技术的发展,社会进步,计算机迅速的发展,仓库货物管理的方法也日新月异,以前全是由人工管理的方法现存在很多的缺点:管理效率低,劳动强度大,信息处理速度低而且准确率也不够令人满意。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

11信计2013-2014(一)《数据库原理及应用》课程设计设计题目仓储物资管理系统设计时间2013.12.31---2014.1.4学生姓名张政伟学生学号***********所在班级11精算指导教师董晓玮徐州工程学院数学与物理科学学院目录1 可行性研究 (3)2 需求分析 (3)2.1任务概述 (3)2.1.1 目标 (3)2.1.2 运行环境 (3)2.2数据需求 (3)2.2.1 数据流条目 (3)2.2.2 数据库描述 (4)2.3 功能需求 (4)2.3.1 功能划分 (4)2.3.2 功能描述 (4)3 概要设计 (4)4 逻辑设计 (5)5 界面设计和代码 (7)5.1登陆界面设计 (7)5.2注册界面与代码 (9)5.3修改密码 (10)5.4系统主界面设计和代码 (11)5.5查询信息管理界面设计 (13)5.6添加信息查询界面设计 (14)5.7出入库信息表设计 (17)5.8删改信息设计 (23)6总结 (25)参考文献 (25)1 可行性研究仓库管理系统是为了实现企业产品管理的系统化、规范化和自动化,从而提高企业管理效率而设计的。

它完全取代了原来一直用人工管理的工作方式,避免了由于管理人员的工作疏忽以及管理质量问题所造成的各种错误,为及时、准确、高效的完成仓库管理提供了强有力的工具和管理手段。

仓库管理系统是一个中小型数据库管理系统,它界面美观、操作简单、安全性高,基本满足了仓库管理的要求。

本系统的开发语言采用的是C#,开发环境采用的是Visual studio 2008,数据库采用SQL Server 2005,具有一般系统的数据功能,如数据查询,修改和删除等。

仓库管理系统在运行阶段,效果好,数据准确性高,提高了工作效率,同时也实现了仓库管理计算机化。

2 需求分析2.1任务概述经过调查,对仓库管理的业务流程进行分析。

库存的变化通常是通过入库、出库操作来进行。

系统对每个入库操作均要求用户填写入库单,对每个出库操作均要求用户填写出库单。

在出入库操作同时可以进行增加、删除和修改等操作。

用户可以随时进行各种查询、统计、报表打印、账目核对等工作。

另外,也可以用图表形式来反映查询结果。

2.1.1 目标(1)界面设计要求尽量友好、美观,应提供登录界面,并考虑用户权限问题;(2)对各种信息应提供录入、修改、删除和查询功能;(3)具有对商品的基本信息和流动信息进行统计的功能;(4)具有数据备份与恢复、帮助等功能;(5)能够新增、修改和删除用户信息;2.1.2 运行环境Windows 98/2000/XP/2003操作系统下,安装并配置软件Microsoft SQL Server 2000数据库管理系统。

2.2数据需求2.2.1 数据流条目根据我们的进行的调查和分析,系统中各种功能所需的数据项和数据结构如下:①商品信息:商品编号,商品名,商品单价;②职工信息:职工号,职工姓名,性别,电话,住址;③供货商信息:供应商姓名,地址,电话,单位等;④入库信息:入库编号,商品编号,商品名称,单价,数量,总价,供应商;⑧出库信息:出库编号,商品编号,商品名称,单价,数量,总价,经手人;2.2.2 数据库描述使用SQL SERVER2000作为后台数据库,就可以行使基于网络连接的用户认证。

从而给不同的子系统分配不同的数据库使用角色,让他们彼此之间使用的数据库隔离开来,以达到较高的安全性。

2.3 功能需求根据对各大超市进行的调查和分析,仓库管理系统应该具有以下功能:①仓库中的货物信息的录入、修改、删除和查询。

②仓库的信息的的录入、修改、删除、查询和统计。

③管理者的信息的录入、修改、删除和查询。

④供货商的信息的录入、修改、删除、查询和统计。

⑤货物流动信息的录入、修改、删除和查询。

2.3.1 功能划分仓库管理系统主要实现以下四方面的功能:A. 登陆b. 注册c. 查询d. 修改2.3.2 功能描述仓库管理包括登陆、注册、查询、修改四方面功能。

登陆,分为普通管理员登陆和超级管理员登陆。

查询,分为员工查询,仓库查询和物品查询。

修改,主要实现添加,修改和删除。

3 概要设计对系统功能分析中的各项功能进行集中、分块,按照结构化程序设计的要求,得到如下图所示的系统功能模块图。

4 逻辑设计根据数据库需求分析,本系统的数据库逻辑结构设计如下。

①商品信息设计②入库单信息设计员工查询仓库查询商品查询注册仓库管理系统登录普通管理员 超级管理员查询修改添加修改删除③出库单信息设计④职工信息设计⑤仓库信息设计⑥供货商信息表5 界面设计和代码5.1登陆界面设计public partial class Fmlogin:Form{ public Fmlogin(){ InitializeComponent(); }private voidBUT_Y_Click(object sender,EventArgs e){ string username = tbuser.Text;string password = tbpw.Text;string connstring = @"Data Source=.zhaojuan-PC\SQLEXPRESS;AttachDbFilename=F:\仓库管理系统\仓库管理系统\WMS_DB.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True";SqlConnection conn = new SqlConnection(connstring);//获取用户名和密码匹配的行的数量的sql语句string sql = string.Format("select count(*) from [usertable] where username='{0}'and password='{1}'", username, password);try{ if(comboBox1.Text == "超级管理员"&&tbuser.Text=="admin"){conn.Open();SqlCommand comm = new SqlCommand(sql, conn);int num = (int)comm.ExecuteScalar();if (num > 0){ this.Hide();Fmmenu f1 = new Fmmenu();f1.ShowDialog(); }else{ MessageBox.Show("用户名或密码或身份错误,请重新输入!","登录失败", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); } }else if (comboBox1.Text =="普通管理员"){ conn.Open();SqlCommand comm = new SqlCommand(sql, conn);int num = (int)comm.ExecuteScalar();if (num > 0){ this.Hide();Fmmenu f1 = new Fmmenu();f1.删改信息ToolStripMenuItem.Enabled = false;f1.ShowDialog(); }else{MessageBox.Show("用户名或密码或身份错误,请重新输入!","登录失败", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);} }else{MessageBox.Show("用户名或密码或身份错误,请重新输入!","登录失败", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); } }catch (Exception eee){ MessageBox.Show(eee.Message, "数据库操作错误!", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); }finally{conn.Close(); } }private void BUT_z_Click(object sender, EventArgs e){ Fmregister f2 = new Fmregister(); f2.ShowDialog();} }5.2注册界面与代码private voidbutton1_Click(object sender,EventArgs e){if(tbpw.Text ==tB2_repw.Text){ string connstring =@"DataSource=.zhaojuan-PC\SQLEXPRESS;AttachDbFilename=F:\仓库管理系统\仓库管理系统\WMS_DB.mdf;IntegratedSecurity=True;ConnectTimeout=30;User Instance=True";SqlConnection conn = new SqlConnection(connstring); ;try{conn.Open();SqlCommand comm = new SqlCommand("register", conn);mandType = CommandType.StoredProcedure;comm.Parameters.AddWithValue("@username", tbuser.Text.Trim()); comm.Parameters.AddWithValue("@password", tbpw.Text.Trim());comm.Parameters.AddWithValue("@workerID", tB_worker.Text.Trim());int count = comm.ExecuteNonQuery();//执行命令,返回的行数if (count > 0) {MessageBox.Show("注册成功!可以登录!", "成功", MessageBoxButtons.OK, rmation); }else{ MessageBox.Show("注册失败!","错误!",MessageBoxButtons.OK,rmation);} }catch(Exception ){ MessageBox.Show("操作数据失败!可能用户名重复或您不是本公司职员!", "错误!", MessageBoxButtons.OK, rmation); }finally{conn.Close();}}elseMessageBox.Show("注册失败!重复密码错误!", "错误!", MessageBoxButtons.OK, rmation); }private void but_return_Click(object sender, EventArgs e){ this.Close();}5.3修改密码private void but_Y_Click(object sender, EventArgs e){ if(tBsure.Text ==tBNpass.Text){ string connstring =@"DataSource=zhaojuan-PC\SQLEXPRESS;AttachDbFilename=D:\仓库管理系统\仓库管理系统\WMS_DB.mdf;IntegratedSecurity=True";SqlConnection conn = newSqlConnection(connstring);try{ conn.Open();SqlCommand comm = newSqlCommand("updatepass", conn);mandType=CommandType.StoredProcedure;comm.Parameters.AddWithValue("@username", tBuser.Text);comm.Parameters.AddWithValue("@password", tBpass.Text);comm.Parameters.AddWithValue("@newpass", tBNpass.Text);int count = comm.ExecuteNonQuery();if (count > 0){MessageBox.Show("修改密码成功");tBuser.Text = ""; tBpass.Text = ""; tBNpass.Text = "";tBsure.Text = ""; tBuser.Focus(); }else{MessageBox.Show("数据库操作失败", "修改密码失败", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);}}catch{ MessageBox.Show("操作数据失败!", "错误!", MessageBoxButtons.OK, rmation); }finally{ conn.Close();} }else{ MessageBox.Show("确认密码与新密码不符", "修改密码失败", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);tBuser.Text = ""; tBpass.Text = ""; tBNpass.Text = ""; tBsure.Text = ""; tBuser.Focus(); } }private void button1_Click(object sender, EventArgs e){this.Close();}5.4系统主界面设计和代码public partial class Fmmenu:Form{public Fmmenu(){ InitializeComponent();}private void职员ToolStripMenuItem_Click(objectsender, EventArgs e){ putinto_w w = newputinto_w();w.ShowDialog(); }private void查询所有ToolStripMenuItem_Click(object sender, EventArgs e){ allinformation s = new allinformation();s.ShowDialog(); }private void按仓库ToolStripMenuItem_Click(object sender, EventArgs e) { BY_WHID bw = new BY_WHID();bw.ShowDialog(); }private void供货商ToolStripMenuItem_Click(object sender, EventArgs e){ putinto_sup su = new putinto_sup(); su.ShowDialog(); } private void仓库信息ToolStripMenuItem_Click(object sender, EventArgs e){putinto_WH wh = new putinto_WH(); wh.ShowDialog(); }private void商品信息ToolStripMenuItem_Click(object sender, EventArgs e){ putin_G g = new putin_G();g.ShowDialog(); }private void入库ToolStripMenuItem_Click(object sender, EventArgs e) {putin pi = new putin(); pi.ShowDialog(); }private void出库ToolStripMenuItem_Click(object sender, EventArgs e) {putout po = new putout(); po.ShowDialog(); }private void删改信息ToolStripMenuItem_Click(object sender, EventArgs e){updataANDdelete ud = new updataANDdelete(); ud.ShowDialog();} private void提醒ToolStripMenuItem_Click(object sender, EventArgs e) {remind re = new remind(); re.ShowDialog(); }private void修改密码ToolStripMenuItem_Click(object sender, EventArgs e){ updatapass up = new updatapass(); up.ShowDialog(); } private void关于ToolStripMenuItem_Click(object sender, EventArgs e) { About ab = new About(); ab.ShowDialog(); }private void按供货商ToolStripMenuItem_Click(object sender, EventArgs e){ BY_SUP bs = new BY_SUP(); bs.ShowDialog(); } }5.5查询信息管理界面设计public partial class allinformation : Form{ public allinformation(){InitializeComponent(); }private void allinformation_Load(object sender, EventArgs e){ this.view_putoutTableAdapter.Fill(this.wMS_DBDataSet4.View_putout); this.view_putinTableAdapter.Fill(this.wMS_DBDataSet3.view_putin);this.supplierTableAdapter.Fill(this.wMS_DBDataSet2.Supplier);this.workerTableAdapter.Fill(this.wMS_DBDataSet1.Worker);this.gOODSTableAdapter.Fill(this.wMS_DBDataSet.GOODS);} private void fillByToolStripButton_Click(object sender, EventArgs e) { try{this.gOODSTableAdapter.FillBy(this.wMS_DBDataSet.GOODS); }catch (System.Exception ex){ System.Windows.Forms.MessageBox.Show(ex.Message);}try{ this.workerTableAdapter.FillBy1(this.wMS_DBDataSet1.Worker);}catch (System.Exception ex){ System.Windows.Forms.MessageBox.Show(ex.Message); } try{ this.view_putoutTableAdapter.FillBy(this.wMS_DBDataSet4.View_putout ); }catch (System.Exception ex){ System.Windows.Forms.MessageBox.Show(ex.Message); } try{ this.supplierTableAdapter.FillBy(this.wMS_DBDataSet2.Supplier); } catch (System.Exception ex){ System.Windows.Forms.MessageBox.Show(ex.Message); } try{this.view_putinTableAdapter.FillBy(this.wMS_DBDataSet3.view_putin); }catch (System.Exception ex){ System.Windows.Forms.MessageBox.Show(ex.Message); } } }5.6添加信息查询界面设计根据上图可知添加信息分为三类,人员信心,仓库信息,和商品信息,此外,人员信息分为职工类和供货商类,因添加界面和代码,格式大抵相同,所以只展示部分界面,进入添加设计如下:1.添加商品信息public partial class putin_G : Form{ public putin_G(){ InitializeComponent();}private void but_Y_Click(object sender,EventArgs e){string connstring = @"DataSource=.zhaojuan-PC\SQLEXPRESS;AttachDbFilename=F:\仓库管理系统\仓库管理系统\WMS_DB.mdf;IntegratedSecurity=True;Connect Timeout=30;UserInstance=True";SqlConnection conn = new SqlConnection(connstring);try{ conn.Open();SqlCommand comm = new SqlCommand("insertgoods", conn);mandType = CommandType.StoredProcedure;comm.Parameters.AddWithValue("@goods_ID",tB1_G_ID.Text.Trim());comm.Parameters.AddWithValue("@goods_name",tB2_G_name.Text.Trim());comm.Parameters.AddWithValue("@goods_price",tB3_G_price.Text.Trim());comm.Parameters.AddWithValue("@minnum",tB5_G_minnum.Text.Trim());int count = comm.ExecuteNonQuery();//执行命令,返回的行数if (count > 0){MessageBox.Show("添加成功!", "成功", MessageBoxButtons.OK, rmation);}else{MessageBox.Show("添加失败!", "错误!", MessageBoxButtons.OK, rmation);}}catch (Exception){ MessageBox.Show("操作数据失败!可能商品已存在!", "错误!", MessageBoxButtons.OK, rmation);}finally{conn.Close();}}private void button1_Click(object sender, EventArgs e) { this.Close(); } }2录入仓库信息public partial class putinto_WH : Form{public putinto_WH(){ InitializeComponent();}private void but_Y_Click(object sender,EventArgs e){string connstring = @"DataSource=.zhaojuan-PC\SQLEXPRESS;AttachDbFilename=F:\仓库管理系统\仓库管理系统\WMS_DB.mdf;IntegratedSecurity=True;Connect Timeout=30;UserInstance=True";SqlConnection conn = new SqlConnection(connstring);try{conn.Open();SqlCommand comm = new SqlCommand("insertWH", conn);mandType = CommandType.StoredProcedure;comm.Parameters.AddWithValue("@WH_ID",tB1_WH_ID.Text.Trim());comm.Parameters.AddWithValue("@WHname",tB2_WHname.Text.Trim());comm.Parameters.AddWithValue("@workerID",tB3_workerID.Text.Trim());comm.Parameters.AddWithValue("@WHphone",tB4_WHphone.Text.Trim());comm.Parameters.AddWithValue("@address",tB5_address.Text.Trim());int count = comm.ExecuteNonQuery();//执行命令,返回的行数if (count > 0){ MessageBox.Show("添加成功!", "成功", MessageBoxButtons.OK, rmation); }else{ MessageBox.Show("添加失败!", "错误!", MessageBoxButtons.OK, rmation);} }catch (Exception){ MessageBox.Show("操作数据失败!可能仓库已存在!", "错误!", MessageBoxButtons.OK, rmation);}finally{conn.Close(); } }private void button1_Click(object sender, EventArgs e){this.Close(); }}3录入职员信息(代码只展示不同部分Try{ conn.Open();SqlCommand comm = newSqlCommand("insertworker", conn);mandType=CommandType.StoredProcedurecomm.Parameters.AddWithValue("@workerID",tB1_ID.Text.Trim());comm.Parameters.AddWithValue("@workerName",tB2_name.Text.Trim());comm.Parameters.AddWithValue("@Sex", tB3_sex.Text.Trim());comm.Parameters.AddWithValue("@phone", tB4_phone.Text.Trim()); comm.Parameters.AddWithValue("@workerPost",tB5_POST.Text.Trim());int count = comm.ExecuteNonQuery();//执行命令,返回的行数5.7出入库信息表设计1出库表界面设计public partial class putout: Form{ public putout(){ InitializeComponent();}private voidbutton1_Click(object sender,EventArgs e){ this.Close(); }private void but_Y_Click(objectsender, EventArgs e){string show_str1 =string.Empty;string show_str2 =string.Empty;string dt1 =dateTimePicker1.Value.ToString();string dt2=dateTimePicker2.Value.Date.ToString();string connstring = @"Data Source=.zhaojuan-PC\SQLEXPRESS;AttachDbFilename=F:\仓库管理系统\仓库管理系统\WMS_DB.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True";SqlConnection conn = new SqlConnection(connstring);try{conn.Open();SqlCommand comm = new SqlCommand("SPputout", conn);mandType = CommandType.StoredProcedure;//声明,引号中的内容是存储过程名comm.Parameters.AddWithValue("@putoutID",tB_puID.Text.Trim());comm.Parameters.AddWithValue("@goodsID",tB_GID.Text.Trim());string sql = string.Format("select Goods_name,Goods_price from [GOODS] where Goods_ID='{0}'", tB_GID.Text.Trim());SqlCommand comm1 = new SqlCommand(sql, conn);SqlDataReader sdr = comm1.ExecuteReader();while (sdr.Read()){ show_str1 = string.Format("{0}", sdr[0].ToString()); show_str2 = string.Format("{0}", sdr[1].ToString());} sdr.Close();//关闭SQLdatareadersdr.Dispose();this.tB_Gname.Text = show_str1;this.tB_Gprice.Text = show_str2;//将查询结果显示在文本框comm.Parameters.AddWithValue("@num",float.Parse(tB_Gnum.Text.Trim()));comm.Parameters.AddWithValue("@JSR",tB_JSR.Text.Trim());comm.Parameters.AddWithValue("@checker",tB_check.Text.Trim());comm.Parameters.AddWithValue("@time", dt1);tB_value.Text = (float.Parse(tB_Gnum.Text) * float.Parse(tB_Gprice.Text)).ToString();comm.Parameters.AddWithValue("@totalvalue",tB_value.Text);comm.Parameters.AddWithValue("@WH_ID",tB_WH.Text.Trim());comm.Parameters.AddWithValue("@producetime", dt2);int count = comm.ExecuteNonQuery();//执行命令,返回的行数if (count > 0){ MessageBox.Show("出库成功!", "成功", MessageBoxButtons.OK, rmation); }else{MessageBox.Show("出库失败!", "错误!", MessageBoxButtons.OK, rmation);}}catch{ MessageBox.Show("操作数据失败!可能填写错误!", "错误!", MessageBoxButtons.OK, rmation);}finally{ conn.Close(); } }2入库表界面设计(代码展示不同部分)private void but_Y_Click(objectsender, EventArgs e){string show_str1 =string.Empty;string show_str2 =string.Empty;string dt1 =dateTimeNow.Value.Date.ToString();DateTime dt2 =dateTimeGpro.Value.Date;DateTime dt3 =dateTimeGqgp.Value.Date;TimeSpan dt4 = dt3 - dt2;string connstring = @"Data Source=.zhaojuan-PC\SQLEXPRESS;AttachDbFilename=F:\仓库管理系统\仓库管理系统\WMS_DB.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True";SqlConnection conn = new SqlConnection(connstring);string sql1=string .Format("select count(*) from Storegoods where Goods_ID={0} and producetime={1}",tB_GID.Text.Trim(),dt2);conn.Open();SqlCommand comm2 = new SqlCommand(sql1, conn);int num=(int) comm2.ExecuteScalar();if (num == 0){ try{ SqlCommand comm = new SqlCommand("SPputin", conn); mandType = CommandType.StoredProcedure;comm.Parameters.AddWithValue("@putinID",tB_INID.Text.Trim());comm.Parameters.AddWithValue("@goodsID",tB_GID.Text.Trim());string sql = string.Format("select Goods_name,Goods_price from [GOODS] where Goods_ID='{0}'", tB_GID.Text.Trim());SqlCommand comm1 = new SqlCommand(sql, conn);SqlDataReader sdr = comm1.ExecuteReader();while (sdr.Read()){show_str1 = string.Format("{0}", sdr[0].ToString());show_str2 = string.Format("{0}", sdr[1].ToString());}sdr.Close();sdr.Dispose();this.tB_Gname.Text = show_str1;this.tB_Gprice.Text = show_str2;//将查询结果显示在文本框comm.Parameters.AddWithValue("@num",float.Parse(tB_num.Text.Trim()));comm.Parameters.AddWithValue("@supplier",tB_SUP.Text.Trim());comm.Parameters.AddWithValue("@JSR",tB_JSR.Text.Trim());comm.Parameters.AddWithValue("@checker",tB_check.Text.Trim());comm.Parameters.AddWithValue("@time", dt1);tB_value.Text = (float.Parse(tB_num.Text) * float.Parse(tB_Gprice.Text)).ToString();comm.Parameters.AddWithValue("@totalvalue",tB_value.Text);comm.Parameters.AddWithValue("@WH_ID",tB_WH.Text.Trim());comm.Parameters.AddWithValue("@producetime",dt2.ToString());comm.Parameters.AddWithValue("@qgp", dt4.Days);int count = comm.ExecuteNonQuery();//执行命令,返回的行数if (count > 0){MessageBox.Show("入库成功!", "成功", MessageBoxButtons.OK, rmation);}else{ MessageBox.Show("入库失败!", "错误!", MessageBoxButtons.OK, rmation);}}catch (Exception){ MessageBox.Show("操作数据失败!可能填写错误!", "错误!", MessageBoxButtons.OK, rmation); }finally{conn.Close();}}else{ try{SqlCommand comm = new SqlCommand("SPputin2", conn); mandType = CommandType.StoredProcedure;comm.Parameters.AddWithValue("@putinID",tB_INID.Text.Trim());comm.Parameters.AddWithValue("@goodsID",tB_GID.Text.Trim());string sql = string.Format("select Goods_name,Goods_price from [GOODS] where Goods_ID='{0}'", tB_GID.Text.Trim());SqlCommand comm1 = new SqlCommand(sql, conn);SqlDataReader sdr = comm1.ExecuteReader();while (sdr.Read()){show_str1 = string.Format("{0}", sdr[0].ToString());show_str2 = string.Format("{0}", sdr[1].ToString());}sdr.Close();sdr.Dispose();this.tB_Gname.Text = show_str1;this.tB_Gprice.Text = show_str2;//将查询结果显示在文本框comm.Parameters.AddWithValue("@num",float.Parse(tB_num.Text.Trim()));comm.Parameters.AddWithValue("@supplier",tB_SUP.Text.Trim());comm.Parameters.AddWithValue("@JSR",tB_JSR.Text.Trim());comm.Parameters.AddWithValue("@checker",tB_check.Text.Trim());comm.Parameters.AddWithValue("@time", dt1);tB_value.Text = (float.Parse(tB_num.Text) * float.Parse(tB_Gprice.Text)).ToString();comm.Parameters.AddWithValue("@totalvalue",tB_value.Text);comm.Parameters.AddWithValue("@WH_ID",tB_WH.Text.Trim());comm.Parameters.AddWithValue("@producetime",dt2.ToString());comm.Parameters.AddWithValue("@qgp", dt4.Days);int count = comm.ExecuteNonQuery();//执行命令,返回的行数5.8删改信息设计private void button1_Click(object sender, EventArgs e){this.gOODSTableAdapter.Update(wMS_DBDataSet7);}private voidupdataANDdelete_Load(objectsender, EventArgs e){this.supplierTableAdapter.Fill(this.wMS_DBDataSet9.Supplier);this.workerTableAdapter.Fill(this.wMS_DBDataSet8.Worker);this.gOODSTableAdapter.Fill(this.wMS_DBDataSet7.GOODS);}private void button7_Click(objectsender, EventArgs e){foreach(DataGridViewRow r indataGridView1.SelectedRows){dataGridView1.Rows.Remove(r); } }private void button3_Click(object sender, EventArgs e){workerTableAdapter.Update(wMS_DBDataSet8);}private void button4_Click(object sender, EventArgs e){foreach (DataGridViewRow r in dataGridView2.SelectedRows) {dataGridView2.Rows.Remove(r);} }private void button5_Click(object sender, EventArgs e){supplierTableAdapter.Update(wMS_DBDataSet9);}private void button6_Click(object sender, EventArgs e){ foreach (DataGridViewRow r in dataGridView3.SelectedRows) { dataGridView3.Rows.Remove(r);}}6总结经过两周的课程设计,我们组设计的作品仓库管理系统终于完成,在一次次的调试后,程序比较完善,并且利用数据库的相关知识,存储信息。

相关文档
最新文档