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

上传人:b****1 文档编号:204101 上传时间:2023-04-28 格式:DOCX 页数:32 大小:695.89KB
下载 相关 举报
仓库管理系统数据库课程设计.docx_第1页
第1页 / 共32页
仓库管理系统数据库课程设计.docx_第2页
第2页 / 共32页
仓库管理系统数据库课程设计.docx_第3页
第3页 / 共32页
仓库管理系统数据库课程设计.docx_第4页
第4页 / 共32页
仓库管理系统数据库课程设计.docx_第5页
第5页 / 共32页
仓库管理系统数据库课程设计.docx_第6页
第6页 / 共32页
仓库管理系统数据库课程设计.docx_第7页
第7页 / 共32页
仓库管理系统数据库课程设计.docx_第8页
第8页 / 共32页
仓库管理系统数据库课程设计.docx_第9页
第9页 / 共32页
仓库管理系统数据库课程设计.docx_第10页
第10页 / 共32页
仓库管理系统数据库课程设计.docx_第11页
第11页 / 共32页
仓库管理系统数据库课程设计.docx_第12页
第12页 / 共32页
仓库管理系统数据库课程设计.docx_第13页
第13页 / 共32页
仓库管理系统数据库课程设计.docx_第14页
第14页 / 共32页
仓库管理系统数据库课程设计.docx_第15页
第15页 / 共32页
仓库管理系统数据库课程设计.docx_第16页
第16页 / 共32页
仓库管理系统数据库课程设计.docx_第17页
第17页 / 共32页
仓库管理系统数据库课程设计.docx_第18页
第18页 / 共32页
仓库管理系统数据库课程设计.docx_第19页
第19页 / 共32页
仓库管理系统数据库课程设计.docx_第20页
第20页 / 共32页
亲,该文档总共32页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

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

《仓库管理系统数据库课程设计.docx》由会员分享,可在线阅读,更多相关《仓库管理系统数据库课程设计.docx(32页珍藏版)》请在冰点文库上搜索。

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

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

 

数据库课程设计报告

 

课题:

仓库管理系统

专业班级:

计算机信息管理

学号:

201262504

姓名:

涂铸

指导教师:

汪丽琴

学院:

长江大学工程技术学院

日期:

2014年6月21日

 

目录

1课程设计的目的和意义2

2需求分析2

3数据库系统设计3

4.程序代码实现6

5.系统用户界面设计14

6总结15

7.附录20

 

一、课程设计的目的和意义

仓库在现实生活中用途十分广泛,各种商城、超市要利用仓库存放物资,药房、医院等要利用仓库存放药品,企业、工厂等要利用仓库存放原材料、生产成品,因此仓库的管理成了一项十分重要的工作。

人工管理仓库既费时又费力,而且容易造成混乱,严重时会影响商城、企业的正常运作,造成恶劣的后果。

随着信息技术的发展,办公自动化的普及,如何快速,高效,便捷的管理仓库受到了高度的关注。

本系统模拟仓库管理,系统主要针对于日常库存信息的管理,包括物资管理、仓库管理、入库操作、入库查询统计、出库操作、出库查询统计、库存查询统计等处理情况。

用户可以通过相应的模块,对仓库里的物品的基本情况和库存数量进行查询,管理员通过简单的操作即可轻松的管理仓库,查询各项相关信息,并能进行入库和出库操作等。

通过仓库管理系统的设计与实现,使我们巩固和加深对数据库基础理论和基本知识的理解,进一步掌握了使用数据库进行软件设计的基本思想和方法,提高了运用数据库理论解决实际问题的能力,锻炼了实际动手能力、创新能力,培养了调查研究、查阅技术文献、资料、手册以及编写文档的能力。

 

二、需求分析

系统开发的总体任务是实现各种信息的系统化、规范化和自动化。

系统功能分析是在系统开发的总体任务的基础上完成。

本仓库管理系统需要完成功能主要有:

●用户登录。

实现根据不同用户的权限进行登录,并转到相应权限的操作。

●用户管理。

实现管理人员添加、修改、删除用户;一般用户修改信息等功能。

●货物管理。

实现管理人员对货物进库、退库的添加、修改、删除等功能。

●入库与出库管理。

实现管理人员对货物进行入库、出库操作,并可查询相应货物的出入库信息。

●监控管理。

在货物管理中加入最高储备和最低储备字段,对仓库中的产品实现监控和报警。

三、数据库系统设计

1.数据库逻辑设计

图4.1数据库逻辑结构图

2.数据流图

 

图4.2管理员数据流图

图4.3用户数据流图

3.数据库表设计

3.1表汇总

表名

类型

说明

用户信息表(EmpInfo)

基本表

集中保存系统中用户的帐号、密码等信息

货物信息表(KcGoods)

基本表

集中存放货物的相关信息

销售商信息表(Company)

基本表

存放销售商的角色)信息

入库信息表(JhGoodsInfo)

基本表

集中存放入库货物的相关信息

出库信息表(SellGoods)

基本表

集中存放出库货物的相关信息

退货信息表(ThGoodsInfo)

基本表

集中存放退货的相关信息

3.2详细表设计

用户表:

[EmpInfo]

字段

类型

长度

说明

约束

EmpId

文本

50

员工编号

主键

EmpName

文本

10

角色名称

权限

EmpLoginName

文本

50

密码

EmpSex

文本

2

性别

EmpBrithday

日期

50

出生日期

EmpDept

文本

10

所属部门

EmpPost

文本

10

职务

EmpPhone

文本

20

联系电话

EmpPhoneM

文本

20

传真

EmpAddress

文本

20

地址

EmpRemark

文本

50

备注

 

货物表:

[KcGoods]

字段

类型

长度

说明

约束

GoodsID

文本

50

货物编号

主键

KcGoodsName

文本

50

货物名称

KcNum

文本

50

货物数量

KcDeptName

文本

50

存放仓库

KcUnit

文本

50

存放单位

KcTime

文本

50

存放时间

KcRemark

文本

50

备注

销售商表:

[Company]

字段

类型

长度

说明

约束

CompanyName

文本

50

公司名称

主键

CompanyDirect

文本

10

公司负责人

CompanyPhone

文本

10

公司电话

CompanyFax

文本

10

公司传真

CompanyAddress

文本

50

公司地址

Remark

文本

50

备注

入库信息表:

[JhGoodsInfo]

字段

类型

长度

说明

约束

GoodsID

文本

50

入库编号

主键

EmpID

文本

50

进货员工编号

GoodsNum

文本

50

入库数量

GoodsJhPrice

文本

50

入库单价

DoodsNeedPrice

文本

50

入库总值

DoodTime

日期

50

入库时间

DepotName

文本

50

存入的仓库

Remark

文本

50

备注

出库信息表:

[SellGoods]

字段

类型

长度

说明

约束

GoodsID

文本

50

出库编号

主键

EmpID

文本

50

货员工编号

SellGoodsNum

文本

50

出库数量

Sellprice

文本

50

出库单价

SellNeedPrice

文本

50

出库总值

SellGoodsTime

日期

50

出库时间

SellRemark

文本

50

备注

四、程序代码实现

1.系统全部类汇总

类名

说明

frm.cs

程序主模块

frmCompanyInfo.cs

查询修改添加删除销售商信息

frmDataBack.cs

数据备份

frmDataReole.cs

数据还原

frmEmpInfo.cs

查询修改添加删除员工信息

frmFindGood.cs

查询货物信息

frmGonYingShang.cs

选择供应商信息

frmGoodID.cs

选择商品名称

frmJhGoodsInfo.cs

进货信息

frmKcGoodFind.cs

选择查询条件

frmKcGoods.cs

查询库存信息及设置警报数量

frmLogin.cs

用户登录

frmMain.cs

程序主界面

frmSellGoodInfo.cs

商品销售信息

frmSellGoods.cs

修改添加删除商品销售信息

frmThGoodsInfo.cs

查询修改添加删除商品销售信息

Program.cs

应用程序的主入口点

2.相关类详细设计

2.1添加入库信息的实现

添加入库信息设计:

 

进入主界面后,点击【进货管理】----【商品进货信息】即可打开添加入库界面。

下面给出完成添加功能的关键代码:

publicpartialclassfrmJhGoodsInfo:

Form

{

publicfrmJhGoodsInfo()

{

InitializeComponent();

}

publicfrmJhGoodsInfo(intintCdo)

{

InitializeComponent();

}

tb_JhGoodsInfojhGood=newtb_JhGoodsInfo();

tb_JhGoodsInfoMenthodjhMenthod=newtb_JhGoodsInfoMenthod();

publicstaticintintFalg=0;

privatevoidControlStatus()

{

this.toolSave.Enabled=!

this.toolSave.Enabled;

this.toolAdd.Enabled=!

this.toolAdd.Enabled;

this.toolCancel.Enabled=!

this.toolCancel.Enabled;

this.toolAmend.Enabled=!

this.toolAmend.Enabled;

this.tollDelete.Enabled=!

this.tollDelete.Enabled;

}

2.2库存查询类的实现

库存查询界面:

进入主界面后,选择【库存管理】---【库存查询】即可进入入库信息的查询界面。

本系统共提供两种查询方式,分别是商品编号查询、商品名称查询查询,选择任意一种查询方式并输入要查询的值,点击【查询】按钮,系统会根据输入的查询值以及选取的查询方式在数据库中进行检索,并将查询结果显示在界面下方的空白区域。

完成库存查询功能的核心代码:

namespaceCHEXC

{

publicpartialclassfrmKcGoodFind:

Form

{

publicfrmKcGoodFind()

{

InitializeComponent();

}

tb_KcGoodsMenthodtb_GoodMenthd=newtb_KcGoodsMenthod();

tb_KcGoodskcgood=newtb_KcGoods();

privatevoidbutton1_Click(objectsender,EventArgse)

{

if(comboBox1.Text=="")

{

MessageBox.Show("请选择查询条件!

");

return;

}

if(txtkey.Text=="")

{

MessageBox.Show("请输入查询信息");

return;

}

switch(comboBox1.Text)

{

case"商品编号":

//"商品编号":

kcgood.strGoodsID=txtkey.Text;

tb_GoodMenthd.tb_ThGoodsFind(dataGridView1,1,kcgood);

break;

case"商品名称":

//商品名称"

kcgood.strKcGoodsName=txtkey.Text;

tb_GoodMenthd.tb_ThGoodsFind(dataGridView1,2,kcgood);

break;

}

}

privatevoidfrmKcGoodFind_Load(objectsender,EventArgse)

{

}

}

}

五、系统用户界面设计

1.界面总体设计

主界面:

菜单栏、工作区、状态栏等。

功能界面:

全部为主界面的子界面,并完成相互独立的功能。

2.系统界面及功能概述

2.1登陆界面:

功能简介:

系统的登陆界面,输入正确的用户名和密码,单击【确定】,程序会根据输入的用户所属的角色,分配给其合适的权限,并进入相应的程序主界面;如果账号或密码错误则会弹出错误提示,要求用户重新输入。

 

2.2用户主界面:

2.3添加用户界面:

2.4商品退货界面:

2.5商品销售信息界面:

2.6商品库存界面:

 

2.7供应商信息界面:

 

六、总结

计算机技术的快速发展大大的推进了现代人工作生活的变化,越来越多的行业开始应用计算机来增强管理,提高效益。

计算机软件作为计算机系统的两大组成部分之一,看起来更接近普通用户;在设计一个软件系统的时候需要考虑到的因素非常多,但是最重要的莫过于功能和界面,功能直接关系着软件系统是否能完成用户的需求,而界面则直接面对用户,人们总是更倾向于使用一个操作方便的软件系统。

在设计仓库管理系统的时候,便是从以上两个方面入手,首要实现功能性需求,再设计一个相对方便操作的用户界面。

在这两个方面集成开发环境(IDE)的作用显得十分突出,MicrosoftVisualStudio2005是一套非常强大的开发套件,利用它可以快速的开发出界面友好,功能强大的软件系统。

此次完成的仓库管理系统可以完全适应中小型的仓库管理需求,它具有用户管理、物资管理、出入库管理、库存管理等功能,可以方便快捷进行添加、删除、查询等操作,且系统运行比较稳定。

在完成毕业设计的过程中也遇到了许多问题,主要是因为自己对高级语言编程以及数据库方面的知识理解不够深刻,平时动手做的软件不多;但是在指导老师的悉心指导下,通过查阅资料基本上都能比较好的解决遇到的问题,最终比较顺利的完成了此次毕业设计。

在这个过程中我也学到了很多东西,对C#,数据库都有了更深入的理解,可以较熟练地使用VS2005开发软件,也增强了分析问题、解决问题的能力,总的来说这次毕业设计使我受益颇多。

谢辞

在论文完成之际,向我的指导老师汪丽琴老师表示深深的敬意!

本设计是在汪丽琴老师的悉心指导、谆谆教诲下完成的,在此感谢王老师在设计期间对我的指导,以及在我学习过程中,遇到困难时对我的帮助,使我学到了好多知识,学会了能够透彻的分析问题解决问题的能力。

同时,感谢在我大学期间给与我帮助的所有老师,培养了我热爱学习、勤学好问、创新探索的能力,让我学到了不少的知识,使我受益非浅,还培养了我解决问题和处理问题的能力,为我在今后的工作和生活中打下了基础。

 

附录

附录一:

商品进货信息代码

usingSystem;

usingSystem.Collections.Generic;

usingSystem.ComponentModel;

usingSystem.Data;

usingSystem.Drawing;

usingSystem.Text;

usingSystem.Windows.Forms;

usingCHEXC.ClassInfo;

usingCHEXC.GoodMenhod;

usingSystem.Data.SqlClient;

namespaceCHEXC

{

publicpartialclassfrmJhGoodsInfo:

Form

{

publicfrmJhGoodsInfo()

{

InitializeComponent();

}

publicfrmJhGoodsInfo(intintCdo)

{

InitializeComponent();

}

tb_JhGoodsInfojhGood=newtb_JhGoodsInfo();

tb_JhGoodsInfoMenthodjhMenthod=newtb_JhGoodsInfoMenthod();

publicstaticintintFalg=0;

privatevoidControlStatus()

{

this.toolSave.Enabled=!

this.toolSave.Enabled;

this.toolAdd.Enabled=!

this.toolAdd.Enabled;

this.toolCancel.Enabled=!

this.toolCancel.Enabled;

this.toolAmend.Enabled=!

this.toolAmend.Enabled;

this.tollDelete.Enabled=!

this.tollDelete.Enabled;

}

publicvoidClearContorl()

{

txtGoodsNum.Text="";

txtGoodsRemark.Text="";

txtGoodsSellPrice.Text="";

txtJhCompName.Text="";

txtGoodsNoPrice.Text="";

txtGoodsNeedPrice.Text="";

txtGoodsName.Text="";

txtGoodsJhPrice.Text="";

txtGoodsID.Text="";

txtEmpId.Text="";

cmbDepotName.Text="";

}

publicintgetIntCount()

{

intintReslut=0;

if(intFalg==1)

{

if(txtGoodsID.Text=="")

{

MessageBox.Show("商品编号不能为空!

");

returnintReslut;

}

if(txtGoodsName.Text=="")

{

MessageBox.Show("商品名称不能为空!

");

returnintReslut;

}

if(txtJhCompName.Text=="")

{

MessageBox.Show("供应商名称不能为空!

");

returnintReslut;

}

if(txtEmpId.Text=="")

{

MessageBox.Show("进货人姓名不能为空!

");

returnintReslut;

}

if(txtGoodsNum.Text=="")

{

MessageBox.Show("数量不能为空!

");

returnintReslut;

}

if(txtGoodsName.Text=="")

{

MessageBox.Show("进货单价不能为空!

");

returnintReslut;

}

}

if(intFalg==2)

{

if(txtGoodsID.Text=="")

{

MessageBox.Show("商品编号不能为空!

选择要修改记录","提示");

returnintReslut;

}

}

if(intFalg==3)

{

if(txtGoodsID.Text=="")

{

MessageBox.Show("商品编号不能为空!

选择要删除记录","提示");

returnintReslut;

}

}

jhGood.strGoodsID=txtGoodsID.Text;

jhGood.strEmpId=txtEmpId.Text;

jhGood.strJhCompName=txtGoodsName.Text;

jhGood.strDepotName=cmbDepotName.Text;

jhGood.strGoodsNum=Convert.ToInt32(txtGoodsNum.Text);

jhGood.strGoodsName=txtGoodsName.Text;

jhGood.strGoodsUnit=cmbGoodsUnit.Text;

jhGood.deGoodsJhPrice=txtGoodsJhPrice.Text;

jhGood.deGoodsNeedPrice=txtGoodsNeedPrice.Text;

jhGood.deGoodsNoPrice=txtGoodsNoPrice.Text;

jhGood.deGoodsSellPrice=txtGoodsSellPrice.Text;

jhGood.strGoodsRemark=txtGoodsRemark.Text;

jhGood.DaGoodTime=dateTimePicker1.Value;

if(intFalg!

=3)

{

jhGood.Falg=0;

}

else

{

jhGood.Falg=1;

}

intReslut=1;

returnintReslut;

}

privatevoidfrmJhGoodsInfo_Load(objectsender,EventArgse)

{

jhMenthod.tb_JhGoodsInfoFind("",5,dataGridView1);

}

privatevoidFillControls()

{

try

{

SqlDataReadersqldr=jhMenthod.tb_JhGoodsInfoFind(this.dataGridView1[0,this.dataGridView1.CurrentCell.RowIndex].Value.ToString(),1);

sqldr.Read();

if(sqldr.HasRows)

{

txtEmpId.Text=sqldr[1].ToString();

txtGoodsName.Text=sqldr[4].ToString();

cmbDepotName.Text=sqldr[3].ToString();

txtGoodsNum.Text=sqldr[5].ToString();

cmbGoodsUnit.Text=sqldr[6].ToString();

txtGoodsJhPrice.Text=sqldr[7].ToString();

txtGoodsNeedPrice.Text=sqldr[9].ToString();

 txtGoodsNoPrice.Text=sqldr[10].ToString();

txtGoodsSellPrice.Text=sqldr[8].ToString();

txtGoodsRemark.Text=sqldr[11].ToString();

txtJhCompName.Text=sqldr[2].ToString();

txtGoodsID.Text=sqldr[0].ToString();

 txtGoodsID.Enabled=false;

}

}

catch(Exceptionee)

{

MessageBox.Show(ee.ToString());

}

}

privatevoidcomboBox1_SelectedIndexChanged(objectsender,EventArgse)

{

}

privatevoidtoolAdd_Click(objectsender,EventArgse)

{

ControlStatus();

Cl

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 自然科学 > 物理

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2