版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
PAGEPAGE12福建工程學(xué)院課程設(shè)計(jì)課程:數(shù)據(jù)庫(kù)應(yīng)用課程設(shè)計(jì)題目:庫(kù)存管理系統(tǒng)專業(yè):計(jì)算機(jī)科學(xué)與技術(shù)班級(jí):1110座號(hào):28姓名:黃初鋼2012年6月
一、系統(tǒng)定義簡(jiǎn)要說(shuō)明本系統(tǒng)的設(shè)計(jì)和實(shí)現(xiàn)意圖、目標(biāo)功能:該系統(tǒng)主要是一個(gè)小型的庫(kù)存管理系統(tǒng),提供了對(duì)人員的管理,對(duì)物料的管理,還有對(duì)物料進(jìn)出倉(cāng)的管理和物料的統(tǒng)計(jì)。該系統(tǒng)分配了不同的權(quán)限(系統(tǒng)管理員、普通管理員、一般用戶)對(duì)系統(tǒng)進(jìn)行不同權(quán)限的管理。系統(tǒng)中可以實(shí)現(xiàn)對(duì)人員資料和物料資料的增加、按條件刪除、修改、按條件查找的操作。管理員還可以對(duì)物料進(jìn)行進(jìn)出倉(cāng)的操作以及對(duì)進(jìn)出倉(cāng)信息的查詢,從而了解在某段特定的時(shí)間內(nèi)物料進(jìn)出倉(cāng)的狀況。該系統(tǒng)還能根據(jù)不同的時(shí)間對(duì)不同物料進(jìn)行統(tǒng)計(jì),并且算出最小流量的物料相關(guān)信息。還可以按照不同年份和月份進(jìn)行對(duì)進(jìn)出倉(cāng)單的打印以及倉(cāng)庫(kù)賬本信息的打印。二、需求分析1、回答“系統(tǒng)必須做什么”。確定對(duì)系統(tǒng)的綜合需求,如系統(tǒng)功能要求,性能要求,運(yùn)行要求等。軟件基本運(yùn)行環(huán)境為裝有flashbuilder4.6環(huán)境。硬件環(huán)境:服務(wù)器CPUPentiunmII300或更高配置內(nèi)存:1G以上硬盤:至少500M網(wǎng)絡(luò)適配器:10m或更快的網(wǎng)卡一個(gè)CD-ROM驅(qū)動(dòng)器客戶機(jī)CPUPentiunm200或更高配置內(nèi)存64M以上硬盤至少100M至少一個(gè)工作站使用TCP/IP協(xié)議的局域網(wǎng)數(shù)據(jù)庫(kù)管理系統(tǒng):SQLSever2005運(yùn)行平臺(tái):Windows2000/2003/XP/Vista/Win7分辨率:最佳效果1024×768像素 2、給出系統(tǒng)的邏輯模型:數(shù)據(jù)流程圖、數(shù)據(jù)字典。數(shù)據(jù)流圖:數(shù)據(jù)字典:<1:數(shù)據(jù)流名:人員信息管理說(shuō)明:管理員通過(guò)對(duì)人員具體信息的增加、修改和刪除來(lái)實(shí)現(xiàn)對(duì)人員的一些管理的工作。 數(shù)據(jù)流來(lái)源:管理員 數(shù)據(jù)流去向:庫(kù)存管理系統(tǒng)人員信息表 數(shù)據(jù)流定義:人員信息管理=[人員信息增加|人員信息修改|人員信息刪除]<2:數(shù)據(jù)流名:物料信息管理說(shuō)明:管理員可以通過(guò)對(duì)物料信息的增加,修改和刪除,來(lái)對(duì)倉(cāng)庫(kù)中的物料進(jìn)行規(guī)范化的管理。 數(shù)據(jù)流來(lái)源:管理員 數(shù)據(jù)流去向:庫(kù)存管理系統(tǒng)物料信息表 數(shù)據(jù)流定義:物料信息管理=[物料信息增加|物料信息修改|物料信息查找|物料信息刪除]<3:數(shù)據(jù)流名:物料進(jìn)出倉(cāng)信息管理 說(shuō)明:管理實(shí)現(xiàn)對(duì)物料的進(jìn)倉(cāng)操作和出倉(cāng)的操作,以及根據(jù)物料的基本信息來(lái)查詢物料的進(jìn)出倉(cāng)的信息。 數(shù)據(jù)流來(lái)源:管理員 數(shù)據(jù)流去向:庫(kù)存管理系統(tǒng)進(jìn)出倉(cāng)表 數(shù)據(jù)流定義:物料進(jìn)出倉(cāng)信息管理=[物料進(jìn)倉(cāng)|物料出倉(cāng)|物料信息查詢]<4:數(shù)據(jù)流名:權(quán)限分配 說(shuō)明:管理員通過(guò)對(duì)權(quán)限的分配實(shí)現(xiàn)不同用戶登陸系統(tǒng)有不同的限制,允許做不同的操作,以使得系統(tǒng)安全。 數(shù)據(jù)流來(lái)源:管理員 數(shù)據(jù)流去向:庫(kù)存管理系統(tǒng)人員信息表 數(shù)據(jù)流定義:權(quán)限分配=[系統(tǒng)管理員|普通管理員|一般用戶]<5:數(shù)據(jù)流名:報(bào)表設(shè)計(jì)說(shuō)明:管理員根據(jù)不用的月份以及物料的代碼進(jìn)行對(duì)物料的進(jìn)出倉(cāng)統(tǒng)計(jì)以及對(duì)物料流量的統(tǒng)計(jì)。從而能更好的了解物料的流動(dòng)情況。 數(shù)據(jù)流來(lái)源:管理員 數(shù)據(jù)流去向:庫(kù)存管理系統(tǒng)三、系統(tǒng)設(shè)計(jì)1、概念結(jié)構(gòu)設(shè)計(jì)2、邏輯結(jié)構(gòu)設(shè)計(jì)員工(人員代碼,姓名,性別,出生日期,身份證號(hào),籍貫,家庭住址,聯(lián)系電話)物料(物料代碼,物料名稱,規(guī)格型號(hào),計(jì)量單位,庫(kù)存數(shù)量,備注)庫(kù)存(單號(hào),物料代碼,進(jìn)倉(cāng)數(shù)量,出倉(cāng)數(shù)量,進(jìn)出倉(cāng)日期)3、系統(tǒng)功能模塊圖增加模塊:將輸入的信息存儲(chǔ)到數(shù)據(jù)庫(kù)中。修改模塊:先進(jìn)行搜索,找到相應(yīng)的人員或物料,再對(duì)其信息修改,存入數(shù)據(jù)庫(kù)。刪除模塊:先進(jìn)行搜索,找到相應(yīng)的人員或物料,再對(duì)其信息從數(shù)據(jù)庫(kù)中刪除。查找模塊:按代碼或名稱進(jìn)行查詢。進(jìn)出倉(cāng)信息管理模塊:根據(jù)選擇的類型進(jìn)行進(jìn)倉(cāng)或者出倉(cāng)操作,出倉(cāng)要對(duì)出倉(cāng)數(shù)量判斷。進(jìn)出倉(cāng)信息查詢模塊:根據(jù)日期,物料代碼,人員代碼進(jìn)行進(jìn)倉(cāng)或出倉(cāng)信息查詢。物料統(tǒng)計(jì)模塊:根據(jù)日期查詢相應(yīng)進(jìn)出倉(cāng)物料的流量和最少流量物料的統(tǒng)計(jì)。打印進(jìn)出倉(cāng)單模塊:根據(jù)年份和月份查詢相應(yīng)的進(jìn)出倉(cāng)單。打印倉(cāng)庫(kù)賬本模塊:根據(jù)年份和物料名稱查詢相應(yīng)的倉(cāng)庫(kù)賬本。權(quán)限管理模塊:管理員根據(jù)名稱搜索相關(guān)用戶,在對(duì)其權(quán)限進(jìn)行重新分配,每個(gè)人都有默認(rèn)最低的權(quán)限。4、其它設(shè)計(jì)圖形工具利用MicrosoftVisio來(lái)設(shè)計(jì)E-R圖和數(shù)據(jù)流圖以及模塊的流程圖。四、詳細(xì)設(shè)計(jì)主要的SQL語(yǔ)句:增加:Insertintoc1110_28_staff(人員代碼,姓名,性別,出生日期,身份證號(hào),籍貫,家庭住址,聯(lián)系電話)values('''+edit1.text+''','''+edit2.text+''','''+combobox1.text+''','''+FormatDateTime('yyyy-mm-dd',DateTimePicker1.DateTime)+''','''+edit3.text+''','''+edit4.text+''','''+edit5.text+''','''+edit6.text+''')');刪除(利用DBGrid1):ifapplication.MessageBox('確定要?jiǎng)h除記錄嗎?','刪除記錄',MB_OKCANCEL)=IDOKthenbeginADOQuery1.Delete;showmessage('已經(jīng)刪除!');end;修改:sql.Add('updatec1110_28_staffset姓名='''+Edit2.Text+''',性別='''+ComboBox1.Text+''',出生日期='''+FormatDateTime('yyyy-mm-dd',DateTimePicker1.DateTime)+''',身份證號(hào)='''+Edit3.Text+''',籍貫='''+Edit4.Text+''',家庭住址='''+Edit5.Text+''',聯(lián)系電話='''+Edit6.Text+'''');sql.Add('where人員代碼='''+Edit1.Text+'''');查找:SQL.Add('select人員代碼,姓名,性別,出生日期,身份證號(hào),籍貫,家庭住址,聯(lián)系電話fromc1110_28_staff');SQL.Add('where人員代碼+姓名like''%'+edit7.text+'%''');進(jìn)出倉(cāng)(使用存儲(chǔ)過(guò)程):sql.Add('declare@JG_DM char(4)');sql.Add('declare@JG_XX char(60)');sql.Add('execbillmanage:inoutdate,:userId,:remark,:WLid,:innumber,:outnumber,:flag,@JG_DMoutput,@JG_XXoutput');sql.Add('select@JG_DM''JG_DM'',@JG_XX''JG_XX''');進(jìn)出倉(cāng)信息查詢:str:='select*fromc1110_28_billmanagewhere1=1';if(DatetoStr(findbill.DateTimePicker1.DateTime)<>'')thenstr:=str+'and進(jìn)出倉(cāng)日期='''+DatetoStr(findbill.DateTimePicker1.DateTime)+'''';if(findbill.ComboBox1.Text<>'請(qǐng)選擇物料')and(findbill.ComboBox1.Text<>'')thenstr:=str+'and物料代碼='''+findbill.ComboBox1.Text+'''';if(findbill.ComboBox2.Text<>'請(qǐng)選擇操作人員')and(findbill.ComboBox2.Text<>'')thenstr:=str+'and操作人員代碼='''+findbill.ComboBox2.Text+'''';iffindbill.Edit3.Text<>''thenstr:=str+'and備注='''+findbill.Edit3.Text+'''';iffindbill.RadioButton1.Checkedthenstr:=str+'and進(jìn)倉(cāng)數(shù)量<>0';ifRadioButton2.Checkedthenstr:=str+'and出倉(cāng)數(shù)量<>0';物料統(tǒng)計(jì)(利用視圖):str2:='select物料名稱,流量fromminInoutwhere流量=(selectmin(流量)fromminInout)';if(radiogroup1.ItemIndex=0)thenbeginstr:='select物料名稱,sum(進(jìn)倉(cāng)數(shù)量)as進(jìn)倉(cāng)數(shù)量和fromc1110_28_material,c1110_28_billmanagewherec1110_28_material.物料代碼=c1110_28_billmanage.物料代碼';ifDateTimePicker2.DateTime>=DateTimePicker1.DateTimethenstr:=str+'and進(jìn)出倉(cāng)日期between'''+datetostr(DateTimePicker1.DateTime)+'''and'''+datetostr(DateTimePicker2.DateTime)+'''';ifcombobox1.ItemIndex<>-1thenstr:=str+'andc1110_28_material.物料名稱='''+combobox1.Text+'''groupby物料名稱'elsestr:=str+'groupby物料名稱';進(jìn)出倉(cāng)單:str:='selectyear(進(jìn)出倉(cāng)日期)'''+'year'+''',month(進(jìn)出倉(cāng)日期)'''+'month'+''',*frombillbymonthwhere1=1';if(printchart.ComboBox1.Text<>'請(qǐng)選擇相應(yīng)年份')and(printchart.ComboBox1.Text<>'')thenstr:=str+'andyear(進(jìn)出倉(cāng)日期)='''+printchart.ComboBox1.Text+'''';if(printchart.ComboBox2.Text<>'請(qǐng)選擇相應(yīng)月份')and(printchart.ComboBox2.Text<>'')thenstr:=str+'andmonth(進(jìn)出倉(cāng)日期)='''+printchart.ComboBox2.Text+'''';倉(cāng)庫(kù)賬本:str:='selectc1110_28_material.物料代碼,物料名稱,規(guī)格型號(hào),計(jì)量單位,進(jìn)出倉(cāng)日期,進(jìn)倉(cāng)數(shù)量,出倉(cāng)數(shù)量,庫(kù)存數(shù)量fromc1110_28_material,c1110_28_billmanagewherec1110_28_material.物料代碼=c1110_28_billmanage.物料代碼';if(billbook.ComboBox1.Text<>'請(qǐng)選擇相應(yīng)年份')and(billbook.ComboBox1.Text<>'')thenstr:=str+'andyear(進(jìn)出倉(cāng)日期)='''+billbook.ComboBox1.Text+'''';if(billbook.ComboBox2.Text<>'請(qǐng)選擇相應(yīng)物料')and(billbook.ComboBox2.Text<>'')thenstr:=str+'andc1110_28_material.物料代碼='''+billbook.ComboBox2.Text+'''';主要使用到的存儲(chǔ)過(guò)程和視圖代碼如下:********************************************************進(jìn)出倉(cāng)存儲(chǔ)過(guò)程********************************************************createproc[dbo].[billmanage]( @inoutdatedatetime, --進(jìn)出倉(cāng)日期 @userIdvarchar(20), --操作人員代碼 @remarkvarchar(200), --備注 @WLIdvarchar(20), --物料代碼 @inNumberint, --進(jìn)倉(cāng)數(shù)量 @outNumberint, --出倉(cāng)數(shù)量 @flagint, --標(biāo)識(shí)進(jìn)出倉(cāng)0-進(jìn)倉(cāng),1-出倉(cāng) @JG_DM char(4)output,--運(yùn)行結(jié)果 @JG_XX char(60)output --運(yùn)行結(jié)果信息)ASBEGIN declare@numint declare@createidvarchar(20)--統(tǒng)計(jì)庫(kù)存量 select @num=庫(kù)存數(shù)量 from c1110_28_material where 物料代碼=@WLId if@inNumber<0or@outNumber<0 begin select@JG_DM='0001' select@JG_XX='進(jìn)倉(cāng)或出倉(cāng)數(shù)量必須大于或者等于零?。? return end--事物處理開始 begintransactionc111028--進(jìn)倉(cāng) if@flag=0 begin updatec1110_28_material set庫(kù)存數(shù)量=@num+@inNumber where 物料代碼=@WLId if@@error<>0or@@ROWCOUNT=0 begin select@JG_DM='0002' select@JG_XX='更新進(jìn)倉(cāng)信息失敗,請(qǐng)檢查數(shù)據(jù)的合法性?。? rollbacktransactionc111028 return0 end--生成賬單號(hào) select@createid=replace(replace(replace(replace(convert(varchar,getdate(),126),'-',''),':',''),'.',''),'T','') insertintoc1110_28_billmanage( 進(jìn)出倉(cāng)單號(hào), 進(jìn)出倉(cāng)日期, 操作人員代碼, 備注, 物料代碼, 進(jìn)倉(cāng)數(shù)量 ) values( @createid, @inoutdate, @userId, @remark, @WLId, @inNumber ) if@@error<>0or@@ROWCOUNT=0 begin select@JG_DM='0003' select@JG_XX='插入賬單表失敗,請(qǐng)檢查數(shù)據(jù)的合法性!!' rollbacktransactionc111028 return0 end end --出倉(cāng) if@flag=1 begin if@outNumber>@num begin select@JG_DM='0004' select@JG_XX='出倉(cāng)數(shù)量不能大于庫(kù)存數(shù)量,請(qǐng)減少出倉(cāng)量?。? rollbacktransactionc111028 return0 end updatec1110_28_material set庫(kù)存數(shù)量=@num-@outNumber where 物料代碼=@WLId if@@error<>0or@@ROWCOUNT=0 begin select@JG_DM='0005' select@JG_XX='更新出倉(cāng)信息失敗,請(qǐng)檢查數(shù)據(jù)的合法性!!' rollbacktransactionc111028 return0 end --生成賬單號(hào) select@createid=replace(replace(replace(replace(convert(varchar,getdate(),126),'-',''),':',''),'.',''),'T','') insertintoc1110_28_billmanage( 進(jìn)出倉(cāng)單號(hào), 進(jìn)出倉(cāng)日期, 操作人員代碼, 備注, 物料代碼, 出倉(cāng)數(shù)量 ) values( @createid, @inoutdate, @userId, @remark, @WLId, @outNumber ) if@@error<>0or@@ROWCOUNT=0 begin select@JG_DM='0006' select@JG_XX='插入賬單表失敗,請(qǐng)檢查數(shù)據(jù)的合法性?。? rollbacktransactionc111028 return0 end end select@JG_DM='0000' select@JG_XX='保存數(shù)據(jù)成功??!' committransactionc111028 return1END********************************************************按月份統(tǒng)計(jì)進(jìn)出倉(cāng)信息用于形成報(bào)表的視圖********************************************************createview[dbo].[billbymonth]asselectmonth(進(jìn)出倉(cāng)日期)'月份',*fromc1110_28_billmanage********************************************************倉(cāng)庫(kù)賬本視圖********************************************************createview[dbo].[billbook]asselectc1110_28_material.物料代碼,物料名稱,規(guī)格型號(hào),計(jì)量單位,進(jìn)出倉(cāng)日期,進(jìn)倉(cāng)數(shù)量,出倉(cāng)數(shù)量,庫(kù)存數(shù)量as現(xiàn)有庫(kù)存量fromc1110_28_material,c1110_28_billmanagewherec1110_28_material.物料代碼=c1110_28_billmanage.物料代碼********************************************************最小進(jìn)出倉(cāng)流量統(tǒng)計(jì)視圖********************************************************CREATEview[dbo].[minInout]asselect進(jìn)出倉(cāng)日期,物料名稱,sum(進(jìn)倉(cāng)數(shù)量)+sum(出倉(cāng)數(shù)量)as流量fromc1110_28_billmanage,c1110_28_materialwherec1110_28_material.物料代碼=c1110_28_billmanage.物料代碼groupby進(jìn)出倉(cāng)日期,物料名稱主要模塊程序流程圖如下:物料進(jìn)出倉(cāng)流程圖登陸模塊流程圖物料
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 關(guān)于進(jìn)一步幫助市場(chǎng)主體紓困解難著力穩(wěn)定經(jīng)濟(jì)增長(zhǎng)的實(shí)施方案
- 寬帶轉(zhuǎn)讓合同(2篇)
- 青少年活動(dòng)中心安全保障方案
- G技術(shù)合作協(xié)議
- 餐飲業(yè)顧客反饋管理方案
- 濟(jì)南2024年01版小學(xué)六年級(jí)上冊(cè)英語(yǔ)第六單元測(cè)驗(yàn)卷
- 家居噴漆翻新項(xiàng)目實(shí)施方案
- 橋梁維修EPC總承包實(shí)施方案
- 2024-2025學(xué)年河北省邯鄲市高三上學(xué)期10月聯(lián)考語(yǔ)文試題及答案
- 2024-2025學(xué)年黑龍江省哈爾濱三中高三上學(xué)期10月月考化學(xué)試題及答案
- 原材料情況說(shuō)明范本
- 疲勞駕駛安全教育內(nèi)容
- ICH技術(shù)指導(dǎo)原則概述
- 15D503利用建筑物金屬體做防雷及接地裝置安裝圖集
- 牛津譯林版 時(shí)態(tài)專項(xiàng)練習(xí)選擇題50題(含答案)
- 人音版一年級(jí)上冊(cè)《其多列》課件PPT
- 人教版初中英語(yǔ)說(shuō)課省一等獎(jiǎng)?wù)n件(全英文)
- 報(bào)紙先生的故事
- 整形美容科品管圈PDCA匯報(bào)模板-通過(guò)綜合性護(hù)理干預(yù)措施降低疤痕發(fā)生率
- 中學(xué)排球校本課程教材(小學(xué)也可用)
- 2023天然氣井防硫化氫安全檢查表
評(píng)論
0/150
提交評(píng)論