畢業(yè)設(shè)計(jì)-貨物進(jìn)出庫(kù)管理系統(tǒng)論文.doc
《畢業(yè)設(shè)計(jì)-貨物進(jìn)出庫(kù)管理系統(tǒng)論文.doc》由會(huì)員分享,可在線閱讀,更多相關(guān)《畢業(yè)設(shè)計(jì)-貨物進(jìn)出庫(kù)管理系統(tǒng)論文.doc(42頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
1、 畢業(yè)設(shè)計(jì)(論文) 貨物出入庫(kù)管理系統(tǒng)目 錄摘 要1第一章、緒論31.1管理信息系統(tǒng)的概述31.2數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)開(kāi)發(fā)簡(jiǎn)介31.3貨物進(jìn)出庫(kù)管理系統(tǒng)簡(jiǎn)介5第二章 數(shù)據(jù)庫(kù)理論基礎(chǔ)82.1數(shù)據(jù)庫(kù)系統(tǒng)設(shè)計(jì)82.2 SQL語(yǔ)言介紹9第三章 應(yīng)用系統(tǒng)開(kāi)發(fā)工具103.1 Visual Basic簡(jiǎn)介及實(shí)現(xiàn)原理103.2 數(shù)據(jù)庫(kù)組件介紹103.3 SQL語(yǔ)言在VB中的應(yīng)用113.4 Access 2000簡(jiǎn)述12第四章 貨物進(jìn)出庫(kù)管理系統(tǒng)設(shè)計(jì)分析134.1需求分析134.2系統(tǒng)模塊圖144.3數(shù)據(jù)流程圖154.4數(shù)據(jù)庫(kù)設(shè)計(jì)16第五章 應(yīng)用程序設(shè)計(jì)205.1程序結(jié)構(gòu)205.2 程序源代碼20設(shè)計(jì)總結(jié)37參考文獻(xiàn)
2、38摘 要隨著現(xiàn)代工業(yè)的發(fā)展,計(jì)算機(jī)信息管理系統(tǒng)越來(lái)越受到企業(yè)重視。本文主要分析了貨物進(jìn)出庫(kù)管理系統(tǒng)的一些基本功能和組成情況,包括系統(tǒng)的需求分析、系統(tǒng)結(jié)構(gòu),功能模塊劃分以及數(shù)據(jù)庫(kù)模式分析等,重點(diǎn)對(duì)應(yīng)用程序的實(shí)際開(kāi)發(fā)實(shí)現(xiàn)作了介紹。達(dá)到了數(shù)據(jù)的一致性和安全性,且應(yīng)用程序功能完備,符合了貨物進(jìn)出庫(kù)管理系統(tǒng)作為典型的信息管理系統(tǒng)(MIS)的要求。同時(shí)簡(jiǎn)單介紹了Visual Basic編程環(huán)境和Access數(shù)據(jù)庫(kù)管理系統(tǒng)的功能特點(diǎn),貨物進(jìn)出庫(kù)管理系統(tǒng)是企業(yè)物流管理中不可或缺的一部分。關(guān)鍵詞:倉(cāng)庫(kù)管理,數(shù)據(jù)庫(kù),信息管理,VB第一章、緒論貨物進(jìn)出庫(kù)管理系統(tǒng)是一個(gè)企事業(yè)單位不可缺少的一部分,貨物進(jìn)出庫(kù)管理系統(tǒng)
3、應(yīng)該能夠?yàn)橛脩籼峁┏渥愕男畔⒑涂旖莸牟樵兪侄危瑐鹘y(tǒng)的人工方式管理倉(cāng)庫(kù)存在著許多缺點(diǎn),諸如效率低,保密性差等,而且時(shí)間一長(zhǎng),將產(chǎn)生大量的文件和數(shù)據(jù),這對(duì)于查找、更新和維護(hù)都帶來(lái)了不少的困難。使用計(jì)算機(jī)對(duì)產(chǎn)品倉(cāng)庫(kù)信息進(jìn)行管理,具有著人工管理無(wú)法比擬的優(yōu)點(diǎn),它檢索迅速、查找方便、存儲(chǔ)量大、保密性好、成本低等,可減少更多的人力物力和財(cái)力,這些都能夠極大地提高貨物倉(cāng)庫(kù)的管理效率,也是企業(yè)倉(cāng)庫(kù)管理科學(xué)化、正規(guī)化,與世界接軌的重要條件。因此,開(kāi)發(fā)一個(gè)貨物進(jìn)出庫(kù)管理系統(tǒng)是很有必要的,具有其特有的技術(shù)意義和管理意義。1.1管理信息系統(tǒng)的概述管理信息系統(tǒng)是在管理科學(xué)、系統(tǒng)科學(xué)、計(jì)算機(jī)科學(xué)等的基礎(chǔ)上發(fā)展起來(lái)的綜合性
4、邊緣科學(xué)。在當(dāng)今信息高速發(fā)展的社會(huì)中,管理信息系統(tǒng)具有很重要的作用。管理信息系統(tǒng)是一個(gè)由人、機(jī)(計(jì)算機(jī))組成的能進(jìn)行管理信息的收集、傳遞、存儲(chǔ)、加工、維護(hù)和使用的系統(tǒng)。它是一個(gè)以計(jì)算機(jī)為工具,具有數(shù)據(jù)處理、預(yù)測(cè)、控制和輔助決策功能的信息系統(tǒng)。管理信息系統(tǒng)是一個(gè)人機(jī)系統(tǒng)也是一個(gè)一體化集成系統(tǒng)。管理信息系統(tǒng)是信息系統(tǒng)的一個(gè)子系統(tǒng),它以計(jì)算機(jī)技術(shù)、通訊技術(shù)和軟件技術(shù)為技術(shù)基礎(chǔ),同時(shí)將現(xiàn)代管理理論、現(xiàn)代管理方法及各級(jí)管理人員融為一體,為某個(gè)組織整體的管理與決策服務(wù),是由人和計(jì)算機(jī)組成的能進(jìn)行管理信息的收集、傳遞、存儲(chǔ)、加工、維護(hù)和使用的系統(tǒng)。管理信息系統(tǒng)的基本結(jié)構(gòu)可以概括為四大部件,即信息源、信息處理
5、器、信息用戶和信息管理者。因此,一個(gè)成功的管理信息系統(tǒng)應(yīng)該具有可靠的硬件、實(shí)用的軟件、強(qiáng)有力的現(xiàn)代化管理水平。管理信息系統(tǒng)的三大支柱是:計(jì)算機(jī)網(wǎng)絡(luò)、數(shù)據(jù)庫(kù)和現(xiàn)代化的管理。1.2數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)開(kāi)發(fā)簡(jiǎn)介數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)開(kāi)發(fā)的目標(biāo)是建立一個(gè)滿足用戶長(zhǎng)期需求的產(chǎn)品。開(kāi)發(fā)的主要過(guò)程為:理解用戶的需求,把它們轉(zhuǎn)變?yōu)橛行У臄?shù)據(jù)庫(kù)設(shè)計(jì)。把設(shè)計(jì)轉(zhuǎn)變?yōu)閷?shí)際的數(shù)據(jù)庫(kù)并且功能完備、高效能。數(shù)據(jù)庫(kù)技術(shù)產(chǎn)生于60年代,30多年來(lái)數(shù)據(jù)庫(kù)技術(shù)得到了迅速發(fā)展,并已形成較為完整的理論體系。隨著World Wide Web(WWW)的猛增及Internet技術(shù)的迅速發(fā)展,使得數(shù)據(jù)庫(kù)技術(shù)成為最熱門(mén)技術(shù)之一。1.2.1數(shù)據(jù)庫(kù)數(shù)據(jù)庫(kù)由DB
6、MS(數(shù)據(jù)庫(kù)管理系統(tǒng))處理,DBMS則由開(kāi)發(fā)人員和用戶通過(guò)應(yīng)用程序直接或間接地使用。它主要包括四個(gè)要素:用戶數(shù)據(jù)、元數(shù)據(jù)、索引和應(yīng)用元數(shù)據(jù)。一、用戶數(shù)據(jù)目前,大多數(shù)主流數(shù)據(jù)庫(kù)管理系統(tǒng)把用戶數(shù)據(jù)表示為關(guān)系?,F(xiàn)在把關(guān)系看作數(shù)據(jù)表。表的列包含域或?qū)傩?,表的行包含?duì)應(yīng)的實(shí)體的記錄。并非所有的關(guān)系都同樣符合要求,有些關(guān)系比其它關(guān)系更結(jié)構(gòu)化一些。二、元數(shù)據(jù)數(shù)據(jù)庫(kù)是自描述的,也就是它自身包含了它的結(jié)構(gòu)的描述,這種結(jié)構(gòu)的描述稱作元數(shù)據(jù)。因?yàn)镈BMS是用來(lái)存儲(chǔ)和操縱表的,因此大多數(shù)產(chǎn)品把元數(shù)據(jù)以表的形式存儲(chǔ),有時(shí)稱作系統(tǒng)表。這些系統(tǒng)表存儲(chǔ)了數(shù)據(jù)庫(kù)中表的情況,每一個(gè)表中有多少列,哪一列是主關(guān)鍵字,各列的數(shù)據(jù)類(lèi)型的
7、描述,它也存儲(chǔ)索引、關(guān)鍵字、規(guī)則和數(shù)據(jù)庫(kù)結(jié)構(gòu)的其他部分。三、索引第三種類(lèi)型的數(shù)據(jù)改進(jìn)了數(shù)據(jù)庫(kù)的性能和可訪問(wèn)性,這種數(shù)據(jù)被稱作開(kāi)銷(xiāo)數(shù)據(jù),盡管有時(shí)采用其他類(lèi)型的數(shù)據(jù)結(jié)構(gòu),但它主要還是索引。索引可以用來(lái)排序和快速訪問(wèn)數(shù)據(jù)。索引用于快速訪問(wèn)數(shù)據(jù)。例如,一個(gè)用戶只想訪問(wèn)貨物信息表中類(lèi)別值為01的那些貨物。如果沒(méi)有索引,則必須搜索整個(gè)源表;但有了索引之后,可以找到索引條目,并使用它來(lái)挑選所有合適的行。索引對(duì)排序和查找是有幫助的,但是有代價(jià)的。貨物信息表中的行每次改變時(shí),索引也 必須隨之改變,這意味著索引并不是隨意的,應(yīng)該在真正需要時(shí)保存。四、應(yīng)用元數(shù)據(jù)存儲(chǔ)在數(shù)據(jù)庫(kù)中的第四種數(shù)據(jù)是應(yīng)用元數(shù)據(jù),它用來(lái)存儲(chǔ)用戶
8、窗體、報(bào)表、查詢和其他形式的查詢組件。不是所有的DBMS都支持應(yīng)用組件,支持組件的DBMS也不一定把全部組件的結(jié)構(gòu)作為應(yīng)用元數(shù)據(jù)存儲(chǔ)在數(shù)據(jù)庫(kù)中。但是大多數(shù)現(xiàn)代的DBMS產(chǎn)品存儲(chǔ)這種數(shù)據(jù)作為數(shù)據(jù)庫(kù)的一部分。1.2.2數(shù)據(jù)庫(kù)管理系統(tǒng)數(shù)據(jù)庫(kù)管理系統(tǒng)(DBMS)是指數(shù)據(jù)庫(kù)系統(tǒng)中管理數(shù)據(jù)的軟件系統(tǒng)。DBMS是數(shù)據(jù)庫(kù)系統(tǒng)的核心組成部分。對(duì)數(shù)據(jù)庫(kù)的一切操作,都是通過(guò)DBMS進(jìn)行的。DBMS總是基于某種數(shù)據(jù)模型,根據(jù)數(shù)據(jù)模型的不同,DBMS可以分成層次型、網(wǎng)狀型、關(guān)系型、面向?qū)ο笮偷取jP(guān)系模型。關(guān)系模型主要是用二維表格結(jié)構(gòu)表達(dá)實(shí)體集,用外鍵表示實(shí)體間聯(lián)系。關(guān)系模型是由若干個(gè)關(guān)系模式組成的集合。關(guān)系模型和層次、
9、網(wǎng)狀模型的最大判別是用關(guān)鍵碼而不是用指針導(dǎo)航數(shù)據(jù),表格簡(jiǎn)單用戶易懂。關(guān)系模型是數(shù)學(xué)化模型,SQL語(yǔ)言是關(guān)系數(shù)據(jù)庫(kù)的標(biāo)準(zhǔn)化語(yǔ)言,已得到了廣泛的應(yīng)用。DBMS的特點(diǎn)和功能可以分為三個(gè)子系統(tǒng):設(shè)計(jì)工具子系統(tǒng)、運(yùn)行子系統(tǒng)和DBMS引擎。設(shè)計(jì)子系統(tǒng)有一個(gè)方便數(shù)據(jù)庫(kù)及其應(yīng)用創(chuàng)建的工具集。它典型地包含產(chǎn)生表、窗體、查詢和報(bào)表的工具。DBMS產(chǎn)品還提供編程語(yǔ)言和對(duì)編程語(yǔ)言的接口。運(yùn)行子系統(tǒng)處理用設(shè)計(jì)子系統(tǒng)開(kāi)發(fā)的應(yīng)用組件。它所包含的運(yùn)行處理器用來(lái)處理窗體和數(shù)據(jù)庫(kù)的數(shù)據(jù)交互,以及回答查詢和打印報(bào)表等。DBMS引擎從其他兩個(gè)組件接受請(qǐng)求,并把它們翻譯成對(duì)操作系統(tǒng)的命令,以便讀寫(xiě)物理介質(zhì)上的數(shù)據(jù)。DBMS引擎還涉及事
10、務(wù)管理、鎖、備份和恢復(fù)。1.3貨物進(jìn)出庫(kù)管理系統(tǒng)簡(jiǎn)介當(dāng)今時(shí)代是信息大爆炸的時(shí)代,在各行各業(yè)中離不開(kāi)信息處理,計(jì)算機(jī)被廣泛應(yīng)用于信息處理系統(tǒng)的環(huán)境。利用計(jì)算機(jī)能夠進(jìn)行信息管理,進(jìn)行信息控制,不僅提高了工作效率,而且大大的提高了其安全性。計(jì)算機(jī)進(jìn)行信息管理與信息管理系統(tǒng)的開(kāi)發(fā)密切相關(guān)的,系統(tǒng)的開(kāi)發(fā)是系統(tǒng)管理的前提。倉(cāng)庫(kù)作為一種貨物資源的集散地,貨物的種類(lèi)繁多,包含很多的信息數(shù)據(jù)的管理。以前倉(cāng)庫(kù)進(jìn)行信息管理的方式主要是基于文本、表格等紙介質(zhì)的手工處理,對(duì)管理者的管理權(quán)限等不受約束,這樣容易引起資料外泄。此外,數(shù)據(jù)信息處理工作量大,容易出錯(cuò),數(shù)據(jù)繁多,容易丟失,且不易查找??偟膩?lái)說(shuō),缺乏系統(tǒng)、規(guī)范的信
11、息管理手段。因此,很有必要建立一個(gè)貨物進(jìn)出庫(kù)管理系統(tǒng),使貨物管理工作規(guī)范化,系統(tǒng)化,程序化。提高信息處理的速度和準(zhǔn)確性。1.3.1國(guó)內(nèi)外同類(lèi)管理軟件的研究現(xiàn)狀與發(fā)展趨勢(shì)現(xiàn)在對(duì)這類(lèi)系統(tǒng)的開(kāi)發(fā)與研究很有實(shí)用性的,基本上能滿足各企業(yè)的自身特點(diǎn),對(duì)倉(cāng)庫(kù)的管理,同時(shí),這類(lèi)系統(tǒng)在不斷地深入與發(fā)展,從而適用更多的企業(yè),但是都沒(méi)有針對(duì)大眾的廣泛應(yīng)用,只能運(yùn)用某個(gè)企業(yè)或單位,所以這一點(diǎn)還有待于進(jìn)一步開(kāi)發(fā)與實(shí)踐。此類(lèi)管理軟件將會(huì)向帶條碼貨物進(jìn)出庫(kù)管理系統(tǒng)方向發(fā)展,伴隨這著管理信息化、網(wǎng)絡(luò)化的發(fā)展,采用條碼技術(shù)進(jìn)行倉(cāng)庫(kù)管理,將是一個(gè)必然的發(fā)展趨勢(shì),也是要迫切解決的現(xiàn)實(shí)問(wèn)題。隨著信息化技術(shù)的不斷提高和應(yīng)用的日漸普及,
12、更多的商品擁有自己的條碼,采用條碼不但可以作業(yè)效率,而且能確保資料正確,同時(shí)可以減少因人為失誤所造成的損失。1、技術(shù)應(yīng)用于倉(cāng)庫(kù)管理是實(shí)現(xiàn)倉(cāng)庫(kù)管理自動(dòng)化的有效途徑倉(cāng)庫(kù)品種多,數(shù)量大。因此,要實(shí)現(xiàn)快速、準(zhǔn)確、高效的收發(fā)作業(yè),倉(cāng)儲(chǔ)管理自動(dòng)化勢(shì)在必行。而實(shí)現(xiàn)管理自動(dòng)化利用條碼技術(shù),也就是說(shuō)入庫(kù)及其包裝上貼條碼,用倉(cāng)庫(kù)信息管理系統(tǒng)進(jìn)行作業(yè),不光可以大大提高效率,同時(shí)也降低作業(yè)強(qiáng)度,還提高了產(chǎn)品收發(fā)作業(yè)準(zhǔn)確率,進(jìn)而實(shí)現(xiàn)倉(cāng)庫(kù)管理的全面自動(dòng)化。2、技術(shù)應(yīng)用于倉(cāng)庫(kù)管理對(duì)提高倉(cāng)庫(kù)作業(yè)效率有重要作用將條碼技術(shù)和倉(cāng)庫(kù)管理信息系統(tǒng)結(jié)合起來(lái),用于產(chǎn)品收、發(fā)、保管等全過(guò)程控制和管理,不僅改變了信息采集傳統(tǒng)的手工作業(yè)方式,同
13、時(shí)也降低了作業(yè)強(qiáng)度,還可避免由此造成的各種差錯(cuò),提高作業(yè)效率和科學(xué)管庫(kù)水平。3、技術(shù)應(yīng)用于倉(cāng)庫(kù)管理是完善產(chǎn)品保障信息網(wǎng)絡(luò)的重要手段儲(chǔ)存產(chǎn)品信息是產(chǎn)品保障信息網(wǎng)絡(luò)的重要組成部分,是做好產(chǎn)品供應(yīng)保障工作的基礎(chǔ)。產(chǎn)品保障信息網(wǎng)是實(shí)現(xiàn)物資儲(chǔ)運(yùn)全過(guò)程可視化的前提。條碼技術(shù)在儲(chǔ)存管理中的應(yīng)用,可進(jìn)一步完善系統(tǒng)各倉(cāng)庫(kù)之間及各倉(cāng)庫(kù)與作業(yè)主管部門(mén)之間的信息共享和交換功能,最終達(dá)到對(duì)產(chǎn)品的全程跟蹤管理。 1.3.2貨物進(jìn)出庫(kù)管理系統(tǒng)研究背景與意義目前,市場(chǎng)上也有很多軟件商提供倉(cāng)儲(chǔ)管理方面的軟件來(lái)滿足各行業(yè)客戶的需求,配合企業(yè)的信息化發(fā)展。但據(jù)抽樣調(diào)查,這些軟件的主要作用體現(xiàn)在提高效率和規(guī)范管理方面,而對(duì)企業(yè)業(yè)務(wù)流
14、程優(yōu)化和直接效益相關(guān)不高,倉(cāng)儲(chǔ)管理部門(mén)需要一套成本低、性能高、方便使用、功能完善的綜合倉(cāng)庫(kù)管理信息系統(tǒng)來(lái)提供幫助。隨著計(jì)算機(jī)技術(shù)的飛速發(fā)展,計(jì)算機(jī)在企業(yè)中應(yīng)用的普及為了滿足信息化管理的需要,實(shí)現(xiàn)倉(cāng)庫(kù)的電腦化管理很需要一個(gè)貨物出入庫(kù)管理系統(tǒng)第二章數(shù)據(jù)庫(kù)理論基礎(chǔ)2.1數(shù)據(jù)庫(kù)系統(tǒng)設(shè)計(jì)一個(gè)成功的信息管理系統(tǒng),是建立在許多條件之上的,而數(shù)據(jù)庫(kù)是其中一個(gè)非常重要的條件和關(guān)鍵技術(shù)。信息管理系統(tǒng)所涉及的數(shù)據(jù)庫(kù)設(shè)計(jì)分五個(gè)步驟:數(shù)據(jù)庫(kù)需求分析、概念設(shè)計(jì)、邏輯設(shè)計(jì)、物理設(shè)計(jì)與加載測(cè)試。數(shù)據(jù)庫(kù)設(shè)計(jì)的步驟主要是:(1)數(shù)據(jù)庫(kù)結(jié)構(gòu)定義:目前的DBMS有的是支持聯(lián)機(jī)事務(wù)處理CLTP的操作型DBMS,有的可支持?jǐn)?shù)據(jù)倉(cāng)庫(kù)、有聯(lián)
15、機(jī)分析處理CLAP功能的大型DBMS,有的數(shù)據(jù)庫(kù)是關(guān)系型的、有的可支持面向?qū)ο髷?shù)據(jù)庫(kù)。所以選擇DBMS,需要數(shù)據(jù)庫(kù)結(jié)構(gòu)定義。(2)數(shù)據(jù)表定義:數(shù)據(jù)表定義指定義數(shù)據(jù)庫(kù)中數(shù)據(jù)表的結(jié)構(gòu),數(shù)據(jù)表的邏輯結(jié)構(gòu)包括:屬性名稱、類(lèi)型、表示形式、缺省值、校驗(yàn)規(guī)則、是否關(guān)鍵字、可否為空等。關(guān)系型數(shù)據(jù)庫(kù)要盡量按照關(guān)系規(guī)范化要求進(jìn)行數(shù)據(jù)庫(kù)設(shè)計(jì),為了使效率提高,規(guī)范化程度應(yīng)根據(jù)應(yīng)用環(huán)境和條件來(lái)決定。數(shù)據(jù)表設(shè)計(jì)不僅要滿足數(shù)據(jù)存儲(chǔ)的要求,還要增加一些如反映有關(guān)信息、操作責(zé)任、中間數(shù)據(jù)的字段或臨時(shí)數(shù)據(jù)表。(3)存儲(chǔ)設(shè)備和存儲(chǔ)空間組織:確定數(shù)據(jù)的存放地點(diǎn)、存儲(chǔ)路徑、存儲(chǔ)設(shè)備等,備份方案,對(duì)多版本如何保證一致性和數(shù)據(jù)的完整性。(
16、4)數(shù)據(jù)使用權(quán)限設(shè)置:針對(duì)用戶的不同使用要求,確定數(shù)據(jù)的用戶使用權(quán)限,確保數(shù)據(jù)安全。(5)數(shù)據(jù)字典設(shè)計(jì):用數(shù)據(jù)字典描述數(shù)據(jù)庫(kù)的設(shè)計(jì),便于維護(hù)和修改。2.2 SQL語(yǔ)言介紹2.2.1 SQL基礎(chǔ)SQL(Structured Query Language,結(jié)構(gòu)查詢語(yǔ)言)是一個(gè)功能強(qiáng)大的數(shù)據(jù)庫(kù)語(yǔ)言。SQL通常使用于數(shù)據(jù)庫(kù)的通訊。ANSI即美國(guó)國(guó)家標(biāo)準(zhǔn)學(xué)會(huì)稱,SQL是關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)的標(biāo)準(zhǔn)語(yǔ)言。SQL語(yǔ)句通常用于完成一些數(shù)據(jù)庫(kù)的操作任務(wù),比如在數(shù)據(jù)庫(kù)中更新數(shù)據(jù),或者從數(shù)據(jù)庫(kù)中檢索數(shù)據(jù)。使用SQL的常見(jiàn)關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)有:Oracle、 Sybase、 Microsoft SQL Server、 A
17、ccess、 Ingres等等。標(biāo)準(zhǔn)的SQL命令,比如Select、 Insert、 Update、 Delete、 Create和 Drop常常被用于完成絕大多數(shù)數(shù)據(jù)庫(kù)的操作。SQL語(yǔ)言的突出優(yōu)點(diǎn)就是它的非過(guò)程化、統(tǒng)一,而且還是所有關(guān)系數(shù)據(jù)庫(kù)的公共語(yǔ)言。SQL語(yǔ)言一次處理一個(gè)記錄,對(duì)數(shù)據(jù)提供自動(dòng)導(dǎo)航,它允許用戶在高層的數(shù)據(jù)結(jié)構(gòu)上工作,而不對(duì)單個(gè)記錄進(jìn)行操作,可操作記錄集,所有SQL語(yǔ)句接受集合作為輸入,返回集合作為輸出。SQL的集合特性允許一條SQL語(yǔ)句的結(jié)果作為另一條SQL語(yǔ)句的輸入。不要求用戶指定對(duì)數(shù)據(jù)的存放方法,用戶更易集中精力于要得到的結(jié)果;作為統(tǒng)一的語(yǔ)言,SQL可用于所有用戶的DB
18、活動(dòng)模型,包括系統(tǒng)管理員、數(shù)據(jù)庫(kù)管理員、 應(yīng)用程序員、決策支持系統(tǒng)人員及許多其它類(lèi)型的終端用戶。2.2.2 SQL語(yǔ)句SQL語(yǔ)句概括起來(lái)可以分為數(shù)據(jù)操作語(yǔ)言,數(shù)據(jù)定義語(yǔ)言和數(shù)據(jù)控制語(yǔ)言幾大組,它們用于對(duì)數(shù)據(jù)庫(kù)數(shù)據(jù)的查詢,修改和更新,是一種完備的數(shù)據(jù)處理語(yǔ)言。主要用到的數(shù)據(jù)操作語(yǔ)言主要是:SELECT:用于數(shù)據(jù)檢索;INSERT:用于增加數(shù)據(jù)到數(shù)據(jù)庫(kù);UPDATE:用于從數(shù)據(jù)庫(kù)中修改現(xiàn)存的數(shù)據(jù);DELETE:用于從數(shù)據(jù)庫(kù)中刪除數(shù)據(jù)。第三章應(yīng)用系統(tǒng)開(kāi)發(fā)工具3.1 Visual Basic簡(jiǎn)介及實(shí)現(xiàn)原理Visual Basic(簡(jiǎn)稱VB)是美國(guó)微軟公司(Microsoft)于1990年推出的一套完整
19、的Windows系統(tǒng)軟件開(kāi)發(fā)工具,可用于開(kāi)發(fā)Windows環(huán)境下的各類(lèi)應(yīng)用程序,是一種可視化、面向?qū)ο蟆⒂檬录?qū)動(dòng)方式的結(jié)構(gòu)化高級(jí)程序設(shè)計(jì)語(yǔ)言和工具,是目前使用最廣泛的編程語(yǔ)言之一。至今以升級(jí)到了6.0版。VB的重要特點(diǎn)之一是可視性。系統(tǒng)引進(jìn)了窗體和控件的機(jī)制,用于設(shè)計(jì)應(yīng)用程序界面。用戶通過(guò)在屏幕上生成窗體,在窗體中繪制所需要的控件和按鈕,設(shè)計(jì)菜單和對(duì)話框,VB會(huì)自動(dòng)生成相應(yīng)的代碼。VB的另一重要特點(diǎn)是事件驅(qū)動(dòng)。當(dāng)窗體或控件上發(fā)生一個(gè)事件時(shí),VB立即把控制權(quán)交給程序員。程序員不必?fù)?dān)心如何判斷事件是否已發(fā)生,只需要編寫(xiě)一段代碼告訴計(jì)算機(jī)在事件發(fā)生以后應(yīng)該做什么工作就可以了。這樣,設(shè)計(jì)一個(gè)Wind
20、ows應(yīng)用程序簡(jiǎn)化為用鼠標(biāo)在屏幕上點(diǎn)擊、拖拽并添加少量的代碼就可以完成了,大大降低了對(duì)程序設(shè)計(jì)的要求,提高了應(yīng)用程序的開(kāi)發(fā)效率。利用VB的可視性特點(diǎn),可方便的設(shè)計(jì)了程序的窗體界面,并在各個(gè)窗體中的合適位置繪制所需的每種控件。如要修改窗體或控件的某項(xiàng)屬性,只需在相應(yīng)的窗體或控件的屬性窗口修改相應(yīng)的參數(shù)便可達(dá)到需要的設(shè)計(jì)效果。利用VB的事件驅(qū)動(dòng)性特點(diǎn),只需在窗體或控件上的代碼窗口中添加少量的代碼,便可達(dá)到告訴當(dāng)在相應(yīng)的窗體或控件上發(fā)生某一事件時(shí),它們?cè)谑录l(fā)生后應(yīng)該做什么工作的目的。例如幾個(gè)窗體上的添加、刪除、返回按鈕的作用,就是通過(guò)在各個(gè)相應(yīng)按鈕的代碼窗口中輸入相應(yīng)的代碼,來(lái)達(dá)到當(dāng)在幾個(gè)按鈕上出
21、現(xiàn)單擊(Click)事件后,相應(yīng)按鈕實(shí)現(xiàn)添加、刪除、返回的功能的。3.2 數(shù)據(jù)庫(kù)組件介紹在使用Visual Basic開(kāi)發(fā)數(shù)據(jù)庫(kù)應(yīng)用程序的時(shí)候,會(huì)經(jīng)常使用數(shù)據(jù)庫(kù)訪問(wèn)控件。這些控件包括:Data控件;ADO Data控件;DataList控件/DataCombo控件;DataGrid控件;MSChart控件。下面將分別對(duì)這些控件的主要功能及使用方法進(jìn)行介紹。3.2.1Data控件Data控件是Visual Basic中最基本的數(shù)據(jù)庫(kù)操作控件。它使用Recordset對(duì)象提供對(duì)存儲(chǔ)在數(shù)據(jù)庫(kù)中數(shù)據(jù)的訪問(wèn)。Data控件允許從一個(gè)記錄移動(dòng)到另一個(gè)記錄,并顯示和操縱來(lái)自被連接控件的記錄的數(shù)據(jù)。許多其他的數(shù)
22、據(jù)庫(kù)操作控件都需要Data控件或類(lèi)似的數(shù)據(jù)源控件(比如ADO Data控件)。Data控件可以執(zhí)行大部分?jǐn)?shù)據(jù)庫(kù)訪問(wèn)操作,但是它并不能顯示數(shù)據(jù)庫(kù)中數(shù)據(jù)的內(nèi)容。Data控件通常需要與其他控件結(jié)合使用。這些與Data控件結(jié)合使用的控件,可以稱之為“數(shù)據(jù)覺(jué)察控件”。因?yàn)槌绦騿T無(wú)需編寫(xiě)任何代碼,就可以在這些控件中顯示當(dāng)前記錄的數(shù)據(jù)。當(dāng)Data控件中當(dāng)前記錄發(fā)生變化時(shí),數(shù)據(jù)覺(jué)察控件的內(nèi)容也會(huì)隨之發(fā)生變化。當(dāng)與Data控件相連接時(shí),DataList、DataCombo、DataGrid和MSHFlexGrid控件都能管理記錄集合。所有這些控件都允許一次顯示或操作幾個(gè)記錄。內(nèi)部的Picture、Label、T
23、extBox、CheckBox、Image、OLE、ListBox和ComboBox控件也是數(shù)據(jù)覺(jué)察的,能和由Data控件管理的Recordset對(duì)象的某個(gè)字段相連接。3.2.2ADO Data控件ADO Data控件與內(nèi)部Data控件以及Remote Data控件(RDC)相似。用戶可以使用ADO Data控件快速地創(chuàng)建一個(gè)到數(shù)據(jù)庫(kù)的連接。3.2.3DataList控件/DataCombo控件DataList控件是一個(gè)數(shù)據(jù)綁定列表框,它可以自動(dòng)地由一個(gè)附加數(shù)據(jù)源中的一個(gè)字段充填,并且可選擇地更新另一個(gè)數(shù)據(jù)源中一個(gè)相關(guān)表的一個(gè)字段。DataCombo控件的功能與DataList控件完全相同,只
24、不過(guò)DataCombo控件是一個(gè)組合框。3.2.4DataGrid控件在許多情況下,需要使用表格形式來(lái)顯示數(shù)據(jù)庫(kù)中的數(shù)據(jù)。這時(shí)就要借助于DaatGrid控件。用戶可以設(shè)置DataGrid控件的DataSource屬性為一個(gè)ADO Data控件,從而將ADO Data中的數(shù)據(jù)自動(dòng)地填充到DataGrid表格中。這個(gè)DataGrid控件實(shí)際上是一個(gè)固定的列集合,每一列的行數(shù)都是不確定的。3.2.5MSChart控件MSChart控件的功能是以圖形方式顯示數(shù)據(jù)的圖表。這會(huì)使枯燥的數(shù)據(jù)變得更加生動(dòng)直觀,增加了程序的實(shí)用價(jià)值。MSChart控件支持一下特性:1、真三維表示;2、支持所有主要的圖表類(lèi)型;3
25、、數(shù)據(jù)網(wǎng)絡(luò)成員支持隨機(jī)數(shù)據(jù),數(shù)據(jù)數(shù)組。3.3 SQL語(yǔ)言在VB中的應(yīng)用1.SQL提供的實(shí)用函數(shù)為實(shí)現(xiàn)使用VB程序調(diào)用SQL語(yǔ)言訪問(wèn)Access數(shù)據(jù)庫(kù)多個(gè)記錄的目的,我們利用SQL提供的函數(shù)。Davg Function(求平均值)Dcount Function(計(jì)算滿足條件的記錄數(shù))Dfirst Function(返回記錄集的第一個(gè)記錄的某個(gè)域值)Dlast Function(返回記錄集的最后一個(gè)記錄的某個(gè)域值)Dlookup Function(返回記錄集中滿足待定條件的記錄的域值)Dsum Function(求和計(jì)算)Dmax Function(求最大值)Dmin Function(求最小值)
26、利用以上的SQL函數(shù)能夠方便地進(jìn)行數(shù)據(jù)庫(kù)文件記錄地查詢和統(tǒng)計(jì)工作,以Dsum為例,語(yǔ)法如下:Dsum(expr,clomain,criteria)例:計(jì)算目的港為英國(guó)地所有訂單地運(yùn)費(fèi)總和。假定“Orders”是數(shù)據(jù)庫(kù)文件中地一張表格,則x=Dsum(“Feight”,”O(jiān)rder”.”ship country=UK”)2.利用SQL訪問(wèn)多個(gè)記錄地方法在進(jìn)信息查詢和統(tǒng)計(jì)地過(guò)程中,我們往往需要從記錄集中根據(jù)待定的條件提取其中的一部分記錄信息。這種改變基于數(shù)據(jù)庫(kù)關(guān)系視圖的記錄集,這里我們介紹提取記錄信息的有效方法。(1)建立一個(gè)新的查詢set mydb=Open Database(“c:DIR1ma
27、nage.mdb”)(打開(kāi)數(shù)據(jù)庫(kù)文件c:DIR1manage.mdb)set myquery=mydb.creat QueryDef(“monthquery”)(創(chuàng)建查詢名為monthquery的查詢)Myquery.SQL=”select*from OPNRPT where mid $(year,7,2)=”&yeartext.text&”(利用查詢的SQL屬性,建立查詢依據(jù),即查詢的條件。這里用到了Setect Statement)以后如果需要這樣的查詢,只需要引用查詢名”monthquery”即可。需要說(shuō)明的兩點(diǎn)是:使用前先定義Dim mydb AS Database及myquery A
28、S querydef.查詢”monthquery”沒(méi)有使用Data控件,也就不直接顯示信息。(2)如何設(shè)置Data控件的Recordsource屬性設(shè)置Datasource屬性的命令為:Data.Recordsource=”Setect Vss_code,voyage,Sum(weight)AS Weight20 from monthquery where ctn_size=20group by Vss_code,Voyage”在這個(gè)命令中字段名Vss_code為船名代碼,Voyage為航次,ctn_size為集裝箱號(hào),weight為集裝箱重量。計(jì)算機(jī)通過(guò)增加了條件的monthquery查詢組
29、成了新的記錄集。AS為關(guān)鍵字表示,并定義了別名。通過(guò)這一個(gè)方法定義的記錄集可以使用move和Find方法逐條記錄的進(jìn)行操作。3.4 Access 2000簡(jiǎn)述Access2000 是關(guān)系數(shù)據(jù)庫(kù)開(kāi)發(fā)工具,1992年,Microsoft Access作為第一個(gè)面向Windows操作平臺(tái)的桌面數(shù)據(jù)庫(kù)管理系統(tǒng)而誕生,它不但充分體現(xiàn)了面向?qū)ο蟮乃枷?,提供可視化的編程手段,而且充分利用了Windows操作平臺(tái)的優(yōu)越性,采用與Windows完全一致的界面風(fēng)格,使界面非常友好。在Access中,用戶不需要編寫(xiě)復(fù)雜的程序就可以建立一個(gè)完整的數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng),是一個(gè)典型的開(kāi)放式數(shù)據(jù)庫(kù)系統(tǒng),它可以和Windows下的
30、其他應(yīng)用程序共享數(shù)據(jù)庫(kù)資源。數(shù)據(jù)庫(kù)能匯集各種信息以供查詢、存儲(chǔ)和檢索。Access 的優(yōu)點(diǎn)在于它能使用數(shù)據(jù)表示圖或自定義窗體收集信息。數(shù)據(jù)表示圖提供了一種類(lèi)似于 Excel 的電子表格,可以使數(shù)據(jù)庫(kù)一目了然。另外,Access 允許創(chuàng)建自定義報(bào)表用于打印或輸出數(shù)據(jù)庫(kù)中的信息。Access也提供了數(shù)據(jù)存儲(chǔ)庫(kù),可以使用桌面數(shù)據(jù)庫(kù)文件把數(shù)據(jù)庫(kù)文件置于網(wǎng)絡(luò)文件服務(wù)器,與其他網(wǎng)絡(luò)用戶共享數(shù)據(jù)庫(kù)。Access 是一種關(guān)系數(shù)據(jù)庫(kù)工具,關(guān)系數(shù)據(jù)庫(kù)是已開(kāi)發(fā)的最通用的數(shù)據(jù)庫(kù)之一。如上所述,Access 作為關(guān)系數(shù)據(jù)庫(kù)開(kāi)發(fā)具備了許多優(yōu)點(diǎn),可以在一個(gè)數(shù)據(jù)包中同時(shí)擁有桌面數(shù)據(jù)庫(kù)的便利和關(guān)系數(shù)據(jù)庫(kù)的強(qiáng)大功能。第四章 貨物
31、進(jìn)出庫(kù)管理系統(tǒng)設(shè)計(jì)分析.4.1 開(kāi)發(fā)現(xiàn)狀.4.1.1 自己開(kāi)發(fā)的現(xiàn)狀 到目前為止通過(guò)我大量的搜集資料已經(jīng)基本了解設(shè)計(jì)這套系統(tǒng)所需要的模塊以及各個(gè)模塊的功能是什么。4.1.2 存在的問(wèn)題 雖然知道這個(gè)系統(tǒng)的主要模塊是什么,但是要實(shí)現(xiàn)這些模塊的功能還需要知道該怎么樣才能實(shí)現(xiàn)各個(gè)模塊的功能。4.1.3 邏輯設(shè)計(jì)方案 1 弄清這個(gè)系統(tǒng)的流程是什么。 2 流程中的各個(gè)模塊是什么及其功能。4.1.4 怎么樣解決方案 通過(guò)總體設(shè)計(jì)來(lái)規(guī)劃整個(gè)系統(tǒng)的結(jié)構(gòu)和流程 4.2需求分析本套應(yīng)用程序名稱為“貨物進(jìn)出庫(kù)管理系統(tǒng)”,主要用于倉(cāng)庫(kù)貨物信息的管理,系統(tǒng)包括倉(cāng)庫(kù)管理、入庫(kù)、出庫(kù)、一些統(tǒng)計(jì)查詢和報(bào)表等幾部分組成。貨物進(jìn)
32、出庫(kù)管理系統(tǒng)需滿足倉(cāng)庫(kù)管理員及工作人員的需求,他們具有登陸應(yīng)用系統(tǒng)的權(quán)限,所以需要對(duì)工作人員的登陸本模塊進(jìn)行更多的考慮,設(shè)計(jì)不同用戶的操作權(quán)限和登陸方法。對(duì)于一個(gè)倉(cāng)庫(kù)來(lái)說(shuō),最大的功能就是存儲(chǔ)貨物,所以倉(cāng)庫(kù)管理就是對(duì)貨物信息,倉(cāng)庫(kù)信息,短線貨物及超儲(chǔ)貨物的管理,用戶可以根據(jù)實(shí)際情況對(duì)各種貨物信息進(jìn)行分類(lèi)管理,包括添加,刪除更新數(shù)據(jù)庫(kù)等。當(dāng)然,倉(cāng)庫(kù)中貨物入庫(kù)也是常有的事,入庫(kù)管理操作就是對(duì)于貨物入庫(kù)情況的管理,用戶可以方便地輸入一些貨物的信息。有了貨物的入庫(kù),自然也就有貨物的出庫(kù),這部分提供的功能與入庫(kù)操作流程差不多,有所區(qū)別的只是對(duì)一些出庫(kù)貨物的管理,也很方便數(shù)據(jù)的輸入。倉(cāng)庫(kù)貨物的信息量大,數(shù)據(jù)
33、安全性和保密性要求高。本系統(tǒng)實(shí)現(xiàn)對(duì)貨物信息的管理和總體的統(tǒng)計(jì)等,倉(cāng)庫(kù)信息,供貨單位和經(jīng)辦人員信息的查看及維護(hù)。倉(cāng)庫(kù)管理人員可以瀏覽、查詢、添加、刪除等貨物的基本信息以及統(tǒng)計(jì)等,并可以對(duì)一些基本的信息生成報(bào)表形式,并打印輸出的功能。報(bào)表是一個(gè)數(shù)據(jù)庫(kù)中最重要的功能之一,有了報(bào)表才能清楚地知道貨物的出入庫(kù)情況,在數(shù)據(jù)報(bào)表功能中包括出庫(kù)報(bào)表,倉(cāng)庫(kù)報(bào)表及經(jīng)辦人員報(bào)表等一些基本信息的打印,方便簡(jiǎn)潔。本系統(tǒng)基本涵蓋了倉(cāng)庫(kù)管理的主要需求,具有完善細(xì)致的功能、友好的用戶界面、強(qiáng)大的數(shù)據(jù)處理功能和完備的安全機(jī)制;隨心所欲的查詢和所見(jiàn)即所得的打印功能,并全面支持分析和決策的功能。 系統(tǒng)特色: 1.設(shè)置系統(tǒng)用戶登陸功
34、能,即時(shí)對(duì)系統(tǒng)數(shù)據(jù)進(jìn)行安全設(shè)置與保護(hù)。 2.友好的用戶界面,業(yè)務(wù)操作簡(jiǎn)單,進(jìn)入系統(tǒng)即能使用。3.成熟先進(jìn)的技術(shù)和系統(tǒng)構(gòu)架,采用先進(jìn)的數(shù)據(jù)庫(kù)訪問(wèn)方式,數(shù)據(jù)更安全,性能更穩(wěn)定。4.強(qiáng)大的數(shù)據(jù)處理能力和開(kāi)放的數(shù)據(jù)接口,選用具有大型數(shù)據(jù)庫(kù)安全機(jī)制的數(shù)據(jù)庫(kù)系統(tǒng),提供各種級(jí)別的數(shù)據(jù)保護(hù)和權(quán)限控制方式,確保數(shù)據(jù)的安全可靠。5.系統(tǒng)每種操作都可以通過(guò)菜單來(lái)進(jìn)行。操作快捷、方便。易懂易會(huì)。系統(tǒng)集輸入、維護(hù)、查詢、統(tǒng)計(jì)和各種處理為一體,信息導(dǎo)入導(dǎo)出方便共享。貨物進(jìn)出庫(kù)倉(cāng)庫(kù)管理入庫(kù)管理出庫(kù)管理盤(pán)存管理綜合管理附項(xiàng)分類(lèi)歷史數(shù)據(jù)管理打印、查詢系統(tǒng)貨品信息管理貨品倉(cāng)庫(kù)管理短線貨品管理超儲(chǔ)貨品管理出庫(kù)登記管理貨品出庫(kù)年度統(tǒng)
35、計(jì)收貨單位年度收貨金額統(tǒng)計(jì)盤(pán)存錄入貨品出入庫(kù)期間匯總表倉(cāng)庫(kù)信息管理供貨單位管理收貨單位管理經(jīng)辦人員管理4.2系統(tǒng)模塊圖基本模塊與功能:1.系統(tǒng)包括用戶管理,密碼管理,關(guān)閉系統(tǒng),以及數(shù)據(jù)的備份與恢復(fù),可以根據(jù)需要對(duì)整個(gè)數(shù)據(jù)庫(kù)進(jìn)行備份,以確保數(shù)據(jù)的安全性。幫助:本系統(tǒng)的幫助信息,包括應(yīng)用程序的版本信息;2.倉(cāng)庫(kù)管理貨物信息管理:對(duì)倉(cāng)庫(kù)里的貨物進(jìn)行登記;貨物倉(cāng)庫(kù)管理:管理倉(cāng)庫(kù)的倉(cāng)庫(kù)情況;短線貨物管理:對(duì)倉(cāng)庫(kù)里短線的貨物進(jìn)行登記,以便及時(shí)采購(gòu)補(bǔ)貨;超儲(chǔ)貨物管理:對(duì)倉(cāng)庫(kù)里超儲(chǔ)的貨物進(jìn)行登記,控制倉(cāng)庫(kù)量,減少進(jìn)貨;3.入庫(kù)管理入庫(kù)登記管理:能對(duì)貨物的入庫(kù)登記,刪除,更改等;入庫(kù)期間統(tǒng)計(jì):貨物入庫(kù)期間年度的
36、統(tǒng)計(jì);供貨單位期間供貨金額統(tǒng)計(jì):對(duì)貨物供應(yīng)的金額進(jìn)行統(tǒng)計(jì);4.出庫(kù)管理對(duì)貨物出庫(kù)期間的年度統(tǒng)計(jì),出庫(kù)登記,及收獲單位金額統(tǒng)計(jì)等;5.盤(pán)存管理對(duì)盤(pán)存貨物信息的盤(pán)存錄入;6.綜合管理可根據(jù)同一貨物的出入庫(kù)情況,對(duì)倉(cāng)庫(kù)情況的匯總;7.附項(xiàng)管理對(duì)供貨單位情況,經(jīng)辦人員,收貨單位情況,倉(cāng)庫(kù)信息進(jìn)行登記管理,可進(jìn)行添加,刪除等操作;8.歷史數(shù)據(jù)管理對(duì)歷史倉(cāng)庫(kù),歷史出庫(kù),歷史出庫(kù)情況進(jìn)行管理;9.打印與查詢可根據(jù)輸入的條件,對(duì)貨物的入庫(kù)信息,倉(cāng)庫(kù)信息等進(jìn)行簡(jiǎn)單查詢和組合查詢。登陸貨物進(jìn)出庫(kù)管理系統(tǒng)驗(yàn)證用戶信息系統(tǒng)主窗體倉(cāng)庫(kù)管理入庫(kù)管理出庫(kù)管理盤(pán)存管理綜合管理附項(xiàng)分類(lèi)歷史數(shù)據(jù)管理打印、查詢系統(tǒng)貨品入庫(kù)單經(jīng)辦人
37、員報(bào)表貨品出庫(kù)單數(shù)據(jù)備份備份輸出倉(cāng)庫(kù)匯總圖41 貨物進(jìn)出庫(kù)管理系統(tǒng)數(shù)據(jù)流程圖4.3數(shù)據(jù)流程圖 密碼錯(cuò)誤 匯總計(jì)算貨物信息管理數(shù)據(jù)流程圖:貨品登記基本信息錄入貨品基本信息管理貨品調(diào)配匯總出庫(kù)貨品信息管理入庫(kù)貨品信息管理貨品其他信息管理圖42 貨品信息管理數(shù)據(jù)流程圖4.4數(shù)據(jù)庫(kù)設(shè)計(jì)本貨物進(jìn)出庫(kù)管理系統(tǒng)是應(yīng)用在單機(jī)系統(tǒng)上的,所以只需建立起一個(gè)數(shù)據(jù)庫(kù),在此數(shù)據(jù)庫(kù)基礎(chǔ)上建立起表格,現(xiàn)將部分?jǐn)?shù)據(jù)結(jié)構(gòu)表描述如下:貨物信息表字段名數(shù)據(jù)類(lèi)型字段長(zhǎng)度是否為空貨物編碼文本5貨物名稱文本10類(lèi)別文本8型號(hào)文本4單位文本2倉(cāng)庫(kù)編碼文本5存放倉(cāng)庫(kù)文本12入庫(kù)計(jì)劃單價(jià)貨幣出庫(kù)計(jì)劃單價(jià)貨幣原始倉(cāng)庫(kù)數(shù)字長(zhǎng)整型默認(rèn)貨位文本5警戒
38、底線倉(cāng)庫(kù)數(shù)字長(zhǎng)整型警戒高線倉(cāng)庫(kù)數(shù)字長(zhǎng)整型表1貨品信息表入庫(kù)登記表字段名數(shù)據(jù)類(lèi)型字段長(zhǎng)度是否為空入庫(kù)日期日期/時(shí)間入庫(kù)單號(hào)文本10貨物編碼文本5數(shù)量數(shù)字長(zhǎng)整型進(jìn)貨價(jià)貨幣總額貨幣已付貨款貨幣供貨單位編碼文本5供貨單位文本20經(jīng)辦人編碼文本5經(jīng)辦人文本8增值稅率數(shù)字單精度型備注備注表2入庫(kù)登記表出庫(kù)登記表字段名數(shù)據(jù)類(lèi)型字段長(zhǎng)度是否為空出庫(kù)日期日期/時(shí)間出庫(kù)單號(hào)文本10貨物編碼文本5貨物名稱文本10數(shù)量數(shù)字長(zhǎng)整型單價(jià)貨幣出貨價(jià)貨幣總額貨幣已收獲款貨幣收貨單位編碼文本5收貨單位文本20經(jīng)辦人編碼文本5經(jīng)辦人文本8增值稅率數(shù)字單精度型備注備注表3貨品出庫(kù)表倉(cāng)庫(kù)信息表字段名數(shù)據(jù)類(lèi)型字段長(zhǎng)度是否為空倉(cāng)庫(kù)編號(hào)文
39、本5倉(cāng)庫(kù)名稱文本12貨物編號(hào)文本2存貨種類(lèi)文本2存貨價(jià)值貨幣表4倉(cāng)庫(kù)信息表供貨單位信息表(收貨單位表)字段名數(shù)據(jù)類(lèi)型字段長(zhǎng)度是否為空單位編號(hào)文本5單位名稱文本50單位地址文本50電話文本15聯(lián)系人文本8表5供貨單位信息表經(jīng)辦人員表字段名數(shù)據(jù)類(lèi)型字段長(zhǎng)度是否為空編號(hào)文本5姓名文本8家庭住址文本50辦公電話文本15家庭電話文本15表6經(jīng)辦人員表用戶表字段名數(shù)據(jù)類(lèi)型字段長(zhǎng)度是否為空UserID文本10userPWD文本6表7用戶表另外,我們還建立了幾張查詢表,用以存放部分用于計(jì)算的統(tǒng)計(jì)信息,以便查詢。入庫(kù)登記統(tǒng)計(jì)表 入庫(kù)登記_合計(jì)貨物入庫(kù)年度統(tǒng)計(jì)表入庫(kù)登記_n供貨單位年度供貨金額統(tǒng)計(jì)表入庫(kù)登記_w倉(cāng)
40、庫(kù)匯總表倉(cāng)庫(kù)出庫(kù)登記統(tǒng)計(jì)表出庫(kù)登記_合計(jì)貨物出庫(kù)年度統(tǒng)計(jì)表出庫(kù)登記_h收貨單位年度收貨金額統(tǒng)計(jì)表出庫(kù)登記_d入庫(kù)登記_合計(jì)表與出庫(kù)登記_合計(jì)分別是以入庫(kù)登記表和出庫(kù)登記表為基礎(chǔ)的,所以此處不再描述;倉(cāng)庫(kù)匯總表主要由出庫(kù)表和入庫(kù)表建立關(guān)系獲得。入庫(kù)登記_n字段名數(shù)據(jù)類(lèi)型字段長(zhǎng)度是否為空貨物名稱文本10入庫(kù)日期日期/時(shí)間年度數(shù)量數(shù)字長(zhǎng)整型表8 入庫(kù)登記_n入庫(kù)登記_w字段名數(shù)據(jù)類(lèi)型字段長(zhǎng)度是否為空供貨單位文本50入庫(kù)日期日期/時(shí)間年度供貨總額數(shù)字長(zhǎng)整型表9 入庫(kù)登記_w倉(cāng)庫(kù)匯總字段名數(shù)據(jù)類(lèi)型字段長(zhǎng)度是否為空貨物編碼文本5入庫(kù)日期日期/時(shí)間貨物名稱文本10數(shù)量(入庫(kù))數(shù)字長(zhǎng)整型進(jìn)貨價(jià)貨幣數(shù)量(出庫(kù))
41、數(shù)字長(zhǎng)整型倉(cāng)庫(kù)數(shù)量數(shù)字長(zhǎng)整型表10 倉(cāng)庫(kù)匯總表出庫(kù)登記_h字段名數(shù)據(jù)類(lèi)型字段長(zhǎng)度是否為空貨物名稱文本10出庫(kù)日期日期/時(shí)間年度數(shù)量數(shù)字長(zhǎng)整型表11 出庫(kù)登記_h出庫(kù)登記_d字段名數(shù)據(jù)類(lèi)型字段長(zhǎng)度是否為空收貨單位文本50出庫(kù)日期日期/時(shí)間年度金額總額數(shù)字長(zhǎng)整型表12 出庫(kù)登記_d第五章應(yīng)用程序設(shè)計(jì)5.1程序結(jié)構(gòu)本應(yīng)用程序由33個(gè)窗體組成,主要的分別是:主窗體,歡迎界面,登陸窗體,入庫(kù)窗體,出庫(kù)窗體,倉(cāng)庫(kù)匯總,打印及查詢等窗體組成。通過(guò)運(yùn)行程序首先進(jìn)入歡迎界面和登陸窗體,通過(guò)輸入密碼,驗(yàn)證身份后進(jìn)入主窗體,在主窗體上有10個(gè)菜單項(xiàng),分別對(duì)應(yīng)各自的功能模塊窗體,包括系統(tǒng),倉(cāng)庫(kù)管理,入庫(kù)管理,出庫(kù)管理
42、,盤(pán)存管理,綜合管理,附項(xiàng)管理,歷史數(shù)據(jù)管理,打印和查詢。需要哪個(gè)功能的時(shí)候就點(diǎn)哪個(gè)菜單,相對(duì)應(yīng)的窗體會(huì)自動(dòng)彈出。5.2 程序源代碼程序?qū)崿F(xiàn)的部分代碼如下:公共模塊Public date1 As StringPublic date2 As StringPublic gUserName As String 保存用戶名添加執(zhí)行SQL語(yǔ)句的函數(shù)Public Function transactSQL(ByVal sql As String) As ADODB.RecordsetDim con As ADODB.ConnectionDim rs As ADODB.RecordsetDim strConn
43、ection As StringDim strArray() As StringSet con = New ADODB.Connection 創(chuàng)建連接Set rs = New ADODB.Recordset 創(chuàng)建記錄集On Error GoTo TransactSQL_Error strConnection = Provider=Microsoft.jet.oledb.4.0;Data Source=E:倉(cāng)庫(kù)管理kucun.mdb strArray = Split(sql) con.Open strConnection 打開(kāi)連接 If StrComp(UCase$(strArray(0), s
44、elect, vbTextCompare) = 0 Then rs.Open Trim$(sql), con, adOpenKeyset, adLockOptimistic Set transactSQL = rs 返回記錄集 iflag = 1 Else con.Execute sql 執(zhí)行命令 iflag = 1 End IfTransactSQL_Exit: Set rs = Nothing Set con = Nothing Exit FunctionTransactSQL_Error: MsgBox 查詢錯(cuò)誤: & Err.Description iflag = 2 Resume T
45、ransactSQL_ExitEnd Function主窗體的程序代碼圖51 主窗體界面 Private Sub a1_Click()Form1.ShowEnd SubPrivate Sub a2_Click()Dim fAdd As New frmAddUser fAdd.Show fAdd.ZOrder 0End SubPrivate Sub a3_Click()Dim fChangePWD As New frmChangePWD fChangePWD.ShowEnd SubPrivate Sub a4_Click()frmAbout.ShowEnd SubPrivate Sub a5_C
46、lick() 調(diào)入數(shù)據(jù)備份 Load main_sjbf main_sjbf.Show main.Enabled = FalseEnd SubPrivate Sub a6_Click() 調(diào)入數(shù)據(jù)恢復(fù) Load main_sjhf main_sjhf.Show main.HideEnd SubPrivate Sub b1_Click()frm貨物信息.ShowEnd SubPrivate Sub b12_Click() sql = select * from 貨物信息 order by 貨物編碼 frmProInfo.createList (sql) frmProInfo.ShowEnd Su
47、bPrivate Sub b2_Click()frm貨物倉(cāng)庫(kù).ShowEnd SubPrivate Sub B3_Click()frm超儲(chǔ)貨物.ShowEnd SubPrivate Sub b4_Click()frm短線貨物.ShowEnd SubPrivate Sub c1_Click()frm入庫(kù)登記.ShowEnd SubPrivate Sub c2_Click()frm貨物入庫(kù)年度統(tǒng)計(jì).ShowEnd SubPrivate Sub c3_Click()frm供貨單位供貨分類(lèi)金額統(tǒng)計(jì).ShowEnd SubPrivate Sub c4_Click()frm供貨單位年度供貨金額統(tǒng)計(jì).Sho
48、wEnd SubPrivate Sub Command1_Click()date1 = Text1.Text & / & Text3.Text & / & Text2.Textdate2 = Text6.Text & / & Text4.Text & / & Text5.TextText7.Text = date1End SubPrivate Sub d1_Click()frm出庫(kù)登記.ShowEnd SubPrivate Sub d2_Click()frm貨物出庫(kù)年度統(tǒng)計(jì).ShowEnd SubPrivate Sub d3_Click()frm收貨單位期間收貨統(tǒng)計(jì).ShowEnd SubPr
49、ivate Sub d4_Click()frm收貨單位年度收貨金額統(tǒng)計(jì).ShowEnd SubPrivate Sub e1_Click()frm盤(pán)存錄入.ShowEnd SubPrivate Sub e2_Click()frm盤(pán)存表.ShowEnd SubPrivate Sub f1_Click()frm貨物出入?yún)R總表.ShowEnd SubPrivate Sub g1_Click()frm經(jīng)辦人員.ShowEnd SubPrivate Sub g2_Click()frm供貨單位.ShowEnd SubPrivate Sub g3_Click()frm倉(cāng)庫(kù)信息.ShowEnd SubPriva
50、te Sub g5_Click()Form6.ShowEnd SubPrivate Sub h1_Click()frm歷史倉(cāng)庫(kù).ShowEnd SubPrivate Sub h2_Click()frm歷史入庫(kù).ShowEnd SubPrivate Sub h3_Click()frm歷史出庫(kù).ShowEnd SubPrivate Sub i1_Click()DataReport1.ShowEnd SubPrivate Sub i2_Click()DataReport2.ShowEnd SubPrivate Sub i3_Click()DataReport3.ShowEnd SubPrivate
51、Sub j1_Click()Form2.ShowEnd SubPrivate Sub j2_Click()Form3.ShowEnd SubPrivate Sub j3_Click()Form4.ShowEnd SubPrivate Sub j4_Click()Form5.ShowEnd SubPrivate Sub Toolbar1_ButtonClick(ByVal Button As ComctlLib.Button)Select Case Button.KeyCase Is = rk 調(diào)入入庫(kù)登記c1_ClickCase Is = ck 調(diào)入出庫(kù)登記d1_ClickCase Is =
52、kchz 調(diào)入倉(cāng)庫(kù)匯總f1_ClickCase Is = zhcx 調(diào)入組合查詢j4_ClickCase Is = sjbf 調(diào)入數(shù)據(jù)備份a5_ClickEnd SelectEnd SubPrivate Sub x_Click()EndEnd Sub 登陸模塊的實(shí)現(xiàn)Private Sub cmdLogin_Click()denlu_name = txtUserName.Textdenlu_pass = txtPassword.TextDim mycn As New ADODB.ConnectionDim myrs As New ADODB.RecordsetSet myrs = New ADO
53、DB.Recordsetmycn.Open Provider=Microsoft.Jet.OLEDB.4.0;Data Source=kucun.mdb;myrs.Open SELECT * FROM 用戶 where userID= + denlu_name + ;, mycn, adOpenKeyset, adLockOptimisticIf myrs.BOF = True And myrs.EOF = True ThenMsgBox 查無(wú)此人, , 登陸信息Else If myrs(userPWD) = denlu_pass Then MsgBox 身份正確, , 登陸信息 main.S
54、how Unload Me Else MsgBox 密碼不正確, , 登陸信息 End If End If End Sub 添加用戶模塊的實(shí)現(xiàn)Option ExplicitPrivate Sub Command1_Click() Dim sql As String Dim rs As ADODB.Recordset If Trim(UserName.Text) = Then 判斷用戶名稱是否為空 MsgBox 請(qǐng)輸入用戶名稱!, vbOKOnly + vbExclamation, 警告 Exit Sub UserName.SetFocus Else sql = select * from 用戶
55、 where UserID= & UserName & Set rs = transactSQL(sql) If rs.EOF = False Then 判斷是否已經(jīng)存在用戶 MsgBox 這個(gè)用戶已經(jīng)存在!請(qǐng)重新輸入用戶名稱!, vbOKOnly + vbExclamation, 警告 UserName.SetFocus UserName.Text = PassWord.Text = ConfirmPWD.Text = Exit Sub Else If Trim(PassWord.Text) Trim(ConfirmPWD.Text) Then 判斷兩次密碼是否相同 MsgBox 兩次輸入的密碼不一致,請(qǐng)重新輸入密碼!, vbOKOnly + vbExclamation, 警告 PassWord.Text = ConfirmPWD.Text = PassWord.SetFocus Exit Sub ElseIf Trim(PassWord.Text) = Then 判斷密碼是否為空 MsgBox 密碼不能為空!, vbOKOnly + vbExcla
- 溫馨提示:
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. 裝配圖網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 6.煤礦安全生產(chǎn)科普知識(shí)競(jìng)賽題含答案
- 2.煤礦爆破工技能鑒定試題含答案
- 3.爆破工培訓(xùn)考試試題含答案
- 2.煤礦安全監(jiān)察人員模擬考試題庫(kù)試卷含答案
- 3.金屬非金屬礦山安全管理人員(地下礦山)安全生產(chǎn)模擬考試題庫(kù)試卷含答案
- 4.煤礦特種作業(yè)人員井下電鉗工模擬考試題庫(kù)試卷含答案
- 1 煤礦安全生產(chǎn)及管理知識(shí)測(cè)試題庫(kù)及答案
- 2 各種煤礦安全考試試題含答案
- 1 煤礦安全檢查考試題
- 1 井下放炮員練習(xí)題含答案
- 2煤礦安全監(jiān)測(cè)工種技術(shù)比武題庫(kù)含解析
- 1 礦山應(yīng)急救援安全知識(shí)競(jìng)賽試題
- 1 礦井泵工考試練習(xí)題含答案
- 2煤礦爆破工考試復(fù)習(xí)題含答案
- 1 各種煤礦安全考試試題含答案