数据库课程设计:仓库管理系统[32页]_第1页
数据库课程设计:仓库管理系统[32页]_第2页
数据库课程设计:仓库管理系统[32页]_第3页
数据库课程设计:仓库管理系统[32页]_第4页
数据库课程设计:仓库管理系统[32页]_第5页
已阅读5页,还剩28页未读 继续免费阅读

下载本文档

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

文档简介

1、计算机与信魚学院数据库原理谍程谏计设计题目仓库管理系统专业班级物联网工程10-1班学号,及姓名TT201027*教学班号0001指导老师沈明玉实验地点逸夫楼507PS:合肥工业大学数据库课程设计,想要工程文件的可联系我邮箱:d_beimaiL 或4626186832012-2013年度第二学期仓库管理系统1设计要求:(1) 信息要求一般生产制造型或商品流通型企业盅要使用仓库來存储大虽的原材料和成品货物,并 且货物种类繁参。在仓库管理中,商品入库、商品出库、库存査询是最常见的工作。由于 这些业务的繁杂性,传统的手工记录在应对这些业务时,常常显得十分笨拙,而且经常

2、容 易岀错,效率也十分低。因此企业盅要通过先进的信息技术來解决这一问题,为此数据库 管理系统就成了许多企业势在必行的研发课题。(2) 需求分析通过对企业仓库的了解.一般系统的具备以下功能:/由于操作人员的计算机知识普遍偏低,因此要求系统具有良好的人机界面:/方便的货物入库和出库管理:/能够对联系单位,仓库和货物的资料进行修改:/ 在入库操作时,选择相应的货物、单位和仓库进行入库操作:/能够区分同种货物在不同仓库的存储情况,以免出库时出现错误:/根据用户选择的査询条件.提供入库査询,出库査询和库存査询:/完善的数据备份和还原功能:/ 用户可修改自己的密码:/管理员可修改用户权限.增加新用户:2

3、设计目标:希望通过木数据库达到以下功能:1. 系统采用人机对话方式,界而美观又好,信息査询灵活、方便,数据存储安全可靠。2. 提供多种査询功能,至少包括入库、出库和库存等常用的査询功能。3. 能够建立完善的基础信息档案,至少包括联系单位、货物和仓库的档案。4. 设计使用的货物管理功能,至少包括入库和出库管理。5. 多用户输入的数据,进行严格的数据校验。3开发及运行环境系统开发平台:Microsoft Visual Studio20I0o 系统开发语言:C#. 数据库管理系统软件:SQL Server 2008o 运行平台:Win7o4. 数据库描述采用SQL Scrvcr2008作为前台数据库

4、数据库设计1. 需求分析概要设计针对我们之前的需求分析,我们对其做概要设计/由于操作人员的计算机知识普遍偏低,因此要求系统具有良好的人机界 面;我们使用C#作为我们的应用程序,提供其良好的人际界面/方便的货物入库和出库管理:我们会建立入库表和岀库表并使用应用程序相关功能对其提供支持“能够对联系单位,仓库和货物的资料进行修改:我们会建立联系单位表,库存表和货物信息表对其提供支持“能够区分同种货物在不同仓库的存储情况,以免出库时出现错误: 我们建立存储过程中对其进行判断“根据用户选择的查询条件,提供入库査询,出库査询和库存査询: 用应用程序实现相应功能,并建立视图方便其查询/完善的数据备份和还原功

5、能:调用相应函数对其提供支持/用户可修改自己的密码:在应用程序调用相应数据库语句提供支持/管理员可修改用户权限,增加新用户:在应用程序调用相应数据库语句提供支持2. 仓库定位及系统分析仓库定位,仓库定位于大中型企业的仓库,主要存放家电商品及一些电子商 品仓库数:目前有主仓库和A、B、C、D几个仓库仓库容积:每个仓库大小是50m*10m*5m,容积共2500m2就除去过道和高度 上限的原因可用面积为2000m2系统分析:1、由于是大中型企业,存货量比较多,种类也比较多,所以在数 据库中要提供一定的存储空间提供支持,在建立数据库的时候还需要建立索引,方便其査询2、安全方面由于每天进货出货数量巨大,

6、经手人有一定的责任,因此应以当前时间系统登录的人员自动设为经手人。3、由于要先有订出货单后又进出货物,所以当有相应的货单时,最好能有人性化提示在什么时间哪个仓库应该有入库或者出库4、对于数量太多,今日没有来得及放完的应该有一定的记录,方 便管理3仓库管理系统E-R图名字丿负责人丿(电话备注丿 ;名字丿:权限转化为关系模式,仓库信息:仓库名、负责人、电话、备注:货物信息:货物编号、货物名、规格、计址单位:联系单位:单位名、联系人、电话、传真、备注:库存信息:货物编号、仓库名、库存数址:入库信息:入库编号、货物编号、仓库名、单位名、入库单价、数呈、日期、经手人、备 注;出库信息:出库编号、货物编号

7、、仓库名、单位名、出库单价、数呈、日期、经手人、备 注;用户信息:用户编号、用户名、权限、密码。4.数据表设计:Goods表(货物信息表)字段名称类型允许空值主键说明GoodsIDBigintNOT NULL是编号GoodsnameVarchar(50)名称CoodsSpecVarchar(50)NOT NULL规格GoodsUnitChar 计虽单位Storage表(仓库表)字段名称类型允许空值主键说明StoreNameVarchar(100)NOT NULL是仓库名称StorePeopleVarchar(20)负责人StorePhonevarchar(20)电话StoreRemarkvar

8、char(1000)备注Provide表(联系单位表)字段名称类型允许空值主键说明PrNamevarchar(100)NOT NULL是联系单位PrPeoplevarchar(20)联系人PrPhoneVarchar(20)电话PrFaxVarchar(20)传真PrRemarkVarchar(1000)备注InStore表(入库表)字段名称类型允许空值主键说明ISIDBigintNot null是入库编号GoodsIDBigintNot null货物名字PrNameVarchar(100)Not null供应商StoreNameVarchar(100)Not null仓库GoodsNumIn

9、t数呈GoodsPriceMoney单价ISDateDatetime日期HandlePeopleVarchar (20)经手人ISRemarkVarchar (1000备注OutStore表(出库表))字段名称类型允许空值主键说 明OSIDBigintNot null是出库编号GoodsIDBigintNot null货物IDStoreNameVarchar(lOO)Not null仓库PrNameVarchar(lOO)联系单位GoodsNumInt数虽GoodsPriceMoney价格ISDateDatetime日期HandlePeopleVarchar (20)经手人ISRemarkVa

10、rchar (1000 )备注Storeinfo (库存倍息表)字段名称类型允许空值主键说明GoodsIDStoreNameGoodsNumBigintVarchar(100)BigintNOT NULLNot null是 是货物ID 仓库名称 库存数虽User表(用户表字段名称类型允许空值主键说明UserIDBigintNOT NULL是用户IDUserNameVarchar(20)用户名UserPwdvarchar(20)密码UserRightvarchar(10)权限数据库的完萤性分析实体完整性:在每个表中都建立了主码,并设为非空参照完整性:在入库表和出库表中引用了其他表中的元素引用了供

11、应商名,仓库名 约束完整性:对于电视类数目不能超过】000台,洗衣机不能超过500台,冰箱不超过500台,燃气灶不超过800台,热水器不超过1500台。对于电话号码和传真有固定格式的要求。对于价格和数虽要不小于零。5. 仓库管理系统数据库创建卜面是创建了货物侣息表create tabic tb_Goods!nfb名称Goods!DBigint primary key.Varchar(50),Varchar(50),Char(8),GoodsNamcGoodsSpccGoodsUnit);一数虽规格.一“计虽单位F面是创建了仓库表表create table tb_Storagc(StoreNam

12、cStorePcoplcStorcPhoncVarchar( 100) primary kcy.-Varchar(20),Varchar(20).-Store RemarkVarchar( 1000),i.键负责人电话备注F面是创建了联系单位表create tabic tb_ProviderPrNamcvarcharf 1000)primary key,PrPcoplevarchar(20).PrPhoneVarchar(20),PrFaxVarchar(20),PrRcmarkVarchar( 1000),名称 联系人电话 传真备注);下面是创建了联系入库表create table tb_I

13、nStore(IS1DBigint identity primary key,-一入库编号Goods】DBigint ,-货物编号PrNamcVarcharf 100),供应商StoreNamcVarcharf 100),仓库GoodsNumInt.数虽GoodsPriceMoney.单价IN DateDatetime default(getDate(),日期HandlePeopleVarchar (20),.一经手人ISRcmarkVarchar (1000),备注foreign key (PrNamc)references ib_Providcr( PrName),foreign key

14、(StoreNamc) references tb_Storage(StorcName),foreign key (GoodsID)references tb_Goods(GoodsID),F面是创建了联系出库表create tabic tb_OutStore(OSIDBigint identity primary key出库GoodsIDBigint,-货物编号PrNameVarchar( 100),一“供应商StorcNameVarcharf lOO t,仓库GoodsNumInt.数呈GoodsPriceMoney.单价OSDatcDatetime default(getDate(),日

15、期HandlePeopIeVarchar (20),经手人OSRcmarkVarchar (1000),备注foreign key (PrNamc)references tb_Providcr( PrName),foreign key (StorcName)references tb_Storagc(StoreNamc),foreign key (GoodsID)references tb_Goods(GoodsID),下面是创建了库存依息表create table tb_StorInfo(GoodsIDBigint primary key. 货物】DStoreNamcVarchar( 100

16、).仓库名称GoodsNumBigint库存数虽F面是创建了用户表create table tb_User(UserID Bigint primary key.主键UserNameVarchar(20), 名字UscrPwdVarchar(20), 密码UscrRightchar(10). 权限)6. 数据库存储过程的创建存储过程我们建立七个1、插入物品存储过程这是为了在货物信息表中插入货物时判断其货物是否已插入 create proc c_inscrtGoodsGoodsID bigint,GoodsNamc varchar (50),GoodsSpcc varchar (50

17、),GoodsUnil varchar (8).MaxNum bigint.inNum bigint)asif cxists(select * from tb_GocxisInfb where Goods!D=GoodsID)beginif cxists(sclcct * from tb_GoodsInfo where GoodsSpec=GoodsSpec and GoodsName=GoodsNamc)beginreturn 10endelsebeginreturn 100endendelsebeginif cxists(select * from tb_GoodsInfb where G

18、oodsName=GoodsNamc andGoodsSpec =GoodsSpcc )beginreturn 200endelsebegininsert into tb_GoodsInfb (GoodslD.GoodsNamc GoodsSpec,GoodsUnit,MaxNum,MinNum)values(GoodslDGoodsNamc、GoodsSpcc,GoodsUnit,MaxNum.MinNum)endEnd2入库存储过程这是为了记录入库倍息,并计算库存信息表中的数虽信息create proc dbo. proc_inscrtJ nStorc(GoodsID bigint,Goo

19、dsNamc varchan50),PrNamc varchar (100),SlorcNamc varchar (100),GoodsSpcc varchar(50),GoodsNum bigint.GoodsPricc money.HandlcPcoplc varchar (20).IS Remark varchar (1000)asbegininsertintotb_InStore(GoodsID.PrNamc.StoreNamc.GoodsNum.GoodsPrice,HandlcPcople,ISRemark)values(GoodsID,PrNamc,SlorcNamc,Goods

20、Num:GoodsPricc.HandlcPcoplc,ISRc mark)endif not cxistsf select * from tb_StorcInfo whereGoodsl D=GoodsI DandStoreNamc=StorcName )begininsert into tb_Storelnto(Goodsl D?StoreName.GoodsNum)val ues( GoodsI D .StorcNamc,GoodsN um )endelsebeginupdate dbo.tb_StoreInfo set GoodsNum=GoodsN um-GoodsNumwhereG

21、oodsID=GoodsID and StorcName=StoreNamcEnd3、插入供应商存储过程这是为了判断供应商是否存在,有则返回错误,无则添加create proc c_inscrtProvider(PrNamc varchar (50).PrPcop!e varchar (20),PrPhonc varchar (20),PrFax varchar (20),PrRcmark varchar (1000)asif cxists(select from tb_Provider where PrNamc=PrNamc)beginreturn 100endelsebegi

22、ninsert into tb_Pro ider(PrNamc,PrPcopIe,PrPhone.PrEax.PrRemark) values(PrNamc,PrPeoplc,PrPhonc.PrFax.PrRcmark)End4、插入仓库存储过程这是为了判断仓库是否存在,有则返回错误,无则添加Create proc dbo. proc_inscrtStoragc(StoreNamc varchar (100).SlorcPcoplc varchar (20).StorcPhonc varchar (20),S tore Remark varchar (1000)asif cxists(sel

23、ect * from tb_Storage where SloreName=StorcNamc)beginreturn 100endelsebegininsert into ib_Storage(StoreNainc,StorcPeople,StorcPhonc,StorcRcmark) valucs(StorcNamc,StorcPeoplc,SlorcPhonc,SlorcRcmark)End5、插入用户存储过程这是为了判断仓库是否存在,有则返回错误,无则添加create proc c_inscrtUser(UscrNamc varchar (20),UserPvd varc

24、har (20),UserRighl char (10)asif exists(select * from tb_User where UserName=UserName)beginreturn 100endelsebegininsert into tb_Uscr(UserNamc.UserPwd,UserRight)valucs(UscrNamc,UscrP、dUscrRighl)End6、登录存储过程这是为了在登录时判断是否有这个用户,有则让其登录,无则拒绝create proc c_Login(UscrNamc varchar (20),UscrPwd varchar (2

25、0)asif cxists(select * from tb_User where UscrName=UscrName and UscrPwd=UscrPwd) return 100elsereturn -1007, 用户更新存储过程这是用來修改用户的密码或权限create proc dbo. proc_updateU ser(UscrlD b谊int-UscrPwd varchar (20),UserRight char (10)asupdate tb_User set UserPwd=UscrPwdTUscrRight=UscrRight where UserID=UscrID7 视图的创

26、建我们建立了三个视图,主要的目的是方便其査询1、货物存放视图create view v_GoodsNum asselect GoodsNamc,StoreNamc.GoodsSpec.GoodsNumfrom tb_GoodsInfbjb_StorcInfo;where tb_GoodsInfb.GoodslD=tb_Storelnfb.GoodslD2、入库视图create view v_inGoods asSelcctlSIDjb_lnStorc.GoodslD.GoodsNamc,tb_lnStore.PrName.tb_InStore.StoreName ,GoodsSpcc.Good

27、sUnit.tb_InStore.GoodsNum.GoodsPrice,ISDatc,.tb_InStore.HandleP eopleJSRcmarfrom tb_GoodsInfb.tb_InStorc,tb_Provider?tb_Storage;where tb_InStore.GoodID =tb_GoodsInfb.GoxiIDand tb_InStore.StoreNamc=tb_S(oragc.StorcNamcand tb_lnStorc.PrNamc=tb_Providcr.PrNamc3、出库视图create view v_inGoods asSclectOSID,tb

28、_lnStore.GoodslD.GoodsNamc.tb_InStorc.PrNamc.tb_OutStorc.StorcName ,GoodsSpec,GoodsUnit,tb_InStore.GoodsNum,GoodsPrice,OSDatc,.tb_OutStorc.HandlePeo ple,ISRemarfromtb_Goodslnfb.tb_OutStore.tb_Providcr.lb_Storage;where tb_Outstorc.GoodID =tb_GoodsInfo.GoxlIDand tb_OutStore.StorcName=tb_Storagc.StorcN

29、amcand tb_OulStorc.PrNamc=tb_Providcr.PrNamc一应用程序设计系统运行预览:1、公共类的设计Datacon类:主要代码如下E;using System;using System. Collect ions. Generic:using System. Text:using System. Linq:using System.Data;using System. Data. SqlC 1 ient:E: name space SMS. BaseClassclass DataCon屢至数損库连接|协 行 SqlComjTiand 命令 | 从表创建Dat a

30、Set对象| 从视囹创建DataSet对象|创建 SqlDataReader 对創1. getcon方法就是返回值为SqlConnection类型的自定义方法,它主要用来建 立数据库的连接,器实现代码如下:Region崖立数据曲接/ /攀立数据融接/ /returns返HSqlConnect ionf象/returnspublic SqlConnection gwtcon()/定义数据扁宝接宇符串“st ring M_str_sqlcon = Da ta Source=. :Init xal Catalog=db_SMS: In tegrated SecuritiTruw:/尹0牝藪据fe连摄

31、據SqlConnection zyCon = new SqlConnection(M_str_sqlcon):return ryCon:-endregion2. gclcom方法为无返回值类型的口定义方法,它主要用來执fl SQL语句,实现代码如下:region 执行 SqlCozzand 命令/ / 执。行SqlCommand/ /param name=Jf_st:r_sqltrSQL语句 public void 驴tcoz (stringr_sqlstr)SqlConnection sqlcon = this, getcon0 : /篌例化数连扳寸象sqlcon. Open () ;/打开

32、数据屋接SqlCommand sqlcom = new SqlCommand (M_st:r_sql.str: sqlcon) ;/f(tSqlCommon(5寸象 sqlcom. Execute?onQuery (): 执行SQL语句 sqlcom. Dispose 0sqlcon. Close ():/关闭薮扌居屋宝接sqlcon. Dispose。:縞邃据后接#endregior|3. gelds方法用來执行SQL语句,并返回一个DalcSct类型的数据集对線。在此方法中,首 先调用本类中的gcicon方法实现数据库的连接,然后使用SqllDaiaAdapicr类对象填充数据集, 实现代

33、码如下:sr*gion从妾嚣逮MtaS.t对象;/ /创逢一个DataSet对象/ / SQLlpP /para=/ /返回DataSet对魚ataAdt*r sqlda = nv SqlDataAdapterOCttr.sqlstr, sgleon) :/,今胡化,qldatM&ptrj肚t Data% ayd = nc MtaSot 0 :/侯例化敎挖集对裁 sqlda. Fill (syds, M_tr_table):/,埴完魏据重 return =yds: 返回数据集5ndrfiongetdv方法与此方法一致。3.gctread方法中首先使用SqlCommand类对象执行SQL语句,然

34、后调用SqlCommand类中的 Execute方法生成SqlDataRcadcr类的一个对象,并返回该对彖。region SqlDataReader 象/ /创建一个SqlDataRwade球據/ /summaryIII SQL语句/paramIII ? SqlDataReader sqlread = sqlcom. ExecuteReader(CozzandBehavior. CloseConnection): return sqlread;/返回2=endregionDataOperatefe中包含11个方法,分别是:绑定ComboBox控件,验证文本框输入 为数字,验证文本框输入为电话

35、号码,验证文本框输入为传真,用户登录,货 物入库,添加单位信息,添加仓库信息,添加货物信息,添加新用户,修改用 户信息。由于篇幅限制,代码不具体列举出来了。2、档案模块设计为了使操作员使用的方便,在进行出入库之间首先对货物,联系单位和仓库 的信息进行设置,以便提高员工的效率。在货物档案,联系单位档案和仓库信 息档案的窗体中,可以添加、修改和删除信息。运行结果如图:货物编号货物名称货物规格计里单位2橡皮台3数据库教材本-J4计算机网络教材本-J5电肪20*3台6建盘40*131个7手机10*411个8手机10*4*2件9只枷谈伽刑的金翊档案遁信息货协聘 6货物规格40*10*1货物名称强盘计里单

36、位搠乍货物信息设置窗体供应商借患设量接作信息Ml小用0551-3476437686-364-7632644速度发货水李经遲0551-889344486-111-11124343i青你敕心,我安逮工小芳0551-233445486-545-3736423$?力工作殊大王老板0431-889456786-110-11145.请你放心,我安师大小贱0543-223445586-545-3666655禺力工作单位名称负责人电话传真备注联系单位信息设迓窗体仓库佶息设迓窗体在档案设置模块中,DataGridView类型控件的信息显示代码为:以货物信息 为例:private void frnGoodsInf

37、o Load (object sender, E-.-r.tAres e)dgvGInfo.Controls. Add(hScrollBarl):DataSet myds = dat aeon, get ds (select GoodsID as 货物端号,GoodsName as 赏杨名称, +GoodsSpec as 货物姒格,GoodsUnit as 计里单位 fro* tb_GoodsInfo, *tb_GoodsInfo*);dgvGInfo.Dat aSource = nyds. Tablestb_GoodsIno:在该窗体中,单击DataGridView件的任意单元格,其对应的详

38、细信息都会 显示在相应的文本框中,该功能实现的关键代码如下:private void dgvXJInfo.CellClick(object sender, DatridVieuCellEventArgs e)txtGID. Text = Convert. ToString(dgvJInfo0, dgInfo.CurrentCell. Rowindex. Value). Trin(): txtGNane. Text = Convert. ToString (dgvGInfo 1, dgvGInfo. CurrentCell. Rowindex. Value). Trm0 : txtGSpec .

39、Text = Convert ToString(dgvGInfo2, dgvCIno CurrentCel 1 Rowindex V aluc ) Trm(): cboxCUnit. Text =| Convert. ToString (dcvGInfo3, dgvGInfo.CurrentCell. Rowindex. Value). TrinO : 当用户填写完基本资料后,单击添加按钮,程序便自动检测输入的信息是否正确, 如果正确则将这些倍息保存到信息表中,添加按钮的Click事件代码如下:private void btnAdd Click(object sender- EventArgs

40、 e)if (txtGID. Txt =)玄x.Shor(赛签石号不能为空 :?/ 乂yg“氏妨Xtom. C冕 MssosBoxIccr. laforsition); (txtGSpic. Text =)WmsaHSox. Show(赞物絞烙不为史、*,JfessageBoxButtcns. C&. MessaceSoxIcoc. Infcr=ation:)elseint P_int_rtumaiU = doptratt. ImrtGoodi(Convert, Tolst32(txtGID. Txt. TricO). txtGXas#. Txt. 7ria(), txtGS*c. Text.

41、 Tri(), cboxGUalt. Text. TriaO);f (P int returuVAlue = 10)(K5sas5ox. Skcr(*Sfe已孑在 愷 S* 信息MesiactBaxBaticac. g Xescacoxlccs. Iafozsat:elsQ if (P.iut_rQturzValue = 200)(KesEdMBojLSfeow这矣贺務已经存左忧宾号!,馆息:UessageBoxButtcns. CXr XessageBcxIccn. ZnfontAtiai): MssagsBox.入SS或功! *f 勺 SA 558eeBcz5uttOT5. OK, Mes

42、sageBoxIcoiL Infcrnaticn):fns&ccdslnfo.Lcad (sender, e):当用户选中DataGridView控件中的单元格时,其相应的信息会显示在文 本框中,这时用户可以在文本框中对信息进行修改。修改按钮的Click事件 代码如下:private void btnEdlt.Cllck(object server EvectArts )(trydatac-so. tctcceCupdate tb_Gcodt!nfo Et CoGsUnitx * cboxGUnit. Txt. Trin()- *, GocdcNazz* =* * txtGXxze. Text

43、. TrinO * GwUSpec = txtCSpic. Text. Trl()*r,iter CoodsJ&x*亠 txtGID. Text .Tsrin 0 *); Sho(贷鞫嗚宴權农功! ,愷匕 MY5as*3wtButtonF.OK. MessaiSoxIcon. Iafcnutlon): frzCocdrInfo_LoMd (zczdtr, );catcb(Exertion z) 一Xfsael Click(object sender HveatArgs e)try( .datacon. cttcocCdtlett from tbGoodxInfc where GoodilDs*

44、 Convert. ToString(dgGInfo*0 dgvGInfo. CurrentCell. Rowlndexl. Value). Trio() * *): 艺cewBok. Sho(货物恶倉茨功! *, 愷息:MessaEeBozSuttons. OK. MessageScxIcon. Inf creation): frzGcodsInfoLoad(sender, e):catch (Bxception x)Xr3sageBox. ShoT(ex Mssage, 蓉告:MessageBoxButtcsj, OK, MetsaceSozIcon. Wxrninr):联系单位和仓库的功

45、能与货物一致,只盂修改相应的代码即可,不再一一赘述。3、出入库管理模块设计出入库管理是仓库管理系统中的一个重要的功能.它主要实现货物的出入库登记功能。 出入库的窗体运行结果如图:入库管理窗体出库管理窗体在出库和入库中主要的代码实现有显示DataGridVicw控件信息,与之前货物模块一致, 唯一不一样的是,货物信息是从表中获取.而出入库是从视图中获取的倍息。在此,这一 部分不在列出相应代码。当入库时,当用户输入货物的数址和单价时,口动计算总金额。关键代码如下: private void txtGIPrice.TextChaned(object sender, EventArgs e)trytx

46、tGSPrice T ext = Convert ToS*tr:ing(Corn7Ert ToDecimalCtxtGIPrice .Text .TrmO) Convert ToInt32(txtISGHun Text. TriztO). TrimO :catch (Exception ex)MessageBox. Shov(ex. Message, 警告MessageBoxButtons.OK, JlessageBoxIcon. Wamin?):当点击入库按钮时程序口动检査信息是否正确,如果正确将这些倍息保存到入库 表中,同时,在存储过程中,完成库存信息表中的插入或者更新。private v

47、oid btnAdd.Click(object sender, Eventc)if (trtGIPrice. Text =MessrageBox.ShovC早价不讒为空! , (Sfi*, MessaeBoxButtone.OK# HerrsgeL.xlcon. Infornation):int P.int.returnValuc = doperate. InsertInxtorc(Cowert. Joint32(txtGID. Text. TrimO), cboxCHajte. Text. TrinO, cboxPKaxe. Text. TrinO, cboxSNaae. Text. Tri

48、nO, cboxGSpec. Text. TrmO,elseConvert. Tolnt32(txtISGMuii. Text. Trin()f Convert. ToDecmal (txtCIPnce. Text. TrinO) txtHPeople. Text. TrmO, txtlSReaiark. Text. TriO):MessageBox. Shov (* K SJ 入犀或功! *, *fa 8*, MessaeeBoxButton. OK, MessageBoxIcon. Infomat ion): frISManac-Load(sender, e):删除功能不再详细叙述。出库的

49、代码与入库基木一致相同的地方不在列出唯一不同的是,入库时修改库存佶 息是在存储过程中完成的,而出库直接在应用程序中完成的,代码如F:private void btaAdd.Clekobjtct sender, E*entArcs e)try$QlDataXeder SQlread = datacos. eetread(*s2et GoodaNua frea v.GooHun * wfcere StorNM= * * cboxSXaBe. Ttxt. TrlaO an4 GcsKaae=,* cbozCCaa. Txt. Tr:a0 * * and GoodsSpc= *cboxGSp Cocvert. ToInti2(sqlreadrGoodBNuix*J.ToStri

温馨提示

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

评论

0/150

提交评论