倉庫管理系統(tǒng)課程設計_第1頁
倉庫管理系統(tǒng)課程設計_第2頁
倉庫管理系統(tǒng)課程設計_第3頁
倉庫管理系統(tǒng)課程設計_第4頁
倉庫管理系統(tǒng)課程設計_第5頁
已閱讀5頁,還剩33頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、 目錄1 需求分析51.1 功能需求51.2 用戶需求51.3 系統(tǒng)流圖51.4 基本數(shù)據(jù)項及數(shù)據(jù)結構61.5 數(shù)據(jù)流條目71.6 數(shù)據(jù)存儲條目71.7 加工條目71.8 數(shù)據(jù)流圖91.9 安全性要求101.10 完整性要求112.概念結構設計123.邏輯結構設計133.1 關系模型設計133.2 用戶子模式設計163.3 系統(tǒng)結構圖203.4 安全性設計203.5 完整性設計204.數(shù)據(jù)庫物理設計224.1 建立索引224.3 確定系統(tǒng)配置224.4 模塊設計245.數(shù)據(jù)庫實施255.1靜態(tài)備份255.2 動態(tài)備份255.3恢復備份255.4 界面設計265.6 關鍵代碼296.系統(tǒng)測試方案

2、326.1 登錄測試326.2 新建用戶測試326.3 更改用戶測試326.4 刪除用戶測試326.5 數(shù)據(jù)錄入測試336.6 查詢測試337.系統(tǒng)主要功能和安裝使用說明347.1系統(tǒng)功能347.2.系統(tǒng)安裝說明34結束語36參考文獻371 需求分析 1.1 功能需求 該系統(tǒng)主要分為三大功能: 管理員功能、信息安全功能、一般用戶功能、報表生成。(1) 管理員功能:產(chǎn)品入庫登記、確認入庫信息、刪除庫內信息、借出信息登記、產(chǎn)品分類管理、添加人員、刪除人員、查詢庫內信息。(2) 信息安全功能:人員權限區(qū)分、事件記錄、數(shù)據(jù)警告、計劃備份、即時備份、數(shù)據(jù)恢復; (3) 一般用戶功能:查詢庫內信息、查詢出

3、庫信息、查詢入庫信息、修改本用戶密碼;(4) 報表生成:庫存信息報表生成。 1.2 用戶需求根據(jù)用戶需求,該系統(tǒng)應該實現(xiàn)以下功能:(1) 進、出庫管理。對進、出庫信息進行記錄。(2) 查詢功能。倉庫管理對查詢要求高,通過主菜單記錄當前操作用戶的用戶編號,保證了對進、出庫信息錄入負責人的確認。(3) 部門資料管理與庫存報表生成。資料管理包括了人員信息管理,財政支出信息管理,以及各項業(yè)務單據(jù)的資料管理。報表主要分類為:日報表,月報表,銷售報表,入庫報表等等。(4) 由于計算機能存貯大量的數(shù)據(jù),而且數(shù)據(jù)只要一次存入,便可多次重復使用,所以管理數(shù)據(jù)達到完整,統(tǒng)一,原始記錄能保證及時,準確。(5) 許多

4、重復性的工作,都可由計算機去執(zhí)行,從而使管理人員從事務性工作解脫出來,真正變?yōu)閺氖乱恍┬畔⒌姆治?,判斷,決策等創(chuàng)造性的工作。倉庫管理系統(tǒng)存儲文件出庫信息處理入庫信息處理庫存操作采購貨物入庫入庫信息定貨報告查詢操作購貨商需求表1.3 系統(tǒng)流圖出庫信息表庫存報表供貨商出入庫庫存報表1.4 基本數(shù)據(jù)項及數(shù)據(jù)結構l 零部件信息。包括的數(shù)據(jù)項有零件號、零件名稱、規(guī)格、單價、描述。l 倉庫信息。包括的數(shù)據(jù)項有倉庫號、已用庫存、庫存總量、負責人、電話號碼。l 供應商信息。包括的數(shù)據(jù)項有編號、供應商、電話號碼、地址。l 部門信息。包括的數(shù)據(jù)項有部門號、名稱、電話。數(shù)據(jù)項名稱別名簡述類型長度取值范圍零件號-零件

5、的編號字符型7第1位:進口/國產(chǎn)(i/d)第2-4位:類別第5-7位:物資編號零件名稱-零件的名稱字符型20-規(guī)格-零件規(guī)格字符型10單價-零件的單位價格貨幣型6默認計量單位:元描述-零件描述/說明文本型-倉庫號-倉庫的編號字符型3-已用庫存-倉庫已用存儲容量數(shù)值型60:倉庫非空=0:空倉庫0:物資存量=0:空倉庫0:不允許負責人-倉庫負責人字符型20-供應商編號-供應商編號字符型3-供應商-供應商名稱字符型20-地址-供應商聯(lián)系地址文本-部門號-公司部門編號字符型3-部門名-公司部門名稱字符型20-電話-電話號碼字符型15-1.5 數(shù)據(jù)流條目名稱別名簡述來源去向入庫單-入庫單位在把相應的零件

6、送人倉庫時必須填寫的單據(jù)供應商庫存出庫單-領料人員從倉庫中領取零件時必須填寫的單據(jù)庫存公司部門客戶還庫單-零件使用后歸還入庫必須填寫的單據(jù)公司部門庫存需求單-對新零件需求所填寫的單據(jù)公司部門庫存采購單-購買新零件所填寫的單據(jù)采購員供應商 1.6 數(shù)據(jù)存儲條目名稱別名簡述組織方式查詢要求倉庫庫存-存放索引文件,以倉庫編號為關鍵字要求立即查詢零件庫存-存放索引文件,以零件編號為關鍵字要求立即查詢1.7 加工條目加工名激發(fā)條件優(yōu)先級輸入輸出零件入庫接收到合格入庫單時普通合格入庫單庫存滿,零件成功入庫加工邏輯根據(jù)庫存記錄。loop:if (入庫物資的數(shù)量+物資現(xiàn)有存量)=該物資庫存量臨界值then 物

7、資存入倉庫;物資現(xiàn)有存量=物資現(xiàn)有存量+入庫物資的數(shù)量;else 物資庫存已足,if 物資現(xiàn)有存量=該物資庫存量臨界值then 結束,入庫失敗endif;調整入庫單;goto loop,直到(入庫物資的數(shù)量+物資現(xiàn)有存量)=該物資庫存量臨界值;endif;零件入庫;統(tǒng)計倉庫庫存已用量;加工名激發(fā)條件優(yōu)先級輸入輸出零件出庫接收到合格出庫單時普通合格出庫單庫存量不足,零件成功出庫加工邏輯根據(jù)庫存記錄。loop: 零件是否存在? 是: if 需求單物資的數(shù)量該物資庫存量的臨界值 then 零件出庫 物資現(xiàn)有存量=物資現(xiàn)有存量-出庫零件的數(shù)量; else 物資短缺, if 物資現(xiàn)有存量=該物資庫 存量

8、臨界值; endif; 否: 零件不存在,goto loop;零件入庫;統(tǒng)計倉庫庫存已用量; 1.8 數(shù)據(jù)流圖1) 本系統(tǒng)的頂層數(shù)據(jù)流圖2) 細化后的數(shù)據(jù)流圖3) 貨物入庫信息管理細化4) 貨物出庫信息管理細化1.9 安全性要求系統(tǒng)安全性要求至少達到tcsec(tdi)的c1級。即只提供了非常初級的自主安全保護。能夠實現(xiàn)對用戶和數(shù)據(jù)的分離,進行自主存取控制(dac),保護或限制用戶權限的傳播。實行用戶標識與鑒別,具有數(shù)據(jù)備份和日志審計功能。1.10 完整性要求每個關系中都至少要有一個主鍵,并且都有一個聚集索引(clustered index)。關系與關系之間通過主外鍵關聯(lián)。定義屬性上的約束條件

9、,定義觸發(fā)器。2.概念結構設計3.邏輯結構設計3.1 關系模型設計1) 倉庫表storehouseno.字段名代碼類型約束1倉庫號stoidchar(3)主鍵2已用庫存used_volumesmallint非空,默認0,unsigned,=min_volume,mysqldump -user=root -password=the_mysql_root_password -result-file=outputfile.sql -databases warehouse2) 局部備份:備份具體某些表shellmysqldump -user=root -password=the_mysql_root_

10、password -result-file=outputfile.sql -databases warehouse table_name5.2 動態(tài)備份運行服務器進行數(shù)據(jù)更新,用flush logs或mysqladmin flush-logs清空日志進行定期增量備份。如果mysqld在運行則停止,然后用-log-bin=file_name選項來啟動。當想要進行增量備份時(包含上一次完全備份或增量備份之后的所有更改),應使用flush logs回滾二進制日志。然后,你需要將從最后的完全或增量備份的某個時刻到最后某個點的所有二進制日志復制到備份位置。這些二進制日志為增量備份。下次進行完全備份時,還

11、應使用flush logs或mysqlhotcopy -flushlogs回滾二進制日志。另外可以使用事件對某個表數(shù)據(jù)進行自動定時備份,但那樣占用相當?shù)臄?shù)據(jù)庫系統(tǒng)資源處理事件,會影響服務器的性能。5.3恢復備份1) 靜態(tài)數(shù)據(jù)恢復假定所備份的數(shù)據(jù)庫已經(jīng)存在,以管理員身份登錄數(shù)據(jù)庫,輸入命令:use backup_database_name;source backup_name.sql;2) 動態(tài)數(shù)據(jù)恢復1. 恢復原mysqldump備份,或二進制備份。2. 執(zhí)行下面的命令重新更新二進制日志:shellmysqlbinlog hostname-bin.0-9* | mysql5.4 界面設計 登錄

12、界面和用戶管理界面 信息查詢界面 零件信息管理界面和部門信息管理界面 供應商信息管理界面和零件入庫管理界面 零件出庫管理界面和零件還庫管理界面 零件供應管理界面和部門需求管理界面 計劃采購管理界面和倉庫管理界面 主界面界面5.6 關鍵代碼1) 創(chuàng)建用戶并分配權限2) 修改用戶(包括權限重新分配)3) 根據(jù)不用用戶分配不同的功能6.系統(tǒng)測試方案6.1 登錄測試l 輸入空賬號l 輸入不存在的賬號密碼l 輸入正確的賬號和錯誤的密碼l 輸入正確賬號和空密碼6.2 新建用戶測試l 創(chuàng)建一個已存在的賬號l 創(chuàng)建每種用戶類型的空密碼的賬號l 正常創(chuàng)建每種用戶類型的賬號(非空密碼)l 創(chuàng)建每種用戶類型的空賬號

13、且空密碼l 創(chuàng)建每種用戶類型的非空密碼的空賬號6.3 更改用戶測試l 更改每種用戶類型已存在的用戶l 更改每種用戶類型一個不存在的用戶l 每種用戶類型將一個非空密碼的用戶改為空密碼l 每種用戶類型將一個空密碼的用戶改為空密碼l 每種用戶類型將一個用戶只更改權限l 每種用戶類型更改一個空賬號密碼的用戶l 每種用戶類型更改一個空帳戶但密碼非空6.4 刪除用戶測試l 刪除一個不存在的用戶l 刪除一個已存在的用戶l 刪除一個空用戶6.5 數(shù)據(jù)錄入測試l 錄入一條空記錄l 錄入一條以上全部數(shù)據(jù)項非空記錄l 錄入一條以上只填必填數(shù)據(jù)項的記錄l 錄入一條以上只填非必填數(shù)據(jù)項的記錄l 對具有外鍵關聯(lián)的表錄入一

14、條以上檢驗外鍵約束的記錄l 錄入一條以上正確的記錄l 錄入一條以上檢驗其他自定義完整性約束的記錄6.6 查詢測試l 正常查詢一條以上記錄l 查詢各種查非所查的記錄l 查詢各種不對應選項的查詢7.系統(tǒng)主要功能和安裝使用說明7.1系統(tǒng)功能本系統(tǒng)的主要功能如下表所示:不同的用戶類型具有不同的功能。7.2.系統(tǒng)安裝說明由于mydac插件的關系,插件存在著“mydac trial version requies c+builder ide”(mydac試用版依賴于c+builder ide),所以安裝有點麻煩。運行此程序必須安裝c+builder 6.0、mydac 5.70和mysql 5.1,運行此

15、程序前必須先運行c+builder ide。數(shù)據(jù)庫連接及數(shù)據(jù)導入。安裝好mysql后以管理員登錄,登錄后輸入命令:create database warehouse character set gbk;導入數(shù)據(jù),輸入命令:use warehouse;source warehouse.sql;(如果warehouse.sql文件不是在當前目錄,請指明warehouse.sql的詳細目錄)創(chuàng)建程序默認用戶:create user inflocalhost identified by inf;create user dbalocalhost identified by dba;create user

16、 syslocalhost identified by sys;數(shù)據(jù)庫連接:(1) 進入windows的控制面板,在控制面板中找到【數(shù)據(jù)源(odbc)】選項并雙擊,進入【odbc數(shù)據(jù)源管理器】對話框。如果控制面板中沒有該選項可以在windows目錄下查找“odbcad32.exe”可執(zhí)行文件并運行它。(2) 選擇【系統(tǒng)dsn】選項卡并單擊【添加】按鈕,出現(xiàn)創(chuàng)建新數(shù)據(jù)源窗體,從中選擇【mysql odvbc 5.1 drive】項。(3) 單擊【完成】按鈕,出現(xiàn)數(shù)據(jù)源參數(shù)設置窗體,從中輸入數(shù)據(jù)源的名稱及數(shù)據(jù)源指向的服務器名稱,本例輸入的是warehouse和localhost,端口號為3306,

17、數(shù)據(jù)庫選擇warehouse,填寫完賬號密碼后點擊【test】,測試成功后點擊【ok】退出配置,完成mysql的odbc數(shù)據(jù)源的建立。結束語在這次數(shù)據(jù)庫課程設計中,我學習到很多知識,開始時真的不知道該怎么做,倉庫管理系統(tǒng)到底要創(chuàng)建哪些表,表里到底要有哪些數(shù)據(jù)項,這些都很模糊。在老師的指導下才知道怎樣去做。我認為,需求分析真的很重要。在需求設計階段,把系統(tǒng)的功能勾畫出來,分析系統(tǒng)的數(shù)據(jù)字典、數(shù)據(jù)流向,畫出e-r圖,根據(jù)e-r圖數(shù)據(jù)庫設計關系模型,這樣一步步下來,自己對倉庫管理系統(tǒng)有更多的了解,對后面的程序編程也明朗了。在數(shù)據(jù)庫設計的時候也花了不少的時間,多次的在數(shù)據(jù)庫關系模型、e-r圖和數(shù)據(jù)字典之間循環(huán)修改,重復的修改完整性定義,優(yōu)化表格。在定義check完整時發(fā)現(xiàn)mysql的check完整性定義失效,翻書發(fā)現(xiàn)原來mysql對check的完整性定義還沒有強化。等數(shù)據(jù)關系模型最終確定了,才開始設計索引和觸發(fā)子。之后的編程就簡單多了。在數(shù)據(jù)庫設計期間,我是在設計的過程中就去創(chuàng)建數(shù)據(jù)庫,建表,所以當修改完整性定義和數(shù)據(jù)項時現(xiàn)得相當麻煩,因為有主鍵外鍵的完整性定義在修改時就不好做了。最終結論,我把數(shù)據(jù)庫設計完后才去創(chuàng)建數(shù)據(jù)庫創(chuàng)建完整性定義等等,還有一點是創(chuàng)建表時最好也把后面程序功能的需要考慮進來。在這次

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論