超市管理系統(tǒng)正文_第1頁(yè)
超市管理系統(tǒng)正文_第2頁(yè)
超市管理系統(tǒng)正文_第3頁(yè)
超市管理系統(tǒng)正文_第4頁(yè)
超市管理系統(tǒng)正文_第5頁(yè)
已閱讀5頁(yè),還剩64頁(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)介

年5月29日超市管理系統(tǒng)正文文檔僅供參考摘要現(xiàn)在為方便小區(qū)居民生活社區(qū)便利超市已運(yùn)而生,隨著社區(qū)超市所售商品的不斷增多,有關(guān)商品的各種信息量也成倍增長(zhǎng)。僅僅依靠以往的人工記賬操作和商品管理已經(jīng)不能應(yīng)付超市的日常工作,超市隨時(shí)需要對(duì)商品各種信息進(jìn)行統(tǒng)計(jì)分析,其中包括進(jìn)貨管理,銷售管理,退貨管理和基本系統(tǒng)管理等功能。本系統(tǒng)正是針對(duì)這些需要為目的開(kāi)發(fā)的。系統(tǒng)實(shí)現(xiàn)了超市日常經(jīng)營(yíng)管理所必須的交易管理,進(jìn)貨統(tǒng)計(jì),銷售統(tǒng)計(jì),查看數(shù)據(jù)表,系統(tǒng)管理等基本功能模塊。而且在每個(gè)模塊中又分別實(shí)現(xiàn)了若干相應(yīng)的子功能。而且針對(duì)超市中的具體情況進(jìn)行了不同權(quán)限的設(shè)置,不同權(quán)限的能夠進(jìn)行不同操作。系統(tǒng)主要利用VB6.0作為前端的應(yīng)用開(kāi)發(fā)工具,利用Access作為后臺(tái)的數(shù)據(jù)庫(kù)。首先經(jīng)過(guò)總體設(shè)計(jì)后再進(jìn)行各功能模塊逐一設(shè)計(jì),然后經(jīng)過(guò)各模塊編程、調(diào)試,最后的組合調(diào)試和數(shù)據(jù)測(cè)試最終調(diào)試成功。關(guān)鍵詞:物資管理系統(tǒng)VB6.0數(shù)據(jù)庫(kù)ABSTRACTAsupermarketmanagementsystemisanindispensablepartinthemanagementprocessforsupermarket,itisvitalfordecision-makersandmanagersofthesupermarket,becauseasupermarketmanagementsystemcanprovideenoughinformationforusers,increasethebenefitsandsavethecost.Thesystemisdevelopedjustforthispurpose.VB6.0istakenastheforegrounddevelopmenttoolwhileAccessistakenasthebackgrounddatabase.Fivefunctionalmodulesareimplementedinthesystem,includingexchangemanagement,stockstatistic,salestatistic,viewingdatatables,systemmanagementetc.Manysubsystemscorrespondingwiththemodulesarealsoimplemented.Thesystemiseasytouse,andtheinterfaceislaconicanddecent.Keywords:MaterialsmanagementsystemVB6.0Database第一章緒論1.1超市管理系統(tǒng)的發(fā)展現(xiàn)狀以及前人做出的成就計(jì)算機(jī)信息系統(tǒng)的發(fā)展有以下四個(gè)階段:第一階段(1954--1964)電子數(shù)據(jù)處理階段(EDP)。

此階段以單項(xiàng)數(shù)據(jù)處理為主,如財(cái)務(wù)管理、物資管理、工資管理等。第二階段(1964--1974)管理信息系統(tǒng)階段(MIS)。在這期間,由于高速度的處理機(jī)、高速度大容量的存儲(chǔ)器與其它器件有了突破性進(jìn)展,使得計(jì)算機(jī)應(yīng)用系統(tǒng)從單項(xiàng)應(yīng)用的

EDP發(fā)展到多功能、多層次、綜合性的應(yīng)用階段,使得

MIS日漸成熟,具有了控制、預(yù)測(cè)、輔助和決策的功能。第三階段(1974--1980)決策支持系統(tǒng)階段(DSS)。在此階段解決的主要是面向高層管理,大范圍的決策問(wèn)題以及非結(jié)構(gòu)化信息的處理。第四階段(1980--)職能管理系統(tǒng)階段(IMS)。這個(gè)階段強(qiáng)調(diào)的是綜合管理功能,多維服務(wù)模式,人機(jī)協(xié)調(diào)的、智能化的、集成化的計(jì)算機(jī)輔助管理功能等。據(jù)統(tǒng)計(jì),當(dāng)前美國(guó)在物資管理中80-100%的信息處理由計(jì)算機(jī)完成。由此能夠看出,當(dāng)今物資管理對(duì)計(jì)算機(jī)的依賴程度已經(jīng)達(dá)到一個(gè)前所未有的水平。能夠說(shuō),沒(méi)有信息化的支撐,就不可能實(shí)現(xiàn)現(xiàn)代零售商業(yè)的高效率管理。1.2超市管理系統(tǒng)的背景及意義當(dāng)今社會(huì)是一個(gè)信息社會(huì),是一個(gè)知識(shí)經(jīng)濟(jì)時(shí)代。誰(shuí)控制的信息越多,誰(shuí)利用信息資源的效率越高,誰(shuí)就會(huì)在各方面的競(jìng)爭(zhēng)中占有一席之地,誰(shuí)就會(huì)有更多的優(yōu)勢(shì)。管理信息系統(tǒng)(MIS)的概念是1961年美國(guó)人J.D.GALLAGHER首先提出來(lái)的,它是一門新興的、集管理科學(xué)、信息科學(xué)、系統(tǒng)科學(xué)及計(jì)算機(jī)科學(xué)為一體的綜合性學(xué)科,研究的是企業(yè)中信息管理活動(dòng)的全過(guò)程,以便有效的管理信息,提供各類管理決策信息,輔助企業(yè)進(jìn)行現(xiàn)代化管理。隨著超市規(guī)模的發(fā)展不斷擴(kuò)大,商品數(shù)量急劇增加,有關(guān)商品的各種信息量也成倍增長(zhǎng)。超市在時(shí)時(shí)刻刻需要對(duì)商品各種信息進(jìn)行統(tǒng)計(jì)分析,如日?qǐng)?bào)表、月報(bào)表、年報(bào)表,員工信息的管理等。以上說(shuō)明開(kāi)發(fā)一套超市管理系統(tǒng)具有積極的現(xiàn)實(shí)意義。1.3本文所做的主要工作本文是針對(duì)超市管理方面的需求開(kāi)發(fā)設(shè)計(jì)了一套適合超市管理應(yīng)用的計(jì)算機(jī)管理信息系統(tǒng)。論文對(duì)系統(tǒng)進(jìn)行了較為全面的業(yè)務(wù)需求分析,并進(jìn)行有針對(duì)性的系統(tǒng)設(shè)計(jì),包括開(kāi)發(fā)平臺(tái)和工具選型、功能模塊設(shè)計(jì)、數(shù)據(jù)庫(kù)設(shè)計(jì)等,最后選用VB6.0和Access數(shù)據(jù)庫(kù)進(jìn)行了系統(tǒng)實(shí)現(xiàn),并進(jìn)行了相應(yīng)的系統(tǒng)測(cè)試和調(diào)試。

第二章系統(tǒng)可行性與需求分析2.1系統(tǒng)的可行性分析該系統(tǒng)所需硬件設(shè)備,如服務(wù)器、PC機(jī)、打印機(jī)及網(wǎng)絡(luò)配件等,與過(guò)去相比這些設(shè)備在性能上已經(jīng)有了很大提高,價(jià)格又相對(duì)較低,能滿足系統(tǒng)功能需求。軟件上,操作系統(tǒng)采用WINDOWSXP,數(shù)據(jù)庫(kù)采用ACCSEE,這些軟件在MIS開(kāi)發(fā)中已被大量應(yīng)用,技術(shù)上都比較成熟,因此技術(shù)上是可行的。本系統(tǒng)屬于一個(gè)工具型的系統(tǒng),它能夠?qū)⒐ぷ魅藛T從手工操作中解脫出來(lái),而且能夠迅速準(zhǔn)確地進(jìn)行錄入、整理、查詢、修改,極大地提高工作效率,同時(shí)促進(jìn)業(yè)務(wù)的規(guī)范化、程序化,及時(shí)給各級(jí)領(lǐng)導(dǎo)提供必要的信息統(tǒng)計(jì)。系統(tǒng)開(kāi)發(fā)所需的費(fèi)用是比較低的,由于系統(tǒng)并不復(fù)雜,其運(yùn)行與培訓(xùn)費(fèi)用也不會(huì)占用很多資金,能夠預(yù)見(jiàn)系統(tǒng)完成后能夠帶來(lái)較大的經(jīng)濟(jì)效益。2.2需求分析2.2.1系統(tǒng)需求超市管理系統(tǒng)開(kāi)發(fā)應(yīng)該滿足一定的需求。滿足超市行業(yè)經(jīng)營(yíng)管理的基本要求。進(jìn)行多層次數(shù)據(jù)匯總,為經(jīng)營(yíng)管理決策者、普通職員等各層次的管理者提供數(shù)據(jù)支持。提供方便靈活的數(shù)據(jù)查詢功能,滿足繁雜,多樣的數(shù)據(jù)查詢需求。對(duì)操作人員的技能要求比較低,操作方便。能夠?qū)崿F(xiàn)方便的擴(kuò)展,滿足超市企業(yè)發(fā)展的需要。能夠保障管理數(shù)據(jù)的安全,準(zhǔn)確。2.2.2功能需求在對(duì)超市行業(yè)的組織結(jié)構(gòu)及職能充分調(diào)查了解后,依據(jù)對(duì)超市行業(yè)的數(shù)據(jù)流動(dòng)特點(diǎn)的分析,現(xiàn)在能夠進(jìn)行系統(tǒng)的功能分析。根據(jù)軟件工程的原理,需求分析的任務(wù)是確定系統(tǒng)必須完成的工作。經(jīng)過(guò)詳細(xì)的調(diào)研分析之后,能夠得出超市管理系統(tǒng)必須具備的功能下:交易管理:在交易管理中要實(shí)現(xiàn)進(jìn)貨登記、銷售登記、退貨登記這三大功能模塊。第一,在進(jìn)貨登記這個(gè)模塊下要實(shí)現(xiàn)對(duì)入庫(kù)的每個(gè)商品及其對(duì)應(yīng)的供貨商的詳細(xì)信息(例如,進(jìn)貨編號(hào)、商品編號(hào)、廠商名稱、聯(lián)系人等等)一一記錄的功能。第二,在銷售登記這個(gè)模塊下要實(shí)現(xiàn)對(duì)已售出商品的詳細(xì)信息(例如,銷貨編號(hào),生產(chǎn)廠商,銷售日期等等)一一記錄的功能。第三,在退貨登記這個(gè)模塊下要實(shí)現(xiàn)對(duì)退貨商品的詳細(xì)信息(例如,退貨編號(hào),銷售日期,退貨日期,生產(chǎn)廠商等等)一一記錄的功能。進(jìn)貨統(tǒng)計(jì):在進(jìn)貨統(tǒng)計(jì)中包括今日進(jìn)貨統(tǒng)計(jì)、本月進(jìn)貨統(tǒng)計(jì)、本季度進(jìn)貨統(tǒng)計(jì)、本年度進(jìn)貨統(tǒng)計(jì)這四個(gè)功能模塊。本系統(tǒng)需要實(shí)現(xiàn)無(wú)論按日,按月還是按季度,按年都能夠查詢相應(yīng)時(shí)間段內(nèi)進(jìn)貨的詳細(xì)信息(例如,進(jìn)貨編號(hào)、商品名稱、生產(chǎn)廠商、總金額等等)這樣的功能。銷售統(tǒng)計(jì):在銷售統(tǒng)計(jì)中包括今日銷售統(tǒng)計(jì)、本月銷售統(tǒng)計(jì)、本季度銷售統(tǒng)計(jì)、本年度銷售統(tǒng)計(jì)這四個(gè)功能模塊。本系統(tǒng)需要實(shí)現(xiàn)無(wú)論按日,按月還是按季度,按年都能夠查詢相應(yīng)時(shí)間段內(nèi)貨物銷售的詳細(xì)信息(例如,銷貨編號(hào)、商品名稱、銷售時(shí)間、銷售單價(jià)等等)這樣的功能。查看數(shù)據(jù)表:在這一功能模塊中要實(shí)現(xiàn)隨時(shí)隨地查看超市的進(jìn)貨表、現(xiàn)存商品表、銷售表、退貨表、管理員工表、進(jìn)貨商表這六項(xiàng)表格的功能。從而達(dá)到為超市管理人員提供了超市運(yùn)營(yíng)的各種實(shí)時(shí)數(shù)據(jù),以便其做出正確的決策的目的。系統(tǒng)管理:在這一功能模塊中要需要實(shí)現(xiàn)更換用戶、修改密碼、退出系統(tǒng)這三項(xiàng)功能。以便用戶在進(jìn)入后能夠根據(jù)自己的需要進(jìn)行更改密碼,調(diào)換用戶重新登陸和退出本系統(tǒng)。6)數(shù)據(jù)庫(kù)管理:在本系統(tǒng)中管理員應(yīng)該能夠?qū)ΜF(xiàn)有的數(shù)據(jù)庫(kù)進(jìn)行管理和維護(hù),包括數(shù)據(jù)備份和恢復(fù)等,從而達(dá)到提高系統(tǒng)的數(shù)據(jù)安全性的目的。

2.2.3硬件需求硬件環(huán)境:在最低配置的情況下,系統(tǒng)的性能往往不令人滿意,現(xiàn)在的硬件性能已經(jīng)相當(dāng)出眾,而且價(jià)格也很便宜,因此我們一般給服務(wù)器端配置高性能硬件。以下為最低配置:處理器:InterPentiumIV或更高內(nèi)存:1GB以上硬盤空間:10GB以上顯卡:SVGA顯示適配器操作系統(tǒng):WindowsXP數(shù)據(jù)庫(kù):MicrosoftAccess第三章系統(tǒng)設(shè)計(jì)3.1系統(tǒng)功能設(shè)計(jì)系統(tǒng)開(kāi)發(fā)的總體任務(wù)是實(shí)現(xiàn)各種信息的系統(tǒng)化、規(guī)范化和自動(dòng)化。系統(tǒng)功能分析是在系統(tǒng)開(kāi)發(fā)的總體任務(wù)的基礎(chǔ)上完成。根據(jù)系統(tǒng)需要與任務(wù)的分配要完成的主要任務(wù)與功能有:對(duì)本系統(tǒng)的登錄模塊的實(shí)現(xiàn),根據(jù)不同的用戶權(quán)限來(lái)登錄到主窗體。對(duì)本統(tǒng)主要界面的設(shè)計(jì)實(shí)現(xiàn),在主界面中要實(shí)現(xiàn)五個(gè)彈出菜單;有交易管理菜單,進(jìn)貨統(tǒng)計(jì)菜單,銷售統(tǒng)計(jì)菜單,查看數(shù)據(jù)表菜單,系統(tǒng)管理菜單。(1)交易管理:包括進(jìn)貨登記、銷售登記、退貨登記等。其中進(jìn)貨登記中還包含進(jìn)貨商登記,如果是新的進(jìn)貨廠商,能夠直接在此登記入庫(kù)。進(jìn)貨和銷售的主要交易都是在此進(jìn)行。每次交易(包括進(jìn)貨、銷貨和退貨)都需要對(duì)商品名稱、生產(chǎn)廠商、商品型號(hào)、單價(jià)、數(shù)量、總金額、交易日期、經(jīng)手業(yè)務(wù)員編號(hào)等各項(xiàng)記錄。在交易過(guò)程中,程序的編寫盡可能的方便員工進(jìn)行交易,比如:進(jìn)貨登記時(shí),如果商品編號(hào)相同,則自動(dòng)添加該商品的相關(guān)屬性;銷貨登記時(shí),用戶只要輸入商品編號(hào),該商品的屬性即可自動(dòng)出現(xiàn)。退貨登記時(shí),只要輸入正確的銷貨編號(hào),其銷售信息也將自動(dòng)列出,盡量的方便用戶的操作,同時(shí)對(duì)于登陸的員工編號(hào)程序也自動(dòng)的將其列在進(jìn)貨登記、銷貨登記中,以防止員工進(jìn)行非正常的交易。(2)進(jìn)貨統(tǒng)計(jì):包括今日進(jìn)貨統(tǒng)計(jì)、本月進(jìn)貨統(tǒng)計(jì)、本年度進(jìn)貨統(tǒng)計(jì)等。其中每次進(jìn)貨統(tǒng)計(jì)都是按進(jìn)貨廠商和進(jìn)貨總金額統(tǒng)計(jì)顯示的。使用一個(gè)表格顯示所選時(shí)間段的全部進(jìn)貨數(shù)據(jù),包括進(jìn)貨編號(hào)、商品名稱等。再使用另一個(gè)表格顯示分別從各個(gè)廠商進(jìn)貨的金額,還有一個(gè)文本框用于顯示次時(shí)間段的進(jìn)貨總金額。(3)銷貨統(tǒng)計(jì):包括今日銷售統(tǒng)計(jì)、本月銷售統(tǒng)計(jì)、本季度銷售統(tǒng)計(jì)、本年度銷售統(tǒng)計(jì)等,其中每次銷售統(tǒng)計(jì)都是按生產(chǎn)廠商和銷售總金額統(tǒng)計(jì)顯示的。使用一個(gè)表格顯示所選時(shí)間段的全部銷售數(shù)據(jù),包括銷貨編號(hào)、商品名稱等。再使用另一個(gè)表格顯示分別從各個(gè)廠商進(jìn)貨的金額,還有一個(gè)文本框用于顯示次時(shí)間段的銷售總金額。(4)查看數(shù)據(jù)表:實(shí)現(xiàn)各種數(shù)據(jù)表的瀏覽,包括進(jìn)貨表,商品庫(kù)存表、銷售表、退貨表、員工表、進(jìn)貨商表等。對(duì)于員工表管理員還能夠?qū)ζ溥M(jìn)行刪除或添加用戶操作。(5)系統(tǒng)管理:包括更換用戶、修改密碼、退出系統(tǒng)等。更換用戶的操作方便了用戶的使用,同時(shí)更加方便了管理員對(duì)于系統(tǒng)數(shù)據(jù)的查詢,能夠做到隨時(shí)查看,以使管理員對(duì)賬目一目了然,同時(shí)方便了普通用戶的交接班使用本系統(tǒng)。修改密碼和退出系統(tǒng)都是對(duì)于系統(tǒng)管理的輔助功能。3.2程序流程圖系統(tǒng)管理系統(tǒng)管理圖3.1程序流程圖

3.3E-R圖設(shè)計(jì)1.交易管理模塊:用于管理商品的進(jìn)貨,銷售,退貨登記的操作。實(shí)體E-R圖如下:交易管理交易管理銷售登記退貨登記進(jìn)貨登記銷售登記退貨登記進(jìn)貨登記圖3.2交易管理模塊2.進(jìn)貨統(tǒng)計(jì)管理:主要用于對(duì)商品每日,每月,每季度,每年的進(jìn)貨情況進(jìn)行統(tǒng)計(jì)管理,此功能只有以管理員的身份進(jìn)入時(shí)才為可用狀態(tài)。實(shí)體E-R圖如下:進(jìn)貨統(tǒng)計(jì)管理進(jìn)貨統(tǒng)計(jì)管理本季度進(jìn)貨今年進(jìn)貨本月進(jìn)貨今日進(jìn)貨本季度進(jìn)貨今年進(jìn)貨本月進(jìn)貨今日進(jìn)貨圖3.3進(jìn)貨統(tǒng)計(jì)管理3.銷售統(tǒng)計(jì)管理:主要用于對(duì)商品每日,每月,每季度,每年的銷售情況進(jìn)行統(tǒng)計(jì)管理,此功能只有以管理員的身份進(jìn)入時(shí)才為可用狀態(tài)。實(shí)體E-R圖如下:銷售統(tǒng)計(jì)管理銷售統(tǒng)計(jì)管理今日銷售今年銷售本季度銷售本月銷售今日銷售今年銷售本季度銷售本月銷售圖3.4銷售統(tǒng)計(jì)管理4.查看數(shù)據(jù):主要能查看進(jìn)貨表,商品信息表,銷售表,退貨表等進(jìn)行查看,以實(shí)現(xiàn)對(duì)商品信息的及時(shí)了解。實(shí)體E-R圖如下:查看數(shù)據(jù)表查看數(shù)據(jù)表管理員工表管理員工表進(jìn)貨商品表進(jìn)貨表退貨表銷售表進(jìn)貨商品表進(jìn)貨表退貨表銷售表現(xiàn)存商品表圖3.5查看數(shù)據(jù)3.3數(shù)據(jù)庫(kù)設(shè)計(jì)在系統(tǒng)的數(shù)據(jù)庫(kù)設(shè)計(jì)中,進(jìn)貨表、銷貨表、商品庫(kù)存表和退貨表涉及了交易管理三個(gè)子菜單的絕大部分?jǐn)?shù)據(jù),是本系統(tǒng)數(shù)據(jù)庫(kù)的核心。buy表(進(jìn)貨表)中包括有進(jìn)貨編號(hào)、商品編號(hào)、商品名稱、生產(chǎn)廠商、型號(hào)、數(shù)量、進(jìn)貨價(jià)、進(jìn)貨年、進(jìn)貨月、進(jìn)貨日、總金額、業(yè)務(wù)員編號(hào)等。設(shè)計(jì)該數(shù)據(jù)表的主要目的是方便管理員的查看,使系統(tǒng)的數(shù)據(jù)管理能夠更加層次化。具體設(shè)置如表3.1所示:

表3.1buy表字段名數(shù)據(jù)類型說(shuō)明進(jìn)貨編號(hào)文本字段大小為20商品名稱文本字段大小為20生產(chǎn)廠商文本字段大小為20型號(hào)文本字段大小為20數(shù)量數(shù)字長(zhǎng)整型進(jìn)貨價(jià)貨幣貨幣進(jìn)貨年數(shù)字整型進(jìn)貨月數(shù)字整型進(jìn)貨日數(shù)字整型業(yè)務(wù)員編號(hào)文本字段大小為20總金額貨幣貨幣goods表(現(xiàn)存商品表)中包括有商品編號(hào)、生產(chǎn)廠商、商品名稱、型號(hào)、進(jìn)貨價(jià)、銷貨價(jià)、數(shù)量、進(jìn)貨年、進(jìn)貨月、進(jìn)貨日、業(yè)務(wù)員編號(hào)、總金額等字段。具體設(shè)置如表3.2所示:表3.2goods表字段名數(shù)據(jù)類型說(shuō)明商品編號(hào)文本字段大小為20商品名稱文本字段大小為20生產(chǎn)廠商文本字段大小為20型號(hào)文本字段大小為20數(shù)量數(shù)字長(zhǎng)整型進(jìn)貨價(jià)貨幣貨幣銷貨價(jià)貨幣貨幣sell表(銷貨表)中包括有銷貨編號(hào)、商品編號(hào)、商品名稱、生產(chǎn)廠商、型號(hào)、數(shù)量等字段。具體設(shè)置如表3.3所示:表3.3sell表字段名數(shù)據(jù)類型說(shuō)明銷貨編號(hào)文本字段大小為20商品編號(hào)文本字段大小為20商品名稱文本字段大小為20生產(chǎn)廠商文本字段大小為20型號(hào)文本字段大小為20數(shù)量數(shù)字長(zhǎng)整型retreat表(退貨表)中包括有退貨編號(hào)、銷貨編號(hào)、生產(chǎn)廠商、商品名稱、型號(hào)、單價(jià)、數(shù)量、總金額、退貨年、退貨月、退貨日、業(yè)務(wù)員編號(hào)等。具體設(shè)置如表3.4所示:表3.4retreat表字段名數(shù)據(jù)類型說(shuō)明退貨編號(hào)文本字段大小為20銷貨編號(hào)文本字段大小為20商品名稱文本字段大小為20生產(chǎn)廠商文本字段大小為20型號(hào)文本字段大小為20單價(jià)貨幣貨幣數(shù)量數(shù)字長(zhǎng)整型總金額貨幣貨幣退貨年數(shù)字整型退貨月數(shù)字整型退貨日數(shù)字整型業(yè)務(wù)員編號(hào)文本字段大小為20第四章詳細(xì)設(shè)計(jì)4.1開(kāi)發(fā)工具介紹4.1.1VISUALBASIC6.0VisualBasic作為當(dāng)今社會(huì)功能強(qiáng)大的可視化開(kāi)發(fā)工具具有以下幾大特點(diǎn):(1)成功的簡(jiǎn)化了界面的設(shè)計(jì)過(guò)程。(2)提供了多種向?qū)А?3)具有強(qiáng)大的數(shù)據(jù)和字符串處理功能。(4)提供了IntelliSense技術(shù)。4.1.2ACCESS數(shù)據(jù)庫(kù)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,MicrosoftFoxPro)和服務(wù)器、小型積極大型機(jī)上的許多SQL數(shù)據(jù)庫(kù)。Access還完全支持Microsoft的OLE技術(shù)。Access還提供windows操作系統(tǒng)的高級(jí)應(yīng)用程序開(kāi)發(fā)系統(tǒng)。Access與其它數(shù)據(jù)庫(kù)開(kāi)發(fā)系統(tǒng)之間相當(dāng)顯著的區(qū)別就是:不用寫一行代碼,就能夠在很短的時(shí)間里開(kāi)發(fā)出一個(gè)功能強(qiáng)大而且相當(dāng)專業(yè)的數(shù)據(jù)庫(kù)應(yīng)用程序,而且這一過(guò)程是完全可視的。如果能給它加上簡(jiǎn)短的VBA代碼,那么程序決不比專業(yè)程序員潛心開(kāi)發(fā)的程序差。4.1.3ADO技術(shù)ActiveDataObjects(ADO)微軟最新的數(shù)據(jù)庫(kù)訪問(wèn)技術(shù),它被設(shè)計(jì)用來(lái)同新的數(shù)據(jù)訪問(wèn)層OLEDBProvider一起協(xié)同工作,以提高通用數(shù)據(jù)訪問(wèn)(UniversalDataAccess).OLEDB是一個(gè)低層的數(shù)據(jù)訪問(wèn)接口,用它能夠訪問(wèn)各種數(shù)據(jù)源,包括傳統(tǒng)的關(guān)系型數(shù)據(jù)庫(kù),以及電子郵件系統(tǒng)及自定義的商業(yè)對(duì)象。ADO最重要的三個(gè)對(duì)象是:Connection,Command,Recordset。(1)Connection對(duì)象

Connection對(duì)象用于建立與數(shù)據(jù)庫(kù)的連接。經(jīng)過(guò)連接可從應(yīng)用程序訪問(wèn)數(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ǔ)過(guò)程時(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)行、添加、更改、刪除記錄。4.2系統(tǒng)主界面4.2.1登陸窗體一.設(shè)計(jì)思路:本窗口的主要作用是提供用戶一個(gè)登陸界面,需要用戶在相應(yīng)的對(duì)話框中輸入正確的用戶名和密碼之后才能夠正常登陸,而且根據(jù)系統(tǒng)的內(nèi)部設(shè)定來(lái)識(shí)別登陸用戶的具體操作權(quán)限,是操作員還是系統(tǒng)管理員。操作員則進(jìn)入操作員界面,管理員則進(jìn)入管理員界面。二.具體設(shè)計(jì):首先點(diǎn)擊工程菜單,選擇添加窗體,在新建工程內(nèi)添加一個(gè)空窗體,先在適當(dāng)位置畫出一個(gè)框架,然后在框架內(nèi)添加兩個(gè)標(biāo)簽控件和兩個(gè)文本框,然后把另一個(gè)標(biāo)簽和兩個(gè)命令按鈕畫在預(yù)定位置。設(shè)置各控件屬性,最后編寫源代碼。例如:將第二個(gè)標(biāo)簽控件控制名設(shè)為”Label4_Click”,Caption屬性設(shè)為”退出”,字體屬性設(shè)為”華文行楷”,Enabled和Visible屬性均設(shè)為”True”編寫按鈕單擊事件源代碼如下:PrivateSubLabel4_Click()UnloadMecnn.Close其界面如圖4.1所示:圖4.1登陸窗體輸入相應(yīng)的用戶名和密碼。如果用戶的密碼輸錯(cuò)錯(cuò)誤,則不能登錄到系統(tǒng)主窗體;如果用戶密碼正確,則進(jìn)入系統(tǒng)的MDI主窗體。代碼設(shè)計(jì):PrivateSubLabel3_Click()IfCombo1.Text=""ThenMsgBox"請(qǐng)輸入用戶名!",vbOKOnly+vbInformation,"注意"Combo1.SetFocusExitSubElseIfText1.Text=""ThenMsgBox"請(qǐng)輸入密碼!",vbOKOnly+vbInformation,"注意"Text1.SetFocusExitSub4.2.2系統(tǒng)主界面一.設(shè)計(jì)思路:本窗口的是系統(tǒng)的主要界面,在此界面下能夠根據(jù)不同的用戶權(quán)限來(lái)進(jìn)行相應(yīng)的菜單操作,操作員只能進(jìn)行交易管理,進(jìn)行普通的進(jìn)貨,銷售和退貨登記。系統(tǒng)管理員則可在此界面下進(jìn)行進(jìn)貨,銷售的統(tǒng)計(jì),以及察看各類數(shù)據(jù)。還能夠進(jìn)行系統(tǒng)管理。

二.具體設(shè)計(jì):首先點(diǎn)擊工具欄內(nèi)新建工程按鈕,新建一個(gè)工程,自動(dòng)產(chǎn)生了一個(gè)空窗體,在窗體上單擊右鍵,在彈出的菜單上點(diǎn)擊”菜單編輯器”命令,打開(kāi)菜單編輯器。按計(jì)劃設(shè)計(jì)好程序各級(jí)菜單。其界面如圖4.2所示:圖4.2系統(tǒng)主界面在主窗體中,設(shè)計(jì)了5項(xiàng)菜單,分別為”交易管理”、”進(jìn)貨統(tǒng)計(jì)”、”銷售統(tǒng)計(jì)”、”查看數(shù)據(jù)表”、”系統(tǒng)管理”。其中管理員權(quán)限包括進(jìn)貨統(tǒng)計(jì)、銷貨統(tǒng)計(jì)、查看數(shù)據(jù)表、系統(tǒng)管理。操作員權(quán)限只有交易管理。部分設(shè)計(jì)代碼如下:PrivateSubmnBuyMonth_Click()frmBuyall.Text2.Enabled=FalsefrmBuyall.SSTab1.Tab=1frmBuyall.SSTab1.TabEnabled(0)=FalsefrmBuyall.SSTab1.TabEnabled(1)=TruefrmBuyall.SSTab1.TabEnabled(2)=FalsefrmBuyall.SSTab1.TabEnabled(3)=FalsefrmBuyall.Showstrbuy="select*frombuywhere進(jìn)貨年="&inty&"and進(jìn)貨月="&intm&""rs_buy.Openstrbuy,cnn,adOpenKeyset,adLockPessimisticfrmBuyall.Adodc2.RecordSource=strbuyfrmBuyall.Adodc2.RefreshfrmBuyall.DataGrid2.ReBindIfrs_buy.EOF=TrueThenfrmBuyall.Adodc6.RecordSource=strbuyfrmBuyall.Adodc6.RefreshfrmBuyall.DataGrid6.ReBindMsgBox"您本月沒(méi)有進(jìn)貨記錄!",vbOKOnly+vbInformation,"注意"rs_buy.Closestrfctotal="select生產(chǎn)廠商,sum(總金額)as各廠商進(jìn)貨總金額frombuywhere進(jìn)貨年="&inty&"and進(jìn)貨月="&intm&"groupby生產(chǎn)廠商"rs_fctotal.Openstrfctotal,cnn,adOpenKeyset,adLockPessimisticfrmBuyall.Adodc6.RecordSource=strfctotalfrmBuyall.Adodc6.RefreshfrmBuyall.DataGrid6.ReBindrs_fctotal.Closestrtotal="selectsum(總金額)as進(jìn)貨總金額frombuywhere進(jìn)貨年="&inty&"and進(jìn)貨月="&intm&""rs_total.Openstrtotal,cnn,adOpenKeysetm,adLockPessimisticfrmBuyall.Text2.Text=rs_total.Fields("進(jìn)貨總金額")rs_total.CloseEndSub4.2.3進(jìn)貨登記模塊一.設(shè)計(jì)思路:在此模塊中操作員能夠進(jìn)行供貨廠商的登記以及進(jìn)貨商品的登記,每次進(jìn)貨都需要對(duì)商品名稱、生產(chǎn)廠商、商品型號(hào)、單價(jià)、數(shù)量、總金額、交易日期、經(jīng)手業(yè)務(wù)員編號(hào)等各項(xiàng)記錄。供貨廠商則需要對(duì)具體的聯(lián)系人廠商的名稱、地址、聯(lián)系電話進(jìn)行記錄。在登記過(guò)程中添加進(jìn)貨編號(hào)和廠商編號(hào)不允許重復(fù),但具體進(jìn)貨的商品編號(hào)是允許重復(fù)的。二.具體設(shè)計(jì):首先按設(shè)計(jì)添加窗體,添加2個(gè)框架,在框架里做好各控件的布局,設(shè)置相應(yīng)屬性,例如:將添加框架里面的添加入庫(kù)按鈕的caption屬性設(shè)置為"添加入庫(kù),backcolor屬性設(shè)置為&H00C0C其界面如圖4.3所示:圖4.3進(jìn)貨登記進(jìn)貨登記模塊中能夠進(jìn)行對(duì)所進(jìn)的商品的信息及生產(chǎn)廠商的相關(guān)信息的添加,清空等操作。其實(shí)現(xiàn)的部分代碼如下:下面是對(duì)進(jìn)貨表進(jìn)行添加記錄操作!str_buy="select*frombuywhere進(jìn)貨編號(hào)='"&Text1.Text&"'"rs_buy.Openstr_buy,cnn,adOpenStatic,adLockOptimistic'打開(kāi)進(jìn)貨表Ifrs_buy.EOF=TrueThenrs_buy.AddNewrs_buy.Fields("進(jìn)貨編號(hào)")=Text1.Textrs_buy.Fields("商品名稱")=Text3.Textrs_buy.Fields("生產(chǎn)廠商")=Text4.Textrs_buy.Fields("型號(hào)")=Text5.Textrs_buy.Fields("數(shù)量")=Val(Text6.Text)rs_buy.Fields("進(jìn)貨價(jià)")=Val(Text7.Text)rs_buy.Fields("進(jìn)貨年")=Text9.Textrs_buy.Fields("進(jìn)貨月")=Text10.Textrs_buy.Fields("進(jìn)貨日")=Text11.Textrs_buy.Fields("業(yè)務(wù)員編號(hào)")=Text12.Textrs_buy.Fields("總金額")=Val(Text13.Text)rs_buy.Updaters_buy.Close關(guān)閉進(jìn)貨表ElseMsgBox"此進(jìn)貨編號(hào)已存在,請(qǐng)重添!",vbOKOnly+vbInformation,"注意"Text1.Text=""Text1.SetFocusrs_buy.CloseExitSub'關(guān)閉進(jìn)貨表EndIf'下面是對(duì)商品庫(kù)存表進(jìn)行入庫(kù)操作!DimsqlAsStringsql="select*fromgoodswhere商品編號(hào)='"&Text2.Text&"'"rs_goods.Opensql,cnn,adOpenStatic,adLockOptimisticIfrs_goods.EOF=TrueThenrs_goods.Closestr_goods="select*fromgoods"rs_goods.Openstr_goods,cnn,adOpenStatic,adLockOptimistic'打開(kāi)庫(kù)存表rs_goods.AddNewrs_goods.Fields("商品編號(hào)")=Text2.Textrs_goods.Fields("商品名稱")=Text3.Textrs_goods.Fields("生產(chǎn)廠商")=Text4.Textrs_goods.Fields("型號(hào)")=Text5.Textrs_goods.Fields("數(shù)量")=Val(Text6.Text)rs_goods.Fields("進(jìn)貨價(jià)")=Val(Text7.Text)rs_goods.Fields("銷貨價(jià)")=Val(Text8.Text)rs_goods.UpdateMsgBox"商品入庫(kù)成功",vbOKOnly+vbExclamation,""rs_goods.Close'關(guān)閉庫(kù)存表Elsenumgoods=rs_goods.Fields("數(shù)量")rs_goods.Fields("數(shù)量")=Val(Text6.Text)+numgoodsrs_goods.UpdateMsgBox"商品入庫(kù)成功",vbOKOnly+vbExclamation,""關(guān)閉庫(kù)存表rs_goods.CloseEndIfEndSub4.2.4銷售登記模塊一.設(shè)計(jì)思路:在本模塊中操作員能夠進(jìn)行商品的銷售登記,操作時(shí)需要具體登記此次銷售記錄的編號(hào)和商品名稱、型號(hào)、銷售日期、業(yè)務(wù)員編號(hào)、總金額、銷售時(shí)間、商品編號(hào)、生產(chǎn)廠商、單價(jià)、數(shù)量。而且銷售編號(hào)不允許重復(fù)而且商品編號(hào)也必須是在進(jìn)貨登記時(shí)所添加過(guò)的,能在進(jìn)貨紀(jì)錄中查詢到的編號(hào),若是編號(hào)不存在則會(huì)提示非法操作。二.具體設(shè)計(jì):新添加一個(gè)窗體后,在窗體中添加標(biāo)簽:銷貨編號(hào)、商品名稱、型號(hào)、銷售日期、業(yè)務(wù)員編號(hào)、總金額、銷售時(shí)間、商品編號(hào)、生產(chǎn)廠商、單價(jià)、數(shù)量。分別設(shè)置好標(biāo)簽對(duì)應(yīng)的caption屬性.在添加2個(gè)命令按鈕。其界面如圖4.4所示:圖4.4銷售登記銷售登記模塊中對(duì)銷售的商品進(jìn)行相關(guān)信息的登記,并進(jìn)行銷售金額的計(jì)算。其部分設(shè)計(jì)代碼如下:PrivateSubCommand1_Click()IfText1.Text=""ThenMsgBox"請(qǐng)?zhí)顚戜N貨編號(hào)!",vbOKOnly+vbInformation,"注意"Text1.SetFocusExitSub ElseIfText2.Text=""ThenMsgBox"請(qǐng)?zhí)顚懮唐肪幪?hào)!",vbOKOnly+vbInformation,"注意"Text2.SetFocusExitSubEndIfstr_goods="select*fromgoodswhere商品編號(hào)='"&Text2.Text&"'"rs_goods.Openstr_goods,cnn,adOpenStatic,adLockOptimisticIfrs_goods.EOF=TrueThenMsgBox"對(duì)不起,此商品型號(hào)已無(wú)貨!請(qǐng)選擇其它型!",vbOKOnly+vbInformation,"注意"rs_goods.CloseExitSub4.2.5退貨登記模塊一.設(shè)計(jì)思路:在此模塊中操作員能夠?qū)τ脩敉嘶氐纳唐愤M(jìn)行登記,需要對(duì)退貨編號(hào)、商品名稱、型號(hào)、銷售日期、業(yè)務(wù)員編號(hào)、總金額、銷售日期、銷貨編號(hào)、生產(chǎn)廠商、單價(jià)、數(shù)量和商品編號(hào)逐一登記核對(duì)。在核對(duì)過(guò)程中需要查詢是否與銷售庫(kù)中的商品名稱、型號(hào)、總金額、銷售日期、銷貨編號(hào)、生產(chǎn)廠商、單價(jià)、數(shù)量和商品編號(hào)逐一核對(duì)若是有一項(xiàng)核對(duì)結(jié)果有誤則系統(tǒng)會(huì)提示無(wú)法進(jìn)行退貨操作。若是操作成功則會(huì)刪除相應(yīng)的銷售記錄。二.具體設(shè)計(jì):新建一個(gè)窗體,新添加一個(gè)窗體后,在窗體中添加標(biāo)簽:退貨編號(hào)、商品名稱、型號(hào)、銷售日期、業(yè)務(wù)員編號(hào)、總金額、銷售日期、銷貨編號(hào)、生產(chǎn)廠商、單價(jià)、數(shù)量和商品編號(hào)。分別設(shè)置好標(biāo)簽對(duì)應(yīng)的caption屬性.然后添加2個(gè)命令按鈕.其界面如圖4.5所示:圖4.5退貨登記退貨登記模塊對(duì)退貨的相關(guān)信息進(jìn)行記。如商品名、編號(hào)、價(jià)格、退貨員、數(shù)量,金額、時(shí)間等等進(jìn)行登記。其部分實(shí)代碼如下:PrivateSubCommand1_Click()IfText1.Text=""ThenMsgBox"請(qǐng)?zhí)顚懲素浘幪?hào)!",vbOKOnly+vbInformation,"注意"Text1.SetFocusExitSubElseIfText2.Text=""ThenMsgBox"請(qǐng)?zhí)顚戜N貨編號(hào)!",vbOKOnly+vbInformation,"注意"Text2.SetFocusExitSubElseIfText11.Text=""ThenMsgBox"請(qǐng)?zhí)顚懮唐窋?shù)量!",vbOKOnly+vbInformation,"注意"Text11.SetFocusExitSubEndIf'下面是對(duì)銷售表進(jìn)行操作!str_sell="select*fromsellwhere銷貨編號(hào)='"&Text2.Text&"'"rs_sell.Openstr_sell,cnn,adOpenStatic,adLockOptimisticIfrs_sell.EOF=TrueThenMsgBox"對(duì)不起,沒(méi)有銷售此商品型號(hào)!無(wú)法退貨!",vbOKOnly+vbInformation,"注意"rs_sell.CloseExitSubElseIfrs_sell.Fields("數(shù)量")<Val(Text11.Text)ThenMsgBox"對(duì)不起,退貨數(shù)量過(guò)大,無(wú)法退貨!",vbOKOnly+vbInformation,"注意"rs_sell.CloseExitSub4.2.6進(jìn)貨統(tǒng)計(jì)模塊一.設(shè)計(jì)思路:此模塊主要用于對(duì)商品每日、每月、每季度、每年的進(jìn)貨情況進(jìn)行統(tǒng)計(jì)管理,而且以列表的形勢(shì)進(jìn)行顯示。在列表中能夠?qū)M(jìn)貨紀(jì)錄逐一進(jìn)行查詢并對(duì)進(jìn)貨總金額進(jìn)行統(tǒng)計(jì)而且顯示。二.具體設(shè)計(jì):此窗體上設(shè)置八個(gè)命令按鈕,二個(gè)Adodc控件,二個(gè)Datagrid控件,一個(gè)標(biāo)簽控件和一個(gè)文本框,一個(gè)SSTab控件.首先按設(shè)計(jì)添加窗體,做好各控件的布局,設(shè)置相應(yīng)屬性,如:Datagrid控件名稱屬性設(shè)置為Datagrid1,DragMode屬性設(shè)置為0,控件SSTab1的caption屬性設(shè)置為"今日進(jìn)貨"等.其界面如圖4.6所示:圖4.6進(jìn)貨統(tǒng)計(jì)進(jìn)貨統(tǒng)計(jì)主要用于對(duì)商品每日、每月、每季度、每年的進(jìn)貨情況進(jìn)行統(tǒng)計(jì)管理,此功能只有以管理員的身份進(jìn)入時(shí)才為可用狀態(tài)。其部分設(shè)計(jì)代碼如下:PrivateSubForm_Load()inty=Year(Date)intm=Month(Date)intd=Day(Date)DimstrAsStringstr="Provider=Microsoft.Jet.OLEDB.4.0;DataSource="&App.Path&"\sellsystem.mdb;"'Adodc1的相對(duì)路徑連接Adodc1.ConnectionString=strAdodc1.CommandType=adCmdTextAdodc1.RecordSource="select*frombuywhere進(jìn)貨年="&inty&"and進(jìn)貨月="&intm&"and進(jìn)貨日="&intd&""Adodc1.RefreshSetDataGrid1.DataSource=Adodc1DataGrid1.Refresh'Adodc2的相對(duì)路徑連接Adodc2.ConnectionString=strAdodc2.CommandType=adCmdTextAdodc2.RecordSource="select*frombuywhere進(jìn)貨年="&inty&"and進(jìn)貨月="&intm&""Adodc2.RefreshSetDataGrid2.DataSource=Adodc2DataGrid2.Refresh4.2.7銷售統(tǒng)計(jì)模塊一.設(shè)計(jì)思路:此模塊主要用于對(duì)商品每日、每月、每季度、每年的銷售情況進(jìn)行統(tǒng)計(jì)管理,而且以列表的形勢(shì)進(jìn)行顯示。在列表中能夠?qū)M(jìn)貨紀(jì)錄逐一進(jìn)行查詢并對(duì)銷售總金額進(jìn)行統(tǒng)計(jì)而且顯示。二.具體設(shè)計(jì):本窗體上設(shè)置八個(gè)命令按鈕,二個(gè)Adodc控件,二個(gè)Datagrid控件,一個(gè)標(biāo)簽控件和一個(gè)文本框,一個(gè)SSTab控件.首先按設(shè)計(jì)添加窗體,做好各控件的布局,設(shè)置相應(yīng)屬性,如:Datagrid控件名稱屬性設(shè)置為Datagrid1,DragMode屬性設(shè)置為0,控件SSTab1的caption屬性設(shè)置為"今日銷貨"等.其界面如圖4.7所示:圖4.7銷售統(tǒng)計(jì)銷售統(tǒng)計(jì)主要用于對(duì)商品每日,每月,每季度,每年的進(jìn)銷存情況進(jìn)行統(tǒng)計(jì)管理,此功能只有以管理員的身份進(jìn)入時(shí)才為可用狀態(tài)。其部分設(shè)計(jì)代碼如下:PrivateSubForm_Load()inty=Year(Date)intm=Month(Date)intd=Day(Date)Text1.Enabled=FalseText2.Enabled=FalseText3.Enabled=FalseText4.Enabled=FalseDimstrAsStringstr="Provider=Microsoft.Jet.OLEDB.4.0;DataSource="&App.Path&"\sellsystem.mdb;"Adodc1.ConnectionString=strAdodc1.CommandType=adCmdTextAdodc1.RecordSource="select*fromsellwhere銷售年="&inty&"and銷售月="&intm&"and銷售日="&intd&""Adodc1.RefreshSetDataGrid1.DataSource=Adodc1DataGrid1.RefreshAdodc2.ConnectionString=strAdodc2.CommandType=adCmdTextAdodc2.RecordSource="select*fromsellwhere銷售年="&inty&"and銷售月="&intm&""Adodc2.RefreshSetDataGrid2.DataSource=Adodc2DataGrid2.Refresh4.2.8查看數(shù)據(jù)表功能模塊的設(shè)計(jì)一.設(shè)計(jì)思路:在這個(gè)功能模塊中,主要有如下幾個(gè)小功能模塊組成:查看進(jìn)貨表,查看超市庫(kù)存表,查看超市退貨表,查看銷售表,員工信息表等幾個(gè)功能。主要實(shí)現(xiàn)對(duì)超市的進(jìn)、存、銷進(jìn)行管理以及對(duì)超市員工的管理。這幾個(gè)功能都是以表格的形式來(lái)顯示相關(guān)的數(shù)據(jù)。在查看現(xiàn)成超市表中,采用搜索的功能,在表中填入相關(guān)的關(guān)鍵詞,就能查到相關(guān)的商品名,商品號(hào),生產(chǎn)商,條碼等信息。主要是采用SQL語(yǔ)言中的搜索,SELCET語(yǔ)句進(jìn)行關(guān)鍵字的搜索。在員工管理中,能夠?qū)τ脩艏坝脩舻南嚓P(guān)信息進(jìn)行添加或刪除。二.具體設(shè)計(jì):在新建的窗體上設(shè)置4個(gè)命令按鈕,在工程菜單欄中選擇部件(O)...在控件選項(xiàng)里把MicrosoftAdoDataControl6.0(OLEDB)和MicrosoftDataGridControl6.0(OLEDB)選中,并確定。此時(shí)一個(gè)Adodc控件和一個(gè)Datagrid控件便在工具箱中出現(xiàn)了,把它們拖到本窗體上,并進(jìn)行相應(yīng)的設(shè)置。進(jìn)貨表界面如圖4.8所示:圖4.8進(jìn)貨表庫(kù)存查詢界面如圖4.9所示:圖4.9庫(kù)存查詢銷售表界面如圖4.10所示:圖4.10銷售表退貨表界面如圖4.11所示:圖4.11退貨表員工信息表界面如圖4.12所示:圖4.12員工信息表進(jìn)貨商表界面如圖4.13所示:圖4.13進(jìn)貨商表這六個(gè)小功能模塊設(shè)計(jì)的部分代碼如下:PrivateSubCommand2_Click()'當(dāng)文本框?yàn)榭諘r(shí)的屏蔽操作IfText1.Text=""AndText2.Text=""ThenMsgBox"請(qǐng)輸入查詢條件!",vbOKOnly+vbInformation,""ExitSub EndIf'定義連接庫(kù)存表?xiàng)l件時(shí)的SQL條件句IfText1.Text=""AndText2.Text<>""Thenstrgoods="select*fromgoodswhere生產(chǎn)商='"&Text2.Text&"'"EndIfIfText1.Text<>""AndText2.Text=""Thenstrgoods="select*fromgoodswhere超市名稱='"&Text1.Text&"'"EndIfIfText1.Text<>""AndText2.Text<>""Thenstrgoods="select*fromgoodswhere超市名稱='"&Text1.Text&"'and生產(chǎn)商='"&Text2.Text&"'"EndIf4.2.9修改密碼模塊一.設(shè)計(jì)思路:本模塊提供管理員修改用戶的密碼只有輸入正確的用戶名和相應(yīng)的密碼后,才能設(shè)置新的密碼。而且新密碼要重復(fù)輸入兩次準(zhǔn)確無(wú)誤后新密碼才設(shè)置成功。二.具體設(shè)計(jì):在新建的窗體中添加一個(gè)框架,并在框架中添加四個(gè)標(biāo)簽和四個(gè)文本框.另外在窗體上添加2個(gè)命令按鈕,并進(jìn)行簡(jiǎn)單的屬性設(shè)置即可.如:設(shè)置好它們的對(duì)應(yīng)的Caption屬性.其界面如圖4.14:圖4.14修改密碼在這個(gè)模塊中,用戶能夠進(jìn)行自己密碼的修改,確保用戶信息和安全性。其部分設(shè)計(jì)代碼如下:PrivateSubCommand1_Click()IfText1.Text=""ThenMsgBox"請(qǐng)?zhí)顚懹脩裘?",vbOKOnly+vbInformation,"注意"Text1.SetFocusExitSubElseIfText2.Text=""ThenMsgBox"請(qǐng)?zhí)顚懺艽a!",vbOKOnly+vbInformation,"注意"Text2.SetFocusExitSubElseIfText3.Text=""ThenMsgBox"請(qǐng)?zhí)顚懶旅艽a!",vbOKOnly+vbInformation,"注意"Text3.SetFocusExitSubElseIfText4.Text=""ThenMsgBox"請(qǐng)?zhí)顚懶旅艽a!",vbOKOnly+vbInformation,"注意"Text4.SetFocusExitSub第五章軟件測(cè)試5.1軟件測(cè)試的概念及其意義軟件測(cè)試是程序的一種執(zhí)行過(guò)程,目的是盡可能發(fā)現(xiàn)并改正被測(cè)試軟件中的錯(cuò)誤,提高軟件的可靠性。它是軟件生命周期中一項(xiàng)非常重要且非常復(fù)雜的工作,對(duì)軟件可靠性保證具有極其重要的意義。在當(dāng)前形式化方法和程序正確性證明技術(shù)還無(wú)望成為實(shí)用性方法的情況下,軟件測(cè)試在將來(lái)相當(dāng)一段時(shí)間內(nèi)依然是軟件可靠性保證的有效方法。軟件工程的總目標(biāo)是充分利用有限的人力和物力資源,高效率、高質(zhì)量地完成軟件開(kāi)發(fā)項(xiàng)目。不足的測(cè)試勢(shì)必使軟件帶著一些未揭露的隱藏錯(cuò)誤投入運(yùn)行,這將意味著更大的危險(xiǎn)讓用戶承擔(dān)。過(guò)度測(cè)試則會(huì)浪費(fèi)許多寶貴的資源。到測(cè)試后期,即使找到了錯(cuò)誤,然而付出了過(guò)高的代價(jià)。程序測(cè)試只能表明錯(cuò)誤的存在,而不能表明錯(cuò)誤不存在??梢?jiàn),測(cè)試是為了使軟件中蘊(yùn)涵的缺陷低于某一特定值,使產(chǎn)出、投入比達(dá)到最大,出自文獻(xiàn)[14]。5.2軟件測(cè)試的目標(biāo)測(cè)試是為了發(fā)現(xiàn)程序中的錯(cuò)誤而執(zhí)行程序的過(guò)程;好的測(cè)試方案是極可能發(fā)現(xiàn)迄今為止尚未發(fā)現(xiàn)的錯(cuò)誤的測(cè)試方案;成功的測(cè)試是發(fā)現(xiàn)了至今為止尚未發(fā)現(xiàn)的錯(cuò)誤的測(cè)試。5.3本系統(tǒng)進(jìn)行軟件測(cè)試的方法由于已經(jīng)知道了本系統(tǒng)應(yīng)該具有的全部功能,因此我經(jīng)過(guò)檢驗(yàn)是否每個(gè)功能都能正常使用的測(cè)試方法即黑盒測(cè)試法來(lái)完成對(duì)本系統(tǒng)的軟件測(cè)試工作。黑盒測(cè)試又稱為功能測(cè)試,她把程序看成一個(gè)黑盒子,完全不考慮程序內(nèi)部結(jié)構(gòu)和處理過(guò)程,她是在程序接口進(jìn)行的測(cè)試,它只檢查程序功能是否按照規(guī)格說(shuō)明書(shū)的規(guī)定正常使用,程序是否能適當(dāng)?shù)亟邮茌斎霐?shù)據(jù)產(chǎn)生正確的輸出信息,并保持外部信息的完整性,出自文獻(xiàn)[14]。5.4軟件測(cè)試的過(guò)程(1)對(duì)交易管理模塊進(jìn)行測(cè)試:在進(jìn)貨登記窗體中,發(fā)現(xiàn)對(duì)于進(jìn)貨編號(hào)系統(tǒng)需要對(duì)其進(jìn)行唯一設(shè)定,即入庫(kù)登記時(shí)進(jìn)貨編號(hào)應(yīng)是buy(進(jìn)貨表)表中所沒(méi)有的。因此需要先屏蔽掉該處的非法操作。具體做法是:在窗體級(jí)變量中定義一個(gè)變量rs_buy,作為對(duì)buy(進(jìn)貨表)表的記錄集。讓記錄集連接到一個(gè)指定進(jìn)貨編號(hào)為進(jìn)貨登記窗體中文本框text2的text屬性的值的進(jìn)貨表記錄中,如果該記錄的編號(hào)與正在添加的進(jìn)貨信息中的進(jìn)貨編號(hào)一致,則提示用戶該編號(hào)已無(wú)法使用。如圖5.1所示:圖5.1提示框其實(shí)現(xiàn)主要代碼如下所示:Dimrs_buyAsNewADODB.Recordset‘定義連接buy表的記錄集Dimstr_buyAsString‘定義連接SQL的連接字符串PrivateSubCommand1_Click()‘單擊商品入庫(kù)按鈕事件str_buy="select*frombuywhere進(jìn)貨編號(hào)='"&Text1.Text&"'"rs_buy.Openstr_buy,cnn,adOpenStatic,adLockOptimisticIfrs_buy.EOF=TrueThenrs_buy.AddNewrs_buy.Fields("進(jìn)貨編號(hào)")=Text1.Text……’將進(jìn)貨信息添加到buy(進(jìn)貨表)表中rs_buy.Updaters_buy.Close'關(guān)閉進(jìn)貨表ElseMsgBox"此進(jìn)貨編號(hào)已存在,請(qǐng)重添!",vbOKOnly+vbInformation,"注意"Text1.Text=""Text1.SetFocusrs_buy.CloseExitSubEndIfEndSub對(duì)于進(jìn)貨信息入庫(kù)操作中,需要對(duì)商品編號(hào)進(jìn)行核對(duì),如果新輸入的商品編號(hào)為goods表所有,則直接將該添加信息的數(shù)量添加到goods表相對(duì)應(yīng)的記錄上即可。同時(shí)為了方便用戶的操作,在輸入商品編號(hào)的文本框text2的Change事件里設(shè)定了關(guān)于已存在商品編號(hào)的處理:將該商品的其它屬性自動(dòng)添加到該窗體的對(duì)應(yīng)文本框中。進(jìn)貨商信息的添加一樣需要屏蔽掉相同的廠商編號(hào)。在銷貨登記窗體中,銷貨編號(hào)也要保持其唯一性,具體做法與上面所說(shuō)的屏蔽進(jìn)貨編號(hào)大致一致,這里就不在說(shuō)明了。同時(shí)為了方便用戶的操作,在輸入商品編號(hào)的文本框text2的Change事件里設(shè)定了關(guān)于已存在商品編號(hào)的處理:將該商品的其它屬性自動(dòng)添加到該窗體的對(duì)應(yīng)文本框中。進(jìn)貨商信息的添加一樣需要屏蔽掉相同的廠商編號(hào)。在退貨登記窗體中,先對(duì)退貨編號(hào)的唯一性進(jìn)行一下設(shè)定,具體做法同進(jìn)貨編號(hào)唯一性的設(shè)定一致,這里也不在詳細(xì)說(shuō)明了。(2)對(duì)進(jìn)貨統(tǒng)計(jì)模塊的測(cè)試:由于本模塊中四個(gè)字菜單的窗體界面大致一致,因此我只對(duì)其一個(gè)界面的測(cè)試進(jìn)行一下介紹:在今日進(jìn)貨子菜單中,首先發(fā)現(xiàn)在buy表為空的時(shí)候,8個(gè)命令按鈕的點(diǎn)擊將產(chǎn)生非法操作,也就是記錄集無(wú)法實(shí)現(xiàn)上下移動(dòng)。具體修改操作如下:先定義一個(gè)窗體集的變量rs_buy,用來(lái)對(duì)進(jìn)貨表進(jìn)行操作,將該記錄集要打開(kāi)的SQL語(yǔ)句中添加一個(gè)buy表的打開(kāi)操作,如果打開(kāi)該窗體發(fā)現(xiàn)沒(méi)有記錄,則將8個(gè)Command命令按鈕的Enable屬性設(shè)為False。其它三個(gè)子菜單的測(cè)試也產(chǎn)生了同樣的錯(cuò)誤,也需要對(duì)3個(gè)子菜單中的8個(gè)Command命令按鈕進(jìn)行相對(duì)屏蔽,在這里就不詳細(xì)介紹了。其相關(guān)代碼如下

溫馨提示

  • 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ù)網(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)論