还剩22页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
成绩11信计2013-2014
(一)《数据库原理及应用》课程设计设计题目 仓储物资管理系统设计时间 学生姓名 张政伟学生学号 20110402124所在班级 11精算指导教师 董晓玮徐州工程学院数学与物理科学学院目录TOC\o1-3\h\u1可行性研究32需求分析
32.1任务概述3目标3运行环境
32.2数据需求
32.
2.1数据流条目
32.
2.2数据库描述
42.3功能需求
42.
3.1功能划分
42.
3.2功能描述43概要设计44逻辑设计55界面设计和代码
75.1登陆界面设计
75.2注册界面与代码
95.3修改__
105.4系统主界面设计和代码
115.5查询信息管理界面设计
135.6添加信息查询界面设计
145.7出入库信息表设计
185.8删改信息设计246总结25____251可行性研究仓库管理系统是为了实现企业产品管理的系统化、规范化和自动化,从而提高企业管理效率而设计的它完全取代了原来一直用人工管理的工作方式,避免了由于管理人员的工作疏忽以及管理质量问题所造成的各种错误,为及时、准确、高效的完成仓库管理提供了强有力的工具和管理手段仓库管理系统是一个中小型数据库管理系统,它界面美观、操作简单、安全性高,基本满足了仓库管理的要求本系统的__语言采用的是C#,__环境采用的是Visualstudio2008,数据库采用SQLServer2005,具有一般系统的数据功能,如数据查询,修改和删除等仓库管理系统在运行阶段,效果好,数据准确性高,提高了工作效率,同时也实现了仓库管理计算机化2需求分析
2.1任务概述经过调查,对仓库管理的业务流程进行分析库存的变化通常是通过入库、出库操作来进行系统对每个入库操作均要求用户填写入库单,对每个出库操作均要求用户填写出库单在出入库操作同时可以进行增加、删除和修改等操作用户可以随时进行各种查询、统计、报表打印、账目核对等工作另外,也可以用图表形式来反映查询结果目标
(1)界面设计要求尽量友好、美观,应提供登录界面,并考虑用户权限问题;
(2)对各种信息应提供录入、修改、删除和查询功能;
(3)具有对商品的基本信息和流动信息进行统计的功能;
(4)具有数据备份与恢复、帮助等功能;
(5)能够新增、修改和删除用户信息;运行环境Windows98/2000/XP/2003操作系统下,__并配置软件MicrosoftSQLServer2000数据库管理系统
2.2数据需求
2.
2.1数据流条目根据我们的进行的调查和分析系统中各种功能所需的数据项和数据结构如下
①商品信息商品编号,商品名,商品单价;
②职工信息职工号,职工姓名,性别,__,住址;
③供货商信息供应商姓名,地址,__,单位等;
④入库信息入库编号,商品编号,商品名称,单价,数量,总价,供应商;
⑧出库信息出库编号,商品编号,商品名称,单价,数量,总价,经手人;
2.
2.2数据库描述使用SQLSERVER2000作为后台数据库,就可以行使基于网络连接的用户认证从而给不同的子系统分配不同的数据库使用角色,让他们彼此之间使用的数据库隔离开来,以达到较高的安全性
2.3功能需求根据对各大__进行的调查和分析仓库管理系统应该具有以下功能
①仓库中的货物信息的录入、修改、删除和查询
②仓库的信息的的录入、修改、删除、查询和统计
③管理者的信息的录入、修改、删除和查询
④供货商的信息的录入、修改、删除、查询和统计
⑤货物流动信息的录入、修改、删除和查询
2.
3.1功能划分仓库管理系统主要实现以下四方面的功能A.登陆b.注册c.查询d.修改
2.
3.2功能描述仓库管理包括登陆、注册、查询、修改四方面功能登陆,分为普通___登陆和超级___登陆查询,分为员工查询,仓库查询和物品查询修改,主要实现添加,修改和删除3概要设计对系统功能分析中的各项功能进行集中、分块,按照结构化程序设计的要求,得到如下图所示的系统功能模块图4逻辑设计根据数据库需求分析,本系统的数据库逻辑结构设计如下
①商品信息设计
②入库单信息设计3 出库单信息设计
④职工信息设计
⑤仓库信息设计
⑥供货商信息表5界面设计和代码
5.1登陆界面设计publicpartialclassFmlogin:Form{publicFmlogin{InitializeComponent;}privatevoidBUT_Y_Clicko__ectsenderEventArgse{stringusername=tbuser.Text;stringpassword=tbpw.Text;stringconnstring=@DataSour__=.zhaojuan-PC\SQLEXPRESS;AttachDbFilename=F:\仓库管理系统\仓库管理系统\WMS_DB.mdf;IntegratedSecurity=True;ConnectTimeout=30;UserInstan__=True;SqlConnectionconn=newSqlConnectionconnstring;//获取用户名和__匹配的行的数量的sql语句stringsql=string.For__tselectcount*from[usertable]whereusername={0}andpassword={1}usernamepassword;try{ifcomboBox
1.Text==超级___tbuser.Text==admin{conn.Open;SqlCom__ndcomm=newSqlCom__ndsqlconn;intnum=intcomm.ExecuteScalar;ifnum0{this.Hide;Fmmenuf1=newFmmenu;f
1.ShowDialog;}else{MessageBox.Show用户名或__或身份错误,请重新输入!登录失败MessageBoxButtons.OKMessageBoxIcon.Excla__tion;}}elseifcomboBox
1.Text==普通___{conn.Open;SqlCom__ndcomm=newSqlCom__ndsqlconn;intnum=intcomm.ExecuteScalar;ifnum0{this.Hide;Fmmenuf1=newFmmenu;false;f
1.ShowDialog;}else{MessageBox.Show用户名或__或身份错误,请重新输入!登录失败MessageBoxButtons.OKMessageBoxIcon.Excla__tion;}}else{MessageBox.Show用户名或__或身份错误,请重新输入!登录失败MessageBoxButtons.OKMessageBoxIcon.Excla__tion;}}catchEx__ptioneee{MessageBox.Showeee.Message数据库操作错误!MessageBoxButtons.OKMessageBoxIcon.Excla__tion;}finally{conn.Close;}}privatevoidBUT_z_Clicko__ectsenderEventArgse{Fmregisterf2=newFmregister;f
2.ShowDialog;}}
5.2注册界面与代码privatevoidbutton1_Clicko__ectsenderEventArgse{iftbpw.Text==tB2_repw.Text{stringconnstring=@DataSour__=.zhaojuan-PC\SQLEXPRESS;AttachDbFilename=F:\仓库管理系统\仓库管理系统\WMS_DB.mdf;IntegratedSecurity=True;ConnectTimeout=30;UserInstan__=True;SqlConnectionconn=newSqlConnectionconnstring;;try{conn.Open;SqlCom__ndcomm=newSqlCom__ndregisterconn;comm.Com__ndType=Com__ndType.StoredPro__dure;@username@password@workerIDintcount=comm.ExecuteNonQuery;//执行命令,返回的行数ifcount0{MessageBox.Show注册成功!可以登录!成功MessageBoxButtons.OKMessageBoxIcon.Infor__tion;}else{MessageBox.Show注册失败!错误!MessageBoxButtons.OKMessageBoxIcon.Infor__tion;}}catchEx__ption{MessageBox.Show操作数据失败!可能用户名重复或您不是本公司职员!错误!MessageBoxButtons.OKMessageBoxIcon.Infor__tion;}finally{conn.Close;}}elseMessageBox.Show注册失败!重复__错误!错误!MessageBoxButtons.OKMessageBoxIcon.Infor__tion;}privatevoidbut_return_Clicko__ectsenderEventArgse{this.Close;}
5.3修改__privatevoidbut_Y_Clicko__ectsenderEventArgse{iftBsure.Text==tBNpass.Text{stringconnstring=@DataSour__=zhaojuan-PC\SQLEXPRESS;AttachDbFilename=D:\仓库管理系统\仓库管理系统\WMS_DB.mdf;IntegratedSecurity=True;SqlConnectionconn=newSqlConnectionconnstring;try{conn.Open;SqlCom__ndcomm=newSqlCom__ndupdatepassconn;comm.Com__ndType=Com__ndType.StoredPro__dure;@usernametBuser.Text;@passwordtBpass.Text;@newpasstBNpass.Text;intcount=comm.ExecuteNonQuery;ifcount0{MessageBox.Show修改__成功;tBuser.Text=;tBpass.Text=;tBNpass.Text=;tBsure.Text=;tBuser.Focus;}else{MessageBox.Show数据库操作失败修改__失败MessageBoxButtons.OKMessageBoxIcon.Excla__tion;}}catch{MessageBox.Show操作数据失败!错误!MessageBoxButtons.OKMessageBoxIcon.Infor__tion;}finally{conn.Close;}}else{MessageBox.Show确认__与新__不符修改__失败MessageBoxButtons.OKMessageBoxIcon.Excla__tion;tBuser.Text=;tBpass.Text=;tBNpass.Text=;tBsure.Text=;tBuser.Focus;}}privatevoidbutton1_Clicko__ectsenderEventArgse{this.Close;}
5.4系统主界面设计和代码publicpartialclassFmmenu:Form{publicFmmenu{InitializeComponent;}privatevoid职员ToolStripMenuItem_Clicko__ectsenderEventArgse{putinto_ww=newputinto_w;w.ShowDialog;}privatevoid查询所有ToolStripMenuItem_Clicko__ectsenderEventArgse{allinfor__tions=newallinfor__tion;s.ShowDialog;}privatevoid按仓库ToolStripMenuItem_Clicko__ectsenderEventArgse{BY_WHIDbw=newBY_WHID;bw.ShowDialog;}privatevoid供货商ToolStripMenuItem_Clicko__ectsenderEventArgse{putinto_supsu=newputinto_sup;su.ShowDialog;}privatevoid仓库信息ToolStripMenuItem_Clicko__ectsenderEventArgse{putinto_WHwh=newputinto_WH;wh.ShowDialog;}privatevoid商品信息ToolStripMenuItem_Clicko__ectsenderEventArgse{putin_Gg=newputin_G;g.ShowDialog;}privatevoid入库ToolStripMenuItem_Clicko__ectsenderEventArgse{putinpi=newputin;pi.ShowDialog;}privatevoid出库ToolStripMenuItem_Clicko__ectsenderEventArgse{putoutpo=newputout;po.ShowDialog;}privatevoid删改信息ToolStripMenuItem_Clicko__ectsenderEventArgse{updataANDdeleteud=newupdataANDdelete;ud.ShowDialog;}privatevoid提醒ToolStripMenuItem_Clicko__ectsenderEventArgse{remindre=newremind;re.ShowDialog;}privatevoid修改__ToolStripMenuItem_Clicko__ectsenderEventArgse{updatapassup=newupdatapass;up.ShowDialog;}privatevoid关于ToolStripMenuItem_Clicko__ectsenderEventArgse{Aboutab=newAbout;ab.ShowDialog;}privatevoid按供货商ToolStripMenuItem_Clicko__ectsenderEventArgse{BY_SUPbs=newBY_SUP;bs.ShowDialog;}}
5.5查询信息管理界面设计publicpartialclassallinfor__tion:Form{publicallinfor__tion{InitializeComponent;}privatevoidallinfor__tion_Loado__ectsenderEventArgse{this.view_putoutTableAdapter.Fillthis.wMS_DBDataSet
4.View_putout;this.view_putinTableAdapter.Fillthis.wMS_DBDataSet
3.view_putin;this.supplierTableAdapter.Fillthis.wMS_DBDataSet
2.Supplier;this.workerTableAdapter.Fillthis.wMS_DBDataSet
1.Worker;this.gOODSTableAdapter.Fillthis.wMS_DBDataSet.GOODS;}privatevoidfillByToolStripButton_Clicko__ectsenderEventArgse{try{this.gOODSTableAdapter.FillBythis.wMS_DBDataSet.GOODS;}catchSystem.Ex__ptionexMessageBox.Showex.Message;}try{this.workerTableAdapter.FillBy1this.wMS_DBDataSet
1.Worker;}catchSystem.Ex__ptionexMessageBox.Showex.Message;}try{this.view_putoutTableAdapter.FillBythis.wMS_DBDataSet
4.View_putout;}catchSystem.Ex__ptionexMessageBox.Showex.Message;}try{this.supplierTableAdapter.FillBythis.wMS_DBDataSet
2.Supplier;}catchSystem.Ex__ptionexMessageBox.Showex.Message;}try{this.view_putinTableAdapter.FillBythis.wMS_DBDataSet
3.view_putin;}catchSystem.Ex__ptionexMessageBox.Showex.Message;}}}
5.6添加信息查询界面设计根据上图可知添加信息分为三类,人员信心,仓库信息,和商品信息,此外,人员信息分为职工类和供货商类,因添加界面和代码,格式大抵相同,所以只展示部分界面,进入添加设计如下
1.添加商品信息publicpartialclassputin_G:Form{publicputin_G{InitializeComponent;}privatevoidbut_Y_Clicko__ectsenderEventArgse{stringconnstring=@DataSour__=.zhaojuan-PC\SQLEXPRESS;AttachDbFilename=F:\仓库管理系统\仓库管理系统\WMS_DB.mdf;IntegratedSecurity=True;ConnectTimeout=30;UserInstan__=True;SqlConnectionconn=newSqlConnectionconnstring;try{conn.Open;SqlCom__ndcomm=newSqlCom__ndinsertgoodsconn;comm.Com__ndType=Com__ndType.StoredPro__dure;@goods_ID@goods_name@goods_pri__@minnumintcount=comm.ExecuteNonQuery;//执行命令,返回的行数ifcount0{MessageBox.Show添加成功!成功MessageBoxButtons.OKMessageBoxIcon.Infor__tion;}else{MessageBox.Show添加失败!错误!MessageBoxButtons.OKMessageBoxIcon.Infor__tion;}}catchEx__ption{MessageBox.Show操作数据失败!可能商品已存在!错误!MessageBoxButtons.OKMessageBoxIcon.Infor__tion;}finally{conn.Close;}}privatevoidbutton1_Clicko__ectsenderEventArgse{this.Close;}}2录入仓库信息publicpartialclassputinto_WH:Form{publicputinto_WH{InitializeComponent;}privatevoidbut_Y_Clicko__ectsenderEventArgse{stringconnstring=@DataSour__=.zhaojuan-PC\SQLEXPRESS;AttachDbFilename=F:\仓库管理系统\仓库管理系统\WMS_DB.mdf;IntegratedSecurity=True;ConnectTimeout=30;UserInstan__=True;SqlConnectionconn=newSqlConnectionconnstring;try{conn.Open;SqlCom__ndcomm=newSqlCom__ndinsertWHconn;comm.Com__ndType=Com__ndType.StoredPro__dure;@WH_ID@WHname@workerID@WHphone@addressintcount=comm.ExecuteNonQuery;//执行命令,返回的行数ifcount0{MessageBox.Show添加成功!成功MessageBoxButtons.OKMessageBoxIcon.Infor__tion;}else{MessageBox.Show添加失败!错误!MessageBoxButtons.OKMessageBoxIcon.Infor__tion;}}catchEx__ption{MessageBox.Show操作数据失败!可能仓库已存在!错误!MessageBoxButtons.OKMessageBoxIcon.Infor__tion;}finally{conn.Close;}}privatevoidbutton1_Clicko__ectsenderEventArgse{this.Close;}}3录入职员信息(代码只展示不同部分Try{conn.Open;SqlCom__ndcomm=newSqlCom__ndinsertworkerconn;comm.Com__ndType=Com__ndType@workerID@workerName@___@phone@workerPostintcount=comm.ExecuteNonQuery;//执行命令,返回的行数
5.7出入库信息表设计1出库表界面设计publicpartialclassputout:Form{publicputout{InitializeComponent;}privatevoidbutton1_Clicko__ectsenderEventArgse{this.Close;}privatevoidbut_Y_Clicko__ectsenderEventArgse{stringshow_str1=string.Empty;stringshow_str2=string.Empty;stringstringstringconnstring=@DataSour__=.zhaojuan-PC\SQLEXPRESS;AttachDbFilename=F:\仓库管理系统\仓库管理系统\WMS_DB.mdf;IntegratedSecurity=True;ConnectTimeout=30;UserInstan__=True;SqlConnectionconn=newSqlConnectionconnstring;try{conn.Open;SqlCom__ndcomm=newSqlCom__ndSPputoutconn;comm.Com__ndType=Com__ndType.StoredPro__dure;//声明,引号中的内容是存储过程名@putoutID@goodsIDstringsql=string.For__tselectGoods_nameGoods_pri__from[GOODS]whereGoods_ID={0}SqlCom__ndcomm1=newSqlCom__ndsqlconn;SqlDataReadersdr=comm
1.ExecuteReader;whilesdr.Read{show_str1=string.For__t{0}sdr
[0].ToString;show_str2=string.For__t{0}sdr
[1].ToString;}sdr.Close;//关闭SQLdatareadersdr.Dispose;this.tB_Gname.Text=show_str1;this.tB_Gpri__.Text=show_str2;//将查询结果显示在文本框@numfloat@JSR@checker@timedt1;tB_value.Text=float.ParsetB_Gnum.Text*float.ParsetB_Gpri__.Text.ToString;@totalvaluetB_value.Text;@WH_ID@produ__timedt2;intcount=comm.ExecuteNonQuery;//执行命令,返回的行数ifcount0{MessageBox.Show出库成功!成功MessageBoxButtons.OKMessageBoxIcon.Infor__tion;}else{MessageBox.Show出库失败!错误!MessageBoxButtons.OKMessageBoxIcon.Infor__tion;}}catch{MessageBox.Show操作数据失败!可能填写错误!错误!MessageBoxButtons.OKMessageBoxIcon.Infor__tion;}finally{conn.Close;}}2入库表界面设计(代码展示不同部分)privatevoidbut_Y_Clicko__ectsenderEventArgse{stringshow_str1=string.Empty;stringshow_str2=string.Empty;stringDateTimeDateTimeTimeSpandt4=dt3-dt2;stringconnstring=@DataSour__=.zhaojuan-PC\SQLEXPRESS;AttachDbFilename=F:\仓库管理系统\仓库管理系统\WMS_DB.mdf;IntegratedSecurity=True;ConnectTimeout=30;UserInstan__=True;SqlConnectionconn=newSqlConnectionconnstring;stringsql1=string.For__tselectcount*fromStoregoodswhereGoods_ID={0}andprodu__time={1}conn.Open;SqlCom__ndcomm2=newSqlCom__ndsql1conn;intnum=intcomm
2.ExecuteScalar;ifnum==0{try{SqlCom__ndcomm=newSqlCom__ndSPputinconn;comm.Com__ndType=Com__ndType.StoredPro__dure;@putinID@goodsIDstringsql=string.For__tselectGoods_nameGoods_pri__from[GOODS]whereGoods_ID={0}SqlCom__ndcomm1=newSqlCom__ndsqlconn;SqlDataReadersdr=comm
1.ExecuteReader;whilesdr.Read{show_str1=string.For__t{0}sdr
[0].ToString;show_str2=string.For__t{0}sdr
[1].ToString;}sdr.Close;sdr.Dispose;this.tB_Gname.Text=show_str1;this.tB_Gpri__.Text=show_str2;//将查询结果显示在文本框@numfloat@supplier@JSR@checker@timedt1;tB_value.Text=float.ParsetB_num.Text*float.ParsetB_Gpri__.Text.ToString;@totalvaluetB_value.Text;@WH_ID@produ__timedt
2.ToString;@qgpdt
4.Days;intcount=comm.ExecuteNonQuery;//执行命令,返回的行数ifcount0{MessageBox.Show入库成功!成功MessageBoxButtons.OKMessageBoxIcon.Infor__tion;}else{MessageBox.Show入库失败!错误!MessageBoxButtons.OKMessageBoxIcon.Infor__tion;}}catchEx__ption{MessageBox.Show操作数据失败!可能填写错误!错误!MessageBoxButtons.OKMessageBoxIcon.Infor__tion;}finally{conn.Close;}}else{try{SqlCom__ndcomm=newSqlCom__ndSPputin2conn;comm.Com__ndType=Com__ndType.StoredPro__dure;@putinID@goodsIDstringsql=string.For__tselectGoods_nameGoods_pri__from[GOODS]whereGoods_ID={0}SqlCom__ndcomm1=newSqlCom__ndsqlconn;SqlDataReadersdr=comm
1.ExecuteReader;whilesdr.Read{show_str1=string.For__t{0}sdr
[0].ToString;show_str2=string.For__t{0}sdr
[1].ToString;}sdr.Close;sdr.Dispose;this.tB_Gname.Text=show_str1;this.tB_Gpri__.Text=show_str2;//将查询结果显示在文本框@numfloat@supplier@JSR@checker@timedt1;tB_value.Text=float.ParsetB_num.Text*float.ParsetB_Gpri__.Text.ToString;@totalvaluetB_value.Text;@WH_ID@produ__timedt
2.ToString;@qgpdt
4.Days;intcount=comm.ExecuteNonQuery;//执行命令,返回的行数
5.8删改信息设计privatevoidbutton1_Clicko__ectsenderEventArgse{this.gOODSTableAdapter.UpdatewMS_DBDataSet7;}privatevoidupdataANDdelete_Loado__ectsenderEventArgse{this.supplierTableAdapter.Fillthis.wMS_DBDataSet
9.Supplier;this.workerTableAdapter.Fillthis.wMS_DBDataSet
8.Worker;this.gOODSTableAdapter.Fillthis.wMS_DBDataSet
7.GOODS;}privatevoidbutton7_Clicko__ectsenderEventArgse{foreachDataGridViewRowrindataGridView
1.SelectedRowsprivatevoidbutton3_Clicko__ectsenderEventArgse{workerTableAdapter.UpdatewMS_DBDataSet8;}privatevoidbutton4_Clicko__ectsenderEventArgse{foreachDataGridViewRowrindataGridView
2.SelectedRowsprivatevoidbutton5_Clicko__ectsenderEventArgse{supplierTableAdapter.UpdatewMS_DBDataSet9;}privatevoidbutton6_Clicko__ectsenderEventArgse{foreachDataGridViewRowrindataGridView
3.SelectedRows6总结经过两周的课程设计,我们组设计的作品仓库管理系统终于完成,在一次次的调试后,程序比较完善,并且利用数据库的相关知识,存储信息我们做的仓库管理系统可以完成完成以下功能1___的登录2用户的登陆与用户信息管理3商品、仓库、职工信息信息的增加、删除,修改4用户对本人信息进行修改5用户查询个人信息在此次课程设计中,有时一个简单的错误,就要花很长时间去找程序写法上有很多不同,有时候找到了错误,但却不知道如何去处理,因此在这个过程中,我们全体组员共同查了很多资料,到图书馆借阅了相关资料,并充分利用了网络上的资源,最终这些问题都被一一解决了C#语言、数据库有了更深一步的了解,而且还深深地让我体会到了团体精神的可贵本程序的最大优点是一个界面可以完成所有的信息操作,有完整的操作信息,操作简便,数据完整总体来说,我们的作品不够__,例如无法将数据在退出程序后仍然储存在数据库中,而且对数据的操作过于简单,仅仅局限于添加,删除,以及简单修改最重要的是对数据的操作存在安全隐患,程序的漏洞是操__可以修改任何人的信息所以作品完成至今,我们心中仍然有更多的想法去实现,我们将利用更多的时间与精力去不断完善此程序____【1】唐红亮.SQLServer数据库设计与系统__教程[M].北京:清华大学出版社
2007.
10.【2】PowerBuilder课程设计案例精编卫海中国水利水电出版社
2002.8【3】PowerBuilder__应用实例李政中国水利水电出版社
2002.5【4】viaualC#高级编程范例谭桂华等清华大学出版社
2004.5【5】《数据库系统原理与设计》陈雁主编中国电力出版社【6】《课程设计案例精编》杨昭编著中国水利水电出版社【7】《SQL2000中小型企业实务应用》林福泉编著中国铁道出版社员工查询仓库查询商品查询注册仓库管理系统登录普通___超级___查询修改添加修改删除。