国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

超市POS銷售系統(tǒng)的設計與開發(fā)

2014-07-28 05:01:10黃茜
電腦知識與技術 2014年18期
關鍵詞:數(shù)據(jù)庫

黃茜

摘要:隨著計算機和網(wǎng)絡技術的迅速發(fā)展,管理信息系統(tǒng)在連鎖超市的銷售管理中得到了廣泛的應用。POS系統(tǒng)作為信息管理系統(tǒng)的重要組成部分,主要功能是完成商品銷售,并記錄銷售信息。該文以某超市為應用背景,利用C++Builder 6.0和SQL Server 2000設計和開發(fā)了基于Windows 2000平臺的POS銷售系統(tǒng),并在某連鎖超市進行了試驗,運行結果良好、速度快,完全滿足用戶要求。

關鍵詞:POS;數(shù)據(jù)庫;ADO;無盤工作站

中圖分類號:TP311 文獻標識碼:A 文章編號:1009-3044(2014)18-4158-03

Design and Development of POS Sale System in Supermarket

HUANG Qian

(Xuzhou Economic and Trade Branch of Jiangsu Union Techical Institute,Xuzhou 221004,China)

Abstract:With the rapid development of computer and network technology, Management Information System(MIS) has been widely used in the sell management of supermarket. POS is an important part of MIS.It mostly completes commodity sell and records sell information. For the supermarket, based on Windows 2000 is designed and developed by C++ Builder 6.0 and SQL Server 2000 in the paper, and the POS sale system was tested in the supermarket. It has been shown that its running speed is very fast, its effect is good and it can satisfied users need completely.

Key words:POS;database;ADO;diskless workstation

1 概述

隨著商業(yè)、零售業(yè),特別是連鎖超市的迅猛發(fā)展,管理信息系統(tǒng)(MIS)在商業(yè)的銷售管理中起著越來越重要的作用。POS系統(tǒng)即電子收款機系統(tǒng)(Point Of Sells),是MIS的重要組成部分。它的主要功能就是完成商品銷售,并全面地記錄銷售信息,為管理人員提供營銷數(shù)據(jù),是各種分析、統(tǒng)計和進行決策的基礎和依據(jù)。結合某超市的實際情況,采用前臺POS機+后臺服務器的工作模式,設計和開發(fā)了基于Windows 2000的POS銷售系統(tǒng)[1]。

2 POS系統(tǒng)總體架構

本文開發(fā)的POS銷售管理系統(tǒng)由前臺POS機和后臺服務器兩大部分組成。服務器由高性能的PC機完成全部管理功能,而前臺各個POS機只完成商品銷售所必須的輸入輸出功能,不再配備硬盤和操作系統(tǒng),采用無盤工作站模式工作。各POS機和后臺PC機通過局域網(wǎng)進行數(shù)據(jù)交換,并將處理結果送到相應的POS機顯示和打印。POS系統(tǒng)總體架構如圖1所示。

圖1 POS系統(tǒng)總體架構圖

前臺POS機(包括錢箱)連接著票據(jù)打印機、條形碼掃描儀和客顯(客戶價格顯示器)。后臺PC機連接著條形碼打印機、普通打印機和盤點機[1]。

3 POS系統(tǒng)后臺數(shù)據(jù)庫設計

POS系統(tǒng)的后臺數(shù)據(jù)庫用來存儲該系統(tǒng)的所有數(shù)據(jù)信息,包括商品資料、人員資料、銷售資料等,是銷售系統(tǒng)至關重要的組成部分。該文利用SQL Server 2000設計了POS系統(tǒng)的數(shù)據(jù)庫CSDATA,系統(tǒng)采用Windows NT與SQL Server認證用戶身份,加強了數(shù)據(jù)庫的安全性。本數(shù)據(jù)庫主要包括以下一些核心數(shù)據(jù)庫表。

1)用戶信息表(CS_TBL_USERINFO):包含用戶編號、用戶姓名、用戶密碼、用戶級別(包括出納、出納組長、系統(tǒng)維護員和門店經(jīng)理)、用戶狀態(tài)(包括銷售、退貨和已交班)、交易狀態(tài)(銷售、退貨和出納結帳)、交易日期等字段。

2)門店人員信息表(CS_TBL_SHPPERSONINF):包含用戶編號、用戶姓名、POS機編號、用戶級別、正確的交易狀態(tài)等字段。

3)商品基本資料表(CS_TBL_GOODSINFO):包含商品條碼、商品店內碼、商品簡稱、商品規(guī)格、商品名稱等字段。

4)商品定價表(CS_TBL_STOREDIFFPRIC):包含差價類別、商品店內碼、指導價等字段。

5)門店信息表(CS_TBL_DEPARTINFO):包含門店編號、門店名稱、差價類別等字段。

6)POS機信息表(CS_TBL_POSINF):包含門店編號、POS機編號、錢箱金額、最近使用出納編號、 當前狀態(tài)、POS機網(wǎng)卡地址等字段。

7)銷售流水主表(CS_TBL_SALDETAIL_MN):包含銷售流水、出納編號、商品數(shù)量、合計金額、支付金額、銷售/退貨、找零金額等字段。

8)銷售流水從表(CS_TBL_SALDETAIL_SUB):包含銷售流水、序號、店內碼、商品條碼、商品數(shù)量、商品單價、商品小計等字段。

9)登陸流水信息表(CS_TBL_LOGON):包含出納編號、操作類型、門店編號、POS機號等字段。

10)商品庫存信息表(CS_TBL_SHPSTOK_SUM):包含門店編號、店內碼、商品數(shù)量等字段。endprint

11)POS機維護信息表(CS_TBL_POSINF):包含門店代號、POS機號、 當前狀態(tài)、POS機網(wǎng)卡地址等字段。

4 POS系統(tǒng)的功能設計

POS系統(tǒng)功能模塊的設計是系統(tǒng)的總體框架,是程序設計的指南。根據(jù)系統(tǒng)的用戶需求,在保證系統(tǒng)安全性的前提下,我們將POS系統(tǒng)劃分為以下八個功能模塊:權限認證、出納銷售、出納結賬、商品退貨、POS機維護、打印機設置、POS系統(tǒng)設置和商品熱鍵設置。如圖2所示。下面就各個模塊的具體功能做詳細的闡述。

圖2 POS銷售系統(tǒng)流程圖

1)權限認證:出于安全性考慮,POS系統(tǒng)必須實行嚴格的權限管理,各種類型的用戶只有驗證身份后,才能使用各自權限范圍以內的功能模塊,并且對每一次的POS機使用人、使用時間、權限級別和放入備用金額量等都會保存到數(shù)據(jù)庫中。

2)出納銷售:這是整個POS系統(tǒng)中最核心的部分,主要用來完成商品的銷售。它詳細地顯示了顧客的購物清單、總計金額、實收金額、找零以及結帳的方式等主要信息,還包括當前出納編號、當前日期、POS機編號和當前門店編號等輔助信息。

3)出納結賬:當換班或營業(yè)結束時,對本臺POS機或當前出納的銷售情況進行簡單查詢、詳細查詢、結算并打印出銷售清單。

4)商品退貨:當顧客對所購商品要求退貨時,出納組長進入商品退貨界面,輸入顧客購物小票上的銷售流水號,將顯示出該流水號下所有商品的詳細信息,然后就可以對所要求退貨的商品進行退貨了。

5)POS機維護:此模塊完成系統(tǒng)中添加、修改、刪除POS機的編號、MAC地址以及POS機的狀態(tài)等。

6)打印機設置:用來設置銷售小票的票頭(連鎖超市的名稱)和票尾(顧客的注意事項、超市的店址、電話等信息)。

7)POS系統(tǒng)設置:對POS銷售系統(tǒng)的一些設置,包括POS機基本鍵盤的設置、電子顯示牌端口、打印方式(銷售打印或結算打?。┖蚉OS編號的設置。

8)商品熱鍵設置:對某些熱銷商品,可以在POS機的鍵盤上設置熱鍵,銷售時不用輸入條碼而直接按此熱鍵就能輸入該商品,這樣可以提高銷售速度。在這個界面里,可以完成商品熱鍵的添加、刪除、清空和查詢等操作。

5 POS系統(tǒng)開發(fā)中的關鍵技術

5.1 無盤工作站

在計算機網(wǎng)絡中,由于無盤工作站具有網(wǎng)絡系統(tǒng)安全性高、對網(wǎng)絡資源有較大的控制權、易于維護、可對工作站所用的軟件同時升級、減少開支等特點,無盤工作站在局域網(wǎng)中得到了廣泛的應用?;谏鲜鰞?yōu)點以及POS機的特點,該文所開發(fā)的POS銷售系統(tǒng)采用無盤工作站模式工作,POS機利用網(wǎng)卡上的遠程啟動芯片RPL ROM引導后臺服務器上的操作系統(tǒng),從而啟動服務器上的POS應用軟件來工作[2]。

5.2 ADO的使用

ADO(Microsoft ActiveX Data Objects)是一個數(shù)據(jù)對象的集合,是C++Builder和SQL server相關聯(lián)數(shù)據(jù)庫系統(tǒng)中一種數(shù)據(jù)訪問接口,它為應用程序提供了通過OLE DB提供者存取數(shù)據(jù)的能力,其模型如圖3所示。C+Builder ADOExpress組件封裝了這些A D O對象的功能,并在C + + Builder中以面向對象的形式實現(xiàn)其功能。在本系統(tǒng)的開發(fā)中,利用以下三個組件來實現(xiàn)應用程序和SQL Server 數(shù)據(jù)庫直接的連接及數(shù)據(jù)交換[2]:

TADOConnection:用于與ADO數(shù)據(jù)庫建立連接;多個ADO數(shù)據(jù)集和命令組件能夠共享這個連接來執(zhí)行命令,獲取數(shù)據(jù)以及對數(shù)據(jù)進行操作。

將ADOConnection的ConnectionString屬性設置為:

Provider=SQLOLEDB.1;Password=sa;Persist Security Info=True;

User ID=sa;Initial Catalog=CSData;Data Source=SBSERVER。

TADOQuery:用于獲取和操作由一條有效的SQL語句產(chǎn)生的數(shù)據(jù)集,可以直接或通過TADOConnection 組件連接到數(shù)據(jù)庫。 將ADOQuery的Connection屬性設置為:ADOConnection。

TDataSource:用來描述數(shù)據(jù)源。數(shù)據(jù)控制控件必須和TdataSource控件相聯(lián)系才能從數(shù)據(jù)庫中取得數(shù)據(jù)。將DataSource的DataSet屬性設置為:ADOQuery。

圖3 ADO模型

5.3 程序設計中的面向對象技術

由于面向對象技術集抽象性、封裝性、繼承性和多態(tài)性于一體,易于實現(xiàn)模塊化、可復用、易維護、易擴充。類是面向對象程序設計中最重要的概念之一,它將相關的數(shù)據(jù)和函數(shù)封裝起來形成一個整體,相當于一個數(shù)據(jù)結構。因此,在POS銷售系統(tǒng)的開發(fā)過程中,針對此類軟件的特點,從最基本的外圍類、實體類和控制基類開始,編寫了POS系統(tǒng)類庫,為POS系統(tǒng)的開發(fā)奠定了基礎,并為以后的軟件維護和功能擴展以及其它類似軟件的開發(fā)提供了豐富的資源。POS系統(tǒng)類庫中類的繼承關系如圖4所示。

圖4 POS系統(tǒng)開發(fā)中類的繼承關系

1)外圍類:主要完成電子顯示屏的數(shù)據(jù)顯示、打印機打印、彈開錢箱、打印機走紙和切紙等功能,具體函數(shù)如下:

bool __fastcall Show(AnsiString Content,AnsiString Com); //顯示

bool __fastcall Print(String Content,int x,int y,String FontName,int FontSize); //打印

bool __fastcall FlickCashBox(); //彈開錢箱endprint

bool __fastcall GoPaper(); //走紙

bool __fastcall CutPaper(); //切紙

2)實體類:創(chuàng)建一個數(shù)據(jù)模型窗口,用來放置ADO組件,完成數(shù)據(jù)庫連接和數(shù)據(jù)交換任務。

3)控制基類:完成數(shù)據(jù)庫開發(fā)程序常用的操作,主要包括日期操作、提示對話框、字符串操作、人民幣數(shù)字轉換漢字、數(shù)據(jù)庫操作等函數(shù)。

4)數(shù)據(jù)控制類:繼承控制基類,主要對數(shù)據(jù)庫操作,包括數(shù)據(jù)集操作函數(shù)、查詢語句函數(shù)等。

5)POS系統(tǒng)基類:主要完成POS系統(tǒng)的基本操作,具體函數(shù)如下:

bool__fastcall AddSellGlideMN(String SellGlide,String Code,int GoodsNum,float TotalMoney,float PaymentMoney,int Status,float SpareMoney);//添加銷售流水(主表)

bool__fastcall AddSellGlideSUB(String SellGlide,int OrderNum,String InsideCode,String BarCode,int Num,float Price,float SubTotal);//添加銷售流水(從表)

bool__fastcall ChaStockNum(String ShopCode,String InsideCode,int GoodsNum,bool Status);//修改庫存數(shù)量

bool__fastcall ChaStatus(String ShopCode,String Code,int CodeStatus);//修改出納狀態(tài)

bool__fastcall SetLogInfo(String Code,int Operator,String ShopCode,String POSCode);//添加操作流水

bool__fastcall ChaPosStatus(String ShopCode,String POSCode,int Status);//修改POS當前狀態(tài)

float__fastcall CashBoxQuery(String ShopCode,String POSCode);//查詢錢箱金額

6 結束語

本文結合某連鎖超市的具體實際,以前臺POS機+后臺服務器模式開發(fā)了工作于無盤工作站下的POS銷售系統(tǒng),并在超市門店進行了試驗,運行結果良好,完全滿足客戶要求。另外,在系統(tǒng)的開發(fā)中,完全采用面向對象技術,軟件具有良好的開放性,易于日后功能擴展。

參考文獻:

[1] 黃文鈺.Delphi構建進銷存系統(tǒng)—POS系統(tǒng)開發(fā)實例[M].北京:清華大學出版社,2002.

[2] 余席忠.無盤工作站組建及應用[M].北京:人民郵電出版社,2001.endprint

bool __fastcall GoPaper(); //走紙

bool __fastcall CutPaper(); //切紙

2)實體類:創(chuàng)建一個數(shù)據(jù)模型窗口,用來放置ADO組件,完成數(shù)據(jù)庫連接和數(shù)據(jù)交換任務。

3)控制基類:完成數(shù)據(jù)庫開發(fā)程序常用的操作,主要包括日期操作、提示對話框、字符串操作、人民幣數(shù)字轉換漢字、數(shù)據(jù)庫操作等函數(shù)。

4)數(shù)據(jù)控制類:繼承控制基類,主要對數(shù)據(jù)庫操作,包括數(shù)據(jù)集操作函數(shù)、查詢語句函數(shù)等。

5)POS系統(tǒng)基類:主要完成POS系統(tǒng)的基本操作,具體函數(shù)如下:

bool__fastcall AddSellGlideMN(String SellGlide,String Code,int GoodsNum,float TotalMoney,float PaymentMoney,int Status,float SpareMoney);//添加銷售流水(主表)

bool__fastcall AddSellGlideSUB(String SellGlide,int OrderNum,String InsideCode,String BarCode,int Num,float Price,float SubTotal);//添加銷售流水(從表)

bool__fastcall ChaStockNum(String ShopCode,String InsideCode,int GoodsNum,bool Status);//修改庫存數(shù)量

bool__fastcall ChaStatus(String ShopCode,String Code,int CodeStatus);//修改出納狀態(tài)

bool__fastcall SetLogInfo(String Code,int Operator,String ShopCode,String POSCode);//添加操作流水

bool__fastcall ChaPosStatus(String ShopCode,String POSCode,int Status);//修改POS當前狀態(tài)

float__fastcall CashBoxQuery(String ShopCode,String POSCode);//查詢錢箱金額

6 結束語

本文結合某連鎖超市的具體實際,以前臺POS機+后臺服務器模式開發(fā)了工作于無盤工作站下的POS銷售系統(tǒng),并在超市門店進行了試驗,運行結果良好,完全滿足客戶要求。另外,在系統(tǒng)的開發(fā)中,完全采用面向對象技術,軟件具有良好的開放性,易于日后功能擴展。

參考文獻:

[1] 黃文鈺.Delphi構建進銷存系統(tǒng)—POS系統(tǒng)開發(fā)實例[M].北京:清華大學出版社,2002.

[2] 余席忠.無盤工作站組建及應用[M].北京:人民郵電出版社,2001.endprint

bool __fastcall GoPaper(); //走紙

bool __fastcall CutPaper(); //切紙

2)實體類:創(chuàng)建一個數(shù)據(jù)模型窗口,用來放置ADO組件,完成數(shù)據(jù)庫連接和數(shù)據(jù)交換任務。

3)控制基類:完成數(shù)據(jù)庫開發(fā)程序常用的操作,主要包括日期操作、提示對話框、字符串操作、人民幣數(shù)字轉換漢字、數(shù)據(jù)庫操作等函數(shù)。

4)數(shù)據(jù)控制類:繼承控制基類,主要對數(shù)據(jù)庫操作,包括數(shù)據(jù)集操作函數(shù)、查詢語句函數(shù)等。

5)POS系統(tǒng)基類:主要完成POS系統(tǒng)的基本操作,具體函數(shù)如下:

bool__fastcall AddSellGlideMN(String SellGlide,String Code,int GoodsNum,float TotalMoney,float PaymentMoney,int Status,float SpareMoney);//添加銷售流水(主表)

bool__fastcall AddSellGlideSUB(String SellGlide,int OrderNum,String InsideCode,String BarCode,int Num,float Price,float SubTotal);//添加銷售流水(從表)

bool__fastcall ChaStockNum(String ShopCode,String InsideCode,int GoodsNum,bool Status);//修改庫存數(shù)量

bool__fastcall ChaStatus(String ShopCode,String Code,int CodeStatus);//修改出納狀態(tài)

bool__fastcall SetLogInfo(String Code,int Operator,String ShopCode,String POSCode);//添加操作流水

bool__fastcall ChaPosStatus(String ShopCode,String POSCode,int Status);//修改POS當前狀態(tài)

float__fastcall CashBoxQuery(String ShopCode,String POSCode);//查詢錢箱金額

6 結束語

本文結合某連鎖超市的具體實際,以前臺POS機+后臺服務器模式開發(fā)了工作于無盤工作站下的POS銷售系統(tǒng),并在超市門店進行了試驗,運行結果良好,完全滿足客戶要求。另外,在系統(tǒng)的開發(fā)中,完全采用面向對象技術,軟件具有良好的開放性,易于日后功能擴展。

參考文獻:

[1] 黃文鈺.Delphi構建進銷存系統(tǒng)—POS系統(tǒng)開發(fā)實例[M].北京:清華大學出版社,2002.

[2] 余席忠.無盤工作站組建及應用[M].北京:人民郵電出版社,2001.endprint

猜你喜歡
數(shù)據(jù)庫
數(shù)據(jù)庫
財經(jīng)(2017年15期)2017-07-03 22:40:49
數(shù)據(jù)庫
財經(jīng)(2017年2期)2017-03-10 14:35:35
兩種新的非確定數(shù)據(jù)庫上的Top-K查詢
數(shù)據(jù)庫
財經(jīng)(2016年15期)2016-06-03 07:38:02
數(shù)據(jù)庫
財經(jīng)(2016年3期)2016-03-07 07:44:46
數(shù)據(jù)庫
財經(jīng)(2016年6期)2016-02-24 07:41:51
數(shù)據(jù)庫
財經(jīng)(2015年3期)2015-06-09 17:41:31
數(shù)據(jù)庫
財經(jīng)(2014年21期)2014-08-18 01:50:18
數(shù)據(jù)庫
財經(jīng)(2014年6期)2014-03-12 08:28:19
數(shù)據(jù)庫
財經(jīng)(2013年6期)2013-04-29 17:59:30
延吉市| 西藏| 海盐县| 静宁县| 清河县| 栾城县| 南宁市| 古浪县| 连平县| 平安县| 漳州市| 诸城市| 阿合奇县| 钟祥市| 三穗县| 神农架林区| 宁都县| 庆云县| 桂阳县| 班戈县| 仁寿县| 孟津县| 乌兰浩特市| 上蔡县| 嘉定区| 古浪县| 岳阳县| 新密市| 靖边县| 西平县| 渭源县| 将乐县| 民勤县| 池州市| 炎陵县| 五指山市| 栾城县| 阿图什市| 万全县| 土默特左旗| 临沭县|