计算机毕业设计(论文)VS2005库存管理系统_第1页
计算机毕业设计(论文)VS2005库存管理系统_第2页
计算机毕业设计(论文)VS2005库存管理系统_第3页
计算机毕业设计(论文)VS2005库存管理系统_第4页
计算机毕业设计(论文)VS2005库存管理系统_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

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

文档简介

1、目 录第一章系统分析41.1 系统需求分析41.1.1 系统功能要求41.1.2 系统性能要求51.2.2 系统用例描述51.2.3 系统主要流程图5第二章系统设计62.1 功能模块设计62.2 数据库设计82.2.1 数据库对象83.2.2 数据表8第三章系统实现与说明113.1 用户登录123.2 系统主界面123.3 库存管理133.3.1 商品入库133.3.2 商品入库管理143.3.3 商品出库153.3.4 商品出库管理163.3.5 入库商品信息查询173.3.6 出库商品信息查询183.3.7 数据备份19第四章程序代码204.1 数据库连接204.2 业务逻辑层(主要代码)

2、234.3 表示层(删除功能代码)25 摘 要随着现代工业的发展,计算机信息管理系统越来越受到企业重视,而库存管理信息系统就是一个典型的信息管理系统(mis),库存管理系统能够极大地提高人事劳资管理的效率,也是企业的科学化、正规化管理与世界接轨的重要条件。基于此本人开发了一个库存管理系统,该系统实现了商品基本信息、类别信息、仓库信息等基本信息的管理,实现了商品入库、商品出库、入库管理、出库管理、出入库统计等库存管理,系统还实现了库存查询、用户管理、系统管理等功能。系统的核心是库存管理,企业使用库存管理系统,可以摆脱传统的手动填写单据工作模式,节省了大量的人力、物力和财力,使得管理员从繁琐的工作

3、中解放出来。本系统开发平台是vs2005,开发语言是c#, 数据库为sql server2005。系统采用三层架构模式,三层架构模式可实现代码的分散关注、松散耦合、逻辑复用、标准定义,并使得代码具有高度的可扩展性、安全性、易移植性和易维护性。系统还采用了javascript技术,使得页面富有动态感。关键词:库存管理,数据库,信息管理系统(mis)第一章 系统分析1.1 系统需求分析1.1.1 系统功能要求本人设计了一个基于microsoft .net framework的b/s库存管理系统,系统包括了以下库存管理的常见功能:(1) 基本信息管理。包括添加商品类别的添加、商品类别管理、商品信息、

4、商品信息管理、客户信息的添加、客户信息管理、仓库信息添加、仓库信息管理。(2) 库存管理。包括新增入库单、入库管理、新增出库单、出库管理、库存报警、入库统计、出库统计、查看库存信息。(3) 库存信息查询。包括入库单查询、出库单查询。(4) 用户管理。包括增加用户、更改密码、更改权限。(5) 系统管理。包括数据库备份、数据恢复、数据库压缩、分离数据库、附加数据库、数据导入、数据导出。1.1.2 系统性能要求库存管理系统为了满足人们的需求应具有以下性能:(1)系统具有易操作性;(2)系统具有通用性、灵活性;(3)系统具有易维护性;(4)系统具有可开放性;(5)系统具用易移植性。1.2.2 系统用例

5、描述 表1-1 系统用例描述表编号用例名称用例描述输入系统响应输出1登录检查用户是否存在用户名和密码在数据库中查询用户信息提示:“用户登录成功!“2添加商品信息对商品信息进行添加商品信息存储商品信息提示:“添加成功!”3管理商品信息对商品信息进行修改、删除选择要修改和删除的信息修改/删除商品信息提示:“修改成功/删除成功”4商品入库对商品信息进行入库要入库的商品信息存储入库商品信息提示:“添加成功”5入库信息管理对入库商品进行修改、删除选择要修改/删除的商品信息修改/删除商品信息提示:“修改成功/删除成功”6商品出库对商品信息进行出库要出库的商品存储商品信息提示:“添加成功”7出库管理对出库商

6、品进行修改、删除选择要修改/删除的商品信息修改/删除商品信息提示:“修改成功/删除成功”8数据备份对数据进行备份选择要备份的数据备份数据提示:“备份成功”1.2.3 系统主要流程图管理员登录成功后进入系统主页面流程图,管理员登录成功后,管理员进入系统主页面,对系统主要功能进行操作,登录失败后,重新登录。系统主要流程图如图1-2所示。图1-2 系统流程图第二章 系统设计2.1 功能模块设计库存管理系统主要有基本信息管理、库存管理等五大功能模块,系统的五大功能模块如图3-1所示。图2-1 系统功能模块库存管理包括商品的基本信息等八个部分,其具体描述如图2-2所示。图2-2 库存管理模块基本信息管理

7、包括管理客户信息等八个部分,具体描述如图2-3所示。图2-3 基本信息管理模块系统管理包括备份数据库等7个部分,具体描述如图2-4所示。 图2-4 系统管理模块2.2 数据库设计2.2.1 数据库对象库存管理系统数据库对象主要包括用户表、客户信息表、商品信息表、入库操作信息表、出库信息操作表、库存表、商品类别表、仓库信息表,系统的表设计如表2-1所示。表2-1 数据库对象名称类型说明users基本表存储用户的基本信息customers基本表存储客户的基本信息storein基本表存储入库商品基本信息storeout基本表存储出库商品基本信息products基本表存储商品的基本信息productt

8、ypes基本表存储商品类别基本信息prostore基本表存储库存商品基本信息storehouses基本表存储仓库的基本信息suppiler基本表存储供应商的基本信息3.2.2 数据表(1)客户信息表。保存了客户的基本的信息,如客户编号、客户名称、客户类型等,主键是c_id。客户信息表的详细设计如表3-2所示。表2-2 customers表字段列名字段类型字段大小必填字段说明c_idint是客户编号c_namevarchar50否客户名称c_typevarchar20否客户类型c_ontactvarchar30否联 系 人c_addressvarchar50否联系地址c_postcodevarc

9、har10否邮政编码c_phonevarchar30否联系电话c_faxvarchar30否传真号码c_emailvarchar30否邮 箱c_memovarchar1000否备 注(2)用户信息表。保存了用户的基本信息,如用户编号、用户密码等,主键是username用户信息表的详细设计如表2-3所示。表2-3 users表字段列名字段类型字段大小必填字段说明uernamevarchar50是 用 户 名pwdvarchar50是 用户密码popedomvarchar10是权 限(3)商品类别表。保存了商品类别的基本的信息,如类别编号、类别名称、商品级别,主键是typeid,商品类别表的详细设

10、计如表2-4所示。表2-4 producttypes表字段列名字段类型字段大小必填字段说明typeidint是商品类idtypenamevarchar50是商品名称upperidvarchar10是商品 级别(4)商品信息表。保存了商品信息的基本的信息,如商品编号、商品名称、供应商等,主键是p_id,商品信息表的详细设计如表2-5所示。表2-5 products表字段列名字段类型字段大小必填字段说明p_idint是商品类别idp_namevarchar50是商品类别名称typeidint是商品级别sp_namevarchar100是供应商p_stylevarchar50是商品规格p_unitv

11、archar10是计量单位p_price float是单价p_makedatedatetime是商品生产日期p_lowint是商品数量上限p_highint是商品数量下限p_validint是有限期p_alarmdaysint是在到达有效期期前几天发出警告(5) 供应商表。保存了供应商的基本的信息,如供应商编号、供应商名称等,主键是sp_id,供应商品表的详细设计如表2-6所示。表2-6 suppiler表字段列名字段类型字段大小必填字段说明sp_idvarchar20是供应商编号sp_namevarchar100是供应商名称sp_telphonevarchar20是联系方式sp_addres

12、svarchar100是地址(6)入库操作信息表。保存了入库商品的基本的信息,如入库单编号、入库操作类型、入库商品编号等,主键是i_id,入库操作信息表的详细设计如表3-7所示。表2-7 storein表字段列名字段类型字段大小必填字段说明i_idvarchar20是入库单idi_typevarchar50是入库操作型p_idvarchar是入库商品号p_makedatedatetime100是生产日期p_pricefloat50是入库商品价p_numint是入库商品量p_pricefloat是单价p_sumpricefoat是总额c_idint是客户编号p_uintvarchar10是计量单

13、位empnamevarchar50是经办人s_namevarchar50是仓库名称optdatedatetime是入库日期(7)出库操作信息表。保存了出库商品的基本的信息,如出库单编号、出库操作类型、出库商品编号等,主键是o_id,出库操作信息表的详细设计如表2-8所示。表2-8 storeout表字段列名字段类型字段大小必填字段说明o_idvarchar20是入库单编号o_typevarchar20是入库操作类型p_idvarchar20是商品编号p_pricesfloat是价格p_numberint是数量p_sumpricefloat是总价格c_idint是客户编号s_namevarcha

14、r50是仓库名称empnamevarchar50是经办人optdatedatetime是出库日期p_uintvarchar10是单位(8)库存信息表。保存了库存商品的基本的信息,如库存编号、商品名称、商品数量等,主键是s_pid,库存信息表的详细设计如表2-9所示。表2-9 prostore表字段列名字段类型字段大小必填字段说明s_pidint是商品存贮编号p_idvarchar20是商品编号p_pricefloat是商品入库单价pnumint是商品库存数量p_makedatedatetime是生产日期s_namevarchar50是仓库名称(9)仓库信息表。保存了仓库的基本的信息,如仓库编号

15、、仓库名称、仓库说明等,主键是s_id,出库信息表的详细设计如表3-10所示。表2-10 storehouses表字段列名字段类型字段大小必填字段说明s_idint是仓库编号s_namevarchar50是仓库名称s_memovarchar1000是仓库说明第三章 系统实现与说明3.1 用户登录管理员输入正确用户名、密码和验证码,单击登录,进入系统主页面,系统登录页面如图3-1所示。3.2 系统主界面成功登录后,进入库存管理系统的主界面。在主界面可以浏览库存管理系统的基本信息,系统主界面如图3-2所示。3.3 库存管理库存管理是库存管理系统中的主要模块,通过商品入库和出库管理,实现商品的运转。

16、3.3.1 商品入库单击左侧商品入库命令,进入商品入库界面,选择入库操作类型,选择商品编号、选择生产日期、输入经办人等,点击确定,完成商品入库。商品入库界面如图3-3所示。3.3.2 商品入库管理从左侧菜单栏单击入库管理命令,可以进入商品入库管理界面,可以对入库商品信息进行删除和编辑操作,选中要删除入库商品信息记录,直接可以单击删除命令,可以删除选中的记录,单击编辑操作命令可以链接到相应的编辑页面,用户可以进行入库商品信息编辑,商品入库管理界面如图3-4所示。3.3.3 商品出库从左侧菜单栏单击商品出库命令,可进入商品出库界面,选择出库操作类型、录入商品编号、录入经办人等,单击确定按钮,实现商

17、品出库。商品出库界面如图3-5所示。3.3.4 商品出库管理从左侧菜单栏单击出库管理命令,进入出库管理页面,对出库商品信息进行删除和编辑操作,选中要删除的出库商品记录,单击删除命令,可删除选中的记录,单击编辑操作可以链接到相应的编辑页面,用户可以进行出库商品信息编辑,商品出库管理界面如图3-6所示。 3.3.5 入库商品信息查询单击左侧菜单栏的入库查询命令,进入入库商品信息查询界面,入库查询包括按入库商品编号查询、按入库类型查询、按仓库名称查询、按入库日期查询。输入入库商品编号,单击确定按钮,可以查询到相应的入库商品信息,其它的查询方式与入库商品编号的查询方式一样。入库商品查询界面如图4-7所

18、示。3.3.6 出库商品信息查询单击菜单栏的出库查询命令,进入出库商品信息查询界面,出库查询分为按出库商品编号查询,按出库类型查询,按仓库名称查询,按出库日期查询。单击按库存名称查询命令,选择要查询的仓库名称,可以查询要相应的出库商品信息。出库商品信息查询界面如图3-8所示。3.3.7 数据备份单击菜单栏数据库备份命令,选择要备份的数据库,输入备份数据的路径,单击确定按钮,完成备份操作,数据备份界面如图4-9所示。第四章 程序代码4.1 数据库连接using system;using system.data;using system.configuration;using system.web

19、;using system.web.security;using system.web.ui;using system.web.ui.webcontrols;using system.web.ui.webcontrols.webparts;using system.web.ui.htmlcontrols;using system.data.sqlclient;public class sqlhelperpublic sqlhelper() private sqlconnection con; private void open() con = new sqlconnection(configu

20、rationmanager.connectionstringsli.connectionstring); con.open(); public int excuteprocedure(string procname, sqlparameter prams) open(); sqlcommand mycommand = new sqlcommand(); mycommand.connection = con; mycommand.commandtype = commandtype.storedprocedure; mycommand.commandtext = procname; if (pra

21、ms != null) foreach (sqlparameter parameter in prams) mycommand.parameters.add(parameter); int n = mycommand.executenonquery(); con.close(); return n; public sqldatareader excuteprocedure_dr(string procname, sqlparameter prams) open(); sqlcommand mycommand = new sqlcommand(); mycommand.connection =

22、con; mycommand.commandtype = commandtype.storedprocedure; mycommand.commandtext = procname; if (prams != null) foreach (sqlparameter parameter in prams) mycommand.parameters.add(parameter); int i = mycommand.executenonquery(); sqldatareader dr = mycommand.executereader(); return dr; public dataset e

23、xcuteprocedure_ds(string procname, sqlparameter prams) open(); sqlcommand mycommand = new sqlcommand(); mycommand.connection = con; mycommand.commandtype = commandtype.storedprocedure; mycommand.commandtext = procname; if (prams != null) foreach (sqlparameter parameter in prams) mycommand.parameters

24、.add(parameter); sqldataadapter da = new sqldataadapter(); dataset ds = new dataset(); da.selectcommand = mycommand; da.fill(ds,tables); return ds; public dataset excuteprocedure_ds(string procname) open(); sqlcommand mycommand = new sqlcommand(); mycommand.connection = con; mycommand.commandtype =

25、commandtype.storedprocedure; mycommand.commandtext = procname; sqldataadapter da = new sqldataadapter(); dataset ds = new dataset(); da.selectcommand = mycommand; da.fill(ds); return ds; public dataset excutemyds(string myds) open(); sqlcommand mycommand = new sqlcommand(); mycommand.connection = co

26、n; mycommand.commandtext = myds; sqldataadapter mydataadapter = new sqldataadapter(); mydataadapter.selectcommand = mycommand; dataset mydataset = new dataset(); mydataadapter.fill(mydataset); return mydataset; public sqldatareader getdatareader(string sql) open(); sqlcommand mycommand = new sqlcomm

27、and(); mycommand.commandtext = sql; mycommand.connection = con; sqldatareader mydatareader = mycommand.executereader(); return mydatareader; 4.2 业务逻辑层(主要代码)private string o_id; private string o_type; private string p_id; private float p_price; private int p_number; private float p_sumprice; private

28、int c_id; private string s_name; private string empname; private datetime optdate; private datetime optdate1; private string p_uint; public string o_id get return o_id; set o_id = value; public string o_type get return o_type; set o_type = value; public string p_id get return p_id; set p_id = value;

29、 public float p_price get return p_price; set p_price = value; public int p_number get return p_number; set p_number = value; public float p_sumprice get return p_sumprice; set p_sumprice = value; public int c_id get return c_id; set c_id = value; public string s_name get return s_name; set s_name =

30、 value; public string empname get return empname; set empname = value; public datetime optdate get return optdate; set optdate = value; public string p_uint get return p_uint; set p_uint = value; public datetime optdate1 get return optdate1; set optdate1 = value; public dataset inserstoreout(ref sto

31、reout insert) sqlparameter parame = new sqlparameter new sqlparameter (o_type,sqldbtype.varchar,20), new sqlparameter (p_id,sqldbtype.varchar,20), new sqlparameter (p_prices,sqldbtype.float), new sqlparameter (p_number,sqldbtype.int), new sqlparameter (p_sumprice,sqldbtype.float), new sqlparameter (c_id,sqldbtype.int), new sqlparameter (s_name,sqldbtype.varchar,50), new sqlparameter (empname,sqldbtype.varchar,50), new sqlparameter (optdate,sqldbtype.datetime ), new sqlparameter (p_uint,sqldbtype.varchar,10), ; parame0.value = insert.o_type; parame1.value = insert .p_id ; parame2.value

温馨提示

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

评论

0/150

提交评论