版權(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 超市管理系統(tǒng)畢業(yè)設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)---超市管理系統(tǒng)
- 畢業(yè)設(shè)計(jì)----超市管理系統(tǒng)
- 超市管理系統(tǒng)畢業(yè)設(shè)計(jì)論文
- 超市管理系統(tǒng)畢業(yè)設(shè)計(jì)3
- 畢業(yè)設(shè)計(jì)--在線超市管理系統(tǒng)
- 超市管理系統(tǒng)畢業(yè)設(shè)計(jì)論文
- 超市管理系統(tǒng)畢業(yè)設(shè)計(jì) (2)
- 畢業(yè)設(shè)計(jì)論文 ——超市管理系統(tǒng)
- 超市進(jìn)銷管理系統(tǒng)設(shè)計(jì)【畢業(yè)設(shè)計(jì)】
- 超市信息管理系統(tǒng)畢業(yè)設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)論文超市貨物管理系統(tǒng)
- 畢業(yè)設(shè)計(jì)---超市信息管理系統(tǒng)
- 超市信息管理系統(tǒng)畢業(yè)設(shè)計(jì)
- 網(wǎng)上超市管理系統(tǒng)畢業(yè)設(shè)計(jì)
- 超市信息管理系統(tǒng)(畢業(yè)設(shè)計(jì)論文)
- 超市銷售系統(tǒng)畢業(yè)設(shè)計(jì)
- 超市管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)【畢業(yè)設(shè)計(jì)】
- 超市銷售管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)----超市收費(fèi)系統(tǒng)
評(píng)論
0/150
提交評(píng)論