零售商庫存管理系統_第1頁
零售商庫存管理系統_第2頁
零售商庫存管理系統_第3頁
零售商庫存管理系統_第4頁
零售商庫存管理系統_第5頁
已閱讀5頁,還剩13頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、信息系統分析與設計課程設計報告課題: 零售商庫存管理系統學生姓名:學生學號:專業班級:同組姓名:指導教師:設計時間:評閱意見:評定成績:指導老師簽名:年月日目 錄1、課程設計目的及意義 . 31.1目的 . 31.2意義 . 32、系統分析與設計 . 42.1 功能模塊圖 . 42.2 功能分析 . 42.3 數據流圖 . 52.4 數據字典 . 62.5 概念結構設計 . 62.6 邏輯結構設計 . 73、系統的實施運行結果 . 83.1 運行環境 . 83.2 測試數據 . 83.3 運行結果 . 94、總結 . 125、參考文獻 . 136、附錄 . 141、課程設計目的及意義1.1 目

2、的隨著因特網的興起和應用的普及,目的利用信息系統對企業的庫存水平進行科學合理控制的技術得到了迅速發展,并逐步取代傳統手工方式記錄庫存信息。由于庫存領域存在著降低成本的廣闊空間,庫存管理尤顯重要。通過改善物資采購方式和庫存控制方法,可以降低采購費用和保管費用,減少資金占用。雖然加大庫存可以起到提高客戶服務率的作用,但是,加大庫存不僅要占用大量資金,而且要占用較大的儲存空間,會帶來成本支出的上升,在過高成本下維持的高水平服務也不會長久;然而,庫存過低無法滿足訂單的靈活性,訂單交貨周期將加長,降低企業競爭力。因此,必須通過有效的庫存控制,在滿足物流服務需求的情況下,保持適當的庫存量。1.2 意義本次

3、課程設計選取超市為研究對象,以這一熟悉的生活實體為依據分析如何更好地利用計算機系統和信息技術管理超市庫存信息,從而更好地認識到管理信息系統在人們生活中所發揮的日益重要的作用。利用網絡對庫存信息進行記錄和操作,實現企業的信息化,有效控制企業成本,提高企業的綜合競爭力。隨著科學技術的發展,新產品不斷出現,產品的更新換代速度加快。有的產品,平均每二三個月更新換代一次。如果庫存過多,就會因新產品的出現使舊產品價值縮水,嚴重的情況可能會一錢不值。從另一個角度看,消費者的需求在朝著個性化、多樣化方向發展,對商品的挑剔程度在增大,從而導致商品的花色品種越來越多,這給庫存管理帶來一定難度,也使庫存的風險加大。

4、一旦消費者的需求發生變化,過多的庫存就會成為陷入經營困境的直接原因。因此,在多品種小批量的商品流通時代,更需要運用現代庫存管理技術科學地管理庫存。2、系統分析與設計2.1 功能模塊圖本系統功能模塊圖如下 : 圖 1 系統功能模塊圖2.2 功能分析考慮到系統的安全性,首先對登錄的人員進行了權限判斷:顧客、采購員、銷售員、經理、超級用戶。我所負責的入庫部分主要是針對采購員需要實現的功能:查看當前數據庫中的訂單,按需求增加訂單,對訂單狀態進行修改的功能。當某項物資缺乏時, 在零售商發出訂貨信息前首先需要查看當前是否發出過對該物資的訂單, 若未對該物資訂購時則發出訂貨信息,同時向數據中添加該訂單記錄,

5、當物資抵達后應修改數據中訂單狀態,確定該訂單已經完成。超市庫存管理系統入庫管理子系統出庫管理子系統查詢訂單修改訂單查詢訂單刪除訂單增加訂單2.3 數據流圖本系統數據流圖如下:圖 2 入庫功能模塊的頂層數據流圖圖 3 入庫功能模塊的第一層數據流圖管理人員1 訂貨事務處理庫存信息表2 產生訂單采購員訂單信息表庫存清單訂單信息事務訂單信息訂單信息管理人員訂貨系統采購員事務訂單信息圖 4 入庫功能模塊的第二層數據流圖2.4 數據字典圖數據字典2.5 概念結構設計本系統 e-r 圖如下:m 1 圖 6 系統 e-r 圖管理人員庫存信息表采購員1.1 查詢訂單1.2 查詢訂單庫存信息訂單清單事務訂單信息表

6、訂單信息訂單信息2 產生訂單事務1.3 修改訂單狀態事務商品商品編號商品名稱庫存數量產 地單 價品 牌訂購采購員采購員編號訂購日期訂購數量訂購廠家訂購狀態庫存數量2.6 邏輯結構設計根據系統的設計,將e-r圖轉換為關系模型如下:(a) 、庫存信息表(商品編號,商品名稱,庫存數量,產地,單價,品牌);(b) 、用戶信息(用戶編號,名稱,密碼,住址,用戶權限,性別,年齡);(c) 、訂貨信息表(采購員編號,商品名稱,訂購數量,庫存數量,訂購廠家,訂購日期,訂購狀態,訂購人姓名) ;相應建立的三張表的字段名、字段名稱、字段類型、字段長度、主關鍵字、是否為空設置如下 : 表 1 庫存信息表字段名名稱字

7、段類型長度主關鍵字非空goodsid 商品編號int 4 是是goodsname 商品名稱varchar 50 否否goodsnumber 庫存數量int 4 否否goodsproduct 產地varchar 50 否否goodsprice 單價float 8 否否goodpp 品牌varchar 50 否否表 2 用戶信息表字段名名稱字段類型長度主關鍵字非空userid 用戶編號int 4 是是username 名稱varchar 50 否否userpassword 密碼varchar 50 否否useraddress 住址varchar 50 否否userauthority 用戶權限var

8、char 50 否否usergender 性別varchar 10 否否userage 年齡int 4 否否表 3 訂貨信息表字段名名稱字段類型長度主關鍵字非空buyerid 采購員編號int 4 是是buyergoodsname 商品名稱varchar 50 否否buyergoodsnumber 訂購數量varchar 50 否否goodsnumber 庫存數量int 4 否否buyermanufacturer 訂購廠家varchar 50 否否buyerdate 訂購日期varchar 50 否否buyerstatus 訂購狀態varchar 10 否否buyername 訂購人姓名var

9、char 50 否否3、系統的實施運行結果3.1 運行環境操作系統: windows2000/xp或更高的版本;運行環境: borland jbuilder9;數據庫開發工具: microsoft access 2000。3.2 測試數據運行時各表的測試數據如下:表 4 庫存信息表測試數據goodsid goodsname goodsnumber goodsproduct goodsprice goodssize 1 手機100 北京888 直板2 音響80 上海88 漫步者3 mp3 200 南京158 oppo 4 mp4 150 天津250 oppo 表 5 用戶信息表測試數據useri

10、d user name user password user address user authority user gender userage 1 朱傳蓉123456 常德admin 女20 2 陳霞123456 瀏陽manager 女20 3 吳軍123456 株洲saler 男21 4 駱軍123456 永州buyer 男21 5 江展123456 岳陽customer 男21 12 test 123456 常德customer 女20 13 劉麗123456 湖南常德customer 女22 14 萬方123456 湖南常德saler 男25 表 6 訂貨信息表測試數據buyer i

11、d buyer goodsname buyer goodsnumber buyer menfacture buyerdate buyer status 2 手機100 摩托羅拉2010 未訂3 哇哈哈1000 杭州哇哈哈集團2009 已訂4 音響20 微軟2009 未訂5 電腦100 惠普2007.10.10 未訂7 爽歪歪100 太子奶2010.01.02 未訂3.3 運行結果以采購員身份登錄系統,可以進行查詢訂單,如圖7;分項查詢,如圖;增加訂單,如圖 18;更改訂單狀態,如圖20。圖 7 查看全部訂貨單圖 8 分項查詢對話框圖 9 分項查詢記錄圖 10 增加訂單對話框圖 11 增加訂單后

12、圖 12 更改訂單狀態圖 13 更改訂單后4、總結在課堂上我們學到了很多有關管理信息系統的理論知識,而這一周就是檢驗我們所掌握理論知識的時刻。 通過這一周的上機實踐使我對管理信息系統有了進一步認識。這一次我們小組的課題是零售商庫存信息管理系統。零售商設置合理的庫存水平是為了保證生產和經營過程的連續性。庫存起著蓄水池的作用, 通過設置庫存可以避免由不確定性引起缺貨而造成生產和經營過程的停頓。而傳統的庫存控制方法在這個信息發達的社會顯然是不適用的了,利用internet實現有效地信息系統,建立暢通的信息溝通渠道能夠幫助零售商維持合理的庫存水平,以便于降低成本,提高自身競爭力。然而,要真正做好這一系

13、統卻不那么簡單,在設計過程中和設計完成之后我們又發現了很多的不足之處。 這次課程設計我們小組選擇了超市這一生活中常見的零售商作為分析對象, 通過對它的日常運作與庫存的分析,我們組設計了本課題的簡單超市管理信息系統。因為超市管理系統難免會涉及到大量的交易數據,所以確保對數據庫的正確操作以及數據庫本身的安全也是非常重要的,同時通過對數據庫中數據進行分析我們便能總結其規律,以確定合理的庫存水平。我們小組設計的超市管理系統設計了四種角色:超市管理員、經理、采購員、銷售員,并根據登錄人員的身份設計相關功能。我所負責的入庫部分主要是實現對購入物資的訂單記錄, 對現有訂單的查詢以判斷是否需要訂購商品,對訂單

14、狀態的修改等功能。通過這次的實踐操作, 讓我發現了我自己還有許多不足之處,課本知識不夠牢固,還有待加強理論知識。“實踐出真知”,在把理論運用到實踐的過程中,我學到了許多的東西, 鞏固了在課堂上學到的知識, 懂得如何把所學的東西應運到實踐中,讓我知道理論和實踐是分不開的,我們學習的最終目標就是要把理論變成實踐的指導。 從此次設計中, 我學到做任何事都要付出一定的努力才能夠取得成果。這一周的學習不僅鞏固了我們在課堂上所學的理論知識,而且幫助我們進一步了解管理信息系統以及它在我們生活中的重大作用。5、參考文獻1 黃梯云.管理信息系統 m. 北京:高等教育出版社 .2000 2 黃曉東.java 課程

15、設計案例精編 (第二版 )m. 北京:中國水利出版社 ,2007 3 向傳杰.java 編程案例教程 m. 北京:電子工業出版社 ,20044 王國華.供應鏈管理 m. 北京:機械工業出版社 ,20035 薛華成.管理信息系統 (第四版 )m. 北京:清華大學出版社 ,20036、附錄import java.awt.*; import javax.swing.*; import com.borland.dx.sql.dataset.*; import com.borland.dbswing.*; import com.borland.jbcl.layout.*; import java.awt

16、.event.*; public class buyerwindow extends jdialog private jpanel panel1 = new jpanel(); private database database1 = new database(); private querydataset querydataset1 = new querydataset(); private querydataset querydataset2 = new querydataset(); private querydataset querydataset3 = new querydatase

17、t(); private querydataset querydataset4 = new querydataset(); private querydataset querydataset5 = new querydataset(); private xylayout xylayout1 = new xylayout(); private jpanel jpanel1 = new jpanel(); private xylayout xylayout2 = new xylayout(); private jdbtable jdbtable1 = new jdbtable(); private

18、 tablescrollpane tablescrollpane1 = new tablescrollpane(); private jbutton jbutton1 = new jbutton(); private jbutton jbutton2 = new jbutton(); private jbutton jbutton5 = new jbutton(); private jbutton jbutton3 = new jbutton(); private jbutton jbutton4 = new jbutton(); public buyerwindow(frame frame,

19、 string title, boolean modal) super(frame, title, modal); try jbinit(); pack(); catch(exception ex) ex.printstacktrace(); public buyerwindow() this(null, 采購員 , false); private void jbinit() throws exception panel1.setlayout(xylayout1); database1.setconnection(new com.borland.dx.sql.dataset.connectio

20、ndescriptor(jdbc:odbc:driver=microsoft access driver (*.mdb);dbq=.xin.mdb, , , false, sun.jdbc.odbc.jdbcodbcdriver); jpanel1.setlayout(xylayout2); jbutton1.settext(查看全部訂貨單); jbutton1.addactionlistener(new java.awt.event.actionlistener() public void actionperformed(actionevent e) jbutton1_actionperfo

21、rmed(e); ); jbutton2.settext(分項查詢 ); jbutton2.addactionlistener(new java.awt.event.actionlistener() public void actionperformed(actionevent e) jbutton2_actionperformed(e); ); jbutton5.settext(退出 ); jbutton5.addactionlistener(new java.awt.event.actionlistener() public void actionperformed(actionevent

22、 e) jbutton5_actionperformed(e); ); jbutton3.settext(增加訂單 ); jbutton3.addactionlistener(new java.awt.event.actionlistener() public void actionperformed(actionevent e) jbutton3_actionperformed(e); ); jbutton4.settext(更改訂單狀態); jbutton4.addactionlistener(new java.awt.event.actionlistener() public void

23、actionperformed(actionevent e) jbutton4_actionperformed(e); ); panel1.add(jpanel1, new xyconstraints(190, 154, -1, -1); panel1.add(jdbtable1, new xyconstraints(1, 0, 399, 238); panel1.add(tablescrollpane1, new xyconstraints(192, 117, -1, -1); panel1.add(jbutton2, new xyconstraints(155, 244, 110, 23)

24、; panel1.add(jbutton1, new xyconstraints(8, 244, 128, 22); panel1.add(jbutton3, new xyconstraints(9, 274, 128, 20); panel1.add(jbutton4, new xyconstraints(155, 274, 111, 21); panel1.add(jbutton5, new xyconstraints(292, 274, 106, 22); this.getcontentpane().add(panel1, borderlayout.south); public void

25、 cancel() dispose() ; /瀏覽全部商品訂貨單 void jbutton1_actionperformed(actionevent e) initialize () ; querydataset1.setquery(new com.borland.dx.sql.dataset.querydescriptor(database1, select buyer_table.buyerid,buyer_table.buyergoodsname,buyer_table.buyergoodsnumber,buyer_table.buyerm + anufacturer,buyer_tab

26、le.buyerdate,buyer_table.buyerstatus from buyer_table, null, true, load.all); jdbtable1.setdataset(querydataset1); querydataset1.refresh(); /增加訂貨單 void jbutton3_actionperformed(actionevent e) addorderform addorderform = new addorderform() ; dimension dlgsize = addorderform.getpreferredsize(); dimens

27、ion frmsize = getsize(); point loc = getlocation(); addorderform.setlocation(frmsize.width - dlgsize.width) / 2 + loc.x, (frmsize.height - dlgsize.height) / 2 + loc.y); addorderform.setmodal(true); addorderform.pack(); addorderform.show(); querydataset1.refresh(); void jbutton5_actionperformed(actio

28、nevent e) cancel() ; /分項選擇 void jbutton2_actionperformed(actionevent e) queryorderform queryorderform = new queryorderform() ; dimension dlgsize = queryorderform.getpreferredsize(); dimension frmsize = getsize(); point loc = getlocation(); queryorderform.setlocation(frmsize.width - dlgsize.width) /

29、2 + loc.x, (frmsize.height - dlgsize.height) / 2 + loc.y); queryorderform.setmodal(true); queryorderform.pack(); queryorderform.show(); switch(queryorderform.gettestquery() case 1: initialize () ; string buyergoodsname = queryorderform.getbuyergoodsname().trim(); querydataset2.setquery(new com.borla

30、nd.dx.sql.dataset.querydescriptor(database1, select buyer_table.buyerid,buyer_table.buyergoodsname,buyer_table.buyergoodsnumber,buyer_table.buyerm + anufacturer,buyer_table.buyerdate,buyer_table.buyerstatus from buyer_table where buyergoodsname = +buyergoodsname+, null, true, load.all); jdbtable1.se

31、tdataset(querydataset2); querydataset2.refresh(); break; case 2: initialize () ; string buyermanufacturer = queryorderform.getbuyermanufacturer().trim(); querydataset3.setquery(new com.borland.dx.sql.dataset.querydescriptor(database1, select buyer_table.buyerid,buyer_table.buyergoodsname,buyer_table

32、.buyergoodsnumber,buyer_table.buyerm + anufacturer,buyer_table.buyerdate,buyer_table.buyerstatus from buyer_table where buyermanufacturer = +buyermanufacturer+, null, true, load.all); jdbtable1.setdataset(querydataset3); querydataset3.refresh(); break; case 3: initialize () ; string buyerdate = quer

33、yorderform.getbuyerdate().trim(); querydataset4.setquery(new com.borland.dx.sql.dataset.querydescriptor(database1, select buyer_table.buyerid,buyer_table.buyergoodsname,buyer_table.buyergoodsnumber,buyer_table.buyerm + anufacturer,buyer_table.buyerdate,buyer_table.buyerstatus from buyer_table where buyerdate = +buyerdate+, null, true, load.all); jdbtable1.setdataset(querydataset4); querydataset4.refresh(); break; case 4: initialize () ; st

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論