2023年全國(guó)碩士研究生考試考研英語(yǔ)一試題真題(含答案詳解+作文范文)_第1頁(yè)
已閱讀1頁(yè),還剩67頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、<p><b>  摘要</b></p><p>  本系統(tǒng)是實(shí)現(xiàn)一個(gè)超市運(yùn)營(yíng)管理管理的超市POS管理系統(tǒng),本系統(tǒng)分為前臺(tái)收銀系統(tǒng)和后臺(tái)管理系統(tǒng)兩部分,分做兩個(gè)項(xiàng)目開(kāi)發(fā)。</p><p>  前臺(tái)主要實(shí)現(xiàn)商品銷售功能,在輸入商品條碼后自動(dòng)從數(shù)據(jù)庫(kù)中獲取商品相關(guān)信息,完成銷售后,自動(dòng)將商品銷售信息保存到系統(tǒng)數(shù)據(jù)庫(kù)中。后臺(tái)管理系統(tǒng)主要實(shí)現(xiàn)用戶管理、商品管理、庫(kù)存

2、管理、銷售統(tǒng)計(jì)等功能。本系統(tǒng)采用Visual Basic 6.0中文版和 MS SQL 2000數(shù)據(jù)庫(kù)作為平臺(tái)進(jìn)行開(kāi)發(fā)。</p><p>  利用本系統(tǒng),中小型超市可以實(shí)現(xiàn)商品的收銀管理,庫(kù)存管理,銷售統(tǒng)計(jì)等功能,可以提高顧客的滿意度,節(jié)約人力物力,提高工作效率。</p><p>  關(guān)鍵字:POS管理系統(tǒng);收銀系統(tǒng);銷售功能;SQL </p><p><b&

3、gt;  目 錄</b></p><p><b>  摘要I</b></p><p><b>  1.緒論1</b></p><p>  1.1.課題的目的及意義1</p><p>  1.2.國(guó)內(nèi)外文獻(xiàn)綜述2</p><p><b>  

4、2系統(tǒng)分析3</b></p><p><b>  2.1需求分析3</b></p><p>  2.2開(kāi)發(fā)環(huán)境4</p><p>  2.3可行性分析5</p><p><b>  2.4 結(jié)論6</b></p><p>  3.系統(tǒng)概要設(shè)計(jì)7<

5、;/p><p>  3.1系統(tǒng)總體設(shè)計(jì)8</p><p>  3.2數(shù)據(jù)庫(kù)設(shè)計(jì)9</p><p>  4.系統(tǒng)詳細(xì)設(shè)計(jì)13</p><p>  4.1前臺(tái)收銀系統(tǒng)13</p><p>  4.2后臺(tái)管理系統(tǒng)設(shè)計(jì)17</p><p>  5.系統(tǒng)實(shí)現(xiàn)與測(cè)試27</p><

6、;p>  5.1前臺(tái)收銀程序測(cè)試27</p><p>  5.2后臺(tái)管理系統(tǒng)測(cè)試27</p><p>  5.3系統(tǒng)整體測(cè)試30</p><p><b>  6.結(jié)束語(yǔ)31</b></p><p><b>  參考文獻(xiàn)32</b></p><p><b&

7、gt;  致 謝33</b></p><p><b>  附 錄34</b></p><p>  A.主要源程序清單34</p><p>  B.用戶手冊(cè)57</p><p><b>  1.緒論</b></p><p>  隨著計(jì)算機(jī)技術(shù)的高速發(fā)展,

8、人們對(duì)計(jì)算機(jī)的依賴性越來(lái)越強(qiáng),特別是用計(jì)算機(jī)開(kāi)發(fā)的數(shù)據(jù)庫(kù)以及數(shù)據(jù)管理系統(tǒng)在生活應(yīng)用中表現(xiàn)得更為突出。</p><p>  使用計(jì)算機(jī)對(duì)商品的銷售進(jìn)行管理,具有檢索迅速、查找方便、可靠性高、存儲(chǔ)量大、保密性好等優(yōu)點(diǎn),這些優(yōu)點(diǎn)能夠極大的提高商品銷售的效率,也是企業(yè)科學(xué)化、正規(guī)化管理的重要條件。因此,開(kāi)發(fā)這樣一套超市POS管理系統(tǒng),通過(guò)使用超市POS管理系統(tǒng),使超市店的管理工作系統(tǒng)化、規(guī)范化、自動(dòng)化、簡(jiǎn)易化、智能化,從

9、而達(dá)到提高超市進(jìn)銷存管理效率的目的。</p><p><b>  課題的目的及意義</b></p><p><b>  課題研究目的</b></p><p>  隨著現(xiàn)代科學(xué)技術(shù)的迅猛發(fā)展,計(jì)算機(jī)技術(shù)已經(jīng)滲透到各個(gè)領(lǐng)域,成為各行業(yè)必不可少的工具,特別是Internet技術(shù)的推廣和信息高速公路的建立,使IT產(chǎn)業(yè)在市場(chǎng)競(jìng)爭(zhēng)中越

10、發(fā)顯示出其獨(dú)特的優(yōu)勢(shì),步入信息化時(shí)代,有巨大的數(shù)據(jù)信息等待加工處理和傳輸,這使得對(duì)數(shù)據(jù)庫(kù)的進(jìn)一步開(kāi)發(fā)和利用顯得尤為迫切。</p><p>  超市形態(tài)具有很多優(yōu)點(diǎn),但在目前狀況下,它仍存在零售企業(yè)所固有的落后的一面,如:不能有效地管理每種商品,收款結(jié)算速度慢,容易出現(xiàn)營(yíng)業(yè)差錯(cuò),不宜進(jìn)行商品調(diào)價(jià),盤點(diǎn)效率低等,而且在超市日常管理中,商品的進(jìn)、銷、存等決策以經(jīng)驗(yàn)為主,缺乏實(shí)時(shí)分析功能,管理人員對(duì)及時(shí)傳遞資料的要求始終

11、得不到滿足。隨著超市形態(tài)的高速發(fā)展,其經(jīng)營(yíng)管理也變得愈加復(fù)雜,日常所需要處理的數(shù)據(jù)量也逐漸擴(kuò)大,商業(yè)運(yùn)轉(zhuǎn)的中間環(huán)節(jié)也越來(lái)越多,原始的人工管理已無(wú)法應(yīng)對(duì)這復(fù)雜的市場(chǎng)。因此,需要開(kāi)發(fā)一套能夠使用超市現(xiàn)代化管理的系統(tǒng)。</p><p><b>  意義</b></p><p>  本課題目,依靠現(xiàn)代化的計(jì)算機(jī)信息處理技術(shù)來(lái)管理超市,從而節(jié)省了大量的人力、物力,改善了員工的工

12、作條件,減輕了勞動(dòng)強(qiáng)度,并且能夠快速反映出商品的進(jìn)、銷、存等狀況和各種反饋信息分析,使管理人員快速對(duì)市場(chǎng)的變化做出相應(yīng)的決策,加快超市經(jīng)營(yíng)管理效率。提高顧客的滿意度顧和企業(yè)形象,為消費(fèi)者提供更加滿意的服務(wù)。 </p><p><b>  國(guó)內(nèi)外文獻(xiàn)綜述</b></p><p><b>  國(guó)外情況</b></p><p>

13、  信息管理系統(tǒng)(MIS)是一個(gè)由人、計(jì)算機(jī)及其他外圍設(shè)備等組成的能進(jìn)行信息的收集、傳遞、存貯、加工、維護(hù)和使用的系統(tǒng)是一門新興的科學(xué),其主要任務(wù)是最大限度的利用現(xiàn)代計(jì)算機(jī)及網(wǎng)絡(luò)通訊技術(shù)加強(qiáng)企業(yè)的信息管理,通過(guò)對(duì)企業(yè)擁有的人力、物力、財(cái)力、設(shè)備、技術(shù)等資源的調(diào)查了解,建立正確的數(shù)據(jù),加工處理并編制成各種信息資料及時(shí)提供給管理人員,以便進(jìn)行正確的決策,不斷提高企業(yè)的管理水平和經(jīng)濟(jì)效益。國(guó)外信息管理系統(tǒng)(MIS)在超市等零售企業(yè)中已經(jīng)有相當(dāng)

14、長(zhǎng)的歷史。</p><p><b>  國(guó)內(nèi)情況</b></p><p>  隨著超市高速的發(fā)展,其經(jīng)營(yíng)管理也變得愈加復(fù)雜,早期的售貨員站柜臺(tái)的形式早已不能滿足現(xiàn)有銷售也的發(fā)展。在我國(guó)超市形成在20世紀(jì)90年代初期,現(xiàn)在已經(jīng)成為我國(guó)零售業(yè)的一種重要形態(tài),為國(guó)民經(jīng)濟(jì)的發(fā)展起發(fā)揮了極大的作用。</p><p>  開(kāi)發(fā)應(yīng)用現(xiàn)代化的超市銷售管理系統(tǒng)在

15、我國(guó)有相當(dāng)廣闊的市場(chǎng)前景。</p><p><b>  2系統(tǒng)分析</b></p><p><b>  2.1需求分析</b></p><p>  通過(guò)與超市負(fù)責(zé)人,銷售經(jīng)理,各連鎖店負(fù)責(zé)人以及超市收銀員等進(jìn)行溝通,詳細(xì)了解了本系統(tǒng)的需求。</p><p><b>  2.1.1概述<

16、;/b></p><p>  本系統(tǒng)主要為超市等零售型企業(yè)解決一下主要問(wèn)題:超市收銀員通過(guò)掃描或手工輸入商品條形碼,系統(tǒng)自動(dòng)從數(shù)據(jù)庫(kù)中調(diào)出該商品的信息,并對(duì)顧客購(gòu)買的所有商品進(jìn)行匯總,完成收銀。超市管理人員通過(guò)對(duì)后臺(tái)數(shù)據(jù)更新,來(lái)完成新商品的上架。通過(guò)對(duì)庫(kù)存功能的使用,了解商品的庫(kù)存狀況。通過(guò)銷售功能使用,來(lái)了解商品銷售。</p><p>  2.1.2前臺(tái)需求分析</p>

17、<p>  1.使用密碼來(lái)控制收銀員登錄;</p><p>  2.操作盡量簡(jiǎn)單,可在無(wú)鼠標(biāo)狀態(tài)下完成操作;</p><p>  3.支持條碼的手工輸入與掃描器掃描;</p><p>  4.商品單價(jià)等信息自動(dòng)從數(shù)據(jù)中獲??;</p><p>  5.能查詢當(dāng)班當(dāng)天銷售金額用于對(duì)賬;</p><p>  

18、2.1.3后臺(tái)需求分析</p><p>  1.方便快捷的管理銷售商品信息;</p><p>  2.管理進(jìn)貨計(jì)劃、商品進(jìn)貨入庫(kù);</p><p>  3.可以設(shè)置促銷價(jià)格時(shí)間、允許禁止商品銷售;</p><p>  4.可以對(duì)銷售狀況進(jìn)行統(tǒng)計(jì);</p><p>  5.界面簡(jiǎn)潔、框架清晰、美觀大方;</p>

19、;<p>  2.1.4性能需求分析</p><p>  1.程序能夠在復(fù)雜環(huán)境下穩(wěn)定運(yùn)行</p><p>  2.數(shù)據(jù)計(jì)算要準(zhǔn)確有效</p><p>  3.數(shù)據(jù)存儲(chǔ)要安全有效,防止非法用戶獲得數(shù)據(jù)</p><p><b>  開(kāi)發(fā)環(huán)境</b></p><p>  本設(shè)計(jì)軟件開(kāi)發(fā)共

20、分為兩大部分:前臺(tái)收銀系統(tǒng)和后臺(tái)管理系統(tǒng)。運(yùn)行環(huán)境為windows xp/2003操作系統(tǒng)。</p><p>  本系統(tǒng)采用Visual Basic 6.0中文企業(yè)版和MS SQL 2000 企業(yè)版數(shù)據(jù)庫(kù)系統(tǒng)進(jìn)行開(kāi)發(fā)。Visual Basic 6.0 + MS SQL 2000開(kāi)發(fā)環(huán)境,是非常成熟的開(kāi)發(fā)平臺(tái),能夠保證程序開(kāi)發(fā)環(huán)境的穩(wěn)定有效。</p><p><b>  2.3可行

21、性分析</b></p><p>  2.3.1經(jīng)濟(jì)可行性分析</p><p>  因?yàn)橥ㄟ^(guò)網(wǎng)絡(luò)傳遞銷售信息可以不受距離的限制,因此可以節(jié)約許多的人力和物力,減少了以往入出存流程繁瑣,雜亂,周期長(zhǎng)的弊端,可以減少入庫(kù)管理、出庫(kù)管理及庫(kù)存管理中的漏洞,可以節(jié)約不少管理開(kāi)支,增加企業(yè)的收入,方便了管理,由此可以減少不必要的開(kāi)支,同時(shí)該系統(tǒng)可以提高超市的銷售效率,即提高了超市的經(jīng)濟(jì)效益

22、,所以從經(jīng)濟(jì)上完全是可行的。開(kāi)發(fā)新系統(tǒng)的工作是一項(xiàng)艱巨復(fù)雜的工作,它的投資主要是人力和物力的投資。對(duì)于本系統(tǒng)的開(kāi)發(fā)者來(lái)說(shuō),其主要的投資還是在人力和物力兩個(gè)方面。如果是企業(yè)自己安排人手開(kāi)發(fā)系統(tǒng)的話,其主要的投資還是在人力資源上,從系統(tǒng)的業(yè)務(wù)需求調(diào)查到系統(tǒng)的分析編碼制作都是需要巨大的人力投入的。軟件企業(yè)作為一個(gè)先進(jìn)的高科技產(chǎn)業(yè),其員工要求都比一般企業(yè)的要求要高,而且對(duì)系統(tǒng)開(kāi)發(fā)及軟件產(chǎn)業(yè)了解比較多,所以在自我開(kāi)發(fā)管理系統(tǒng)的過(guò)程中,企業(yè)自己比較

23、容易安排人手,這樣就可以為企業(yè)節(jié)約大部分的額外開(kāi)支。同時(shí)軟件就其它產(chǎn)品來(lái)說(shuō),屬于高端行業(yè),無(wú)論是產(chǎn)品的價(jià)格還是質(zhì)量都比較高,而經(jīng)營(yíng)產(chǎn)品的經(jīng)銷商或者是商家都要求有雄厚的資金支持。所以,在系統(tǒng)的開(kāi)發(fā)過(guò)程中,企業(yè)完全有能力承擔(dān)開(kāi)發(fā)費(fèi)用。</p><p>  2.3.2技術(shù)可行性分析</p><p>  本系統(tǒng)使用Visual Basic 6.0 + MS SQL 2000 作為開(kāi)發(fā)環(huán)境,這是非常

24、成熟的開(kāi)發(fā)平臺(tái),在業(yè)界已經(jīng)有相當(dāng)多的成功開(kāi)發(fā)案例可供參考,開(kāi)發(fā)者具有類似開(kāi)發(fā)經(jīng)驗(yàn),可以在規(guī)定時(shí)間內(nèi)完成系統(tǒng)開(kāi)發(fā)設(shè)計(jì)。</p><p>  本系統(tǒng)操作界面簡(jiǎn)單,一般超市員工都具有一定的計(jì)算機(jī)基礎(chǔ)知識(shí),只要對(duì)員工進(jìn)行少量的培訓(xùn),在掌握了系統(tǒng)的功能和使用方法時(shí),就基本上能夠使系統(tǒng)順利的運(yùn)行,為超市提供服務(wù)。因此,在現(xiàn)有的技術(shù)條件下是可以實(shí)現(xiàn)本設(shè)計(jì)的。</p><p>  2.3.3社會(huì)因素分析&

25、lt;/p><p>  本系統(tǒng)完全獨(dú)立開(kāi)發(fā)設(shè)計(jì),是按照完全獨(dú)立的開(kāi)發(fā)體系結(jié)構(gòu)進(jìn)行的,在法律方面沒(méi)有任何侵權(quán)行為,符合相關(guān)法律法規(guī)規(guī)定。</p><p><b>  2.4 結(jié)論</b></p><p>  根據(jù)以上分析,本項(xiàng)目在技術(shù)上沒(méi)有問(wèn)題,開(kāi)發(fā)時(shí)間充裕。經(jīng)濟(jì)和社會(huì)因素上完全可行。因此認(rèn)為該項(xiàng)目可以開(kāi)發(fā)。</p><p>

26、<b>  3.系統(tǒng)概要設(shè)計(jì)</b></p><p>  本系統(tǒng)主要由兩部分構(gòu)成,為前臺(tái)收銀系統(tǒng)和后臺(tái)管理系統(tǒng)。數(shù)據(jù)存采用MS SQL Server 2000 數(shù)據(jù)庫(kù)存儲(chǔ)。</p><p>  前臺(tái)收銀系統(tǒng)應(yīng)用于超市收銀結(jié)算,主要使用人員為超市收銀員。前臺(tái)收銀系統(tǒng)的主要功能有用戶登錄、錄入商品、掛單取單、賬務(wù)查詢等。超市前臺(tái)收銀管理系統(tǒng)結(jié)構(gòu)圖如 圖 3.1所示。<

27、;/p><p>  圖 3.1前臺(tái)收銀系統(tǒng)結(jié)構(gòu)圖</p><p>  后臺(tái)管理系統(tǒng)主要使用對(duì)象為超市管理人員,主要功能有用戶管理、商品管理、進(jìn)貨管理、銷售管理、廠商/供貨商管理等功能。超市后臺(tái)管理系統(tǒng)結(jié)構(gòu)圖如圖3.2所示。</p><p>  圖 3.2超市后臺(tái)管理系統(tǒng)</p><p><b>  3.1系統(tǒng)總體設(shè)計(jì)</b>

28、</p><p>  3.1.1設(shè)計(jì)的指導(dǎo)思想</p><p>  (1)系統(tǒng)分成幾個(gè)相對(duì)獨(dú)立的模塊,但這些模塊都進(jìn)行集中式管理。</p><p>  (2)分層的模塊化程序設(shè)計(jì)思想,整個(gè)系統(tǒng)采用模塊化結(jié)構(gòu)設(shè)計(jì)。作為應(yīng)用程序有較強(qiáng)的可操作性和擴(kuò)展性。</p><p>  (3)合理的數(shù)據(jù)流設(shè)計(jì),在應(yīng)用系統(tǒng)設(shè)計(jì)中,相對(duì)獨(dú)立的模塊間以數(shù)據(jù)流相互連

29、接,使各模塊間的耦合性較低,方便系統(tǒng)運(yùn)行,提高系統(tǒng)安全性。</p><p>  3.1.2功能模塊劃分</p><p><b>  設(shè)計(jì)分為兩個(gè)部分:</b></p><p>  前臺(tái)POS收銀系統(tǒng):通過(guò)輸入商品編碼完成收銀等工作。</p><p>  后臺(tái)管理系統(tǒng):完成商品管理、銷售管理、庫(kù)存管理等功能。</p&

30、gt;<p><b>  3.2數(shù)據(jù)庫(kù)設(shè)計(jì)</b></p><p>  在本系統(tǒng)中,需要保存大量的數(shù)據(jù)(包括商品信息、供應(yīng)商信息、廠商信息、銷售信息、庫(kù)存信息等),通過(guò)使用數(shù)據(jù)庫(kù)技術(shù),將這些數(shù)據(jù)保存到數(shù)據(jù)庫(kù)中,可以方便對(duì)這些數(shù)據(jù)的管理。本系統(tǒng)的前臺(tái)收銀系統(tǒng)與后臺(tái)管理系統(tǒng)共用一個(gè)數(shù)據(jù)庫(kù),下面介紹數(shù)據(jù)庫(kù)的主要內(nèi)容。</p><p><b>  3.

31、2.1數(shù)據(jù)分析</b></p><p>  本系統(tǒng)采用VB6+MS SQL Server 2000數(shù)據(jù)庫(kù)構(gòu)成,本項(xiàng)目選擇使用MS SQL Server 2000 數(shù)據(jù)庫(kù)的主要原因有:</p><p> ?。?)MS SQL Server 2000 作為一個(gè)大型數(shù)據(jù)庫(kù)系統(tǒng),具備現(xiàn)代數(shù)據(jù)庫(kù)管理系統(tǒng)所要求的各種強(qiáng)大功能。</p><p> ?。?)本項(xiàng)目需要保

32、存海量數(shù)據(jù),使用MS SQL Server 2000可以完成對(duì)海量數(shù)據(jù)進(jìn)行安全、快速保存、查詢操作。</p><p>  (3)MS SQL Server 2000 支持客戶機(jī)/服務(wù)器的結(jié)構(gòu),可以方便的將數(shù)據(jù)庫(kù)部署到企業(yè)機(jī)房中,各收銀機(jī)只運(yùn)行前臺(tái)收銀系統(tǒng)即可。</p><p>  3.2.2數(shù)據(jù)項(xiàng)及數(shù)據(jù)結(jié)構(gòu)</p><p>  本設(shè)計(jì)中部分主要表如下:</p&

33、gt;<p>  1.user表(操作員表)</p><p>  該表用于存儲(chǔ)用戶的登錄用戶名、密碼、權(quán)限的相關(guān)信息。</p><p>  2.googs表(商品表)</p><p>  該表用戶保存超市銷售商品的編號(hào)、單價(jià)、數(shù)量、條形碼等信息。</p><p>  sale表(銷售表)</p><p>

34、  該表主要用來(lái)保存商品的銷售時(shí)間、商品編號(hào)、銷售日期、數(shù)量、單價(jià)、銷售單號(hào)、收銀員等信息。</p><p>  4.stock表(進(jìn)貨信息表)</p><p>  該表主要用于保存進(jìn)貨計(jì)劃和進(jìn)貨數(shù)據(jù)的商品編號(hào)、數(shù)量、單價(jià)、金額、狀態(tài)等信息。</p><p>  3.2.3數(shù)據(jù)庫(kù)邏輯結(jié)構(gòu)設(shè)計(jì)</p><p>  在本系統(tǒng)中,共使用了10張表:

35、分別是user(操作員)表、goods(商品)表、sale(銷售)表、saletemp(臨時(shí)銷售)表、pso_base(超市信息)表、factory(廠商)表、provide(供應(yīng)商)表、stock(進(jìn)貨信息)表、stcoktemp(進(jìn)貨信息表)。下面列出主要表的字段作用。</p><p>  1. user (操作員):用戶保存允許使用本系統(tǒng)的操作員(收銀員)信息。該表包括4個(gè)字段,分別用來(lái)保存一個(gè)操作員的名稱

36、、密碼、用戶類型等相關(guān)信息,各字段的參數(shù)如表3.1 所示。</p><p>  表 3.1 user (操作員)表</p><p>  2. goods (商品)表:用于保存超市銷售商品信息。該表包括15個(gè)字段,分別用來(lái)保存商品的編號(hào)、名稱、單價(jià)、數(shù)量、條形碼等信息,各字段的參數(shù)如表3.2 所示。</p><p>  表3-2 goods(商品)表</p>

37、;<p>  3.Sale(銷售)表:用戶保存商品的每筆銷售數(shù)據(jù)。該表包含7個(gè)字段,分別用來(lái)保存商品序號(hào)、商品編碼、銷售日期、數(shù)量、單價(jià)、銷售單號(hào)、收銀員。</p><p>  表3-3 Sale(銷售)表</p><p>  4.stock(進(jìn)貨信息)表:用于保存進(jìn)貨計(jì)劃和進(jìn)貨的數(shù)據(jù)。該表包括8個(gè)字段,分別用于保存商品編號(hào)、數(shù)量、單價(jià)、金額、日期、等信息,各字段的參數(shù)如表3

38、-4所示。</p><p>  表3-4 stcok(進(jìn)貨信息)表</p><p><b>  4.系統(tǒng)詳細(xì)設(shè)計(jì)</b></p><p>  本設(shè)計(jì)主要分為兩部分,其中一部分為前臺(tái)收銀管理系統(tǒng),另一部分為后臺(tái)管理系統(tǒng)。</p><p><b>  4.1前臺(tái)收銀系統(tǒng)</b></p>&

39、lt;p>  前臺(tái)收銀系統(tǒng)運(yùn)行于收銀POS機(jī)種,該系統(tǒng)可以實(shí)現(xiàn)超市商品銷售中的收銀計(jì)算功能。</p><p>  4.1.1登錄界面設(shè)計(jì)</p><p>  登錄窗體用來(lái)驗(yàn)證用戶身份,為了方便收銀員快速登錄,該窗體將所有合法用戶的名稱添加到“用戶名”組合框中,供用戶選擇,以減少用戶的輸入量。</p><p>  登錄窗體frmLogin 如圖 4.1所示,該窗

40、體各控件的屬性如表4.1所示。</p><p><b>  圖 4.1登錄窗體</b></p><p>  表4.1“登錄”窗體屬性表</p><p>  用戶選擇下拉框中的用戶名后,鍵入密碼,單擊登錄按鈕,系統(tǒng)自動(dòng)驗(yàn)證用戶輸入的密碼是否與數(shù)據(jù)庫(kù)中保持的密碼一致。如果密碼正確,則登錄成功,進(jìn)入收銀主界面。若密碼錯(cuò)誤,提示用戶密碼不正確,重新進(jìn)行

41、密碼輸入。</p><p>  4.1.2收銀主窗體設(shè)計(jì)</p><p>  收銀主窗體是前臺(tái)系統(tǒng)最主要的界面,系統(tǒng)中的大部分操作都在此窗體中完成。下面介紹主窗體的設(shè)計(jì)過(guò)程。</p><p>  收銀主窗體如圖4.2所示,左上角的大部分是一個(gè)表格,用來(lái)顯示已經(jīng)輸入的商品信息。右側(cè)的“合計(jì)”顯示出左側(cè)表格中各種商品的金額,“條碼”輸入部分用來(lái)掃描或輸入商品條碼,然后由

42、系統(tǒng)自動(dòng)查詢?cè)撋唐返膯蝺r(jià),自動(dòng)添加到左側(cè)表格中,等待用戶輸入下一商品的條碼。</p><p>  圖 4.2收銀主窗體</p><p>  在窗體的下方有一個(gè)“上單收款”框架,顯示上一單的收款情況,因?yàn)榇蛴∈浙y小票返回后,系統(tǒng)將自動(dòng)進(jìn)入新的一單收款狀態(tài),通過(guò)“上單收款”框架可以了解上一單的情況,以便方便和顧客對(duì)賬。</p><p>  而窗體下面的一排按鈕,分別用來(lái)

43、完成不同的工作,因?yàn)橐话鉖OS機(jī)都不用鼠標(biāo),因此為每個(gè)按鈕都設(shè)置了一個(gè)功能鍵作為快捷鍵,在按鈕的標(biāo)題文字中有提示。下面先介紹一下各按鈕的作用。</p><p>  1)完成[SPACE]:當(dāng)完成顧客所有商品輸入后,按空格鍵即可彈出“打印”窗體,收錢找零,打印收銀小票,完成一單收銀過(guò)程。</p><p>  2)條碼[F2]:當(dāng)進(jìn)行了其他操作鼠標(biāo)焦點(diǎn)沒(méi)有回到“條碼/簡(jiǎn)碼”按鈕文本框中時(shí),按快

44、捷鍵“F2”可以將輸入焦點(diǎn)定位到“條碼/簡(jiǎn)碼”文本框,等待輸入下一商品條碼。</p><p>  3)作廢[F3]:作廢當(dāng)前輸入的所有商品,重新開(kāi)始輸入新的內(nèi)容。</p><p>  掛單[F4]:當(dāng)一個(gè)顧客購(gòu)買完的商品還未錄入完成,又需要錄入另一個(gè)顧客的商品時(shí),按快捷鍵“F4”可對(duì)為輸入完的銷售單進(jìn)行掛單處理。</p><p>  4)取單[F5]:當(dāng)需要對(duì)已掛單

45、的銷售單進(jìn)行收銀時(shí),按快捷鍵“F5”可以打開(kāi)“取單”窗體,從中選擇要取出的單,即可繼續(xù)對(duì)掛單進(jìn)行收銀。</p><p>  5)財(cái)務(wù)[F6]:按快捷鍵“F6”可以查看收銀員當(dāng)日收銀金額。</p><p>  4.1.3結(jié)賬打印窗體 </p><p>  在收銀主窗體中輸入完一個(gè)顧客購(gòu)買的商品后,按空格鍵可以顯示“結(jié)賬打印”窗體,該窗體如圖4.3所示,在該窗體中將顯示

46、應(yīng)收金額,收銀員在“收款”文本框中輸入顧客預(yù)付金額后,下方的“找零”文本框自動(dòng)計(jì)算找零金額。如果文本框中輸入的金額小于應(yīng)收款時(shí),系統(tǒng)彈出提示“實(shí)收金額小于商品金額”。單擊“打印[ENTER]”按鈕或按回車鍵將打印收銀小票。</p><p>  圖4.3 結(jié)賬打印窗體</p><p>  4.1.4取單窗體設(shè)計(jì)</p><p>  “取單”窗體用來(lái)從掛單的數(shù)據(jù)表中取出

47、需要繼續(xù)收銀的銷售單,該窗體如圖4.4所示,在該窗體中還將顯示所有掛單的商品數(shù)據(jù),收銀員在表中用鍵盤的上下光標(biāo)鍵移動(dòng)選擇,下方的文本框中將顯示選中商品的單號(hào)。一個(gè)銷售單中可能會(huì)有多個(gè)商品顯示在表格中,只要選中其中一個(gè)商品后,單擊“提取[ENTER]”按鈕或按回車鍵即可提取該商品所在的銷售單的所有數(shù)據(jù),并顯示到收銀主窗體中。</p><p><b>  圖4.4 取單窗體</b></p&

48、gt;<p>  4.2后臺(tái)管理系統(tǒng)設(shè)計(jì)</p><p>  后臺(tái)管理系統(tǒng)可以實(shí)現(xiàn)系統(tǒng)用戶管理、商品管理、進(jìn)貨管理、銷售管廠商管理和供貨商管理等功能。</p><p>  4.2.1設(shè)計(jì)主窗體</p><p>  超市POS后臺(tái)管理系統(tǒng)有菜單驅(qū)動(dòng),將菜單設(shè)計(jì)到主窗體中,用戶通過(guò)菜單調(diào)用各子模塊完成相應(yīng)的功能。</p><p> 

49、 主窗體主要用來(lái)集成本系統(tǒng)的菜單,并在下方顯示一個(gè)狀態(tài)欄,添加了菜單后的主窗體如圖4.5所示,各控件屬性如表4.2所示。</p><p><b>  圖4.5 主窗體</b></p><p>  選擇菜單“工具/菜單編輯器”命令,打開(kāi)“菜單編輯器”對(duì)話框,逐個(gè)創(chuàng)建系統(tǒng)的菜單,如圖4.6所示。</p><p>  圖4.6 菜單編輯器</p

50、><p>  表4.2 應(yīng)用程序菜單表</p><p>  4.2.2商品管理模塊設(shè)計(jì)</p><p>  “商品管理”模塊用來(lái)管理超市銷售的所有商品的數(shù)據(jù)。通過(guò)該模塊可以添加、修改、刪除商品資料,可設(shè)置禁止或允許某件商品的銷售,可設(shè)置商品的促銷、打折。該模塊用三個(gè)窗體來(lái)完成相應(yīng)的功能。</p><p><b>  1)商品管理<

51、/b></p><p>  “商品管理”窗體如圖4.7所示,該窗體分頁(yè)顯示系統(tǒng)中已有的資料商品,可以通過(guò)上方的三個(gè)按鈕添加、修改、刪除商品資料,也可通過(guò)右側(cè)各框架查詢、過(guò)濾,使左側(cè)列表中只顯示部分商品資料,通過(guò)右下角大的三個(gè)按鈕可以允許/禁止商品銷售、可提交選中商品的進(jìn)貨計(jì)劃。</p><p><b>  圖4.7商品管理</b></p><

52、p>  當(dāng)系統(tǒng)中的商品數(shù)量較多時(shí),可以使用右側(cè)“商品查找”框架中的控件查詢指定商品的信息。在“商品查詢”的三個(gè)文本框中輸入查詢(可同時(shí)輸入一個(gè)或多個(gè)條件),然后單擊“查找”按鈕,即可在左側(cè)表格中顯示指定條件的商品信息。</p><p>  在“商品過(guò)濾”框架中有3個(gè)組合框,通過(guò)這3個(gè)組合框可設(shè)置不同的過(guò)濾條件(如顯示指定廠商的商品、顯示指定供應(yīng)商的商品、顯示指定狀態(tài)的商品)。在窗體右上角有4個(gè)導(dǎo)航按鈕,可在

53、分頁(yè)顯示的記錄集中進(jìn)行導(dǎo)航。</p><p><b>  2)添加商品 </b></p><p>  在“商品管理”窗體中單擊“添加按鈕”,將打開(kāi)如圖4.8所示的“添加商品”窗體,另外,在“商品管理”窗體中選中商品后單擊“修改”按鈕也將打開(kāi)窗體,對(duì)商品的數(shù)據(jù)進(jìn)行修改。</p><p>  在“添加商品”窗體中輸入商品的各種信息,并可以在窗體右側(cè)

54、設(shè)置商品的銷售狀態(tài)、促銷情況等數(shù)據(jù)。</p><p><b>  圖4.8 添加商品</b></p><p><b>  3)計(jì)劃進(jìn)貨</b></p><p>  在“商品管理”窗體中選中一個(gè)或多個(gè)準(zhǔn)備進(jìn)貨的商品后,單擊右側(cè)的“提交進(jìn)貨”按鈕,將打開(kāi)如圖4.9所示的“計(jì)劃進(jìn)貨”窗體。在該窗體的ListView控件中將顯示計(jì)

55、劃進(jìn)貨大的商品信息,選中某個(gè)商品后,可以在下方的文本框中修改計(jì)劃進(jìn)貨的數(shù)量和日期,單擊“確定”按鈕將保存計(jì)劃進(jìn)貨的情況。</p><p>  “計(jì)劃進(jìn)貨”窗體frmPlanStock各控件的屬性如表 4.3所示</p><p><b>  圖4.9 計(jì)劃進(jìn)貨</b></p><p>  表4.3 計(jì)劃進(jìn)貨窗體控件屬性表</p>&

56、lt;p>  4.2.3進(jìn)貨管理模塊設(shè)計(jì)</p><p>  “進(jìn)貨管理”模塊用來(lái)管理超市的進(jìn)貨情況。該模塊由兩個(gè)窗體組成,主窗體為“進(jìn)貨管理”,可以顯示計(jì)劃進(jìn)貨的列表,單擊其中的”入庫(kù)”按鈕將顯示“入庫(kù)”窗體。</p><p><b>  進(jìn)貨管理</b></p><p>  “進(jìn)貨管理”窗體運(yùn)行效果如圖4.10所示,表格中顯示的是計(jì)劃

57、進(jìn)貨的商品,可以通過(guò)上方的按鈕添加、修改、刪除計(jì)劃進(jìn)貨商品。選中某個(gè)商品后,單擊“入庫(kù)”按鈕將打開(kāi)“入庫(kù)”對(duì)話框,可以完成商品的入庫(kù)操作。單擊“報(bào)表”按鈕可以輸出計(jì)劃進(jìn)貨報(bào)表。單擊“需要進(jìn)貨”按鈕將打開(kāi)“計(jì)劃進(jìn)貨”窗體,顯示需要進(jìn)貨的商品信息。</p><p>  圖4.10 進(jìn)貨管理運(yùn)行界面</p><p>  “進(jìn)貨管理”窗體frmstock在設(shè)計(jì)界面如圖4.11所示,其中用于顯示計(jì)劃

58、的ListView控件和用于顯示入庫(kù)記錄的MSHFlexGrid控件重疊在一起。在該窗體中,由于要在“計(jì)劃進(jìn)貨”和“入庫(kù)記錄”之間切換顯示數(shù)據(jù),因此,要顯示這兩項(xiàng)數(shù)據(jù)的ListView和MSHFlexGrid控件將重疊放置。</p><p>  圖4.11 進(jìn)貨管理設(shè)計(jì)界面</p><p><b>  2)入庫(kù)界面設(shè)計(jì)</b></p><p>

59、  在“進(jìn)貨管理”窗體中單擊“入庫(kù)”按鈕,將打開(kāi)如圖4.12所示“入庫(kù)”窗體。該窗體中的數(shù)據(jù)由其調(diào)用窗體“進(jìn)貨管理”中的代碼填充,可以輸入入庫(kù)數(shù)量、價(jià)格、日期等參數(shù),然后單擊“確定”按鈕,即可完成入庫(kù)操作。</p><p>  圖4.12 入庫(kù)窗體</p><p><b>  4.2.4其他模塊</b></p><p><b>  1

60、)銷售管理模塊</b></p><p>  “銷售管理”模塊用來(lái)查詢統(tǒng)計(jì)商品銷售狀況,生成報(bào)表。銷售管理模塊運(yùn)行時(shí)如圖4.12所示。單擊不同按鈕可以執(zhí)行相應(yīng)的功能。</p><p>  圖4.12 銷售管理窗體</p><p>  2)廠商/供貨商模塊</p><p>  “廠商/供貨商”模塊用來(lái)管理商品的廠商/供貨商資料。廠商/

61、供貨商窗體如圖4.13所示。在該窗體中可分別添加、修改、刪除廠商/供貨商的名稱、電話、地址等資料。</p><p>  圖4.13廠商/供貨商窗體</p><p><b>  幫助窗體</b></p><p>  幫助窗體簡(jiǎn)單介紹程序版本作者等信息,調(diào)用系統(tǒng)信息查看器查看系統(tǒng)信息。運(yùn)行結(jié)果如圖4.14所示。</p><p&g

62、t;  圖4.14關(guān)于超市管理系統(tǒng)窗體</p><p><b>  5.系統(tǒng)實(shí)現(xiàn)與測(cè)試</b></p><p>  整個(gè)系統(tǒng)的采用Visual Basic 6.0 + MS SQL 2000開(kāi)發(fā)。經(jīng)過(guò)前文的分析和設(shè)計(jì),在本章中將對(duì)整個(gè)系統(tǒng)功能進(jìn)行測(cè)試。成對(duì)流程的編碼后,最重要的事情就是對(duì)系統(tǒng)的測(cè)試工作了,對(duì)照系統(tǒng)需求分析說(shuō)明書(shū),進(jìn)行模塊測(cè)試。測(cè)試在系統(tǒng)設(shè)計(jì)階段有兩個(gè)時(shí)

63、期:通常在編寫每個(gè)模塊后都進(jìn)行單元模塊測(cè)試;另一個(gè)時(shí)期是對(duì)系統(tǒng)進(jìn)行整體綜合測(cè)試。</p><p>  5.1前臺(tái)收銀程序測(cè)試</p><p>  在前文中已經(jīng)詳細(xì)介紹了前臺(tái)收銀程序的開(kāi)發(fā)過(guò)程,現(xiàn)在對(duì)前臺(tái)程序在windows xp 環(huán)境下進(jìn)行測(cè)試。</p><p>  為了保證系統(tǒng)能在復(fù)雜苛刻環(huán)境下運(yùn)行,采用在極端環(huán)境下對(duì)前臺(tái)程序進(jìn)行測(cè)試,一次性在條碼框中輸入100個(gè)

64、商品進(jìn)行測(cè)試,測(cè)試結(jié)果前臺(tái)收銀程序運(yùn)行結(jié)果正確無(wú)誤,沒(méi)有出現(xiàn)卡死等現(xiàn)象,數(shù)據(jù)庫(kù)讀取寫入正確。運(yùn)行稍有延時(shí),為系統(tǒng)計(jì)算讀取大量數(shù)據(jù)正常延遲時(shí)間。但是在賬務(wù)功能中,核對(duì)賬務(wù)時(shí)發(fā)現(xiàn),賬務(wù)計(jì)算結(jié)果不正確。經(jīng)仔細(xì)檢查程序源代碼后發(fā)現(xiàn),在銷售完成后對(duì)數(shù)據(jù)進(jìn)行數(shù)據(jù)庫(kù)寫入時(shí),在sale表中商品銷售時(shí)間誤寫成now應(yīng)為day。</p><p>  經(jīng)過(guò)修改代碼后,賬務(wù)功能正確運(yùn)行。測(cè)試結(jié)果前臺(tái)程序員順利完成所有功能。</p&

65、gt;<p>  5.2后臺(tái)管理系統(tǒng)測(cè)試</p><p>  后臺(tái)管理系統(tǒng)功能模塊較多,結(jié)構(gòu)復(fù)雜。為順利完成測(cè)試,采用模塊測(cè)試方法進(jìn)行測(cè)試。</p><p>  1)用戶管理模塊測(cè)試</p><p>  用管理員賬戶登錄系統(tǒng)對(duì)用戶的添加刪除修改等功能進(jìn)行測(cè)試,運(yùn)行結(jié)果正確無(wú)誤。如圖5.1所示。</p><p>  圖5.1 用戶

66、管理功能測(cè)試</p><p>  2)進(jìn)貨管理模塊測(cè)試</p><p>  對(duì)商品管理、進(jìn)貨管理、銷售管理等功能進(jìn)行測(cè)試。分別對(duì)商品進(jìn)行加添加、修改、刪除等共能進(jìn)行測(cè)試,測(cè)試所有功能均可運(yùn)行。對(duì)進(jìn)貨管理功能進(jìn)行測(cè)試,對(duì)計(jì)劃進(jìn)貨功能進(jìn)行添加、修改、刪除等功能進(jìn)行測(cè)試,測(cè)試所有功能都可以運(yùn)行。對(duì)商品進(jìn)行入庫(kù),入庫(kù)功能可以運(yùn)行,運(yùn)行結(jié)果無(wú)誤。運(yùn)行結(jié)果如圖5.2所示。</p><

67、;p>  圖5.2進(jìn)貨功能測(cè)試</p><p>  3)銷售管理功能測(cè)試</p><p>  銷售管理功能對(duì)銷售狀況進(jìn)行測(cè)試,對(duì)銷售管理功能中的按月查詢報(bào)表、按季度查詢報(bào)表、按年進(jìn)行查詢報(bào)表。測(cè)試功能可以順利運(yùn)行,結(jié)果正確。運(yùn)行結(jié)果如圖5.3所示。</p><p>  圖 5.3 銷售管理功能測(cè)試</p><p><b>  

68、5.3系統(tǒng)整體測(cè)試</b></p><p>  在完成了系統(tǒng)所有部分的開(kāi)發(fā)及測(cè)試工作之后將進(jìn)行系統(tǒng)的整體運(yùn)行測(cè)試??傮w測(cè)試是組裝軟件的系統(tǒng)技術(shù),本系統(tǒng)測(cè)試采用漸增集成測(cè)試,即測(cè)試單一模塊,將測(cè)試完的模塊加入系統(tǒng)中,進(jìn)行一次系統(tǒng)測(cè)試,依次類推將所有模塊加入系統(tǒng)中,在具體測(cè)試時(shí),采用自頂向下的結(jié)合方式。</p><p><b>  6.結(jié)束語(yǔ)</b></

69、p><p>  本論文主要論述的是超市管理系統(tǒng)的設(shè)計(jì)和實(shí)現(xiàn)。該系統(tǒng)主要應(yīng)用于超市等零售企業(yè)銷售管理。本課題研究過(guò)程中,首先對(duì)超市銷售管理業(yè)務(wù)進(jìn)行了解,然后進(jìn)行系統(tǒng)需求分析與可行性論證。之后對(duì)系統(tǒng)進(jìn)行總體設(shè)計(jì),指定系統(tǒng)基本目標(biāo)與大體框架結(jié)構(gòu)。之后進(jìn)行系統(tǒng)詳細(xì)功能設(shè)計(jì)與實(shí)現(xiàn),最后對(duì)系統(tǒng)進(jìn)行測(cè)試,完善系統(tǒng)。</p><p>  經(jīng)過(guò)測(cè)試證明,該系統(tǒng)基本完成了超市等零售企業(yè)正常業(yè)務(wù)的處理工作,前臺(tái)收銀

70、系統(tǒng)運(yùn)行流暢,操作簡(jiǎn)便。后臺(tái)管理系統(tǒng)界面簡(jiǎn)潔,操作簡(jiǎn)單。但系統(tǒng)中也存在一定的不足之處,如對(duì)銷售數(shù)據(jù)的分析功能不夠強(qiáng)大等。</p><p>  該系統(tǒng)采用分為前臺(tái)和后臺(tái)兩個(gè)獨(dú)立系統(tǒng)開(kāi)發(fā),在收銀機(jī)上只需運(yùn)行前臺(tái)收銀程序,后臺(tái)管理程序由超市管理人員運(yùn)行??梢杂行П苊馐浙y人員對(duì)系統(tǒng)數(shù)據(jù)進(jìn)行誤操作或惡意修改破壞。增強(qiáng)了系統(tǒng)的安全性。該系統(tǒng)采用SQL Server 2000數(shù)據(jù)庫(kù)進(jìn)行開(kāi)發(fā),SQL Server 2000 非凡

71、的數(shù)據(jù)處理能力保證了系統(tǒng)穩(wěn)定高速運(yùn)行,可以存儲(chǔ)大型超市數(shù)以千萬(wàn)計(jì)的商品信息。</p><p>  經(jīng)過(guò)測(cè)試證明,該系統(tǒng)基本完成了超市等零售企業(yè)正常業(yè)務(wù)的處理工作,前臺(tái)收銀系統(tǒng)運(yùn)行流暢,操作簡(jiǎn)便。后臺(tái)管理系統(tǒng)界面簡(jiǎn)潔,操作簡(jiǎn)單。但系統(tǒng)中也存在一定的不足之處,如對(duì)銷售數(shù)據(jù)的分析功能不夠強(qiáng)大等。</p><p><b>  參考文獻(xiàn)</b></p><p

72、>  陶宏才.?dāng)?shù)據(jù)庫(kù)原理及設(shè)計(jì)[M] .北京:清華大學(xué)出版社,2005.4</p><p>  楊晶 VB6.0程序設(shè)計(jì)[M] .北京:機(jī)械工業(yè)出版社,2007.5</p><p>  劉玉山.VB數(shù)據(jù)庫(kù)模塊化教程[M].北京:機(jī)械工業(yè)出版社,2009.8</p><p>  李春葆.VB數(shù)據(jù)庫(kù)開(kāi)發(fā)教程[M].北京:電子工業(yè)出版社,2006.8</p&g

73、t;<p>  劉志嫵.VB和SQL的數(shù)據(jù)庫(kù)編程技術(shù)[M].北京:清華大學(xué)工業(yè)出版社,2007.7</p><p>  吳昌平.Visual Basic程序設(shè)計(jì)[M].北京:人民郵電出版社,2008.10</p><p>  曾慧.SQL Server 2000應(yīng)用系統(tǒng)開(kāi)發(fā)教程[M].北京:清華大學(xué)出版社,2008.5</p><p>  趙增敏.SQ

74、L Server 2000實(shí)用教程[M].北京:電子工業(yè)出版社,2008.9</p><p>  .Alex Kriegel & Boris M.Trukhnov.《SQL Bible》[M].北京:電子工業(yè)出版社,2008.9</p><p>  Roger S. Pressman .《軟件工程——實(shí)踐者的研究方法》[M].北京:機(jī)械工業(yè)出版社,2007.6</p>

75、<p>  Karl E. Wingers .《軟件需求》[M].北京:機(jī)械工業(yè)出版社,2008.6</p><p><b>  致 謝</b></p><p>  經(jīng)過(guò)一個(gè)多月的畢業(yè)設(shè)計(jì),在指導(dǎo)老師和同學(xué)的幫助下,最終順利完成了畢業(yè)設(shè)計(jì)。此次畢業(yè)設(shè)計(jì)是對(duì)我對(duì)大學(xué)所學(xué)知識(shí)的系統(tǒng)綜合,在此次設(shè)計(jì)中,自身能力有了相當(dāng)程度的提高。并且對(duì)所學(xué)知識(shí)有了新的認(rèn)識(shí)。&l

76、t;/p><p>  在此我非常感謝**老師在我大學(xué)的最后學(xué)習(xí)階段——畢業(yè)設(shè)計(jì)階段給自己的指導(dǎo),從最初的定題,到資料收集,到寫作、修改,到論稿,她們給了我耐心的指導(dǎo)和無(wú)私的幫助,*老師廣博的學(xué)識(shí)和嚴(yán)謹(jǐn)?shù)闹螌W(xué)態(tài)度將使我受益終生。</p><p>  還要感謝和我同一設(shè)計(jì)小組的幾位同學(xué),是你們?cè)谖移綍r(shí)設(shè)計(jì)中和我一起探討問(wèn)題,并指出我設(shè)計(jì)上的誤區(qū),使我能及時(shí)的發(fā)現(xiàn)問(wèn)題把設(shè)計(jì)順利的進(jìn)行下去,沒(méi)有你們的

77、幫助我不可能這樣順利地結(jié)稿,在此表示深深的謝意。</p><p>  通過(guò)指導(dǎo)老師和同學(xué)們的共同幫助,我的畢業(yè)設(shè)計(jì)最終得以順利完成,這也意味著我的大學(xué)生活即將結(jié)束。大學(xué)階期間,我在學(xué)習(xí)上和思想上都受益非淺,這除了自身的努力外,與各位老師、同學(xué)和朋友的關(guān)心、支持和鼓勵(lì)是分不開(kāi)的。在此,祝愿各位老師身體健康,工作順利。祝愿同學(xué)們事業(yè)有成。</p><p>  感謝各位老師和同學(xué)們的指導(dǎo),謝謝大

78、家!</p><p><b>  附 錄</b></p><p><b>  主要源程序清單</b></p><p>  A.1前臺(tái)收銀端主要代碼</p><p><b>  登錄窗體代碼</b></p><p>  Private Sub cmdOK_

79、Click() '“登錄”按鈕</p><p>  Dim strSQL As String, rs As ADODB.Recordset</p><p>  strSQL = "SELECT * FROM [User] WHERE username='" & Trim(cmbName.Text) & "'"

80、;</p><p>  Set rs = QueryExt(strSQL) '查詢選擇用戶的資料</p><p>  UserName = Trim(cmbName.Text) '保存用戶名</p><p>  If Not rs.EOF Then '記錄集不為空</p><p>  If rs("

81、UserPW") = Trim(txtPWD.Text) Then '密碼正確</p><p>  Unload Me '卸載當(dāng)前窗體</p><p>  frmMain.Show '顯示主窗體</p><p><b>  Else</b></p><p>  MsgBox

82、 "密碼錯(cuò)誤!", vbCritical + vbOKOnly, "警告"</p><p>  txtPWD.Text = "" '清空密碼框</p><p>  txtPWD.SetFocus '設(shè)置輸入焦點(diǎn)</p><p><b>  End If</b>&l

83、t;/p><p>  Else '若記錄集不為空,表示系統(tǒng)中無(wú)此用戶</p><p>  MsgBox "系統(tǒng)中無(wú)此用戶!", vbCritical + vbOKOnly, "警告"</p><p>  cmbName.SetFocus '設(shè)置輸入焦點(diǎn),重新選擇用戶</p><p&g

84、t;<b>  End If</b></p><p><b>  End Sub</b></p><p><b>  前臺(tái)主窗體代碼</b></p><p>  Private Sub cmdESC_Click() '退出</p><p><b>  Unl

85、oad Me</b></p><p><b>  End Sub</b></p><p>  Private Sub cmdF2_Click() '輸入條碼/簡(jiǎn)稱</p><p>  With txtComm(0)</p><p>  .Text = "" '輸入

86、欄設(shè)置初始值</p><p>  txtComm(1).Text = 100</p><p>  txtComm(2).Text = 0</p><p>  txtComm(3).Text = 1</p><p>  .SelStart = 0</p><p>  .SelLength = Len(.Text)<

87、/p><p><b>  .SetFocus</b></p><p><b>  End With</b></p><p>  iRow = Grid1.Rows</p><p><b>  End Sub</b></p><p>  Private Sub

88、 cmdF3_Click()</p><p>  If Grid1.Rows = 1 Then Exit Sub '若表格只有標(biāo)題行,則退出</p><p>  If MsgBox("確定要?jiǎng)h除整個(gè)單據(jù)嗎(Y/N)? ", vbQuestion + vbYesNo, "刪除") = vbYes Then</p><p>

89、;  Grid1.Rows = 1 '設(shè)置表格總行數(shù)為1</p><p>  iRow = 1 '保存新增數(shù)據(jù)到第1行</p><p>  txtSum.Text = Format(0, "0.00") '清空“合計(jì)”文本框</p><p><b>  End If</b></p>

90、<p><b>  End Sub</b></p><p>  Private Sub cmdF4_Click()</p><p>  Dim strTemp As String, i As Integer</p><p>  Dim rs As ADODB.Recordset, strSQL As String</p>

91、;<p>  If Grid1.Rows = 1 Then Exit Sub '若表格只有標(biāo)題行,則退出</p><p>  strTemp = Date '保存當(dāng)前日期</p><p>  For i = 1 To Grid1.Rows - 1 '循環(huán)將當(dāng)前表格中的數(shù)據(jù)保存到臨時(shí)表中</p><p>  strSQL = &

92、quot;INSERT INTO saletemp(saleno,GoodsID,saledate,salenumt,SaleMoneyT) VALUES (" & _</p><p>  txtSaleID.Text & "," & Grid1.TextMatrix(i, 6) & ",'" & strTemp &

93、amp; "'," & _</p><p>  Trim(Grid1.TextMatrix(i, 3)) & "," & Trim(Grid1.TextMatrix(i, 2)) & ")"</p><p>  SQLExt strSQL '執(zhí)行SQL語(yǔ)句</p>

94、<p><b>  Next</b></p><p>  Grid1.Rows = 1 '設(shè)置表格總行數(shù)為1</p><p>  txtSum.Text = Format(0, "0.00") '清空“合計(jì)”文本框</p><p>  txtSaleID.Text = txtSaleID.Text

95、 + 1 '生成新的銷售單號(hào)</p><p>  Call cmdF2_Click '設(shè)置輸入焦點(diǎn)到“條碼”框</p><p><b>  End Sub</b></p><p>  Private Sub cmdF5_Click()</p><p>  frmF5.Show 1 '顯

96、示“取單”窗體</p><p><b>  End Sub</b></p><p>  Private Sub cmdF6_Click()</p><p>  Dim strTemp As String, dCur As Double</p><p>  Dim strSQL As String, rs As ADODB

97、.Recordset</p><p>  strTemp = Date '當(dāng)前日期</p><p>  strSQL = "SELECT SUM(salenum*saleprice) FROM sale WHERE saledate='" & strTemp & _</p><p>  "'

98、AND cashier='" & lblCashier.Caption & "'" '查詢當(dāng)天指定收銀員收款情況</p><p>  Set rs = QueryExt(strSQL) '執(zhí)行SQL語(yǔ)句</p><p>  dCur = 0 '銷售金額清0</p><p>

99、;  If Not IsNull(rs.Fields(0)) Then dCur = rs.Fields(0) '獲取銷售金額</p><p>  MsgBox "當(dāng)前銷售員在本班次銷售額為:" & Format(dCur, "0.00") & "元。", vbInformation + vbOKOnly, "提示

100、"</p><p>  Call cmdF2_Click '調(diào)用過(guò)程設(shè)置輸入焦點(diǎn)到“條碼”框</p><p><b>  End Sub</b></p><p>  Private Sub cmdModify_Click()</p><p>  Dim i As Integer</p>

101、<p>  For i = 1 To 3 '判斷三個(gè)文本框中的內(nèi)容是否為數(shù)字</p><p>  If Not IsNumeric(txtComm(i).Text) Then</p><p>  MsgBox "折扣、單價(jià)、數(shù)量都必須輸入數(shù)字!", vbCritical + vbOKOnly, "警告"</p>

102、<p>  With txtComm(i)</p><p>  .SetFocus '設(shè)置輸入焦點(diǎn)</p><p>  .SelStart = 0</p><p>  .SelLength = Len(.Text) '選中文本框中的內(nèi)容</p><p><b>  End With</b>&

103、lt;/p><p><b>  Exit Sub</b></p><p><b>  End If</b></p><p><b>  Next</b></p><p>  cursum = CCur(txtComm(2)) * CDbl(txtComm(3).Text) * (C

104、Dbl(txtComm(1).Text) / 100) '計(jì)算商品金額</p><p>  If iRow <= 0 Then Exit Sub</p><p>  With Grid1</p><p>  .TextMatrix(iRow, 2) = txtComm(2).Text '更新表格中的單價(jià)</p><p&

105、gt;  .TextMatrix(iRow, 3) = txtComm(3).Text '更新表格中的數(shù)據(jù)</p><p>  .TextMatrix(iRow, 5) = cursum '更新表格中的金額</p><p><b>  End With</b></p><p>  bChange = False '

106、取消修改模式</p><p>  Call Summary '調(diào)用過(guò)程匯總合計(jì)金額</p><p>  Call cmdF2_Click '調(diào)過(guò)用過(guò)程將輸入焦點(diǎn)設(shè)置到“條碼”框</p><p><b>  End Sub</b></p><p>  Private Sub cmdOK_Clic

107、k() '“完成”按鈕</p><p>  If Grid1.Rows < 2 Then</p><p>  MsgBox "對(duì)不起,沒(méi)有銷售信息!"</p><p><b>  Else</b></p><p>  Call SaveData '調(diào)用過(guò)程,保存銷售數(shù)據(jù)&

108、lt;/p><p>  frmAcc.Show 1 '顯示收款對(duì)話框</p><p><b>  End If</b></p><p>  Call cmdF2_Click</p><p><b>  End Sub</b></p><p>  Private Su

109、b Form_Activate()</p><p>  Call cmdF2_Click</p><p><b>  End Sub</b></p><p>  Private Sub Grid1_SelChange()</p><p>  With Grid1</p><p>  If .Row

110、s < 1 Then Exit Sub '若表格無(wú)數(shù)據(jù),則退出過(guò)程</p><p>  iRow = .Row '保存當(dāng)前選中行</p><p>  If iRow < 1 Then Exit Sub '選中的不是數(shù)據(jù),則退出過(guò)程</p><p>  txtComm(0).Text = .TextMatrix(iRow, 0

111、) '將條碼填到右側(cè)文本框</p><p>  txtComm(1).Text = .TextMatrix(iRow, 4) '折扣</p><p>  txtComm(2).Text = .TextMatrix(iRow, 2) '單價(jià)</p><p>  txtComm(3).Text = .TextMatrix(iRow, 3)

112、 '數(shù)量</p><p>  strName = .TextMatrix(iRow, 1) '商品名稱保存到模塊變量</p><p>  strID = .TextMatrix(iRow, 6) '商品ID保存到模塊變量</p><p><b>  End With</b></p><p><

113、;b>  End Sub</b></p><p>  Private Sub txtComm_KeyPress(Index As Integer, KeyAscii As Integer)</p><p>  If KeyAscii = 13 Then '如果按了回車鍵</p><p>  If Index < 3 Then

114、'前2個(gè)文本框</p><p>  txtComm(Index + 1).SetFocus '設(shè)置輸入焦點(diǎn)到下一個(gè)文本框</p><p>  Else '若是第3個(gè)文本框</p><p>  cmdModify.SetFocus '設(shè)置輸入焦點(diǎn)到“修改”按鈕</p><p><b>  End

115、 If</b></p><p><b>  End If</b></p><p><b>  End Sub</b></p><p>  Private Sub txtComm_LostFocus(Index As Integer)</p><p>  Dim rs As New Rec

116、ordset, strSQL As String, str1 As String</p><p>  If bChange Then Exit Sub '修改模式,退出</p><p>  If Index = 0 Then '條碼/簡(jiǎn)碼</p><p>  On Error GoTo err '錯(cuò)誤處理</p>&l

117、t;p>  Beep '鳴笛,提示錄入一個(gè)商品條碼</p><p>  If Trim(txtComm(0).Text) = "" Then Exit Sub '若條碼為空,則退出</p><p>  strSQL = "SELECT * FROM goods WHERE barcode='" & txtC

118、omm(0).Text & "'"</p><p>  Set rs = QueryExt(strSQL) '從商品庫(kù)中查詢?cè)摋l碼的商品</p><p>  If rs.EOF Then '若無(wú)此條碼的商品</p><p>  MsgBox "該商品還未上賬,請(qǐng)聯(lián)系商場(chǎng)管理人員!", vb

119、Critical + vbOKOnly, "警告"</p><p>  Call cmdF2_Click '設(shè)置輸入焦點(diǎn)到“條碼”框</p><p>  Exit Sub '退出過(guò)程</p><p><b>  End If</b></p><p>  strName =

120、rs!GoodsName '商品名稱</p><p>  strID = rs!GoodsID '商品編號(hào)</p><p>  txtComm(2).Text = rs!GoodsPrice '單價(jià)</p><p>  txtComm(3).Text = 1 '數(shù)量</p><p>  cur

121、sum = CCur(txtComm(2)) * CDbl(txtComm(3).Text) * (CDbl(txtComm(1).Text) / 100) '單價(jià)*數(shù)量*折扣</p><p>  rs.Close '關(guān)閉記錄集</p><p>  str1 = txtComm(0).Text & vbTab '條碼</p><

122、p>  str1 = str1 & strName & vbTab '商品名稱</p><p>  str1 = str1 & txtComm(2).Text & vbTab '單價(jià)</p><p>  str1 = str1 & txtComm(3).Text & vbTab '數(shù)量</p>

123、<p>  str1 = str1 & txtComm(1).Text & vbTab '折扣</p><p>  str1 = str1 & cursum & vbTab & strID '商品編號(hào)</p><p>  Grid1.AddItem str1 '添加顯示的內(nèi)容</p><p&g

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論