版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、一、摘要隨著信息化程度的的日益升高,商場經(jīng)營管理機(jī)制正在發(fā)生著根本性的變化,商場要想在激烈的市場競爭環(huán)境下求得生存,就必須有效地利用人才、時間、信息結(jié)合的優(yōu)勢,就必須有效地進(jìn)行商場內(nèi)部改革和加強商場管理。 對商場而言,超市是商場最寶貴的資源,也是商場的“生命線”。如何做到商場超市與經(jīng)濟(jì)效益具有良好匹配?如何做到事得其才,人盡其用?如何在滿足商場效益的同時又兼顧商場職工的需求?如何能在瞬息萬變的時代使商場與社會環(huán)境相適應(yīng)并且處理好隨時變化的超市?這一系列的問題都是需要亟待解決的問題。 為了解決上述問題,使商場在激勵的市場競爭中立于不敗之地,設(shè)計并開發(fā)出一套適合商場超市收銀特點,又符合我國商場管理
2、實情的超市收銀系統(tǒng)就顯得尤為重要。由于時間倉促,水平有限,因此我利用本次課程設(shè)計開發(fā)出了這樣一套超市收銀系統(tǒng),可作為商用超市收銀系統(tǒng)的一個大致演示和框架。二、需求分析目前每個超市每天的銷售數(shù)據(jù)都非常大,如果靠人力去統(tǒng)計.計算和記錄會造成非常大的誤差和損失,此項的開發(fā)背景就是減少人工帶來的誤差和不便。使用本系統(tǒng)之后,將會提高的銷售效率和誤差,減少工作人員的勞動強度,減少辦公耗材,提高超市的現(xiàn)代化管理水平。超市收銀系統(tǒng)的總目標(biāo)是: 在數(shù)據(jù)庫和現(xiàn)有的先進(jìn)的開發(fā)工具上,配置一定的硬件,開發(fā)一個具有易擴(kuò)充, 易維護(hù), 具有良好人間交互界面的超市收銀系統(tǒng). 實現(xiàn)在后臺數(shù)據(jù)庫服務(wù)器運行的時候, 可以通過管理
3、員或者收銀員對超市商品的一系列資料進(jìn)行存取, 對顧客的消費行為通過前端應(yīng)用程序進(jìn)行快速, 精確地服務(wù), 同時通過前端應(yīng)用軟件監(jiān)看超市商品的庫存、銷量等情況. 要求能對一天或者一段時間的銷售資料進(jìn)行保存以便以后查閱. 同時可以隨時盤點銷售情況, 打印報表等。為了保證商家的利益和適應(yīng)今后的發(fā)展, 超市收銀系統(tǒng)應(yīng)該滿足以下性能需求:2.1 系統(tǒng)處理的準(zhǔn)確性當(dāng)有顧客購買商品時,對購買金額計算的準(zhǔn)確性, 對所付金額是否足夠都必須嚴(yán)格要求, 在顧客購買了某種商品后, 對數(shù)據(jù)庫中商品信息資料表要及時更新,更改庫存、銷量等屬性。2.2 系統(tǒng)的易擴(kuò)展性隨著商家經(jīng)營的不斷擴(kuò)大,對軟件的性能要求會有所增加,這就要求
4、該收銀系統(tǒng)通過增加適當(dāng)?shù)挠布蛙浖K對整個系統(tǒng)進(jìn)行升級和更新。2.3 系統(tǒng)界面的友好性作為超市的收銀系統(tǒng), 管理員或者銷售員幾乎每天都會和該軟件打交道,因此該超市收銀系統(tǒng)的前端應(yīng)用程序端界面應(yīng)盡可能的友好和易操作。三、概要設(shè)計3.1數(shù)據(jù)庫關(guān)系模式設(shè)計(1) users名字: users別名: 用戶信息表描述: 員工信息管理表,并對員工分配權(quán)限關(guān)系模式: 用戶信息表(用戶號,姓名,性別,密碼,類型,聘用時間,電話,住址)(2) supplier名字: supplier別名: 供貨商信息表描述: 用來記錄供貨商的信息關(guān)系模式: 供貨商表(編號,名稱,電話,地址,信息)(3) products名字
5、: products別名: 商品信息表描述: 用于記錄每種商品的各種屬性的表關(guān)系模式: 商品信息表(編號,名稱,單價,單位,貨架號,庫存,進(jìn)貨時間,供貨商編號)(4) sales名字: sales別名: 銷售信息表描述: 用于記錄每一次結(jié)算時出售商品記錄的表,因此此表會在收銀過程中動態(tài)添加元組關(guān)系模式: 銷售信息表(編號,商品編號,銷售數(shù)量,員工編號,銷售時間,商品名,銷售價格,收入)(5) imports名字: imports別名: 進(jìn)貨信息表描述: 用于記錄進(jìn)貨情況的表關(guān)系模式:進(jìn)貨信息表(商品號,商品名,進(jìn)貨時間,進(jìn)貨數(shù)量,進(jìn)貨價格,銷售商,產(chǎn)地)3.2總e-r圖 員工管理出售 商品供貨
6、商信息 員工信息銷售信息打印 報表進(jìn)貨信息進(jìn)貨3.3數(shù)據(jù)庫物理結(jié)構(gòu)設(shè)計1users主鍵:用戶號屬性列類型說明用戶號varchar(5)員工標(biāo)識姓名varchar(10)員工姓名性別varchar(4)員工性別類型varchar(8)登陸該系統(tǒng)的用戶類型密碼varchar(10)登陸該系統(tǒng)的用戶密碼聘用時間smalldatetime該員工的聘用時間電話varchar(13)員工的聯(lián)系電話住址varchar(30)員工的地址 2. supplier主鍵:編號屬性列類型說明編號varchar(5)供貨商標(biāo)識名稱varchar(30)供貨商名稱電話varchar(13)供貨商聯(lián)系電話地址varchar
7、(30)供貨商地址信息varchar(50)供貨商說明信息 3. products主鍵:商品編號外鍵:供應(yīng)商編號屬性列類型說明編號varchar(5)商品標(biāo)識名稱varchar(20)商品名稱單價smallmoney商品單價單位varchar(6)商品單位貨架號smallint商品所擺放的貨架編號庫存smallint商品庫存進(jìn)貨時間smalldatetime商品的進(jìn)貨時間供應(yīng)商編號int該商品的供貨商的編號 4.sales主鍵:編號外鍵:商品編號,員工編號屬性列類型說明編號varchar(30)銷售商品的流水號銷售數(shù)量varchar(10)某一特定的商品的一次銷售數(shù)量銷售時間smalldate
8、time銷售的時間商品編號varchar(5)該商品的編號員工編號varchar(5)收銀員的編號商品名varchar(20)銷售商品名銷售價格money銷售商品的單價收入money某一次銷售的收入 5.imports主鍵:商品號外鍵:銷售商編號屬性列類型說明商品號varchar(5)商品標(biāo)識商品名varchar(20)商品名稱進(jìn)貨數(shù)量varchar(10)購進(jìn)該商品的數(shù)量進(jìn)貨價格money購進(jìn)該商品的價格銷售商varchar(5)該商品的供貨商編號產(chǎn)地varchar(20)該商品的生產(chǎn)地進(jìn)貨時間smalldatetime該商品的進(jìn)貨時間四、功能模塊本系統(tǒng)是一個超市收銀系統(tǒng)。顧名思義,本系統(tǒng)用
9、來管理和更新超市日常交易數(shù)據(jù),如收銀員的管理,收銀員的工作記錄,日常交易記錄,商品信息管理等等,前臺操作界面用delphi實現(xiàn),所用的數(shù)據(jù)存儲在microsoft sql server 2005數(shù)據(jù)庫的smarket數(shù)據(jù)庫中。由于時間倉促,水平有限,因此我利用本次課程設(shè)計開發(fā)出的超市收銀系統(tǒng),只作為商用超市收銀系統(tǒng)的一個大致演示和框架。本系統(tǒng)的流程圖如下:超市收銀系統(tǒng)管理員登錄收銀員登錄操作員工資料操作供貨商資料操作商品資料銷售商品打印報表操作進(jìn)貨資料添加記錄刪除記錄修改記錄取消某次銷售收銀完成某次銷售4.1登錄只有輸入正確的信息才能進(jìn)入系統(tǒng),信息輸入錯誤三次系統(tǒng)會自動關(guān)閉。界面:截圖1主要代
10、碼:procedure tform1.bitbtn1click(sender: tobject);beginvcont:=vcont+1;if vcont3 then begin application.messagebox(登錄失敗超過三次,系統(tǒng)將關(guān)閉!,登錄提示,mb_iconexclamation+mb_ok); application.terminate; endelse beginif self.edit1.text= then begin application.messagebox(請輸入用戶id!,登錄提示,mb_iconexclamation+mb_ok); self.edi
11、t1.setfocus; exit; end;if self.edit2.text= then begin application.messagebox(請輸入密碼!,登錄提示,mb_iconexclamation+mb_ok); self.edit2.setfocus; exit; end;if form1.adotable1.locate(用戶號;密碼;類型,vararrayof(edit1.text,edit2.text,combobox1.text),)then beginif combobox1.text=管理員 then begin form2:=tform2.create(sel
12、f); form2.show; end else begin form3:=tform3.create(self); form3.show; end;form1.visible:=false;endelseapplication.messagebox(輸入用戶信息錯誤!,登錄提示,mb_iconexclamation+mb_ok); end; end;4.2收銀員部分主界面:截圖2 收銀員可以查詢個人信息。單擊查詢個人信息,則顯示收銀員個人信息。界面:截圖3主要代碼:procedure tform3.n2click(sender: tobject);varsqlstr:string;begin
13、sqlstr:=select * from users where 用戶號=+form1.edit1.text+; adoquery1.close; adoquery1.sql.clear; adoquery1.sql.add(sqlstr); adoquery1.open;end; 收銀員可以查詢商品信息。單擊查詢商品信息,則顯示商品信息。界面如截圖2。主要代碼:procedure tform3.n3click(sender: tobject);var sqlstr:string;beginsqlstr:=select * from products; adoquery1.close; ad
14、oquery1.sql.clear; adoquery1.sql.add(sqlstr); adoquery1.open;end; 收銀員可以查詢銷售信息。單擊查詢銷售信息,則顯示銷售信息。界面與截圖3類似,這里從略。主要代碼與類似,這里從略。 收銀員可以查詢個人銷售信息信息。單擊查詢個人銷售信息,則顯示個人銷售信息。界面與截圖3類似,這里從略。主要代碼與類似,這里從略。 收銀員可以修改自己密碼。單擊修改密碼即可進(jìn)入修改密碼界面,原密碼和新密碼都不能為空,只有正確輸入舊密碼且兩次輸入的新密碼相同才算修改成功。界面:截圖4主要代碼:procedure tform4.button1click(se
15、nder: tobject);var sqlstr:string;beginif edit1.text= then application.messagebox(請輸入原密碼!,修改密碼提示,mb_iconexclamation+mb_ok)else if edit2.text= then application.messagebox(請輸入新密碼!,修改密碼提示,mb_iconexclamation+mb_ok)else if edit3.text= thenapplication.messagebox(請再次輸入新密碼!,修改密碼提示,mb_iconexclamation+mb_ok) e
16、lse if edit1.text=form1.edit2.text then beginif edit2.text=edit3.text then beginsqlstr:=update users set 密碼=+edit3.text+ where 用戶號=+form1.edit1.text+; adoquery1.close; adoquery1.sql.clear; adoquery1.sql.add(sqlstr); adoquery1.execsql;application.messagebox(修改密碼成功!,修改密碼提示,mb_iconinformation+mb_ok); e
17、nd else application.messagebox(兩次輸入密碼不符!,修改密碼提示,mb_iconexclamation+mb_ok); end else application.messagebox(原密碼輸入錯誤!,修改密碼提示,mb_iconexclamation+mb_ok);end;收銀操作a.輸入商品號、數(shù)量,點擊輸入按鈕,則自動生成流水號并顯示該商品的基本信息。界面:截圖5主要代碼:procedure tform3.button4click(sender: tobject);beginadotable1.open;if edit1.text then beginlab
18、el10.caption:=formatdatetime(yyyymmddhhmmss,now);if adotable1.locate(編號,edit1.text,) then beginadoquery1.close;adoquery1.sql.clear;adoquery1.sql.add(select 編號,名稱,單價 from products where 編號=+edit1.text+);adoquery1.open;adoquery2.close;adoquery2.sql.clear;adoquery2.sql.add(select 商品編號,商品名,銷售價格from sale
19、s where 商品編號=+edit1.text+);adoquery2.open;adotable2.open;adotable2.insert;adotable2編號:=label10.caption;adotable2商品編號:=edit1.text;adotable2商品名:=adoquery1.fields1.asstring;adotable2銷售價格:=adoquery1.fields2.asstring;adotable2銷售時間:=datetostr(date);adotable2銷售數(shù)量:=inttostr(spinedit1.value);adotable2收入:=spi
20、nedit1.value*adoquery1.fields2.asfloat;adotable2員工編號:=label11.caption;adotable2.post;adotable3.open;adotable3.insert;adotable3總價:=spinedit1.value*adoquery1.fields2.asfloat;adotable3商品號:=adotable2商品編號;adotable3商品名:=adotable2商品名;adotable3單價:=adotable2銷售價格;adotable3數(shù)量:=adotable2銷售數(shù)量;adotable3.post;adoq
21、uery1.close;adoquery1.sql.clear;adoquery1.sql.add(select * from temps);adoquery1.open;endelseapplication.messagebox(無此商品,請重新輸入!,輸入提示,mb_iconexclamation+mb_ok);endelseapplication.messagebox(請輸入商品號!,輸入提示,mb_iconexclamation+mb_ok);end;b.單擊計算總額按鈕,則顯示某顧客所購全部商品的總價。界面:截圖6主要代碼:procedure tform3.button2click(
22、sender: tobject);beginadoquery1.close;adoquery1.sql.clear;adoquery1.sql.add(select sum(總價) as 總消費額 from temps);adoquery1.open;label12.caption:=adoquery1.fields0.asstring;end;c.在顧客付錢輸入框中輸入顧客付款金額數(shù),點擊結(jié)算,則顯示結(jié)算單。界面:截圖7主要代碼:procedure tform3.button3click(sender: tobject);beginif edit1.text then beginform13
23、.adotable1.open;form13.adotable1.insert;form13.adotable1流水號:=adotable2編號;form13.adotable1商品名:=adotable2商品名;form13.adotable1數(shù)量:=inttostr(spinedit1.value);form13.adotable1單價:=adotable2銷售價格;form13.adotable1總價:=adotable2收入;form13.adotable1付費:=edit3.text;form13.adotable1找零:=floattostr(strtofloat(edit3.te
24、xt)-strtofloat(label12.caption);form13.adotable1.post;form11:=tform11.create(self); form11.show; form11.label2.caption:=label12.caption; form11.label4.caption:=edit3.text; form11.label6.caption:=floattostr(strtofloat(edit3.text)-strtofloat(label12.caption); adoquery2.close; adoquery2.sql.clear; adoq
25、uery2.sql.add(select * from sales); adoquery2.open; adoquery2.first; repeat adoquery1.close; adoquery1.sql.clear; adoquery1.sql.add(update products set 庫存=庫存-+adoquery2.fields2.asstring+ where 編號=+adoquery2.fields1.asstring+); adoquery1.execsql; adoquery1.close; adoquery2.next; until adoquery2.eof;
26、edit1.clear; spinedit1.value:=1; edit3.clear; end else application.messagebox(請輸入商品號!,結(jié)算提示,mb_iconexclamation+mb_ok);end;d.點擊打印結(jié)算單按鈕,則顯示打印窗口,可以打印結(jié)算單。界面:截圖8主要代碼:procedure tform11.button1click(sender: tobject);beginform13:=tform13.create(self);form13.show;form13.adoquery1.active:=true;adoquery1.close;
27、adoquery1.sql.clear;adoquery1.sql.add(delete from temps);adoquery1.execsql;adoquery1.close;form11.close;end;退貨操作若顧客對某商品不滿意,可以來退貨,收銀員點擊退貨按鈕,則顯示退貨窗口,輸入流水號,點擊退貨按鈕,若彈出退貨成功提示窗口則表明退貨成功。界面:截圖9主要代碼:procedure tform14.button1click(sender: tobject);varsqlstr:string;beginsqlstr:=delete from sales where 編號=+edit
28、1.text+;if edit1.text= thenapplication.messagebox(請輸入流水號!,退貨提示,mb_iconexclamation+mb_ok)elseif form3.adotable2.locate(編號,edit1.text,) then beginform3.adoquery1.close;form3.adoquery1.sql.clear;form3.adoquery1.sql.add(update products set 庫存=庫存+form3.adotable2.fields2.asstring+ where 編號=(select 商品編號 fr
29、om sales where 編號=+edit1.text+);form3.adoquery1.execsql;form3.adoquery1.close;form3.adoquery2.close;form3.adoquery2.sql.clear;form3.adoquery2.sql.add(sqlstr);form3.adoquery2.execsql;application.messagebox(退貨成功!,退貨提示,mb_iconinformation+mb_ok);endelse application.messagebox(沒有該記錄!,退貨提示,mb_iconexclamat
30、ion+mb_ok);end;4.3管理員部分主界面:截圖10 管理員可以查詢員工信息、商品信息、銷售信息、供貨商信息、進(jìn)貨信息,查詢界面及主要代碼與收銀員的查詢操做類似,這里從略。 管理員可以添加、刪除員工信息、商品信息、供貨商信息和進(jìn)貨信息,這里以添加/刪除員工信息為例,其他信息的添加/刪除操作與此類似。點擊修改添加/刪除員工信息,則進(jìn)入修改/刪除窗口,添加操作時,輸入詳細(xì)信息,點擊添加按鈕,刪除時,輸入員工號,點擊刪除記錄按鈕即可。界面:截圖11截圖12主要代碼:添加:procedure tform5.button1click(sender: tobject);beginif (edit
31、1.text) and (edit2.text) and (edit3.text) and (edit4.text) and (edit5.text) and (edit6.text) and (edit7.text) and (edit8.text) thenif not form1.adotable1.locate(用戶號,edit1.text,) then beginform1.adotable1.insert;form1.adotable1用戶號:=edit1.text;form1.adotable1密碼:=edit2.text;form1.adotable1類型:=edit3.tex
32、t;form1.adotable1姓名:=edit4.text;form1.adotable1性別:=edit5.text;form1.adotable1聘用時間:=edit6.text;form1.adotable1電話:=edit7.text;form1.adotable1住址:=edit8.text;form1.adotable1.post;application.messagebox(添加成功!,添加提示,mb_iconinformation+mb_ok);edit1.text:=; edit2.text:=;edit3.text:=; edit4.text:=;edit5.text:
33、=; edit6.text:=;edit7.text:=; edit8.text:=;endelse application.messagebox(該用戶已存在!,添加提示,mb_iconexclamation+mb_ok)else application.messagebox(請將信息填寫完整!,添加提示,mb_iconexclamation+mb_ok);end;刪除:procedure tform5.button2click(sender: tobject);varsqlstr:string;beginsqlstr:=delete from users where 用戶號=+edit9.
34、text+;if edit9.text= thenapplication.messagebox(請輸入員工號!,刪除提示,mb_iconexclamation+mb_ok)elseif form1.adotable1.locate(用戶號,edit9.text,) then beginform2.adoquery1.close;form2.adoquery1.sql.clear;form2.adoquery1.sql.add(sqlstr);form2.adoquery1.execsql;application.messagebox(刪除成功!,刪除提示,mb_iconinformation+mb_ok);end else application.messagebox(沒有該記錄
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度家庭保姆雇傭與技能提升服務(wù)合同4篇
- 2025年度門窗安裝與室外照明一體化工程合同范本3篇
- 2025年度個人精裝修房屋租賃合同示范文本2篇
- 2025年度茶館店鋪轉(zhuǎn)讓及文化傳承合同3篇
- 2025版寧波共有產(chǎn)權(quán)房租賃合同模板4篇
- 2025年度車輛購置擔(dān)保合同模板2篇
- 二零二五年度充電樁充電服務(wù)市場分析合同4篇
- 2025版木地板產(chǎn)業(yè)鏈整合與戰(zhàn)略投資合同4篇
- 2025年度酒店樓頂花園租賃與維護(hù)合同3篇
- 年薪制勞動合同范本2025:新能源汽車行業(yè)人才激勵方案3篇
- 幼兒園學(xué)習(xí)使用人民幣教案教案
- 2023年浙江省紹興市中考科學(xué)真題(解析版)
- 語言學(xué)概論全套教學(xué)課件
- 大數(shù)據(jù)與人工智能概論
- 《史記》上冊注音版
- 2018年湖北省武漢市中考數(shù)學(xué)試卷含解析
- 測繪工程產(chǎn)品價格表匯編
- 《腎臟的結(jié)構(gòu)和功能》課件
- 裝飾圖案設(shè)計-裝飾圖案的形式課件
- 護(hù)理學(xué)基礎(chǔ)教案導(dǎo)尿術(shù)catheterization
- ICU護(hù)理工作流程
評論
0/150
提交評論