商貿(mào)公司庫存管理信息系統(tǒng)畢業(yè)論文_第1頁
商貿(mào)公司庫存管理信息系統(tǒng)畢業(yè)論文_第2頁
商貿(mào)公司庫存管理信息系統(tǒng)畢業(yè)論文_第3頁
商貿(mào)公司庫存管理信息系統(tǒng)畢業(yè)論文_第4頁
商貿(mào)公司庫存管理信息系統(tǒng)畢業(yè)論文_第5頁
已閱讀5頁,還剩27頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、 . . . 目 錄1緒 論11.1課題來源11.2開發(fā)現(xiàn)狀11.3本人工作22系統(tǒng)分析32.1功能需求32.2數(shù)據(jù)流圖42.3數(shù)據(jù)字典62.4開發(fā)環(huán)境選擇83系統(tǒng)設(shè)計(jì)103.1模塊設(shè)計(jì)103.2數(shù)據(jù)庫設(shè)計(jì)114系統(tǒng)實(shí)現(xiàn)144.1系統(tǒng)主界面144.2用戶登錄144.3商品入庫154.4商品出庫164.5入庫查詢174.6庫存查詢184.7報(bào)表打印194.8操作員管理204.9商品管理204.10人員管理214.3修改密碼22結(jié)束語24致25參考文獻(xiàn)26附錄281 緒論(前言)1.1 課題來源某小型商貿(mào)公司(以下簡稱ABC公司)主要從事鞋類產(chǎn)品的批發(fā)、銷售等業(yè)務(wù)活動(dòng),根據(jù)業(yè)務(wù)的不同下屬若干個(gè)業(yè)務(wù)

2、部門,如皮鞋、布鞋、運(yùn)動(dòng)鞋等。為了對(duì)全公司使用的各類物品材料進(jìn)行統(tǒng)一管理,ABC公司設(shè)立了一個(gè)獨(dú)立的庫房部門。ABC公司與若干供應(yīng)商保持了良好的客戶關(guān)系,這些供應(yīng)商每天都可能給ABC公司供應(yīng)各種物品。供應(yīng)的這些物品有些是直接被ABC公司的 各個(gè)業(yè)務(wù)部門接收,也有些是被庫房部接收,各事業(yè)部需要的時(shí)候再到庫房部領(lǐng)用。無論是 被各個(gè)事業(yè)部直接接收,還是被庫房部接收,所有供應(yīng)商每供應(yīng)一筆物品都要到庫房部填寫收貨單進(jìn)行登記在冊(cè),以備財(cái)務(wù)統(tǒng)計(jì)時(shí)使用,即填寫收貨日?qǐng)?bào)。事業(yè)部需要物品時(shí),必須先填寫好領(lǐng)貨單并在庫房部進(jìn)行登記在冊(cè),以后才能從庫房部領(lǐng)取所需物品。ABC公司庫房部管理的物品有100種,分為面料,鞋子

3、等,ABC公司庫房部的主要業(yè)務(wù)包括以下容。l 統(tǒng)計(jì)每個(gè)收貨單、領(lǐng)貨單上物品的總金額。l 不定期的查詢所所需收貨單和領(lǐng)貨單的物品收貨/領(lǐng)用明細(xì)。l 統(tǒng)計(jì)每個(gè)物品在一定時(shí)間區(qū)間的收貨總合計(jì)以與領(lǐng)用總合計(jì)。l 統(tǒng)計(jì)每個(gè)物品每個(gè)月的庫存結(jié)存合計(jì)(包括:上個(gè)月庫存、本月入庫合計(jì)、本月出庫合計(jì)、本月庫存總結(jié))。l 統(tǒng)計(jì)指定時(shí)間,各個(gè)部門分別領(lǐng)用不同總類物品的金額總計(jì),并統(tǒng)計(jì)相關(guān)的金額合計(jì)。這是一份領(lǐng)用報(bào)表,將上報(bào)給ABC公司的財(cái)務(wù)部。l 統(tǒng)計(jì)指定時(shí)間ABC公司供應(yīng)過物品的各個(gè)供應(yīng)商分別向部門提交的供應(yīng)物品的金額合計(jì)。上面介紹了庫房部的主要業(yè)務(wù)情況。為提高工作效率,增強(qiáng)庫房部提供各個(gè)物品庫存報(bào)表的能力,該公

4、司主管決定為庫房部設(shè)計(jì)和開發(fā)一個(gè)小型的 庫存管理信息系統(tǒng)。該系統(tǒng)需要滿足當(dāng)前庫房部的 主要業(yè)務(wù)需求,期望達(dá)到不使用Excel表格卻可以方便的提供各類統(tǒng)計(jì)信息的查詢的目的。1.2 開發(fā)現(xiàn)狀1、國外現(xiàn)狀研究:計(jì)算機(jī)在管理中的應(yīng)用開始于1954年,當(dāng)時(shí)美國首先用計(jì)算機(jī)處理工資單。40多年來,計(jì)算機(jī)在處理管理信息方面發(fā)展迅速。例如,60年代美國計(jì)算機(jī)在管理中應(yīng)用項(xiàng)目不到300項(xiàng),到了1975年達(dá)到2670項(xiàng)。而現(xiàn)在,美國在財(cái)務(wù)會(huì)計(jì)上90%的工作由計(jì)算機(jī)完成;物資管理中80100%的信息處理由計(jì)算機(jī)完成;計(jì)劃管理中是8090%。據(jù)計(jì)算機(jī)應(yīng)用方面發(fā)展較快的國家統(tǒng)計(jì),計(jì)算機(jī)用于經(jīng)濟(jì)管理的約占80%;用于科技

5、運(yùn)算的占8%;用于生產(chǎn)過程控制的占12%。因此,經(jīng)濟(jì)管理是計(jì)算機(jī)應(yīng)用的主要領(lǐng)域。當(dāng)然,由于庫存管理在經(jīng)濟(jì)管理中占重要地位,其計(jì)算機(jī)化在發(fā)達(dá)國家中也已經(jīng)達(dá)到了相當(dāng)高的水平。我國在全國圍推廣計(jì)算機(jī)在管理中的應(yīng)用,是在70年代末開始的,雖然起步較晚,近幾年發(fā)展卻較快,特別是微型計(jì)算機(jī)的出現(xiàn)和普與為信息處理提供了物美價(jià)廉的手段,對(duì)于推動(dòng)我國管理信息處理的現(xiàn)代化起了重要的作用。 2、目前存在的問題:庫存管理對(duì)企業(yè)來說是一項(xiàng)繁瑣復(fù)雜的工作,每天要處理大量的單據(jù)數(shù)據(jù)。為與時(shí)結(jié)清每筆業(yè)務(wù),盤點(diǎn)庫存和貨物流動(dòng)情況,保證企業(yè)生產(chǎn)用料以與貨物安全,庫管人員要花費(fèi)大量人力物力和時(shí)間來作數(shù)據(jù)記錄統(tǒng)計(jì)工作。在世

6、界發(fā)達(dá)國家,庫存管理的計(jì)算機(jī)化水平已經(jīng)很高了,盡管我國的生產(chǎn)企業(yè)在這方面也有了很強(qiáng)的意識(shí)和長足的進(jìn)步,但仍存在這樣、那樣的一些問題。表現(xiàn)之一:有的企業(yè)單位的庫存管理部分目前仍為手工、半手工操作。從供應(yīng)單位辦理入庫登記開始,到使用單位輸領(lǐng)料出庫手續(xù)為止,所有操作基本上都是由倉庫管理人員筆寫,手理,加上算盤、計(jì)算器來完成。這不僅繁鎖,效率低,而且缺乏庫存管理的一些基本手段,如庫存狀況統(tǒng)計(jì),查詢經(jīng)濟(jì)訂貨量計(jì)算等,這給企業(yè)在一定程度上造成了管理上的落后,與經(jīng)濟(jì)利益上的損失。表現(xiàn)之二為:有的單位的庫存管理部已上了微機(jī),但對(duì)微機(jī)的利用效率極低,有的在用它打游戲,有的僅把它當(dāng)計(jì)算器或打字機(jī)來用。表現(xiàn)之三為:

7、有的企業(yè)單位既有了微機(jī)同時(shí)也有了庫存管理軟件,但硬件上去了,軟件上不去。因?yàn)樗麄冇玫膸齑婀芾碥浖?,大多為自己的工作人員與其他一些非專業(yè)人員所開發(fā)的簡單的管理程序,很難稱得上是“庫存管理信息系統(tǒng)軟件”這些程序的弱點(diǎn)多表現(xiàn)為:1)系統(tǒng)開發(fā)時(shí)無科學(xué)的理論支持。2)開發(fā)過程中調(diào)研不全面。3)軟件編寫時(shí)模型不清晰完整。4)所用開發(fā)工具落后(如Foxbase等)。1.3 本人工作在ABC公司了解他們的庫存管理系統(tǒng)的實(shí)際需求,根據(jù)軟件工程的思想,進(jìn)行系統(tǒng)分析、系統(tǒng)設(shè)計(jì)、編碼和調(diào)試,根據(jù)需求分析,系統(tǒng)具有用戶登錄、商品入庫、出庫、入庫查詢、出庫查詢、庫存結(jié)余、月結(jié)存等功能,基本上能解決ABC公司的需求。2 系

8、統(tǒng)分析系統(tǒng)分析就是明確系統(tǒng)開發(fā)的目標(biāo)和用戶的信息需求,提出系統(tǒng)的邏輯方案。系統(tǒng)分析在整個(gè)系統(tǒng)開發(fā)過程中,是要解決“做什么”的問題,把要解決哪些問題、要滿足用戶哪些具體的信息需求調(diào)查、分析清楚,從邏輯上或從功能需求上提出系統(tǒng)的方案。2.1 功能需求根據(jù)前面的課題來源,提出如下的幾個(gè)主要的功能需求:2.1.1 登錄認(rèn)證作為一個(gè)企業(yè)實(shí)際應(yīng)用項(xiàng)目,登錄認(rèn)證是必不可少的。本項(xiàng)目的用戶登錄管理比較簡單,給系統(tǒng)分配幾個(gè)用戶,通過登錄界面登錄系統(tǒng)。在每一次頁面操作之前都需要進(jìn)行用戶身份認(rèn)證。只有合法用戶才能進(jìn)行操作。2.1.2 入庫操作入庫操作主要是管理庫房部每天可能收到的各類物品的收貨單(即收貨日?qǐng)?bào))。庫房

9、工作人員通過該功能模塊把每天的收貨單位與其上面的收貨物品明細(xì)輸入到數(shù)據(jù)庫。2.1.3 出庫操作出庫模塊與入庫模塊相似,主要是管理庫房部每天可能收到的來自各個(gè)業(yè)務(wù)部門的物品領(lǐng)貨單(即領(lǐng)貨日?qǐng)?bào))。庫房工作人員通過該功能模塊把每天的領(lǐng)貨單與其上面的領(lǐng)貨物品明細(xì)輸入到數(shù)據(jù)庫。2.1.4 入庫查詢?cè)撃K支持按供應(yīng)商或收貨部門關(guān)鍵詞查詢?cè)O(shè)定時(shí)間區(qū)間的收貨單信息。2.1.5 出庫查詢?cè)撃K支持按領(lǐng)貨部門關(guān)鍵詞查詢?cè)O(shè)定時(shí)間區(qū)間的領(lǐng)貨信息。2.1.6 物品信息管理物品管理信息模塊比較簡單,主要是支持添加新的物品信息到數(shù)據(jù)庫中。同時(shí)支持修改、刪除該物品的信息。2.1.7 操作員管理操作員管理模塊主要支持添加、刪除

10、、修改新的系統(tǒng)管理人員信息到數(shù)據(jù)庫中。2.1.8 人員管理人員管理模塊主要支持添加校驗(yàn)員、領(lǐng)貨人等的人員信息到數(shù)據(jù)庫中,同時(shí)支持添加、刪除功能。2.1.9 修改密碼修改密碼模塊主要支持該系統(tǒng)的操作人員的密碼,并將新密碼信息儲(chǔ)存到數(shù)據(jù)庫中。2.1.10 庫房結(jié)存合計(jì)庫房結(jié)存合計(jì)功能模塊是本系統(tǒng)的核心功能模塊。其功能主要是查詢庫房中庫存結(jié)存統(tǒng)計(jì)。2.1.11 月結(jié)存月結(jié)存功能模塊主要是統(tǒng)計(jì)在一段時(shí)間區(qū)間段的庫存量。2.1.12 報(bào)表打印報(bào)表打印模塊主要由三個(gè)子模塊組成,分別為:入庫報(bào)表打印、出庫報(bào)表打印、庫存報(bào)表打印,這可以作為一份財(cái)務(wù)報(bào)表給財(cái)務(wù)部。2.2 數(shù)據(jù)流圖2.2.1 業(yè)務(wù)流程圖銷售科車

11、間入庫單檢驗(yàn)合格入庫單入庫記賬入庫帳合格入庫單批發(fā)出庫單零售出庫單付貨記賬付貨記賬批發(fā)出庫帳零售出庫帳記庫存臺(tái) 帳庫存臺(tái)帳統(tǒng)計(jì)報(bào)表月報(bào)表圖2-1 業(yè)務(wù)流程圖2.2.2 數(shù)據(jù)流程圖現(xiàn)行系統(tǒng)的頂層數(shù)據(jù)流程圖如圖2-2所示。對(duì)頂層圖中的數(shù)據(jù)流“l(fā),2,3,4”說明如下:1庫存管理234本文來源于知名教育網(wǎng),更多文件請(qǐng)見文章最后參考文獻(xiàn)。圖2-2 頂層DFD“1”:車間產(chǎn)品入庫單?!?”:銷售科開出的有效零售產(chǎn)品出庫單。“3”:銷售科開出的有效批發(fā)產(chǎn)品出庫單。“4”:倉庫制作的產(chǎn)品庫存收發(fā)存月報(bào)表。第一層數(shù)據(jù)流程圖如圖2-3所示。圖2-3中的數(shù)據(jù)流“1,2,3,4”與圖2-2中的數(shù)據(jù)流“1,2,3,4

12、”一樣。4庫存帳1出入庫管理23出入庫管理圖2-3 第一層DFD第二層數(shù)據(jù)流程圖如圖2-4所示。710D2零售出庫帳 P1登記入庫帳P2登記零售出賬P4登記庫存臺(tái)帳P5制作收發(fā)存月報(bào)表P3登批發(fā)出庫帳D4庫存臺(tái)帳F2112F315698D1入庫帳D3批發(fā)出庫帳統(tǒng)計(jì)報(bào)表月報(bào)表1F1111圖2-4 第二層DFD現(xiàn)對(duì)圖2-4中的數(shù)據(jù)流說明如下:“l(fā),2,3,4”:其意義與圖4中的一樣?!?”:產(chǎn)品入庫單上的數(shù)據(jù)?!?”:零售出庫單上的數(shù)據(jù)?!?”:批發(fā)出庫單上的數(shù)據(jù)?!?”:入庫流水帳上的當(dāng)日按產(chǎn)品名稱、規(guī)格分別累計(jì)的數(shù)據(jù)。“9”:零售出庫流水帳上的當(dāng)日按產(chǎn)品名稱、規(guī)格分別累計(jì)的數(shù)據(jù)?!?0”:批發(fā)

13、出庫流水帳上的當(dāng)日按產(chǎn)品名稱、規(guī)格分別累計(jì)的數(shù)據(jù)?!?1”:獲得的“8,9,10”數(shù)據(jù)?!?2”:庫存臺(tái)帳上的當(dāng)月按產(chǎn)品名稱、規(guī)格分別累計(jì)的數(shù)據(jù)和其它加工處理后的數(shù)據(jù)。2.2.3數(shù)據(jù)字典2.2.3.1 數(shù)據(jù)流字典數(shù)據(jù)流名稱:產(chǎn)品入庫單別名:入庫產(chǎn)品信息描述:每天送給庫管部門的產(chǎn)品清單排列方式:按(入庫日期+產(chǎn)品代碼)升序排列 流量:最大 50日 平均30日 來源:生產(chǎn)車間 去向:產(chǎn)品入庫處理數(shù)據(jù)流名稱:產(chǎn)品出庫單別名:出庫產(chǎn)品信息描述:領(lǐng)貨部門每天的領(lǐng)貨單排列方式:按(日期十產(chǎn)品代碼)升序排列 流量:最大:70日 平均:50日 來源:銷售科 去向:產(chǎn)品出庫處理數(shù)據(jù)流名稱:倉庫產(chǎn)品收發(fā)存月報(bào)表別

14、名:產(chǎn)品庫存信息描述:庫存管理部門交給財(cái)務(wù)科的報(bào)表排列方式:按日期排列 流量:最大:1份月 平均:1份月 來源:倉庫統(tǒng)計(jì)分析 去向:財(cái)務(wù)科2.2.3.2 數(shù)據(jù)存儲(chǔ)字典存儲(chǔ)文件名:產(chǎn)品入庫流水帳流入的數(shù)據(jù)流:產(chǎn)品入庫單(F1)流出的數(shù)據(jù)流;涉與的處理名:入庫處理、記庫存臺(tái)帳排列方式:按入庫日期計(jì)序存儲(chǔ)文件名:庫存臺(tái)帳流入的數(shù)據(jù)流:11流出的數(shù)據(jù)流:收發(fā)存月報(bào)表涉與的處理名:登記庫存臺(tái)帳、制月報(bào)表排列方式:按(日期+產(chǎn)品代碼)升序排列2.2.3.2 處理描述字典處理名:登記入庫帳輸入:數(shù)據(jù)流F1輸出:數(shù)據(jù)流 F5處理定義: 當(dāng)一入庫單上的數(shù)據(jù)檢驗(yàn)合格,并且產(chǎn)品實(shí)物入庫后,立即將這入庫單上的數(shù)據(jù)登入

15、產(chǎn)品入庫流水帳。激發(fā)條件:產(chǎn)品入庫發(fā)生處理名:登記庫存臺(tái)帳輸入:出入庫流水帳上的當(dāng)日數(shù)據(jù)輸出:登記入庫存臺(tái)帳上的數(shù)據(jù)處理定義: 對(duì)出入庫流水帳上當(dāng)日發(fā)生的數(shù)據(jù),按產(chǎn)品代碼分別進(jìn)行入庫累計(jì)、零售出庫累計(jì)和批發(fā)出庫累計(jì)計(jì)算。然后將當(dāng)天的日期、產(chǎn)品代碼和累計(jì)結(jié)果等填入庫存臺(tái)帳的相應(yīng)欄。激發(fā)條件:每日過帳處理處理名:制作收發(fā)存月報(bào)表輸入:取自庫存臺(tái)帳的數(shù)據(jù)輸出:填入輸出報(bào)表中的統(tǒng)計(jì)數(shù)據(jù)處理定義:對(duì)庫存臺(tái)帳本月發(fā)生的出入庫數(shù)據(jù),分別按產(chǎn)品代碼進(jìn)行累計(jì),一種代碼代表的產(chǎn)品累計(jì)值即為輸出報(bào)表中的一行。激發(fā)條件:每月制作庫存報(bào)表2.4開發(fā)環(huán)境選擇本項(xiàng)目程序運(yùn)行的軟件開發(fā)環(huán)境如下:l 操作系統(tǒng):windows

16、XP/2003/2000、Linux、Mac OS。l 數(shù)據(jù)庫:Access。l 數(shù)據(jù)庫連接驅(qū)動(dòng):JDBC-ODBC。l Java虛擬機(jī):j2sdk1.6。l Java集成開發(fā)環(huán)境:Eclipse 3.2。2.4.1 ACCESS數(shù)據(jù)庫在辦公軟件Office套件中,最為廣大用戶熟悉的是Word和Excel,因?yàn)樗鼈児δ軓?qiáng)大且方便易用,更因?yàn)樗鼈儾粌H可用于辦公,還可用于個(gè)人寫作和家庭記帳理財(cái)?shù)?。同為Office套件中一部分的Access,雖然有著同樣強(qiáng)大的功能,但使用的人卻相對(duì)少些,不像Word和Excel那樣廣泛。事實(shí)上,真正用過Access的用戶,對(duì)其強(qiáng)大功能和靈活應(yīng)用均稱贊有加。 Acce

17、ss 數(shù)據(jù)庫管理系統(tǒng)是Microsoft Office 套件的重要組成部分,適用于小型商務(wù)活動(dòng),用以存貯和管理商務(wù)活動(dòng)所需要的數(shù)據(jù)。Access不僅是一個(gè)數(shù)據(jù)庫,而且它具有強(qiáng)大的數(shù)據(jù)管理功能,它可以方便地利用各種數(shù)據(jù)源,生成窗體(表單),查詢,報(bào)表和應(yīng)用程序等。 數(shù)據(jù)庫是有結(jié)構(gòu)的數(shù)據(jù)集合,它與一般的數(shù)據(jù)文件不同,(其中的數(shù)據(jù)是無結(jié)構(gòu)的)是一串文字或數(shù)字流。數(shù)據(jù)庫中的數(shù)據(jù)可以是文字、圖像、聲音等。Microsoft Access是一種關(guān)系式數(shù)據(jù)庫,關(guān)系式數(shù)據(jù)庫由一系列表組成,表又由一系列行和列組成,每一行是一個(gè)記錄,每一列是一個(gè)字段,每個(gè)字段有一個(gè)字段名,字段名在一個(gè)表中不能重復(fù)。圖1是一個(gè)“產(chǎn)

18、品”表的例子。“產(chǎn)品”表由10個(gè)記錄組成,一個(gè)記錄占一行,每一個(gè)記錄由產(chǎn)品ID、產(chǎn)品名稱、庫存量、訂貨量、單價(jià)和折扣率6個(gè)字段組成。“產(chǎn)品ID”是字段名,其下面的1,2等是字段的值。表與表之間可以建立關(guān)系(或稱關(guān)聯(lián),連接),以便查詢相關(guān)聯(lián)的信息。Access數(shù)據(jù)庫以文件形式保存,文件的擴(kuò)展名是MDB。 Access 數(shù)據(jù)庫由六種對(duì)象組成,它們是表、查詢、窗體、報(bào)表、宏和模塊。表(Table) 表是數(shù)據(jù)庫的基本對(duì)象,是創(chuàng)建其他5種對(duì)象的基礎(chǔ)。表由記錄組成,記錄由字段組成,表用來存貯數(shù)據(jù)庫的數(shù)據(jù),故又稱數(shù)據(jù)表。查詢(Query)查詢可以按索引快速查找到需要的記錄,按要求篩選記錄并能連接若干個(gè)表的字

19、段組成新表。 窗體(Form) 窗體提供了一種方便的瀏覽、輸入與更改數(shù)據(jù)的窗口。還可以創(chuàng)建子窗體顯示相關(guān)聯(lián)的表的容。窗體也稱表單。 報(bào)表(Report) 報(bào)表的功能是將數(shù)據(jù)庫中的數(shù)據(jù)分類匯總,然后打印出來,以便分析。 宏(Macro) 宏相當(dāng)于DOS中的批處理,用來自動(dòng)執(zhí)行一系列操作。Access列出了一些常用的操作供用戶選擇,使用起來十分方便。模塊(Module) 模塊的功能與宏類似,但它定義的操作比宏更精細(xì)和復(fù)雜,用戶可以根據(jù)自己的需要編寫程序。模塊使用Visual Basic編程。2.4.2 Eclipse Eclipse是流行的Java集成開發(fā)環(huán)境(IDE)。同時(shí)它還可以作為其它語言的

20、開發(fā)環(huán)境(例如C+和Ruby)并且作為開發(fā)桌面或服務(wù)器應(yīng)用程序的富客戶端開發(fā)平臺(tái)。如今,Eclipse開源社區(qū)擁有幾十個(gè)開源項(xiàng)目,其圍從商務(wù)智能到社會(huì)網(wǎng)絡(luò)等各個(gè)方面。Eclipse是非贏利性基金會(huì)的名字,由它全面負(fù)責(zé)這些工程。Eclipse的每個(gè)版本在Eclipse的發(fā)行歷史上都具有里程碑意義:在2006年6月30日同時(shí)發(fā)行了共十個(gè)Eclipse工程。本文將集中探討Eclipse 3.2版本的IDE,特別是它的Java開發(fā)工具(JDT)。JDT的歷史可以追蹤到在1996年用Smalltalk編寫的Visual Age for Java(VAJ)。在VAJ中,一切都被編譯并且全部被調(diào)入存。這種設(shè)

21、計(jì)不能進(jìn)行比例縮放,難于擴(kuò)展,從而使其很難進(jìn)行再創(chuàng)造。在1999年,該IDE團(tuán)隊(duì)開始開發(fā)Visual Age Micro Edition(VAME)。這個(gè)工具開始完全用Java編寫,并使用標(biāo)準(zhǔn)Widget工具箱(SWT)來實(shí)現(xiàn)其用戶接口。當(dāng)時(shí)的VAME的主要設(shè)計(jì)市場針對(duì)的是嵌入式空間中的開發(fā)與應(yīng)用。為此,它使用了標(biāo)準(zhǔn)Java虛擬機(jī),并且讓工作區(qū)位于文件系統(tǒng)中。然而,文件和文件夾名字都是一些不能讀的UUID。與VAJ提供的編譯器相比,VAME的增長式編譯器快了將近十倍。這種模型是基于狀態(tài)構(gòu)建的(與當(dāng)前的Eclipse形成對(duì)照,它是基于源碼的)。VAME有它自己的倉庫系統(tǒng)Rapier,并且可以使用

22、插件方式來對(duì)之進(jìn)行擴(kuò)展。VAME一開始并沒有吸引社區(qū)開發(fā)者的注意力,但是其中的確包含很多好主意-開發(fā)者以后使用之來開發(fā)了他們的下一代工程-Eclipse。在2001年,Eclipse 1.0發(fā)行。當(dāng)時(shí),它被描述為"一種通用的IDE,并不特別針對(duì)于什么容"。從一開始,Eclipse和JDT都被構(gòu)建為一種針對(duì)其它開發(fā)工具使用的開發(fā)平臺(tái)。工作區(qū)存儲(chǔ)在磁盤上并且對(duì)其它工作區(qū)開放。Eclipse 1.0中使用的不是一種專利式數(shù)據(jù)倉庫,而是集成了CVS。與其先行者相比,Eclipse還有另一個(gè)重要區(qū)別:它是開源的,而且其用戶社區(qū)大量存在并且是自維持性的。Eclipse 3.2大多數(shù)的新

23、的和改進(jìn)特征直接來源于Eclipse用戶。自從3.1版本以來,共有超過30,000個(gè)請(qǐng)求被修改并得到增強(qiáng)。去粗存精,下面讓我們來重點(diǎn)分析幾個(gè)對(duì)于大多數(shù)Java開發(fā)者特別重要的特征。3 系統(tǒng)設(shè)計(jì)3.1模塊設(shè)計(jì)庫存管理用戶登錄數(shù)據(jù)錄入數(shù)據(jù)查詢報(bào)表打印產(chǎn)品管理人員管理密碼修改系統(tǒng)注銷結(jié)束退出供貨商管理入庫數(shù)據(jù)錄入出庫數(shù)據(jù)錄入增加產(chǎn)品修改產(chǎn)品入庫數(shù)據(jù)查詢出庫數(shù)據(jù)查詢?cè)聨齑娌樵內(nèi)霂靾?bào)表打印出庫報(bào)表打印月報(bào)表打印3.2數(shù)據(jù)庫設(shè)計(jì)根據(jù)系統(tǒng)功能設(shè)計(jì)的要求以與功能模塊的劃分,對(duì)于本系統(tǒng)的數(shù)據(jù)庫,可以列出以下的數(shù)據(jù)項(xiàng)和數(shù)據(jù)結(jié)構(gòu)。(1) 名稱:用戶表表名稱標(biāo)識(shí):operator數(shù)據(jù)來源:用戶登錄模塊錄入。名稱字段名

24、稱類型主鍵非空用戶名文本YesYes用戶權(quán)限權(quán)限文本NoYes用戶密碼密碼文本NoYes(2) 名稱:商品入庫表表名稱標(biāo)識(shí):warehousing數(shù)據(jù)來源:數(shù)據(jù)入庫模塊錄入。名稱字段名稱類型主鍵非空標(biāo)識(shí)number自動(dòng)編號(hào)YesYes產(chǎn)品編號(hào)編號(hào)文本NoYes產(chǎn)品名稱名稱文本NoYes產(chǎn)品品類品類文本NoYes產(chǎn)品數(shù)量數(shù)量長整型NoYes產(chǎn)品單位單位文本NoYes產(chǎn)品總金額總金額貨幣NoYes進(jìn)貨單位進(jìn)貨單位文本NoYes進(jìn)貨人進(jìn)貨人文本NoYes校驗(yàn)人校驗(yàn)人文本NoYes經(jīng)手人經(jīng)手人文本NoYes入庫日期入庫日期日期NoYes保管人保管人文本NoYes貨位貨位文本NoYes單據(jù)編號(hào)單據(jù)編號(hào)文

25、本NoYes(3) 名稱:商品出庫表表名稱標(biāo)識(shí):warehousingout數(shù)據(jù)來源:數(shù)據(jù)出庫模塊錄入。名稱字段名稱類型主鍵非空標(biāo)識(shí)number自動(dòng)編號(hào)YesYes產(chǎn)品編號(hào)編號(hào)文本NoYes產(chǎn)品名稱名稱文本NoYes產(chǎn)品品類品類文本NoYes產(chǎn)品數(shù)量數(shù)量長整型NoYes產(chǎn)品單位單位文本NoYes產(chǎn)品總金額總金額貨幣NoYes進(jìn)貨單位進(jìn)貨單位文本NoYes領(lǐng)貨人進(jìn)貨人文本NoYes領(lǐng)貨日期校驗(yàn)人文本NoYes經(jīng)手人經(jīng)手人文本NoYes出庫日期入庫日期日期NoYes審核人保管人文本NoYes貨位貨位文本NoYes單據(jù)編號(hào)單據(jù)編號(hào)文本NoYes(3) 名稱:商品庫存表表名稱標(biāo)識(shí):inventory數(shù)

26、據(jù)來源:數(shù)據(jù)入庫、出庫模塊計(jì)算所得。名稱字段名稱類型主鍵非空產(chǎn)品編號(hào)文本YesYes產(chǎn)品名稱權(quán)限文本NoYes產(chǎn)品品類密碼文本NoYes產(chǎn)品單位單位文本NoYes產(chǎn)品數(shù)量數(shù)量長整型NoYes產(chǎn)品總金額總金額貨幣NoYes(4) 名稱:商品管理表表名稱標(biāo)識(shí):MaterialNumManage數(shù)據(jù)來源:產(chǎn)品管理模塊錄入。名稱字段名稱類型主鍵非空產(chǎn)品編號(hào)編號(hào)文本YesYes產(chǎn)品名稱名稱文本NoYes產(chǎn)品品類品類文本NoYes產(chǎn)品單位價(jià)格單位價(jià)格長整形NoYes產(chǎn)品貨位貨位文本NoYes(5) 名稱:供貨商管理表表名稱標(biāo)識(shí):supplier數(shù)據(jù)來源:產(chǎn)品管理模塊錄入。名稱字段名稱類型主鍵非空供貨商供貨

27、商文本YesYes供貨類型供貨類型文本NoYes訂購訂購文本NoYes地址地址文本NoYes4 系統(tǒng)實(shí)現(xiàn) 4.1系統(tǒng)主界面:圖4-1系統(tǒng)主界面4.2 用戶登錄圖4-2 用戶登錄在如圖示4-2用戶登錄界面下,輸入正確的“用戶名”、“密碼”,單擊“確定”,就可以進(jìn)入系統(tǒng)主界面了。如果輸入的用戶名和密碼有誤,則會(huì)彈出對(duì)話框,要求你重新輸入正確的用戶名和密碼。部分實(shí)現(xiàn)代碼如下:utton1.addActionListener(new ActionListener()public void actionPerformed(ActionEvent e)JDBCAdapterdataBase=newJDBC

28、Adapter("jdbc:odbc:InventoryManage","sun.jdbc.odbc.JdbcOdbcDriver","","");tryResultSet result = dataBase.statement.executeQuery("select * from login");String passwd;while(result.next()passwd = result.getString(2);if(new String(jPasswordField.getPassw

29、ord().equals(passwd)Login.this.dispose();elseJOptionPane.showMessageDialog(null, "密碼錯(cuò)誤,請(qǐng)確認(rèn)", "密碼錯(cuò)誤", JOptionPane.ERROR_MESSAGE);catch(Exception ex);4.3 商品入庫在圖4-1中,點(diǎn)擊“材料入庫”按鈕打開進(jìn)貨窗口如圖4-3所示:圖4-3:材料入庫在“基本操作”中點(diǎn)擊“入庫操作”,也能顯示如圖1所示的?!叭霂旃芾怼惫卜譃椤叭霂煨畔ⅰ焙汀安僮餍畔ⅰ眱刹糠?,當(dāng)點(diǎn)擊“入庫”操作時(shí),所填的數(shù)據(jù)都會(huì)被寫入相應(yīng)的數(shù)據(jù)庫保存起

30、來,當(dāng)單擊“打印”,會(huì)打印整個(gè)界面。當(dāng)把“入庫信息”和“操作信息”等信息輸入完成后,單擊“入庫”就能把入庫產(chǎn)品的所有信息輸入到warehousing數(shù)據(jù)庫中,部分實(shí)現(xiàn)代碼如下:if(materialName.length()=0|materialNum.length()=0|materialStyle.length()=0|jTextField3.getText()=""|materialUnit=""|materialMoney=""|supplier=""|buyer=""|handler=

31、""|outDay=""|goodAllocation=""|keeper=""|chittyNum=""|checkMan="")JOptionPane.showMessageDialog(null, "請(qǐng)把數(shù)據(jù)填完", "數(shù)據(jù)不完整", JOptionPane.ERROR_MESSAGE);tryJDBCAdapter dataBase = new JDBCAdapter("jdbc:odbc:InventoryManag

32、e","sun.jdbc.odbc.JdbcOdbcDriver","","");String sqlString="insert into warehousing(材料編號(hào),材料名稱,品類,數(shù)量,單位,總金額,進(jìn)貨單位,進(jìn)貨人,進(jìn)貨日期,檢驗(yàn)人,經(jīng)手人,入庫日期,保管人,貨位,單據(jù)編號(hào)) values ("+"'" +materialNum+"' ,"+"'"+materialName+"' ,&quo

33、t;+"'"+materialStyle+"' ,"+"'"+materialTotal+"' ,"+"'"+materialUnit+"' ,"+"'"+materialMoney+"' ,"+"'"+supplier+"' ,"+"'"+buyer+"' ,"

34、+"'"+day+"' ,"+"'"+checkMan+"' ,"+"'"+handler+"' ,"+"'"+outDay+"' ,"+"'"+keeper+"' ,"+"'"+goodAllocation+"' ,"+"'"+chi

35、ttyNum+"'"+")"dataBase.excuteUpdate(sqlString);dataBase.close();catch(Exception ex);4.4 商品出庫在圖4-1中點(diǎn)擊“材料出庫”按鈕打開出貨窗口如圖4-4所示:圖4-4 材料出庫在“基本操作”中點(diǎn)擊“出庫操作”,也能顯示如圖4-4所示?!俺鰩旃芾怼惫卜譃椤俺鰩煨畔ⅰ焙汀安僮餍畔ⅰ眱刹糠?,當(dāng)點(diǎn)擊“出庫”操作時(shí),所填的數(shù)據(jù)都會(huì)被寫入相應(yīng)的warehousingout數(shù)據(jù)庫保存起來,當(dāng)單擊“打印”,會(huì)打印整個(gè)界面。輸入完所有信息后,單擊“出庫”后,所有信息都將儲(chǔ)存到wa

36、rehousingout數(shù)據(jù)庫中,部分實(shí)現(xiàn)代碼如下:tryJDBCAdapter dataBase = new JDBCAdapter("jdbc:odbc:InventoryManage","sun.jdbc.odbc.JdbcOdbcDriver","","");String sqlString="insert into warehousingout(編號(hào),名稱,品類,數(shù)量,單位,總金額,領(lǐng)貨人,領(lǐng)貨日期,經(jīng)手人,出庫日期,審核人,貨位,單據(jù)編號(hào)) values ("+"'

37、" +materialNum+"' ,"+"'"+materialName+"' ,"+"'"+materialStyle+"' ,"+"'"+materialTotal+"' ,"+"'"+materialUnit+"' ,"+"'"+materialMoney+"' ,"+&q

38、uot;'"+supplier+"' ,"+"'"+day+"' ,"+"'"+keeper+"' ,"+"'"+outDay+"' ,"+"'"+handler+"' ,"+"'"+goodAllocation+"' ,"+"'"+chitty

39、Num+"'"+")"dataBase.excuteUpdate(sqlString);dataBase.close();catch(Exception ex)4.5 入庫查詢?cè)趫D4-1中點(diǎn)擊“入庫查詢”按鈕打開入庫查詢窗口,如圖4-5所示:圖4-5 入庫查詢?cè)凇盎静僮鳌敝悬c(diǎn)擊“出庫操作”,也能顯示如圖4-5所示的。“入庫查詢”共分為三個(gè)查詢條件,分別為:“按材料名稱”、“按材料編號(hào)”、“按進(jìn)貨日期”,當(dāng)選中其中之一,單擊“查詢”,將會(huì)列出warehousing中的入庫商品信息。當(dāng)選擇好查詢條件后,單擊“查詢”后就可以查詢warehousing

40、數(shù)據(jù)庫中的信息,部分實(shí)現(xiàn)代碼如下:if(jRadioButton.isSelected()String string=(String)jComboBox.getSelectedItem();dataBase.executeQuery("select * from warehousing where " +" 名稱 like "+"'"+string+"'");elseif(jRadioButton1.isSelected()String i = jTextField.getText();dataBa

41、se.executeQuery("select * from warehousing where "+"編號(hào) like " + "'"+i+"'");if(jRadioButton2.isSelected()String startDate = utton5.getText();String endDate =utton6.getText();dataBase.executeQuery("select * from " +"warehousing where 進(jìn)貨日期

42、between " +"" +"#"+startDate+"# " + " and " + "#"+endDate+"#");4.6 庫存查詢?cè)趫D4-1中單擊“入庫查詢”按鈕打開入庫查詢窗口,如圖4-6所示:圖4-6 庫存查詢?cè)凇安樵儾僮鳌敝悬c(diǎn)擊“庫存查詢”,也能顯示如圖4-6所示的?!安樵儣l件”共分為五個(gè)查詢條件,分別為:“名稱”、“編號(hào)”、“品類”、“數(shù)量”、“貨位”,當(dāng)選中其中之一,單擊“查詢”,將會(huì)列出inventory中的庫存商品信息。當(dāng)選擇好查詢條件后,

43、單擊“查詢”后就可以查詢inventory數(shù)據(jù)庫中的信息,部分實(shí)現(xiàn)代碼如下:if(jComboBox.getSelectedIndex()=4)dataBase.executeQuery("select * from inventory where "+condition+"="+key);dataBase.executeQuery("select * from inventory where "+condition+"="+"'"+key+"'");if(d

44、ataBase.getRowCount()<1)JOptionPane.showMessageDialog(null, "沒有記錄", "no recorde", JOptionPane.ERROR_MESSAGE);if(jTable.getRowCount() > 0) jTable.setRowSelectionInterval(0,0);dataBase.close();4.7 報(bào)表打印報(bào)表打印實(shí)現(xiàn)部分代碼:PrinterJob print = PrinterJob.getPrinterJob();Print.printDialog(

45、);4.8 操作員管理在圖4-1中的“系統(tǒng)維護(hù)”下單擊“操作員管理”打開操作員管理窗口,如圖4-7所示:圖4-7 操作員管理在圖4-7窗口中可以看到所有的操作員信息。點(diǎn)擊“增加”按鈕打開增加操作員窗口,輸入操作員的信息,操作員、操作員名稱不能重復(fù)。點(diǎn)擊“修改”按鈕可以修改選中的操作員信息。點(diǎn)擊“刪除”按鈕可以刪除選中的操作員?!癮dmin”操作員為超級(jí)管理員,有所有的權(quán)限,該管理員不能被修改和刪除。人員管理主要是“添加”、“修改”人員信息,部分實(shí)現(xiàn)代碼如下:dataBase.excuteUpdate("insert into crew values ("+"

46、9;"+name+"',"+"'"+work+"'"+")");dataBase.executeQuery("select * from crew");dataBase.excuteUpdate("update crew set ="+"'"+name+"' ,職務(wù)="+"'"+work+"'"+" where "

47、;+"="+"'"+jTable.getValueAt(jTable.getSelectedRow(),0)+"' and 職務(wù)="+"'"+jTable.getValueAt(jTable.getSelectedRow(),1)+"'");dataBase.executeQuery("select * from crew");4.9 商品管理在圖4-1中的“系統(tǒng)維護(hù)”下單擊“材料編號(hào)管理”打開商品管理窗口,如圖4-8所示:圖4-8 商品管理商

48、品管理主要是“增加”、“修改”商品信息,部分實(shí)現(xiàn)代碼如下:/“增加”按鈕的部分實(shí)現(xiàn)代碼dataBase.excuteUpdate("insert into MaterialNumManage values ("+"'"+number+"',"+"'"+name+"',"+"'"+type+"',"+"'"+price+"',"+"'&q

49、uot;+place+"'"+")");dataBase.executeQuery("select * from MaterialNumManage");/“修改”按鈕的部分實(shí)現(xiàn)代碼dataBase.excuteUpdate("update MaterialNumManage set 編號(hào)="+"'"+number+"' ,名稱="+"'"+name+"',品類="+"'&quo

50、t;+type+"',單位價(jià)格="+"'"+price+"',貨位="+"'"+place+"'"+" where "+"編號(hào)="+"'"+jTable.getValueAt(jTable.getSelectedRow(),0)+"' and 名稱="+"'"+jTable.getValueAt(jTable.getSelectedR

51、ow(),1)+"'");4.10 人員管理在圖4-1中的“系統(tǒng)維護(hù)”下單擊“人員管理”打開操作員管理窗口,如圖4-8所示:圖4-8 人員管理在圖4-8窗口中可以看到所有的工作人員。點(diǎn)擊“增加”按鈕打開增加工作人員窗口,輸入工作人員的信息,工作員、工作員的職務(wù)。點(diǎn)擊“修改”按鈕可以修改選中的工作員信息。點(diǎn)擊“刪除”按鈕可以刪除選中的操作員。 部分實(shí)現(xiàn)代碼如下:/“添加”按鈕的部分實(shí)現(xiàn)代碼dataBase.excuteUpdate("insert into crew values ("+"'"+name+"&#

52、39;,"+"'"+work+"'"+")");dataBase.executeQuery("select * from crew");/“修改”按鈕的部分實(shí)現(xiàn)代碼dataBase.excuteUpdate("update crew set ="+"'"+name+"' ,職務(wù)="+"'"+work+"'"+" where "+"

53、="+"'"+jTable.getValueAt(jTable.getSelectedRow(),0)+"' and 職務(wù)="+"'"+jTable.getValueAt(jTable.getSelectedRow(),1)+"'");dataBase.executeQuery("select * from crew");4.11 修改密碼在圖4-1中單擊“修改密碼”按鈕打開修改密碼窗口,如圖4-9所示:圖4-9 修改密碼 在“系統(tǒng)維護(hù)”下單擊“修改密碼”也能顯示圖4-9所示。在“舊密碼”框中輸入原有的密碼,“新密碼”輸入想要修改的密碼,單擊“修改”,就可以了。部分實(shí)現(xiàn)代碼如下:ResultSet result = dataBase.statement.executeQuery("select * from login");String passwd;while(result.next()passwd = result.getStrin

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論