藥品采購(gòu)銷售管理系統(tǒng)-免費(fèi)畢業(yè)設(shè)計(jì)論文_第1頁(yè)
藥品采購(gòu)銷售管理系統(tǒng)-免費(fèi)畢業(yè)設(shè)計(jì)論文_第2頁(yè)
藥品采購(gòu)銷售管理系統(tǒng)-免費(fèi)畢業(yè)設(shè)計(jì)論文_第3頁(yè)
藥品采購(gòu)銷售管理系統(tǒng)-免費(fèi)畢業(yè)設(shè)計(jì)論文_第4頁(yè)
藥品采購(gòu)銷售管理系統(tǒng)-免費(fèi)畢業(yè)設(shè)計(jì)論文_第5頁(yè)
已閱讀5頁(yè),還剩45頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

藥品采購(gòu)銷售管理系統(tǒng)畢業(yè)設(shè)計(jì)論文學(xué)校:___________________姓名:___________________學(xué)號(hào):___________________同組人員:_______________指導(dǎo)老師:_______________二○○年五月目錄前言 3摘要 3系統(tǒng)概況 5第一章、需求分析 61.1開發(fā)工具選擇 61.2業(yè)務(wù)流程分析 6第二章系統(tǒng)實(shí)現(xiàn)的理論基礎(chǔ) 92.1、VISUALBASIC6.0簡(jiǎn)介 92.2ACCESS數(shù)據(jù)庫(kù)介紹 102.3ADO技術(shù) 102.4SQL語言 11第三章、系統(tǒng)設(shè)計(jì) 133.1系統(tǒng)功能分析 133.2、總體方案設(shè)計(jì)圖 143.3、系統(tǒng)性能分析 153.4、系統(tǒng)功能模塊設(shè)計(jì) 15第四章.?dāng)?shù)據(jù)庫(kù)設(shè)計(jì) 164.1、數(shù)據(jù)庫(kù)需求分析 164.2、E-R圖設(shè)計(jì) 174.3、數(shù)據(jù)庫(kù)邏輯結(jié)構(gòu)設(shè)計(jì) 204.4、創(chuàng)建應(yīng)用程序結(jié)構(gòu) 23第五章.模塊軟件設(shè)計(jì) 245.1、開發(fā)業(yè)務(wù)邏輯處理組件 245.2、創(chuàng)建組件的通用模塊 245.3、藥品類型信息管理模塊 265.4、藥品信息管理模塊 275.6、進(jìn)貨信息管理模塊 305.7、采購(gòu)信息管理模塊 315.8、報(bào)損信息管理模塊 325.9、管理員信息管理模塊 33第六章、系統(tǒng)界面具體實(shí)現(xiàn) 33測(cè)試分析 42總結(jié) 43參考文獻(xiàn) 43前言藥品采購(gòu)管理系統(tǒng)是一個(gè)藥店不可缺少的部分,它的內(nèi)容對(duì)于藥店的決策者和管理者來說都至關(guān)重要,所以藥品采購(gòu)管理系統(tǒng)應(yīng)該能夠?yàn)橛脩籼峁┏渥愕男畔⒑涂旖莸牟少?gòu),查詢手段。但一直以來人們使用傳統(tǒng)人工的方式管理文件信息,這種管理方式存在著許多缺點(diǎn),如:效率低、保密性差,另外時(shí)間一長(zhǎng),將產(chǎn)生大量的文件和數(shù)據(jù),這對(duì)于查找、更新和維護(hù)都帶來了不少的困難。隨著科學(xué)技術(shù)的不斷提高,計(jì)算機(jī)科學(xué)日漸成熟,其強(qiáng)大的功能已為人們深刻認(rèn)識(shí),它已進(jìn)入人類社會(huì)的各個(gè)領(lǐng)域并發(fā)揮著越來越重要的作用。作為計(jì)算機(jī)應(yīng)用的一部分,使用計(jì)算機(jī)對(duì)品質(zhì)信息進(jìn)行管理,具有著手工管理所無法比擬的優(yōu)點(diǎn).例如:檢索迅速、查找方便、可靠性高、存儲(chǔ)量大、保密性好、壽命長(zhǎng)、成本低等。這些優(yōu)點(diǎn)能夠極大地提高藥店管理的效率,也是企業(yè)的科學(xué)化、正規(guī)化管理,與世界接軌的重要條件。因此,開發(fā)這樣一套管理軟件成為很有必要的事情,在下面的各章中我們將以開發(fā)一套藥品采購(gòu)管理系統(tǒng)為例,談?wù)勂溟_發(fā)過程和所涉及到的問題及解決方法。摘要藥品采購(gòu)管理系統(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)過分析,我們使用MICROSOFT公司的VISUALBASIC開發(fā)工具,利用其提供的各種面向?qū)ο蟮拈_發(fā)工具,尤其是數(shù)據(jù)窗口這一能方便而簡(jiǎn)潔操縱數(shù)據(jù)庫(kù)的智能化對(duì)象,首先在短時(shí)間內(nèi)建立系統(tǒng)應(yīng)用原型,然后,對(duì)初始原型系統(tǒng)進(jìn)行需求迭代,不斷修正和改進(jìn),直到形成用戶滿意的可行系統(tǒng)。本系統(tǒng)主要完成對(duì)藥店的管理,包括進(jìn)貨管理,采購(gòu)管理,庫(kù)存管理和員工管理四個(gè)方面。系統(tǒng)可以完成對(duì)各類信息的瀏覽、查詢、添加、刪除、修改等功能。

系統(tǒng)的核心是采購(gòu)、庫(kù)存查詢和進(jìn)貨管理三者之間的聯(lián)系,每一個(gè)表的修改都將聯(lián)動(dòng)的影響其它的表,當(dāng)完成采購(gòu)或進(jìn)貨操作時(shí)系統(tǒng)會(huì)自動(dòng)地完成相對(duì)應(yīng)信息的修改。查詢功能也是系統(tǒng)的核心之一,在系統(tǒng)中主要根據(jù)藥品編號(hào)和藥品名稱等進(jìn)行查詢,其目的都是為了方便用戶使用,以求更快的查找到各個(gè)物料和產(chǎn)品品質(zhì)的基本信息。系統(tǒng)有完整的用戶添加、刪除和密碼修改功能,系統(tǒng)采用MicrosoftOffice中的Access2000來設(shè)計(jì)數(shù)據(jù)庫(kù),并使用當(dāng)前優(yōu)秀的開發(fā)工具—VB6.0,它有著最為靈活的數(shù)據(jù)庫(kù)結(jié)構(gòu),對(duì)數(shù)據(jù)庫(kù)應(yīng)用有著良好的支持。

論文主要介紹了本課題的開發(fā)背景,所要完成的功能和開發(fā)的過程。重點(diǎn)的說明了系統(tǒng)設(shè)計(jì)的重點(diǎn)、設(shè)計(jì)思想、難點(diǎn)技術(shù)和解決方案。

[英文摘要]SummaryThissystemchieflyaccomplishesthestockmanagementtothestorehouse,includesbeingputinstorage,goesoutthewarehouseandstocks,andstaff’sinformation,sixaspectssuchassupplier'sinformationaswellascryptogrammanagementetc.Whatthesystemcanaccomplishtovariouskindtheinformationglancesoverandthefunctionsuchasinquiresabout,adds,deletesandmodificationetc.Thesystematicnucleusisisputinstorage,stocksandgoesoutthecontactbetweenthewarehouse,andwhenaccomplishesbeingputinstorageorgoingoutawarehouse,thesystemcanaccomplishvoluntarilythemodificationofstocktoothertableofinfluencethatthemodificationofeverytableallwillbelinkageedwhenoperating.Inquiringaboutthefunctionalsoisoneofsystematicnucleus,namelyhavingthewallscrollsparetoinquireaboutandinquiresaboutwithmanyconditionsinthesystem,alsohavingaccuratelythequerytoinquireaboutwithbluring,notonlythereistheconditionqueryofstaticstateinthesystem,alsohavingtheconditionqueryoftrendsformations,hispurposeallisusingforconvenientuser.Thesystemhascompleteusertoadd,deletesandtheciphermodificationfunction,andhasthereportformandprintsthefunction.TheAccess2000thatthesystemadoptedamongMicrosoftOfficecomesthedesigndatawarehouse,andusebeforeonezorchdevelopmenttool-VB6.0,ithasthemostnimbledatabasestructure,andtheapplicationhasthegoodsupporttothedatawarehouses.Thedevelopmentbackgroundofthisthesubject,courseoffunctionandthedevelopmentthatwillbeaccomplishedwerechieflyintroducedtothesis.Theemphaticexplanationfocalpointofsystemsdesign,designthoughtanddifficultpointtechnologyandsettlementscheme.Thekeyword:thedatabase,SQL'slanguage,vb6.0,'sdatabasepackage,theWarehousemanagement.關(guān)鍵字:控件、窗體、數(shù)據(jù)庫(kù),visualbasic語言,藥店,藥品系統(tǒng)概況1、課題名稱《藥品采購(gòu)管理系統(tǒng)》2、開發(fā)工具VisualBasic6.03、運(yùn)行環(huán)境(1)、硬件環(huán)境CPU賽揚(yáng)1.2,內(nèi)存64Mb以上,硬盤3G以上,(2)、軟件環(huán)境各種操作系統(tǒng),如:windows98/windowsxp/windos2000。第一章、需求分析1.1開發(fā)工具選擇本軟件使用MicrosoftVisualBasic6.0進(jìn)行編寫。數(shù)據(jù)庫(kù)技術(shù)的產(chǎn)生與發(fā)展源于對(duì)于數(shù)據(jù)的組織和管理。數(shù)據(jù)庫(kù)技術(shù)是數(shù)據(jù)管理的技術(shù),它隨著數(shù)據(jù)管理任務(wù)的需要而產(chǎn)生于20世紀(jì)60年代中期。這是一門綜合性技術(shù),涉及操作系統(tǒng),數(shù)據(jù)結(jié)構(gòu),算法設(shè)計(jì)和程序設(shè)計(jì)等知識(shí)。數(shù)據(jù)庫(kù)技術(shù)的基本思想是對(duì)數(shù)據(jù)實(shí)行集中,統(tǒng)一,獨(dú)立的管理,用戶可以最大限度的共享數(shù)據(jù)資源。數(shù)據(jù)庫(kù)系統(tǒng)實(shí)際上是一個(gè)應(yīng)用系統(tǒng),它是在計(jì)算機(jī)硬,軟件系統(tǒng)支持下,由用戶,數(shù)據(jù)庫(kù)管理系統(tǒng),存儲(chǔ)在存儲(chǔ)設(shè)備上的數(shù)據(jù)和數(shù)據(jù)庫(kù)應(yīng)用程序構(gòu)成的數(shù)據(jù)處理系統(tǒng)。數(shù)據(jù)庫(kù)系統(tǒng)是由數(shù)據(jù),數(shù)據(jù)庫(kù)管理系統(tǒng),應(yīng)用程序,用戶組成。數(shù)據(jù)庫(kù)的特點(diǎn):1.實(shí)現(xiàn)數(shù)據(jù)共享2.實(shí)現(xiàn)數(shù)據(jù)獨(dú)立3.減少了數(shù)據(jù)冗余度4.避免了數(shù)據(jù)不一致性5.加強(qiáng)了對(duì)數(shù)據(jù)的保護(hù)。數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)(DATABASEAPPLICATIONSYSTEMSDBAS)管理信息系統(tǒng)開放式信息服務(wù)系統(tǒng)一個(gè)數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)通常是由數(shù)據(jù)庫(kù)和應(yīng)用程序兩部分組成,它們是在數(shù)據(jù)庫(kù)管理系統(tǒng)支持下設(shè)計(jì)和開發(fā)出來的。1.2業(yè)務(wù)流程分析隨著醫(yī)療制度改革的進(jìn)行,藥品招標(biāo)采購(gòu)的逐年規(guī)范和擴(kuò)大,藥品管理已經(jīng)成為藥劑科乃至整個(gè)醫(yī)院管理的重要內(nèi)容。傳統(tǒng)的管理模式已經(jīng)跟不上顧客對(duì)快節(jié)奏生活的要求了!隨著計(jì)算機(jī)的普及和計(jì)算機(jī)軟件的不斷發(fā)展,越來越多的醫(yī)療機(jī)構(gòu)開始注視計(jì)算機(jī)這個(gè)輔助工具為自己帶來的效益了。醫(yī)院的售藥機(jī)構(gòu)需要通過計(jì)算機(jī)提高自已工作效率、建立與病人之間的友好關(guān)系,提升自己的知名度,提高經(jīng)濟(jì)效益。本次畢業(yè)設(shè)計(jì)所要完成的藥品管理系統(tǒng)是太原第二熱電廠職工醫(yī)院藥品管理系統(tǒng)標(biāo)準(zhǔn)案例,旨在幫助該醫(yī)院在藥品管理乃至整個(gè)醫(yī)院的信息化登上一個(gè)新的臺(tái)階。系統(tǒng)詳細(xì)業(yè)務(wù)流程分析圖為:庫(kù)存帳庫(kù)存帳記錄賬目用料審核已批準(zhǔn)預(yù)料單生成報(bào)表計(jì)算預(yù)料預(yù)料通知倉(cāng)儲(chǔ)部確認(rèn)庫(kù)存不足補(bǔ)貨單確認(rèn)物量提貨通知供貨單位催貨單生成催貨單生成補(bǔ)貨單采購(gòu)部生成入庫(kù)單入庫(kù)單缺貨通知單倉(cāng)儲(chǔ)部部長(zhǎng)預(yù)料單庫(kù)存報(bào)表車間有關(guān)部門未批準(zhǔn)預(yù)料單第二章系統(tǒng)實(shí)現(xiàn)的理論基礎(chǔ)2.1、VISUALBASIC6.0簡(jiǎn)介VisualBasic作為當(dāng)今社會(huì)功能強(qiáng)大的可視化開發(fā)工具具有以下幾大特點(diǎn):(1)成功的簡(jiǎn)化了界面的設(shè)計(jì)過程。它在Windows平臺(tái)上提供了圖形用戶界面(GUI)的集成開發(fā)環(huán)境(IDE)。在集成開發(fā)環(huán)境中,你可以選擇想要顯示的工具欄,將按鈕添加并移動(dòng)到工具欄中,在不固定的或固定的工具欄中以及SDI或MDI界面中進(jìn)行選擇,VisualBasic的IDE就像飛機(jī)的坐艙,完成你工作所需的所有量表和儀器都已經(jīng)配備好了。采用簡(jiǎn)單易學(xué)的Basic語言,它既適用于沒有任何編程經(jīng)驗(yàn)的開發(fā)者學(xué)習(xí),也適合于開發(fā)各種復(fù)雜的底層應(yīng)用程序,使用Basic語言編寫的應(yīng)用程序簡(jiǎn)潔靈巧易于維護(hù),可以說它是一種“天生結(jié)構(gòu)化”的語言。(2)提供了多種向?qū)А@眠@些向?qū)?,可以快速地完成一般性的任?wù),例如生成其控件不綁定到數(shù)據(jù)控件上的純代碼窗體,建立查詢,添加工具,制作圖表,以及發(fā)布創(chuàng)建的應(yīng)用程序等,這樣可以大大加快應(yīng)用程序的開發(fā)過程。(3)具有強(qiáng)大的數(shù)據(jù)和字符串處理功能。VisualBasic還是一種易于擴(kuò)充功能的開發(fā)系統(tǒng)。一方面,它可以使用第三方廠家提供的各種VisualBasic使用的控件;另一方面,開發(fā)者也可以使用其他編程語言編寫自己所需的控件,因此它是一種可以不斷擴(kuò)充功能的開發(fā)系統(tǒng)。(4)提供了IntelliSense技術(shù)。當(dāng)你在VisualBasic的代碼窗口敲進(jìn)對(duì)象名稱的時(shí)候,IntelliSense技術(shù)會(huì)自動(dòng)向你顯示一些相關(guān)的信息,例如對(duì)象的屬性和方法等。當(dāng)一種方法或函數(shù)的參數(shù)被輸入時(shí),IntelliSense有助于確保開發(fā)者們?yōu)閂isualBasic提供正確的變量以及幫助用戶自己編寫正確的函數(shù)。IntelliSense也有助于提高開發(fā)者們的開發(fā)能力,因?yàn)樗麄兇藭r(shí)不必再記憶那些復(fù)雜的對(duì)象屬性及函數(shù)參數(shù)了。2.2ACCESS數(shù)據(jù)庫(kù)介紹MicrosoftAccess是微軟公司開發(fā)的第一個(gè)面向Windows平臺(tái)的桌面數(shù)據(jù)庫(kù)管理系統(tǒng),它充分利用了Windows平臺(tái)的優(yōu)越性,如圖形界面和Windows的事件驅(qū)動(dòng)機(jī)制等。作為Microsoft的office套件產(chǎn)品之一,access已經(jīng)賣出了近700萬份,成為世界上最流行的桌面數(shù)據(jù)庫(kù)系統(tǒng)。Access與許多優(yōu)秀的關(guān)系數(shù)據(jù)庫(kù)一樣,可以讓你很容易地連接相關(guān)的信息而且還對(duì)其他的數(shù)據(jù)庫(kù)系統(tǒng)有所補(bǔ)充。它能操作其它來源的資料,包括許多流行的PC數(shù)據(jù)庫(kù)程序(如dBASE,Paradox,MicrosoftFoxPro)和服務(wù)器、小型積極大型機(jī)上的許多SQL數(shù)據(jù)庫(kù)。Access還完全支持Microsoft的OLE技術(shù)。Access還提供windows操作系統(tǒng)的高級(jí)應(yīng)用程序開發(fā)系統(tǒng)。Access與其它數(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ā)的程序差。2.3ADO技術(shù)ActiveDataObjects(ADO)微軟最新的數(shù)據(jù)庫(kù)訪問技術(shù),它被設(shè)計(jì)用來同新的數(shù)據(jù)訪問層OLEDBProvider一起協(xié)同工作,以提高通用數(shù)據(jù)訪問(UniversalDataAccess).OLEDB是一個(gè)低層的數(shù)據(jù)訪問接口,用它可以訪問各種數(shù)據(jù)源,包括傳統(tǒng)的關(guān)系型數(shù)據(jù)庫(kù),以及電子郵件系統(tǒng)及自定義的商業(yè)對(duì)象。ADO向我們提供了一個(gè)熟悉的,高層的對(duì)OLEDB的Automation的封裝接口。對(duì)那些熟悉RAO的程序員來說,可以把OLEDB比作是ODBC驅(qū)動(dòng)程序。如同RAO對(duì)象是ODBC驅(qū)動(dòng)程序接口一樣,不同的數(shù)據(jù)源要求它們自己的OLEDB提供者(OLEDBProvider)。ADO最重要的三個(gè)對(duì)象是:Connection,Command,Recordset。(1)Connection對(duì)象

Connection對(duì)象用于建立與數(shù)據(jù)庫(kù)的連接。通過連接可從應(yīng)用程序訪問數(shù)據(jù)源。它保存諸如指針類型,連接字符串,查詢超時(shí),連接超時(shí)和缺省數(shù)據(jù)庫(kù)這樣的連接信息。(2)Command對(duì)象

在建立Connection后,可以發(fā)出命令操作數(shù)據(jù)源。一般情況下,Command對(duì)象可以在數(shù)據(jù)庫(kù)中添加,刪除或更新數(shù)據(jù),或者在表中進(jìn)行數(shù)據(jù)查詢。Command對(duì)象在定義查詢參數(shù)或執(zhí)行一個(gè)有輸出參數(shù)的存儲(chǔ)過程時(shí)非常有用。(3)Recordset對(duì)象

Recordset對(duì)象只代表一個(gè)記錄集,這個(gè)記錄集是一個(gè)連接的數(shù)據(jù)庫(kù)中的表,或者是Command對(duì)象的執(zhí)行結(jié)果返回的記錄集。在ADO對(duì)象模型中,是在行中檢查和修改數(shù)據(jù)的最主要的方法,所有對(duì)數(shù)據(jù)的操作幾乎都是在Recordset對(duì)象中完成的。Record對(duì)象用于指定行,移動(dòng)行、添加、更改、刪除記錄。2.4SQL語言SQL語言是一種介于關(guān)系代數(shù)與關(guān)系演算之間的結(jié)構(gòu)化查詢語言,其功能不僅僅是查詢。SQL是一個(gè)通用的、功能極強(qiáng)的關(guān)系數(shù)據(jù)庫(kù)語言。SQL語言之所以能夠?yàn)橛脩艉蜆I(yè)界所接受,并成為國(guó)際標(biāo)準(zhǔn),是因?yàn)樗且粋€(gè)綜合的、功能極強(qiáng)同時(shí)有簡(jiǎn)單易學(xué)的語言。SQL語言集數(shù)據(jù)查詢(DataQuery)、數(shù)據(jù)操縱(DataManipulation)、數(shù)據(jù)定義(DataDefinition)和數(shù)據(jù)控制(DataControl)功能于一體,主要特點(diǎn)包括:綜合統(tǒng)一數(shù)據(jù)庫(kù)系統(tǒng)的主要功能是通過數(shù)據(jù)庫(kù)支持的數(shù)據(jù)語言來實(shí)現(xiàn)的。SQL語言集數(shù)據(jù)定義語言DDL、數(shù)據(jù)操縱語言DML、數(shù)據(jù)控制語言DCL的功能于一體,語言風(fēng)格統(tǒng)一,可以獨(dú)立完成數(shù)據(jù)庫(kù)生命周期中的全部活動(dòng),包括定義關(guān)系模式、建立數(shù)據(jù)庫(kù)、插入數(shù)據(jù)、查詢、更新、維護(hù)、數(shù)據(jù)庫(kù)重構(gòu)、數(shù)據(jù)庫(kù)安全性控制等一系列操作要求,這就為數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)的開發(fā)提供了良好的環(huán)境。用戶在數(shù)據(jù)庫(kù)系統(tǒng)投入運(yùn)行后,還可根據(jù)需要隨時(shí)地逐步地修改模式,且并不影響數(shù)據(jù)庫(kù)的運(yùn)行,從而是系統(tǒng)具有良好的可擴(kuò)展性。(2)高度非過程化非關(guān)系數(shù)據(jù)模型的數(shù)據(jù)操縱語言是面向過程的語言,用其完成某項(xiàng)請(qǐng)求,必須指定存取路徑。而用SQL語言進(jìn)行數(shù)據(jù)操作,只要提出“做什么”,而無須指明“怎么做”,因此無須了解存取路徑,存取路徑的選擇以及SQL語句的操作過程由系統(tǒng)自動(dòng)完成。這不但大大減輕了用戶負(fù)擔(dān),而且有利于提高數(shù)據(jù)獨(dú)立性。(3)面向集合的操作方式非關(guān)系數(shù)據(jù)模型采用的是面向記錄的操作方式,操作對(duì)象是一記錄。例如查詢所有平均成績(jī)?cè)?0分以上的學(xué)生姓名,用戶必須一條一條地把滿足條件的學(xué)生記錄找出來(通常要說明具體處理過程,即按照哪條路徑,如何循環(huán)等)。而SQL語言采用集合操作方式,不僅操作對(duì)象、查找結(jié)果可以是元組的集合,而且一次插入、刪除、更新操作的對(duì)象也可以是元組的集合。(4)以同一種語法結(jié)構(gòu)提出兩種使用方式SQL語言既是自含試語言,又是嵌入式語言。作為自含式語言,它能夠獨(dú)立地用于聯(lián)機(jī)交互的使用方式,用戶可以在終端鍵盤上直接鍵入SQL命令對(duì)數(shù)據(jù)庫(kù)進(jìn)行操作;作為嵌入式語言,SQL語言能夠嵌入到高級(jí)語言(例如C、COBOL、FORTRAN)程序中,供程序員設(shè)計(jì)程序時(shí)使用。而在兩中不同的使用方式下,SQL語言的語法結(jié)構(gòu)基本上是一致的。這種以統(tǒng)一的語法結(jié)構(gòu)提供兩種不同的使用方式的做法,提供了極大的靈活性與方便性。(5)語言簡(jiǎn)捷,易學(xué)易用SQL語言功能極強(qiáng),但由于設(shè)計(jì)巧妙,語言十分簡(jiǎn)捷,完成核心功能只使用了9個(gè)動(dòng)詞:數(shù)據(jù)查詢(SELECT)、數(shù)據(jù)定義(CREATE,DROP,ALTER)、數(shù)據(jù)操作(INSERT,UPDATE,DELETE)和數(shù)據(jù)控制(GRANT,REVOKE)。SQL語言接近英語口語,因此容易學(xué)習(xí),容易使用。第三章、系統(tǒng)設(shè)計(jì)3.1系統(tǒng)功能分析1)基本信息的維護(hù)藥品類型的建立與維護(hù),包括藥品類型的新建、修改和刪除等。藥品基本信息管理:包括藥品基本信息的新建、修改和刪除等。供貨商信息管理:包括供貨商信息的新建、修改和刪除等。管理員信息管理:系統(tǒng)管理員的添加、刪除和修改密碼等。2)進(jìn)貨管理藥品進(jìn)貨信息管理:藥品進(jìn)貨信息包括藥品進(jìn)貨數(shù)量、單價(jià)、供貨商等。藥品進(jìn)貨管理功能完成進(jìn)貨信息登記、修改和刪除等。分類查看:可以根據(jù)藥品類型來查看某種藥品的進(jìn)貨情況。更新庫(kù)存:進(jìn)貨信息的變動(dòng)直接關(guān)系到庫(kù)存的變化。進(jìn)貨分析:列出當(dāng)前進(jìn)貨量最多的前幾項(xiàng)藥品和進(jìn)貨量最少的前幾項(xiàng)藥品。庫(kù)存分析:列出當(dāng)前庫(kù)存量最多的前幾項(xiàng)藥品和庫(kù)存量最少的前幾項(xiàng)藥品。3)采購(gòu)管理藥品采購(gòu)信息管理:藥品采購(gòu)信息包括藥品采購(gòu)數(shù)量、單價(jià)、統(tǒng)計(jì)日期等。藥品采購(gòu)管理功能完成采購(gòu)信息登記、修改和刪除等。分類查看:可以根據(jù)藥品類型來查看某種藥品的采購(gòu)情況。更新庫(kù)存:采購(gòu)信息的變動(dòng)直接關(guān)系到庫(kù)存的變化。采購(gòu)分析:列出當(dāng)前采購(gòu)量最多的前幾項(xiàng)藥品和采購(gòu)量最少的前幾項(xiàng)藥品。4)報(bào)損管理藥品報(bào)損信息管理:藥品報(bào)損信息包括藥品報(bào)損數(shù)量、報(bào)損原因等。藥品報(bào)損管理功能完成報(bào)損信息登記、修改和刪除等。分類查看:可以根據(jù)藥品類型來查看某種藥品的報(bào)損情況。更新庫(kù)存:報(bào)損信息的變動(dòng)同樣直接關(guān)系到庫(kù)存的變化。報(bào)損分析:列出當(dāng)前報(bào)損量最多的前幾項(xiàng)藥品和報(bào)損量最少的前幾項(xiàng)藥品。3.2、總體方案設(shè)計(jì)圖主窗體主窗體系統(tǒng)登入退出登入成功失敗藥品類型管理藥品管理藥品進(jìn)貨管理藥品采購(gòu)管理藥品報(bào)損管理供貨商管理添加藥品類型修改藥品類型刪除藥品類型添加藥品刪除藥品登記進(jìn)貨藥品刪除進(jìn)貨藥品登記采購(gòu)藥品修改進(jìn)貨藥品登記報(bào)損藥品修改報(bào)損藥品修改采購(gòu)藥品添加供貨商刪除供貨商刪除報(bào)損藥品刪除采購(gòu)藥品修改供貨商修改藥品3.3、系統(tǒng)性能分析1)多層結(jié)構(gòu)設(shè)計(jì)嚴(yán)格意義上的三層結(jié)構(gòu)設(shè)計(jì),其程序邏輯結(jié)構(gòu)分為用戶界面層、業(yè)務(wù)邏輯處理層和數(shù)據(jù)存儲(chǔ)層。本系統(tǒng)采用的上有三層結(jié)構(gòu)進(jìn)一步擴(kuò)展而成的多層結(jié)構(gòu)。2)面向?qū)ο笤O(shè)計(jì)在系統(tǒng)中將藥品類型、藥品等都封裝成相應(yīng)的類,同時(shí)每個(gè)類都有自己對(duì)應(yīng)的集合類和操作類,從而再次提高了對(duì)數(shù)據(jù)庫(kù)操作的安全性和程序的可擴(kuò)展性。3)指導(dǎo)經(jīng)營(yíng)的功能進(jìn)銷存管理系統(tǒng)并不僅僅能代替?zhèn)鹘y(tǒng)的書面操作,更重要的是它提供了信息分析的功能,只要單擊一個(gè)按鈕就可以查到目前采購(gòu)最好的藥品或是庫(kù)存最多的藥品,從而起到指導(dǎo)經(jīng)營(yíng)的作用。3.4、系統(tǒng)功能模塊設(shè)計(jì)按結(jié)構(gòu)化程序設(shè)計(jì)思想,分析得出如下系統(tǒng)功能模塊圖:藥品采購(gòu)管理系統(tǒng)藥品采購(gòu)管理系統(tǒng)藥品類型管理系統(tǒng)藥品管理模塊供貨商管理模塊藥品進(jìn)貨管理模塊藥品采購(gòu)管理模塊采購(gòu)分析模塊用戶管理模塊操作員登入模塊添加藥品類型修改藥品類型刪除藥品類型添加藥品信息 修改藥品信息刪除藥品信息登記進(jìn)貨信息修改進(jìn)貨信息刪除進(jìn)貨信息添加供貨商修改供貨商刪除供貨商登記采購(gòu)表修改采購(gòu)記錄刪除采購(gòu)信息藥品報(bào)損管理模塊登記報(bào)損信息修改報(bào)損記錄刪除報(bào)損記錄系統(tǒng)功能模塊圖第四章.?dāng)?shù)據(jù)庫(kù)設(shè)計(jì)4.1、數(shù)據(jù)庫(kù)需求分析1)針對(duì)藥品采購(gòu)管理系統(tǒng),分別對(duì)采購(gòu)部門、采購(gòu)部門和庫(kù)存保管部門進(jìn)行詳細(xì)的調(diào)研和分析,總結(jié)出如下的需求信息:藥品按類管理,所以需要有一藥品類型信息。藥品必須屬于一個(gè)藥品類型。如果一個(gè)藥品類型存在藥品,或存在下級(jí)藥品類型,則該類型不可刪除。需要記錄供應(yīng)藥品信息。在涉及藥品數(shù)量的地方,要給出相應(yīng)的單位。藥品采購(gòu)信息單中要包含登記藥品采購(gòu)數(shù)量、單價(jià)等信息。在進(jìn)貨信息中要包含藥品供應(yīng)商等信息。藥品報(bào)損要有報(bào)損原因。進(jìn)貨、采購(gòu)、報(bào)損操作要有相應(yīng)操作員信息。只有管理員登錄之后才可以使用系統(tǒng)。默認(rèn)的管理員不可以刪除。進(jìn)貨、采購(gòu)、庫(kù)存、報(bào)損信息都要可以添加、修改、刪除、分類查找。當(dāng)進(jìn)行進(jìn)貨、采購(gòu)和報(bào)損操作后,能相應(yīng)更新庫(kù)存。需要對(duì)進(jìn)貨、采購(gòu)、庫(kù)存、報(bào)損進(jìn)行分析,總結(jié)熱門藥品。2)經(jīng)上述系統(tǒng)功能分析和需求總結(jié),考慮到將來功能的擴(kuò)展,設(shè)計(jì)如下的數(shù)據(jù)項(xiàng)和數(shù)據(jù)結(jié)構(gòu):藥品類型信息,包括數(shù)據(jù)項(xiàng)有:藥品類型編號(hào)、藥品類型名稱等。藥品信息,包括的數(shù)據(jù)項(xiàng)有:藥品編號(hào)、藥品名稱、藥品介紹、庫(kù)存量等。藥品單位信息,包括單位編號(hào)、單位名稱等。供應(yīng)商信息,包括供應(yīng)商名稱、介紹等。進(jìn)貨信息,包括進(jìn)貨藥品、數(shù)量、單位、單價(jià)、進(jìn)貨時(shí)間經(jīng)手人等。采購(gòu)信息,包括采購(gòu)藥品、數(shù)量、單位、單價(jià)、登記時(shí)間等。報(bào)損信息,包括報(bào)損藥品、數(shù)量、單位、原因、登記時(shí)間等。管理員信息,包括管理員賬號(hào)、密碼、是否是默認(rèn)賬號(hào)等。4.2、E-R圖設(shè)計(jì)本系統(tǒng)根據(jù)以上的設(shè)計(jì)規(guī)劃出的實(shí)體有:藥品類型信息實(shí)體、藥品信息實(shí)體、藥品單位信息實(shí)體、供應(yīng)商信息實(shí)體、進(jìn)貨信息實(shí)體、采購(gòu)信息實(shí)體、報(bào)損信息實(shí)體和管理員信息實(shí)體。各個(gè)實(shí)體具體的描述E-R圖如下藥品類型信息實(shí)體E-R圖藥品類型藥品類型號(hào)藥品類型藥品類型號(hào)藥品類型名備注藥品信息實(shí)體E-R圖藥品藥品藥品名稱藥品編號(hào)藥品類型ID庫(kù)存量單位信息實(shí)體E-R圖單位單位單位編號(hào)單位名稱供應(yīng)商信息實(shí)體E-R圖供貨商供貨商供貨商名稱供貨商介紹備注供貨商編號(hào)進(jìn)貨信息實(shí)體E-R圖進(jìn)貨信息進(jìn)貨信息供應(yīng)商ID藥品ID進(jìn)貨單價(jià)進(jìn)貨時(shí)間采購(gòu)信息實(shí)體E-R圖采購(gòu)信息采購(gòu)信息藥品編號(hào)登記日期采購(gòu)數(shù)量賣出單價(jià)報(bào)損信息實(shí)體E-R圖報(bào)損信息報(bào)損信息藥品編號(hào)登記日期報(bào)損數(shù)量報(bào)損原因管理員信息實(shí)體E-R圖管理員管理員是否默認(rèn)用戶用戶名密碼4.3、數(shù)據(jù)庫(kù)邏輯結(jié)構(gòu)設(shè)計(jì)首先將藥品采購(gòu)管理信息系統(tǒng)的數(shù)據(jù)庫(kù)概念結(jié)構(gòu)轉(zhuǎn)化為Access數(shù)據(jù)庫(kù)或SQLServer2000數(shù)據(jù)庫(kù)系統(tǒng)所支持的實(shí)際數(shù)據(jù)模型,即:數(shù)據(jù)庫(kù)的邏輯結(jié)構(gòu)。其各個(gè)表格的設(shè)計(jì)結(jié)果如下數(shù)據(jù)表:藥品類型信息表(MerchandiseType)列名數(shù)據(jù)類型字段大小必填字段默認(rèn)值說明MT_ID_N自動(dòng)編號(hào)長(zhǎng)整型是藥品類型號(hào),遞增,主鍵MT_Name_S文本15是藥品類型名MT_RemarkR備注是“”備注數(shù)據(jù)表:藥品信息表(Merchandise)列名數(shù)據(jù)類型字段大小必填字段默認(rèn)值說明M_Id_N自動(dòng)編號(hào)長(zhǎng)整型是藥品編號(hào),遞增,主鍵M_Name_S文本80是藥品名稱M_Introduce_S文本255是藥品介紹M_TypeId_N數(shù)字長(zhǎng)整型是1藥品類型IDM_Storage_N數(shù)字長(zhǎng)整型是0庫(kù)存量M_UnitId_N數(shù)字長(zhǎng)整型是1單位編號(hào)M_Remark_R備注是“”備注數(shù)據(jù)表:藥品單位信息表(Unit)列名數(shù)據(jù)類型字段大小必填字段默認(rèn)值說明U_ID_N自動(dòng)編號(hào)長(zhǎng)整型是單位編號(hào),遞增,主健U_NAME_S文本10是單位名稱數(shù)據(jù)表:供應(yīng)商信息表(Provider)列名數(shù)據(jù)類型字段大小必填字段默認(rèn)值說明P_Id_N自動(dòng)編號(hào)長(zhǎng)整型是供貨商編號(hào),主健P_Name_S文本50是供貨商名稱P_Introduce_S文本255是“”供貨商簡(jiǎn)介P_Remark_R備注是“”備注數(shù)據(jù)表:進(jìn)貨信息表(Buy)列名數(shù)據(jù)類型字段大小必填字段默認(rèn)值說明B_ID_N自動(dòng)編號(hào)長(zhǎng)整型是進(jìn)貨ID,遞增,主健B_ProviderId_N文本長(zhǎng)整型是供應(yīng)商IDB_MerchandiseId_N數(shù)學(xué)長(zhǎng)整型是藥品IDB_StockDate_D日期短日期是Dare()進(jìn)貨時(shí)間B_Deliver_S文本20是送貨人姓名B_Consignee_S文本20是經(jīng)手人姓名B_Count_N數(shù)字長(zhǎng)整型是0購(gòu)入量B_StockPrice_N數(shù)字單精度型是0進(jìn)貨單價(jià)B_OperatorId_S文本20是操作員IDB_Remark_R備注是“”備注數(shù)據(jù)表:采購(gòu)信息表(Sell)列名數(shù)據(jù)類型字段大小必填字段默認(rèn)值說明S_ID_N自動(dòng)編號(hào)長(zhǎng)整型是采購(gòu)編號(hào),遞增,主鍵S_MerchandiseID_D數(shù)字長(zhǎng)整型是藥品IDS_RegDate_D日期短日期是Date()登記日期S_Count_N數(shù)字長(zhǎng)整型是0售出數(shù)量S_SellPrice_N數(shù)字單精度型是0賣出單價(jià)S_OperatorId_S文本20是“”操作員IDS_Remark_R備注是“”備注數(shù)據(jù)表:報(bào)損信息表(Dispose)列名數(shù)據(jù)類型字段大小必填字段默認(rèn)值說明D_ID_N自動(dòng)編號(hào)長(zhǎng)整型是報(bào)損編號(hào),遞增,主鍵D_MerchandiseID_N數(shù)字長(zhǎng)整型是藥品IDD_RegDate_D日期短日期是Date()登記日期D_Count_N數(shù)字長(zhǎng)整型是0報(bào)損數(shù)量D_Reason_S文本255是“”報(bào)損原因D_Operatorld_S文本20是操作員IDD_Remark_R備注是“”備注數(shù)據(jù)表:管理員信息實(shí)體(Admins)列名數(shù)據(jù)類型字段大小必填字段默認(rèn)值說明A_Account_S文本20是賬號(hào),主鍵A_Pwd_S文本20是密碼A_IsDefault_B是/否是False是否是默認(rèn)用戶4.4、創(chuàng)建應(yīng)用程序結(jié)構(gòu)1)創(chuàng)建用戶界面端程序VB中選擇文件-新建工程,打開,選擇VB應(yīng)用程序向?qū)?。設(shè)置后將向?qū)傻哪K命名mdlMain保存與文件夾Merchandise中。2)創(chuàng)建業(yè)務(wù)邏輯處理組件新建ActiveXDLL工程-設(shè)置工程屬性-加入對(duì)ADO的引用。3)創(chuàng)建基本界面組件新建ActiveXDLL工程-設(shè)置工程屬性-加入對(duì)業(yè)務(wù)邏輯組件的引用。4)在界面端程序中使用組件在工程資源管理器中選中工程Merchandise,選擇菜單工程-引用命令。打開引用對(duì)話框,在可用的引用列表中選擇BuySellStorageUI和BuySellStorageDB。第五章.模塊軟件設(shè)計(jì)5.1、開發(fā)業(yè)務(wù)邏輯處理組件進(jìn)銷存業(yè)務(wù)處理組件用來處理進(jìn)銷存管理系統(tǒng)中的業(yè)務(wù)邏輯,既負(fù)責(zé)與界面進(jìn)行數(shù)據(jù)傳遞,同時(shí)也要將界面端的請(qǐng)求應(yīng)用業(yè)務(wù)邏輯之后對(duì)數(shù)據(jù)庫(kù)進(jìn)行操作。它包含以下功能:藥品類型信息管理,對(duì)應(yīng)clsMType類和clsMTypes類。藥品信息管理,對(duì)應(yīng)clsMerchandise類和clsMerchandises類。供應(yīng)商信息管理,對(duì)應(yīng)ClsProvider類和ClsProviders類。進(jìn)貨信息管理,對(duì)應(yīng)clsBuy類和clsBuys類。采購(gòu)信息管理,對(duì)應(yīng)clsSell類和clsSells類。報(bào)損信息管理,對(duì)應(yīng)clsDispose類和clsDisposes類。管理員信息管理,對(duì)應(yīng)clsAdmini類和clsAdminis類。1、信息管理類加集合類的設(shè)計(jì)思想在本組件中,每一個(gè)模塊的設(shè)計(jì)都是由這個(gè)模塊的信息管理類加與之對(duì)應(yīng)的集合類求實(shí)現(xiàn)的。具體完成的功能如下:在信息管理類:實(shí)現(xiàn)與單個(gè)信息相關(guān)的操作,包括添加、修改和刪除。在信息管理集合類:實(shí)現(xiàn)與多個(gè)信息先觀的操作,主要是根據(jù)不用的條件查找。因此,每個(gè)模塊在設(shè)計(jì)上都是獨(dú)立的,除非它在邏輯上有不可分割的關(guān)系,如進(jìn)貨信息的操作,與藥品庫(kù)存直接掛鉤,將進(jìn)貨信息表的操作與藥品表的操作放入到一個(gè)事務(wù)中,這樣來確保數(shù)據(jù)的安全性與一致性。5.2、創(chuàng)建組件的通用模塊這里需要給組件添加兩個(gè)通用模塊,他們分別是:自定義枚舉類clsPunliv:主要功能是保存一些自定義枚舉類型。公共模塊mdlMain:組件初始化的函數(shù)和數(shù)據(jù)庫(kù)操作的常用函數(shù)與過程。自定義枚舉類我們已經(jīng)將新建工程時(shí)自動(dòng)生成的類名稱設(shè)為clsPublic,此類沒有其他具體的意義,主要功能是保存一些自定義枚舉類型,,這些枚舉類型在以后其他各類中要經(jīng)常用到,所以這里首先介紹。組件的公共模塊在工程中添加一個(gè)模塊,命名為mdlMain,此模塊有兩個(gè)功能:用來連接數(shù)據(jù)庫(kù)及相關(guān)的初始化操作。存放在對(duì)數(shù)據(jù)庫(kù)的操作過程中可能用到的一些公共函數(shù)。添加全局變量SubMain()過程——組件啟動(dòng)入口手動(dòng)加入SubMain()過程,這個(gè)就是剛才在“工程屬性”中指定的啟動(dòng)對(duì)象。這個(gè)過程完成ActiveXDLL的初始化工作。在這個(gè)過程中假如對(duì)g_DBPath的默認(rèn)設(shè)置,并打開數(shù)據(jù)庫(kù)連接。在SubMain中的ConnectToDatabase函數(shù),功能是用來連接到數(shù)據(jù)庫(kù)。ConnectToDatabase函數(shù)——與數(shù)據(jù)庫(kù)建立連接功能:根據(jù)傳入?yún)?shù)是DBAccess還是DBSQLSever來決定連接到Access數(shù)據(jù)庫(kù)還是SPLSever數(shù)據(jù)庫(kù)。參數(shù)設(shè)計(jì):gxDBType類型,參見clsPublic類中的枚舉定義。返回值:Boolean類型,True表示成功,F(xiàn)alse表示失敗。RealString——替換字符串的單引號(hào)MaxID——獲取編號(hào)的最大值MaxID函數(shù)用來獲取表中當(dāng)前主健的最大值,這個(gè)函數(shù)用于在數(shù)據(jù)庫(kù)中添加新記錄后,立即獲取剛才添加記錄的主健值。3)創(chuàng)建模塊類(1)設(shè)計(jì)、總結(jié)公共屬性和方法單個(gè)模型的信息管理類有以下共同的屬性和方法:屬性ID方法AddNew()方法Update()方法Delete(lngIDAsLong)方法DeleteEx()多個(gè)模型的集合類有以下共同的屬性和方法:方法AddEx方法Clear方法Find(2)創(chuàng)建模板類下面,首先利用類生成器創(chuàng)建一個(gè)類clsDBbase,作為模板類,向其中添加一個(gè)屬性,名稱為ID,類型為L(zhǎng)ong,聲明為L(zhǎng)et/Get,然后,如下表所示。名稱參數(shù)返回值說明AddNew無gxcAddNew添加數(shù)據(jù)Update無gxcUpdate更新數(shù)據(jù)DeletegxcDelete刪除數(shù)據(jù)DeleteEx無gxcDelete刪除數(shù)據(jù)然后再新建一個(gè)集合類clsDBbase,作為集合類的模板類,集合組成選clsDBbase,如下表所示。名稱參數(shù)返回值說明AddNewObjAsclsDBbase無以對(duì)象為單位添加元素Clear無清空集合FindOptionallngIDAsLong=-1OptionallngTypeIdAsLong=0clsDBbase查找數(shù)據(jù)(3)使用模板類模板類的使用很簡(jiǎn)單,在用類生成器新建類時(shí),只要在“基于”下拉列表框中選擇所需要的模板類即可。5.3、藥品類型信息管理模塊藥品類型信息管理模塊的功能需要由clsMType和clsMTypes兩個(gè)類來實(shí)現(xiàn),它的主要功能是:添加藥品類型信息。修改藥品類型信息。刪除藥品類型信息。查找藥品類型信息。其他與藥品類型相關(guān)的常用操作。1)、藥品類型信息管理類clsMType(1)創(chuàng)建clsMType類并添加屬性藥品類型信息類clsMType用來處理單個(gè)藥品類型的信息,實(shí)現(xiàn)藥品類型操作的基本功能,如添加、修改、刪除等。選擇菜單[工程]—[添加類模塊]命令,打開“添加類模塊”對(duì)話框,選擇“VB類生成器”,使用類生成器向工程中添加clsMType類,基于下拉列表框中選擇clsDBbase。如下表所示。屬性名稱數(shù)據(jù)類型屬性聲明IDLongGet/LetSuperIDLongGet/LetTypeNameStringGet/Let屬性添加完畢并應(yīng)用后,可以看到在clsMType類中已經(jīng)自動(dòng)添加了類的成員變量和屬性。(2)AddNew方法功能:添加耽擱藥品類型。參數(shù)設(shè)計(jì):無。返回值:gxcAddNew類型請(qǐng)參考clsPublic類中g(shù)xcAddNew枚舉類型的定義。(3)Update方法功能:修改藥品類型。返回值:gxcUpdate類型,請(qǐng)參考clsPublic類中g(shù)xcUpdate枚舉類型的定義。(4)Delete方法功能:刪除藥品類型。參數(shù)設(shè)計(jì):可選參數(shù)lngID表示藥品類型ID,默認(rèn)為-1。返回值:gxcDelete類型,請(qǐng)參考clsPublic類中g(shù)xcDelete枚舉類型的定義。2)、藥品類型信息管理集合類clsMTypes藥品類型信息集合類clsMTypes用來處理多個(gè)藥品類型的信息,其最小的單元是clsMType,它完成與一組藥品類型信息相關(guān)的操作,比如查找功能。選擇菜單[工程]—[添加類模塊]命令,打開“添加類模塊”對(duì)話框,選擇“VB類生成器”,使用類生成器在工程中添加一個(gè)集合類,命名為clsMTypes類,在“基于”下拉列表框中選擇clsDBbases,在“集合組成”欄中選擇clsMType類。應(yīng)用設(shè)置后系統(tǒng)會(huì)自動(dòng)生成一個(gè)標(biāo)準(zhǔn)集合類所具有的最基本屬性與方法,另外也加入了clsDBbases中方法的定義。添加AddEx方法(2)添加Find方法功能:根據(jù)給定參數(shù)查找藥品類型,結(jié)果以clsMTypes類型返回。參數(shù)設(shè)計(jì):一個(gè)可選的類型ID,默認(rèn)值為-1。返回值:clsMTypes類型,一個(gè)clsMType的集合。省略參數(shù)時(shí),返回全部藥品類型。5.4、藥品信息管理模塊藥品信息管理模塊的功能需要有clsMerch和clsMerchs兩個(gè)類來實(shí)現(xiàn),它的主要功能是:添加藥品信息修改藥品信息刪除藥品信息查找藥品信息其他與藥品信息相關(guān)的常用操作1)、藥品信息管理類clsMerch(1)創(chuàng)建clsMerch類并添加屬性屬性名稱數(shù)據(jù)類型說明IDLong藥品編號(hào)MerchNameString藥品名稱IntroduceInteger藥品介紹TypeIdgxcSex藥品類型IDStorageLong庫(kù)存量UnitIDString單位編號(hào)RemarkString備注TypeNameString藥品類型名稱AddNew方法功能:添加單個(gè)藥品信息參數(shù)設(shè)計(jì):無。返回值:gxcAddNew類型,參考clsPublic類中g(shù)xcAddNew枚舉類型的定義。Update方法功能:修改藥品信息。參數(shù)設(shè)計(jì):無。返回值:gxcUpdate類型,請(qǐng)參考clsPublic類中g(shù)xcUpdate枚舉類型的定義。(4)Delete方法功能:刪除藥品信息。參數(shù)設(shè)計(jì):可選參數(shù)lngID表示藥品ID,默認(rèn)為-1。返回值:gxcUpdate類型,請(qǐng)參考clsPublic類中g(shù)xcUpdate枚舉類型的定義。藥品信息管理集合類clsMerchs藥品信息集合類clsMerchs用來具體處理多個(gè)藥品的信息,其最小的單元是clsMerch,它完成與一組藥品信息相關(guān)的操作,比如查找等。選擇菜單[工程]—[添加類模塊]命令,打開“添加類模塊”對(duì)話框,選擇“VB類生成器”,使用類生成器在工程中添加一個(gè)集合類,命名為clsMerchs類,在“基于”下拉列表框中選擇clsDBbases,在“集合組成”欄中選擇clsMerch類。應(yīng)用設(shè)置后系統(tǒng)會(huì)自動(dòng)生成一個(gè)標(biāo)準(zhǔn)集合類所具有的最基本屬性與方法,下面,為clsMerchs添加必要的方法。添加AddEx方法添加Find方法功能:根據(jù)給定參數(shù)查找藥品信息,結(jié)果以clsMerchs類型返回。參數(shù)設(shè)計(jì):如下表。返回值:clsMerchs類型,一個(gè)clsMerch的集合。顯然當(dāng)上面兩個(gè)參數(shù)都不指定時(shí),返回全部藥品。Find參數(shù)設(shè)計(jì)參數(shù)名參數(shù)類型功能是否可選及默認(rèn)值說明lngIDLong傳入藥品ID可選,默認(rèn)值=0如果取默認(rèn)值,表示不限制藥品IDlngTypeIdLong傳入藥品類型ID可選,默認(rèn)值=0如果取默認(rèn)值,表示不限制藥品類型添加FindStorage方法功能:按庫(kù)存量排序查找藥品,結(jié)果以clsMerchs類型返回。參數(shù)設(shè)計(jì):參見下表。返回值:clsMerchs類型,一個(gè)clsMerch的集合。FindStorage方法參數(shù)設(shè)計(jì)參數(shù)名參數(shù)類型功能是否可選及默認(rèn)值說明IsDescBoolean表示是否采用降序可選,默認(rèn)值=true無nCountInteger最多顯示多少條記錄可選,默認(rèn)值=10無5.5、供貨商信息管理模塊供貨商信息管理模塊的功能需要由clsProvider和clsProviders兩個(gè)類來實(shí)現(xiàn),它的主要功能是:添加供貨商信息。修改供貨商信息刪除供貨商信息查找供貨商信息其他與供貨商信息相關(guān)的常用操作。供貨商信息管理類clsProvider創(chuàng)建clsProvider類并添加屬性供貨商信息類clsProvider用來具體處理單條供貨商信息,完成供貨商信息的基本操作功能,如添加、修改、刪除等。clsProvider類的屬性設(shè)置屬性名稱數(shù)據(jù)類型說明IDLong供貨商編號(hào)ProviderNameString供貨商名稱IntroduceString供貨商簡(jiǎn)介RemarkString備注(2)AddNew方法功能:添加單個(gè)供貨商信息。參數(shù)設(shè)計(jì):無。返回值:gxcAddNew類型,參考clsPublic類中的gxcAddNew枚舉定義。(3)pdate方法功能:修改供貨商信息。參數(shù)設(shè)計(jì):無。返回值:gxcUpdate類型,參考clsPublic類中的gxUpdate枚舉類型的定義。Delete方法功能:刪除供貨商信息。參數(shù)設(shè)計(jì):可選參數(shù)lngID表示供貨商信息ID,默認(rèn)為-1。返回值:gxcDelete類型,參考clsPublic類中g(shù)xcDelete枚舉類型的定義。在刪除供貨商的同時(shí),必須先刪除與這個(gè)供貨商相關(guān)的進(jìn)貨信息,而且要把這兩個(gè)操作放在一個(gè)事務(wù)里面。供貨商信息管理集合類ClsProviders供貨商信息集合類clsProviders用來處理多條供貨商信息,其最小的單元是clsProvider,它完成與一組供貨商信息相關(guān)的操作,比如查找等。選擇菜單[工程]—[添加類模塊]命令,打開“添加類模塊”對(duì)話框,選擇“VB類生成器”,使用類生成器在工程中添加一個(gè)集合類,命名為clsProviders類,在“集合組成”欄中選擇clsProvider類。應(yīng)用設(shè)置后系統(tǒng)會(huì)自動(dòng)生成一個(gè)標(biāo)準(zhǔn)集合類所具有的最基本屬性與方法,下面,為clsProviders添加必要的方法。添加AddEx方法添加Find方法功能:根據(jù)給定參數(shù)查找供貨商信息,結(jié)果以clsProviders類型返回。參數(shù)設(shè)計(jì):一個(gè)可選的類型ID,默認(rèn)值為-1。返回值:clsProviders類型,一個(gè)clsProvider的集合。省略參數(shù)是,返回全部供貨商。5.6、進(jìn)貨信息管理模塊進(jìn)貨信息管理模塊的功能需要由clsBuy和clsBuys兩個(gè)類實(shí)現(xiàn),它的主要功能是:添加進(jìn)貨信息。修改進(jìn)貨信息。刪除進(jìn)貨信息。查找進(jìn)貨信息。按藥品統(tǒng)計(jì)分析進(jìn)貨信息。其他與進(jìn)貨信息相關(guān)的常用操作。進(jìn)貨信息管理類clsBuy創(chuàng)建clsBuy類并添加屬性屬性名稱數(shù)據(jù)類型說明IDLong進(jìn)貨IDProviderIdString供應(yīng)商IDProviderNameString供應(yīng)商名稱MerchandiseIDLong藥品IDMerchNameString藥品名稱StockDateDate進(jìn)貨時(shí)間DeliverString送貨人姓名ConsigneeString經(jīng)手人姓名CountLong購(gòu)入量StockPriceSingle進(jìn)貨單價(jià)OperatorIdString操作員IDRemarkString備注TypeNameString藥品類型名稱StockTimesLong進(jìn)貨次數(shù)TotalPriceSingle總進(jìn)貨支出AddNew方法功能:添加單條進(jìn)貨信息。參數(shù)設(shè)計(jì):無。返回值:gxcAddNew類型,請(qǐng)參考clsPublic類中的gxcAddNew枚舉定義。Update方法功能:修改進(jìn)貨信息。參數(shù)設(shè)計(jì):無。返回值:gxcUpdate類型,請(qǐng)參考clsPublic類中g(shù)xcUpdate枚舉類型的定義。Delete方法功能:刪除進(jìn)貨信息。參數(shù)設(shè)計(jì):可選參數(shù)lngID表示供貨商信息ID,默認(rèn)值為-1。返回值:gxcDelete類型,請(qǐng)參考clsPublic類中g(shù)xcDelete枚舉類型的定義。進(jìn)貨信息管理集合類clsBuys添加AddEx方法添加Find方法功能:根據(jù)給定參數(shù)查找進(jìn)貨信息,結(jié)果以clsBuys類型返回。參數(shù)設(shè)計(jì):兩個(gè)可選參數(shù),一個(gè)是進(jìn)貨編號(hào),另一個(gè)是藥品類型編號(hào)。返回值:clsBuys類型,一個(gè)clsBuy的集合,省略參數(shù)時(shí),返回全部進(jìn)貨。添加FindStorage方法功能:統(tǒng)計(jì)各種藥品的進(jìn)貨次數(shù)和累計(jì)進(jìn)貨總支出,最后按進(jìn)貨總支出來排序,結(jié)果以clsBuys類型返回,最多返回前nCount條記錄。參數(shù)設(shè)計(jì):參加下表參數(shù)名參數(shù)類型功能是否可選及默認(rèn)值說明IsDescBoolean表示是否采用降序可選,默認(rèn)值=True無nCountInteger最多顯示多少條記錄可選,默認(rèn)值=10無返回值:clsBuys類型,一個(gè)clsBuy的集合。5.7、采購(gòu)信息管理模塊采購(gòu)信息管理模塊的功能需要由clsSell和clsSells兩個(gè)類實(shí)現(xiàn),它的主要功能是:添加采購(gòu)信息。修改采購(gòu)信息。刪除采購(gòu)信息。查找采購(gòu)信息。按藥品統(tǒng)計(jì)分析采購(gòu)信息。其他與采購(gòu)信息相關(guān)的常用操作。采購(gòu)信息類clsSell用來具體處理單條采購(gòu)信息,完成采購(gòu)信息的基本操作功能,如添加、修改、刪除等。選擇菜單[工程]—[添加類模塊]命令,打開“添加類模塊”框,選擇“VB類生成器”,使用類生成器在工程中添加clsSell類,如下表所示。屬性名稱數(shù)據(jù)類型說明IDLong采購(gòu)編號(hào)MerchandiseIDLong藥品IDMerchNameString藥品名稱RegDateDate登記日期CountLong售出數(shù)量SellPriceSingle售出單價(jià)OperatorIdString操作員IDRemarkString備注TypeNameString藥品類型名稱RegTimeLong登記次數(shù)TotalPriceSingle售出總價(jià)clsASell類中的AddNew、Update和Delete方法,與進(jìn)貨信息中的處理很類似,只是數(shù)據(jù)庫(kù)中的字段不同而已。5.8、報(bào)損信息管理模塊報(bào)損信息管理模塊的功能需要由clsDispose和clsDisposes兩個(gè)類來實(shí)現(xiàn),它的主要功能是:添加報(bào)損信息。修改報(bào)損信息。刪除報(bào)損信息。查找報(bào)損信息。按藥品統(tǒng)計(jì)分析報(bào)損信息。其他與報(bào)損信息相關(guān)的常用操作。報(bào)損信息類clsDispose用來具體處理單條報(bào)損信息,完成報(bào)損信息的基本操作功能,如添加、修改、刪除等。選擇菜單[工程]—[添加類模塊]命令,打開“添加類模塊”對(duì)話框,選擇“VB類生成器”,使用類生成器在工程中添加clsDispose類,如下表所示。屬性名稱數(shù)據(jù)類型說明IDLong報(bào)損編號(hào)MerchandiseIDLong藥品IDMerchNameString藥品名稱RegDateDate登記日期CountLong報(bào)損數(shù)量ReasonSingle報(bào)損原因OperatorIdString操作員IDRemarkString備注RegTimesLong登記次數(shù)TotalCountLong報(bào)損總數(shù)量TypeNameString藥品類型名clsDispose類中的AddNew、Update和Delete方法,與進(jìn)貨信息中的處理很類似,只是數(shù)據(jù)庫(kù)中的字段不同而已。5.9、管理員信息管理模塊管理員信息管理模塊的功能需要由clsAdmin和clsAdmins兩個(gè)類來實(shí)現(xiàn),它的主要功能是:添加管理員信息。修改管理員信息。刪除管理員信息。查找管理員信息。驗(yàn)證管理員密碼。其他與管理員信息相關(guān)的常用操作。管理員信息類clsAdmin用來具體處理單條管理員信息,完成管理員信息的基本操作功能,如添加、修改、刪除和驗(yàn)證密碼等。選擇菜單[工程]—[添加類模塊]命令,打開“添加類模塊”對(duì)話框,選擇“VB類生成器”,使用類生成器在工程中添加clsAdmin類,如下圖所示。屬性名稱數(shù)據(jù)類型說明AccountString管理員賬號(hào)PwdString密碼IsDefaultBoolean是否是默認(rèn)用戶clsAdmin中的AddNew、Update和Delete方法,與以上各類中的處理很類似,只是數(shù)據(jù)庫(kù)中的字段不同而已。第六章、系統(tǒng)界面具體實(shí)現(xiàn)藥品采購(gòu)管理系統(tǒng)基本界面組件用來處理進(jìn)銷存管理系統(tǒng)中與界面相關(guān)的操作,既負(fù)責(zé)與用戶界面層進(jìn)行數(shù)據(jù)傳遞,同時(shí)也要將界面端的請(qǐng)求傳遞給業(yè)務(wù)處理層,進(jìn)一步轉(zhuǎn)化為數(shù)據(jù)庫(kù)操作。它包括以下功能:藥品類型操作管理,對(duì)應(yīng)frmMType窗體和clsOpMType類。藥品操作管理,對(duì)應(yīng)frmMerch窗體和clsOpMerch類。供貨商操作管理,對(duì)應(yīng)frmProvider窗體和clsOpProvider類。進(jìn)貨操作管理,對(duì)應(yīng)frmBuy窗體和clsOpBuy類。采購(gòu)操作管理,對(duì)應(yīng)frmSell窗體和clsOpSell類。報(bào)損操作管理,對(duì)應(yīng)clsDispose窗體和clsOpDispose類。管理員操作管理,對(duì)應(yīng)frmUser窗體和clsOpAdmin類。信息輸入界面加操作類的設(shè)計(jì)思想1)每個(gè)模塊的組成在本組件中,每一個(gè)模塊都是由信息輸入界面與相應(yīng)的操作類來實(shí)現(xiàn)的,具體完成的功能如下:信息輸入界面:可供添加或修改時(shí)調(diào)用,用來獲取用戶輸入,將用戶輸入封裝到對(duì)應(yīng)的信息管理類中。操作類:可供界面端程序調(diào)用,實(shí)現(xiàn)了兩個(gè)功能:其一是用來調(diào)出信息輸入界面,接收用戶輸入,將輸入存入數(shù)據(jù)庫(kù),并給出數(shù)據(jù)庫(kù)操作的結(jié)果;其二是通過傳引用的方式,向用戶界面端傳入的控件添加數(shù)據(jù),從而在用戶截面端顯示。2)輸入界面的代碼結(jié)構(gòu)為了方便維護(hù)和快速開發(fā),每個(gè)界面的實(shí)現(xiàn)代碼結(jié)構(gòu)都很相似,大多都包括如下的方法:ShowDlg:用來顯示對(duì)話框,內(nèi)部調(diào)用Me.ShowvbModal,程序停止在這里。SetStatus:設(shè)計(jì)對(duì)話框控件的默認(rèn)狀態(tài)。SetDefaultValue:設(shè)計(jì)對(duì)話框的默認(rèn)值。OKButton_Click:[確定]按鈕單擊處理事件。CheckValid:檢查用戶輸入有效性。SaveValue:保存用戶輸入。CancelButton_Click:[取消]按鈕單擊處理事件。當(dāng)用戶單擊[確定]或[取消]按鈕后,程序繼續(xù)執(zhí)行ShowDlg函數(shù)后面的語句,用來保存或放棄用戶輸入。3)操作類的代碼結(jié)構(gòu)同樣為了方便維護(hù)和快速開發(fā),每個(gè)操作類的代碼結(jié)構(gòu)也都很相似,大多包括如下方法:Add:管理增加操作。Modify:管理修改操作。Delete:管理刪除操作。AddToLvw:將單個(gè)對(duì)象加入列表,或在列表中更新。InitListview:設(shè)置ListView的顯示樣式。ObjsToListView:將對(duì)象集合顯示到ListView中。FillListView:顯示指定類型對(duì)象到列表控件。GetObjFromControl:從列表或樹形圖中得到一個(gè)對(duì)象。ObjsToCornbo:傳入?yún)?shù)為對(duì)象的單向類與組合框。FillCombo:將全部對(duì)象加入到組合框中。創(chuàng)建組件的公共模塊為了將來擴(kuò)展方便,這里加入一個(gè)公共模塊,命名為mdlMain,現(xiàn)在只添加一個(gè)空的SubMain作為組件的初始化函數(shù)。藥品類型操作管理模塊藥品類型管理模塊實(shí)現(xiàn)以下功能:處理添加藥品類型的操作。處理修改藥品類型的操作。處理刪除藥品類型的操作。處理列舉或查找藥品類型的操作。藥品操作管理模塊藥品操作管理模塊實(shí)現(xiàn)以下的功能:處理添加藥品的操作。處理修改藥品的操作。處理刪除藥品的操作。處理分析藥品庫(kù)存量的操作。處理列舉或查找藥品的操作。供貨商操作管理模塊供貨商操作管理模塊實(shí)現(xiàn)以下的功能:處理添加供貨商的操作。處理修改供貨商的操作。處理刪除供貨商的操作。處理列舉或查找供貨商的操作。進(jìn)貨操作管理模塊進(jìn)貨操作管理模塊實(shí)現(xiàn)以下的功能:處理添加進(jìn)貨的操作。處理修改進(jìn)貨的操作。處理刪除進(jìn)貨的操作。處理分析進(jìn)貨總支出的操作處理列舉或查找進(jìn)貨的操作。采購(gòu)操作管理模塊采購(gòu)操作管理模塊實(shí)現(xiàn)以下的功能:處理添加采購(gòu)的操作。處理修改采購(gòu)的操作。處理刪除采購(gòu)的操作。處理分析采購(gòu)總收入的操作。處理列舉或查找采購(gòu)的操作。報(bào)損操作管理模塊報(bào)損操作管理模塊實(shí)現(xiàn)以下的功能:處理添加報(bào)損的操作。處理修改報(bào)損的操作。處理刪除報(bào)損的操作。處理分析報(bào)損總數(shù)量的操作。處理列舉或查找報(bào)損的操作。管理員信息操作管理模塊管理員信息操作管理模塊實(shí)現(xiàn)以下的功能:處理添加管理員信息的操作。處理修改管理員信息的操作。處理刪除管理員信息的操作。處理列舉或查找管理員信息的操作。3。界面端應(yīng)用程序設(shè)計(jì)公共模塊的設(shè)計(jì)在創(chuàng)建用戶界面端應(yīng)用程序時(shí),向?qū)б呀?jīng)為我們生成了一個(gè)名為mdlMain的模塊,我們對(duì)這個(gè)模塊稍微修改即可使用。添加成員變量修改Main過程用戶登入模塊的設(shè)計(jì)用戶登入對(duì)話框設(shè)計(jì)用戶登入對(duì)話框代碼設(shè)計(jì)添加成員變量修改Form_Load過程修改[確定]按鈕的處理代碼系統(tǒng)主界面的設(shè)計(jì)設(shè)計(jì)主窗體控件布局控件名稱屬性屬性取消功能frmMainCaption進(jìn)銷存管理系統(tǒng)系統(tǒng)主窗體inlViewSIcon(ListView)ImageHeight16樹形控件和列表框小圖標(biāo)所使用的圖片ImageWidth16inlViewBIcon(ImageList)ImageHeigh32列表框大圖標(biāo)所使用的圖片(未用:待擴(kuò)展)ImageWidth32tvTreeView(TreeView)LineStyleTvwRootLines顯示藥品類型樹ImageListinlViewSIconsstabView(ListView)StyleO-ssStyleTabbedDialog右側(cè)選項(xiàng)卡,做容器用TabOrientationO-ssTabOricntationToplvMerch(ListView)lvBuy(ListView)lvSell(ListView)lvDispose(ListView)lvProvider(ListView)FullRowSelectTrue分別用來顯示藥品藥品信息列表進(jìn)貨信息列表采購(gòu)信息列表報(bào)損信息列表供貨商信息列表GridLinesTrueViewlvwRiportIconimlViewBIconSmallIconimlViewSIion設(shè)計(jì)選項(xiàng)卡sstabView給sstabView控件添加5個(gè)選項(xiàng)卡,選項(xiàng)卡標(biāo)題分別設(shè)置為“藥品庫(kù)存”、“進(jìn)貨記錄”、“采購(gòu)記錄”、“報(bào)損記錄”和“供應(yīng)商”,分別對(duì)應(yīng)5個(gè)ListView。添加菜單添加主界面的處理代碼添加窗體初始化函數(shù)菜單響應(yīng)函數(shù)樹形控件單擊響應(yīng)函數(shù)其他代碼用戶管理模塊用戶管理對(duì)話框界面設(shè)計(jì)用戶管理對(duì)話框代碼設(shè)計(jì)經(jīng)營(yíng)分析模塊經(jīng)營(yíng)分析模塊用來對(duì)藥店的運(yùn)作情況進(jìn)行分析,具有以下功能:庫(kù)存量排行。進(jìn)貨總量與登記次數(shù)排行。采購(gòu)總量與登記次數(shù)排行。報(bào)損總量與登記次數(shù)排行。經(jīng)營(yíng)分析對(duì)話框界面設(shè)計(jì)控件名稱屬性屬性取消功能FrmAnalysis(Form)Caption經(jīng)營(yíng)分析經(jīng)營(yíng)分析對(duì)話框List庫(kù)存分析進(jìn)貨分析采購(gòu)分析報(bào)損分析CboOrder(ComboBox)Style2-DropDownList前↓:降序排列,取前若干項(xiàng);↑后:降序排列,取后若干項(xiàng)。然后再按由小到大顯示List前↓↑后TxtCount(TextBox)MaxLength3顯示數(shù)量CmdSearch(CommandButtom)Caption查看[查看]按鈕CmdClose(CommandButtom)Caption關(guān)閉[關(guān)閉]按鈕LvAna(ListView)GridLinesTrue顯示數(shù)據(jù)容器ViewlvwRiport經(jīng)營(yíng)分析對(duì)話框代碼設(shè)計(jì)測(cè)試分析強(qiáng)制變量聲明選擇菜單[工具]—[選項(xiàng)]命令,打開“選項(xiàng)“對(duì)話框”,在“編輯器”屬性頁(yè)中,把“要求變量聲明”復(fù)選框選上,或者手工在每個(gè)文件的開頭加上關(guān)鍵字:optionExplicit這樣在編譯時(shí)會(huì)對(duì)沒有聲明的變量報(bào)錯(cuò),從而減少很多不必要的調(diào)試。二、常見錯(cuò)誤的避免1、數(shù)據(jù)類型不匹配數(shù)據(jù)類型的判斷錯(cuò)誤,比如一個(gè)功能模塊,接受傳入的數(shù)據(jù)為id,要求其值必須是正數(shù)。如果寫程序時(shí)傳入的是小數(shù),或者是非數(shù)字的字符串,那么程序?qū)?huì)出現(xiàn)錯(cuò)誤。又如查詢數(shù)據(jù)表時(shí),使用了WHERE子句,但是數(shù)據(jù)類型不匹配,數(shù)據(jù)庫(kù)中字段類型為數(shù)字的值,卻使用了字符串去查詢,就會(huì)出現(xiàn)錯(cuò)誤。2、數(shù)據(jù)與數(shù)據(jù)庫(kù)限制相沖突數(shù)據(jù)與數(shù)據(jù)庫(kù)限制相沖突,可能是其值超過了數(shù)據(jù)庫(kù)的上限和下限。比如在數(shù)據(jù)庫(kù)中,用戶名稱字符數(shù)量上限是20個(gè)字符,而在程序中沒有對(duì)此進(jìn)行判別,如果一個(gè)添加新藥品時(shí)名字有21個(gè)字符,那么在使用SQL語句插入數(shù)據(jù)與記錄的時(shí)候就會(huì)出錯(cuò)。3、變量聲明錯(cuò)誤最后是一些常識(shí)性錯(cuò)誤,比如在If…Else…EndIf過程中,認(rèn)為判斷只會(huì)執(zhí)行其中的一段代碼,于是在兩段中都使用了DimobjasclsMerch,事實(shí)上,編譯器在語法分析階段,是首先將一個(gè)函數(shù)內(nèi)聲明的全部變量都放符號(hào)表中,而不管這個(gè)變量的聲明是在這個(gè)函數(shù)的什么位置。又如在SelectCase中,Case的條件是字符串,但是沒有加引號(hào),就變成了Case一個(gè)空變量。4、資源的建立與釋放在將類實(shí)例化時(shí),必須使用New關(guān)鍵字,未實(shí)例化類無法使用,例:誤:DimobjasclsMerchClsMerch.AddNew正:DimobjasclsMerchSetobj=NewclsMerchClsMerch.AddNew同理,在調(diào)用Setobj=Nothing后,資源已經(jīng)釋放,無法再調(diào)用類內(nèi)的方法。5、系統(tǒng)的編譯和發(fā)行3個(gè)工程的項(xiàng)目屬性在前面創(chuàng)建項(xiàng)目時(shí)均已設(shè)置完畢,由于在本系統(tǒng)中生成了名為BuySellstorageDB.dll和BuySellstorageUI.dll的組件,當(dāng)移植到其他機(jī)器使用時(shí),需要先注冊(cè)此組件。另外系統(tǒng)中默認(rèn)的數(shù)據(jù)庫(kù)的路徑是與BuySellstorageDB.dll同目錄下的DB文件夾,因此當(dāng)移植到其他機(jī)器時(shí),這個(gè)路徑關(guān)系依然不能改變??偨Y(jié)一個(gè)完整的多層結(jié)構(gòu)藥品采購(gòu)管理系統(tǒng)就創(chuàng)建完畢了。對(duì)藥品采購(gòu)管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn),重點(diǎn)介紹了多層結(jié)構(gòu)的開發(fā)思想,在完成系統(tǒng)搭建的同時(shí)還可以體會(huì)到軟件工程在項(xiàng)目開發(fā)中各個(gè)環(huán)節(jié)的具體應(yīng)用,并對(duì)使用VisualBasic6.0開發(fā)數(shù)據(jù)庫(kù)應(yīng)用程序的方法和技巧有了更一步的掌握。參考文獻(xiàn)胡同森、趙劍鋒等,《VisualBasic6.0程序設(shè)計(jì)教程》,浙江科學(xué)技術(shù)出版社,2002年2月第一版,ISBN7-5341-1740-2。任志國(guó)、周其力等,《Access2000從入門到精通》,浙江科學(xué)技術(shù)出版社,2002年2月,ISBN7-5341-1316-4。伍俊良,《VisualBasic課程設(shè)計(jì)與系統(tǒng)開發(fā)案例》,清華大學(xué)出版社,2002年8月第一版,ISBN7-302-05626-9。張瀚文、齊錦剛,《VisualBasic數(shù)據(jù)庫(kù)系統(tǒng)開發(fā)實(shí)例與解析》,高等教育出版社,2003-11-30出版,ISBN7-04-013331-8。劉鋼,《VisualBasic程序設(shè)計(jì)與應(yīng)用案例》,高等教育出版社,2003年7月28日出版,王珊、陳紅,《數(shù)據(jù)庫(kù)系統(tǒng)原理教程》,清華大學(xué)出版社,1998年7月第1版,ISBN7-302-03009-X/TP.1599。陳佳,《信息管理開發(fā)方法教程》,清華大學(xué)出版,1998年5月第1版,7-302-02913-X。晶辰工作室,《VisualBasic6.0中文版實(shí)用參考手冊(cè)》,電子工業(yè)出版社,1998年9月出版,ISBN7-5053-4922-8。(美)MicrosoftCorporation著/微軟(中國(guó))有限公司譯,《VisualBasic6.0中文版程序員指南》,北京希望電腦公司,1998年11月出版,ISBN7-980021-soundsthatwerealotlikelaughter.'Youthinkit'sfunny,huh?'Wearyinquired.HewalkedaroundtoBilly'sback.Billy'sjacketandshirtandundershirthadbeenhauleduparoundhisshouldersbytheviolence,sohisbackwasnaked.There,inchesfromthetipsofWeary'scombatboots,werethepitifulbuttonsofBilly'sspine.Wearydrewbackhisrightboot,aimedakickatthespine,atthetubewhichhadsomanyofBilly'simportantwiresinit.Wearywasgoingtobreakthattube.ButthenWearysawthathehadanaudience.FiveGermansoldiersandapolicedogonaleashwerelookingdownintothebedofthecreek.Thesoldiers'blueeyeswerefilledwithblearyciviliancuriosityastowhyoneAmericanwouldtrytomurderanotheronesofarfromhome,andwhythevictimshouldlaugh.ThreeTheGermansandthedogwereengagedinamilitaryoperationwhichhadanamusinglyself-explanatoryname,ahumanenterprisewhichisseldomdescribedindetail,whosenamealone,whenreportedasnewsorhistory,givesmanywarenthusiastsasortofpost-coitalsatisfaction.Itis,intheimaginationofcombat'sfans,thedivinelylistlessloveplaythatfollowstheorgasmofvictory.Itiscalled'moppingup.'Thedog,whohadsoundedsoferociousinthewinterdistances,wasafemaleGermanshepherd

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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)論