當前位置:首頁 » 操作系統 » 倉庫管理系統資料庫設計

倉庫管理系統資料庫設計

發布時間: 2023-09-23 23:40:39

⑴ 求資料庫課程設計----倉庫管理系統

開發背景及意義
在市場競爭的微利時代,建立科學、規范、高效管理制度成為了企業管理的當務之急。一個企業在市場中是否具有強有力的競爭力,除了要看企業的人才、資金、技術、產品之外,更重要的一項,就是要看企業是否有一個良好的管理體制。在企業管理中,倉庫管理更是管理中的重中之重。通過對企業倉庫信息的管理與統計,為企業積累真實、有效的數據,通過對這些數據的分析與研究,對企業各方面做出相應的調整,以提高企業的管理效率,使企業走上良性發展道路。

系統目標
通過對企業倉庫管理過程的分析與研究,要求倉庫管理系統實現如下目標:

l 實現商品的入庫、入庫退貨管理。

l 實現商品的庫存檔點管理。

l 實現商品的庫存調撥、出庫管理。

l 實現商品的庫存上、下限管理。

l 實現入庫、入庫退貨、商品出庫等查詢管理。

系統規劃
1.系統目標
利用計算機系統實現企業商品的庫存管理。

2.系統處理范圍
l 基礎信息管理。

l 入庫管理。

l 庫存管理。

l 查詢管理。

3.系統功能
l 基礎信息管理。

在基礎信息管理中需要實現操作員、商品、倉庫、供應商的信息管理,包括信息的添加、修改、刪除、瀏覽。

l 入庫管理

在入庫管理中需要實現商品的入庫、入庫退貨管理,記錄入庫、入庫退貨信息。

l 庫存管理。

在庫存管理中需要實現庫存商品列印、庫存檔點、庫存調撥、商品出庫、庫存上下限管理。

l 查詢管理。

在查詢管理中需要實現入庫查詢、入庫退貨查詢、報損、報益查詢、庫存調撥查詢、商品出庫查詢。

資料庫邏輯結構設計
倉庫管理系統共使用了11張數據表,分別為操作員信息表(tb_operator)、供應商信息表(tb_providerinfo)、庫存檔點明細表(tb_check_sub)、庫存檔點主表(tb_check_main)、庫存信息表(tb_storageinfo)、入庫明細表(tb_instock_sub)、入庫退貨明細表(tb_cancelinstock_sub)、入庫退貨主表(tb_cancelinstock_main)、商品庫存表(tb_merchandisestorage)、商品入庫主表(tb_instore_main)、商品信息表(tb_merchandiseinfo)

具體的這里也寫不了
而且這些不是只要資料庫就完成的吧
得用前台設計語言比如c++什麼的吧
而設計體會和致謝這些不該自己寫嗎~~~

⑵ 課程設計倉庫管理系統的資料庫製作

資料庫原理及應用課程設計
一、課程設計的目的
《資料庫原理及應用》課程設計是計算機科學與技術專業集中實踐性環節之一,是學習完《資料庫原理及應用》課程後進行的一次全面的綜合練習。本課程設計主要在於加深學生對資料庫基礎理論和基本知識的理解,掌握資料庫應用系統設計開發的基本方法,達到進一步使學生綜合運用所學知識和增強實際動手能力的目的。

二、課程設計的任務與要求
要求學生根據自身對題目的理解情況,從給定的設計題目中選擇一個,以MS sql Server作為後台資料庫平台,以PowerBuilder作為前台開發工具,完成一個小型資料庫應用系統的系統的分析、設計和開發。

三、課程設計說明書
倉儲管理系統
對於一個以生產或經營產品為主要業務的單位來說,倉庫管理系統至關重要。高效方便的倉庫管理系統,可以為生產經營提供堅強的後盾和有力的支持。效率低下甚至是混亂不堪的倉庫管理系統,無疑會成為企業健康發展的拖累甚至是枷鎖。使企業發展動力不足。本次資料庫設計實現了倉庫管理的高效化、電子化。通過本系統可以方便地實現倉庫管理中的貨物登記、出庫入庫等操作,使倉庫管理井井有條。
1系統需求分析
1.1系統功能需求分析

倉庫管理系統主要實現對庫存商品的管理,對商品出庫、入庫的管理,和對倉庫管理系統維護的功能。具體要實現的功能包括:
1)庫存商品管理
查看資料庫中商品的名稱、編號、單價等信息。
2)商品出庫、入庫管理
入庫、出庫單紀錄本次入庫、出庫的貨物名稱、數量,入庫、出庫的時間、商品單價以及總價,入庫、出庫的經手人等。
3)商品的查詢
輸入商品的編號或者商品的名稱查詢信息
4)用戶管理
用戶可以修改登錄密碼

1. 2數據需求分析
1.員工(ID ,姓名,密碼,許可權)
2.商品(商品名,商品編號,所屬類,單價)
3.出貨表(商品名,商品編號,數量,總價,經手人)
4.入貨表(商品名,商品編號,數量,總價,經手人)
5.查詢(商品名,商品編號,數量,單價)
根據上面的關系我們需要的數據基本上就上面所列出的數據。

2 系統總體設計
1)庫存商品管理
查看資料庫中商品的名稱、編號、單價等信息。
2)商品出庫、入庫管理
入庫、出庫單紀錄本次入庫、出庫的貨物名稱、數量,入庫、出庫的時間、商品單價以及總價,入庫、出庫的經手人等。
3)商品的查詢
輸入商品的編號或者商品的名稱查詢信息
4)用戶管理
用戶可以修改登錄密碼

2.1系統總體結構設計

2.2.1 E-R圖

2.2.2 關系模式

1.員工(ID ,姓名,密碼,許可權)
2.商品(商品名,商品編號,所屬類,單價)
3.出貨表(商品名,商品編號,數量,總價,經手人)
4.入貨表(商品名,商品編號,數量,總價,經手人)
5.查詢(商品名,商品編號,數量,單價)

2.2.3 數據表

「員工信息表」「商品信息表」「出貨單」「進貨單」的主鍵分別是:ID、商品編號、商品編號、商品編號。

員工信息表

商品信息表

出貨單

進貨單

3.系統實施

工作界面PB9.0,以下是我製作過程和運行中的一些截圖:
首先建立PB與SQL的數據鏈接:如果鏈接不成功,返回對以話框「資料庫連接錯誤,經檢查後再試!」

然後點Preview選項會彈出如下窗口:

一、 工作界面截圖:

分別建有:workspace、application、windows、dw_、da_等。

工作時檢測連接資料庫是否正常的程序代碼:
// Profile q
SQLCA.DBMS = "ODBC"
SQLCA.AutoCommit = False
SQLCA.DBParm = "ConnectString='DSN=倉庫;UID=;PWD='"

connect;
open(w_enter)

二、 運行結果的截圖:
這個是我運行後的第一個用戶界面,在界面中輸入管理員ID和密碼。我的管理員ID 和密碼分別為 1,123.點擊確定進入menu下一界面。

若ID和密碼分別輸入1,1234,則跳出以下界面:

確定按鈕所對應的代碼如下:
//定義兩個變數
string password,userid
password=sle_2.text
//檢索用戶名和密碼記錄
SELECT "員工信息表". "ID",
"員工信息表"."密碼"
INTO :userid,
:password
FROM "員工信息表"
WHERE "員工信息表"."ID" =:sle_1.text and "員工信息表"."密碼" =:sle_2.text;

//判斷用戶輸入的用戶名是否正確
if sqlca.sqlcode<>0 then
messagebox("錯誤!","ID或密碼錯誤,請重新輸入!",exclamation!,ok!,2)
else
messagebox("通過驗證!","ID和密碼正確,歡迎您使用本系統!",Information!,ok!,2)
open(w_main)
close(w_enter)
end if

取消按鈕所對應的代碼如下:
close(parent)
//關閉登錄窗口

三、 menu界面的截圖:
在本界面中我們通過點擊菜單欄上的不同管理按鈕來實現管理和操作的功能。
進貨—進貨單
出貨—出貨單
庫存—蔬菜類
—水產類
—肉類
系統維護—修改密碼
查詢

四、 進貨的截圖如下:
在本界面中,操作員可以輸入進貨信息

五、 進貨的截圖如下:
在本界面中,操作員可以輸入出貨信息

六、本界面是實現用戶更改自己的密碼的界面
用戶在登陸後根據上面的提示可以更改自己的密碼。

程序代碼如下:
string oldid
string oldp
string newp1
string newp2
oldid=trim(sle_1.text)
oldp=trim(sle_2.text)
newp1=trim(sle_3.text)
newp2=trim(sle_4.text)

if len(oldp)=0 or isnull(oldp) then
oldp=space(10)
end if
if len(newp1)=0 or isnull(newp1) then
newp1=space(10)
end if
if len(newp2)=0 or isnull(newp2) then
newp2=space(10)
end if
select "operator"."password"
into :oldp
from "operator"
where "operator"."password"=:oldp;
if sqlca.sqlcode<>0 then
messagebox("提示","原密碼不正確!")
sle_2.text=""
sle_2.setfocus()
return
end if
if newp1<>newp2 then
messagebox("提示","兩次新密碼輸入不同!")
sle_4.text=""
sle_4.setfocus()
return
end if
Update "operator"
set "password"=:newp1
where "operator"."operator_id"=:oldid;
if sqlca.sqlcode<>0 then
rollback;
messagebox("提示","密碼更正錯誤! 請重設!")
return
end if
gs_password=newp1
commit;
messagebox("提示","密碼修改成功!")

七、本操作可以看倉庫里的商品並可對其進行插入和刪除

八、從倉庫查詢所需要的商品

4 系統評價
系統的功能基本上已經實現,但是還是不夠完善。但是在使用的時候還是能給用戶帶來一定的方便的。倉庫的進貨和出貨在本系統中能直觀的以表格形式反映出來,便於操作員的使用和決策者的管理。
4.1 系統特色
本系統要求用戶進行驗證之後才能進入相應的界面。有利於保護資料庫的安全,不被非法登陸使用。對於倉庫內貨物的進出管理要求嚴格,即進出貨時必須填寫相應的進出貨單據。便於企業管理查看賬目,保障了企業的穩定運行。通過本系統可以方便地實現倉庫管理中的貨物登記、出庫入庫等操作,使倉庫管理井井有條。在查看資料庫時可以方便的刪除資料庫中冗餘的信息和添加新的信息。
4.2 系統不足及改進
這個系統基本上實現了一些簡單的對系統所涉及表的更新、增加和刪除的功能。也實現對用戶登陸的安全上有了一定的限制,只有在正確輸入ID和密碼的時候才能進入系統。遠沒有達到大型公司的倉儲物資管理的要求,所創建的資料庫框架比較簡單,各表之間的聯系也過於簡單,沒有添加外鍵相互約束,用POWER BUILDER做出來的系統過於簡單、單調,需要進一步深入的調整優化,將各表之間的關系緊密聯系起來,相互制約,保證資料庫中數據的添加、刪除、更新,安全有序。操作窗口還需要進一步的進行美化,使用戶在使用中更賞心悅目。

5 課程設計心得
這次課程設計的主要目的是掌握資料庫應用系統分析設計的基本方法,基本掌握PowerBuilder,進一步提高分析解決問題的綜合能力。通過這次課程設計,我基本掌握了以上要求。但只有兩周的課程設計時間,時間比較倉促,所以開發的系統不是很完善,有一些功能未實現,但是倉庫管理的基本功能均已實現。以前對資料庫的很多知識認識都不深刻,做過這次課程設計之後,我對資料庫的知識有了一個比較系統的了解;比如:對表內一些欄位的約束,關系等的運用已經比較熟練。這個課程設計使我鞏固了資料庫的知識。
對於PowerBuilder也有了一定的了解,由於用的不多,所以運用的不是很熟練。剛開始的時候,對於PowerBuilder的語法,用法等一系列知識都不熟悉。當我基本完成此系統開發的時候,我發現其實也沒有那麼難,在未做之前我還害怕做不出來。經過對這個系統的開發,在開發過程中遇到但也解決了很多問題,所以說我們不能懼怕有困難而不去接觸認識它,我們要知難而上,只有這樣我們才能成長,才能有所發展。
這認為最難的一部分是用戶查看資料庫時通過插入刪除按鈕對資料庫的更改,因為我們在文本框中輸入的數字是被默認為字元型的,我在其中使用了integer(string)這個函數把字元型的進行了轉換,但是在使用的過程中並不能像我所想像的那樣有用。因為時間有限,所以這個問題還沒有完全的解決。
通過這次資料庫課程設計加深我對資料庫基礎理論和基本知識的理解,掌握資料庫應用系統設計開發的基本方法,達到進一步使我綜合運用所學知識和增強實際動手能力的目的。
我會繼續學習資料庫的知識,學習PowerBuilder的知識,只有通過不斷的學習充實自己,才能讓自己有所得。只有了知識的積淀,才能為自己的發展鋪平道路!

可以參考一下啊,最終還是要自己做的吧。。僅供參考。

⑶ 用Excel表格設計倉庫管理系統,裡面加上資料庫,並附上詳細說明1、每次采購入庫的物料逐漸消耗的過

示意圖如下(共4張)

在<<產品資料>>表G3中輸入公式:=IF(B3="","",D3*F3) ,公式下拉.

在<<總進貨表>>中F3中輸入公式:=

IF(D3="","",E3*INDEX(產品資料!$B$3:$G$170,MATCH(D3,產品資料!$B$3:$B$170,0),3)) ,公式下拉.

在<<總進貨表>>中G3中輸入公式:=IF(D3="","",F3*IF($D3="","",INDEX(產品資料!$B$3:$G$170,MATCH($D3,產品資料!$B$3:$B$170,0),5))) ,公式下拉.

在<<銷售報表>>G3中輸入公式:=IF(D3="","",E3*F3) ,公式下拉.

在<<庫存>>中B3單元格中輸入公式:=IF(A3="",0,N(D3)-N(C3)+N(E3)) ,公式下拉.

在<<庫存>>中C3單元格中輸入公式:=IF(ISNUMBER(MATCH($A3,銷售報表!$D$3:$D$100,0)),SUMIF(銷售報表!$D$3:$D$100,$A3,銷售報表!$E$3:$E$100),"") ,公式下拉.

在<<庫存>>中D3單元格中輸入公式:=IF(OR(NOT(ISNUMBER(MATCH($A3,總進貨單!$D$3:D$100,0))),A3=""),"",SUMIF(總進貨單!$D$3:$D$100,$A3,總進貨單!$F$3:$F$100)) ,公式下拉.

至此,一個小型的進銷存系統就建立起來了.

當然,實際的情形遠較這個復雜的多,我們完全可以在這個基礎上,進一步完善和擴展,那是後話,且不說它.

熱點內容
少兒編程排行 發布:2025-01-24 04:40:46 瀏覽:698
搭建伺服器怎麼使用 發布:2025-01-24 04:19:34 瀏覽:444
平行進口霸道哪些配置有用 發布:2025-01-24 04:19:32 瀏覽:874
ngram演算法 發布:2025-01-24 04:03:16 瀏覽:658
迷宮游戲c語言 發布:2025-01-24 03:59:09 瀏覽:358
榮耀30pro存儲類型 發布:2025-01-24 03:54:02 瀏覽:556
客戶端文件上傳 發布:2025-01-24 03:48:44 瀏覽:257
推特更改密碼的用戶名是什麼 發布:2025-01-24 03:45:55 瀏覽:596
cc編譯選項 發布:2025-01-24 03:45:18 瀏覽:512
銀行密碼怎麼被鎖 發布:2025-01-24 03:37:02 瀏覽:431