庫(kù)存管理系統(tǒng)_第1頁(yè)
庫(kù)存管理系統(tǒng)_第2頁(yè)
庫(kù)存管理系統(tǒng)_第3頁(yè)
庫(kù)存管理系統(tǒng)_第4頁(yè)
庫(kù)存管理系統(tǒng)_第5頁(yè)
已閱讀5頁(yè),還剩28頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、庫(kù)存管理系統(tǒng)庫(kù)存管理系統(tǒng)前言:倉(cāng)庫(kù)庫(kù)存管理系統(tǒng)是一個(gè)企業(yè)不可缺少的部分,它的內(nèi)容對(duì)于企業(yè)的決策者和管理者來(lái)說(shuō)都至關(guān)重要,所以倉(cāng)庫(kù)庫(kù)存管理系統(tǒng)應(yīng)該能夠?yàn)橛脩籼峁┏渥愕男畔⒑涂旖莸牟樵兪侄巍5恢币詠?lái)人們使用傳統(tǒng)人工的方式管理倉(cāng)庫(kù)中的各種物資設(shè)備,這種管理方式存在著許多缺點(diǎn),如:效率低、另外時(shí)間一長(zhǎng),將產(chǎn)生大量的文件和數(shù)據(jù),這對(duì)于查找、更新和維護(hù)都帶來(lái)了不少的困難。隨著科學(xué)技術(shù)的不斷提高,計(jì)算機(jī)科學(xué)日漸成熟,其強(qiáng)大的功能已為人們深刻認(rèn)識(shí),它已進(jìn)入人類社會(huì)的各個(gè)領(lǐng)域并發(fā)揮著越來(lái)越重要的作用。作為計(jì)算機(jī)應(yīng)用的一部分,使用計(jì)算機(jī)對(duì)物資信息進(jìn)行管理,具有著手工管理所無(wú)法比擬的優(yōu)點(diǎn).例如:檢索迅速、查找方便

2、、可靠性高、存儲(chǔ)量大、保密性好、壽命長(zhǎng)、成本低等。這些優(yōu)點(diǎn)能夠極大地提高人事勞資管理的效率,也是企業(yè)的科學(xué)化、正規(guī)化管理,與世界接軌的重要條件。因此,開發(fā)這樣一套庫(kù)存管理軟件成為很有必要的事情。【摘要】庫(kù)存管理系統(tǒng)是典型的信息管理系統(tǒng)(MIS),其開發(fā)主要包括后臺(tái)數(shù)據(jù)庫(kù)的建立和維護(hù)以及前端應(yīng)用程序的開發(fā)兩個(gè)方面。對(duì)于前者要求建立起數(shù)據(jù)一致性和完整性強(qiáng).數(shù)據(jù)安全性好的庫(kù)。而對(duì)于后者則要求應(yīng)用程序功能完備,易使用等特點(diǎn)。經(jīng)過分析如此情況,我們使用微軟公司的VisualBasic開發(fā)工具,利用其提供的各種面向?qū)ο蟮拈_發(fā)工具,尤其是ADO是能方便而簡(jiǎn)潔操縱數(shù)據(jù)庫(kù)的智能化對(duì)象,短期內(nèi)就可以開發(fā)出用戶滿意

3、的可行系統(tǒng)。關(guān)鍵字:庫(kù)存管理ADO面相對(duì)象庫(kù)存ABS析AbstractStockpilemanagesystemisatypicalMIS.It'sdevelopmentmostlyincludethefoundationandmaintenanceofthedatabaseandthedevelopmentoftheclientapplicationprogramme.Fortheformerwemusteatablishabetterdatabase,whichhaswelldataconsistencyanddatasecurity.Forthelatterwemustmaket

4、heprogrammehasself-containedfunctionandeasytobeuse.Byanalysingthesituation,weusetheVBoftheMicrosoftcompanyasclienttool,andusesomeofthetoolsofopp,especiallyADOobject,whichcaneasilyconvenientlymanipulatethedatabase.WeuseitcandevelopasatisfactorysysteminshorttimeKey:StockpilemanageADOOPPTheanalysisofSt

5、ockpile第一章概述1.1 庫(kù)存管理的必要性大多數(shù)庫(kù)存管理理論認(rèn)為,庫(kù)存是物理上和邏輯上庫(kù)房庫(kù)位的所有有形和無(wú)形物料極其價(jià)值的總和,具體包括成品、原材料、在制品、在途品、生產(chǎn)前物料、備品備件等。雖然持有一些庫(kù)存是必要的,過量的庫(kù)存卻非但沒有用處而且占用了資金。占用的資金對(duì)于公司發(fā)展、新產(chǎn)品開發(fā)等都是非常需要的;減少資金占用還可以大大減少來(lái)自銀行貸款的利息和風(fēng)險(xiǎn)。對(duì)那些采購(gòu)量特別大、采購(gòu)件市場(chǎng)價(jià)格有波動(dòng)的物料庫(kù)存,加強(qiáng)庫(kù)存管理效果更為明顯。因此,平衡公司庫(kù)存投資與其它資金需求至關(guān)重要。1.2 庫(kù)存分類企業(yè)怎樣管理庫(kù)存,是庫(kù)存管理的最大難點(diǎn)和挑戰(zhàn)。因此,通過MRPII物料主計(jì)劃模塊和采購(gòu)模塊建

6、立計(jì)劃與控制系統(tǒng)以有效地實(shí)施庫(kù)存管理和采購(gòu)補(bǔ)償成為題中應(yīng)有之義。通過調(diào)查,我們得知任何庫(kù)存均可分為如下三類:A類物品:高值價(jià)值占庫(kù)存總值70-80%的相對(duì)少數(shù)物品。通常為物品的15-20%。類類物品:中值總值占庫(kù)存總值的15-20%。物品數(shù)居中,通常占物品的30-40%。A類物品:低值庫(kù)存總值幾乎可以忽略不計(jì),只占5-10%0是物品的大多數(shù),通常占60-70%。顯然,A類物品是關(guān)鍵;如果我們把精力集中于A類物品,使其庫(kù)存壓縮10-50%,就是總庫(kù)存的相當(dāng)可觀的一筆壓縮。關(guān)于ABC分類方法有幾條基本法則:a.控制的程度:對(duì)A類物品嚴(yán)加控制,包括做完備、準(zhǔn)確的記錄,高層監(jiān)督和經(jīng)常評(píng)審,從供應(yīng)商按大

7、合同訂單頻繁交貨,對(duì)車間緊密跟蹤以壓縮提前期。對(duì)B類物品做正常控制,包括良好的記錄與常規(guī)的關(guān)注。對(duì)C類物品盡可能使用簡(jiǎn)便的控制,諸如定期目視檢查庫(kù)存實(shí)物、簡(jiǎn)要記錄或以簡(jiǎn)便標(biāo)志法表明補(bǔ)充存貨已經(jīng)訂貨,采用大庫(kù)存量與訂貨量以避免缺貨,安排車間日程計(jì)劃時(shí)給以低優(yōu)先級(jí)。b.優(yōu)先級(jí)在一切活動(dòng)中給A類物品以高優(yōu)先級(jí)以壓縮其提前期與庫(kù)存。對(duì)B類物品予以正常處理,僅在關(guān)鍵時(shí)給以高優(yōu)先級(jí)。予C類物品以最低優(yōu)先級(jí)。c.訂貨過程對(duì)A類物品提供及時(shí)、準(zhǔn)確的采購(gòu)信息和狀態(tài)查詢。計(jì)算機(jī)數(shù)據(jù)需要人工加以核對(duì),進(jìn)行階段性盤點(diǎn),以及頻繁的評(píng)審以壓縮庫(kù)存。對(duì)B類物品,按一定周期或當(dāng)發(fā)生重大變化時(shí)評(píng)審一次庫(kù)存數(shù)據(jù)和訂貨點(diǎn),MRPI

8、I操作按例行公事處理。對(duì)C類物品可以盤點(diǎn)處理或訂貨點(diǎn)計(jì)算。訂貨往往不用MRPII作計(jì)劃。可以憑業(yè)務(wù)人員的經(jīng)驗(yàn)加以控制。由上可以看出庫(kù)存管理的重要性。因此,庫(kù)存管理是企業(yè)管理的重要組成部分。市場(chǎng)需要庫(kù)存商品提供給用戶,企業(yè)的經(jīng)營(yíng)需要庫(kù)存保證各種藥品的供應(yīng)以進(jìn)行藥品的銷售,庫(kù)存對(duì)生產(chǎn)效率的提高有著極其重要的影響。因此,庫(kù)存管理系統(tǒng)是計(jì)算機(jī)管理系統(tǒng)的中心。因?yàn)椋衅髽I(yè)的經(jīng)營(yíng)活動(dòng)都離不開物流的活動(dòng)。1.3 庫(kù)存管理的目標(biāo)庫(kù)存管理的主要目標(biāo)就是通過對(duì)倉(cāng)庫(kù)所有入出庫(kù)活動(dòng)的管理和控制及對(duì)庫(kù)存數(shù)據(jù)有效的統(tǒng)計(jì)和分析,以保證企業(yè)生產(chǎn)中暢通的物流,使決策人員及早發(fā)現(xiàn)問題,采取相應(yīng)措施,調(diào)整庫(kù)存結(jié)構(gòu),縮短儲(chǔ)備周期,

9、加速資金周轉(zhuǎn),最大限度地降低庫(kù)存占用,同時(shí),通過周期性的倉(cāng)庫(kù)盤點(diǎn),及時(shí)補(bǔ)救管理中的漏洞,使庫(kù)存管理系統(tǒng)實(shí)時(shí)地反映企業(yè)中各個(gè)倉(cāng)庫(kù)的現(xiàn)時(shí)情況,為各類管理人員從不同側(cè)面提供所需信息,以便協(xié)調(diào)企業(yè)經(jīng)營(yíng)收到更大效益,庫(kù)存管理系統(tǒng)是協(xié)調(diào)企業(yè)生產(chǎn)經(jīng)營(yíng)的基礎(chǔ),其數(shù)據(jù)的準(zhǔn)確性、方便的查詢、有效的分析是整個(gè)計(jì)算機(jī)管理系統(tǒng)順利運(yùn)行的關(guān)鍵。第二章開發(fā)背景企業(yè)的庫(kù)存物資管理往往是很復(fù)雜、很繁瑣的。由于所掌握的物資種類眾多,訂貨、管理、發(fā)放的渠道各有差異,各個(gè)企業(yè)之間的管理體制不盡相同,各類統(tǒng)計(jì)報(bào)表繁多,因此倉(cāng)庫(kù)的庫(kù)存管理必須編制一套庫(kù)存管理信息系統(tǒng),實(shí)現(xiàn)計(jì)算機(jī)化操作,而且必須根據(jù)企業(yè)的具體情況制定相應(yīng)的方案。根據(jù)當(dāng)前的

10、企業(yè)管理體制,一般的庫(kù)存管理系統(tǒng),總是根據(jù)所掌握的物資類別,相應(yīng)分成幾個(gè)科室來(lái)進(jìn)行物資的計(jì)劃,訂貨,核銷托收,驗(yàn)收入庫(kù),根據(jù)企業(yè)各個(gè)部門的需求來(lái)發(fā)送物資設(shè)備,并隨時(shí)按期進(jìn)行庫(kù)存盤點(diǎn),作臺(tái)帳,根據(jù)企業(yè)領(lǐng)導(dǎo)和自身管理的需要按月、季度、年度進(jìn)行統(tǒng)計(jì)分析,產(chǎn)生相應(yīng)報(bào)表。為了加強(qiáng)關(guān)鍵物資、設(shè)備的管理,要定期掌握其儲(chǔ)備,消耗情況,根據(jù)計(jì)劃定額和實(shí)際纖毫定額的比較,進(jìn)行定額管理,使得資金使用合理,物資設(shè)備的儲(chǔ)備最佳。一個(gè)完整的企業(yè)物資供應(yīng)管理系統(tǒng)應(yīng)包括采購(gòu)計(jì)劃管理,合同收托管理、倉(cāng)庫(kù)庫(kù)存管理、定額管理、統(tǒng)計(jì)管理、財(cái)務(wù)管理等模塊。其中倉(cāng)庫(kù)的庫(kù)存管理是整個(gè)物資供應(yīng)管理系統(tǒng)的核心。因此有必要開發(fā)一套獨(dú)立的庫(kù)存管理

11、系統(tǒng)來(lái)提高企業(yè)工作效率,而所使用的這套庫(kù)存管理系統(tǒng)是企業(yè)生產(chǎn)經(jīng)營(yíng)管理活動(dòng)中的核心,此系統(tǒng)必須可以用來(lái)控制合理的庫(kù)存費(fèi)用、適時(shí)適量的庫(kù)存數(shù)量,使企業(yè)生產(chǎn)活動(dòng)效率最大化。通過對(duì)這些情況的仔細(xì)調(diào)查,我開發(fā)了下面的倉(cāng)庫(kù)庫(kù)存管理系統(tǒng)。第三章系統(tǒng)分析本系統(tǒng)采用了結(jié)構(gòu)化生命周期法,結(jié)構(gòu)化生命周期法是最常用的管理信息系統(tǒng)開發(fā)方法,分為四個(gè)步驟,即系統(tǒng)調(diào)研分析、數(shù)據(jù)庫(kù)設(shè)計(jì)實(shí)現(xiàn)、界面設(shè)計(jì)實(shí)現(xiàn)和系統(tǒng)功能設(shè)計(jì)實(shí)現(xiàn)。其中系統(tǒng)調(diào)研分析階段是最基礎(chǔ)、也是最容易被開發(fā)人員忽視的環(huán)節(jié)。3.1 進(jìn)行資料收集在整個(gè)系統(tǒng)分析階段,我在圖書館認(rèn)真查看了很多關(guān)于倉(cāng)庫(kù)庫(kù)存管理方面的書籍,收集到了相應(yīng)的入庫(kù)單、領(lǐng)料單、臺(tái)賬、物料卡、報(bào)表等資

12、料,這些資料可以用作數(shù)據(jù)庫(kù)設(shè)計(jì)的依據(jù),具體如下:在舁廳P提綱1零件倉(cāng)庫(kù)劃分成多少個(gè)區(qū)域?2每個(gè)區(qū)域有多少個(gè)貨架?3每個(gè)貨架上分多少層?4架子上的每一層有多少個(gè)格子?5零部件是如何進(jìn)行物料編碼的?6倉(cāng)庫(kù)管理人員人數(shù)有多少?7日均處理入庫(kù)單數(shù)量大約有多少?8日均處理出庫(kù)單數(shù)量大約有多少?9領(lǐng)料退回的處理方法?10是否每天都要登記庫(kù)存臺(tái)賬?11庫(kù)存臺(tái)賬有多少類型?12倉(cāng)庫(kù)之間是否可以進(jìn)行調(diào)撥?13每次盤點(diǎn)間隔時(shí)間多長(zhǎng)?14如何處理零部件盤虧?15如何處理零部件盤盈?16是否有零部件物料缺貨警戒線?17統(tǒng)計(jì)報(bào)表的種類和填報(bào)頻率?入庫(kù)單是入庫(kù)單位在把相應(yīng)的零部件送人倉(cāng)庫(kù)時(shí)必須填寫的單據(jù);領(lǐng)料單是領(lǐng)料人員

13、從倉(cāng)庫(kù)中領(lǐng)取零部件時(shí)必須填寫的單據(jù)(即出庫(kù));零部件臺(tái)賬(相當(dāng)于本系統(tǒng)中的操作日志)實(shí)際是一個(gè)流水賬,用于記錄每天發(fā)生的入庫(kù)、出庫(kù)信息;物料卡(在本系統(tǒng)中用現(xiàn)有庫(kù)存信息來(lái)表示)的作用是記錄某一種零部件的數(shù)量變化,以便庫(kù)管員盤查;報(bào)表是倉(cāng)庫(kù)向有關(guān)領(lǐng)導(dǎo)和部門定期提交的零部件庫(kù)存匯總信息。收集到的入庫(kù)單、領(lǐng)料單、零部件庫(kù)存臺(tái)賬、零部件物料卡等單據(jù)和報(bào)表的實(shí)物樣式在此略去,有興趣者請(qǐng)參考有關(guān)類似企業(yè)的樣本即可。3.2 繪制業(yè)務(wù)流程圖/人聊口 4 入庫(kù)處Q 出庫(kù)處J /妹單口 /在某公司的調(diào)研過程中,已了解到所涉及的業(yè)務(wù)主要是入庫(kù)和出庫(kù),圖3.1是系統(tǒng)入庫(kù)、出庫(kù)業(yè)務(wù)流程圖。圖3.L庫(kù)存管理系統(tǒng)業(yè)務(wù)流程圖

14、十, 業(yè)務(wù)流程圖說(shuō)明43.3 用戶需求分析用戶需求分析就是在用戶需求調(diào)研的基礎(chǔ)上,確定系統(tǒng)的總體結(jié)構(gòu)方案,完成相應(yīng)的需求分析報(bào)告。在確定系統(tǒng)的總體結(jié)構(gòu)方案過程中,包括確定應(yīng)用程序的結(jié)構(gòu)、系統(tǒng)開發(fā)環(huán)境和系統(tǒng)的功能模塊。用戶需求調(diào)研結(jié)束之后,應(yīng)該立即進(jìn)行用戶需求分析。3.3.1 應(yīng)用程序結(jié)構(gòu)確定從用戶應(yīng)用角度來(lái)看,可把應(yīng)用程序系統(tǒng)的組成部分分成數(shù)據(jù)存儲(chǔ)層、業(yè)務(wù)處理層和界面表示層等3個(gè)層次,而應(yīng)用程序結(jié)構(gòu)可歸納為:集中式應(yīng)用程序結(jié)構(gòu)、單用戶應(yīng)用程序結(jié)構(gòu)、多層服務(wù)器應(yīng)用程序結(jié)構(gòu)、瀏覽器/服務(wù)器應(yīng)用程序結(jié)構(gòu)、客戶機(jī)/服務(wù)器應(yīng)用程序結(jié)構(gòu)等5種類型。本庫(kù)存管理系統(tǒng)就采用了當(dāng)前最流行的客戶機(jī)/服務(wù)器應(yīng)用程序結(jié)

15、構(gòu)(即C/S結(jié)構(gòu)),此時(shí),客戶機(jī)提出請(qǐng)求,服務(wù)器對(duì)客戶機(jī)的請(qǐng)求作出回應(yīng)。通過對(duì)服務(wù)功能的分布實(shí)現(xiàn)了分工服務(wù)。數(shù)據(jù)存儲(chǔ)層放在服務(wù)器上,業(yè)務(wù)處理層和界面表示層放在客戶機(jī)上,因此又被稱為“靈敏的客戶機(jī)”結(jié)構(gòu)。許多操作可以在本地的客戶機(jī)上執(zhí)行,只是當(dāng)需要數(shù)據(jù)時(shí),才向服務(wù)器發(fā)出請(qǐng)求。并使應(yīng)用程序的處理更接近用戶,使整個(gè)系統(tǒng)具有較好的性能,可以并行地處理應(yīng)用程序的請(qǐng)求、減少了數(shù)據(jù)傳輸量、降低了服務(wù)器的負(fù)荷。由于條件所限,將此系統(tǒng)所有程序都置于一臺(tái)計(jì)算機(jī)上,以便調(diào)試運(yùn)行。3.3.2 確定系統(tǒng)開發(fā)環(huán)境由于大多數(shù)公司內(nèi)部使用的計(jì)算機(jī)平臺(tái)都是基于Windows環(huán)境的。為了降低系統(tǒng)成本,應(yīng)最大程度地利用現(xiàn)有的資源、

16、兼容現(xiàn)有的環(huán)境,可確定使用下面的開發(fā)環(huán)境:網(wǎng)絡(luò)操作系統(tǒng):Windows200Q數(shù)據(jù)庫(kù)服務(wù)器:MicrosoftAccessr2000;服務(wù)器平臺(tái):Windows200Q客戶機(jī)平臺(tái):Windows9"98/NL2000;前端開發(fā)工具:visualBasic6.0(企業(yè)版);數(shù)據(jù)訪問對(duì)象:ADO(本系統(tǒng)使用ADO空件,簡(jiǎn)化編程)。3.3.3 確定系統(tǒng)的功能模塊通過分析確定庫(kù)存系統(tǒng)將包含6個(gè)主要功能模塊,即系統(tǒng)模塊、入庫(kù)業(yè)務(wù)管理模塊、出庫(kù)業(yè)務(wù)管理模塊、退料業(yè)務(wù)管理模塊(還庫(kù)業(yè)務(wù)管理模塊)、盤點(diǎn)業(yè)務(wù)管理模塊(報(bào)表輸出)、需求管理模塊。對(duì)于每一個(gè)功能模塊,都包含了數(shù)據(jù)錄入、編輯、查詢、統(tǒng)計(jì)、打

17、印、應(yīng)急、幫助等功能。第四章系統(tǒng)設(shè)計(jì)4. 1總體設(shè)計(jì)4.1.1 系統(tǒng)目標(biāo)設(shè)計(jì)系統(tǒng)開發(fā)的總體任務(wù)是實(shí)現(xiàn)企業(yè)物資設(shè)備管理的系統(tǒng)化、規(guī)范化和自動(dòng)化,從而達(dá)到企業(yè)倉(cāng)庫(kù)庫(kù)存管理效率的目的。4.1.2 開發(fā)設(shè)計(jì)思想庫(kù)存管理的物資主要是企業(yè)生產(chǎn)中所需要的各種設(shè)備、原材料及零部件。進(jìn)貨時(shí)經(jīng)檢查合同確認(rèn)為有效托收后,進(jìn)行驗(yàn)收入庫(kù),填寫入庫(kù)單,進(jìn)行入庫(kù)登記。企業(yè)各個(gè)部門根據(jù)所需要的物資設(shè)備總額和部門生產(chǎn)活動(dòng)需要提出物資需求中請(qǐng)。計(jì)劃員根據(jù)整個(gè)企業(yè)的需求開出物資設(shè)備出庫(kù)單,倉(cāng)庫(kù)管理員根據(jù)出庫(kù)單核對(duì)發(fā)放設(shè)備、原材料及零部件。有些設(shè)備使用完畢需要及時(shí)歸還入庫(kù),填寫還庫(kù)單。根據(jù)需要按照月、季、年進(jìn)行統(tǒng)計(jì)分析,產(chǎn)生相應(yīng)報(bào)表

18、。倉(cāng)庫(kù)庫(kù)存管理的特點(diǎn)是信息處理量比較大。所管理的物資設(shè)備、原材料及零部件種類繁多,而且由于入庫(kù)單、出庫(kù)單、需求單等單據(jù)發(fā)生量特別大,關(guān)聯(lián)信各多,查詢和統(tǒng)計(jì)的方式各不相同,因此在管理上實(shí)現(xiàn)起來(lái)有一定的困難。在管理的過程中經(jīng)常會(huì)出現(xiàn)信息的重復(fù)傳遞;單據(jù)、報(bào)表種類繁多,各個(gè)部門規(guī)格不統(tǒng)等問題。在本系統(tǒng)的設(shè)計(jì)過程中,為了克服這些困難,滿足計(jì)算機(jī)管理的需要,我們采取了下面的一些原則:統(tǒng)一各種原始單據(jù)的格式,統(tǒng)一帳目和報(bào)表的格式。刪除不必要的管理冗余,實(shí)現(xiàn)管理規(guī)范化、科學(xué)化。程序代碼標(biāo)準(zhǔn)化,軟件統(tǒng)一化,確保軟件的可維護(hù)性和實(shí)用性。界面盡量簡(jiǎn)單化,做到實(shí)用、方便,盡量滿足企業(yè)中不同層次員工的需要。建立操作日

19、志,系統(tǒng)自動(dòng)記錄所進(jìn)行的各種操作。4.1.3 系統(tǒng)功能分析本系統(tǒng)需要完成的功能主要有以下幾點(diǎn)。庫(kù)存管理的各種信息的輸入,包括入庫(kù)、出庫(kù)、還庫(kù)、需求信息的輸入等。庫(kù)存管理的各種信息的查詢、修改和維護(hù)。設(shè)備采購(gòu)報(bào)表的生成。在材料庫(kù)存中加入所允許的最大庫(kù)存合最小庫(kù)存字段,對(duì)所有庫(kù)存物資實(shí)現(xiàn)監(jiān)控和報(bào)警。企業(yè)各個(gè)部門的物資需求管理。操作日志的管理庫(kù)存管理系統(tǒng)的使用幫助。4.2詳細(xì)設(shè)計(jì)4.2.1 系統(tǒng)功能模塊設(shè)計(jì)在系統(tǒng)功能分析的基礎(chǔ)上,考慮VB和Access的特點(diǎn),設(shè)計(jì)出如圖4.1所示的系統(tǒng)功能模塊圖。庫(kù)存管理系統(tǒng)*輸 A 模 塊J維 護(hù) 模 塊小查 看 模 塊,報(bào) 表 模抉J幫 助 摸 塊"打

20、印沒置用戶管建日志管a*A 庫(kù) 模 塊,4J 出庫(kù)模臾還庫(kù)模為需求模塊圖4,1系統(tǒng)功能模塊圖系統(tǒng)模塊a.包括報(bào)表的打印及設(shè)置,操作日志的管理。b.管理員可以通過管理界面添加或刪除用戶,添加新管理員或刪除原有管理員,驗(yàn)證用戶的合法性,阻止非法用戶登錄。c.管理員或其他用戶可以修改自己的密碼。(2)入庫(kù)模塊包括填寫入庫(kù)單,更新,刪除入庫(kù)記錄,查看現(xiàn)有庫(kù)存信息,入庫(kù)記錄的查詢及打印(3)出庫(kù)模塊包括填寫出庫(kù)單,更新,刪除出庫(kù)記錄,查看現(xiàn)有庫(kù)存信息,出庫(kù)記錄的查詢及打印(4)還庫(kù)模塊包括填寫還庫(kù)單,更新,刪除還庫(kù)記錄,還庫(kù)記錄的查詢及打印(5)需求模塊包括填寫需求計(jì)劃表,更新,刪除采購(gòu)計(jì)劃信息,查看現(xiàn)

21、有采購(gòu)信息,采購(gòu)信息的查詢及打印,以及預(yù)測(cè)短期內(nèi)的需求計(jì)劃。入 庫(kù) 單“出庫(kù)單采 購(gòu) 計(jì) 劃+統(tǒng) 計(jì)修報(bào)表*圖42庫(kù)存食啤HIPO圖,4.2.2數(shù)據(jù)庫(kù)設(shè)計(jì)數(shù)據(jù)庫(kù)需求分析在仔細(xì)調(diào)查企業(yè)庫(kù)存物資材料管理過程的基礎(chǔ)上,設(shè)計(jì)出本系統(tǒng)所處理的數(shù)據(jù)流程圖(圖4.2)倉(cāng)庫(kù)現(xiàn)有庫(kù)存«企業(yè)總體生產(chǎn)請(qǐng)各部門需求設(shè)卷菊卬設(shè)備出庫(kù)¥通過對(duì)企業(yè)倉(cāng)庫(kù)管理內(nèi)容和數(shù)據(jù)流程分析,設(shè)計(jì)的數(shù)據(jù)項(xiàng)合數(shù)據(jù)結(jié)構(gòu)如下:設(shè)備代碼信息。包括的數(shù)據(jù)項(xiàng)有設(shè)備號(hào)、設(shè)備名稱?,F(xiàn)有庫(kù)存信息。包括的數(shù)據(jù)項(xiàng)有現(xiàn)有設(shè)備、現(xiàn)有數(shù)目、最大庫(kù)存、最小庫(kù)存等。設(shè)備使用信息。包括的數(shù)據(jù)項(xiàng)有使用的設(shè)備、使用部門。數(shù)目。使用時(shí)間、出庫(kù)時(shí)狀態(tài)等。設(shè)備采購(gòu)

22、信息。包括的數(shù)據(jù)項(xiàng)有采購(gòu)的設(shè)備、采購(gòu)員、供應(yīng)商、采購(gòu)數(shù)目、采購(gòu)時(shí)間等。設(shè)備歸還信息。包括的數(shù)據(jù)項(xiàng)有歸還設(shè)備、歸還部門、歸還數(shù)目、歸還時(shí)間、現(xiàn)有庫(kù)存現(xiàn)有庫(kù)存,最大庫(kù)存最小庫(kù)存* ,圖4.4庫(kù)存實(shí)曲E-R圖供應(yīng)商信息部門需求,需求部門*需求數(shù)量一經(jīng)手人等。設(shè)備需求信息。包括的數(shù)據(jù)項(xiàng)有需求的部門、需求設(shè)備、需求數(shù)目、需求時(shí)有了上面的數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)項(xiàng)和數(shù)據(jù)流程,就可以進(jìn)行下面的數(shù)據(jù)庫(kù)設(shè)計(jì)。數(shù)據(jù)庫(kù)概念結(jié)構(gòu)設(shè)計(jì)這一設(shè)計(jì)階段是在需求分析的基礎(chǔ)上,設(shè)計(jì)出能夠滿足用戶需求的各種實(shí)體, 以及它們之間的關(guān)系,為后面的邏輯結(jié)構(gòu)設(shè)計(jì)打下基礎(chǔ)。根據(jù)上面的設(shè)計(jì)規(guī)劃 出的實(shí)體有庫(kù)存實(shí)體、出庫(kù)實(shí)體、入庫(kù)實(shí)體、采購(gòu)實(shí)體、還庫(kù)實(shí)體

23、、需求實(shí)體。 各個(gè)實(shí)體的E-R圖及其關(guān)系描述如下:設(shè)等還庫(kù),,供應(yīng)信信還庫(kù)時(shí)間、A+1設(shè)備號(hào)3庫(kù)存僖息圖4.9計(jì)劃采購(gòu)實(shí)版E-R圖,實(shí)裨與實(shí)體間的關(guān)系ER圖如下所示事圖4.10實(shí)障之間關(guān)系E-R圖數(shù)據(jù)庫(kù)邏輯結(jié)構(gòu)設(shè)計(jì)在上面的實(shí)體以及實(shí)體之間關(guān)系的基礎(chǔ)上,形成各個(gè)表格之間的關(guān)系。庫(kù)存管理系統(tǒng)數(shù)據(jù)庫(kù)中的各個(gè)表的設(shè)計(jì)結(jié)果如下面的幾個(gè)表格所示,每個(gè)表格表示數(shù)據(jù)庫(kù)中的一個(gè)表。字段名稱數(shù)據(jù)類型為空說(shuō)明設(shè)備號(hào)文本NOTNULL字段大小為6設(shè)備名稱文本NULL字段大小為20表4.2權(quán)限表字段名數(shù)四可含為說(shuō)明稱型空用戶名文本NULL字段大小為10密碼文本NULL字段大小為15權(quán)限文本NULL字段大小為10表4.3

24、設(shè)備入庫(kù)表字段名稱數(shù)據(jù)類型含為空說(shuō)明設(shè)備號(hào)文本NOTNULL字段大小為6入庫(kù)時(shí)間日期/時(shí)間NULL無(wú)供應(yīng)商文本NULL字段大小為20供應(yīng)商電話文本NULL字段大小為15入庫(kù)數(shù)量數(shù)字NULLINTEGER價(jià)格數(shù)字NULLINTEGER采購(gòu)員文本NULL字段大小為10表4.4設(shè)備出庫(kù)表字段名稱數(shù)據(jù)類型可含為空說(shuō)明設(shè)備號(hào)文本NOTNULL字段大小為6使用部門文本NULL字段大小為20出庫(kù)時(shí)間日期/時(shí)間NULL無(wú)出庫(kù)狀況文本NULL字段大小為20經(jīng)手人文本NULL字段大小為10出庫(kù)數(shù)量數(shù)字NULLINTEGER領(lǐng)取人文本NULL字段大小為10用途文本NULL字段大小為20表4.5現(xiàn)有庫(kù)存庫(kù)表字段名稱數(shù)

25、據(jù)類型可含為空說(shuō)明設(shè)備號(hào)文本NOTNULL字段大小為6主鍵現(xiàn)有庫(kù)存文本NULLINTEGER最大庫(kù)存文本NULLINTEGER最小庫(kù)存文本NULLINTEGER表4.6部門需求表字段名稱數(shù)據(jù)類型可含為空說(shuō)明設(shè)備號(hào)文本NOTNULL字段大小為6部門名稱文本NOTNULL字段大小為10需要數(shù)量數(shù)字NULLINTEGER需求開始時(shí)間日期/時(shí)間NULL無(wú)需求結(jié)束時(shí)間日期/時(shí)間NULL無(wú)表4.7設(shè)備還庫(kù)表字段名稱數(shù)據(jù)類型可含為空說(shuō)明設(shè)備號(hào)文本NOTNULL字段大小為6還庫(kù)時(shí)間日期/時(shí)間NULL無(wú)倉(cāng)庫(kù)管理員文本NULL字段大小為10歸還數(shù)量數(shù)字NULLINTEGER歸還人文本NULL字段大小為10表4.8

26、操作日志表字段名稱數(shù)據(jù)類型可含為空說(shuō)明操作員文本NOTNULL字段大小為10操作內(nèi)文本NOTNULL字段大小為容100操作時(shí)問日期/時(shí)間NOTNULL無(wú)表4.9設(shè)備采購(gòu)計(jì)劃表字段名稱數(shù)據(jù)類型可含為空說(shuō)明設(shè)備號(hào)文本NOTNULL字段大小為6主鍵現(xiàn)有庫(kù)存數(shù)字NULLINTEGER總庫(kù)存數(shù)字NULLINTEGER最大庫(kù)存數(shù)字NULLINTEGER購(gòu)買數(shù)量數(shù)字NULLINTEGER供應(yīng)商文本NULL字段大小為10價(jià)格數(shù)字NULLINTEGER計(jì)劃采購(gòu)時(shí)間日期/時(shí)間NULL無(wú)4.3代碼設(shè)計(jì)任何庫(kù)存均可分為如下三類:A類物品:高值價(jià)值占庫(kù)存總值70-80%的相對(duì)少數(shù)物品。通常為物品的15-20%。類類物品

27、:中值總值占庫(kù)存總值的15-20%。物品數(shù)居中,通常占物品的30-40%。A類物品:低值庫(kù)存總值幾乎可以忽略不計(jì),只占5-10%0是物品的大多數(shù),通常占60-70%。設(shè)備號(hào)葩零件號(hào)xx><><乂X自±56自自敬例如設(shè)備號(hào)或零件號(hào)A01024-aA類-消耗性物資常用零件4.4輸入輸出設(shè)計(jì)本系統(tǒng)界面標(biāo)準(zhǔn)Windows形式,鍵盤輸入(也可以用條形碼讀?。?,人機(jī)交互,容易使用。輸入輸出的設(shè)計(jì)考慮美觀實(shí)用和通俗易懂,圖文并茂。4. 5系統(tǒng)安全性設(shè)計(jì)系統(tǒng)數(shù)據(jù)庫(kù)中包含多個(gè)二維表,所以在系統(tǒng)與數(shù)據(jù)庫(kù)的連接上,并沒有把數(shù)據(jù)庫(kù)和系統(tǒng)的連接直接寫入代碼,而是通過對(duì)服務(wù)器端進(jìn)行系統(tǒng)設(shè)

28、置,使數(shù)據(jù)庫(kù)名及路徑不可見,并通過ACCES的數(shù)據(jù)庫(kù)安全設(shè)置,保證了數(shù)據(jù)庫(kù)的安全性。系統(tǒng)根據(jù)用戶身份不同賦予不同權(quán)限,用戶用密碼登陸,同樣也保證了系統(tǒng)數(shù)據(jù)的安全性。第五章系統(tǒng)實(shí)施5. 1、開發(fā)工具簡(jiǎn)介本系統(tǒng)的前端開發(fā)工具,我選擇了VisualBasic6.0,后臺(tái)數(shù)據(jù)庫(kù)采用Access2000。5.1.1 VB簡(jiǎn)介Visual意為“可視化的”,指的是一種開發(fā)圖形用戶界面的方法,所以VisualBasic是基于Basic的可視化的程序設(shè)計(jì)語(yǔ)言。在VisualBasic中,一方面繼承了Basic所具有的程序設(shè)計(jì)語(yǔ)言簡(jiǎn)單易用的特點(diǎn),另一方面在其編程系統(tǒng)中采用了面向?qū)ο?、事件?qū)動(dòng)的編程機(jī)制,用一種巧妙

29、的方法把Windows的編程復(fù)雜性封裝起來(lái),提供了一種所見即所得的可視化程序設(shè)計(jì)方法。5.1.2 VB功能特點(diǎn)具有面向?qū)ο蟮目梢暬O(shè)計(jì)工具在VB中,應(yīng)用面向?qū)ο蟮某绦蛟O(shè)計(jì)方法(OOP,把程序和數(shù)據(jù)封裝起來(lái)視為一個(gè)對(duì)象,每個(gè)對(duì)象都是可視的。程序員在設(shè)計(jì)時(shí)只需用現(xiàn)有工具根據(jù)界面設(shè)計(jì)要求,直接在屏幕上“畫”出窗口、菜單、按鈕、滾動(dòng)條等不同類型的對(duì)象,并為每個(gè)對(duì)象設(shè)置屬性。程序員的編程工作僅限于編寫相關(guān)對(duì)象要完成的功能程序,因而程序設(shè)計(jì)的效率可大大提高。事件驅(qū)動(dòng)的編程機(jī)制事件驅(qū)動(dòng)是非常適合圖形用戶界面的編程方式。在圖形用戶界面的應(yīng)用程序中,是由用戶的動(dòng)作即事件掌握著程序運(yùn)行的流向,每個(gè)事件都能驅(qū)動(dòng)一段

30、程序的運(yùn)行。程序員只要編寫響應(yīng)用戶動(dòng)作的代碼,而各個(gè)動(dòng)作之間不一定有聯(lián)系。提供了易學(xué)易用的應(yīng)用程序集成開發(fā)環(huán)境在VB集成開發(fā)環(huán)境中,用戶可設(shè)計(jì)界面、編寫代碼、調(diào)試程序,直至把應(yīng)用程序編譯成可執(zhí)行文件在Windows中運(yùn)行,使用戶在友好的開發(fā)環(huán)境中工作。結(jié)構(gòu)化的程序設(shè)計(jì)語(yǔ)言VB具有豐富的數(shù)據(jù)類型和結(jié)構(gòu)化程序結(jié)構(gòu),作為一種程序設(shè)計(jì)語(yǔ)言,它還有如下一些特點(diǎn):強(qiáng)大的數(shù)值和字符串處理功能豐富的圖形指令,可方便地繪制各種圖形提供靜態(tài)和動(dòng)態(tài)數(shù)組,有利于簡(jiǎn)化內(nèi)存的管理過程可遞歸調(diào)用,使程序更為簡(jiǎn)練支持隨機(jī)文件和順序文件的訪問提供了一個(gè)可供應(yīng)用程序調(diào)用的包含多種類型的圖標(biāo)庫(kù)具有完善的運(yùn)行出錯(cuò)處理支持多種數(shù)據(jù)庫(kù)系

31、統(tǒng)的訪問利用數(shù)據(jù)控件可訪問的數(shù)據(jù)庫(kù)系統(tǒng)有:MicrosoftAccess、Btrieve、DBASEMicrosfotFoxPro和Paradox等,也可以訪問MicrosoftExcel、Lotus1-2-3等多種電子表格。支持動(dòng)態(tài)數(shù)據(jù)交換(DDE、動(dòng)態(tài)鏈接庫(kù)(DLD和對(duì)象的鏈接與嵌入(OLE技術(shù)完備的HELPK機(jī)幫助功能與Windows環(huán)境下的軟件一樣,在VB中,利用幫助菜單和F1功能鍵,用戶可以隨時(shí)方便地得到所需要的幫助信息。VB幫助窗口中顯示了有關(guān)的示例代碼,通過復(fù)制、粘貼操作可獲取大量的示例代碼,為用戶的學(xué)習(xí)和使用提供了極大的方便。VB程序設(shè)計(jì)的概念就是面向?qū)ο蟮母拍?,?duì)象就是數(shù)據(jù)(

32、DATA和彳t碼(CODE互相結(jié)合的綜合體。Windows上面的每一個(gè)圖標(biāo),包括窗口本身都是對(duì)象,如果沒有任何事情發(fā)生,對(duì)象處于停頓狀態(tài)。當(dāng)存在外來(lái)事件時(shí),程序段執(zhí)行,它的執(zhí)行是由外來(lái)事件決定的。因此是“事件”驅(qū)動(dòng)的。編寫VB程序較為簡(jiǎn)單,首先將各個(gè)對(duì)象放在空白窗體上,然后將程序代碼分別添加給對(duì)象或圖標(biāo),將它們組合起來(lái)就可以隨意運(yùn)行了。rH 少在VB中,窗體實(shí)際上是一個(gè)對(duì)象,VB的窗體含有許多內(nèi)嵌特性,這使得用戶界面部分的建立像是從一個(gè)目錄中挑選一個(gè)個(gè)合適的控件,而不是從零開始一步地建立控件。這種開發(fā)者能親眼看到的程序設(shè)計(jì)過程就是“可視化程序設(shè)計(jì)“(VisualProgramming)5.1.

33、3 VB中的基本概念對(duì)象:面向?qū)ο缶幊蹋∣OP的提法大家一定也很耳熟,雖然VisualBasic并不是完全的面向?qū)ο缶幊?,但也利用了?duì)象編程技術(shù)。對(duì)象簡(jiǎn)單地說(shuō)就是大家經(jīng)??吹降母鞣N窗口、按鈕、文本框甚至打印機(jī)等。屬性:如同電視有黑白、彩色之分一樣,作為對(duì)象的Windows中的窗口也是有大有小,文本框的位置不可能完全一樣,菜單要顯示出不同的功能,這些都是由對(duì)象的屬性決定的。不同對(duì)象的屬性可能不同。屬性一般決定了對(duì)象的位置、大小、顯示等情況。方法:就是對(duì)象能夠做的事,如打印機(jī)對(duì)象就有打?。≒rint)方法、窗口對(duì)象支持隱藏(Hide)方法、很多對(duì)象支持移動(dòng)(Move)方法等。事件:就是對(duì)象對(duì)用戶各

34、種操作的反映情況。如用戶用鼠標(biāo)按一下按鈕,就會(huì)觸發(fā)按鈕的“按"(Click)事件??丶嚎丶褪荲isualBasic提供的編程用的模塊,與對(duì)象有直接的聯(lián)系,如同積木的木塊,使用這樣的控件,就可以像拼圖或堆積木一樣“搭”、“拼”你的程序界面。VisualBasic中使用控件,簡(jiǎn)化了Windows中的窗口、按鈕等對(duì)象的編程設(shè)計(jì)。每個(gè)控件都有各自的屬性、事件及方法。只需修改這些特征你就可以隨心所欲地編程了。最重要的是,你可以利用成千上萬(wàn)的各種擴(kuò)充的控件來(lái)快速構(gòu)造幾乎能滿足你任何要求的程序。例如,如果你不滿意Windows簡(jiǎn)陋的媒體播放器,你就可以使用VB的多媒體控件在1小時(shí)以內(nèi)設(shè)計(jì)一個(gè)完

35、全自己風(fēng)格的能夠播放CDVCD勺多媒體播放器,而功能完全與之相當(dāng)。5.1.4 Access2000數(shù)據(jù)庫(kù)簡(jiǎn)介作為Microsoft的office套件產(chǎn)品之一,access已經(jīng)成為世界上最流行的桌面數(shù)據(jù)庫(kù)系統(tǒng)。Access與許多優(yōu)秀的關(guān)系數(shù)據(jù)庫(kù)一樣,可以讓你很容易地連接相關(guān)的信息而且還對(duì)其他的數(shù)據(jù)庫(kù)系統(tǒng)有所補(bǔ)充。它能操作其它來(lái)源的資料,包括許多流行的PC數(shù)據(jù)庫(kù)程序(如dBASEParadox,MicrosoftFoxPro)和服務(wù)器、小型機(jī)及大型機(jī)上的許多SQL數(shù)據(jù)庫(kù)。Access還完全支持Microsoft的OLEAccess還提供windows操作系統(tǒng)的高級(jí)應(yīng)用程序開發(fā)系統(tǒng)。Access與其

36、它數(shù)據(jù)庫(kù)開發(fā)系統(tǒng)之間相當(dāng)顯著的區(qū)別就是:您不用寫一行代碼,就可以在很短的時(shí)間里開發(fā)出一個(gè)功能強(qiáng)大而且相當(dāng)專業(yè)的數(shù)據(jù)庫(kù)應(yīng)用程序,并且這一愉快的過程是完全可視的!如果您能給它加上簡(jiǎn)短的VBA弋碼,那么您的程序決不比專業(yè)程序員潛心開發(fā)的程序差。Access的總體結(jié)構(gòu)Access將所有有名字的東西都成為對(duì)象(object),在Access2000中,最重要的對(duì)象有表,查詢,窗體,報(bào)表,宏和模塊。表用戶定義的存儲(chǔ)資料的對(duì)象。每一個(gè)表都包含有關(guān)某個(gè)主體的信息。表包括存儲(chǔ)不同種類資料的字段(列),而記錄(行)則收集特定主體實(shí)例的所有信息。查詢?yōu)閬?lái)自一個(gè)或多個(gè)表的資料提供定制視圖的對(duì)象。在Access中,可以

37、利用圖形化的實(shí)例查詢機(jī)制(QBE或通過SQL語(yǔ)句來(lái)建立查詢。你可以在查詢中選擇、更新、插入或刪除資料,也可以用查詢來(lái)建立新表。窗體窗體是主要的人機(jī)接口。大量的操作(幾乎所有)都要通過窗體完成。窗體通過運(yùn)行宏(macro)或VisualBasicforApplicatinns(VBA過程,來(lái)響應(yīng)大量的事件。Access2000為我們提供了強(qiáng)大的(同時(shí)也是相當(dāng)方便的向?qū)В﹣?lái)建立標(biāo)準(zhǔn)的Windows®體。報(bào)表為格式化、計(jì)算、打印選定資料而設(shè)計(jì)的對(duì)象。它是衡量一個(gè)優(yōu)秀的數(shù)據(jù)庫(kù)的重要標(biāo)準(zhǔn)(有時(shí)甚至是唯一的標(biāo)準(zhǔn))。宏為了響應(yīng)已定義的事件,需要讓Access去執(zhí)行一個(gè)或多個(gè)操作,而宏就是對(duì)這些操作

38、的結(jié)構(gòu)化的定義對(duì)象。它可以讓你像堆積木一樣建立一個(gè)功能強(qiáng)大的程序,而無(wú)須寫大量的代碼。模塊包括用VBA®碼的定制過程的一個(gè)對(duì)象。模塊提供了獨(dú)立的動(dòng)作流以捕獲錯(cuò)誤,而宏做不到。模塊能直接響應(yīng)窗體或報(bào)表事件,也可以從應(yīng)用程序的任何地方被調(diào)用。imsw星叫UEG澳目中ACCfK!;Act:»3SQL<OLEDB>IT玄蟒再第、薦口在JSQLServtr序中VB砌程序J 5.1.5本系統(tǒng)中VB與AccesslOOO的連接IVIicrcsoft.Jet.OLEDli.4.05.2系統(tǒng)實(shí)現(xiàn)聚典客理入庫(kù)速作出fl:寰作通黏t果皿嗝用戶5.2.1.系統(tǒng)管理模塊實(shí)現(xiàn)系統(tǒng)管理菜單里

39、出修改用戶密碼程序PrivateSubCommand1_Click()AdodcI.RecordSource=frmLogin.AdodcI.RecordSourceAdodcI.RefreshSetText4.DataSource=Adodc1Text4.DataField="密碼"IfText1=""ThenMsgBox"請(qǐng)輸入原密碼!""修改密碼"ExitSubElseIfText1.Text<>Adodc1.Recordset.Fields("密碼")ThenMsgBox&q

40、uot;原密碼錯(cuò)誤!""修改密碼"ExitSubElseIfText2=""OrText3=""ThenMsgBox"請(qǐng)輸入新密碼!""修改密碼"ExitSubElseIfText2<>Text3ThenMsgBox"密碼不一致!!""修改密碼"ExitSubElseText4.Text=Text2.TextAdodc1.Recordset.MoveFirstMsgBox"密碼修改成功!!""修改密碼&q

41、uot;UnloadMeEndIfEndSub山持t種遇時(shí)間榭小M八II JJhJ5.2.3入庫(kù)模塊的實(shí)現(xiàn)CSOWi,1口*中*«XtKW陽(yáng)lift:供科帶設(shè)備入庫(kù)表.Adodc1.Refresh做理端rkiAiffMwfaII*磊*11nnn歌ffr-IJ.ItnW.人用ft-裝EA乳口”右汽事部*,1«*布入庫(kù)數(shù)量")=Text2.Text入庫(kù)時(shí)間")=Combo1.Text供應(yīng)商")=Text4.Text供應(yīng)商電話")=Text5.Text 價(jià)格")=Text6.Text 采購(gòu)員")=Text7.Text現(xiàn)有

42、庫(kù)存表where設(shè)備號(hào)='"&PrivateSubCommand1_Click()設(shè)備入庫(kù)程序DimI,JAsIntegerDimSTRAsStringIfText1.Text=""OrText2=""OrCombo1.Text=""OrText4=""OrText5=""OrText6=""OrText7=""ThenMsgBox"請(qǐng)輸入完整信息!ExitSubElse將記錄存入入庫(kù)記錄表設(shè)備入庫(kù)表.datPrimar

43、yRS.Recordset.Fields("設(shè)備號(hào)")=Text1.Text設(shè)備入庫(kù)表.datPrimaryRS.Recordset.Fields(設(shè)備入庫(kù)表.datPrimaryRS.Recordset.Fields(設(shè)備入庫(kù)表.datPrimaryRS.Recordset.Fields(設(shè)備入庫(kù)表.datPrimaryRS.Recordset.Fields(設(shè)備入庫(kù)表.datPrimaryRS.Recordset.Fields(設(shè)備入庫(kù)表.datPrimaryRS.Recordset.Fields(MsgBox"已經(jīng)成功入庫(kù)!EndIf設(shè)備入庫(kù)表.Adodc1

44、.RecordSource="select*fromText1.Text&""'設(shè)備入庫(kù)表.DataGridl.RefreshIf設(shè)備入庫(kù)表.AdodcI.Recordset.RecordCount>0Then將記錄加入現(xiàn)有庫(kù)存表中設(shè)備入庫(kù)表.Text9.Text=CInt(設(shè)備入庫(kù)表.Text9.Text)+CInt(Text2.Text)設(shè)備入庫(kù)表.Text9.RefreshJ=設(shè)備入庫(kù)表.Text9設(shè)備入庫(kù)表.AdodcI.Recordset.MoveFirst設(shè)備入庫(kù)表.AdodcI.Recordset.Fields.Refresh設(shè)

45、備入庫(kù)表.DataGridl.RefreshMsgBox"現(xiàn)有庫(kù)存量為:"&JElseSTR="現(xiàn)有庫(kù)存表中無(wú)此設(shè)備!"&vbCrLf&"請(qǐng)?jiān)谠O(shè)備代碼表和現(xiàn)有庫(kù)存表中手動(dòng)添加記錄!"MsgBoxSTRLoadfrm現(xiàn)有庫(kù)存表frm現(xiàn)有庫(kù)存表.ShowCallfrm現(xiàn)有庫(kù)存表.Command1_ClickFrmAddNewEqu.Text1.Text=frmInput.Text1.TextFrmAddNewEqu.Text2.Text=frmInput.Text2.TextLoadfrm設(shè)備代碼表frm設(shè)備代碼表

46、.ShowEndIfEndSubPrivateSubcmdDelete_Click()刪除入庫(kù)表中記錄OnErrorGoToDeleteErrDimYesNoAsStringYesNo=MsgBox("刪除",vbYesNo,"刪除記錄")IfYesNo=vbYesThenWithdatPrimaryRS.Recordset.Delete.MoveNextIf.EOFThen.MoveLastEndWithElseExitSubEndIfDeleteErr:MsgBoxErr.DescriptionEndSubPrivateSubcmdUpdate_Cl

47、ick()更新紀(jì)錄程序OnErrorGoToUpdateErrdatPrimaryRS.Recordset.UpdateBatchadAffectAllExitSubUpdateErr:MsgBoxErr.DescriptionEndSub5.2.4出庫(kù)模塊實(shí)現(xiàn)PrivateSubCommand1_Click()設(shè)備出庫(kù)程序Dimi,J,kAsIntegerDimSTRAsString'"&frm設(shè)備出庫(kù)表.Adodc1.RecordSource="select*from現(xiàn)有庫(kù)存表where設(shè)備號(hào)Text1.Text&"",frm

48、設(shè)備出庫(kù)表.Adodc1.Refreshfrm設(shè)備出庫(kù)表.DataGrid1.RefreshIfIsNumeric(Text2)=FalseThenMsgBox"數(shù)量必須是數(shù)字!"ExitSubEndIfIfText1.Text=""OrText2=""OrCombo1.Text=""OrText4=""OrText5=""OrText6=""OrText7=""ThenMsgBox"請(qǐng)輸入完整信息!"ExitSub

49、ElseIffrm設(shè)備出庫(kù)表.Adodc1.Recordset.RecordCount<=0ThenSTR="現(xiàn)有庫(kù)存表中無(wú)此設(shè)備!請(qǐng)檢查輸入是否正確!MsgBoxSTRExitSubElsefrm設(shè)備出庫(kù)表.datPrimaryRS.Recordset.Fields("設(shè)備號(hào)")=Text1.Textfrm設(shè)備出庫(kù)表.datPrimaryRS.Recordset.Fields("出庫(kù)數(shù)量")=Text2.Textfrm設(shè)備出庫(kù)表.datPrimaryRS.Recordset.Fields("出庫(kù)時(shí)間")=Combo1

50、.Textfrm設(shè)備出庫(kù)表.datPrimaryRS.Recordset.Fields("frm設(shè)備出庫(kù)表.datPrimaryRS.Recordset.Fields("經(jīng)手人")=領(lǐng)取人")=Text4.TextText5.Textfrm設(shè)備出庫(kù)表.datPrimaryRS.Recordset.Fields("frm設(shè)備出庫(kù)表.datPrimaryRS.Recordset.Fields("使用部門")=Text6.Text用途")=Text7.TextMsgBox"已經(jīng)成功存入設(shè)備出庫(kù)表庫(kù)!EndIfI

51、ffrm設(shè)備出庫(kù)表.Adodc1.Recordset.RecordCount>0Thenk=CInt(frm設(shè)備出庫(kù)表.Text9.Text)-CInt(Text2.Text)Ifk>=0Thenfrm設(shè)備出庫(kù)表.Text9.Text=CInt(frm設(shè)備出庫(kù)表.Text9.Text)-CInt(Text2.Text)frm設(shè)備出庫(kù)表.Text9.RefreshJ=frm設(shè)備出庫(kù)表.Text9frm設(shè)備出庫(kù)表.Adodc1.Recordset.MoveFirstfrm設(shè)備出庫(kù)表.Adodc1.Recordset.Fields.Refreshfrm設(shè)備出庫(kù)表.DataGrid1.Re

52、freshMsgBox"現(xiàn)有庫(kù)存量為:Else請(qǐng)輸入合適數(shù)量! !MsgBox"現(xiàn)有庫(kù)存量不足!ExitSubEndIfElseSTR ="現(xiàn)有庫(kù)存表中無(wú)此設(shè)備!請(qǐng)檢查輸入是否正確! !MsgBoxSTREndIfEndSubPrivateSubcmdDelete_Click()刪除出庫(kù)記錄OnErrorGoToDeleteErrDimYesNoAsStringYesNo=MsgBox("刪除",vbYesNo,"刪除記錄")IfYesNo=vbYesThenWithdatPrimaryRS.Recordset.Delete

53、.MoveNextIf.EOFThen.MoveLastEndWithElseExitSubEndIfDeleteErr:MsgBoxErr.DescriptionEndSub更新記錄程序同入庫(kù)的更新程序相同,在此略5.2.5設(shè)備采購(gòu)模塊實(shí)現(xiàn),程序略5.2.7設(shè)備代碼模塊實(shí)現(xiàn)5.2.7設(shè)備代碼模塊實(shí)現(xiàn)主要程序PrivateSubcmdAdd_Click()添加設(shè)備OnErrorGoToAddErrdatPrimaryRS.Recordset.AddNewExitSubAddErr:MsgBoxErr.DescriptionEndSub5.2.8 庫(kù)存報(bào)警模塊實(shí)現(xiàn)主要程序PrivateSubCo

54、mmand1_Click()顯示高于最大警戒庫(kù)存的設(shè)備datPrimaryRS.RecordSource="select*from現(xiàn)有庫(kù)存表where現(xiàn)有庫(kù)存最大庫(kù)存datPrimaryRS.RefreshgrdDataGrid.RefreshIfdatPrimaryRS.Recordset.RecordCount>0ThenBeepMsgBox"表中設(shè)備已過量!"ElseMsgBox"沒有設(shè)備庫(kù)存過量!"EndIfEndSubPrivateSubCommand2_Click()顯示低于于最小警戒庫(kù)存的設(shè)備datPrimaryRS.RecordSource = "select * fromdatPrimaryRS.RefreshgrdDataGrid.Refresh現(xiàn)有庫(kù)存表where現(xiàn)有庫(kù)存 最小庫(kù)存"IfdatPrimaryRS.Records

溫馨提示

  • 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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論