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

下載本文檔

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

文檔簡介

1、目錄 TOC o 1-2 h z HYPERLINK l _Toc167113978 第一章 緒論.1 HYPERLINK l _Toc255755351 1.1開發(fā)項目.1 HYPERLINK l _Toc255755352 1.2開發(fā)背景.1 HYPERLINK l _Toc255755348 1.3開發(fā)平臺2 HYPERLINK l _Toc255755349 1.4運行環(huán)境.2可行性設計.32.1技術可行性研究.3 HYPERLINK l _Toc167113983 經濟可行性研究.3 2.3操作可行性研究.4 HYPERLINK l _Toc167113985 第三章 需求分析.53

2、.1功能需求.53.2數(shù)據流程圖.53.3數(shù)據字典.73.4建立E-R圖.9 HYPERLINK l _Toc167113988 第四章 概要設計12 HYPERLINK l _Toc167113989 4.1 系統(tǒng)設計12 HYPERLINK l _Toc167113990 系統(tǒng)狀態(tài)圖的設計.13第五章 詳細設計. HYPERLINK l _Toc167113997 5.1 物理結構設計17 5.2 邏輯結構設計. 5.3 模塊功能設計.第六章 編碼與測試. HYPERLINK l _Toc167114003 6.1 系統(tǒng)編碼23 HYPERLINK l _Toc167114004 6.2

3、系統(tǒng)測試26 HYPERLINK l _Toc167114005 結束語31 HYPERLINK l _Toc167114007 參考文獻32第一章 緒論: 超市倉庫管理系統(tǒng)。1.2 開發(fā)背景在我國超市形成在20世紀90年代初期,現(xiàn)在已經成為我國零售業(yè)的一種重要形態(tài),為國民經濟的發(fā)展發(fā)揮了重要的作用。隨著超市高速的發(fā)展,其經營管理也變得愈加復雜,早期的售貨員站柜臺的形式早已不能滿足現(xiàn)有銷售也的發(fā)展,這樣就迫切地需要引入新的管理技術。超市形態(tài)具有種種優(yōu)點,但在目前狀況下,它仍存在零售業(yè)企業(yè)所共有的落后的一面,如:不能有效地管理每種商品,收款結算速度慢,容易出現(xiàn)營業(yè)差錯,不宜進行商品調價,盤點效率

4、低等,而且在超市日常管理中,商品的進、銷、存等決策以經驗為主,缺乏實時分析功能,管理人員對及時傳遞資料的要求始終得不到滿足。蘇轍超市形態(tài)的高速發(fā)展,其經營管理也變得愈加復雜,日常所需要處理的數(shù)據量也逐漸增大,商業(yè)運轉的中間環(huán)節(jié)也越來越多,原始的人工管理已無法應對這復雜的市場。為此,在選題過程中,我選擇了超市管理系統(tǒng)設計題目,依靠現(xiàn)代化的計算機信息處理技術來管理超市,從而節(jié)省了大量的人力、物力,改善了員工的工作條件,減輕了勞動強度,并且能夠快速反映出商品的進、銷、存等狀況和各種反饋信息分析,使管理人員快速對市場的變化做出相應的決策,加快超市經營管理效率。隨著小超市規(guī)模的發(fā)展不斷擴大,商品數(shù)量急劇

5、增加,有關商品的各種信息量也成倍增長。超市時時刻刻都需要對商品各種信息進行統(tǒng)計分析。而大型的超市管理系統(tǒng)功能過于強大而造成操作繁瑣降低了小超市的工作效率。超市管理系統(tǒng)是市場上最流行的超市上常用的系統(tǒng)之一,它主要包含以下幾個模塊:系統(tǒng)權限的設定、原始數(shù)據錄入、數(shù)據的匯總及查詢等。從而,實現(xiàn)對進貨、銷售及員工信息等實現(xiàn)全面、動態(tài)、及時的管理。超市需要處理大量的庫存信息,還要時刻更新產品的銷售信息,不斷添加商品信息。面對不同種類的信息,需要合理的數(shù)據庫結構來保存數(shù)據信息,需要有效的程序結構支持各種數(shù)據操作的執(zhí)行。1.3 系統(tǒng)開發(fā)平臺 通過研究超市倉庫管理系統(tǒng)任務書,并對該系統(tǒng)進行實際需求分析,該系統(tǒng)

6、采用了面向對象的VC軟件作為開發(fā)工具,其功能強大、安全、跨平臺、簡單、適用于網絡。該系統(tǒng)數(shù)據庫采用了我們較為熟悉的SQL數(shù)據庫作為該系統(tǒng)的后臺數(shù)據庫支持。 1.4 系統(tǒng)運行環(huán)境 Windows系統(tǒng)具有完全可視化窗體,直觀、高效的面向對象的圖形用戶界面,具有普遍的使用人群,所以我們決定該超市倉庫管理系統(tǒng)將運行在WINDOWS操作系統(tǒng)下。在 WINDOWS95/98/2000/XP下等都可以運行。本次課程設計是在WINDOWS XP下運行的。 采用VC作為開發(fā)工具,SQL數(shù)據庫作為該系統(tǒng)的后臺數(shù)據庫支持創(chuàng)建超市倉庫管理系統(tǒng)。第二章 可行性研究 在IT行業(yè)中從業(yè)的工作人員一般都要求掌握計算機技術,具

7、有一定的軟硬件基礎,會使用各種管理軟件,熟悉IT產品。因為,有的超市對員工的素質要求比較高,從管理層到下面的銷售人員,都要求具有一定的計算機基礎,所以在新系統(tǒng)投入使用時,只要對員工進行少量的培訓,系統(tǒng)的功能和使用方法就基本上能夠是系統(tǒng)順利運行。在軟件開發(fā)方面,由于編程語言較多,而 VC 語言是一種面向對象的編程工具,VC 語言 是一種代碼簡單,易懂和維護的編程語言,為開發(fā)超市庫存管理系統(tǒng)提供技術支持。VC 不僅基于不同的平臺開發(fā),而且可以在不同的系統(tǒng)上進行移植,從而加快了軟件的開發(fā),促進了發(fā)展。 超市庫存管理系統(tǒng)就是基于這種簡單的語言,以 SQL 作為數(shù)據庫的后臺,訪問數(shù)據 庫,使軟件的開發(fā)更

8、為簡單,同時也提高了開發(fā)的速度。2.2 經濟可行性研究因為通過網絡傳遞銷售信息可以不受距離的限制,因此可以借閱許多的人力和物力,方便管理,由此可以減少不必要的開支,同時該系統(tǒng)可以提高超市的銷售效率,即提高了超市的經濟效益,所以從經濟上完全是可行的。開發(fā)新系統(tǒng)的工作是一項間距復雜的工作,它的投資主要是人力和物力的投資。對于本系統(tǒng)的開發(fā)者來說,其主要投資還是在人力和物力兩個方面。如果是企業(yè)自己安排人手開發(fā)系統(tǒng)的話,其主要的投資還是在人力資源上,從系統(tǒng)的業(yè)務需求調查到系統(tǒng)的分析編碼制作都是需要巨大的人力投入的。軟件企業(yè)作為一個簡短的高科技產業(yè),其員工要求都比一般企業(yè)的要求要高,而且對系統(tǒng)開發(fā)及軟件產

9、業(yè)了解比較多,所以在自我開發(fā)管理系統(tǒng)的過程中,企業(yè)自己比較容易安排人手,這樣就可以為企業(yè)借閱大部分的額外開支。同時軟件就其它產品來說,屬于高端行業(yè),無論是產品的價格還是質量都比較高,而經營產品的經銷商或者是商家都要求有雄厚的資金支持。所以,在系統(tǒng)的開發(fā)過程中,企業(yè)完全有能力承擔開發(fā)費用。管理系統(tǒng)是一個信息化、智能化和先進管理理念的集合體。而管理是一個動態(tài)過程,在其運行過程中要采取多項措施。所以在管理中獲得經濟效益是一個綜合效益,要對它進行直接定量的分析是比較困難的。一般新系統(tǒng)帶來的經濟效益是簡介的,其最主要的表現(xiàn)就是減少了企業(yè)管理費用和人力開支。而其它一些繁瑣的食物都通過新系統(tǒng)來加以分析解決,

10、不僅節(jié)省了大量的時間,還為企業(yè)的各項決策提供了寶貴的資料,為企業(yè)帶來巨大的經濟效益。本系統(tǒng)采用基于Windows的圖形用戶界面,而該系統(tǒng)是大家熟悉的操作系統(tǒng),對于那些有一般的計算機知識的人員就可以輕松上手。而整個超市管理系統(tǒng)采用最友好的交互界面,簡介明了,不需要對數(shù)據庫進行深入的了解。由此,該系統(tǒng)的操作是可行的,有必要開發(fā)該系統(tǒng)。綜合以上三方面,該系統(tǒng)具有很高的開發(fā)可行性,無論是從技術上或者經濟上還是操作上。第三章 需求分析功能需求本系統(tǒng)采用自定向下方法開發(fā),為了適應社會的發(fā)展和超市管理的需要,可以在原有功能之上進行對系統(tǒng)功能的補充和調整,從而進一步完善其需要。通過以上的需求分析,初步確定該系

11、統(tǒng)功能主要包括以下幾個模塊: 1.系統(tǒng)登錄:根據提供的用戶名、初始密碼進行登錄驗證,如果成功則進入系統(tǒng),否則提示無法登錄。2.商品入庫:根據商品編號的首字母來進行商品的分類,如果輸入的商品在數(shù)據庫中存在,則給出已有的信息,可以修改數(shù)量;如果輸入的商品不存在,則需要輸入全部信息。3.商品出庫:用于商品從倉庫售出的處理模塊。通過調用該模塊,用戶將商品的出庫信息添加到倉庫信息中 4.商品查詢:分類列出數(shù)據庫里全部的商品信息。5.商品更改、刪除:當商品售出對數(shù)量進行修改,或對其他信息進行修改,商品刪除,商品數(shù)量為0則進行刪除。超市倉庫管理系統(tǒng)頂層數(shù)據流圖如下:商品匯總報表訂貨報表出庫單入庫單商品檢驗商

12、品分析計劃超市倉庫管理系統(tǒng)計劃部門倉庫管理員銷售部門送貨員 超市倉庫管理系統(tǒng)頂層數(shù)據流2.超市倉庫管理系統(tǒng)0層數(shù)據流圖如下: 超市倉庫管理系統(tǒng)頂層數(shù)據流3.入庫信息管理1層數(shù)據流圖如下: 圖3.3 入庫信息管理1層數(shù)據流4.出庫信息管理1層數(shù)據流圖如下: 圖3.4 出庫信息管理1層數(shù)據流3.3 數(shù)據字典 數(shù)據字典是關于數(shù)據的信息的集合,它的作用是在軟件分析和設計過程中提供關于數(shù)據的描述信息。數(shù)據字典和數(shù)據流圖共同構成系統(tǒng)的邏輯模型。數(shù)據字典定義數(shù)據的方法就是對數(shù)據自頂向下地分解,當分解到不需要進一步定義,每個和工程有關的人員都清楚其含義的元素時,這種分解過程就結束了。本倉庫管理系統(tǒng)根據劃分的模

13、塊定義了如下數(shù)據字典:名字:產生報表別名: 描述:按順序排列的訂貨信息的總表定義:產生報表貨物編號+貨物名稱+訂貨數(shù)量+目前價格+主要供應者+次要供應者位置:訂貨報表 訂貨信息 庫存清單 名字: 庫存信息 別名:庫存清單描述:當前倉庫所有的貨物的信息定義:庫存信息貨物編號+貨物名稱+貨物數(shù)量+貨物價格+供應商+倉庫號+日期位置:訂貨報表 訂貨信息 產生報表名字: 入庫信息表別名: 入庫信息描述: 作為倉庫管理日志和資料,是更新倉庫貨物記錄、保證庫存貨物統(tǒng)一管理的依據定義: 入庫信息表貨物編號+貨物名稱+貨物數(shù)量+貨物價格+供應商+倉庫號+日期位置:輸出到打印機名字: 出庫信息表別名: 出庫信息

14、描述:作為倉庫管理日志和資料,是更新倉庫貨物記錄、保證庫存貨物統(tǒng)一管理的依據定義:出庫信息表貨物編號+貨物名稱+貨物數(shù)量+貨物價格+供應商+倉庫號+日期位置:輸出到打印機名字:訂貨報表別名:訂貨信息描述:每天一次送給采購員的需要定貨的貨物表定義:訂貨報表貨物編號+貨物名稱+訂貨數(shù)量+目前價格+主要供應者+次要供應者位置:輸出到打印機名字: 貨物編號別名: 描述:唯一標識庫存清單中一個特定貨物的關鍵域定義:貨物編號8字符8位置:訂貨報表 訂貨信息 庫存清單 事務 入庫單 出庫單 名字:訂貨數(shù)量別名: 描述:某個貨物一次定貨的數(shù)量定義:訂貨數(shù)量1數(shù)字5位置:訂貨報表 訂貨信息 名字: 貨物名稱別名

15、: 描述:貨物的名字定義:位置:訂貨報表 訂貨信息 庫存清單 事務 入庫單 出庫單名字:貨物數(shù)量別名: 描述: 入/出庫總的貨物數(shù)量定義:貨物數(shù)量0數(shù)字7位置:入庫單 出庫單名字: 當前價格別名: 描述:特定貨物的單價定義:貨物價格1數(shù)字5位置:訂貨報表 訂貨信息 庫存清單 事務 名字:供應商別名: 描述: 提供貨物的商家定義:供應商8字符8位置:訂貨報表 訂貨信息 庫存清單 入庫單 出庫單名字: 倉庫號別名: 描述:唯一標識貨物存放的地點定義:倉庫號8字符8位置:入庫單 出庫單名字:價格別名: 描述: 貨物入/出庫貨物的單價以及總價定義:價格1數(shù)字5位置:入庫單 出庫單名字: 日期別名: 描

16、述:貨物入/出庫的更新日期定義:日期8字符位置:入庫單 出庫單名字:入庫單別名: 描述:每天入庫貨物的信息匯總定義:入庫單貨物編號+貨物名稱+貨物數(shù)量+貨物價格+供應商+倉庫號+當前日期 位置:庫存清單 入庫單 出庫單名字: 出庫單別名: 描述:每天出庫貨物信息的匯總定義:出庫信息表貨物編號+貨物名稱+貨物數(shù)量+貨物價格+供應商+倉庫號+當前日期位置:庫存清單 入庫單 出庫單名字:有效單據別名: 描述:目前有用的入庫出庫信息單據定義:日期+入出庫貨物信息位置:入庫單 出庫單名字: 無效單據別名: 描述:目前無用的入庫出庫信息單據定義:日期+入出庫貨物信息位置:入庫單 出庫單3.4 建立E-R圖

17、通常使用實體-聯(lián)系圖來建立數(shù)據模型,可以把實體-聯(lián)系圖簡稱為E-R圖,相應地可以把E-R圖描繪的數(shù)據模型稱為E-R模型。E-R圖中包含了實體(即數(shù)據對象)、關系和屬性等三種基本成分。通常,用矩形框代表實體,用連接相關實體的菱形框表示關系,用橢圓或圓角矩形表示實體或關系的屬性,并用直線把實體(或關系)與其屬性連接起來。1.超市倉庫管理系統(tǒng)數(shù)據庫E-R模型,如圖3.5所示:2.預訂單實體E-R圖如下:3.入庫單實體E-R圖如下: 4.商品庫存實體E-R圖如下: 5.商品信息實體E-R圖如下: 6.商品出庫單實體E-R圖如下: 第四章 概要設計 1.系統(tǒng)分成系統(tǒng)登錄、商品入庫、商品出庫、商品查詢、商

18、品更改、刪除等幾個功能模塊。但這些模塊都進行集中式管理。 2.分層的模塊化程序設計思想,整個系統(tǒng)采用模塊化結構設計。作為應用程序有較強的可操作性和擴展性。 3.合理的數(shù)據流設計,在應用系統(tǒng)設計中,相對獨立的模塊間以數(shù)據流相互連接,使各模塊間的耦合性較低,方便系統(tǒng)運行,提高系統(tǒng)安全性。每個模塊又包含多項子功能:(1)登錄模塊:對登陸系統(tǒng)的用戶進行身份驗證,確定用戶是否擁有使用該系統(tǒng)的資格,任何用戶登陸系統(tǒng)都調用此模塊。 (2)進行身份驗證:根據提供的用戶名、初始密碼進行登錄驗證,如果成功則進入系統(tǒng),否則提示無法登錄。商品入庫:用于新的商品添加到倉庫的處理模塊入庫的商品信息:根據商品編號的首字母來

19、進行商品的分類,如果輸入的商品在數(shù)據庫中存在,則給出已有的信息,可以修改數(shù)量;如果輸入的商品不存在,則需要輸入全部信息。商品查詢:供系統(tǒng)使用人員對商品信息進行查詢的模塊。列出商品信息:分類列出數(shù)據庫里全部的商品信息。商品修改:供系統(tǒng)使用人員對商品信息進行修改的模塊。對商品進行修改:選擇需修改的商品信息進行修改。商品出庫:用于舊的商品從倉庫中輸出。出庫的商品信息:根據商品編號的首字母來進行商品的分類,如果輸入的商品在數(shù)據庫中存在,則選擇輸出,可以修改數(shù)量;如果輸入的商品不存在,則不需要輸出。商品刪除:用于商品數(shù)量的刪除。商品數(shù)量的刪除:商品數(shù)量是零。4 系統(tǒng)功能模塊設計 在系統(tǒng)功能分析的基礎上,

20、考慮到Visual c+程序編制的特點,得到如下圖所示的系統(tǒng)功能模塊圖。圖4.1 系統(tǒng)功能模塊狀態(tài)圖(也叫狀態(tài)轉換圖)通過描繪系統(tǒng)狀態(tài)及引起系統(tǒng)轉換的事件來表示系統(tǒng)的行為。此外,狀態(tài)圖還指明了作為特定事件的結果系統(tǒng)將做哪些動作。因此,可以用狀態(tài)圖建立軟件系統(tǒng)的行為模型。在狀態(tài)圖中第一的狀態(tài)主要有:初態(tài)、終態(tài)和中間狀態(tài),在一張狀態(tài)圖中只能有一個初態(tài),而終態(tài)則可以有0個至多個。在狀態(tài)圖中,初態(tài)用實心圓表示,終態(tài)用一對同心圓(內圓為實心圓)表示。中間狀態(tài)用圓角矩形表示,可以使用兩條水平橫線把它分成上、中、下3個部分,分別防止狀態(tài)名、狀態(tài)變量和活動表。事件是在某個特定時刻發(fā)生的事情,它是對引起系統(tǒng)動作

21、或(或)從一個狀態(tài)轉換到另一個狀態(tài)的外界事件的抽象。狀態(tài)圖中兩個狀態(tài)之間帶箭頭的連線表示狀態(tài)轉換,箭頭指明了轉換的方向。狀態(tài)轉換通常是由事件觸發(fā)的,在這種情況下應該在表示狀態(tài)轉換的箭頭上標出觸發(fā)事件表達式。1.超市倉庫管理登陸轉換圖如下:登陸界面驗證帳戶輸入密碼不合法帳戶驗證權限合法帳戶查詢、修改自身信息;修改其他用戶權限;添加新用戶;查詢、修改、注銷、添加客戶信息;查詢、修改、添加、刪除產品信息;查詢、修改、添加、刪除出、入庫信息查詢、修改自身信息;查詢客戶信息;查詢出、入庫信息;查詢產品信息管理權限普通權限圖4.2 超市倉庫管理登陸轉換圖2.超市倉庫管理入庫、出庫狀態(tài)轉換圖如下: 圖4.3

22、 .超市倉庫管理入庫、出庫狀態(tài)轉換第五章 詳細設計超市倉庫管理系統(tǒng)它主要包括系統(tǒng)登錄、商品入庫、商品出庫、商品查詢、商品更改、刪除等幾個功能模塊。本次課程設計主要對系統(tǒng)登陸模塊、商品入庫模塊進行詳細設計。數(shù)據庫的物理結構設計是指為給頂?shù)囊粋€邏輯數(shù)據模型選擇最適合應用環(huán)境的物理結構。關系數(shù)據庫的物理結構主要是指數(shù)據的存取方法和存儲結構。數(shù)據庫的物理結構設計分為兩個部分,首先是確定數(shù)據庫的物理結構,其次是對所設計的物理結構進行評估。為確定數(shù)據庫的物理結構,設計人員必須了解下面的幾個問題。(1)詳細了解給定的DBMS的功能和特點,特別是該DBMS所提供的物理環(huán)境和功能;(2)熟悉應用環(huán)境,了解所設計

23、的應用系統(tǒng)中各部分的重要程度、處理頻率、對響應時間的要求,并把它們作為物理結構設計過程中平衡時間和空間效率時的依據;(3)了解外存設備的特性, 如分塊原則、塊因子大小的規(guī)定、設備的I/O特性等。2.在對上述問題進行了全面的了解之后,就可以進行物理結構的設計了。一般地,物理結構設計的內容包括如下幾個方面。(1)確定數(shù)據的存儲結構。在此過程中需考慮存取時間、空間效率和維護代價間的平衡,如在引入冗余數(shù)據以加快存取速度時應兼顧系統(tǒng)的空間效率。(2)選擇合適的存取路徑,例如確定應該為哪些關系模式建立索引,索引關鍵字是什么等。(3)確定數(shù)據的存放位置,例如確定數(shù)據存放在一個磁盤上還是多個磁盤上,什么數(shù)據該

24、存放在高速存儲器上,什么應該存放在低速存儲器上等。(4)確定存取分布,許多DBMS都提供了一些存儲分配參數(shù)供設計者使用,例如緩沖區(qū)的大小和個數(shù)、塊的長度、塊因子的大小等,設計者必須規(guī)定其中的一些參數(shù)的位置。數(shù)據庫表的結構具體情況如下:表5-1預定單表字段名稱數(shù)據類型說明預定單號int(4)主鍵,不能為空商品號int(4)不能為空商品名char(50)不能為空數(shù)量int(4)不能為空價格money(8)不能為空供應商char(50)可以為空采購員Char(10)不能為空收貨時間int(4)不能為空表5-2入庫單表字段名稱數(shù)據類型說明入庫單編號int(4)不能為空,主鍵商品號int(4)不能為空商

25、品名Char(50)不能為空數(shù)量int(4)不能為空價格money(8)不能為空入庫時間datetime(8)不能為空采購員char(10)不能為空倉庫管理人員char(10)不能為空預定單號char(10)不能為空表5-3商品庫存表字段名稱數(shù)據類型說明商品號int(4)不能為空,主鍵商品名char(50)不能為空商品最大庫存int(4)不能為空商品現(xiàn)有庫存int(4)不能為空表5-4出庫單表字段名稱數(shù)據類型說明出庫數(shù)量int(4)不能為空商品號int(4)不能為空,主鍵商品名char(50)不能為空倉庫管理員char(10)不能為空出庫時間datetime(8)不能為空表5-6商品信息表字段

26、名稱數(shù)據類型說明商品號int(4)不能為空,主鍵商品名char(10)不能為空商品數(shù)量int(4)不能為空商品產地char(10)不能為空生產日期Datetime(8)不能為空保質期char(10)不能為空商品進價int(4)不能為空備注Char(50)可以為空由于在物理設計過程中需要考慮的因素很多,包括時間和空間效率、維護代價和用戶的要求等,對這些因素進行權衡后,可能會產生多種物理設計方案。這一階段需對各種可能的設計方案進行評價,評價的重點是系統(tǒng)的時間和空間效率,并從多個方案中選出較優(yōu)的物理結構。 數(shù)據庫邏輯結構設計的任務是根據E-R模型和需求分析所產生的文檔,并綜合考慮所選擇的具體DBMS

27、的特點,設計出整個數(shù)據庫的邏輯結構。一般來說,選擇哪一種DBMS存放數(shù)據,是由系統(tǒng)分析員和用戶(一般是企業(yè)的高級管理人員)決定的。需要考慮的因素包括DBMS產品的性能和價格,以及所設計的應用系統(tǒng)的功能復雜程度。如果選擇的是關系型DBMS產品,那么邏輯結構的設計就是指設計數(shù)據庫中所包含的各個關系模式的結構,包括關系模式的名稱、每一關系模式中各屬性的名稱、數(shù)據類型和取值范圍等內容。邏輯結構的設計過程是:首先,根據需求階段的設計結果和具體的DBMS產品的特點,將全局E-R模型轉換成一個初始的關系模型。然后,對其中的每個關系模式進行分析,判斷是否存在不合理的關系模式,如有則利用關系模式的規(guī)范化方法消除

28、之。 將超市倉庫管理系統(tǒng)的E-R圖轉換成關系模式為: (1)預訂單(預訂單號,商品號,商品名,數(shù)量,價格,供應商,采購員,收貨時間); (2)入庫單(入庫單編號,商品號,商品名,數(shù)量,價格,入庫時間,采購員,倉庫管理人員,預訂單號); (3)商品庫存表(商品號,商品名,商品最大庫存,商品現(xiàn)有庫存); (4)出庫單(出庫數(shù)量,商品號,商品名,倉庫管理員,出庫時間);商品信息(商品號,商品名,商品數(shù)量,商品產地,生產日期,保質期,商品進價,備注);5.3 模塊功能設計本次課程設計主要對系統(tǒng)登陸模塊、商品入庫模塊、商品出庫模塊進行詳細設計。功能描述對登陸系統(tǒng)的用戶進行身份驗證,確定用戶是否擁有使用該

29、系統(tǒng)的資格,任何用戶登陸系統(tǒng)都調用此模塊。主要算法if 用戶名 and 口令 正確以該用戶身份進入系統(tǒng)總控制界面并獲得響應系統(tǒng)權限else提示“用戶名或口令錯誤”累計錯誤三次,自動關閉本系統(tǒng)end if功能描述產品出庫功能模塊是用于產品從倉庫售出的處理模塊。通過調用該模塊,用戶將產品的出庫信息添加到倉庫信息中。調用方式用戶在主控制界面中選擇相應選項打開產品出庫界面,在界面中填寫相應出庫信息。主要算法產品名下拉列表:選擇出庫產品的名稱。出庫量輸入框:用于輸入售出的產品的數(shù)量。(按產品類型確定單位)出庫按鈕觸發(fā)的處理:將用戶填寫的產品出庫信息添加到庫存的產品信息中。重置按鈕觸發(fā)的處理:將用戶填寫的

30、產品入庫信息清空重新填寫。退出按鈕觸發(fā)的處理:關閉產品出庫窗口并返回主控制界面。第六章 編碼與測試 本次課程設計主要對系統(tǒng)登陸模塊、商品出庫模塊進行編碼與測試。 (1)功能:用戶輸入用戶名和密碼后,系統(tǒng)進行驗證,驗證通過進入程序的主界面。圖6.1 登陸模塊界面 (2)部分主要代碼如下: public bool Veri(string tb_table, string Id, string Pwd) DataClass.MyMeans MyClass = new SMMS.DataClass.MyMeans(); bool jud = false; if (Id != & Pwd != ) Sq

31、lDataReader temDR = MyClass.getcom(select * from + tb_table + where UserName= + Id.Trim() + and Pass= + Pwd.Trim() + ); jud = temDR.Read(); if (jud) DataClass.MyMeans.Login_Name = Id.Trim(); DataClass.MyMeans.Login_ID = temDR.GetString(0); DataClass.MyMeans.My_con.Close(); DataClass.MyMeans.My_con.D

32、ispose(); else MessageBox.Show(用戶名或密碼錯誤!, 提示, MessageBoxButtons.OK, MessageBoxIcon.Information); MyClass.con_close(); else MessageBox.Show(請將登錄信息添寫完整); return jud; (1) 功能:這里包括常用的對倉庫的基本業(yè)務的處理的過程,包括物品的出庫的管理的過程,能夠準確的反映對倉庫的管理的過程的實現(xiàn)的過程。圖6.2 出庫模塊界面(2)部分主要代碼如下: private void btnAdd_Click(object sender, Event

33、Args e) bool t = false; string txt; string RecID; if (txtID.Text = ) MessageBox.Show(請輸入商品名稱!); txtID.Focus(); else if (txtAmount.Text = ) MessageBox.Show(請輸入商品數(shù)量!); txtAmount.Focus(); else txt =txtID.Text.Trim(); SqlDataReader temDR = MyDataClass.getcom(select * from tb_Goods where GoodsID = + txt

34、+ ); t = temDR.Read(); if (!t) MessageBox.Show(此商品不存在!); txtID.Text = ; txtID.Focus(); else string Find_SQL2; string RecID2; try string GoodsID; string SupplierID; string datep; string dateb; datep =comPy.Text + / + comPm.Text + / + comPd.Text; dateb = comBy.Text + / + comBm.Text + / +comBd.Text; Go

35、odsID = txtID.Text; SupplierID = My_Set.Tables0.RowscomSupplier.SelectedIndex0.ToString(); RecID = MyMC.GetAutocoding(tb_Buy, BuyID);/獲取編號 RecID2 = MyMC.GetAutocoding(tb_Stock, StockID);/獲取編號 Find_SQL = insert into tb_Buy(BuyID,GoodsID,EmployeeID,Price,Amount,Datep,Dateb,SupplierID,Remark) values (

36、+ RecID + , +txtID.Text + , + DataClass.MyMeans.Login_Name + ,+txtPrice.Text +,+ txtAmount.Text+ ,+datep+,+dateb+,+SupplierID+,+txtRemark.Text+); Find_SQL2 = Update tb_Stock set Amount = Amount + +txtAmount.Text+where GoodSID=+GoodsID+; MyDataClass.getsqlcom(Find_SQL); MyDataClass.getsqlcom(Find_SQL

37、2);/向庫存添加信息 MessageBox.Show(添加成功!); ListViewItem l = new ListViewItem(); l.Text =RecID; l.SubItems.Add(txtID.Text); l.SubItems.Add(txtPrice.Text); l.SubItems.Add(txtAmount.Text); l.SubItems.Add(comSupplier.Text); l.SubItems.Add(txtRemark.Text); listView1.Items.Add(l); btnCancle_Click(sender, e); catch (Exception ec) MessageBox.Show(e

溫馨提示

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

最新文檔

評論

0/150

提交評論