版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、目录1 课程设计的目的和意义 22 需求分析 23 数据库系统设计 3154. 程序代码实现 5. 系统用户界面设计6 总结 7. 附录 错误!未定义书签错误!未定义书签 错误!未定义书签 错误!未定义书签、课程设计的目的和意义仓库在现实生活中用途十分广泛, 各种商城、超市要利用仓库存放物资, 药 房、医院等要利用仓库存放药品,企业、工厂等要利用仓库存放原材料、生产成 品,因此仓库的管理成了一项十分重要的工作。人工管理仓库既费时又费力, 而且容易造成混乱 ,严重时会影响商城、企业 的正常运作,造成恶劣的后果。随着信息技术的发展,办公自动化的普及,如何 快速,高效,便捷的管理仓库受到了高度的关注
2、。本系统模拟仓库管理, 系统主要针对于日常库存信息的管理, 包括物资管理、 仓库管理、入库操作、入库查询统计、出库操作、出库查询统计、库存查询统计 等处理情况。 用户可以通过相应的模块, 对仓库里的物品的基本情况和库存数量 进行查询,管理员通过简单的操作即可轻松的管理仓库,查询各项相关信息, 并 能进行入库和出库操作等。 通过仓库管理系统的设计与实现,使我们巩固和加 深对数据库基础理论和基本知识的理解, 进一步掌握了使用数据库进行软件设计 的基本思想和方法, 提高了运用数据库理论解决实际问题的能力, 锻炼了实际动 手能力、创新能力,培养了调查研究、查阅技术文献、资料、手册以及编写文档 的能力。
3、需求分析系统开发的总体任务是实现各种信息的系统化、 规范化和自动化。 系统功能 分析是在系统开发的总体任务的基础上完成。 本仓库管理系统需要完成功能主要 有:用户登录。实现根据不同用户的权限进行登录,并转到相应权限的操作。用户管理。实现管理人员添加、修改、删除用户;一般用户修改信息等功 能。货物管理。实现管理人员对货物进库、退库的添加、修改、删除等功能。 入库与出库管理。 实现管理人员对货物进行入库、出库操作,并可查询相 应货物的出入库信息。监控管理。 在货物管理中加入最高储备和最低储备字段, 对仓库中的产品 实现监控和报警。1 数据库逻辑设计三、数据库系统设计图4.1数据库逻辑结构图2数据流
4、图图4.2管理员数据流图图4.3用户数据流图3.数据库表设计3.1表汇总表名类型说明用户信息表(Emplnfo)基本表集中保存系统中用户的帐号、密码等信息货物信息表(KcGoods)基本表集中存放货物的相关信息销售商信息表(Company)基本表存放销售商的角色)信息入库信息表(JhGoodsInfo)基本表集中存放入库货物的相关信息出库信息表(SellGoods)基本表集中存放岀库货物的相关信息退货信息表(ThGoodsInfo)基本表集中存放退货的相关信息3.2详细表设计用户表:Emplnfo字段类型长度说明约束EmpId文本50员工编号主键EmpName文本10角色名称权限EmpLogi
5、 nN ame文本50密码EmpSex文本2性别EmpBrithday日期50出生日期EmpDept文本10所属部门EmpPost文本10职务EmpPh one文本20联系电话EmpPho neM文本20传真EmpAddress文本20地址EmpRemark文本50备注货物表:KcGoodq字段类型长度说明约束GoodsID文本50货物编号主键KcGoodsName文本50货物名称KcNum文本50货物数量KcDeptName文本50存放仓库KcUn it文本50存放单位KcTime文本50存放时间KcRemark文本50备注销售商表:Company字段类型长度说明约束Compa ny Nam
6、e:文本50公司名称主键Compa nyDirect文本10公司负责人Compa nyPho ne:文本10公司电话Compa ny Fax文本10公司传真Compa ny Address:文本50公司地址Remark文本50备注入库信息表:JhGoodsInfo 字段类型长度说明约束GoodsID文本50入库编号主键EmpID文本50进货员工编号GoodsNum文本50入库数量GoodsJhPrice文本50入库单价DoodsNeedPrice文本50入库总值DoodTime日期50入库时间DepotName文本50存入的仓库Remark文本50备注出库信息表:SellGoods 字段类型长
7、度说明约束GoodsID文本50出库编号主键EmpID文本50货员工编号SellGoodsNum文本50出库数量Sellprice文本50出库单价SellNeedPrice文本50出库总值SellGoodsTime日期50出库时间SellRemark文本50备注四、程序代码实现1.系统全部类汇总类名说明frm.cs程序主模块frmCompanylnfo.cs查询修改添加删除销售商信息frmDataBack.cs数据备份frmDataReole.cs数据还原frmEmpInfo.cs查询修改添加删除员工信息frmFindGood.cs查询货物信息frmGonYingShang.cs选择供应商信息
8、frmGoodID.cs选择商品名称frmJhGoodslnfo.cs进货信息frmKcGoodFind.cs选择查询条件frmKcGoods.cs查询库存信息及设置警报数量frmLogin.cs用户登录frmMain.cs程序主界面frmSellGoodInfo.cs商品销售信息frmSellGoods.cs修改添加删除商品销售信息frmThGoodsInfo.cs查询修改添加删除商品销售信息Program.cs应用程序的主入口点2.相关类详细设计2.1添加入库信息的实现添加入库信息设计:进入主界面后,点击【进货管理】-【商品进货信息】即可打开添加入库 界面。下面给出完成添加功能的关键代码:
9、public partial class frmJhGoodslnfo : Formpublic frmJhGoods lnfo()In itializeComp onen t();public frmJhGoods In fo(i nt in tCdo)In itializeComp onen t();tb_JhGoodsl nfo jhGood=new tb_JhGoodsl nfo();tb_JhGoodsl nfoMe nthod jhMe nthod=new tb_JhGoodsI nfoMe nthod(); public static int in tFalg = 0;priva
10、te void Con trolStatus()this.toolSave.E nabled = !this.toolSave.E nabled;this.toolAdd.E nabled = !this.toolAdd.E nabled;this.toolCa ncel.E nabled = !this.toolCa ncel.E nabled;this.toolAme nd.E nabled = !this.toolAme nd.E nabled;this.tollDelete.E nabled = !this.tollDelete.E nabled;2.2库存查询类的实现库存查询界面:进
11、入主界面后,选择【库存管理】-【库存查询】即可进入入库信息的查询 界面。本系统共提供两种查询方式,分别是商品编号查询、商品名称查询查询,选 择任意一种查询方式并输入要查询的值,点击【查询】按钮,系统会根据输入的 查询值以及选取的查询方式在数据库中进行检索,并将查询结果显示在界面下方 的空白区域。完成库存查询功能的核心代码:n amespace CHEXCpublic partial class frmKcGoodFi nd : Formpublic frmKcGoodFi nd()In itializeComp onen t();tb_KcGoodsMenthod tb_GoodMenthd
12、= new tb_KcGoodsMenthod(); tb_KcGoods kcgood = new tb_KcGoods();private void button1_Click(object sender, EventArgs e)if (comboBox1.Text = "")MessageBox.Show(" 请选择查询条件! "); return;if (txtkey.Text = "")MessageBox.Show(" 请输入查询信息 "); return;switch (comboBox1.Text
13、)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;private void frmKcGoodFind_Load
14、(object sender, EventArgs e) 五、系统用户界面设计1.界面总体设计主界面:菜单栏、工作区、状态栏等。功能界面:全部为主界面的子界面,并完成相互独立的功能2.系统界面及功能概述2.1登陆界面:功能简介:系统的登陆界面,输入正确的用户名和密码,单击【确定】 ,程 序会根据输入的用户所属的角色, 分配给其合适的权限,并进入相应的程序主界 面;如果账号或密码错误则会弹出错误提示,要求用户重新输入。2.2用户主界面:2.4商品退货界面:2.5商品销售信息界面:2.6商品库存界面:六、总结计算机技术的快速发展大大的推进了现代人工作生活的变化,越来越多的行 业开始应用计算机来增强
15、管理,提高效益。计算机软件作为计算机系统的两大组成部分之一,看起来更接近普通用户;在设计一个软件系统的时候需要考虑到的因素非常多,但是最重要的莫过于功能和界面,功能直接关系着软件系统是否能完成用户的需求,而界面则直接面对用户,人们总是更倾向于使用一个操作方便的软件系统。在设计仓库管理系统的时候,便是从以上两个方面入手,首要实现功能性需 求,再设计一个相对方便操作的用户界面。在这两个方面集成开发环境(IDE)的作用显得十分突出,Microsoft Visual Studio 2005是一套非常强大的开发套件, 利用它可以快速的开发出界面友好,功能强大的软件系统。此次完成的仓库管理系统可以完全适应
16、中小型的仓库管理需求,它具有用户 管理、物资管理、出入库管理、库存管理等功能, 可以方便快捷进行添加、 删除、 查询等操作,且系统运行比较稳定。在完成毕业设计的过程中也遇到了许多问题, 主要是因为自己对高级语言编程以及数据 库方面的知识理解不够深刻, 平时动手做的软件不多; 但是在指导老师的悉心指导下, 通过 查阅资料基本上都能比较好的解决遇到的问题, 最终比较顺利的完成了此次毕业设计。 在这 个过程中我也学到了很多东西,对C# ,数据库都有了更深入的理解,可以较熟练地使用VS2005 开发软件,也增强了分析问题、解决问题的能力,总的来说这次毕业设计使我受益 颇多。谢辞在论文完成之际,向我的老
17、师王强老师表示深深的敬意! 本设计是在王强老师的悉心指导、 谆谆教诲下完成的, 在此感谢王老师在设 计期间对我的指导,以及在我学习过程中, 遇到困难时对我的帮助, 使我学到了 好多知识,学会了能够透彻的分析问题解决问题的能力。同时,感谢在我大学期间给与我帮助的所有老师,培养了我热爱学习、勤学 好问、创新探索的能力,让我学到了不少的知识,使我受益非浅,还培养了我解 决问题和处理问题的能力,为我在今后的工作和生活中打下了基础。附录附录一:商品进货信息代码using System;using System.Collections.Generic;using System.ComponentModel
18、;using System.Data;using System.Drawing;using System.Text;using System.Windows.Forms;using CHEXC.ClassInfo;using CHEXC.GoodMenhod;using System.Data.SqlClient; namespace CHEXCpublic partial class frmJhGoodsInfo : Formpublic frmJhGoodsInfo()InitializeComponent();public frmJhGoodsInfo(int intCdo)Initia
19、lizeComponent();tb_JhGoodsInfo jhGood=new tb_JhGoodsInfo(); tb_JhGoodsInfoMenthod jhMenthod=new tb_JhGoodsInfoMenthod(); public static int intFalg = 0;private void ControlStatus()this.toolSave.Enabled = !this.toolSave.Enabled; this.toolAdd.Enabled = !this.toolAdd.Enabled; this.toolCancel.Enabled = !
20、this.toolCancel.Enabled; this.toolAmend.Enabled = !this.toolAmend.Enabled; this.tollDelete.Enabled = !this.tollDelete.Enabled;public void ClearContorl()txtGoodsNum.Text = ""txtGoodsRemark.Text = ""txtGoodsSellPrice.Text = ""txtJhCompName.Text = "" txtGoodsNoPr
21、ice.Text = "" txtGoodsNeedPrice.Text = "" txtGoodsName.Text = "" txtGoodsJhPrice.Text = "" txtGoodsID.Text = "" txtEmpId.Text = ""cmbDepotName.Text = "" public int getIntCount()int intReslut = 0;if (intFalg = 1)if (txtGoodsID.Text
22、 = "")MessageBox.Show('商品编号不能为空!"); return intReslut;if (txtGoodsName.Text = "")MessageBox.Show("商品名称不能为空!"); return intReslut;if (txtJhCompName.Text = "")MessageBox.Show("供应商名称不能为空!");return intReslut;if (txtEmpId.Text = "")Messag
23、eBox.Show(进货人姓名不能为空! return intReslut;if (txtGoodsNum.Text = "")MessageBox.Show("数量不能为空! ”); return intReslut;if (txtGoodsName.Text = "")MessageBox.Show("进货单价不能为空!return intReslut;if (intFalg = 2)if (txtGoodsID.Text = "")MessageBox.Show("商品编号不能为空!提示"
24、);return intReslut;if (intFalg = 3)if (txtGoodsID.Text = "")););,选择要修改记录MessageBox.Show('商品编号不能为空!,选择要删除记录", "提示");return intReslut;jhGood.strGoodsID = txtGoodsID.Text; jhGood.strEmpId = txtEmpId.Text; jhGood.strJhCompName = txtGoodsName.Text; jhGood.strDepotName = cmbDe
25、potName.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.
26、deGoodsSellPrice = txtGoodsSellPrice.Text; jhGood.strGoodsRemark = txtGoodsRemark.Text; jhGood.DaGoodTime = dateTimePicker1.Value;if (intFalg != 3)jhGood.Falg = 0;elsejhGood.Falg = 1;intReslut = 1;return intReslut;private void frmJhGoodsInfo_Load(object sender, EventArgs e)jhMenthod.tb_JhGoodsInfoFi
27、nd("", 5, dataGridView1);private void FillControls()trySqlDataReader sqldrjhMenthod.tb_JhGoodsInfoFind(this.dataGridView10,this.dataGridView1.CurrentCell.RowIndex.Value.ToString(),1);sqldr.Read();if (sqldr.HasRows)txtEmpId.Text=sqldr1.ToString();txtGoodsName.Text=sqldr4.ToString();cmbDepot
28、Name.Text = sqldr3.ToString();txtGoodsNum.Text=sqldr5.ToString(); cmbGoodsUnit.Text=sqldr6.ToString(); txtGoodsJhPrice.Text=sqldr7.ToString(); txtGoodsNeedPrice.Text=sqldr9.ToString(); txtGoodsNoPrice.Text=sqldr10.ToString(); txtGoodsSellPrice.Text=sqldr8.ToString(); txtGoodsRemark.Text=sqldr11.ToSt
29、ring(); txtJhCompName.Text = sqldr2.ToString();txtGoodsID.Text = sqldr0.ToString(); txtGoodsID.Enabled = false;catch (Exception ee)MessageBox.Show(ee.ToString();private void comboBox1_SelectedIndexChanged(objectsender, EventArgs e)private void toolAdd_Click(object sender, EventArgs e) ControlStatus(
30、);ClearContorl(); intFalg = 1;/ 添加标记 txtGoodsID.Text = jhMenthod.JhGoodsID();txtGoodsID.Enabled = false; private void toolAmend_Click(object sender, EventArgs e) ControlStatus();ClearContorl();intFalg = 2;/ 添加标记private void toolrefulsh_Click(object sender, EventArgs e) ControlStatus();ClearContorl()
31、;private void toolExit_Click(object sender, EventArgs e) this.Close();private void toolCancel_Click(object sender, EventArgs e) ControlStatus();ClearContorl();private void toolSave_Click(object sender, EventArgs e) if (getIntCount() = 1)if (intFalg = 1) if (jhMenthod.tb_JhGoodsInfoMenthodAdd(jhGood)
32、=2)MessageBox.Show(添加成功","提示”); intFalg = 0;jhMenthod.tb_JhGoodsInfoFind("",5,dataGridView1);ControlStatus();ClearContorl();elseMessageBox.Show("添加失败","提示");intFalg = 0;jhMenthod.tb_JhGoodsInfoFind("", 5, dataGridView1);ControlStatus();ClearContorl()
33、;if (intFalg = 2)if (jhMenthod.tb_JhGoodsInfoMenthodUpdate(jhGood)=1)MessageBox.Show("修改成功",”提示");intFalg = 0;jhMenthod.tb_JhGoodsInfoFind("", 5, dataGridView1);ControlStatus();ClearContorl();else23MessageBox.Show(修改失败","提示”); intFalg = 0;jhMenthod.tb_JhGoodsInfoFi
34、nd("", 5, dataGridView1);ControlStatus();ClearContorl();if (intFalg = 3)if (jhMenthod.tb_JhGoodsInfoMenthodDelete(jhGood)=1) MessageBox.Show("删除成功",”提示");intFalg = 0;jhMenthod.tb_JhGoodsInfoFind("", 5, dataGridView1);ControlStatus();ClearContorl();elseMessageBox.Sh
35、ow("删除失败","提示"); intFalg = 0;jhMenthod.tb_JhGoodsInfoFind("", 5, dataGridView1);ControlStatus();ClearContorl();private void dataGridView1_CellClick(object sender, DataGridViewCellEventArgs e)if (intFalg = 2 | intFalg = 3) FillControls();private void txtGoodsJhPrice_Text
36、Changed(object sender, EventArgs e) if (txtGoodsNum.Text != "")txtGoodsNeedPrice.TextConvert.ToString(Convert.ToInt32(txtGoodsJhPrice.Text)*Convert.ToInt32(txtGoodsNum.Text);privatevoidtxtGoodsSellPrice_KeyPress(objectsender,25KeyPressEventArgs e)if (e.KeyChar != 8 && !char.IsDigit
37、(e.KeyChar)&&e.KeyChar!='.') MessageBox.Show(请输入数字”); e.Handled = true;private void txtGoodsNum_KeyPress(object sender, KeyPressEventArgs e) if (e.KeyChar != 8 && !char.IsDigit(e.KeyChar)MessageBox.Show("请输入数字"); e.Handled = true;private void txtGoodsJhPrice_KeyPres
38、s(objectsender, KeyPressEventArgs e)if (e.KeyChar != 8 && !char.IsDigit(e.KeyChar) && e.KeyChar != '.') MessageBox.Show("请输入数字"); e.Handled = true;private void txtGoodsNoPrice_KeyPress(object sender, KeyPressEventArgse)if (e.KeyChar != 8 && !char.IsDigit(e.KeyChar) && e.KeyChar
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年微计小程序县级代理经营合同3篇
- 2023年山东省济南市公开招聘警务辅助人员(辅警)笔试摸底备战测试(3)卷含答案
- 2024年吊车使用与保养合同3篇
- 2024年广东省中山市公开招聘警务辅助人员(辅警)笔试专项训练题试卷(1)含答案
- 2024年工程协议执行与风险防控手册一
- 2024年鄂州道路旅客运输从业资格证模拟试题
- 2024年湖南省岳阳市公开招聘警务辅助人员(辅警)笔试自考练习卷二含答案
- 2024年园林景观工程承包合同3篇
- 2022年黑龙江省牡丹江市公开招聘警务辅助人员(辅警)笔试自考练习卷一含答案
- 2024年借款权益转让简单协议书3篇
- 申请人大代表简历模板
- 人美2011版二年级美术上册《小花猫在睡觉》评课稿
- Python机器学习基础PPT完整全套教学课件
- 高中三年化学全部知识点江总
- 信息可视化设计
- 国家开放大学2023年建设监理形考作业1-4答案
- 四川农村饮水安全工程施工组织设计
- 大学生刑事犯罪与预防演示文稿
- 2023年浙江杭州地铁招聘笔试参考题库附带答案详解
- 小兔子学花钱家长助教教案PPT
- 号线项目tcms便携式测试单元ptu软件使用说明
评论
0/150
提交评论