現(xiàn)代物流管理策略_第1頁
現(xiàn)代物流管理策略_第2頁
現(xiàn)代物流管理策略_第3頁
現(xiàn)代物流管理策略_第4頁
現(xiàn)代物流管理策略_第5頁
已閱讀5頁,還剩44頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、現(xiàn)代物流管理策略XXX摘要本設(shè)計論文的內(nèi)容,圍繞物流管理系統(tǒng)展開。物流管理系統(tǒng)是典型的信息管理系統(tǒng)(MIS),其開發(fā)主要包括后臺數(shù)據(jù)庫的建立和維護(hù)以及前端應(yīng)用程序的開發(fā)兩個方面。對于前者要求建立起數(shù)據(jù)一致性和完整性強.數(shù)據(jù)安全性好的庫。而對于后者則要求應(yīng)用程序功能完備,易使用等特點。 經(jīng)過分析如此情況,我們使用美國Microsoft公司的Visual Basic前臺開發(fā)工具,使用ACCESS2000作為后臺數(shù)據(jù)庫,利用它們在開發(fā)數(shù)據(jù)庫應(yīng)用程序方面的眾多優(yōu)越性,尤其是VB在應(yīng)用程序的客戶端應(yīng)用開發(fā)方面提供了大量的用于數(shù)據(jù)庫應(yīng)用開發(fā)的各種組件,大大提高開發(fā)的效率。 首先在系統(tǒng)應(yīng)用原型,然后,對初始

2、原型系統(tǒng)進(jìn)行需求迭代,不斷修正和改進(jìn), 直到形成在用戶要求的時間內(nèi)建立系滿意的可行系統(tǒng)。關(guān)鍵詞:物流管理系統(tǒng);VB;數(shù)據(jù)庫;數(shù)據(jù)訪問對象(ADO);AbstractIn this paper,Logistics Management Of Mall System has been discussed. Logistics Management Of Mall System is a typical application of managing information system (MIS),which mainly includes building up data-base of bac

3、k-end and developing the application interface of front-end. The former required consistency and integrality and security of data. The later should make the application powerful and easily used.By analysis of this situation, we use Microsoft Visual Basic as front-end and Microsoft ACCESS2000 as data

4、base of back-end. There are many advantages in developing database applications, especially in the client application used VB. It provides lots of VCL to database application development. It enhances development efficiently. Firstly system application prototype is built.The demand is repeated in the

5、 original system. It can give you a short-cut to build up a prototype of system application. The prototype could be modified and developed till users are satisfied.Keywords:Logistics Management Of Mall System; VB; database; ADO; 目錄前言1第一章 開發(fā)背景1第二章 概述42.1 開發(fā)工具介紹42.1.1 visual basic 的發(fā)展歷史42.1.2 VB的功能特點4

6、2.1.3 Access介紹4第三章 需求分析53.1需求調(diào)查53.2物流管理系統(tǒng)層次圖6第四章 數(shù)據(jù)庫設(shè)計64.1數(shù)據(jù)庫選擇64.2概念模型64.3數(shù)據(jù)庫的實現(xiàn)8第五章 總體設(shè)計95.1模塊的設(shè)計10第六章 詳細(xì)設(shè)計126.1設(shè)計的意義126.2模塊詳細(xì)設(shè)計13第七章 測試417.1軟件測試的重要性417.2測試417.2.1 MDI主窗體模塊測試41第八章 現(xiàn)狀分析及建議428.1 我國物流管理現(xiàn)狀428.2 提出建議42致謝44參考文獻(xiàn)45前言物流概念的提出是人的能力增強所導(dǎo)致的必然結(jié)果。過去在工業(yè)化過程中,由于能力所限,人們的注意力放在廠區(qū)范圍內(nèi),至于原料和產(chǎn)品在廠外怎樣流動,考慮的相

7、對少一些,只要成本低就好。隨著人的能力的增強和社會化、專業(yè)化大生產(chǎn)體系的建立,人們開始將一個區(qū)域,甚至整個世界、整個地球看做一個大工廠、一個整體來研究產(chǎn)品生產(chǎn)流程的合理性和優(yōu)化問題,從過去把重點放在生產(chǎn)工廠的合理建設(shè)轉(zhuǎn)移到把重點放在物資流通全過程的合理設(shè)計上,僅把工廠看做物資流動過程中的一個駐留點。狹義地講,如果認(rèn)為運輸組織意味著運輸過程優(yōu)化,側(cè)重于合理使用運輸工具,那么物流組織則意味著流動過程的優(yōu)化,側(cè)重于物資流動方式的合理性。由運輸向物流的轉(zhuǎn)變相當(dāng)于把運輸工具與運輸對象的位置做了對調(diào)。再進(jìn)一步講,這種轉(zhuǎn)變把生產(chǎn)與流通運輸這一對對立統(tǒng)一的事物的位置也做了調(diào)整,過去以研究生產(chǎn)為主,運輸流動為輔

8、,現(xiàn)在以流通運輸為主,生產(chǎn)為輔。這就是物流概念的新意所在。位置的調(diào)換會使人產(chǎn)生不同的感覺,這樣做有時有利于啟發(fā)新思路,有利于解決問題和提高管理水平。這也說明并非只有新的事物、新的技術(shù)能給人們帶來效益,一個理念、觀念或思路的改變也會給人們帶來新意和效益。它遵循的基本規(guī)律是:理念改變概念改變業(yè)務(wù)改變效果改變。抓住物流概念的實質(zhì)才能綱舉目張、有的放矢,做到轉(zhuǎn)變服務(wù)意識,從坐等客戶上門到主動上門為客戶服務(wù),并提供多樣化的、使客戶滿意的服務(wù)。也正因為服務(wù)質(zhì)量的改善,擴大了服務(wù)范圍,使許多物流經(jīng)營者獲得顯著效益,與過去的運輸過剩和不景氣相比,運輸市場出現(xiàn)了蓬勃發(fā)展的勢頭。第一章 開發(fā)背景根據(jù)所掌握的資料,

9、我們對目前國內(nèi)外的各種物流配送中心的情況進(jìn)行了分析,結(jié)論是:它們大都跨越了簡單送貨上門的階段,基本上屬于真正意義上的物流配送,但在層次上仍是傳統(tǒng)意義上的物流配送,即處于物流配送初級階段,尚不具備或基本不具備信息化、現(xiàn)代化、社會化的新型物流配送的特征,因此在經(jīng)營中存在著傳統(tǒng)物流配送無法克服的種種弊端和問題。我國目前的商品經(jīng)濟(jì)比較發(fā)達(dá),但物流配送明顯滯后。長期以來,商流與物流分割,嚴(yán)重影響了商品經(jīng)營和規(guī)模效益。市場經(jīng)濟(jì)需要更高程度的組織化、規(guī)?;拖到y(tǒng)化,迫切需要盡快加強建設(shè)具有信息功能的物流配送中心。 科學(xué)技術(shù)日新月異的進(jìn)步,讓人類生活發(fā)生了巨大的變化,計算機技術(shù)的飛速發(fā)展,使各行各業(yè)在計算機技

10、術(shù)應(yīng)用方面得到了廣泛的普及和使用。信息化時代的到來成為不可抗拒的潮流,人類文明正在進(jìn)入一個嶄新的時代。物流管理系統(tǒng)是使用Visual Basic 6.0開發(fā)的面向?qū)ο蟮臄?shù)據(jù)庫信息管理系統(tǒng),該系統(tǒng)主要用于公司或單位對物流的日常管理。該系統(tǒng)界面友好,操作簡單,易學(xué)易用,從總體方案上力求達(dá)到該軟件所需的目標(biāo)要求。國家對企業(yè)信息化的重視、電子政務(wù)的推廣、海關(guān)的改革、物流業(yè)務(wù)自身的迅速發(fā)展,都充當(dāng)了物流信息化進(jìn)程中強有力的助推器,而IT業(yè)對于物流的關(guān)注則成為了直接的動力。整個物流產(chǎn)業(yè)對于信息技術(shù)的需求分為三類,應(yīng)該提倡效益為本、需求為先、循序漸進(jìn)的信息化實施之路。 1.基礎(chǔ)信息化需求仍是主流 第一類是基

11、礎(chǔ)信息化。由于信息技術(shù)的發(fā)展和普及,特別是近幾年,互聯(lián)網(wǎng)i場經(jīng)濟(jì)發(fā)展初期,企業(yè)和企業(yè)之間是完全競爭的,只有到了成熟的產(chǎn)品鏈、價值鏈、服務(wù)鏈形成以后,企業(yè)和企業(yè)之間才有一種依存和戰(zhàn)略合作的關(guān)系,它們在業(yè)務(wù)上才會產(chǎn)生協(xié)同的要求。一旦建立這種要求,企業(yè)之間就需要用一套信息系統(tǒng)把這一要求固定下來,來執(zhí)行業(yè)務(wù)上的協(xié)同操作。例如,在上下游的企業(yè)之間,庫存信息對彼此是公開的,采購不再是由一次次的招標(biāo)來完成,而是變成自動補貨。這種情況是建立在企業(yè)經(jīng)營鏈基礎(chǔ)之上的一種新的業(yè)務(wù)模式,而供應(yīng)鏈管理的軟件,正是用來解決這些問題的有效工具。2. 優(yōu)化帶來管理效益的提高 優(yōu)化主要是在兩個層面上,一個是流程的優(yōu)化,會涉及到

12、整個的流程再造,這就需要用數(shù)據(jù)來分析,所以一定要有第一階段的基礎(chǔ)。第二個方面的優(yōu)化是日常操作的優(yōu)化,比如說每天都有的庫存的改變、運輸?shù)恼{(diào)度,同樣也需要信息系統(tǒng)的支持。做好優(yōu)化的工作,將能夠大大提高物流管理的效率。流程的改造、日常操作的優(yōu)化都會帶來看得見的效益。所以,這就比僅僅依賴于獲得信息,還是人工決策,要上一個層次,等于是機器用數(shù)據(jù)來進(jìn)行優(yōu)化的決策。3.供應(yīng)鏈管理打造共贏模式 第三層次,也是最高層次的需求,就是供應(yīng)鏈管理的工具。供應(yīng)鏈這個概念包含的內(nèi)容很多,不僅僅是物流,還包括其他方面的內(nèi)容。供應(yīng)鏈?zhǔn)怯脕碚{(diào)節(jié)企業(yè)和企業(yè)之間的協(xié)作關(guān)系、在市場經(jīng)濟(jì)成熟到一定程度之后出現(xiàn)的一種概念。在市場經(jīng)濟(jì)發(fā)展

13、初期,企業(yè)和企業(yè)之間是完全競爭的,只有到了成熟的產(chǎn)品鏈、價值鏈、服務(wù)鏈形成以后,企業(yè)和企業(yè)之間才有一種依存和戰(zhàn)略合作的關(guān)系,它們在業(yè)務(wù)上才會產(chǎn)生協(xié)同的要求。一旦建立這種要求,企業(yè)之間就需要用一套信息系統(tǒng)把這一要求固定下來,來執(zhí)行業(yè)務(wù)上的協(xié)同操作。例如,在上下游的企業(yè)之間,庫存信息對彼此是公開的,采購不再是由一次次的招標(biāo)來完成,而是變成自動補貨。這種情況是建立在企業(yè)經(jīng)營鏈基礎(chǔ)之上的一種新的業(yè)務(wù)模式,而供應(yīng)鏈管理的軟件,正是用來解決這些問題的有效工具 4.立足實際力爭三步并作一步走 我國物流信息化目前的需求仍是以底層的基礎(chǔ)信息化為主?,F(xiàn)有的物流管理軟件大多僅僅是反映信息,只有少數(shù)很成熟的軟件對流程

14、和操作的優(yōu)化具備很強的功能。 將物流信息化的需求分為三層,有助于了解發(fā)展的趨勢,了解自己的目標(biāo)。盡管供應(yīng)鏈管理在我國現(xiàn)在還沒有太多成功案例,但是并不代表沒有這方面的發(fā)展條件。只要企業(yè)之間不斷加強合作,建立戰(zhàn)略合作伙伴關(guān)系,進(jìn)行業(yè)務(wù)上的協(xié)同,必將促進(jìn)供應(yīng)鏈、價值鏈的形成。所以,只要充分利用資源,我國的物流信息化實現(xiàn)三步并作一步走,是完全有可能的。但是,實現(xiàn)這一目標(biāo),就要求企業(yè)必須給自己定好位,絕對不能從觀念出發(fā),不能脫離實際,每一層的需求都需要一定的基礎(chǔ)、一定的管理水準(zhǔn)、一定的物質(zhì)和技術(shù)條件。從這個意義上講,只有最合適企業(yè)的系統(tǒng)才可能取得成功。第二章 概述2.1 開發(fā)工具介紹2.1.1 visu

15、al basic 的發(fā)展歷史BASIC是Beginners All-purpose symbolic instruction Code(初學(xué)者通i的程序代碼就是事件過程。 事件過程的編寫格式:一個對象可以響應(yīng)一個或多個事件,因此可以使用一個和多個事件過程對用戶或系統(tǒng)的事件做出響應(yīng)。程序員只需編寫必須響應(yīng)的事件過程,而其它無用的事件過程則不必編寫。事件過程的一般編寫格式為:SUB 對象名_事件名( )程序代碼End Sub2.1.2 VB的功能特點 具有面向?qū)ο蟮目梢暬O(shè)計工具 事件驅(qū)動的編程機制 提供了易學(xué)易用的應(yīng)用程序集成開發(fā)環(huán)境 結(jié)構(gòu)化的程序設(shè)計語言 強大的數(shù)據(jù)庫功能 Active技術(shù) 網(wǎng)

16、絡(luò)功能 多個應(yīng)用程序向?qū)?完備的HELP聯(lián)機幫助功能 2.1.3 Access介紹Access是Microsoft Office辦公套件中一個極為重要的組成部分。剛開始時微軟公司是將Access單獨作為一個產(chǎn)品進(jìn)行銷售的,后來微軟發(fā)現(xiàn)如果將Access捆綁在OFFICE中一起發(fā)售,將帶來更加可觀的利潤,于是第一次將Access捆綁到OFFICE97中,成為OFFICE套件中的一個重要成員?,F(xiàn)在它已經(jīng)成為Office辦公套件中不可缺少的部件了。自從1992年開始銷售以來,Access 已經(jīng)賣出了超過6000萬份,現(xiàn)在它已經(jīng)成為世界上最流行的桌面數(shù)據(jù)庫管理系統(tǒng)。后來微軟公司通過大量地改進(jìn),將Acc

17、ess的新版本功能變得更加強大。不管是處理公司的客戶訂單數(shù)據(jù);管理自己的個人通訊錄;還是大量科研數(shù)據(jù)的記錄和處理,人們都可以利用它來解決大量數(shù)據(jù)的管理工作。Access做為一個數(shù)據(jù)庫管理系統(tǒng),它被集成在Microsoft Office中。Access數(shù)據(jù)庫處理的基本結(jié)構(gòu),采取關(guān)系型數(shù)據(jù)庫模式。與其他的數(shù)據(jù)庫系統(tǒng)相比,Access更加簡單易學(xué),一個普通的計算機用戶可以很快地掌握它。Access 2000的功能十分強大,利用它可以方便地實現(xiàn)對信息保存、維護(hù)、查詢、統(tǒng)計、打印、交流、發(fā)布,而且它可以十分方便地與Office其他組件交流數(shù)據(jù),這些功能對一個一般用戶而言已經(jīng)足夠了。第三章 需求分析3.1

18、需求調(diào)查我國物流信息化目前的需求仍是以底層的基礎(chǔ)信息化為主。現(xiàn)有的物流管理軟件大多僅僅是反映信息,只有少數(shù)很成熟的軟件對流程和操作的優(yōu)化具備很強的功能。 將物流信息化的需求分為三層,有助于了解發(fā)展的趨勢,了解自己的目標(biāo)。盡管供應(yīng)鏈管理在我國現(xiàn)在還沒有太多成功案例,但是并不代表沒有這方面的發(fā)展條件。只要企業(yè)之間不斷加強合作,建立戰(zhàn)略合作伙伴關(guān)系,進(jìn)行業(yè)務(wù)上的協(xié)同,必將促進(jìn)供應(yīng)鏈、價值鏈的形成。所以,只要充分利用資源,我國的物流信息化實現(xiàn)三步并作一步走,是完全有可能的。但是,實現(xiàn)這一目標(biāo),就要求企業(yè)必須給自己定好位,絕對不能從觀念出發(fā),不能脫離實際,每一層的需求都需要一定的基礎(chǔ)、一定的管理水準(zhǔn)、一

19、定的物質(zhì)和技術(shù)條件。從這個意義上講,只有最合適企業(yè)的系統(tǒng)才可能取得成功。 3.2物流管理系統(tǒng)層次圖第四章 數(shù)據(jù)庫設(shè)計4.1數(shù)據(jù)庫選擇憑證管理系統(tǒng)面向的對象是物流的各個功能,為了需要安全、方便的本地數(shù)據(jù)庫。因此,我采用Microsoft公司的Access文件數(shù)據(jù)庫來存放數(shù)據(jù)。4.2概念模型軟件系統(tǒng)本質(zhì)上是信息處理系統(tǒng),因此在軟件系統(tǒng)的整個開發(fā)過程中都必考慮到兩方面的問題“數(shù)據(jù)”及對數(shù)據(jù)的“處理”。在需求分析階段即要分析用戶的數(shù)據(jù)要求又要分析用戶的處理要求。為了把用戶的數(shù)據(jù)要求清晰明確地表達(dá)出來,現(xiàn)采用最常用的表示概念性數(shù)據(jù)模型的方法(實體-聯(lián)系方法)。由此方法作出的E-R模型如下:貨品管理修改刪

20、除貨品添加貨品圖4-2-1 貨品管理信息ER圖刪除物流信息添加物流信息物流管理修改物流信息 圖4-2-2 物流管理工ER圖刪除庫內(nèi)貨物信息添加入庫信息倉庫管理修改庫內(nèi)貨品信息圖4-2-3 倉庫管理信息ER圖4.3數(shù)據(jù)庫的實現(xiàn)啟動Access2000 創(chuàng)建一個新的數(shù)據(jù)庫。命名為dat.mdb,保存在要存放這個系統(tǒng)的所有工程的文件中。 使用設(shè)計器創(chuàng)建這個系統(tǒng)需要的所有表格.如表1貨品添加表格、表2貨品刪除表格、表3貨品盤點表格所示。 1. 貨品添加表格:FrmBaleAdd.frm控件名稱說明FrmBaleAdd貨品添加窗體FraMain主框架TxtBaleID貨品ID信息文本框TxtBaleNa

21、me貨品名稱信息文本框TxtBlaeFrom貨品產(chǎn)地信息文本框TxtBaleSpec貨品規(guī)格信息文本框TxtBalePrice貨品價格信息文本框TxtBaleMemeo貨品備注信息文本框CmdAddNew添加按鈕CmdConfirm確定操作按鈕CmdCancel撤消操作按鈕CmdRefresh刷新按鈕CmdExit退出按鈕AdoMain主ADO控件AdoTest測試ADO控件2.貨品刪除表格:FrmBaleDel.frm:控件名稱說明FrmBaleDel貨品刪除窗體FraMain主框架TxtBaleID貨品ID信息文本框TxtBaleName貨品名稱信息文本框TxtBlaeFrom貨品產(chǎn)地信息

22、文本框TxtBaleSpec貨品規(guī)格信息文本框TxtBalePrice貨品價格信息文本框TxtBaleMemeo貨品備注信息文本框CmdDel刪除按鈕CmdConfirm確定操作按鈕CmdCancel撤消操作按鈕CmdRefresh刷新按鈕CmdExit退出按鈕AdoMain主ADO控件AdoTest測試ADO控件3.貨品盤點表格:FrmBaleUpdate.frm控件名稱說明FrmBaleUpdate貨品信息更新窗體FraMain主框架TxtBaleID貨品ID信息文本框TxtBaleName貨品名稱信息文本框TxtBlaeFrom貨品產(chǎn)地信息文本框TxtBaleSpec貨品規(guī)格信息文本框T

23、xtBalePrice貨品價格信息文本框TxtBaleMemeo貨品備注信息文本框CmdUpdate修改資料按鈕CmdConfirm確定操作按鈕CmdCancel撤消操作按鈕CmdRefresh刷新按鈕CmdExit退出按鈕AdoMain主ADO控件AdoTest測試ADO控件第五章 總體設(shè)計對第三章需求分析所得出的系統(tǒng)流程圖,具體功能說明進(jìn)行歸類總結(jié),并依據(jù)模塊的特征以及獨立性原則對系統(tǒng)進(jìn)行分析后,不難得出系統(tǒng)的模塊結(jié)構(gòu)組成,以及各個模塊之間的關(guān)系。5.1模塊的設(shè)計用模塊化原理進(jìn)行軟件設(shè)計時;為了得到一組最好的模塊集合,應(yīng)該根據(jù)信息隱蔽原理對軟件進(jìn)行分解。也就是應(yīng)該這樣來設(shè)計和確定模塊,使得

24、一個模塊內(nèi)包含的信息(數(shù)據(jù)和過程)對手不需要這些信息的模塊是不能訪問的。模塊獨立的概念,是模塊化、抽象和信息隱蔽的直接結(jié)果。模塊獨立是指該模塊能完成一個相對獨立的特定子功能,并且與其他模塊之間的接口很簡單。模塊獨立有兩個優(yōu)勢:一是具有獨立模塊的軟件比較容易開發(fā)出來,這是因為能夠分割功能,接口可以簡化,并且有利于團(tuán)隊合作;二是獨立的模塊比較容易測試和維護(hù),這是因為錯誤傳播范圍小。所以,提高模塊獨立性是設(shè)計模塊的根本目標(biāo)。本系統(tǒng)為數(shù)據(jù)庫應(yīng)用程序,主要是對數(shù)據(jù)庫中記錄的增加、修改、刪除等操作,模塊內(nèi)部的各個組成部分的處理動作全都為數(shù)據(jù)庫的操作功能存在。因此,系統(tǒng)中模塊的聚合種類應(yīng)為功能聚合。功能聚合

25、模塊具有定義很清楚的界面,它可以單獨地被理解,進(jìn)一步設(shè)計,然后再同其他模塊連接起來。從模塊特征以及模塊獨立性角度出發(fā),得出以下結(jié)論:系統(tǒng)中模塊的獨立性要高,即耦合程度要低;模塊的聚合程度要高,即盡量采用功能聚合。運行Visual Basic后,選擇文件 “新建工程”菜單。然后從工程模塊中選擇“標(biāo)準(zhǔn)EXE”項。單擊確定按鈕。Visual Basic就會自動生成一個窗體,這個窗體的屬性采用的都是默認(rèn)的設(shè)置。在這個實例中,先冊初這個窗體,然后選擇“文件”在選“保存工程”菜單。在出現(xiàn)的“文件另存為”對話框中輸入這個工程項目的名稱:物流_MIS.并且選擇這個工程的目錄,單擊“保存”按鈕,保存工程。為了提

26、高代碼的效率方便維護(hù),在VB中可以用公共模塊來存放工程經(jīng)常使用的函數(shù),過程和全局變量等。在這個系統(tǒng)中,每個功能模塊都要使用數(shù)據(jù)庫,因此可以使用一個公用的數(shù)據(jù)庫操作函數(shù),來執(zhí)行一系列的SQL語句。在項目資源管理器中為這個工程添加一個模塊,保存為Modulel.bas.首先添加幾個變量的定義Public gllserName As String保存用戶名稱Public flag As Integer添加和修改的標(biāo)志Public gSQL As Integer保存SQL語句Public kqspt As String保存查詢考勤結(jié)果SQL語句Public kqspl2 As Sting保存查詢其他考

27、勤結(jié)果SQL語句Public ArecordID As Integer保存上下班記錄編號Public ArecordID As Integer保存請假記錄編號Public OrecordID As Integer保存加班記錄編號Public ErecordID As Integer保存出差記錄編號Public iflag As Integer數(shù)據(jù)庫是否打開標(biāo)志添加執(zhí)行SQL語句的函數(shù)Public Function Transact SQL (By Val Sql As String)As ADODB . RecordsetDim Con As ADODB.ConnectionDim con A

28、s ADODB.RecordsetDim rs As ADODB.ReordsetDim strConnection As StringDim strArray() As StringSet con=Nem ADODB.Connection 創(chuàng)建連接Set rs=New ADODB.Recordset 創(chuàng)建記錄集On Error GoTo TransactSQL_ErrorStrConnection=”Provider=Microsoft.jet.oledb.4.0;Data Source=”& App.path&”person.mdb”StrArray=Split(sql)Con.Open

29、strConnection 打開連接If strComp(Ucase$(strArray(0),”select”,vbTextCompare)=0 The rs.Open Trim$(sql),.con.adOpenKeyset.sdLock()ptimistic Set TransctSQL=rs 返回記錄集 Iflag=1Else con.Execute sql 執(zhí)行命令 iflag=1 End IfTransactSQL-Esit: Set rs=Nothing Set con=Nothing Exit FunctionTransactSQL-Error: MsgBox”查詢錯誤:& E

30、rr.Description Iflag=2Resume TransactSQL-ExitEnd FunctionPublic Sub TabToEnter(Key As Integer) If Key=13 Then 判斷是否為回車鍵 Sendkeys”TAB” 轉(zhuǎn)換為Tab鍵 End IfEnd SubSub main() Dim fLogin As New frmLogin FLogin.Show vbModual 顯示窗體End Sub第六章 詳細(xì)設(shè)計6.1設(shè)計的意義軟件詳細(xì)設(shè)計是指對軟件模塊的過程設(shè)計。其主要任務(wù)是對總體設(shè)計所產(chǎn)生的功能模塊進(jìn)行過程描述,開發(fā)一個可以直接轉(zhuǎn)換成程序語言

31、代碼的軟件表示。這種表示應(yīng)當(dāng)是無歧義性并且是高度結(jié)構(gòu)化的。詳細(xì)設(shè)計階段不是具體地編寫程序,而是設(shè)計出程序的“藍(lán)圖”,程序員再根據(jù)這些藍(lán)圖進(jìn)行編碼。因此,詳細(xì)設(shè)計的結(jié)果基本上決定了最終的程序代碼的質(zhì)量。衡量程序的質(zhì)量不僅要看它在邏輯上是否正確地描述每個模塊的功能,更重要地是要看它是否容易閱讀、測試和維護(hù)。因此,要求詳細(xì)設(shè)計表示的軟件過程應(yīng)具有高度的結(jié)構(gòu)化構(gòu)造。所以結(jié)構(gòu)化程序設(shè)計是完成上述任務(wù)的關(guān)鍵技術(shù)。 6.2模塊詳細(xì)設(shè)計A. 貨品添加窗體:FrmBaleAdd.frm 該窗體在用戶登陸時列出所有貨品清單,但用戶選擇添加貨品記錄后,會激活資料輸入功能,若用戶輸入完成后點擊確認(rèn)后,會自動檢測是否在

32、數(shù)據(jù)庫中有沒有重復(fù)編號的數(shù)據(jù)。若有,拒絕添加,代碼如下:Private Sub CmdAddNew_Click()/點擊添加 CmdAddNew.Enabled = False CmdRefresh.Enabled = False CmdConfirm.Enabled = True CmdCancel.Enabled = True ActiveTextBox AdoMain.Recordset.AddNewEnd SubPrivate Sub CmdConfirm_Click()/確認(rèn)添加 If TxtBaleID.Text = Or TxtBaleName.Text = Then aa =

33、MsgBox(請?zhí)顚懾浧肪幪柡兔Q, vbOKOnly, ) Else 檢查是否有重復(fù)的貨品ID AdoTest.RecordSource = SELECT * FROM Bale WHERE BaleID= & TxtBaleID.Text & AdoTest.Refresh If Not AdoTest.Recordset.EOF Then aa = MsgBox(相同貨品編號已經(jīng)存在,請重新輸入!, vbOKOnly, ) Else AdoMain.Recordset.Update CmdAddNew.Enabled = True CmdRefresh.Enabled = True Cm

34、dConfirm.Enabled = False CmdCancel.Enabled = False AdoMain.RecordSource = SELECT * FROM Bale AdoMain.Recordset.Requery AdoMain.Refresh End If End IfEnd SubPrivate Sub CmdCancel_Click()/撤消添加 AdoMain.Recordset.Cancel AdoMain.Refresh CmdAddNew.Enabled = True CmdRefresh.Enabled = True CmdConfirm.Enabled

35、 = False CmdCancel.Enabled = False UnActiveTextBoxEnd SubB. 貨品刪除窗體:FrmBaleDel.frm 在該窗體中當(dāng)用戶點擊了刪除按鈕會提示是否真正要刪除,如果用戶確認(rèn),則刪除當(dāng)前記錄,否則撤消操作。具體代碼如下:Private Sub Cmddel_Click() CmdDel.Enabled = False CmdRefresh.Enabled = False CmdConfirm.Enabled = True CmdCancel.Enabled = True DaGrBale.Enabled = FalseEnd SubPriv

36、ate Sub CmdCancel_Click() AdoMain.Recordset.Cancel AdoMain.Refresh CmdDel.Enabled = True CmdRefresh.Enabled = True CmdConfirm.Enabled = False CmdCancel.Enabled = False DaGrBale.Enabled = TrueEnd SubPrivate Sub CmdConfirm_Click() AdoMain.Recordset.Delete AdoMain.RecordSource = SELECT * FROM Bale AdoM

37、ain.Recordset.Requery AdoMain.Refresh CmdDel.Enabled = True CmdRefresh.Enabled = True CmdConfirm.Enabled = False CmdCancel.Enabled = False DaGrBale.Enabled = TrueEnd SubC. 貨品盤點窗體:FrmBaleUpdate.frm 在該窗體中當(dāng)用戶點擊了更新按鈕會會激活資料修改功能,若用戶輸入完成后點擊確認(rèn)后,會自動檢測是否在數(shù)據(jù)庫中有沒有重復(fù)編號的數(shù)據(jù)。若有,拒絕添加,具體代碼如下:Private Sub CmdCancel_Cli

38、ck()/撤消更新 AdoMain.Recordset.Cancel AdoMain.Refresh CmdUpdate.Enabled = True CmdRefresh.Enabled = True CmdConfirm.Enabled = False CmdCancel.Enabled = False UnActiveTextBoxEnd SubPrivate Sub CmdConfirm_Click()/確認(rèn)更新 If TxtBaleID.Text = Or TxtBaleName.Text = Then aa = MsgBox(請?zhí)顚懾浧肪幪柡兔Q, vbOKOnly, ) Else

39、 檢查是否有重復(fù)的貨品ID AdoTest.RecordSource = SELECT * FROM Bale WHERE BaleID= & TxtBaleID.Text & AdoTest.Refresh If Not AdoTest.Recordset.EOF And p_BaleID TxtBaleID.Text Then aa = MsgBox(相同貨品編號已經(jīng)存在,請重新輸入!, vbOKOnly, ) Else AdoMain.Recordset.Update CmdUpdate.Enabled = True CmdRefresh.Enabled = True CmdConfir

40、m.Enabled = False CmdCancel.Enabled = False AdoMain.RecordSource = SELECT * FROM Bale AdoMain.Recordset.Requery AdoMain.Refresh UnActiveTextBox End If End IfEnd SubPrivate Sub CmdUpdate_Click()/點擊更新 CmdUpdate.Enabled = False CmdRefresh.Enabled = False CmdConfirm.Enabled = True CmdCancel.Enabled = Tr

41、ue p_BaleID = TxtBaleID.Text ActiveTextBoxEnd SubD. 主MDI窗體:MDIFrmMain.frm 窗體控件: 該窗體在系統(tǒng)啟動時作為主要的外邊界,基于MDI設(shè)計,設(shè)置各種菜單于其之上,不同的用戶登陸會顯示不同的菜單形式。 窗體代碼:Private Sub M_About_Click()/關(guān)于菜單單擊事件 FrmAbout.ShowEnd SubPrivate Sub M_BaleAdd_Click()/貨品資料添加菜單單擊事件 FrmLogin.Hide FrmBaleAdd.ShowEnd SubPrivate Sub M_BalecMove

42、_Click() /貨品流動菜單單擊事件 FrmLogin.Hide FrmBaleMove.ShowEnd SubPrivate Sub M_BaleUpdate_Click()/貨品資料修改菜單單擊事件 FrmLogin.Hide FrmBaleUpdate.ShowEnd SubPrivate Sub M_BaleDel_Click()/貨品刪除菜單單擊事件 FrmLogin.Hide FrmBaleDel.ShowEnd SubPrivate Sub M_DepotAdd_Click()/倉庫添加菜單單擊事件 FrmLogin.Hide FrmDepotAdd.ShowEnd SubP

43、rivate Sub M_DepotDel_Click()/倉庫刪除菜單單擊事件 FrmLogin.Hide FrmDepotDel.ShowEnd SubPrivate Sub M_DepotUpdate_Click()/倉庫資料修改菜單單擊事件 FrmLogin.Hide FrmDepotUpdate.ShowEnd SubPrivate Sub M_Exit_Click()/退出菜單單擊事件 If PubLogin Then aa = MsgBox(用戶 & PubLogin & 正在登錄中,確實要退出嗎?, vbYesNo, ) If aa = vbYes Then End End I

44、f Else End End IfEnd SubPrivate Sub M_Login_Click()/登陸菜單單擊事件 If PubLogin Then aa = MsgBox(用戶 & PubLogin & 已經(jīng)在登錄狀態(tài)!, vbOKOnly, ) Else FrmLogin.Show End IfEnd SubPrivate Sub M_Logout_Click()/登出菜單單擊事件 If PubLogin Then aa = MsgBox(用戶 & PubLogin & 正在登錄中,確實要更換用戶嗎?, vbYesNo, ) If aa = vbYes Then Unload Frm

45、Login FrmLogin.Show PubLogin = MDIFrmMain.M_SysManage.Enabled = False MDIFrmMain.M_Bale.Enabled = False MDIFrmMain.M_Depot.Enabled = False MDIFrmMain.M_Report.Enabled = False MDIFrmMain.M_Traffic.Enabled = False End If Else Unload FrmLogin FrmLogin.Show End IfEnd SubPrivate Sub M_ReportBale_Click()/

46、貨品報表菜單單擊事件 DataRepBale.ShowEnd SubPrivate Sub M_ReportDepot_Click()/倉庫報表菜單單擊事件 DataRepDepot.ShowEnd SubPrivate Sub M_SysManage_Click()/系統(tǒng)設(shè)置菜單單擊事件 FrmLogin.Hide FrmSysManage.ShowEnd SubPrivate Sub M_BaleIn_Click()/進(jìn)貨菜單單擊事件 FrmLogin.Hide FrmBaleIn.ShowEnd SubPrivate Sub M_BaleMove_Click()/貨品流動菜單單擊事件 F

47、rmLogin.Hide FrmBaleMove.ShowEnd SubPrivate Sub M_BaleOut_Click()/出貨菜單單擊事件 FrmLogin.Hide FrmBaleOut.ShowEnd SubPrivate Sub MDIForm_Load()/MDI窗體加載事件 Me.Width = 8000 Me.Height = 6000 FrmLogin.Show MDIFrmMain.M_SysManage.Enabled = False MDIFrmMain.M_Bale.Enabled = False MDIFrmMain.M_Depot.Enabled = Fal

48、se MDIFrmMain.M_Report.Enabled = False MDIFrmMain.M_Traffic.Enabled = FalseEnd SubE. 登錄窗體:FrmLogin.frm 窗體控件: 在該窗體中,利用Timer控件和標(biāo)簽數(shù)組控件實現(xiàn)了文本自動展示的功能。具體代碼如下:Private Sub Timer1_Timer() Dim StrIntro(0 To 6) As String StrIntro(0) = 軟件名稱: & App.Title StrIntro(1) = 目前版本: & App.Major & . & App.Minor & . & App.R

49、evision StrIntro(2) = 開發(fā)軟件:MS Visual Basic 6.0 StrIntro(3) = 開發(fā)環(huán)境:Microsoft Windows 2000 StrIntro(4) = 開發(fā)人員:沈宏清 宋劍峰 姚國民 徐征 StrIntro(5) = 陳少輝 周少華 張志勇 StrIntro(6) = All Rights Reserved. If Len(LblIntro(0) Len(StrIntro(0) Then LblIntro(0).Caption = Left(StrIntro(0), Len(LblIntro(0).Caption) + 1) End If

50、 If Len(LblIntro(0) = Len(StrIntro(0) And Len(LblIntro(1) Len(StrIntro(1) Then LblIntro(1).Caption = Left(StrIntro(1), Len(LblIntro(1).Caption) + 1) End If If Len(LblIntro(1) = Len(StrIntro(1) And Len(LblIntro(2) Len(StrIntro(2) Then LblIntro(2).Caption = Left(StrIntro(2), Len(LblIntro(2).Caption) + 1) End If If Len(LblIntro(2) = Len(StrIntro(2) And Len(LblIntro(3) Len(StrIntro(3) Then LblIntro(3).Caption = Left(StrIntro(3), Len(LblIntro(3).C

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論