仓库管理系统报告.docx
- 文档编号:27248273
- 上传时间:2023-06-28
- 格式:DOCX
- 页数:28
- 大小:444.75KB
仓库管理系统报告.docx
《仓库管理系统报告.docx》由会员分享,可在线阅读,更多相关《仓库管理系统报告.docx(28页珍藏版)》请在冰豆网上搜索。
仓库管理系统报告
辽宁工业大学
2012—2013学年第二学期
开放性试验
选题名称:
仓库管理系统
专业:
信息管理
班级:
信管101班
姓名:
桂莹莹
学号:
101603029
指导教师:
张彩虹
日期:
2013。
07.12
摘要:
随着现代工业的发展,计算机信息管理系统越来越受到企业的重视。
本文主要分析介绍了仓库管理系统的一些基本功能和组成情况,包括系统的需求分析、系统结构、功能模块划分以及数据库模式分析等,重点对应用程序的实际开发实现作了介绍.达到了数据的一致性和安全性,且应用程序功能完备,符合了库存管理系统作为典型的信息管理系统(MIS)的要求。
同时简单介绍了VisualStudio2008编程环境和SQL数据库管理系统的功能特点,库存管理系统是企业物流管理中不可或缺的的一部分。
本系统利用ASO三层架构,完成系统登录,注销,修改密码的基本功能,仓库入库登记,出库登记,仓库货物预警,仓库内货物盘点的主要功能.本系统并不复杂,主要完成通过GUI开发,利用关键字对数据库进行增删改查等操作。
关键词:
仓库管理;数据库;信息管理;VisualStudio2008
1需求分析
1.1系统概述
仓库存放的货物品种繁多,堆放方式以及处理过程也很复杂。
随着业务量的增加,仓库管理者需要处理的信息量会大幅上升,因此往往很难及时准确的掌握整个仓库的运作状态。
针对这一情况,本系统在满足仓库的基本管理功能基础上发挥信息系统的智能化,减轻仓库管理人员和操作人员的工作负担。
系统主要实现目标是监控整个仓库的运作情况;提供完整的计划任务功能,由整个操作系统的指令中心来安排进出任务,确认任务的开始,进货管理和出货管理按其指令执行即可;实时监控所有货物的在线运动的情况,实时提供仓库变化的信息.
1.2系统总体需求
根据详细的需求分析,企业在库存中面临的主要问题体现在:
库存量大,库存资金周转慢,不能及时统计库存物料;库房人员重复工作多,效率低;不知道库存物资积压时间长短。
系统输入繁琐,极易产生输入错误,缺少智能化输入功能,如:
产品名称输入过程中,产品名称和产品代码不能够相互协调,易产生不匹配现象。
另外,整个系统运行较慢,数据处理能力不够,进行一个查询往往需要等待很长时间。
该系统还缺少通用库存管理理功能,货物组成条目都是经过手工计算的,工作量很大,且容易产生错误,有一个小错误,核对都需要花费很大的精力,换句话说,当前没有通用库存管理系统。
本系统从最初的采购到存储和出库,仓库管理将决定企业是否兑现其承诺。
从仓库计划到仓库操作和交叉运输,优化的仓库将有助于大幅度减少企业的库存量和和货物成本,因为企业将能保持较低的库存货水平,优化入库,保管和出库活动,并且协调载货量。
1.3可行性分析
技术上可行:
该系统所需硬件设备,市场上销售且价格较低,甚至可以使用原有的设备,软件上,操作系统采用Windows系列操作系统,数据库管理系统采用VisualStudio2008,这些软件在GUI开发中已被大量应用,技术上都比较成熟。
因此在技术上是可行的。
2概要设计
2。
1E-R图
2.2相关说明
登录系统:
账号密码均存储于SQL数据库中。
输入账号及账号对应密码,即可登录系统。
修改密码:
需输入一次原密码,输入两次新密码相同即可修改。
密码修改同步于SQL数据库。
注销:
登录账号退出,返回登陆界面。
退出系统:
系统退出。
入库登记:
输入产品ID,即可直接获得产品的相关信息,此时输入入库数量就可以完成货物的入库操作,如果此时产品为新产品,需输入产品的详细信息,就可以完成货物的入库操作。
入库操作同步更新SQL数据库。
出库登记:
输入产品ID,即可直接获得产品的相关信息,此时输入出库数量就可以完成货物的出库操作,入库操作同步更新SQL数据库.
仓库预警:
输入预警数量,点击确定按钮,此时显示数据库中,货物数量小于预警数量的货物总数和货物详细信息。
商品查询:
显示仓库中所有货物的详细信息,可以输入产品ID和产品名称进行货物查询,支持模糊查找。
3详细设计
3。
1数据库表定义
Users表(用户信息表)
Goods表(货物详情表)
Worehouses表(仓库信息表)
3。
2GUI框架设计
1
仓库管理系统主页面
2
设备台账查询
3
设备维修登记信息
4
归还信息登记
5
设备登记信息查询
6
租赁计划信息
部门信息查询
9
部门借还信息
编码实现
登录系统
publicstaticstringpwd;
publicstaticstringpid;
privatevoidbutton1_Click(objectsender,EventArgse)
{
pwd=this。
textBox1.Text;
pid=this。
textBox2.Text;
Logsl=newLogs();
if(int。
Parse(l.isPassword(this。
textBox2.Text,this.textBox1.Text).ToString())==1)
{
this.Hide();
Managementm=newManagement();
m。
ShowDialog();
}
else
{
DialogResultdr=MessageBox。
Show(”请检查您的用户名和密码”,"登录失败”,MessageBoxButtons.YesNo);
if(DialogResult.No==dr)
{
Application.Exit();
}
}
}
privatevoidbutton2_Click(objectsender,EventArgse)
{
Application。
Exit();
}
主菜单
publicpartialclassManagement:
Form
{
publicManagement()
{
InitializeComponent();
}
privatevoidChangeToolStripMenuItem_Click(objectsender,EventArgse)
{
ChangePasswordcp=newChangePassword();
cp。
ShowDialog();
}
privatevoidLogoutToolStripMenuItem_Click(objectsender,EventArgse)
{
DialogResultdr=MessageBox。
Show(”您确定要注销吗?
","注销”,MessageBoxButtons。
YesNo);
if(dr==DialogResult.Yes)
{
Application.Exit();
}
}
privatevoidOutToolStripMenuItem_Click(objectsender,EventArgse)
{
Application.Exit();
}
privatevoidManagement_Load(objectsender,EventArgse)
{
this.goodsTableAdapter。
Fill(this。
wmsDataSet.Goods);
}
privatevoidManagement_FormClosed(objectsender,FormClosedEventArgse)
{
Application.Exit();
}
privatevoidInputF2ToolStripMenuItem_Click(objectsender,EventArgse)
{
InputWHFormiwh=newInputWHForm();
iwh.ShowDialog();
}
privatevoidManagement_Activated(objectsender,EventArgse)
{
this.goodsTableAdapter.Fill(this。
wmsDataSet.Goods);
}
privatevoidOutF6ToolStripMenuItem_Click(objectsender,EventArgse)
{
OutWHFormowh=newOutWHForm();
owh。
ShowDialog();
}
privatevoidWarningToolStripMenuItem_Click(objectsender,EventArgse)
{
Warningw=newWarning();
w。
ShowDialog();
}
privatevoidGoodsDetailsToolStripMenuItem_Click(objectsender,EventArgse)
{
this.goodsTableAdapter.Fill(this。
wmsDataSet.Goods);
}
privatevoidWareHouseDetailsToolStripMenuItem_Click(objectsender,EventArgse)
{
this。
warehousesTableAdapter.Fill(this。
wmsDataSet1。
Warehouses);
}
privatevoidSearchToolStripMenuItem_Click(objectsender,EventArgse)
{
Searchs=newSearch();
s。
Show();
}
privatevoidfillByToolStripButton_Click(objectsender,EventArgse)
{
try
{
this。
goodsTableAdapter.FillBy(this。
wmsDataSet.Goods);
}
catch(System。
Exceptionex)
{
System。
Windows。
Forms。
MessageBox。
Show(ex.Message);
}
}
}
入库登记
publicpartialclassInputWHForm:
Form
{
publicInputWHForm()
{
InitializeComponent();
}
privatevoidInputWHForm_Load(objectsender,EventArgse)
{
//TODO:
这行代码将数据加载到表“wmsDataSet4。
Goods”中.您可以根据需要移动或移除它.
this.goodsTableAdapter.Fill(this.wmsDataSet4.Goods);
}
privatevoidbutton6_Click(objectsender,EventArgse)
{
this。
Close();
}
publicvoidSendToInput()
{
GoodsDetailss=newGoodsDetails();
s.GID=int.Parse(this。
textBox1。
Text);
s.GName=this。
comboBox1.Text;
s。
Gprice=float。
Parse(this.textBox3.Text);
s。
GProvider1=boBox1.Text;
s.GProvider2=this。
comboBox4.Text;
s.Wname=int。
Parse(boBox2。
Text);
s。
Count=SqlHelper.DefiniteCount(this.textBox1。
Text)+int。
Parse(this.textBox2。
Text);
SqlHelper.AddGoods(s);
}
privatevoidbutton5_Click(objectsender,EventArgse)
{
SendToInput();
this。
Close();
}
privatevoidtextBox1_TextChanged(objectsender,EventArgse)
{
GoodsDetailsg=SqlHelper.Bind(this。
textBox1。
Text);
boBox3.Text=g。
GName;
this。
textBox3.Text=g。
Gprice。
ToString();
this。
comboBox1.Text=g.GProvider1;
boBox4。
Text=g。
GProvider2;
boBox2。
Text=g。
Wname。
ToString();
}
}
出库登记
publicpartialclassOutWHForm:
Form
{
publicOutWHForm()
{
InitializeComponent();
}
privatevoidbutton2_Click(objectsender,EventArgse)
{
this.Close();
}
privatevoidbutton1_Click(objectsender,EventArgse)
{
SentToOutput();
this。
Close();
}
privatevoidSentToOutput()
{
GoodsDetailss=newGoodsDetails();
s.GID=int.Parse(this.textBox1.Text);
s.GName=this。
comboBox1。
Text;
s。
Gprice=float。
Parse(this.textBox3.Text);
s。
GProvider1=this。
comboBox1.Text;
s.GProvider2=boBox4。
Text;
s。
Count=SqlHelper.DefiniteCount(this.textBox1.Text)-int.Parse(this。
textBox2。
Text);
SqlHelper。
OutGoods(s);
}
privatevoidOutWHForm_Load(objectsender,EventArgse)
{
//TODO:
这行代码将数据加载到表“wmsDataSet2。
Goods"中。
您可以根据需要移动或移除它。
this.goodsTableAdapter.Fill(this。
wmsDataSet2。
Goods);
}
privatevoidtextBox1_TextChanged(objectsender,EventArgse)
{
GoodsDetailsg=SqlHelper。
Bind(this。
textBox1.Text);
boBox3。
Text=g.GName;
this。
textBox3。
Text=g.Gprice。
ToString();
this。
comboBox1.Text=g.GProvider1;
boBox4.Text=g。
GProvider2;
}
}
库存预警
publicpartialclassWarning:
Form
{
publicWarning()
{
InitializeComponent();
}
privatevoidbutton3_Click(objectsender,EventArgse)
{
this.listBox1。
Items.Clear();
List〈GoodsDetails>g=newList
g=SqlHelper。
WarningBind(this。
textBox2。
Text);
inti=0;
for(i=0;i〈g。
Count();i++)
{
this.listBox1。
Items.Add(g[i].GID.ToString().PadLeft(4)+g[i]。
GName.PadLeft(20)+g[i]。
Count。
ToString()。
PadLeft(10)+g[i]。
GProvider1。
PadLeft(20)+g[i]。
GProvider2.PadLeft(10));
}
this.textBox1.Text=i。
ToString();
}
}
货物查询
publicpartialclassSearch:
Form
{
publicSearch()
{
InitializeComponent();
}
privatevoidbutton1_Click(objectsender,EventArgse)
{
this.Close();
}
privatevoidSearch_Load(objectsender,EventArgse)
{
//TODO:
这行代码将数据加载到表“wmsDataSet5.Goods”中.您可以根据需要移动或移除它。
this.goodsTableAdapter.Fill(this.wmsDataSet5。
Goods);
}
privatevoidbutton2_Click(objectsender,EventArgse)
{
GoodsDetailsg=SqlHelper。
BindVague(boBox3.Text);
this.textBox1。
Text=g.GID。
ToString();
this。
textBox3.Text=g.Gprice.ToString();
boBox1.Text=g.GProvider1;
boBox4。
Text=g.GProvider2;
this。
comboBox2.Text=g。
Wname。
ToString();
this。
textBox2.Text=g。
Count.ToString();
}
privatevoidbutton3_Click(objectsender,EventArgse)
{
GoodsDetailsg=SqlHelper.Bind(this。
textBox1.Text);
this。
comboBox3。
Text=g。
GName;
this。
textBox3.Text=g。
Gprice.ToString();
boBox1。
Text=g。
GProvider1;
boBox4.Text=g.GProvider2;
this。
comboBox2.Text=g.Wname。
ToString();
this。
textBox2。
Text=g.Count.ToString();
}
}
数据库连接
publicstaticvoidChangeDBPassword(intp,stringp2)
{
SqlConnectionco=newSqlConnection(ConnectionString。
con);
SqlCommandcmd=newSqlCommand(string.Format(”updateUserssetUpassword=’{0}’whereUID=’{1}'",p,p2),co);
co.Open();
vari=(int)cmd。
ExecuteNonQuery();
MessageBox。
Show("密码修改成功");
co。
Close();
}
publicstaticvoidAddGoods(GoodsDetailsg)
{
SqlConnectionco=newSqlConnection(ConnectionString。
con);
SqlCommandcmd3=newSqlCommand(string.Format("selectcount(*)fromGoodswhere产品ID=’{0}’”,g.GID),co);
co。
Open();
intj=(int)cmd3.ExecuteScalar();
if(j==0)
{
SqlCommandcmd2=newSqlCommand(string。
Format("insertintoGoodsvalues(’{0}','{1}','{2}’,’{3}','{4}','{5}','{6}','{7}’)”,g。
GID,g.GName,g。
Gprice,g。
Count,g。
GProvider1,g。
GProvider2,g。
GDescribe,g.Wname),co);
inti=(int)cmd2.ExecuteNonQuery();
MessageBox.Show("添加成功”);
co.Close();
}
else
{
SqlCommandcmd1=newSqlCommand(string.Format(”updateGoodsset产品名称=’{1}’,产品价格='{2}’,仓库所剩数量='{3}’,厂商='{4}',厂商='{5}',备注='{6}’,收货仓库ID='{7}'where产品ID='{0}’”,g。
GID,g.GName,g.Gprice,g.Count,g。
GProvider1,g.GProvider2,g。
GDescribe,g.Wname),co);
inti=(int)cmd1.ExecuteNonQuery();
MessageBox。
Show(”更新成功”);
co.Close();
}
}
publicstaticvoidOutGoods(GoodsDetailsg)
{
SqlConnectionco=
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 仓库 管理 系统 报告
![提示](https://static.bdocx.com/images/bang_tan.gif)