倉庫管理系統(tǒng)論文(VB做的)1111_第1頁
倉庫管理系統(tǒng)論文(VB做的)1111_第2頁
倉庫管理系統(tǒng)論文(VB做的)1111_第3頁
倉庫管理系統(tǒng)論文(VB做的)1111_第4頁
倉庫管理系統(tǒng)論文(VB做的)1111_第5頁
已閱讀5頁,還剩35頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

1、摘 要庫存管理系統(tǒng)是典型的信息管理系統(tǒng)(MIS),其開發(fā)主要包括后臺數(shù)據(jù)庫的建立和維護以及前端應(yīng)用程序的開發(fā)兩個方面。對于前者要求建立起數(shù)據(jù)一致性和完整性強.數(shù)據(jù)安全性好的庫。而對于后者則要求應(yīng)用程序功能完備,易操作易使用等特點。經(jīng)過分析如此情況,我決定使用微軟公司的Visual Basic 6為開發(fā)工具,利用其提供的各種面向?qū)ο蟮拈_發(fā)工具,尤其是ADO,是能方便而簡潔操縱數(shù)據(jù)庫的智能化對象,短期內(nèi)就可以開發(fā)出用戶滿意的可行系統(tǒng)。主題詞:倉庫管理;數(shù)據(jù)庫;VB6;ADOABSTRACTWarehouse manage system is a typical MIS. It mostly inc

2、ludes the foundation and maintenance of the database and the development of the client application program. For the former we must establish a better database, which has well data consistency and data security. For the latter we must make the program has self-contained function and easy to be use.By

3、 analyzing the situation, we use the VB6 of the Microsoft Company as client tool. VB6 is very easy to be use and it has many useful tools, especially ADO object, which can easily conveniently manipulate the database. We use it can develop a satisfactory system in short timeKey Words:Warehouse manage

4、ment;Database;Visual Basic 6;ADO第 i 頁第一章 緒論1.1 選題背景隨著計算機技術(shù)的發(fā)展,計算機管理已越來越多地運用到了各個領(lǐng)域。在現(xiàn)代企業(yè)的各個環(huán)節(jié)已離不開計算機了。各種各樣的管理軟件也應(yīng)運而生。企業(yè)的庫存物資管理往往是很復(fù)雜、很繁瑣的。由于所掌握的物料種類眾多,訂貨、管理、發(fā)放的渠道各有差異,各個企業(yè)之間的管理體制不盡相同,各類統(tǒng)計報表繁多,因此倉庫管理必須編制一套倉庫管理信息系統(tǒng),實現(xiàn)計算機化操作,而且必須根據(jù)企業(yè)的具體情況制定相應(yīng)的方案。一般倉庫管理系統(tǒng),總是根據(jù)所掌握的物資類別,相應(yīng)分成幾個部門來進行物料的計劃,訂貨,核銷托收,驗收入庫,根據(jù)企業(yè)各個

5、部門的需求來發(fā)送物資設(shè)備,并隨時按期進行庫存盤點,作臺帳,根據(jù)企業(yè)管理的需要按月、季度、年度進行統(tǒng)計分析,產(chǎn)生相應(yīng)報表。根據(jù)我公司的實際情況分析,一般的倉庫管理系統(tǒng)并不能滿足公司的需求,而且每套系統(tǒng)的成本也過高。因此有必要開發(fā)一套特定的倉庫管理系統(tǒng)來提高公司的工作效率,減少因人為因素而導(dǎo)致的物料損失。通過對這些情況的仔細(xì)調(diào)查,我開發(fā)了下面的倉庫管理系統(tǒng)。1.2 設(shè)計目標(biāo)倉庫管理系統(tǒng)可主要實現(xiàn)下列目標(biāo):· 操作簡單方便、界面簡潔美觀。· 能完成倉庫的各種日常操作。· 能很好的預(yù)防各自人為因素產(chǎn)生的錯誤操作· 能夠為用戶提供多種條件的查詢操作,為物料管理提供

6、準(zhǔn)確及時的數(shù)據(jù)· 可實現(xiàn)盤點報表及盤點后的物料調(diào)整· 具有很好的安全性,以保證數(shù)據(jù)的正確性· 可追溯數(shù)據(jù)的歷史信息,為系統(tǒng)完善提供依據(jù)第二章 相關(guān)理論基礎(chǔ)本系統(tǒng)主要采用VB6 + Access2000相結(jié)合的技術(shù)來進行開發(fā),用戶界面的設(shè)計是用VB6來進行的,后臺數(shù)據(jù)庫使用Access2000。與數(shù)據(jù)庫的連接則使用ADO的相關(guān)功能來完成的。在系統(tǒng)需涉及的一些相關(guān)技術(shù)概述如下。2.1 Visual Basic 6Visual意為“可視化的”,指的是一種開發(fā)圖形用戶界面的方法,所以Visual Basic是基于Basic的可視化的程序設(shè)計語言。在Visual Basic

7、中,一方面繼承了Basic所具有的程序設(shè)計語言簡單易用的特點,另一方面在其編程系統(tǒng)中采用了面向?qū)ο?、事件?qū)動的編程機制,用一種巧妙的方法把Windows的編程復(fù)雜性封裝起來,提供了一種所見即所得的可視化程序設(shè)計方法。VB6是指Visual Basic 6.0的版本。 2.1.1 Visual Basic 6的功能特點A) 具有面向?qū)ο蟮目梢暬O(shè)計工具:在VB中,應(yīng)用面向?qū)ο蟮某绦蛟O(shè)計方法(OOP),把程序和數(shù)據(jù)封裝起來視為一個對象,每個對象都是可視的。程序員在設(shè)計時只需用現(xiàn)有工具根據(jù)界面設(shè)計要求,直接在屏幕上“畫”出窗口、菜單、按鈕、滾動條等不同類型的對象,并為每個對象設(shè)置屬性。程序員的編程工

8、作僅限于編寫相關(guān)對象要完成的功能程序,因而程序設(shè)計的效率可大大提高。B) 事件驅(qū)動的編程機制:事件驅(qū)動是非常適合圖形用戶界面的編程方式。在圖形用戶界面的應(yīng)用程序中,是由用戶的動作即事件掌握著程序運行的流向,每個事件都能驅(qū)動一段程序的運行。程序員只要編寫響應(yīng)用戶動作的代碼,而各個動作之間不一定有聯(lián)系。C) 提供了易學(xué)易用的應(yīng)用程序集成開發(fā)環(huán)境:在VB集成開發(fā)環(huán)境中,用戶可設(shè)計界面、編寫代碼、調(diào)試程序,直至把應(yīng)用程序編譯成可執(zhí)行文件在Windows中運行,使用戶在友好的開發(fā)環(huán)境中工作。D) 結(jié)構(gòu)化的程序設(shè)計語言:VB6具有豐富的數(shù)據(jù)類型和結(jié)構(gòu)化程序結(jié)構(gòu),作為一種程序設(shè)計語言,它還有如下一些特點:強

9、大的數(shù)值和字符串處理功能;豐富的圖形指令,可方便地繪制各種圖形;提供靜態(tài)和動態(tài)數(shù)組,有利于簡化內(nèi)存的管理;過程可遞歸調(diào)用,使程序更為簡練;支持隨機文件和順序文件的訪問;提供了一個可供應(yīng)用程序調(diào)用的包含多種類型的圖標(biāo)庫;具有完善的運行出錯處理。E)支持多種數(shù)據(jù)庫系統(tǒng)的訪問:利用數(shù)據(jù)控件可訪問的數(shù)據(jù)庫系統(tǒng)有:Microsoft Access、SQL server、DBASE、Microsoft FoxPro和Oracle等,也可以訪問Microsoft Excel、Lotus1-2-3等多種電子表格。F)支持動態(tài)數(shù)據(jù)交換(DDE)、動態(tài)鏈接庫(DLL)和對象的鏈接與嵌入(OLE)技術(shù)。G)完備的H

10、ELP聯(lián)機幫助功能:與Windows環(huán)境下的軟件一樣,在VB中,利用幫助菜單和F1功能鍵,用戶可以隨時方便地得到所需要的幫助信息。VB幫助窗口中顯示了有關(guān)的示例代碼,通過復(fù)制、粘貼操作可獲取大量的示例代碼,為用戶的學(xué)習(xí)和使用提供了極大的方便。 VB程序設(shè)計的概念就是面向?qū)ο蟮母拍?,對象就是?shù)據(jù)(DATA)和代碼(CODE)互相結(jié)合的綜合體。Windows上面的每一個圖標(biāo),包括窗口本身都是對象,如果沒有任何事情發(fā)生,對象處于停頓狀態(tài)。當(dāng)存在外來事件時,程序段執(zhí)行,它的執(zhí)行是由外來事件決定的。因此是“事件”驅(qū)動的。 編寫VB程序較為簡單,首先將各個對象放在空白窗體上,然后將程序代碼分別添加給對象或

11、圖標(biāo),將它們組合起來就可以隨意運行了。 在VB中,窗體實際上是一個對象,VB的窗體含有許多內(nèi)嵌特性,這使得用戶界面部分的建立像是從一個目錄中挑選一個個合適的控件,而不是從零開始一步一步地建立控件。這種開發(fā)者能親眼看到的程序設(shè)計過程就是“可視化程序設(shè)計”(Visual Programming)。2.1.2 Visual Basic 6中的基本概念對象:面向?qū)ο缶幊蹋∣OP)的提法大家一定也很耳熟,雖然Visual Basic并不是完全的面向?qū)ο缶幊?,但也利用了對象編程技術(shù)。對象簡單地說就是大家經(jīng)??吹降母鞣N窗口、按鈕、文本框甚至打印機等。屬性:如同電視有黑白、彩色之分一樣,作為對象的Window

12、s中的窗口也是有大有小,文本框的位置不可能完全一樣,菜單要顯示出不同的功能,這些都是由對象的屬性決定的。不同對象的屬性可能不同。屬性一般決定了對象的位置、大小、顯示等情況。方法:就是對象能夠做的事,如打印機對象就有打印(Print)方法、窗口對象支持隱藏(Hide)方法、很多對象支持移動(Move)方法等。事件:就是對象對用戶各種操作的反映情況。如用戶用鼠標(biāo)按一下按鈕,就會觸發(fā)按鈕的“按”(Click)事件。控件:控件就是Visual Basic提供的編程用的模塊,與對象有直接的聯(lián)系,如同積木的木塊,使用這樣的控件,就可以像拼圖或堆積木一樣“搭”、“拼”你的程序界面。Visual Basic中

13、使用控件,簡化了Windows中的窗口、按鈕等對象的編程設(shè)計。每個控件都有各自的屬性、事件及方法。只需修改這些特征你就可以隨心所欲地編程了。最重要的是,你可以利用成千上萬的各種擴充的控件來快速構(gòu)造幾乎能滿足你任何要求的程序。例如,如果你不滿意Windows簡陋的媒體播放器,你就可以使用VB的多媒體控件在1小時以內(nèi)設(shè)計一個完全自己風(fēng)格的能夠播放CD、VCD的多媒體播放器,而功能完全與之相當(dāng)。2.2 Access2000數(shù)據(jù)庫作為Microsoft的office套件產(chǎn)品之一,Access已經(jīng)成為世界上最流行的桌面數(shù)據(jù)庫系統(tǒng)。Access與許多優(yōu)秀的關(guān)系數(shù)據(jù)庫一樣,可以讓你很容易地連接相關(guān)的信息而且

14、還對其他的數(shù)據(jù)庫系統(tǒng)有所補充。它能操作其它來源的資料,包括許多流行的PC數(shù)據(jù)庫程序(如dBase,Paradox,Microsoft FoxPro)和服務(wù)器、小型機及大型機上的許多SQL數(shù)據(jù)庫。Access還完全支持Microsoft的OLE技術(shù)。Access還提供windows操作系統(tǒng)的高級應(yīng)用程序開發(fā)系統(tǒng)。Access與其它數(shù)據(jù)庫開發(fā)系統(tǒng)之間相當(dāng)顯著的區(qū)別就是:您不用寫一行代碼,就可以在很短的時間里開發(fā)出一個功能強大而且相當(dāng)專業(yè)的數(shù)據(jù)庫應(yīng)用程序,并且這一愉快的過程是完全可視的!如果您能給它加上簡短的VBA代碼,那么您的程序決不比專業(yè)程序員潛心開發(fā)的程序差。2.2.1 Access的總體結(jié)構(gòu)

15、Access將所有有名字的東西都成為對象(object),在Access 2000中,最重要的對象有表,查詢,窗體,報表,宏和模塊。表:用戶定義的存儲資料的對象。每一個表都包含有關(guān)某個主體的信息。表包括存儲不同種類資料的字段(列),而記錄(行)則收集特定主體實例的所有信息。查詢:為來自一個或多個表的資料提供定制視圖的對象。在Access中,可以利用圖形化的實例查詢機制(QBE)或通過SQL語句來建立查詢。你可以在查詢中選擇、更新、插入或刪除資料,也可以用查詢來建立新表。窗體:窗體是主要的人機接口。大量的操作(幾乎所有)都要通過窗體完成。窗體通過運行宏(macro)或Visual Basic f

16、or Applications(VBA)過程,來響應(yīng)大量的事件。Access 2000為我們提供了強大的(同時也是相當(dāng)方便的向?qū)В﹣斫?biāo)準(zhǔn)的Windows窗體。報表:為格式化、計算、打印選定資料而設(shè)計的對象。它是衡量一個優(yōu)秀的數(shù)據(jù)庫的重要標(biāo)準(zhǔn)(有時甚至是唯一的標(biāo)準(zhǔn))。宏:為了響應(yīng)已定義的事件,需要讓Access去執(zhí)行一個或多個操作,而宏就是對這些操作的結(jié)構(gòu)化的定義對象。它可以讓你像堆積木一樣建立一個功能強大的程序,而無須寫大量的代碼。模塊:包括用VBA編碼的定制過程的一個對象。模塊提供了獨立的動作流以捕獲錯誤,而宏做不到。模塊能直接響應(yīng)窗體或報表事件,也可以從應(yīng)用程序的任何地方被調(diào)用。2.2

17、.2 VB6和Access的連接在進行系統(tǒng)開發(fā)時,一個很重要的步驟就是建立數(shù)據(jù)庫的連接,即訪問數(shù)據(jù)庫。VB6提供了多種方式訪問數(shù)據(jù)庫,其中以O(shè)DBC與ADO應(yīng)用最多。早期還有RDO,DAO等。2.2.2.1 ODBC連接數(shù)據(jù)庫ODBC(Open Database Connectivity,開放數(shù)據(jù)庫連接)是微軟開放服務(wù)結(jié)構(gòu)中有關(guān)數(shù)據(jù)庫的一個組成部分。它建立了一組規(guī)范,并提供了一組應(yīng)用程序調(diào)用接口。用這樣一組接口建立的應(yīng)用程序,對數(shù)據(jù)庫的操作不依賴于任何數(shù)據(jù)庫管理系統(tǒng),不直接與任何DBMS打交道,由此可實現(xiàn)應(yīng)用程序?qū)Σ煌珼BMS的共享。數(shù)據(jù)庫操作的“數(shù)據(jù)源”對應(yīng)用程序是透明的,所有的數(shù)據(jù)庫操作由

18、對應(yīng)DBMS的ODBC驅(qū)動程序(ODBC Driver)完成。有了ODBC驅(qū)動程序,數(shù)據(jù)源就變得十分廣泛,它可以是本機的某種數(shù)據(jù)庫格式的文件(如本機DOS目錄下的Access文件*.mdb),也可以是遠(yuǎn)程數(shù)據(jù)庫文件(如Microsoft SQL Server);它可以是目前已知的某種DBMS格式,也可以是一種全新的數(shù)據(jù)庫格式。在ODBC方式中,不管底層網(wǎng)絡(luò)環(huán)境如何,也無論采用何種DBMS,用戶在程序中都使用同一套標(biāo)準(zhǔn)代碼,源程序可以不因底層的變化而重新編建或修改,從而減輕了開發(fā)維護的工作量,縮短了開發(fā)周期。但ODBC訪問數(shù)據(jù)庫的速度較慢,而且需為每個客戶端配置ODBC數(shù)據(jù)源。2.2.2.2 A

19、DO連接數(shù)據(jù)庫微軟公司的ADO (ActiveX Data Objects) 是一個用于存取數(shù)據(jù)源的COM組件。它提供了編程語言和統(tǒng)一數(shù)據(jù)訪問方式OLE DB的一個中間層。允許開發(fā)人員編寫訪問數(shù)據(jù)的代碼而不用關(guān)心數(shù)據(jù)庫是如何實現(xiàn)的,而只用關(guān)心到數(shù)據(jù)庫的連接。訪問數(shù)據(jù)庫的時候,關(guān)于SQL的知識不是必要的,但是特定數(shù)據(jù)庫支持的SQL命令仍可以通過ADO中的命令對象來執(zhí)行。ADO包含一些頂層的對象: 連接,代表到數(shù)據(jù)庫的連接 記錄集,代表數(shù)據(jù)庫記錄的一個集合 命令,代表一個SQL命令 記錄,代表數(shù)據(jù)的一個集合 流,代表數(shù)據(jù)的順序集合 錯誤,代表數(shù)據(jù)庫訪問中產(chǎn)生的意外 字段,代表一個數(shù)據(jù)庫字段 參數(shù),

20、代表一個SQL參數(shù) 屬性,保存對象的信息 ADO向VB程序員提供了很多好處。包括易于使用,熟悉的界面,高速度以及較低的內(nèi)存占用。同傳統(tǒng)的數(shù)據(jù)對象層次(DAO和RDO)不同,ADO可以獨立創(chuàng)建。因此你可以只創(chuàng)建一個"Connection"對象,但是可以有多個,獨立的"Recordset"對象來使用它。ADO針對客戶服務(wù)器以及WEB應(yīng)用程序作了優(yōu)化。ADO 是基于OLE DB的訪問接口,它是面向?qū)ο蟮腛LE DB技術(shù),繼承了OLE DB的優(yōu)點。屬于數(shù)據(jù)庫訪問的高層接口。開發(fā)人員在使用ADO時,其實就是在使用OLE DB,不過OLE DB更加接近底層。ADO向

21、我們提供了一個熟悉的,高層的對OLE DB的Automation封裝接口。圖2.1 VB應(yīng)用程序與數(shù)據(jù)庫的連接第三章 需求分析3.1 需求分析軟件需求分析是軟件開發(fā)周期的第一個階段,也是關(guān)系到軟件開始成敗的關(guān)鍵步驟。準(zhǔn)確、完整和規(guī)范化的軟件需求是軟件開發(fā)成功的關(guān)鍵。3.1.1 系統(tǒng)數(shù)據(jù)流程圖在研究了用戶提供的原始資料及要求后,畫出了系統(tǒng)的數(shù)據(jù)流程圖如下所示。圖3-1 數(shù)據(jù)流程圖3.1.2 功能需求及設(shè)計思想3.1.2.1 總體架構(gòu)思想本倉庫管理系統(tǒng)是利用Client/Server結(jié)構(gòu),即客戶機/服務(wù)器模式。這種CS模式適用于局域網(wǎng)、安全性可以得到可靠的保證。它為數(shù)據(jù)提供了更安全的存取模式。響應(yīng)

22、速度快。程序開發(fā)具有很強的針對性,因此,操作界面漂亮,形式多樣,可以充分滿足客戶自身的個性化要求。圖3-2 C/S結(jié)構(gòu)示意圖3.1.2.2 物料管理模塊首先我們?yōu)槊恳粋€物料制定出唯一的一個代碼,在整個物料管理過程中都將以這個代碼來管理物料。設(shè)計代碼如下:1 Y Y Y X X X X;其中1代表是物料。YYY代表序列號,XXXX由系統(tǒng)自動給出。每增加一個物料時,系統(tǒng)都會給出此物料的代碼。對于物料數(shù)量上的控制采用最大最小數(shù)量法。如果當(dāng)前數(shù)量小于最小數(shù)量,則需出訂單去采購,如果大于最大數(shù)量則不允許再出訂單。自動訂單是根據(jù)這個原則產(chǎn)生的。物料根據(jù)其價值分為A,B,C三類,可以為每一種類型的物料制定不

23、同的控制方法。類物品:高值價值占庫存總值-的相對少數(shù)物品。通常為物品的-。類物品:中值總值占庫存總值的-。物品數(shù)居中,通常占物品的-。類物品:低值庫存總值幾乎可以忽略不計,只占-。是物品的大多數(shù),通常占-。3.1.2.3 供應(yīng)商管理模塊供應(yīng)商管理模塊記錄公司所有供應(yīng)商的情況,以保證每個供應(yīng)商都是經(jīng)過認(rèn)證的。并且為每個供應(yīng)商編制一個統(tǒng)一的代碼。以代碼來代表供應(yīng)商,可以減少數(shù)據(jù)庫中的數(shù)據(jù)量。供應(yīng)商管理模塊還包括公司的物料在供應(yīng)商處的代碼。就像我們?nèi)ベI東西,我們不但要知道去哪里買,還要知道買什么。供應(yīng)商代碼只提供我們?nèi)ツ睦镔I,而物料在供應(yīng)商的代碼則是解決了要買什么的問題。系統(tǒng)為了統(tǒng)一管理,加強控制。

24、將這兩個信息結(jié)合在一起給出一個綜合代碼。例如我們?nèi)ト嗣裆虉鲑I一件衣服給出一個綜合代碼為4000-0001,而去長發(fā)商場去買同一件衣服則給出的綜合代碼為4000-0002,這樣處理有利于更好的分清每個物料及供應(yīng)商之間的關(guān)系。為生產(chǎn)線提供更多的更全的數(shù)據(jù)。3.1.2.4 產(chǎn)品管理模塊物料是指公司從供應(yīng)商處買來的,是半成品。產(chǎn)品是公司生產(chǎn)的。同樣,我們也需為公司的每一個產(chǎn)品編制一個代碼。方便管理。另一方面,還需建立產(chǎn)品與物料之間的聯(lián)系。即產(chǎn)品組成表。表示某個產(chǎn)品是由哪些物料組成的。在制作生產(chǎn)計劃時,只需給出生產(chǎn)的產(chǎn)品代碼,而無需給出每一個物料的代碼。3.1.2.5 訂單管理模塊訂單管理主要任務(wù)是產(chǎn)生

25、訂單。產(chǎn)生定單的方法有兩種,一種是自動定單。一種是手工下單。自動定單是系統(tǒng)根據(jù)當(dāng)前的物料狀況及物料控制方法來對每一個物料進行分析,如果符合下單條件則自動產(chǎn)生一個訂單,經(jīng)確認(rèn)后就為有效訂單。在確認(rèn)過程中,可以對訂單進行各種操作。手工下單就是人為地去采購某一種物料,并且把這個訂單記錄到系統(tǒng)中去。自動訂單可以一次下多個定單,手工下單只能一個一個產(chǎn)生訂單。訂單是倉庫進行收料操作的基礎(chǔ)。3.1.2.6 倉庫收料倉庫根據(jù)系統(tǒng)發(fā)出的訂單進行收料。3.1.2.7 生產(chǎn)計劃管理模塊此模塊主要是管理生產(chǎn)計劃。根據(jù)產(chǎn)品及生產(chǎn)數(shù)量,日期等不同將生產(chǎn)分為一批一批,利用生產(chǎn)計劃號,即工單號來區(qū)分。每次計劃產(chǎn)生前,系統(tǒng)會根

26、據(jù)產(chǎn)品組成表提供的信息來檢驗當(dāng)前的物料狀況,如果物料不能滿足此次生產(chǎn),則不能成功產(chǎn)生生產(chǎn)計劃。倉庫的發(fā)料也是根據(jù)生產(chǎn)計劃來進行的。每個生產(chǎn)計劃都會自動產(chǎn)生一個發(fā)料清單。3.1.2.8 倉位管理模塊倉位管理記錄了倉庫每個倉位存放的物料。3.1.2.9 倉庫發(fā)料倉庫根據(jù)生產(chǎn)計劃給出的工單號來進行發(fā)料。發(fā)料時,即可以一次性發(fā)多個料,即按工單發(fā)料;也可以按物料一個一個來發(fā)??勺杂蛇x擇。也可以兩種方法結(jié)合在一起來發(fā)料。3.1.2.10 生產(chǎn)增料和退料生產(chǎn)增料代表了生產(chǎn)損耗。為了核算每批產(chǎn)品的生產(chǎn)成本,因此增料操作需按生產(chǎn)計劃號來進行。即每個生產(chǎn)增料都需確定到每個計劃號,因此增料是以生產(chǎn)計劃號為基礎(chǔ)的。生

27、產(chǎn)退料是生產(chǎn)線將好的物料退回給倉庫。3.1.2.11 盤點管理倉庫每月,每季及每年都要進行盤點。盤點時需提供盤點報表及盤點調(diào)整。3.1.2.12 報表與查詢需提供根據(jù)各種條件來得到查詢結(jié)果。條件即可以是單個條件也可以組合條件。查詢結(jié)果分為三個部分,一部分是基本信息,另一部分是訂單信息,以及生產(chǎn)計劃信息。3.1.2.13 操作日志記錄系統(tǒng)內(nèi)主要的數(shù)據(jù)的操作,以便日后查詢所需。第四章 系統(tǒng)設(shè)計在進行了需求分析、確定了設(shè)計思想之后,就要進行系統(tǒng)的功能設(shè)計和數(shù)據(jù)庫的設(shè)計。4.1 系統(tǒng)功能設(shè)計4.1.1 系統(tǒng)功能模塊圖在仔細(xì)分析了公司的物料數(shù)據(jù)圖后,決定將整個系統(tǒng)分為四大模塊,每個模塊又有若干個子模塊。

28、整個系統(tǒng)功能模塊如下圖所示:圖4-1 系統(tǒng)功能模塊圖4.1.2 系統(tǒng)各模塊說明4.1.2.1 系統(tǒng)管理模塊在此功能模塊,用戶可以進行用戶間的切換,修改密碼,及退出。對于管理員和超級用戶還可以進行用戶管理。4.1.2.2 倉庫管理模塊倉庫管理模塊可完成倉庫的主要日常操作。包括收料,發(fā)料,增料,退料。同時還有倉庫的倉位管理及盤點調(diào)整。4.1.2.3 物料管理模塊物料管理模塊可完成附加功能,利用這些功能可很好的防止由于人為因素造成的數(shù)據(jù)錯誤。具體有物料管理,產(chǎn)品管理,供應(yīng)商管理,訂單管理和生產(chǎn)計劃管理。4.1.2.4 報表查詢模塊在此功能模塊,用戶可以進行各種條件的查詢。實時了解整個公司的物料狀況。

29、為決策提供依據(jù)。具體有查詢,操作日志及盤點報表。4.2 數(shù)據(jù)庫設(shè)計大多數(shù)應(yīng)用系統(tǒng)都需要后臺數(shù)據(jù)庫地支持。在Windows操作系統(tǒng)中,Access和SQL Server是最常見地網(wǎng)絡(luò)后臺數(shù)據(jù)庫。本系統(tǒng)是采用Access數(shù)據(jù)庫存儲數(shù)據(jù)。4.2.1 創(chuàng)建數(shù)據(jù)庫本系統(tǒng)采用了Access作為數(shù)據(jù)庫管理系統(tǒng)。先啟動Access2000程序,然后創(chuàng)建名為“WMS”的數(shù)據(jù)庫。并為此數(shù)據(jù)庫設(shè)置密碼。4.2.2 數(shù)據(jù)表結(jié)構(gòu)本倉庫管理系統(tǒng)的數(shù)據(jù)庫共包括12張數(shù)據(jù)表。4.2.2.1 用戶信息表用戶信息表(Users)用來保存用戶(管理員,用戶)的信息,該表的結(jié)構(gòu)如表4-1所示。表4-1 Users(用戶信息)表的結(jié)構(gòu)

30、4.2.2.2 物料代碼表物料代碼表(Materials)用來存放企業(yè)所需用的所有的物料。該表的結(jié)構(gòu)如表4-2所示。表4-2 Materials(物料代碼)表的結(jié)構(gòu)4.2.2.3 產(chǎn)品代碼表產(chǎn)品代碼表(Productions)用來保存公司生產(chǎn)的所有產(chǎn)品的信息,該表的結(jié)構(gòu)如表4-3所示。表4-3 Productions(產(chǎn)品代碼)表的結(jié)構(gòu)4.2.2.4 產(chǎn)品組成表產(chǎn)品組成表(BoMs)用來記錄公司生產(chǎn)的產(chǎn)品是由哪些物料組成的。為倉庫發(fā)料提供依據(jù)。該表的結(jié)構(gòu)如表4-4所示。表4-4 BoMs(產(chǎn)品組成)表的結(jié)構(gòu)4.2.2.5 供應(yīng)商代碼表供應(yīng)商代碼表(Suppliers)用來保存公司供應(yīng)商的信息。

31、該表的結(jié)構(gòu)如表4-5所示。表4-5 Suppliers(供應(yīng)商代碼)表的結(jié)構(gòu)4.2.2.6 物料供應(yīng)商聯(lián)系表物料供應(yīng)商聯(lián)系表(AVLs)用來保存物料在供應(yīng)商處的有關(guān)信息。也是系統(tǒng)產(chǎn)生訂單時的必要信息。該表的結(jié)構(gòu)如表4-6所示。表4-6 AVLs(物料供應(yīng)商聯(lián)系)表的結(jié)構(gòu)4.2.2.7 訂單管理表訂單管理表(POs)用來保存公司給供應(yīng)商買料的訂單,也是倉庫收料的依據(jù)。該表的結(jié)構(gòu)如表4-7所示。表4-7 POs(訂單管理)表的結(jié)構(gòu)4.2.2.8 生產(chǎn)計劃產(chǎn)品管理表生產(chǎn)計劃產(chǎn)品管理表(PP_Produciton)用來保存生產(chǎn)計劃的有關(guān)信息。該表的結(jié)構(gòu)如表4-8所示。表4-8 PP_Producito

32、n(生產(chǎn)計劃產(chǎn)品管理表)表的結(jié)構(gòu)4.2.2.9生產(chǎn)計劃物料管理表生產(chǎn)計劃物料管理表(PP_Material)用來保存生產(chǎn)計劃中的每一顆物料的使用狀況。此表是由生產(chǎn)計劃產(chǎn)品管理表和產(chǎn)品組成表通過計算而得到的。該表的結(jié)構(gòu)如表4-9所示。表4-9 PP_Material(生產(chǎn)計劃物料管理)表的結(jié)構(gòu)4.2.2.10 物料現(xiàn)狀表物料現(xiàn)狀表(NowMaterials)用來保存當(dāng)前的物料狀況,同時為訂單的產(chǎn)生及生產(chǎn)計劃的制定提供物料依據(jù)。該表的結(jié)構(gòu)如表4-10所示。表4-10 NowMaterials(物料現(xiàn)狀)表的結(jié)構(gòu)4.2.2.11 倉庫倉位管理表倉庫倉位管理表(Locations)用來管理倉庫的各個倉

33、位信息。該表的結(jié)構(gòu)如表4-11所示。表4-11 Locations(倉庫倉位管理)表的結(jié)構(gòu)4.2.2.12 操作日志表操作日志表(DailyDate)用來保存用戶的所有操作信息。以便以后發(fā)現(xiàn)問題時查詢所需。該表的結(jié)構(gòu)如表4-12所示。表4-12 DailyDate(操作日志)表的結(jié)構(gòu)4.2.3 數(shù)據(jù)庫中各表的關(guān)系數(shù)據(jù)庫中各表之間的關(guān)系如圖4-2所示。圖4-2 數(shù)據(jù)庫中各表的關(guān)系第五章 倉庫管理原型系統(tǒng)實現(xiàn)5.1 數(shù)據(jù)庫實現(xiàn)5.1.1 連接數(shù)據(jù)庫在進行系統(tǒng)開發(fā)前,一個很重要的步驟就是建立數(shù)據(jù)庫的連接,即訪問數(shù)據(jù)庫。VB6提供了多種方式訪問數(shù)據(jù)庫,其中以O(shè)DBC與ADO應(yīng)用最多。具體ODBC及AD

34、O詳見相關(guān)理論部分。本系統(tǒng)采用ADO方式訪問數(shù)據(jù)庫。ADO數(shù)據(jù)庫連接主要分兩步進行:一是引用ADO,二是使用ADO連接數(shù)據(jù)庫。1. 引用ADO在VB6菜單“工程”-“引用”從中選擇 Microsoft ActiveX Data objects 2.8 library和 Microsoft ActiveX Data objects recordset 2.8兩個組件,這是在連接數(shù)據(jù)庫前所必做的工作。圖5-1 引用ADO圖5-2 選擇ADO控件2. 使用ADO連接數(shù)據(jù)庫本系統(tǒng)采用的是無源的數(shù)據(jù)庫連接方法,因為整個系統(tǒng)都會使用到這個數(shù)據(jù)庫,所以將數(shù)據(jù)庫的連接定義為全局變量。Public Cn As

35、New ADODB.Connection 定義數(shù)據(jù)源Dim db_path As String 用于存放數(shù)據(jù)庫的路徑Dim db_cn As String 連接數(shù)據(jù)源字符串db_path = App.Path & "DataWMS.mdb" 指定數(shù)據(jù)庫文件db_cn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & db_path & "Jet OLEDB:database password=123321;" 數(shù)據(jù)庫連接字符串Cn.Open db_cn 打開

36、數(shù)據(jù)源5.1.2 建立數(shù)據(jù)表本系統(tǒng)采用了Access作為數(shù)據(jù)庫管理系統(tǒng)。先啟動Access2000程序,然后創(chuàng)建名為“WMS”的數(shù)據(jù)庫。并為此數(shù)據(jù)庫設(shè)置密碼。在數(shù)據(jù)庫中建立各表。表名稱及表結(jié)構(gòu)詳見系統(tǒng)設(shè)計中數(shù)據(jù)表的設(shè)計。5.2倉庫管理系統(tǒng)主要界面及使用說明本系統(tǒng)按用戶類別及使用功能可以分為管理員登錄、普通用戶登錄及超級用戶登錄三種。不同類型的用戶具有不同的權(quán)限。所有用戶的主操作界面相同,區(qū)別在于個別功能的使用權(quán)限。5.2.1 系統(tǒng)登錄界面設(shè)計思路與要點:用戶運行程序后,輸入用戶名與密碼,程序根據(jù)用戶名到后臺數(shù)據(jù)庫查詢用戶名和密碼是否正確,如果正確,則根據(jù)用戶名給出用戶所屬的級別,并根據(jù)級別給出

37、相應(yīng)的權(quán)限。如沒有通過驗證,則給出沒有通過驗證的原因。系統(tǒng)登錄界面如圖5-3所示。圖5-3 倉庫管理系統(tǒng)登錄界面如果用戶名或密碼錯誤,系統(tǒng)會分別提示,防止非法用戶進入系統(tǒng)操作。圖5-4 倉庫管理系統(tǒng)密碼錯誤界面5.2.2 系統(tǒng)主界面設(shè)計思路與要點:用戶登錄通過后,進入系統(tǒng)的主界面。主界面的菜單如果是灰色顯示,則表明此用戶沒有權(quán)限操作此功能。在主界面的狀態(tài)欄會顯示當(dāng)前用戶名和用戶權(quán)限。界面如圖5-5所示。圖5-5 倉庫管理系統(tǒng)主界面5.2.3 系統(tǒng)管理模塊系統(tǒng)管理模塊主是功能是進行本系統(tǒng)的一些常用管理工作,共有四個子模塊:重新登錄,修改密碼,用戶管理,退出。5.2.3.1 重新登錄功能進入系統(tǒng)后

38、,可選擇重新登錄在不現(xiàn)用戶之間進行切換。界面如圖5-6所示。圖5-6 系統(tǒng)重登錄界面5.2.3.2 修改密碼功能設(shè)計思路和要點:用戶如需修改自己的登錄密碼,需輸入舊密碼與新密碼,程序在數(shù)據(jù)庫中修改用戶的密碼。界面如圖5-7所示。圖5-7 修改密碼界面5.2.3.3 用戶管理功能設(shè)計思路和要點:用戶管理是對使用此系統(tǒng)的所有用戶進行管理。分為增加,刪除以及修改用戶信息。此功能只有管理員和超級用戶才能使用。普通用戶不能執(zhí)行此操作。界面如圖5-8所示。圖5-8 用戶管理界面5.2.3.4 退出功能退出即退出本系統(tǒng)。選擇系統(tǒng)管理下的退出即可。如圖5-9所示。圖5-9 退出系統(tǒng)菜單5.2.4 倉庫管理模塊

39、倉庫管理模塊是本系統(tǒng)的核心模塊。根據(jù)倉庫的日常操作共分有六個子模塊,分別是:入庫操作,出庫操作,退料操作,增料操作,倉位管理和盤點損益。已基本包括了倉庫管理的主要功能。5.2.4.1 入庫操作設(shè)計思路和要點:入庫操作即倉庫的收料,系統(tǒng)規(guī)定收料只能根據(jù)訂單來進行。沒有訂單就不能完成收料。每個訂單都對應(yīng)一個入庫操作。這樣可以大大減少因人為因素產(chǎn)生的錯誤。規(guī)范化倉庫收料操作。選擇訂單號碼后,相關(guān)的訂單信息已會顯示出來。訂單號碼是由訂單管理模塊產(chǎn)生。倉庫人員沒有權(quán)限產(chǎn)生訂單。界面如圖5-10所示。圖5-10 入庫操作界面5.2.4.2 出庫操作設(shè)計思想和要點:出庫操作即倉庫的發(fā)料,本系統(tǒng)規(guī)定倉庫的發(fā)料

40、需根據(jù)生產(chǎn)計劃來進行。沒有生產(chǎn)計劃則不能發(fā)料。生產(chǎn)計劃的產(chǎn)生由專門模塊實現(xiàn)。生產(chǎn)計劃用工單來區(qū)分。每個工單的發(fā)料可有兩種方式 ,一種是按工單發(fā)料,即一次性將一個工單的全部所需物料全部發(fā)至生產(chǎn)線。另一種是按物料,即根據(jù)生產(chǎn)狀況,一個一個將物料發(fā)至生產(chǎn)線。選擇選擇發(fā)料類型,按工單或按物料。按工單的話,則選擇工單號即生產(chǎn)計劃號,系統(tǒng)自動將此工單的所有料發(fā)至生產(chǎn)線。界面如圖5-11和圖5-12所示。圖5-11 出庫操作按工單界面圖5-12 出庫操作按物料界面5.2.4.3 退料操作設(shè)計思路和要點:退料操作是針對生產(chǎn)線由于各種原因產(chǎn)生的生產(chǎn)中多領(lǐng)的物料退回倉庫。退料時需選擇所退物料的料號及數(shù)量。程序會根

41、據(jù)這些信息在數(shù)據(jù)庫中作出相應(yīng)的調(diào)整。界面如圖5-13所示。圖5-13 退料操作界面5.2.4.4 增料操作設(shè)計思路和要點:增料操作即由于生產(chǎn)損耗而需要增料。為了核算成本,增料需根據(jù)生產(chǎn)計劃號來進行增料操作,這樣就可以清楚列出每次生產(chǎn)的損耗。界面如圖5-14所示。圖5-14 增料操作界面5.2.4.5 倉位管理設(shè)計思路與要點:倉位管理是對倉庫的各個倉位進行分配與管理。可以增加新的倉位和修改倉位存放的物料。界面如圖5-15所示。圖5-15 倉位管理界面5.2.4.6 盤點損益設(shè)計思路和要點:每次盤點后,需根據(jù)盤點結(jié)果進行某些物料的調(diào)整。調(diào)整分為收益和虧損。界面如圖5-16所示。圖5-16 盤點損益

42、界面5.2.5 物料管理模塊此模塊的主要功能是對倉庫和生產(chǎn)及倉庫和物料的一些接口數(shù)據(jù)的管理。在現(xiàn)代企業(yè)中,每個系統(tǒng)之間都有一定的聯(lián)系。倉庫系統(tǒng)也不例外,為了更好的管理倉庫,得到更全的數(shù)據(jù),減少因為人為因素而發(fā)生的錯誤,倉庫與其他系統(tǒng)也有一定的數(shù)據(jù)聯(lián)系。此模塊共有五個子模塊:物料管理,產(chǎn)品管理,供應(yīng)商管理,生產(chǎn)計劃和訂單管理。5.2.5.1 物料管理設(shè)計思路和要點:物料管理模塊是管理企業(yè)的所有的物料,系統(tǒng)為每個物料給出一個代碼。在企業(yè)內(nèi)部以這個代碼來進行收料,發(fā)料等操作。物料代碼是整個企業(yè)物料管理的基礎(chǔ)。因此物料代碼的管理是非常重要的。綜合公司的具體情況,決定物料代碼由程序根據(jù)一定的規(guī)則自動產(chǎn)生

43、。物料采用最大最小數(shù)量來控制。界面如圖5-17所示。圖5-17 物料管理界面5.2.5.2 產(chǎn)品管理設(shè)計思路和要點:產(chǎn)品管理模塊主是對公司的所有產(chǎn)品進行編碼及記錄產(chǎn)品的組成情況。相應(yīng)地分兩部分,一個是產(chǎn)品代碼管理,另一個是產(chǎn)品組成物料清單管理。產(chǎn)品代碼是由程序根據(jù)一定的規(guī)則產(chǎn)生。而產(chǎn)品組成物料清單則是由物料管理中的物料組成的。產(chǎn)品與物料最大的不同點在于產(chǎn)品是由公司生產(chǎn)出來的,而物料是由公司直接買來的。界面如圖5-18和圖5-19所示。圖5-18 產(chǎn)品管理界面圖5-19 產(chǎn)品物料組成清單界面5.2.5.3 供應(yīng)商管理設(shè)計思路和要點:供應(yīng)商管理也分兩部分,一個是供應(yīng)商代碼管理,另一個是供應(yīng)商物料代

44、碼管理。供應(yīng)商代碼管理是為了方便對供應(yīng)商進行調(diào)整。供應(yīng)商加上供應(yīng)商的物料代碼組成了一個綜合信息。我們?yōu)槊總€綜合信息進行編號,方便管理。界面如圖5-20和圖5-21所示。圖5-20 供應(yīng)商代碼管理界面圖5-21 供應(yīng)商物料代碼管理界面5.2.5.4 生產(chǎn)計劃管理設(shè)計思路和要點:生產(chǎn)計劃管理需根據(jù)當(dāng)前的物料狀況來進行。每次生產(chǎn)計劃以編號來劃分。編號由系統(tǒng)產(chǎn)生。計劃產(chǎn)生時系統(tǒng)會檢查物料狀況。如物料狀況不允許則不能成功產(chǎn)生生產(chǎn)計劃。界面如圖5-22所示。圖5-22 生產(chǎn)計劃管理界面5.2.5.5 訂單管理設(shè)計思路和要點:訂單可以系統(tǒng)自動產(chǎn)生,也可以手工產(chǎn)生。自動產(chǎn)生時,根據(jù)物料的管理辦法,產(chǎn)生訂單可以

45、是多個也可以是一個。而手工定單的產(chǎn)生只能是一個。定單產(chǎn)生后需進行確認(rèn)才能生效。界面如圖5-23所示。圖5-23 訂單管理界面5.2.6 報表查詢模塊此模塊的主要功能是查詢及報表。5.2.6.1 查詢設(shè)計思路和要點:根據(jù)各種查詢條件查詢物料信息。物料信息包含三部分,一為基本信息,二為訂單信息,三為生產(chǎn)計劃信息。適合所有使用者。界面如圖5-24所示。圖5-24 查詢界面5.2.6.2 查詢?nèi)粘2僮髟O(shè)計思路與要點:對系統(tǒng)的每一次操作能應(yīng)及時地記錄下來,以便日后查詢。因此在數(shù)據(jù)庫中單獨創(chuàng)建一張表,用于記錄系統(tǒng)的日常操作,即倉庫的各種日常操作。通過此功能,可能追溯系統(tǒng)數(shù)據(jù)的整個變化過程。使整個系統(tǒng)的運行

46、都在控制之內(nèi)。界面如圖5-25所示。圖5-25 操作日志界面5.2.6.3 盤點報表設(shè)計思路和要點:盤點報表可以根據(jù)盤點的需要,按物料編碼或按倉位生成。盤點報表將列出當(dāng)前時刻,倉庫中所有物料的數(shù)量及存放地點,以便盤點時參考。同時此報表還可以輸出成各種格式,以方便用戶使用。界面如圖5-26所示。圖5-26 盤點報表界面5.4 系統(tǒng)測試一般情況下,我們千辛萬苦開發(fā)出的程序總會存在一些問題,這就需要進行測試。對于此系統(tǒng)的測試從以下幾方面進行入手。5.4.1 菜單測試檢查每個菜單是否有效。5.4.2各功能模塊測試設(shè)計一些數(shù)據(jù),利用各個模塊提供功能進行測試。并檢查程序的防呆性,即程序是否能夠有效地防止一

47、些明顯有錯誤數(shù)據(jù)進入系統(tǒng)。5.4.3 數(shù)據(jù)跟蹤測試打開后臺數(shù)據(jù)庫,檢查各項數(shù)據(jù)是否與輸入的一致。及各個表及表中數(shù)據(jù)是否一致。第六章 小結(jié)與展望整個倉庫管理考試系統(tǒng)主要包括上面所寫的模塊及功能,基本上已經(jīng)能夠覆蓋了倉庫日常管理中的主要操作。內(nèi)容也較為詳盡。由于時間、所學(xué)以及精力的關(guān)系,該系統(tǒng)還處于原型設(shè)計階段,許多預(yù)想的模塊還沒有能夠及時添加進去。就是寫進系統(tǒng)的也有部分模塊還可以更加好的進行完善。6.1 成績及不足 本倉庫管理系統(tǒng)的設(shè)計和分析到目前為止還只是一個初始階段,在這段時間的設(shè)計過程中,從中得到了一些成績,也有一些不足。6.1.1 成績· 能夠比較好的進行需求分析,可行性分析以

48、及系統(tǒng)設(shè)計,來獨立開發(fā)一個較為小型的MIS系統(tǒng);· 完成了倉庫管理中日常使用最多的最主要的功能。· 具有很好的防呆功能。· 對數(shù)據(jù)的處理也有一定的聯(lián)系,可減少人為因素帶來的影響。· 較少的鍵盤輸入,大多數(shù)功能可只用鼠標(biāo)來完成操作。· 模塊化編程,為以后的改進提供了方便。6.1.2 不足· 系統(tǒng)只提供了鍵盤和鼠標(biāo)的輸入,沒有提供條碼掃描的輸入。· 系統(tǒng)沒有提供打印輸出的功能,如果需要打印還需借助其他的軟件。· 系統(tǒng)只是提供了一個簡單的功能,與現(xiàn)代化的公司倉庫定理還有不小的差距。· 系統(tǒng)的一些模塊的功能是理論化的,在實際中還有許多更復(fù)雜的情況并沒有考慮進去。在以后實際作用過程中很

溫馨提示

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

評論

0/150

提交評論