




已閱讀5頁,還剩19頁未讀, 繼續(xù)免費閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領
文檔簡介
課程設計報告課程名稱數(shù)據(jù)庫原理課程設計課題名稱專業(yè)計算機科學與技術班級學號姓名指導教師2010年3月30日目錄一、系統(tǒng)定義1二、需求分析1三、系統(tǒng)設計5四、詳細設計13五、課程設計總結(jié)20六、參考文獻21七、附錄22一、系統(tǒng)定義當今中國零售業(yè)發(fā)展正盛,大量超市涌現(xiàn)于各個城市,很大程度上改變了人民的消費方式。大量頻繁的物資流通,使得傳統(tǒng)低效的人工管理已不合時宜。本系統(tǒng)以一個統(tǒng)一的界面,給收銀員、采購員和管理人員提供了不同的操作及管理功能。數(shù)據(jù)庫服務器可配置在獨立的服務器上,也可配置在一臺運行本系統(tǒng)的計算機上。適用于中小型無連鎖店,或連鎖店間經(jīng)濟獨立的超市的物流管理。二、需求分析(一)系統(tǒng)綜合需求作為一個超市物流管理系統(tǒng),應該給用戶提供方便、友好而簡潔的界面進行應用,并對超市的運營過程中物資的流動詳細記錄歸檔,并將這些數(shù)據(jù)進行邏輯上的融合,以便于用戶查看、分析及管理。針對中小型超市的運營模式,有三類核心員工收銀員、采購員和管理人員,分別有三個核心功能需要實現(xiàn),銷售功能,采購功能,庫存管理和員工管理功能。管理人員的功能應該在此基礎上進行擴展,實現(xiàn)銷售記錄查詢,采購記錄查詢,商品信息查詢、添加、刪除和修改,以及促銷活動的設置。很多超市實行了會員制度,會員享受優(yōu)惠待遇。所以本系統(tǒng)應該引入會員管理的模塊,對會員進行注冊、刪除、查詢、消費跟蹤。此外,一個成熟的管理系統(tǒng)不僅應該具有基本的處理、查詢功能,還應該有一些分析、后臺監(jiān)控的功能。所以可以將基本的供銷數(shù)據(jù)進行融合,以圖形化的界面展示給用戶進行供銷情況的分析。在后臺實時監(jiān)控商品庫存量,當?shù)陀谀骋恢禃r,向前臺發(fā)出預警通知。最后,本系統(tǒng)中對實際中應該機械化處理的過程,如條形碼掃描儀,讀卡機等,進行手工操作模擬的簡化,加入相應功能模塊即可在現(xiàn)實中使用。(二)系統(tǒng)邏輯模型1數(shù)據(jù)流圖顧客POS收銀系統(tǒng)消費清單收銀員銷售商品信息,會員卡號應收金額商品信息會員信息優(yōu)惠規(guī)則消費金額庫存量減少量采購入庫銷售記錄銷售信息采購記錄采購員當前打折情況采購信息本次采購信息庫存量增加量管理人員優(yōu)惠規(guī)則管理會員管理銷售管理商品及庫存管理歷史采購信息采購記錄商品信息列表庫存商品信息商品修改信息商品查詢條件修改的信息銷售記錄銷售查詢條件采購查詢條件歷史銷售記錄用戶查詢條件會員資料,消費清單會員查詢條件用戶查詢條件會員信息優(yōu)惠規(guī)則修改信息當前優(yōu)惠規(guī)則修改的信息打折信息采購管理用戶查詢條件消費清單圖11系統(tǒng)數(shù)據(jù)流圖2數(shù)據(jù)字典項目組成類型來源去向存儲者使用頻度變動頻度當前打折情況會員優(yōu)惠規(guī)則,數(shù)據(jù)流管理人收銀員頻繁有時員(打折信息)(當前優(yōu)惠規(guī)則)管理人員管理人員優(yōu)惠規(guī)則全場優(yōu)惠規(guī)則數(shù)據(jù)存儲管理人員銷售商品信息(銷售信息)(歷史銷售記錄)數(shù)據(jù)流收銀員管理人員銷售記錄商品編號,售價,銷售數(shù)量,銷售日期,會員編號,收銀員工號數(shù)據(jù)存儲收銀員頻繁增加頻繁,基本無更改會員信息(會員資料)會員編號,姓名,住址,電話,身份證號,消費金額管理人員,收銀員管理人員消費清單商品編號,售價,銷售數(shù)量,銷售日期,會員編號,收銀員工號數(shù)據(jù)流收銀員管理人員會員信息會員編號,姓名,住址,電話,身份證號數(shù)據(jù)存儲管理人員頻繁增加不頻繁,基本無更改商品信息列表數(shù)據(jù)流管理人員,采購員,收銀員管理人員商品信息編號,名稱,規(guī)格,供應商,售價,庫存量數(shù)據(jù)存儲管理人員頻繁增加不頻繁,更改不頻繁本次采購信息歷史采購信息采購信息采購記錄數(shù)據(jù)流采購員管理人員采購記錄采購編號,商品編號,采購價格,采購數(shù)量,采購日期,采購員數(shù)據(jù)存儲采購員有時增加有時,基本無更改表11系統(tǒng)數(shù)據(jù)字典三、系統(tǒng)設計(一)概念結(jié)構(gòu)設計會員編號姓名住址電話身份證消費金額銷售商品編號名稱當前售價規(guī)格供應商庫存量編號售價銷售數(shù)量銷售時間員工工號姓名職位登陸密碼在職情況采購MNP編號購價采購數(shù)量采購時間(二)邏輯結(jié)構(gòu)設計員工信息表EMPLOYEE字段名類型NULL其他備注E_IDVARCHAR10PK員工號E_NAMEVARCHAR10INDEX員工姓名E_PWDVARCHAR100Y登陸密碼E_POSITIONTINYINT1職位0管理人員1收銀員2采購人員E_STATEBIT1在職情況會員信息表MEMBER字段名類型NULL其他備注M_IDBIGINT8PK會員編號M_NAMEVARCHAR10INDEX會員姓名M_ADDRVARCHAR50會員住址M_TELVARCHAR15會員電話M_CODEVARCHAR18會員身份證號M_CONSUMEDECIMAL會員消費金額商品信息表PRODUCT字段名類型NULL其他備注P_IDBIGINT8PK商品編號P_NAMEVARCHAR30INDEX商品名稱P_SCALEVARCHAR6規(guī)格P_PRICEDECIMAL商品當前單價P_MANUVARCHAR30供應商P_QTYINT5INDEX庫存量采購記錄表BUY字段名類型NULL其他備注B_IDBIGINT8PK采購編號P_IDBIGINT8INDEX,FK商品編號B_PRICEDECIMAL購入價格B_QTYINT5購入數(shù)量B_TIMEVARCHAR19采購時間E_IDVARCHAR10FK采購員工號銷售記錄表SELL字段名類型NULL其他備注S_IDBIGINT10PK銷售編號P_IDBIGINT8INDEX,FK商品編號S_PRICEDECIMAL銷售價格S_QTYINT5銷售數(shù)量S_TIMEVARCHAR19銷售時間E_IDVARCHAR10FK收銀員M_IDBIGINT8YFK,INDEX會員編號預警日志表WARNING字段名類型NULL其他備注W_IDINT4PK預警編號W_CONTENTTEXT預警內(nèi)容優(yōu)惠規(guī)則表DISCOUNT字段名類型NULL其他備注M_ALLFLOAT所有會員打折數(shù)D_ALLFLOAT全場打折數(shù)部分表關系圖(三)子模塊劃分及功能概述采購員管理人員收銀員登陸POS收銀系統(tǒng)采購入庫商品及庫存管理會員管理銷售管理采購管理供銷情況分析優(yōu)惠規(guī)則管理查看預警日志員工管理系統(tǒng)設置三種權(quán)限收銀員、采購員和管理人員。登陸后,可以進入不同的功能模塊,在登陸界面可以修改登陸密碼。子模塊劃分如下收銀臺POS系統(tǒng)(需要權(quán)限收銀員)顧客拿商品到收銀臺時,首先出示會員卡(如果是會員),收銀員通過讀卡機讀取會員卡的會員號,然后通過條形碼掃描儀一一掃描商品,獲得商品編號,并手動輸入購買數(shù)量,結(jié)算后顯示應付金額。在掃描過程中,結(jié)算之前,可以取消某項商品的購買信息。收銀員還可以在這里看到管理人員發(fā)送的通知消息。采購入庫(需要權(quán)限采購員)采購員只能采購數(shù)據(jù)庫中已存在的商品。對每種采購的商品輸入采購的商品編號,采購數(shù)量,和采購價格,這些商品的信息和采購的信息顯示在列表中,結(jié)算入庫后列表清空,并將數(shù)據(jù)寫入數(shù)據(jù)庫。讀卡機讀取卡號有無會員卡有無掃描商品條形碼添加到列表寫入數(shù)據(jù)庫商品及庫存管理(需要權(quán)限管理人員)1引入新商品填寫商品的名稱,規(guī)格,供應商和售價,將商品引入超市。添加后的商品庫存量為0,需要采購。供應商或規(guī)格不同的同名商品,應作為不同的商品對待。2商品查詢可以根據(jù)商品的名稱,供應商,庫存量進行查詢,并可以查看所有商品的信息列表。顯示的信息包括編號,名稱,規(guī)格,供應商和庫存量。3刪除商品只能刪除庫存量為0的商品,表明不再引進此商品。支持批量刪除。4修改商品信息在商品信息列表中選擇一行,對其基本信息進行修改。填寫采購信息添加到列表寫入數(shù)據(jù)庫填寫商品信息寫入數(shù)據(jù)庫填寫正確否是填寫查詢信息搜索數(shù)據(jù)庫顯示結(jié)果查詢?nèi)窟x擇刪除對象更新數(shù)據(jù)庫更新顯示結(jié)果多記錄刪除是否選擇修改對象更新數(shù)據(jù)庫更新顯示結(jié)果修改信息會員管理(需要權(quán)限管理人員)1會員注冊填寫顧客姓名,住址,電話及身份證號,即可注冊成為會員,享受優(yōu)惠待遇。2會員查詢可以按會員的編號和姓名進行查詢,并可以查看所有會員的信息列表。顯示的信息包括編號,姓名,住址,電話,身份證號和累計消費金額。3取消會員身份刪除會員資料,使其會員卡失效。支持批量刪除。4查看消費記錄在會員信息列表中選擇一行,對其詳細的消費記錄進行查詢。銷售管理(需要權(quán)限管理人員)對歷史的銷售記錄進行查看??梢园瓷唐肪幪?,商品名稱或日期進行查詢,也可以列出所有的銷售記錄。顯示信息包括商品編號,商品名稱,商品規(guī)格,銷售數(shù)量,銷售價格,收銀員和銷售時間。填寫會員信息寫入數(shù)據(jù)庫填寫正確否是填寫查詢信息搜索數(shù)據(jù)庫顯示結(jié)果查詢?nèi)窟x擇刪除對象更新數(shù)據(jù)庫更新顯示結(jié)果多記錄刪除是否選擇查詢對象搜索數(shù)據(jù)庫顯示清單員工管理(需要權(quán)限管理人員)1增加員工添加新上崗的員工的信息。需要填寫工號,姓名,登陸密碼和職位。2員工信息列表列出了所有員工的信息列表。顯示的信息包括工號,姓名,職位和在職情況。3員工離職將離職員工的在職情況置為“離職”。4修改員工信息在員工信息列表中選擇一行,修改其基本信息(姓名和職位)。5向收銀臺發(fā)送消息輸入運行本系統(tǒng)的收銀臺的IP和消息,可以向收銀員發(fā)送通知消息。填寫查詢信息搜索數(shù)據(jù)庫顯示結(jié)果查詢?nèi)刻顚憜T工信息寫入數(shù)據(jù)庫填寫正確否是選擇對象更新數(shù)據(jù)庫顯示更新結(jié)果選擇修改對象更新數(shù)據(jù)庫更新顯示結(jié)果修改信息填寫目標IP和消息內(nèi)容發(fā)送消息反饋發(fā)送結(jié)果搜索數(shù)據(jù)庫顯示結(jié)果采購管理(需要權(quán)限管理人員)對歷史的采購記錄進行查看??梢园瓷唐肪幪?,商品名稱或日期進行查詢,也可以列出所有的采購記錄。顯示信息包括商品編號,商品名稱,商品規(guī)格,供應商,采購數(shù)量,采購價格,采購時間,采購員和當前庫存量。供銷情況分析(需要權(quán)限管理人員)對歷史采購及銷售數(shù)據(jù),用圖形的方式顯示其供銷情況及盈利狀況,直觀的供管理人員分析。優(yōu)惠規(guī)則管理(需要權(quán)限管理人員)1會員優(yōu)惠規(guī)則設置對會員購物實行多少折優(yōu)惠。2全場優(yōu)惠規(guī)則設置促銷活動,全場商品打折多少。缺貨報告日志(需要權(quán)限管理人員)后臺實時監(jiān)測商品的庫存量,當庫存量低于某值時,就發(fā)出預警,并記入日志。這里可以查看和清空所有的預警日志。管理員可控制預警開關,如果打開,則發(fā)出報警,否則,只在后臺寫入日志。填寫查詢信息搜索數(shù)據(jù)庫顯示結(jié)果查詢?nèi)克鸭瘮?shù)據(jù)庫數(shù)據(jù)圖表顯示結(jié)果設置規(guī)則寫入數(shù)據(jù)庫其他附加功能1修改密碼,重新登陸2配置數(shù)據(jù)源連接,將數(shù)據(jù)源連接信息寫入配置文件,避免硬編碼數(shù)據(jù)源名,用戶名和密碼帶來的弊端。3幫助文檔解釋如何配置服務器及一些常見問題。4備份(增量備份和完全備份),恢復數(shù)據(jù)庫。四、詳細設計(一)開發(fā)平臺及工具開發(fā)工具MICROSOFTVISUALC60DBMSMICROSOFTSQLSERVER2000建模工具MICROSOFTVISIO,SYBASEPOWERDESIGNER第三方庫SKIN換膚庫,MD5加密類說明為了方便的實現(xiàn)多線程及SOCKET通信等功能,以及個人熟悉程度的因素,選擇了VC60的開發(fā)平臺。而在WINDOWS平臺上為數(shù)不多的DBMS產(chǎn)品中,ORACLE過于龐大,不利于在低配置的機器上運行;ACCESS又過于小型,不能負載大量的數(shù)據(jù)訪問請求,所以選擇了適中的MSSQLSERVER。為了彌補VC做界面困難的缺陷,軟件用了一個換膚的共享庫SKIN,以DLL形式附帶在程序包中。另外在登陸密碼的加密存儲中,用到了流行的MD5加密,算法實現(xiàn)來源于WWWCSDNNET。掃描數(shù)據(jù)庫檢查庫存量查看缺貨日志缺貨日志顯示寫入開啟報警報警是(二)存儲過程及觸發(fā)器作為數(shù)據(jù)庫應用系統(tǒng),數(shù)據(jù)的一致性需要得到保證,通過單純的手工編碼方式,工作煩瑣,容易出錯,而且不易于擴展。采用DBMS的外碼約束,UNIQUE約束,觸發(fā)器的使用來解決這一問題。在查詢效率方面,三表及四表連接查詢的過程用存儲過程實現(xiàn)。對商品,采購,銷售表的外碼沒有強制級聯(lián)刪除和級聯(lián)修改,因不再進購某種商品,或某雇員辭職,不應該影響過去的采購,銷售記錄。查詢銷售記錄的存儲過程CREATEPROCEDUREDBOSEARCH_SELL_RECIDVARCHAR8,NAMEVARCHAR30,TIMEVARCHAR30,MIDVARCHAR8ASIFMIDBEGINSELECTPP_IDASPID,PP_NAMEASPNAME,PP_SCALEASPSCALE,SS_QTYASSQTY,SS_PRICEASSPRICE,SS_TIMEASSTIME,EE_NAMEASENAMEFROMPRODUCTP,SELLS,EMPLOYEEEWHEREPP_IDLIKEIDANDPP_NAMELIKENAMEANDSS_TIMELIKETIMEANDSP_IDPP_IDANDSE_IDEE_IDORDERBYSS_IDDESCENDIFMIDBEGINSELECTPP_IDASPID,PP_NAMEASPNAME,PP_SCALEASPSCALE,SS_QTYASSQTY,SS_PRICEASSPRICE,SS_TIMEASSTIME,EE_NAMEASENAME,PP_QTYASPQTYFROMPRODUCTP,SELLS,EMPLOYEEEWHEREPP_IDLIKEIDANDPP_NAMELIKENAMEANDSS_TIMELIKETIMEANDSM_IDMIDANDSP_IDPP_IDANDSE_IDEE_IDORDERBYSS_IDDESCENDGO查詢采購記錄的存儲過程CREATEPROCEDUREDBOSEARCH_BUY_RECIDVARCHAR8,NAMEVARCHAR30,TIMEVARCHAR30ASBEGINSELECTPP_IDASPID,PP_NAMEASPNAME,PP_SCALEASPSCALE,PP_MANUASPMANU,BB_QTYASBQTY,BB_PRICEASBPRICE,BB_TIMEASBTIME,EE_NAMEASENAMEFROMPRODUCTP,BUYB,EMPLOYEEEWHEREPP_IDLIKEIDANDPP_NAMELIKENAMEANDBB_TIMELIKETIMEANDBP_IDPP_IDANDBE_IDEE_IDORDERBYBB_IDDESCENDGO觸發(fā)器采購商品后,自動增長庫存量CREATETRIGGERQTY_INCONDBOBUYFORINSERTASUPDATEPSETPP_QTYPP_QTYIB_QTYFROMPRODUCTASPINNERJOININSERTEDASIONPP_IDIP_ID觸發(fā)器銷售商品后,自動減少庫存量,并為相應會員增加其消費金額記錄CREATETRIGGERQTY_DECONDBOSELLFORINSERTASUPDATEPSETPP_QTYPP_QTYIS_QTYFROMPRODUCTASPINNERJOININSERTEDASIONPP_IDIP_IDDECLAREMEMBERVARCHAR10DECLARECONSUMEDECIMAL9,2SETMEMBERSELECTM_IDFROMINSERTEDSETCONSUMESELECTS_PRICEFROMINSERTEDIFMEMBERBEGINUPDATEMEMBERSETM_CONSUMEM_CONSUMECONSUMEWHEREM_IDMEMBEREND觸發(fā)器刪除商品時,如果庫存量不為0,則撤銷操作。并將相應銷售及采購記錄的編號字段置空CREATETRIGGERP_DELONDBOPRODUCTFORDELETEASDECLAREQTYINTSETQTYSELECTDP_QTYFROMDELETEDASDIFQTY0BEGINRAISERROR該商品的庫存量不為0,不能刪除,0,1ROLLBACKTRANSACTIONENDELSEUPDATESSETSP_IDNULLFROMSELLASSINNERJOINDELETEDASDONSP_IDDP_IDUPDATEBSETBP_IDNULLFROMBUYASBINNERJOINDELETEDASDONBP_IDDP_IDCOMMITTRANSACTION觸發(fā)器刪除會員時,將相應銷售記錄中會員編號字段置空CREATETRIGGERMEM_DELONDBOMEMBERFORDELETEASUPDATESELLSETM_IDNULLWHEREM_IDSELECTM_IDFROMDELETED(三)編碼設計系統(tǒng)采用MFC對話框應用程序以方便開發(fā),MFC對常用API做了很好的封裝。每個對話框?qū)粋€類,每個數(shù)據(jù)庫表對應一個類。根據(jù)程序需要,自己再一次做了封裝。1在數(shù)據(jù)源連接方面,使用INI配置文件來存儲DSN,UID,PWD的信息,以避免硬編碼方式帶來的種種問題不能修改密碼,不能換數(shù)據(jù)庫用戶等等。主要采用了GETPRIVATEPROFILESTRING和WRITEPRIVATEPROFILESTRING兩個WINDOWSAPI。1很多數(shù)據(jù)需要通過列表框來顯示,因此封裝了一個CLISTSTYLE類來設置列表框樣式及對其進行通用操作。IFNDEF_LISTSET_H_DEFINE_LISTSET_H_CLASSCLISTSTYLEPROTECTEDCLISTCTRLM_PLIST/列表框控件指針PUBLICCLISTSTYLEVOIDATTACHCTRLCLISTCTRLPLIST/把對象與列表框關聯(lián)VOIDSETSTYLEVOID/設置列表框的EXSTYLE/為列表框添加HEADER屬性VOIDSETCOLCSTRINGPCOL,INTPWIDTH,INTSIZE/將上兩個函數(shù)融合VOIDSETSTYLEANDCOLCSTRINGPCOL,INTPWIDTH,INTSIZE/向列表框插入一行數(shù)據(jù)VOIDINSERTITEMSINTNITEM,CSTRINGPITEM,INTSIZEENDIF2由于存儲過程不能通過CLASSWIZARD創(chuàng)建類,所以手工完成類建立和RFX數(shù)據(jù)交換。3在需要的地方采用多線程。程序啟動初始化數(shù)據(jù)庫連接時,顯示啟動畫面。備份數(shù)據(jù)庫時顯示進度。后臺監(jiān)控商品庫存量(四)界面設計登陸界面收銀臺POS界面采購入庫界面管理人員主界面五、課程設計總結(jié)這次課程設計我花了兩個星期的時間來完成,前期做了一些準備工作,了解了一般超市物流管理方面的背景知識,然后再權(quán)衡了時間和人力,做了適量簡化,并完成了初步的需求分析。稍作細化后,便開始設計數(shù)據(jù)庫。而后做了界面設計,完成了程序大部分的主要界面。而在編碼方面,我從系統(tǒng)的功能、規(guī)模和實用方面考慮,并沒有去學習和采用過多花哨的新技術,如NET、分布式等企業(yè)級應
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度企業(yè)實習生勞動合同實習期薪資及培訓補貼協(xié)議
- 二零二五年度自動化立體倉庫租賃合同書
- 2025年中國環(huán)氧防滑地坪面漆市場調(diào)查研究報告
- 二零二五年度金融衍生品交易保密協(xié)議違約金及風險控制合同
- 零星工程合同(2025年度)光伏發(fā)電項目配套
- 2025年度高科技企業(yè)委托招聘協(xié)議書
- 二零二五年度雙方父母贍養(yǎng)責任劃分及夫妻協(xié)作協(xié)議
- 二零二五年度健身中心專業(yè)教練任職合同
- 2025年度橋梁鋼管架安裝與防腐處理合同
- 二零二五年度教育機構(gòu)獎學金贈與協(xié)議書
- 護理禮儀與人文關懷
- 運維服務體系建立實施方案(5篇)
- 路面基層(級配碎石)施工方案
- 2025年日歷(日程安排-可直接打印)
- 四川政采評審專家入庫考試基礎題復習試題及答案(一)
- 患者手術風險評估與術前準備制度
- 口腔執(zhí)業(yè)醫(yī)師定期考核試題(資料)帶答案
- 2024年三八婦女節(jié)婦女權(quán)益保障法律知識競賽題庫及答案(共260題)
- 2023年7月浙江省普通高中學業(yè)水平考試(學考)語文試題答案
- 2024年計算機軟件水平考試-初級信息處理技術員考試近5年真題集錦(頻考類試題)帶答案
- 發(fā)熱病人護理課件
評論
0/150
提交評論