版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p><b> 目錄</b></p><p> 前言 ···························
2、····························· 2
3、 </p><p> 摘要 ·······························
4、83;························ 2 </p><p> 概述
5、160; ···································
6、;······ 3</p><p> 開(kāi)發(fā)背景 ·························
7、183;·········· 4 </p><p> 系統(tǒng)分析····················
8、················· 4</p><p> 系統(tǒng)設(shè)計(jì)··············
9、3;······················ 6</p><p> 系統(tǒng)實(shí)施·········
10、183;··························· 13</p><p> 系統(tǒng)使用說(shuō)明···
11、3;···························· 24</p><p> 附錄 參考文獻(xiàn) ··&
12、#183;································ 25</p><p&g
13、t;<b> 前言</b></p><p> 倉(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)了不少的困難。</
14、p><p> 隨著科學(xué)技術(shù)的不斷提高,計(jì)算機(jī)科學(xué)日漸成熟,其強(qiáng)大的功能已為人們深刻認(rèn)識(shí),它已進(jìn)入人類社會(huì)的各個(gè)領(lǐng)域并發(fā)揮著越來(lái)越重要的作用。</p><p> 作為計(jì)算機(jī)應(yīng)用的一部分,使用計(jì)算機(jī)對(duì)物資信息進(jìn)行管理,具有著手工管理所無(wú)法比擬的優(yōu)點(diǎn).例如:檢索迅速、查找方便、可靠性高、存儲(chǔ)量大、保密性好、壽命長(zhǎng)、成本低等。這些優(yōu)點(diǎn)能夠極大地提高人事勞資管理的效率,也是企業(yè)的科學(xué)化、正規(guī)化管理,
15、與世界接軌的重要條件。</p><p> 因此,開(kāi)發(fā)這樣一套庫(kù)存管理軟件成為很有必要的事情。</p><p><b> 摘 要</b></p><p> 庫(kù)存管理系統(tǒng)是典型的信息管理系統(tǒng)(MIS),其開(kāi)發(fā)主要包括后臺(tái)數(shù)據(jù)庫(kù)的建立和維護(hù)以及前端應(yīng)用程序的開(kāi)發(fā)兩個(gè)方面。對(duì)于前者要求建立起數(shù)據(jù)一致性和完整性強(qiáng).數(shù)據(jù)安全性好的庫(kù)。而對(duì)于后者則要求
16、應(yīng)用程序功能完備,易使用等特點(diǎn)。</p><p> 經(jīng)過(guò)分析如此情況,我們使用微軟公司的VisualBasic開(kāi)發(fā)工具,利用其提供的各種面向?qū)ο蟮拈_(kāi)發(fā)工具,尤其是ADO,是能方便而簡(jiǎn)潔操縱數(shù)據(jù)庫(kù)的智能化對(duì)象,短期內(nèi)就可以開(kāi)發(fā)出用戶滿意的可行系統(tǒng)。</p><p> 關(guān)鍵字:庫(kù)存管理 ADO面相對(duì)象庫(kù)存ABC分析</p><p><b>
17、; Abstract</b></p><p> Stockpile manage system is a typical MIS.It’s development mostly include the foundation and maintenance of the database and the development of the client application programme.
18、For the former we must eatablish a better database,which has well data consistency and data security.For the latter we must make the programme has self-contained function and easy to be use.</p><p> By anal
19、ysing the situation,we use the VB of the Microsoft company as client tool,and use some of the tools of opp, especially ADO object,which can easily conveniently manipulate the database.We use it can develop a satisfactory
20、 system in short time </p><p> Key:Stockpile manageADOOPP The analysis of Stockpile</p><p><b> 第一章 概述</b></p><p> 1.1 庫(kù)存管理的必要性</p><p> 大多數(shù)庫(kù)存管理理論認(rèn)為,
21、庫(kù)存是物理上和邏輯上庫(kù)房庫(kù)位的所有有形和無(wú)形物料極其價(jià)值的總和,具體包括成品、原材料、在制品、在途品、生產(chǎn)前物料、備品備件等。雖然持有一些庫(kù)存是必要的,過(guò)量的庫(kù)存卻非但沒(méi)有用處而且占用了資金。占用的資金對(duì)于公司發(fā)展、新產(chǎn)品開(kāi)發(fā)等都是非常需要的;減少資金占用還可以大大減少來(lái)自銀行貸款的利息和風(fēng)險(xiǎn)。對(duì)那些采購(gòu)量特別大、采購(gòu)件市場(chǎng)價(jià)格有波動(dòng)的物料庫(kù)存,加強(qiáng)庫(kù)存管理效果更為明顯。因此,平衡公司庫(kù)存投資與其它資金需求至關(guān)重要。</p>
22、<p><b> 1.2 庫(kù)存分類</b></p><p> 企業(yè)怎樣管理庫(kù)存,是庫(kù)存管理的最大難點(diǎn)和挑戰(zhàn)。因此,通過(guò)MRPII物料主計(jì)劃模塊和采購(gòu)模塊建立計(jì)劃與控制系統(tǒng)以有效地實(shí)施庫(kù)存管理和采購(gòu)補(bǔ)償成為題中應(yīng)有之義。通過(guò)調(diào)查,我們得知任何庫(kù)存均可分為如下三類:</p><p> ?。令愇锲罚焊咧旦ぉr(jià)值占庫(kù)存總值70-80%的相對(duì)少數(shù)物品。通常為物
23、品的15-20%。</p><p> ?。骂愇锲罚褐兄旦ぉた傊嫡紟?kù)存總值的15-20%。物品數(shù)居中,通常占物品的30-40%。</p><p> ?。妙愇锲罚旱椭旦ぉ?kù)存總值幾乎可以忽略不計(jì),只占5-10%。是物品的大多數(shù),通常占60-70%。</p><p> 顯然,A類物品是關(guān)鍵;如果我們把精力集中于A類物品,使其庫(kù)存壓縮10-50%,就是總庫(kù)存的相當(dāng)可觀的一
24、筆壓縮。</p><p> 關(guān)于ABC分類方法有幾條基本法則:</p><p><b> a. 控制的程度:</b></p><p> 對(duì)A類物品嚴(yán)加控制,包括做完備、準(zhǔn)確的記錄,高層監(jiān)督和經(jīng)常評(píng)審,從供應(yīng)商按大合同訂單頻繁交貨,對(duì)車間緊密跟蹤以壓縮提前期。</p><p> 對(duì)B類物品做正??刂?,包括良好的記錄
25、與常規(guī)的關(guān)注。</p><p> 對(duì)C類物品盡可能使用簡(jiǎn)便的控制,諸如定期目視檢查庫(kù)存實(shí)物、簡(jiǎn)要記錄或以簡(jiǎn)便標(biāo)志法表明補(bǔ)充存貨已經(jīng)訂貨,采用大庫(kù)存量與訂貨量以避免缺貨,安排車間日程計(jì)劃時(shí)給以低優(yōu)先級(jí)。</p><p><b> b.優(yōu)先級(jí)</b></p><p> 在一切活動(dòng)中給A類物品以高優(yōu)先級(jí)以壓縮其提前期與庫(kù)存。</p>
26、<p> 對(duì)B類物品予以正常處理,僅在關(guān)鍵時(shí)給以高優(yōu)先級(jí)。 </p><p> 予C類物品以最低優(yōu)先級(jí)。</p><p><b> c.訂貨過(guò)程</b></p><p> 對(duì)A類物品提供及時(shí)、準(zhǔn)確的采購(gòu)信息和狀態(tài)查詢。計(jì)算機(jī)數(shù)據(jù)需要人工加以核對(duì),進(jìn)行階段性盤(pán)點(diǎn),以及頻繁的評(píng)審以壓縮庫(kù)存。</p><p&
27、gt; 對(duì)B類物品,按一定周期或當(dāng)發(fā)生重大變化時(shí)評(píng)審一次庫(kù)存數(shù)據(jù)和訂貨點(diǎn),MRPII操作按例行公事處理。</p><p> 對(duì)C類物品可以盤(pán)點(diǎn)處理或訂貨點(diǎn)計(jì)算。訂貨往往不用MRPII作計(jì)劃??梢詰{業(yè)務(wù)人員的經(jīng)驗(yàn)加以控制。</p><p> 由上可以看出庫(kù)存管理的重要性。因此,庫(kù)存管理是企業(yè)管理的重要組成部分。市場(chǎng)需要庫(kù)存商品提供給用戶,企業(yè)的經(jīng)營(yíng)需要庫(kù)存保證各種藥品的供應(yīng)以進(jìn)行藥品的
28、銷售,庫(kù)存對(duì)生產(chǎn)效率的提高有著極其重要的影響。因此,庫(kù)存管理系統(tǒng)是計(jì)算機(jī)管理系統(tǒng)的中心。因?yàn)?,所有企業(yè)的經(jīng)營(yíng)活動(dòng)都離不開(kāi)物流的活動(dòng)。</p><p> 1.3 庫(kù)存管理的目標(biāo)</p><p> 庫(kù)存管理的主要目標(biāo)就是通過(guò)對(duì)倉(cāng)庫(kù)所有入出庫(kù)活動(dòng)的管理和控制及對(duì)庫(kù)存數(shù)據(jù)有效的統(tǒng)計(jì)和分析,以保證企業(yè)生產(chǎn)中暢通的物流,使決策人員及早發(fā)現(xiàn)問(wèn)題,采取相應(yīng)措施,調(diào)整庫(kù)存結(jié)構(gòu),縮短儲(chǔ)備周期,加
29、速資金周轉(zhuǎn),最大限度地降低庫(kù)存占用,同時(shí),通過(guò)周期性的倉(cāng)庫(kù)盤(pán)點(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)鍵。</p><p><b> 第二章 開(kāi)發(fā)背景</b></p>
30、<p> 企業(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)的方案。</p><p> 根據(jù)當(dāng)前的企業(yè)管理體制,一般的庫(kù)存管理系統(tǒng),總是根據(jù)所掌握的物資類別,相應(yīng)分成幾個(gè)科室來(lái)進(jìn)行物資的計(jì)劃,訂貨,核銷
31、托收,驗(yàn)收入庫(kù),根據(jù)企業(yè)各個(gè)部門(mén)的需求來(lái)發(fā)送物資設(shè)備,并隨時(shí)按期進(jìn)行庫(kù)存盤(pán)點(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ǔ)備最佳。</p><p> 一個(gè)完整的企業(yè)物資供應(yīng)管理系統(tǒng)應(yīng)包括采購(gòu)計(jì)劃管理,合同收托管理、倉(cāng)庫(kù)庫(kù)存管理、定額管理、統(tǒng)計(jì)
32、管理、財(cái)務(wù)管理等模塊。其中倉(cāng)庫(kù)的庫(kù)存管理是整個(gè)物資供應(yīng)管理系統(tǒng)的核心。因此有必要開(kāi)發(fā)一套獨(dú)立的庫(kù)存管理系統(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)效率最大化。通過(guò)對(duì)這些情況的仔細(xì)調(diào)查,我開(kāi)發(fā)了下面的倉(cāng)庫(kù)庫(kù)存管理系統(tǒng)。</p><p><b> 第三章 系統(tǒng)分析</b></p
33、><p> 本系統(tǒng)采用了結(jié)構(gòu)化生命周期法,結(jié)構(gòu)化生命周期法是最常用的管理信息系統(tǒng)開(kāi)發(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ǔ)、也是最容易被開(kāi)發(fā)人員忽視的環(huán)節(jié)。</p><p><b> 3.1進(jìn)行資料收集</b></p><p> 在整個(gè)系統(tǒng)分析階段,我在圖書(shū)館認(rèn)真查看了
34、很多關(guān)于倉(cāng)庫(kù)庫(kù)存管理方面的書(shū)籍,收集到了相應(yīng)的入庫(kù)單、領(lǐng)料單、臺(tái)賬、物料卡、報(bào)表等資料,這些資料可以用作數(shù)據(jù)庫(kù)設(shè)計(jì)的依據(jù),具體如下:</p><p> 入庫(kù)單是入庫(kù)單位在把相應(yīng)的零部件送人倉(cāng)庫(kù)時(shí)必須填寫(xiě)的單據(jù);領(lǐng)料單是領(lǐng)料人員從倉(cāng)庫(kù)中領(lǐng)取零部件時(shí)必須填寫(xiě)的單據(jù)(即出庫(kù));零部件臺(tái)賬(相當(dāng)于本系統(tǒng)中的操作日志)實(shí)際是一個(gè)流水賬,用于記錄每天發(fā)生的入庫(kù)、出庫(kù)信息;物料卡(在本系統(tǒng)中用現(xiàn)有庫(kù)存信息來(lái)表示)的作用是記
35、錄某一種零部件的數(shù)量變化,以便庫(kù)管員盤(pán)查;報(bào)表是倉(cāng)庫(kù)向有關(guān)領(lǐng)導(dǎo)和部門(mén)定期提交的零部件庫(kù)存匯總信息。收集到的入庫(kù)單、領(lǐng)料單、零部件庫(kù)存臺(tái)賬、零部件物料卡等單據(jù)和報(bào)表的實(shí)物樣式在此略去,有興趣者請(qǐng)參考有關(guān)類似企業(yè)的樣本即可。</p><p> 3.2繪制業(yè)務(wù)流程圖</p><p> 在某公司的調(diào)研過(guò)程中,已了解到所涉及的業(yè)務(wù)主要是入庫(kù)和出庫(kù),圖3.1是系統(tǒng)入庫(kù)、出庫(kù)業(yè)務(wù)流程圖。</p
36、><p> 不合格 領(lǐng)料</p><p><b> 入 合</b></p><p><b> 庫(kù) 格</b></p><p> 圖3.1庫(kù)存管理系統(tǒng)業(yè)務(wù)流程圖</p><p><b> 業(yè)務(wù)流程圖說(shuō)明</b></p>
37、;<p> 外部環(huán)境 處理過(guò)程 決策過(guò)程</p><p> 數(shù)據(jù)存檔 數(shù)據(jù)流向</p><p> 圖3.2業(yè)務(wù)流程圖符號(hào)說(shuō)明</p><p> 3.3用戶需求分析 用戶需求分析就是在用戶需求調(diào)研的基礎(chǔ)上
38、,確定系統(tǒng)的總體結(jié)構(gòu)方案,完成相應(yīng)的需求分析報(bào)告。在確定系統(tǒng)的總體結(jié)構(gòu)方案過(guò)程中,包括確定應(yīng)用程序的結(jié)構(gòu)、系統(tǒng)開(kāi)發(fā)環(huán)境和系統(tǒng)的功能模塊。用戶需求調(diào)研結(jié)束之后,應(yīng)該立即進(jìn)行用戶需求分析。</p><p> 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)用程
39、序結(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é)構(gòu)(即C/S結(jié)構(gòu)),此時(shí),客戶機(jī)提出請(qǐng)求,服務(wù)器對(duì)客戶機(jī)的請(qǐng)求作出回應(yīng)。通過(guò)對(duì)服務(wù)功能的分布實(shí)現(xiàn)了分工服務(wù)。數(shù)據(jù)存儲(chǔ)層放在服務(wù)器上,業(yè)務(wù)處理層和界面表示層放在客戶機(jī)上,因此又被稱為“靈敏的客戶機(jī)”結(jié)構(gòu)。許多操作可以
40、在本地的客戶機(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)開(kāi)發(fā)環(huán)境 由于大多數(shù)公司內(nèi)部使用的計(jì)算機(jī)平臺(tái)都是基于Windows環(huán)境的。
41、為了降低系統(tǒng)成本,應(yīng)最大程度地利用現(xiàn)有的資源、兼容現(xiàn)有的環(huán)境,可確定使</p><p><b> 第四章 系統(tǒng)設(shè)計(jì)</b></p><p><b> 1總體設(shè)計(jì)</b></p><p> 4.1.1系統(tǒng)目標(biāo)設(shè)計(jì)</p><p> 系統(tǒng)開(kāi)發(fā)的總體任務(wù)是實(shí)現(xiàn)企業(yè)物資設(shè)備管理的系統(tǒng)化、規(guī)范化和自動(dòng)
42、化,從而達(dá)到企業(yè)倉(cāng)庫(kù)庫(kù)存管理效率的目的。</p><p> 4.1.2開(kāi)發(fā)設(shè)計(jì)思想</p><p> 庫(kù)存管理的物資主要是企業(yè)生產(chǎn)中所需要的各種設(shè)備、原材料及零部件。進(jìn)貨時(shí)經(jīng)檢查合同確認(rèn)為有效托收后,進(jìn)行驗(yàn)收入庫(kù),填寫(xiě)入庫(kù)單,進(jìn)行入庫(kù)登記。企業(yè)各個(gè)部門(mén)根據(jù)所需要的物資設(shè)備總額和部門(mén)生產(chǎn)活動(dòng)需要提出物資需求申請(qǐng)。計(jì)劃員根據(jù)整個(gè)企業(yè)的需求開(kāi)出物資設(shè)備出庫(kù)單,倉(cāng)庫(kù)管理員根據(jù)出庫(kù)單核對(duì)發(fā)放設(shè)備
43、、原材料及零部件。有些設(shè)備使用完畢需要及時(shí)歸還入庫(kù),填寫(xiě)還庫(kù)單。根據(jù)需要按照月、季、年進(jìn)行統(tǒng)計(jì)分析,產(chǎn)生相應(yīng)報(bào)表。</p><p> 倉(cāng)庫(kù)庫(kù)存管理的特點(diǎn)是信息處理量比較大。所管理的物資設(shè)備、原材料及零部件種類繁多,而且由于入庫(kù)單、出庫(kù)單、需求單等單據(jù)發(fā)生量特別大,關(guān)聯(lián)信息多,查詢和統(tǒng)計(jì)的方式各不相同,因此在管理上實(shí)現(xiàn)起來(lái)有一定的困難。在管理的過(guò)程中經(jīng)常會(huì)出現(xiàn)信息的重復(fù)傳遞;單據(jù)、報(bào)表種類繁多,各個(gè)部門(mén)規(guī)格不統(tǒng)等
44、問(wèn)題。</p><p> 在本系統(tǒng)的設(shè)計(jì)過(guò)程中,為了克服這些困難,滿足計(jì)算機(jī)管理的需要,我們采取了下面的一些原則:</p><p> 統(tǒng)一各種原始單據(jù)的格式,統(tǒng)一帳目和報(bào)表的格式。</p><p> 刪除不必要的管理冗余,實(shí)現(xiàn)管理規(guī)范化、科學(xué)化。</p><p> 程序代碼標(biāo)準(zhǔn)化,軟件統(tǒng)一化,確保軟件的可維護(hù)性和實(shí)用性。</p&
45、gt;<p> 界面盡量簡(jiǎn)單化,做到實(shí)用、方便,盡量滿足企業(yè)中不同層次員工的需要。</p><p> 建立操作日志,系統(tǒng)自動(dòng)記錄所進(jìn)行的各種操作。</p><p> 4.1.3系統(tǒng)功能分析</p><p> 本系統(tǒng)需要完成的功能主要有以下幾點(diǎn)。</p><p> 庫(kù)存管理的各種信息的輸入,包括入庫(kù)、出庫(kù)、還庫(kù)、需求信息
46、的輸入等。</p><p> 庫(kù)存管理的各種信息的查詢、修改和維護(hù)。</p><p> 設(shè)備采購(gòu)報(bào)表的生成。</p><p> 在材料庫(kù)存中加入所允許的最大庫(kù)存合最小庫(kù)存字段,對(duì)所有庫(kù)存物資實(shí)現(xiàn)監(jiān)控和報(bào)警。</p><p> 企業(yè)各個(gè)部門(mén)的物資需求管理。</p><p><b> 操作日志的管理&l
47、t;/b></p><p> 庫(kù)存管理系統(tǒng)的使用幫助。</p><p><b> 4.2詳細(xì)設(shè)計(jì)</b></p><p> 4.2.1 系統(tǒng)功能模塊設(shè)計(jì)</p><p> 在系統(tǒng)功能分析的基礎(chǔ)上,考慮VB和Access的特點(diǎn),設(shè)計(jì)出如圖4.1所示的系統(tǒng)功能模塊圖。
48、 </p><p> 圖4.1 系統(tǒng)功能模塊圖</p><p><b> 系統(tǒng)模塊</b></p><p> 包括報(bào)表的打印及設(shè)置,操作日志的管理。</p><p> 管理員可以通過(guò)管理界面添加或刪除用戶,添加新管理員或刪除原有管理員,驗(yàn)證用戶的合法性,阻止非法用戶登錄
49、。</p><p> 管理員或其他用戶可以修改自己的密碼。</p><p><b> 入庫(kù)模塊</b></p><p> 包括填寫(xiě)入庫(kù)單,更新,刪除入庫(kù)記錄,查看現(xiàn)有庫(kù)存信息,入庫(kù)記錄的查詢及打印</p><p><b> 出庫(kù)模塊</b></p><p> 包
50、括填寫(xiě)出庫(kù)單,更新,刪除出庫(kù)記錄,查看現(xiàn)有庫(kù)存信息,出庫(kù)記錄的查詢及打印</p><p><b> 還庫(kù)模塊</b></p><p> 包括填寫(xiě)還庫(kù)單,更新,刪除還庫(kù)記錄,還庫(kù)記錄的查詢及打印</p><p><b> 需求模塊</b></p><p> 包括填寫(xiě)需求計(jì)劃表,更新,刪除采
51、購(gòu)計(jì)劃信息,查看現(xiàn)有采購(gòu)信息,采購(gòu)信息的查詢及打印,以及預(yù)測(cè)短期內(nèi)的需求計(jì)劃。</p><p> 圖4.2 庫(kù)存管理HIPO圖</p><p> 4.2.2數(shù)據(jù)庫(kù)設(shè)計(jì)</p><p><b> 數(shù)據(jù)庫(kù)需求分析</b></p><p> 在仔細(xì)調(diào)查企業(yè)庫(kù)存物資材料管理過(guò)程的基礎(chǔ)上,設(shè)計(jì)出本系統(tǒng)所處理的數(shù)據(jù)流程圖(圖
52、4.2)</p><p> 圖4.3 庫(kù)存系統(tǒng)數(shù)據(jù)流程圖</p><p> 通過(guò)對(duì)企業(yè)倉(cāng)庫(kù)管理內(nèi)容和數(shù)據(jù)流程分析,設(shè)計(jì)的數(shù)據(jù)項(xiàng)合數(shù)據(jù)結(jié)構(gòu)如下:</p><p> 設(shè)備代碼信息。包括的數(shù)據(jù)項(xiàng)有設(shè)備號(hào)、設(shè)備名稱。</p><p> 現(xiàn)有庫(kù)存信息。包括的數(shù)據(jù)項(xiàng)有現(xiàn)有設(shè)備、現(xiàn)有數(shù)目、最大庫(kù)存、最小庫(kù)存等。</p><p&g
53、t; 設(shè)備使用信息。包括的數(shù)據(jù)項(xiàng)有使用的設(shè)備、使用部門(mén)。數(shù)目。使用時(shí)間、出庫(kù)時(shí)狀態(tài)等。</p><p> 設(shè)備采購(gòu)信息。包括的數(shù)據(jù)項(xiàng)有采購(gòu)的設(shè)備、采購(gòu)員、供應(yīng)商、采購(gòu)數(shù)目、采購(gòu)時(shí)間等。</p><p> 設(shè)備歸還信息。包括的數(shù)據(jù)項(xiàng)有歸還設(shè)備、歸還部門(mén)、歸還數(shù)目、歸還時(shí)間、經(jīng)手人等。</p><p> 設(shè)備需求信息。包括的數(shù)據(jù)項(xiàng)有需求的部門(mén)、需求設(shè)備、需求數(shù)目
54、、需求時(shí)間等。</p><p> 有了上面的數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)項(xiàng)和數(shù)據(jù)流程,就可以進(jìn)行下面的數(shù)據(jù)庫(kù)設(shè)計(jì)。</p><p><b> 數(shù)據(jù)庫(kù)概念結(jié)構(gòu)設(shè)計(jì)</b></p><p> 這一設(shè)計(jì)階段是在需求分析的基礎(chǔ)上,設(shè)計(jì)出能夠滿足用戶需求的各種實(shí)體,以及它們之間的關(guān)系,為后面的邏輯結(jié)構(gòu)設(shè)計(jì)打下基礎(chǔ)。根據(jù)上面的設(shè)計(jì)規(guī)劃出的實(shí)體有庫(kù)存實(shí)體、出庫(kù)實(shí)體、
55、入庫(kù)實(shí)體、采購(gòu)實(shí)體、還庫(kù)實(shí)體、需求實(shí)體。各個(gè)實(shí)體的E-R圖及其關(guān)系描述如下:</p><p> 圖4.4 庫(kù)存實(shí)體E-R圖</p><p> 圖4.5 入庫(kù)實(shí)體E-R圖</p><p> 圖4.6 出庫(kù)實(shí)體E-R圖</p><p> 圖4.7 部門(mén)需求實(shí)體E-R圖</p><p> 圖4.8 庫(kù)存實(shí)體E-R圖
56、</p><p> 圖4.9 計(jì)劃采購(gòu)實(shí)體E-R圖</p><p> 實(shí)體與實(shí)體間的關(guān)系E-R圖如下所示:</p><p> 圖4.10實(shí)體之間關(guān)系E-R圖</p><p><b> 數(shù)據(jù)庫(kù)邏輯結(jié)構(gòu)設(shè)計(jì)</b></p><p> 在上面的實(shí)體以及實(shí)體之間關(guān)系的基礎(chǔ)上,形成各個(gè)表格之間的關(guān)
57、系。</p><p> 庫(kù)存管理系統(tǒng)數(shù)據(jù)庫(kù)中的各個(gè)表的設(shè)計(jì)結(jié)果如下面的幾個(gè)表格所示,,每個(gè)表格表示數(shù)據(jù)庫(kù)中的一個(gè)表。</p><p> 表 4.1 設(shè)備代碼表</p><p><b> 表 4.2 權(quán)限表</b></p><p> 表 4.3 設(shè)備入庫(kù)表</p><p> 表 4.4 設(shè)
58、備出庫(kù)表</p><p> 表 4.5 現(xiàn)有庫(kù)存庫(kù)表</p><p> 表 4.6 部門(mén)需求表</p><p> 表 4.7 設(shè)備還庫(kù)表</p><p> 表 4.8 操作日志表</p><p> 表 4.9 設(shè)備采購(gòu)計(jì)劃表</p><p><b> 4.3 代碼設(shè)計(jì)<
59、;/b></p><p> 任何庫(kù)存均可分為如下三類:</p><p> ?。令愇锲罚焊咧旦ぉr(jià)值占庫(kù)存總值70-80%的相對(duì)少數(shù)物品。通常為物品的15-20%。</p><p> ?。骂愇锲罚褐兄旦ぉた傊嫡紟?kù)存總值的15-20%。物品數(shù)居中,通常占物品的30-40%。</p><p> ?。妙愇锲罚旱椭旦ぉ?kù)存總值幾乎可以忽略不計(jì),
60、只占5-10%。是物品的大多數(shù),通常占60-70%。</p><p><b> 因此設(shè)計(jì)編碼如下:</b></p><p> 設(shè)備號(hào)或零件號(hào) × × × × × × </p><p><b> 自定義</b></p>&l
61、t;p><b> 自定義</b></p><p><b> 自定義</b></p><p> 例如設(shè)備號(hào)或零件號(hào) A 0 1 0 2 </p><p><b> A類</b></p><p><b> 消耗性物資</b>
62、;</p><p><b> 常用零件</b></p><p> 4.4 輸入輸出設(shè)計(jì)</p><p> 本系統(tǒng)界面標(biāo)準(zhǔn)Windows形式,鍵盤(pán)輸入(也可以用條形碼讀取),人機(jī)交互,容易使用。輸入輸出的設(shè)計(jì)考慮美觀實(shí)用和通俗易懂,圖文并茂。</p><p> 4.5系統(tǒng)安全性設(shè)計(jì)</p><p
63、> 系統(tǒng)數(shù)據(jù)庫(kù)中包含多個(gè)二維表,所以在系統(tǒng)與數(shù)據(jù)庫(kù)的連接上,并沒(méi)有把數(shù)據(jù)庫(kù)和系統(tǒng)的連接直接寫(xiě)入代碼,而是通過(guò)對(duì)服務(wù)器端進(jìn)行系統(tǒng)設(shè)置,使數(shù)據(jù)庫(kù)名及路徑不可見(jiàn),并通過(guò)ACCESS的數(shù)據(jù)庫(kù)安全設(shè)置,保證了數(shù)據(jù)庫(kù)的安全性。系統(tǒng)根據(jù)用戶身份不同賦予不同權(quán)限,用戶用密碼登陸,同樣也保證了系統(tǒng)數(shù)據(jù)的安全性。</p><p><b> 第五章 系統(tǒng)實(shí)施</b></p><p&g
64、t; 5.1、開(kāi)發(fā)工具簡(jiǎn)介</p><p> 本系統(tǒng)的前端開(kāi)發(fā)工具,我選擇了Visual Basic6.0,后臺(tái)數(shù)據(jù)庫(kù)采用Access2000。</p><p> 5.1.1 VB簡(jiǎn)介 </p><p> Visual意為“可視化的”,指的是一種開(kāi)發(fā)圖形用戶界面的方法,所以Visual Basic是基于Basic的可視化的程序設(shè)計(jì)語(yǔ)言。在Visual Bas
65、ic中,一方面繼承了Basic所具有的程序設(shè)計(jì)語(yǔ)言簡(jiǎn)單易用的特點(diǎn),另一方面在其編程系統(tǒng)中采用了面向?qū)ο?、事件?qū)動(dòng)的編程機(jī)制,用一種巧妙的方法把Windows的編程復(fù)雜性封裝起來(lái),提供了一種所見(jiàn)即所得的可視化程序設(shè)計(jì)方法。 </p><p> 5.1.2 VB功能特點(diǎn) </p><p> 具有面向?qū)ο蟮目梢暬O(shè)計(jì)工具 </p><p> 在VB中,應(yīng)用面向?qū)ο蟮?/p>
66、程序設(shè)計(jì)方法(OOP),把程序和數(shù)據(jù)封裝起來(lái)視為一 個(gè)對(duì)象,每個(gè)對(duì)象都是可視的。程序員在設(shè)計(jì)時(shí)只需用現(xiàn)有工具根據(jù)界面設(shè)計(jì)要求,直接在屏幕上“畫(huà)”出窗口、菜單、按鈕、滾動(dòng)條等不同類型的對(duì)象,并為每個(gè)對(duì)象設(shè)置屬性。程序員的編程工作僅限于編寫(xiě)相關(guān)對(duì)象要完成的功能程序,因而程序設(shè)計(jì)的效率可大大提高。 </p><p> 事件驅(qū)動(dòng)的編程機(jī)制 </p><p> 事件驅(qū)動(dòng)是非常適合圖形用戶界面的
67、編程方式。在圖形用戶界面的應(yīng)用程序中,是由用戶的動(dòng)作即事件掌握著程序運(yùn)行的流向,每個(gè)事件都能驅(qū)動(dòng)一段程序的運(yùn)行。程序員只要編寫(xiě)響應(yīng)用戶動(dòng)作的代碼,而各個(gè)動(dòng)作之間不一定有聯(lián)系。 </p><p> 提供了易學(xué)易用的應(yīng)用程序集成開(kāi)發(fā)環(huán)境 </p><p> 在VB集成開(kāi)發(fā)環(huán)境中,用戶可設(shè)計(jì)界面、編寫(xiě)代碼、調(diào)試程序,直至把應(yīng)用程序編譯成可執(zhí)行文件在Windows中運(yùn)行,使用戶在友好的開(kāi)發(fā)環(huán)境
68、中工作。 </p><p> 結(jié)構(gòu)化的程序設(shè)計(jì)語(yǔ)言 </p><p> VB具有豐富的數(shù)據(jù)類型和結(jié)構(gòu)化程序結(jié)構(gòu),作為一種程序設(shè)計(jì)語(yǔ)言,它還有如下一些特點(diǎn): </p><p> 強(qiáng)大的數(shù)值和字符串處理功能 </p><p> 豐富的圖形指令,可方便地繪制各種圖形 </p><p> 提供靜態(tài)和動(dòng)態(tài)數(shù)組,有利于簡(jiǎn)
69、化內(nèi)存的管理 </p><p> 過(guò)程可遞歸調(diào)用,使程序更為簡(jiǎn)練 </p><p> 支持隨機(jī)文件和順序文件的訪問(wèn) </p><p> 提供了一個(gè)可供應(yīng)用程序調(diào)用的包含多種類型的圖標(biāo)庫(kù) </p><p> 具有完善的運(yùn)行出錯(cuò)處理 </p><p> 支持多種數(shù)據(jù)庫(kù)系統(tǒng)的訪問(wèn) </p><p
70、> 利用數(shù)據(jù)控件可訪問(wèn)的數(shù)據(jù)庫(kù)系統(tǒng)有:Microsoft Access、Btrieve、DBASE、Microsfot FoxPro和Paradox等,也可以訪問(wèn)Microsoft Excel、Lotus1-2-3等多種電子表格。 </p><p> 支持動(dòng)態(tài)數(shù)據(jù)交換(DDE)、動(dòng)態(tài)鏈接庫(kù)(DLL)和對(duì)象的鏈接與嵌入(OLE)技術(shù) </p><p> 完備的HELP聯(lián)機(jī)幫助功能
71、 </p><p> 與Windows環(huán)境下的軟件一樣,在VB中,利用幫助菜單和F1功能鍵,用戶可以隨時(shí)方便地得到所需要的幫助信息。VB幫助窗口中顯示了有關(guān)的示例代碼,通過(guò)復(fù)制、粘貼操作可獲取大量的示例代碼,為用戶的學(xué)習(xí)和使用提供了極大的方便。 </p><p> VB程序設(shè)計(jì)的概念就是面向?qū)ο蟮母拍?,?duì)象就是數(shù)據(jù)(DATA)和代碼(CODE)互相結(jié)合的綜合體。Windows上面的每一
72、個(gè)圖標(biāo),包括窗口本身都是對(duì)象,如果沒(méi)有任何事情發(fā)生,對(duì)象處于停頓狀態(tài)。當(dāng)存在外來(lái)事件時(shí),程序段執(zhí)行,它的執(zhí) 行是由外來(lái)事件決定的。因此是“事件”驅(qū)動(dòng)的。 </p><p> 編寫(xiě)VB程序較為簡(jiǎn)單,首先將各個(gè)對(duì)象放在空白窗體上,然后將程序代碼分別添加給對(duì)象或圖標(biāo),將它們組合起來(lái)就可以隨意運(yùn)行了。 </p><p> 在VB中,窗體實(shí)際上是一個(gè)對(duì)象,VB的窗體含有許多內(nèi)嵌特
73、性,這使得用戶界面部分的建立像是從一個(gè)目錄中挑選一個(gè)個(gè)合適的控件,而不是從零開(kāi)始一步一步地建立控件。這種開(kāi)發(fā)者能親眼看到的程序設(shè)計(jì)過(guò)程就是“可視化程序設(shè)計(jì)”(Visual Programming) </p><p> 5.1.3 VB中的基本概念</p><p> 對(duì)象:面向?qū)ο缶幊蹋∣OP)的提法大家一定也很耳熟,雖然Visual Basic并不是完全的面向?qū)ο缶幊?,但也利用了?duì)象
74、編程技術(shù)。對(duì)象簡(jiǎn)單地說(shuō)就是大家經(jīng)??吹降母鞣N窗口、按鈕、文本框甚至打印機(jī)等?! 傩裕喝缤娨曈泻诎?、彩色之分一樣,作為對(duì)象的Windows中的窗口也是有大有小,文本框的位置不可能完全一樣,菜單要顯示出不同的功能,這些都是由對(duì)象的屬性決定的。不同對(duì)象的屬性可能不同。屬性一般決定了對(duì)象的位置、大小、顯示等情況?! 》椒ǎ壕褪菍?duì)象能夠做的事,如打印機(jī)對(duì)象就有打印(Print)方法、窗口對(duì)象支持隱藏(Hide)方法、很多對(duì)象支持移動(dòng)(Mo
75、ve)方法等。 事件:就是對(duì)象對(duì)用戶各種操作的反映情況。如用戶用鼠標(biāo)按一下按鈕,就會(huì)觸發(fā)按鈕的“按”(Click)事件。 控件:控件就是Visual Basic提供的編程用的模塊,與對(duì)象有直接的聯(lián)系,如同積木的木塊,使用這樣的控件,就可以像拼圖或堆積木一樣“搭”、“拼”你的程序界面。Visual Basic中使用控件,簡(jiǎn)化了Windows中的窗口、按鈕等對(duì)象的編程設(shè)計(jì)。每個(gè)控件都有各自的屬性、事件及方法。只需修改這些特征你就可以
76、</p><p> 5.1.4 Access2000數(shù)據(jù)庫(kù)簡(jiǎn)介</p><p> 作為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ù)程序(如dBASE,Paradox,Microsoft
77、 FoxPro)和服務(wù)器、小型機(jī)及大型機(jī)上的許多SQL數(shù)據(jù)庫(kù)。Access還完全支持Microsoft的OLE技術(shù)。</p><p> Access還提供windows操作系統(tǒng)的高級(jí)應(yīng)用程序開(kāi)發(fā)系統(tǒng)。Access與其它數(shù)據(jù)庫(kù)開(kāi)發(fā)系統(tǒng)之間相當(dāng)顯著的區(qū)別就是:您不用寫(xiě)一行代碼,就可以在很短的時(shí)間里開(kāi)發(fā)出一個(gè)功能強(qiáng)大而且相當(dāng)專業(yè)的數(shù)據(jù)庫(kù)應(yīng)用程序,并且這一愉快的過(guò)程是完全可視的!如果您能給它加上簡(jiǎn)短的VBA代碼,那么您
78、的程序決不比專業(yè)程序員潛心開(kāi)發(fā)的程序差。</p><p> Access的總體結(jié)構(gòu)</p><p> Access將所有有名字的東西都成為對(duì)象(object),在Access 2000中,最重要的對(duì)象有表,查詢,窗體,報(bào)表,宏和模塊。</p><p> 表 用戶定義的存儲(chǔ)資料的對(duì)象。每一個(gè)表都包含有關(guān)某個(gè)主體的信息。表包括存儲(chǔ)不同種類資料的字段(列),而記錄(
79、行)則收集特定主體實(shí)例的所有信息。</p><p> 查詢 為來(lái)自一個(gè)或多個(gè)表的資料提供定制視圖的對(duì)象。在Access中,可以利用圖形化的實(shí)例查詢機(jī)制(QBE)或通過(guò)SQL語(yǔ)句來(lái)建立查詢。你可以在查詢中選擇、更新、插入或刪除資料,也可以用查詢來(lái)建立新表。</p><p> 窗體 窗體是主要的人機(jī)接口。大量的操作(幾乎所有)都要通過(guò)窗體完成。窗體通過(guò)運(yùn)行宏(macro)或Visual B
80、asic for Applicatinns(VBA)過(guò)程,來(lái)響應(yīng)大量的事件。Access 2000為我們提供了強(qiáng)大的(同時(shí)也是相當(dāng)方便的向?qū)В﹣?lái)建立標(biāo)準(zhǔn)的Windows窗體。</p><p> 報(bào)表 為格式化、計(jì)算、打印選定資料而設(shè)計(jì)的對(duì)象。它是衡量一個(gè)優(yōu)秀的數(shù)據(jù)庫(kù)的重要標(biāo)準(zhǔn)(有時(shí)甚至是唯一的標(biāo)準(zhǔn))。</p><p> 宏 為了響應(yīng)已定義的事件,需要讓Access去執(zhí)行一個(gè)或多個(gè)操作,
81、而宏就是對(duì)這些操作的結(jié)構(gòu)化的定義對(duì)象。它可以讓你像堆積木一樣建立一個(gè)功能強(qiáng)大的程序,而無(wú)須寫(xiě)大量的代碼。</p><p> 模塊 包括用VBA編碼的定制過(guò)程的一個(gè)對(duì)象。模塊提供了獨(dú)立的動(dòng)作流以捕獲錯(cuò)誤,而宏做不到。模塊能直接響應(yīng)窗體或報(bào)表事件,也可以從應(yīng)用程序的任何地方被調(diào)用。</p><p> 5.1.5 本系統(tǒng)中VB與Access2000的連接</p><p&g
82、t; Microsoft.Jet.OLEDB.4.0</p><p><b> 5.2 系統(tǒng)實(shí)現(xiàn)</b></p><p> 5.2.1.系統(tǒng)管理模塊實(shí)現(xiàn)</p><p><b> 系統(tǒng)管理菜單 </b></p><p><b> 修改用戶密碼程序</b></p
83、><p> Private Sub Command1_Click()</p><p> Adodc1.RecordSource = frmLogin.Adodc1.RecordSource</p><p> Adodc1.Refresh</p><p> Set Text4.DataSource = Adodc1</p>&
84、lt;p> Text4.DataField = "密碼"</p><p> If Text1 = "" Then</p><p> MsgBox "請(qǐng)輸入原密碼!", , "修改密碼"</p><p><b> Exit Sub</b></p&g
85、t;<p> ElseIf Text1.Text <> Adodc1.Recordset.Fields("密碼") Then</p><p> MsgBox "原密碼錯(cuò)誤!", , "修改密碼"</p><p><b> Exit Sub</b></p><
86、p> ElseIf Text2 = "" Or Text3 = "" Then</p><p> MsgBox "請(qǐng)輸入新密碼!!", , "修改密碼"</p><p><b> Exit Sub</b></p><p> ElseIf Text2 &
87、lt;> Text3 Then</p><p> MsgBox "密碼不一致??!", , "修改密碼"</p><p><b> Exit Sub</b></p><p><b> Else</b></p><p> Text4.Text = T
88、ext2.Text</p><p> Adodc1.Recordset.MoveFirst</p><p> MsgBox "密碼修改成功??!", , "修改密碼"</p><p><b> Unload Me</b></p><p><b> End If<
89、;/b></p><p><b> End Sub</b></p><p> 5.2.2 用戶管理界面(程序略)</p><p> 5..2.3入庫(kù)模塊的實(shí)現(xiàn)</p><p> Private Sub Command1_Click( ) 設(shè)備入庫(kù)程序</p><p> Dim I,
90、 J As Integer</p><p> Dim STR As String</p><p> If Text1.Text = "" Or Text2 = "" Or Combo1.Text = "" Or Text4 = "" Or Text5 = "" Or Text6 = &q
91、uot;" Or Text7 = "" Then</p><p> MsgBox "請(qǐng)輸入完整信息!"</p><p><b> Exit Sub</b></p><p> Else 將記錄存入入庫(kù)記錄表</p><p> 設(shè)備入庫(kù)表.datPrimaryRS.R
92、ecordset.Fields("設(shè)備號(hào)") = Text1.Text</p><p> 設(shè)備入庫(kù)表.datPrimaryRS.Recordset.Fields("入庫(kù)數(shù)量") = Text2.Text</p><p> 設(shè)備入庫(kù)表.datPrimaryRS.Recordset.Fields("入庫(kù)時(shí)間") = Combo1.
93、Text</p><p> 設(shè)備入庫(kù)表.datPrimaryRS.Recordset.Fields("供應(yīng)商") = Text4.Text</p><p> 設(shè)備入庫(kù)表.datPrimaryRS.Recordset.Fields("供應(yīng)商電話") = Text5.Text</p><p> 設(shè)備入庫(kù)表.datPrimar
94、yRS.Recordset.Fields("價(jià)格") = Text6.Text</p><p> 設(shè)備入庫(kù)表.datPrimaryRS.Recordset.Fields("采購(gòu)員") = Text7.Text</p><p> MsgBox "已經(jīng)成功入庫(kù)!"</p><p><b> En
95、d If</b></p><p> 設(shè)備入庫(kù)表.Adodc1.RecordSource = "select * from 現(xiàn)有庫(kù)存表 where 設(shè)備號(hào)='" & Text1.Text & "'"</p><p> 設(shè)備入庫(kù)表.Adodc1.Refresh</p><p> 設(shè)
96、備入庫(kù)表.DataGrid1.Refresh</p><p> If 設(shè)備入庫(kù)表.Adodc1.Recordset.RecordCount > 0 Then</p><p> 將記錄加入現(xiàn)有庫(kù)存表中</p><p> 設(shè)備入庫(kù)表.Text9.Text = CInt(設(shè)備入庫(kù)表.Text9.Text) + CInt(Text2.Text)</p>
97、;<p> 設(shè)備入庫(kù)表.Text9.Refresh</p><p> J = 設(shè)備入庫(kù)表.Text9</p><p> 設(shè)備入庫(kù)表.Adodc1.Recordset.MoveFirst</p><p> 設(shè)備入庫(kù)表.Adodc1.Recordset.Fields.Refresh</p><p> 設(shè)備入庫(kù)表.DataG
98、rid1.Refresh</p><p> MsgBox "現(xiàn)有庫(kù)存量為:" & J</p><p><b> Else</b></p><p> STR = "現(xiàn)有庫(kù)存表中無(wú)此設(shè)備!" & vbCrLf & "請(qǐng)?jiān)谠O(shè)備代碼表和現(xiàn)有庫(kù)存表中手動(dòng)添加記錄??!"
99、;</p><p> MsgBox STR</p><p> Load frm現(xiàn)有庫(kù)存表</p><p> frm現(xiàn)有庫(kù)存表.Show</p><p> Call frm現(xiàn)有庫(kù)存表.Command1_Click</p><p> FrmAddNewEqu.Text1.Text = frmInput.Text1
100、.Text</p><p> FrmAddNewEqu.Text2.Text = frmInput.Text2.Text</p><p> Load frm設(shè)備代碼表</p><p> frm設(shè)備代碼表.Show</p><p><b> End If</b></p><p><b&
101、gt; End Sub</b></p><p> Private Sub cmdDelete_Click( ) 刪除入庫(kù)表中記錄</p><p> On Error GoTo DeleteErr</p><p> Dim YesNo As String</p><p> YesNo = MsgBox("刪除&q
102、uot;, vbYesNo, "刪除記錄")</p><p> If YesNo = vbYes Then</p><p> With datPrimaryRS.Recordset</p><p><b> .Delete</b></p><p><b> .MoveNext<
103、/b></p><p> If .EOF Then .MoveLast</p><p><b> End With</b></p><p><b> Else</b></p><p><b> Exit Sub</b></p><p>&l
104、t;b> End If</b></p><p> DeleteErr:</p><p> MsgBox Err.Description</p><p><b> End Sub</b></p><p> Private Sub cmdUpdate_Click( ) 更新紀(jì)錄程序</p&g
105、t;<p> On Error GoTo UpdateErr</p><p> datPrimaryRS.Recordset.UpdateBatch adAffectAll</p><p><b> Exit Sub</b></p><p> UpdateErr:</p><p> MsgBox
106、Err.Description</p><p><b> End Sub</b></p><p> 5..2.4出庫(kù)模塊實(shí)現(xiàn)</p><p> Private Sub Command1_Click( )設(shè)備出庫(kù)程序</p><p> Dim i, J, k As Integer</p><p
107、> Dim STR As String</p><p> frm設(shè)備出庫(kù)表.Adodc1.RecordSource = "select * from 現(xiàn)有庫(kù)存表 where 設(shè)備號(hào)='" & Text1.Text & "'"</p><p> frm設(shè)備出庫(kù)表.Adodc1.Refresh</p>
108、;<p> frm設(shè)備出庫(kù)表.DataGrid1.Refresh</p><p> If IsNumeric(Text2) = False Then</p><p> MsgBox "數(shù)量必須是數(shù)字!"</p><p><b> Exit Sub</b></p><p><
109、b> End If</b></p><p> If Text1.Text = "" Or Text2 = "" Or Combo1.Text = "" Or Text4 = "" Or Text5 = "" Or Text6 = "" Or Text7 = "&q
110、uot; Then</p><p> MsgBox "請(qǐng)輸入完整信息!"</p><p><b> Exit Sub</b></p><p> ElseIf frm設(shè)備出庫(kù)表.Adodc1.Recordset.RecordCount <= 0 Then</p><p> STR = &q
111、uot;現(xiàn)有庫(kù)存表中無(wú)此設(shè)備!請(qǐng)檢查輸入是否正確??!"</p><p> MsgBox STR</p><p><b> Exit Sub</b></p><p><b> Else</b></p><p> frm設(shè)備出庫(kù)表.datPrimaryRS.Recordset.Fiel
112、ds("設(shè)備號(hào)") = Text1.Text</p><p> frm設(shè)備出庫(kù)表.datPrimaryRS.Recordset.Fields("出庫(kù)數(shù)量") = Text2.Text</p><p> frm設(shè)備出庫(kù)表.datPrimaryRS.Recordset.Fields("出庫(kù)時(shí)間") = Combo1.Text<
113、;/p><p> frm設(shè)備出庫(kù)表.datPrimaryRS.Recordset.Fields("經(jīng)手人") = Text4.Text</p><p> frm設(shè)備出庫(kù)表.datPrimaryRS.Recordset.Fields("領(lǐng)取人") = Text5.Text</p><p> frm設(shè)備出庫(kù)表.datPrimar
114、yRS.Recordset.Fields("使用部門(mén)") = Text6.Text</p><p> frm設(shè)備出庫(kù)表.datPrimaryRS.Recordset.Fields("用途") = Text7.Text</p><p> MsgBox "已經(jīng)成功存入設(shè)備出庫(kù)表庫(kù)!"</p><p><
115、;b> End If</b></p><p> If frm設(shè)備出庫(kù)表.Adodc1.Recordset.RecordCount > 0 Then</p><p> k = CInt(frm設(shè)備出庫(kù)表.Text9.Text) - CInt(Text2.Text)</p><p> If k >= 0 Then</p>
116、<p> frm設(shè)備出庫(kù)表.Text9.Text = CInt(frm設(shè)備出庫(kù)表.Text9.Text) - CInt(Text2.Text)</p><p> frm設(shè)備出庫(kù)表.Text9.Refresh</p><p> J = frm設(shè)備出庫(kù)表.Text9</p><p> frm設(shè)備出庫(kù)表.Adodc1.Recordset.MoveFi
117、rst</p><p> frm設(shè)備出庫(kù)表.Adodc1.Recordset.Fields.Refresh</p><p> frm設(shè)備出庫(kù)表.DataGrid1.Refresh</p><p> MsgBox "現(xiàn)有庫(kù)存量為:" & J</p><p><b> Else</b>&l
118、t;/p><p> MsgBox "現(xiàn)有庫(kù)存量不足!請(qǐng)輸入合適數(shù)量?。?quot;</p><p><b> Exit Sub</b></p><p><b> End If</b></p><p><b> Else</b></p><p&g
119、t; STR = "現(xiàn)有庫(kù)存表中無(wú)此設(shè)備!請(qǐng)檢查輸入是否正確??!"</p><p> MsgBox STR </p><p><b> End If</b></p><p><b> End Sub</b></p><p> Private Sub cmdDe
120、lete_Click( )刪除出庫(kù)記錄</p><p> On Error GoTo DeleteErr</p><p> Dim YesNo As String</p><p> YesNo = MsgBox("刪除", vbYesNo, "刪除記錄")</p><p> If YesNo =
121、 vbYes Then</p><p> With datPrimaryRS.Recordset</p><p><b> .Delete</b></p><p><b> .MoveNext</b></p><p> If .EOF Then .MoveLast</p>&l
122、t;p><b> End With</b></p><p><b> Else</b></p><p><b> Exit Sub</b></p><p><b> End If</b></p><p> DeleteErr:</p&
123、gt;<p> MsgBox Err.Description</p><p><b> End Sub</b></p><p> 更新記錄程序同入庫(kù)的更新程序相同,在此略</p><p> 5.2.5設(shè)備采購(gòu)模塊實(shí)現(xiàn),程序略</p><p> 5.2.6現(xiàn)有模塊實(shí)現(xiàn),程序略</p>
124、<p> 5.2.7設(shè)備代碼模塊實(shí)現(xiàn)</p><p><b> 主要程序</b></p><p> Private Sub cmdAdd_Click( ) 添加設(shè)備</p><p> On Error GoTo AddErr</p><p> datPrimaryRS.Recordset.AddNew
125、</p><p><b> Exit Sub</b></p><p><b> AddErr:</b></p><p> MsgBox Err.Description</p><p><b> End Sub</b></p><p> 5.2.
126、8 庫(kù)存報(bào)警模塊實(shí)現(xiàn)</p><p><b> 主要程序</b></p><p> Private Sub Command1_Click() 顯示高于最大警戒庫(kù)存的設(shè)備</p><p> datPrimaryRS.RecordSource = "select * from 現(xiàn)有庫(kù)存表 where 現(xiàn)有庫(kù)存>最大庫(kù)存&quo
127、t;</p><p> datPrimaryRS.Refresh</p><p> grdDataGrid.Refresh</p><p> If datPrimaryRS.Recordset.RecordCount > 0 Then</p><p><b> Beep</b></p><
128、;p> MsgBox "表中設(shè)備已過(guò)量!"</p><p><b> Else</b></p><p> MsgBox "沒(méi)有設(shè)備庫(kù)存過(guò)量!"</p><p><b> End If</b></p><p><b> End Sub&
129、lt;/b></p><p> Private Sub Command2_Click()顯示低于于最小警戒庫(kù)存的設(shè)備</p><p> datPrimaryRS.RecordSource = "select * from 現(xiàn)有庫(kù)存表 where 現(xiàn)有庫(kù)存<最小庫(kù)存"</p><p> datPrimaryRS.Refresh&l
130、t;/p><p> grdDataGrid.Refresh</p><p> If datPrimaryRS.Recordset.RecordCount > 0 Then</p><p><b> Beep</b></p><p> MsgBox "表中設(shè)備庫(kù)存量已過(guò)警戒線!請(qǐng)采購(gòu)!!"&l
131、t;/p><p><b> Else</b></p><p> MsgBox "沒(méi)有設(shè)備庫(kù)存量過(guò)少!"</p><p><b> End If</b></p><p><b> End sub</b></p><p> Priv
132、ate Sub Timer1_Timer() 自動(dòng)報(bào)警程序</p><p> frmAlarm.datPrimaryRS.RecordSource = "select * from 現(xiàn)有庫(kù)存表 where 現(xiàn)有庫(kù)存>最大庫(kù)存"</p><p> frmAlarm.datPrimaryRS.Refresh</p><p> If frm
133、Alarm.datPrimaryRS.Recordset.RecordCount > 0 Then</p><p><b> Beep</b></p><p> MsgBox "有設(shè)備庫(kù)存超過(guò)警戒庫(kù)存!" & vbCrLf & "請(qǐng)查看庫(kù)存報(bào)警記錄"</p><p> Time
溫馨提示
- 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. 眾賞文庫(kù)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 畢業(yè)論文-庫(kù)存管理
- 庫(kù)存管理畢業(yè)論文
- 畢業(yè)論文---庫(kù)存管理系統(tǒng)
- 庫(kù)存管理系統(tǒng)畢業(yè)論文
- 畢業(yè)論文--庫(kù)存管理系統(tǒng)(mis)
- 畢業(yè)論文范文——庫(kù)存管理系統(tǒng)
- 畢業(yè)論文范文——庫(kù)存管理系統(tǒng)
- 信息管理系統(tǒng)畢業(yè)論文----庫(kù)存管理系統(tǒng)
- 畢業(yè)論文范文——倉(cāng)庫(kù)庫(kù)存管理系統(tǒng)
- 企業(yè)庫(kù)存管理畢業(yè)論文開(kāi)題報(bào)告
- 網(wǎng)絡(luò)營(yíng)銷庫(kù)存管理系統(tǒng)畢業(yè)論文
- 庫(kù)存管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)論文
- 畢業(yè)論文---藥店庫(kù)存信息管理系統(tǒng)
- 汽車零配件庫(kù)存管理畢業(yè)論文
- 畢業(yè)論文---超市零庫(kù)存管理應(yīng)用分析
- 庫(kù)存管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)【畢業(yè)論文】
- 書(shū)店圖書(shū)庫(kù)存管理系統(tǒng)畢業(yè)論文
- 畢業(yè)論文---庫(kù)存管理系統(tǒng)的設(shè)計(jì)與開(kāi)發(fā)
- 畢業(yè)論文——庫(kù)存管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 畢業(yè)論文范文——倉(cāng)庫(kù)庫(kù)存管理系統(tǒng) (2)
評(píng)論
0/150
提交評(píng)論