

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、<p><b> 課 程 設 計</b></p><p><b> 目 錄</b></p><p><b> 前言3</b></p><p><b> 1.概述4</b></p><p> 1.1 庫存管理的必要性4</p
2、><p> 1.2 庫存分類4</p><p> 1.3 庫存管理的目標5</p><p> 1.4 主要參加人員及任務分配5</p><p><b> 2.開發(fā)背景6</b></p><p><b> 3.系統(tǒng)分析7</b></p><p
3、> 3.1 進行資料收集7</p><p> 3.2 應用程序結構確定8</p><p> 3.3 確定系統(tǒng)開發(fā)環(huán)境8</p><p> 3.4 確定系統(tǒng)的功能模塊8</p><p> 3.5 詳細需求分析8</p><p> 4.系統(tǒng)總體設計11</p><p>
4、 4.1 系統(tǒng)數據流圖11</p><p> 4.2 系統(tǒng)目標設計11</p><p> 4.3 開發(fā)設計思想11</p><p> 4.4 系統(tǒng)功能分析12</p><p><b> 5.詳細設計13</b></p><p> 5.1 基本模塊與功能13</p>
5、;<p> 5.2 數據庫設計13</p><p> 5.3 VC++ 6.0工程創(chuàng)建向導17</p><p> 5.4 VC++ 6.0數據庫新建工具18</p><p> 5.5 數據源的創(chuàng)建21</p><p> 5.6 程序結構23</p><p><b> 6.運
6、行結果28</b></p><p><b> 7.實驗總結29</b></p><p><b> 8.參考文獻30</b></p><p><b> 前言</b></p><p> 倉庫庫存管理系統(tǒng)是一個企業(yè)不可缺少的部分,它的內容對于企業(yè)的決策者和管
7、理者來說都至關重要,所以倉庫庫存管理系統(tǒng)應該能夠為用戶提供充足的信息和快捷的查詢手段。但一直以來人們使用傳統(tǒng)人工的方式管理倉庫中的各種物資設備,這種管理方式存在著許多缺點,如:效率低、另外時間一長,將產生大量的文件和數據,這對于查找、更新和維護都帶來了不少的困難。</p><p> 隨著科學技術的不斷提高,計算機科學日漸成熟,其強大的功能已為人們深刻認識,它已進入人類社會的各個領域并發(fā)揮著越來越重要的作用。&l
8、t;/p><p> 作為計算機應用的一部分,使用計算機對物資信息進行管理,具有著手工管理所無法比擬的優(yōu)點.例如:檢索迅速、查找方便、可靠性高、存儲量大、保密性好、壽命長、成本低等。這些優(yōu)點能夠極大地提高人事勞資管理的效率,也是企業(yè)的科學化、正規(guī)化管理,與世界接軌的重要條件。</p><p> 因此,開發(fā)這樣一套庫存管理軟件成為很有必要的事情。</p><p><
9、;b> 1.概述</b></p><p> 1.1 庫存管理的必要性</p><p> 大多數庫存管理理論認為,庫存是物理上和邏輯上庫房庫位的所有有形和無形物料極其價值的總和,具體包括成品、原材料、在制品、在途品、生產前物料、備品備件等。雖然持有一些庫存是必要的,過量的庫存卻非但沒有用處而且占用了資金。占用的資金對于公司發(fā)展、新產品開發(fā)等都是非常需要的;減少資金占用
10、還可以大大減少來自銀行貸款的利息和風險。對那些采購量特別大、采購件市場價格有波動的物料庫存,加強庫存管理效果更為明顯。因此,平衡公司庫存投資與其它資金需求至關重要。</p><p><b> 1.2 庫存分類</b></p><p> 企業(yè)怎樣管理庫存,是庫存管理的最大難點和挑戰(zhàn)。因此,通過MRPII物料主計劃模塊和采購模塊建立計劃與控制系統(tǒng)以有效地實施庫存管理和
11、采購補償成為題中應有之義。通過調查,我們得知任何庫存均可分為如下三類:</p><p> A類物品:高值──價值占庫存總值70-80%的相對少數物品。通常為物品的15-20%。</p><p> ?。骂愇锲罚褐兄旦ぉた傊嫡紟齑婵傊档模保?20%。物品數居中,通常占物品的30-40%。</p><p> ?。妙愇锲罚旱椭旦ぉ齑婵傊祹缀蹩梢院雎圆挥?,只占5-10%。
12、是物品的大多數,通常占60-70%。</p><p> 顯然,A類物品是關鍵;如果我們把精力集中于A類物品,使其庫存壓縮10-50%,就是總庫存的相當可觀的一筆壓縮。</p><p> 關于ABC分類方法有幾條基本法則:</p><p><b> a. 控制的程度:</b></p><p> 對A類物品嚴加控制,
13、包括做完備、準確的記錄,高層監(jiān)督和經常評審,從供應商按大合同訂單頻繁交貨,對車間緊密跟蹤以壓縮提前期。</p><p> 對B類物品做正??刂疲己玫挠涗浥c常規(guī)的關注。</p><p> 對C類物品盡可能使用簡便的控制,諸如定期目視檢查庫存實物、簡要記錄或以簡便標志法表明補充存貨已經訂貨,采用大庫存量與訂貨量以避免缺貨,安排車間日程計劃時給以低優(yōu)先級。</p><
14、;p><b> b.優(yōu)先級</b></p><p> 在一切活動中給A類物品以高優(yōu)先級以壓縮其提前期與庫存。</p><p> 對B類物品予以正常處理,僅在關鍵時給以高優(yōu)先級。 </p><p> 予C類物品以最低優(yōu)先級。</p><p><b> c.訂貨過程</b></p&
15、gt;<p> 對A類物品提供及時、準確的采購信息和狀態(tài)查詢。計算機數據需要人工加以核對,進行階段性盤點,以及頻繁的評審以壓縮庫存。</p><p> 對B類物品,按一定周期或當發(fā)生重大變化時評審一次庫存數據和訂貨點,MRPII操作按例行公事處理。</p><p> 對C類物品可以盤點處理或訂貨點計算。訂貨往往不用MRPII作計劃??梢詰{業(yè)務人員的經驗加以控制。<
16、/p><p> 由上可以看出庫存管理的重要性。因此,庫存管理是企業(yè)管理的重要組成部分。市場需要庫存商品提供給用戶,企業(yè)的經營需要庫存保證各種藥品的供應以進行藥品的銷售,庫存對生產效率的提高有著極其重要的影響。因此,庫存管理系統(tǒng)是計算機管理系統(tǒng)的中心。因為,所有企業(yè)的經營活動都離不開物流的活動。</p><p> 1.3 庫存管理的目標</p><p> 庫存管理的
17、主要目標就是通過對倉庫所有入出庫活動的管理和控制及對庫存數據有效的統(tǒng)計和分析,以保證企業(yè)生產中暢通的物流,使決策人員及早發(fā)現問題,采取相應措施,調整庫存結構,縮短儲備周期,加速資金周轉,最大限度地降低庫存占用,同時,通過周期性的倉庫盤點,及時補救管理中的漏洞,使庫存管理系統(tǒng)實時地反映企業(yè)中各個倉庫的現時情況,為各類管理人員從不同側面提供所需信息,以便協(xié)調企業(yè)經營收到更大效益,庫存管理系統(tǒng)是協(xié)調企業(yè)生產經營的基礎,其數據的準確性、方便的查
18、詢、有效的分析是整個計算機管理系統(tǒng)順利運行的關鍵。</p><p> 1.4 主要參加人員及任務分配</p><p> 陽文兵:日常業(yè)務管理的設計,包括入庫管理,出庫管理,調貨管理及庫存盤點的窗口設計和代碼編寫。</p><p> 唐雄明:基礎信息管理中的商品信息管理,客戶信息管理及供應商信息相關的窗口設計和代碼編寫。</p><p>
19、 陳從填:基礎信息管理中的倉庫信息管理,地域信息管理及計量單位管理相關的窗口設計和代碼編寫。</p><p> 韓康康:主窗口的設計和代碼的編寫及數據庫的設計和數據源的創(chuàng)建。</p><p> 王曉博:查詢統(tǒng)計管理和系統(tǒng)管理相關的窗口設計和代碼的編寫。</p><p><b> 2.開發(fā)背景</b></p><p&g
20、t; 企業(yè)的庫存物資管理往往是很復雜、很繁瑣的。由于所掌握的物資種類眾多,訂貨、管理、發(fā)放的渠道各有差異,各個企業(yè)之間的管理體制不盡相同,各類統(tǒng)計報表繁多,因此倉庫的庫存管理必須編制一套庫存管理信息系統(tǒng),實現計算機化操作,而且必須根據企業(yè)的具體情況制定相應的方案。</p><p> 根據當前的企業(yè)管理體制,一般的庫存管理系統(tǒng),總是根據所掌握的物資類別,相應分成幾個科室來進行物資的計劃,訂貨,核銷托收,驗收入庫
21、,根據企業(yè)各個部門的需求來發(fā)送物資設備,并隨時按期進行庫存盤點,作臺帳,根據企業(yè)領導和自身管理的需要按月、季度、年度進行統(tǒng)計分析,產生相應報表。為了加強關鍵物資、設備的管理,要定期掌握其儲備,消耗情況,根據計劃定額和實際纖毫定額的比較,進行定額管理,使得資金使用合理,物資設備的儲備最佳。</p><p> 一個完整的企業(yè)物資供應管理系統(tǒng)應包括采購計劃管理,合同收托管理、倉庫庫存管理、定額管理、統(tǒng)計管理、財務管理
22、等模塊。其中倉庫的庫存管理是整個物資供應管理系統(tǒng)的核心。因此有必要開發(fā)一套獨立的庫存管理系統(tǒng)來提高企業(yè)工作效率, 而所使用的這套庫存管理系統(tǒng)是企業(yè)生產經營管理活動中的核心,此系統(tǒng)必須可以用來控制合理的庫存費用、適時適量的庫存數量,使企業(yè)生產活動效率最大化。</p><p> 倉庫作為一總貨品資源的集散地,貨品的種類繁多,包含很多的信息數據的管理。據調查得知,以前倉庫進行信息管理的方式主要是基于文本、表格等紙介質
23、的手工處理,對于貨品的出入庫情況的統(tǒng)計和核實等往往采用對賬本的人工檢查,對管理者的管理權限等不受約束,任何人都可查看,這樣容易引起資料外泄。另外,數據信息處理工作量大,容易出錯,由于數據繁多,容易丟失,且不易查找??偟膩碚f,缺乏系統(tǒng)、規(guī)范的信息管理手段。而且,一般的存儲情況是記錄在賬本上的,倉庫的工作人員和管理員也只是當時記得比較清楚,時間一長,如果再要進行查詢,就得在眾多的資料中翻閱查找了,這樣造成費時、費力,如要對很長時間以前的貨品
24、進行更改就更加困難了。因此,很有必要建立一個庫存管理系統(tǒng),使貨品管理工作規(guī)范化,系統(tǒng)化,程序化。提高信息處理的速度和準確性。</p><p><b> 3.系統(tǒng)分析</b></p><p> 本系統(tǒng)采用了結構化生命周期法,結構化生命周期法是最常用的管理信息系統(tǒng)開發(fā)方法,分為四個步驟,即系統(tǒng)調研分析、數據庫設計實現、界面設計實現和系統(tǒng)功能設計實現。其中系統(tǒng)調研分析階
25、段是最基礎、也是最容易被開發(fā)人員忽視的環(huán)節(jié)。</p><p> 3.1 進行資料收集</p><p> 在整個系統(tǒng)分析階段,我在圖書館認真查看了很多關于倉庫庫存管理方面的書籍,收集到了相應的入庫單、領料單、臺賬、物料卡、報表等資料,這些資料可以用作數據庫設計的依據,具體如下:</p><p><b> 表3-1</b></p>
26、<p> 入庫單是入庫單位在把相應的零部件送人倉庫時必須填寫的單據;領料單是領料人員從倉庫中領取零部件時必須填寫的單據(即出庫);零部件臺賬(相當于本系統(tǒng)中的操作日志)實際是一個流水賬,用于記錄每天發(fā)生的入庫、出庫信息;物料卡(在本系統(tǒng)中用現有庫存信息來表示)的作用是記錄某一種零部件的數量變化,以便庫管員盤查;報表是倉庫向有關領導和部門定期提交的零部件庫存匯總信息。收集到的入庫單、領料單、零部件庫存臺賬、零部件物料卡等單
27、據和報表的實物樣式在此略去,有興趣者請參考有關類似企業(yè)的樣本即可。</p><p> 3.2 應用程序結構確定</p><p> 從用戶應用角度來看,可把應用程序系統(tǒng)的組成部分分成數據存儲層、業(yè)務處理層和界面表示層等3個層次,而應用程序結構可歸納為:集中式應用程序結構、單用戶應用程序結構、多層服務器應用程序結構、瀏覽器/服務器應用程序結構、客戶機/服務器應用程序結構等5種類型。<
28、/p><p> 本庫存管理系統(tǒng)就采用了當前最流行的客戶機/服務器應用程序結構(即C/S結構),此時,客戶機提出請求,服務器對客戶機的請求作出回應。通過對服務功能的分布實現了分工服務。數據存儲層放在服務器上,業(yè)務處理層和界面表示層放在客戶機上,因此又被稱為“靈敏的客戶機”結構。許多操作可以在本地的客戶機上執(zhí)行,只是當需要數據時,才向服務器發(fā)出請求。并使應用程序的處理更接近用戶,使整個系統(tǒng)具有較好的性能,可以并行地處理
29、應用程序的請求、減少了數據傳輸量、降低了服務器的負荷。由于條件所限,將此系統(tǒng)所有程序都置于一臺計算機上,以便調試運行。</p><p> 3.3 確定系統(tǒng)開發(fā)環(huán)境</p><p> 由于大多數公司內部使用的計算機平臺都是基于Windows環(huán)境的。為了降低系統(tǒng)成本,應最大程度地利用現有的資源、兼容現有的環(huán)境,可確定使用下面的開發(fā)環(huán)境:</p><p> ★網絡操
30、作系統(tǒng):Windows2000;★數據庫服務器:MicrosoftAccessr2000;</p><p> ★服務器平臺:Windows2000;★客戶機平臺:Windows95/98/NT/2000;</p><p> ★前端開發(fā)工具:visual studio 6.0; </p><p> 3.4 確定系統(tǒng)的功能模塊</p><p&g
31、t; 通過分析確定庫存系統(tǒng)將包含6個主要功能模塊,即系統(tǒng)模塊、入庫業(yè)務管理模塊、出庫業(yè)務管理模塊、退料業(yè)務管理模塊(還庫業(yè)務管理模塊)、盤點業(yè)務管理模塊(報表輸出)、需求管理模塊。對于每一個功能模塊,都包含了數據錄入、編輯、查詢、統(tǒng)計、打印、應急、幫助等功能。</p><p> 3.5 詳細需求分析</p><p> 根據庫存管理系統(tǒng)的基本要求,可將系統(tǒng)分為四個子系統(tǒng):1.基礎信息管
32、理,2日常業(yè)務管理,3查詢統(tǒng)計管理,4系統(tǒng)管理。這些模塊可由下圖給出:</p><p><b> 圖3-1</b></p><p> 3.5.1 基礎信息管理子系統(tǒng)</p><p> 基礎信息管理子系統(tǒng)主要包括:商品信息管理,客戶信息管理,供應商信息管理,倉庫信息管理,地域信息管理,計量單位管理。如圖3-2所示:</p>&
33、lt;p> 圖3-2 基礎信息管理子系統(tǒng)</p><p> 3.5.2 日常業(yè)務管理子系統(tǒng)</p><p> 日常業(yè)務管理子系統(tǒng)主要包括:入庫管理,出庫管理,調貨管理和庫存盤點。如圖3-3所示;</p><p> 圖3-3 日常業(yè)務管理子系統(tǒng)</p><p> 3.5.3 查詢統(tǒng)計管理子系統(tǒng)</p><p&
34、gt; 查詢統(tǒng)計管理子系統(tǒng)的主要功能是查詢過期商品,可以查詢其合計數量和合計金額,可以進行清除過期商品的操作。</p><p> 3.5.4 系統(tǒng)管理子系統(tǒng)</p><p> 系統(tǒng)管理子系統(tǒng)是關于軟件信息和用戶信息的一些操作,可查看軟件的版本號,可對用戶信息進行管理,可添加,修改,刪除用戶信息。</p><p> 3.5.5 系統(tǒng)特色</p>
35、<p> 1.設置系統(tǒng)用戶登陸功能,即時對系統(tǒng)數據進行安全設置與保護。 2.友好的用戶界面,業(yè)務操作簡單,進入系統(tǒng)即能使用。3.成熟先進的技術和系統(tǒng)構架,采用先進的數據庫訪問方式,數據更安全,性能更穩(wěn)定。4.強大的數據處理能力和開放的數據接口,選用具有大型數據庫安全機制的數據庫系統(tǒng),提供各種級別的數據保護和權限控制方式,確保數據的安全可*。5.系統(tǒng)每種操作都可以通過菜單來進行。操作快捷、方便。易懂易會。系統(tǒng)
36、集輸入、維護、查詢、統(tǒng)計和各種處理為一體,信息導入導出方便共享。</p><p><b> 4.系統(tǒng)總體設計</b></p><p> 4.1 系統(tǒng)數據流圖</p><p> 4.2 系統(tǒng)目標設計</p><p> 系統(tǒng)開發(fā)的總體任務是實現企業(yè)物資設備管理的系統(tǒng)化、規(guī)范化和自動化,從而達到企業(yè)倉庫庫存管理效率的目
37、的。</p><p> 4.3 開發(fā)設計思想</p><p> 庫存管理的物資主要是企業(yè)生產中所需要的各種設備、原材料及零部件。進貨時經檢查合同確認為有效托收后,進行驗收入庫,填寫入庫單,進行入庫登記。企業(yè)各個部門根據所需要的物資設備總額和部門生產活動需要提出物資需求申請。計劃員根據整個企業(yè)的需求開出物資設備出庫單,倉庫管理員根據出庫單核對發(fā)放設備、原材料及零部件。有些設備使用完畢需要
38、及時歸還入庫,填寫還庫單。根據需要按照月、季、年進行統(tǒng)計分析,產生相應報表。</p><p> 倉庫庫存管理的特點是信息處理量比較大。所管理的物資設備、原材料及零部件種類繁多,而且由于入庫單、出庫單、需求單等單據發(fā)生量特別大,關聯信息多,查詢和統(tǒng)計的方式各不相同,因此在管理上實現起來有一定的困難。在管理的過程中經常會出現信息的重復傳遞;單據、報表種類繁多,各個部門規(guī)格不統(tǒng)等問題。</p><
39、p> 在本系統(tǒng)的設計過程中,為了克服這些困難,滿足計算機管理的需要,我們采取了下面的一些原則:</p><p> 統(tǒng)一各種原始單據的格式,統(tǒng)一帳目和報表的格式。</p><p> 刪除不必要的管理冗余,實現管理規(guī)范化,科學化。</p><p> 程序代碼標準化,軟件統(tǒng)一化,確保軟件的可維護性和實用性。</p><p> 界面盡
40、量簡單化,做到實用、方便,盡量滿足企業(yè)中不同層次員工的需要。</p><p> 建立操作日志,系統(tǒng)自動記錄所進行的各種操作。</p><p> 4.4 系統(tǒng)功能分析</p><p> 本系統(tǒng)需要完成的功能主要有以下幾點。</p><p> 庫存管理的各種信息的輸入,包括入庫、出庫、還庫、需求信息的輸入等。</p><
41、;p> 庫存管理的各種信息的查詢、修改和維護。</p><p> 設備采購報表的生成。</p><p> 在材料庫存中加入所允許的最大庫存合最小庫存字段,對所有庫存物資實現監(jiān)控和報警。</p><p> 企業(yè)各個部門的物資需求管理。</p><p><b> 操作日志的管理</b></p>
42、<p> 庫存管理系統(tǒng)的使用幫助。</p><p><b> 5.詳細設計</b></p><p> 5.1 基本模塊與功能</p><p> 1.系統(tǒng)包括用戶管理,密碼管理,關閉系統(tǒng),以及數據的備份與恢復,可以根據需要對整個數據庫進行備份,以確保數據的安全性。幫助:本系統(tǒng)的幫助信息,包括應用程序的版本信息;2.庫存管理
43、貨品信息管理:對倉庫里的貨品進行登記;貨品庫存管理:管理倉庫的庫存情況;短線貨品管理:對倉庫里短線的貨品進行登記,以便及時采購補貨;超儲貨品管理:對倉庫里超儲的貨品進行登記,控制庫存量,減少進貨;3.入庫管理入庫登記管理:能對貨品的入庫登記,刪除,更改等;入庫期間統(tǒng)計:貨品入庫期間年度的統(tǒng)計;供貨單位期間供貨金額統(tǒng)計:對貨品供應的金額進行統(tǒng)計;4.出庫管理對貨品出庫期間的年度統(tǒng)計,出庫登記,及收獲單位金額統(tǒng)計等;5
44、.盤存管理對盤存貨品信息的盤存錄入;6.綜合管理可根據同一貨品的出入庫情況,對庫存情況的匯總;7.附項管理對供貨單位情況,經辦人員,收貨單位情況,倉庫信息進行登記管理,可進行添加,刪除等操作;8.歷史數據管理對歷史庫存,歷史出庫,歷史出庫情況進行管理;9.打印與查詢可根據輸入的條件,對貨品的入庫信息,庫存信息等進行簡單查詢和組合查詢。</p><p><b> 5.2 數據庫設計&l
45、t;/b></p><p> 本庫存管理系統(tǒng)是應用在單機系統(tǒng)上的,所以只需建立起一個數據庫,在此數據庫基礎上建立起表格,現將部分數據結構表描述如下:</p><p> 貨品信息表字段名 數據類型 字段長度
46、0; 是否為空貨品編碼 文本 5 貨品名稱 文本 10 類別&
47、#160; 文本 8 型號 文本 4 單位
48、; 文本 2 倉庫編碼 文本 5 存放倉庫
49、; 文本 12 入庫計劃單價 貨幣 出庫計劃單價
50、160; 貨幣 原始庫存 數字 長整型 默認貨位
51、160; 文本 5 警戒底線庫存 數字 長整型 &nbs</p><p>
52、; 警戒高線庫存 數字 長整型 入庫登記表字段名 數據類型 字段長度
53、160; 是否為空入庫日期 日期/時間 入庫單號 文本 10
54、160; 貨物編碼 文本 5 數量 數字 長整型
55、進貨價 貨幣 總額 貨幣
56、60; 已付貨款 貨幣 供貨單位編碼 文本 5
57、60; 供貨單位 文本 20 經辦人編碼 文本 5 經辦人
58、160; 文本 8 增值稅率 數字 單精度型 備注 &
59、#160; 備注 出庫登記表字段名 數據類型 字段長度 是否為空出庫日期&
60、#160; 日期/時間 出庫單號 </p><p> p; 文本 &
61、#160; 50 出庫日期 日期/時間 年度金額總額 數字
62、60; 長整型</p><p> 5.3 VC++ 6.0工程創(chuàng)建向導</p><p> Visual C++為建立應用程序提供了工程創(chuàng)建向導,在向導的指引下,可以建立各種類型的應用程序。執(zhí)行Visual C++平臺上的“File>New”菜單命令,或者按下快捷鍵【Ctrl】+【N】,就可以啟動VC++ 6.0的工程創(chuàng)建向導,如圖5-1所示。</p&
63、gt;<p> 在圖4-1中可以看到,VC++ 6.0工程創(chuàng)建向導可以創(chuàng)建多種類型的應用程序,我們在本書能用到的有如下幾種:</p><p> ATL COM AppWizard:用于創(chuàng)建ATL應用程序。</p><p> MFC AppWizard:用于創(chuàng)建MFC應用程序。</p><p> New Database AppWizard:用于
64、創(chuàng)建一個新的數據庫。</p><p> 圖5-1 VC++ 6.0工程創(chuàng)建向導</p><p> 在通常的數據庫應用開發(fā)中,最常用的數據庫工程類型是通過MFC AppWizard創(chuàng)建的,這種類型也是絕大多數VC++應用程序的工程類型,它支持MFC的文檔—視圖結構,具有良好的界面基礎。另外我們在本書中還要用到ATL COM AppWizard創(chuàng)建的工程,這種工程包含了使用ATL模板類和
65、COM接口的所有頭文件,我們可以在這樣的工程里直接使用ATL模板類和COM對象。</p><p> 5.4 VC++ 6.0數據庫新建工具</p><p> VC++ 6.0提供了可視化數據庫開發(fā)工具,用于創(chuàng)建一個新的SQL Server數據庫。建立一個新的SQL Server數據庫的操作步驟如下:</p><p> (1) 開啟VC++的工程創(chuàng)建向導。從VC
66、++的菜單中執(zhí)行“File>New”命令,將VC++ 6.0工程創(chuàng)建向導顯示出來。如果當前的選項卡不是Project,單擊Project選項卡將它選中。在左邊的列表里選擇New Database AppWizard項,在Project Name編輯區(qū)里輸入工程名稱,并在Location編輯區(qū)里調整工程路徑。如果要向當前工作區(qū)里添加數據庫工程,應單擊Add to current workspace,否則單擊Create new wo
67、rkspace。如圖5-2所示。單擊OK按鈕。</p><p> 圖5-2 創(chuàng)建新數據庫的向導</p><p> (2) 選擇SQL Server數據庫服務器。VC++彈出“New Database Wizard Step 1 of 4”對話框,開始執(zhí)行SQL Server數據庫創(chuàng)建的第一步,如圖5-3所示,用戶應在這個對話框里輸入保存這個數據庫的SQL Server服務器名稱、登錄
68、用戶ID和口令。</p><p> 圖5-3 新建數據庫向導第一步:定義SQL Server服務器</p><p> (3) 在“新建數據庫向導”第一步對話框里單擊Next按鈕,執(zhí)行新建數據庫的第二步,彈出“New Database Wizard Step 2 of 4”對話框,如圖5-4所示。</p><p> 圖5-4 新建數據庫向導第二步:選擇數據庫
69、設備</p><p> (4) 在第二步對話框里,選擇使用的數據庫設備和日志設備,選擇后,“新建數據庫向導”將新建的數據庫放置在所選擇的數據庫設備上,將日志放置在所選擇的日志設備上。也可以選擇新建數據庫設備和日志設備,“新建數據庫向導”將彈出新建設備對話框,建立新的數據庫設備和日志設備。</p><p> (5)完成設備的選擇后,在第二步對話框里單擊Next按鈕,執(zhí)行新建數據庫的第三步
70、操作,彈出New Database Wizard Step 3 of 4對話框,如圖5-5所示。</p><p> 圖5-5 新建數據庫向導第三步:定義數據庫</p><p> (6) 在第三步對話框里定義數據庫的名稱、初始數據庫和日志的存儲空間大小。完成后,單擊Next按鈕,彈出New Database Wizard Step 4 of 4”對話框,如圖5-6所示。</p&g
71、t;<p> (7) 在第四步對話框里單擊Finish按鈕,完成數據庫的創(chuàng)建。VC++將該數據庫顯示在工作區(qū)的“Data View”選項卡里。在新建的數據庫里,可以添加新的表、視圖以及存儲過程等數據庫對象,操作遠程的SQL Server服務器就像操作本地數據庫一樣。</p><p> 圖5-6 新建數據庫向導第四步:完成創(chuàng)建</p><p> 5.5 數據源的創(chuàng)建&l
72、t;/p><p><b> 操作步驟:</b></p><p> 打開ODBC數據源管理器。如果使用的是Windows 98操作系統(tǒng),需要在控制面板里雙擊“數據源 (ODBC)”圖標,打開ODBC數據源管理器;如果使用的是Windows 2000(家族)操作系統(tǒng),需要在控制面板里雙擊“管理工具”圖標,然后在管理工具里雙擊“數據源 (ODBC)”圖標,打開ODBC數據源
73、管理器,如圖5-7所示。</p><p> 圖5-7 ODBC 數據源管理器</p><p> (2) 創(chuàng)建ODBCDemo1數據源。在數據源管理器里單擊“添加”按鈕,彈出“創(chuàng)建新數據源”對話框,開始創(chuàng)建ODBCDemo1數據源,如圖5-8所示。首先選擇數據源驅動程序,在列表里,選擇“Microsoft Access Driver(*.mdb)”項。</p><p&
74、gt; 圖5-8 為要創(chuàng)建新的數據源選擇驅動程序</p><p> (3) 配置創(chuàng)建的新數據源。在“創(chuàng)建新數據源”對話框里單擊“完成”按鈕,彈出“ODBC Microsoft Access安裝”對話框,在對話框里配置創(chuàng)建的新數據源。如圖5-9所示,輸入數據源名稱“ODBCDemo1”,在說明編輯區(qū)里輸入“Data source for ODBC API programming.”,單擊“選擇”按鈕,選擇要關聯
75、的Microsoft Access數據庫(*.mdb),在本例里spkc.mdb文件,保持其它設置。</p><p> 圖5-9 “ODBC Microsoft Access安裝”對話框</p><p> (4) 確認并創(chuàng)建數據源。在“ODBC Microsoft Access安裝”對話框里單擊“確定”按鈕,完成ODBCDemo1數據源的創(chuàng)建,并返回ODBC數據源管理器,數據源管理器
76、顯示了剛才創(chuàng)建的ODBCDemo1數據源,如圖5-10所示。</p><p> (5) 單擊“確定”按鈕,完成數據源創(chuàng)建。</p><p> 圖5-10 創(chuàng)建了ODBCDemo1數據源的ODBC數據源管理器</p><p><b> 5.6 程序結構</b></p><p> 本應用程序由19個窗體組成,主要的分
77、別是:主窗體,登陸窗體,入庫窗體,出庫窗體,庫存匯總,打印及查詢等窗體組成。</p><p> (1)主窗口界面程序代碼:</p><p> 通過運行程序首先進入歡迎界面和登陸窗體,通過輸入密碼,驗證身份后進入主窗體,在主窗體上有4個菜單項,分別對應各自的功能模塊窗體,包括系統(tǒng),庫存管理,入庫管理,出庫管理,盤存管理,綜合管理,附項管理,歷史數據管理,打印和查詢。需要哪個功能的時候就點
78、哪個菜單,相對應的窗體會自動彈出。</p><p> BOOL CMainDlg::OnInitDialog()</p><p><b> {</b></p><p> CDialog::OnInitDialog();</p><p> SetIcon(m_hIcon, TRUE);// Set big i
79、con</p><p> SetIcon(m_hIcon, FALSE);// Set small icon</p><p> TBBUTTON button[10];</p><p> int i=0,nStringLength;</p><p> CString string;</p><p> TC
80、HAR * pString; </p><p> //建立ImageList對象及ToolBar對象</p><p> m_ImageList.Create(32,32,ILC_COLOR32|ILC_MASK,0,0); //創(chuàng)建一個圖象列表框</p><p> m_ToolBar.EnableAutomation();</p>&l
81、t;p> m_ToolBar.Create(WS_CHILD|WS_VISIBLE,CRect(0,0,0,0),this,ID_TOOLBAR);</p><p> //向ImageList對象中添加資源圖標</p><p> UINT Resource[10]={IDI_ICON1,IDI_ICON2,IDI_ICON3,IDI_ICON4,IDI_ICON4,IDI_IC
82、ON5,IDI_ICON6,IDI_ICON7,IDI_ICON7,IDI_ICON8};</p><p> for(i=0;i<10;i++)</p><p> {m_ImageList.Add(::LoadIcon(::AfxGetResourceHandle(),MAKEINTRESOURCE(Resource[i]))); //向圖像列表框中添加圖片</p>
83、;<p><b> }</b></p><p> m_ToolBar.SetImageList(&m_ImageList); </p><p> for(i=0;i<10;i++)</p><p><b> {</b></p><p> button[i].
84、dwData=0;</p><p> button[i].fsState=TBSTATE_ENABLED;</p><p> if(i==4 ||i==8)</p><p> button[i].fsStyle=TBSTYLE_SEP ;</p><p><b> else</b></p><
85、p> button[i].fsStyle=TBSTYLE_BUTTON ;</p><p> button[i].iBitmap=i;</p><p> string.LoadString(i + IDS_STRING1);//裝載字符串資源</p><p> //為每一個字符串再加一個'\0',用于向工具欄里加字符串</p>
86、;<p> nStringLength= string.GetLength() + 1;</p><p> pString = string.GetBufferSetLength(nStringLength);</p><p> //pString[nStringLength] = 0;</p><p> //返回剛加的字符串的編號</p
87、><p> button[i].iString =m_ToolBar.AddStrings(pString);</p><p> string.ReleaseBuffer();</p><p><b> }</b></p><p> button[0].idCommand=ID_MENUITEM32807;</
88、p><p> button[1].idCommand=ID_MENUITEM32808;</p><p> button[3].idCommand=ID_MENUITEM32817;</p><p> button[2].idCommand=ID_MENUITEM32822;</p><p> button[5].idCommand=ID
89、_MENUITEM32811;</p><p> button[6].idCommand=ID_MENUITEM32812;</p><p> button[7].idCommand=ID_MENUITEM32813;</p><p> button[9].idCommand=ID_MENUITEM32815;</p><p> m_
90、ToolBar.AddButtons(10,button); </p><p> m_ToolBar.AutoSize();</p><p> m_ToolBar.SetStyle(TBSTYLE_FLAT|CCS_TOP);</p><p> m_StatusBar.EnableAutomation();</p><p> m_
91、StatusBar.Create(WS_CHILD|WS_VISIBLE,CRect(0,0,0,0),this,ID_STATUSBAR);</p><p> CString TipText;</p><p> this->GetWindowText(TipText);</p><p> TipText=TipText+" 〖當前用戶:&qu
92、ot;+UserName+ "〗";</p><p> this->SetWindowText(TipText);</p><p> int width[]={150,800};</p><p> m_StatusBar.SetParts(2, &width[0]);</p><p> m_Statu
93、sBar.SetText("黃石理工學院計算機本科一班",0,0);</p><p> //m_StatusBar.SetText(StatusText,1,0);</p><p> return TRUE; // return TRUE unless you set the focus to a control</p><p><
94、;b> }</b></p><p><b> (2)繪制窗口</b></p><p> void CMainDlg::OnPaint() </p><p><b> {</b></p><p> if (IsIconic())</p><p>&l
95、t;b> {</b></p><p> CPaintDC dc(this); // device context for painting</p><p> SendMessage(WM_ICONERASEBKGND, (WPARAM) dc.GetSafeHdc(), 0);</p><p> // Center icon in clie
96、nt rectangle</p><p> int cxIcon = GetSystemMetrics(SM_CXICON);</p><p> int cyIcon = GetSystemMetrics(SM_CYICON);</p><p> CRect rect;</p><p> GetClientRect(&rect
97、);</p><p> int x = (rect.Width() - cxIcon + 1) / 2;</p><p> int y = (rect.Height() - cyIcon + 1) / 2;</p><p> // Draw the icon</p><p> dc.DrawIcon(x, y, m_hIcon);&l
98、t;/p><p><b> }</b></p><p><b> else</b></p><p><b> {</b></p><p> CDialog::OnPaint();</p><p><b> }</b></
99、p><p><b> }</b></p><p> HCURSOR CMainDlg::OnQueryDragIcon()</p><p><b> {</b></p><p> return (HCURSOR) m_hIcon;</p><p><b> }
100、</b></p><p><b> (3)菜單響應代碼</b></p><p> void CMainDlg::OnMenuitem32807() </p><p><b> {</b></p><p> CDWare dlg;</p><p> dlg
101、.DoModal();</p><p><b> }</b></p><p> void CMainDlg::OnMenuitem32808() </p><p><b> {</b></p><p> CDClime dlg;</p><p> dlg.DoMod
102、al();</p><p><b> }</b></p><p> void CMainDlg::OnMenuitem32817() </p><p><b> {</b></p><p> CDUserdlg;</p><p> dlg.DoModal();&l
103、t;/p><p><b> }</b></p><p> void CMainDlg::OnMenuitem32822() </p><p><b> {</b></p><p> CDUnit dlg;</p><p> dlg.DoModal();</p>
104、;<p><b> }</b></p><p> void CMainDlg::OnMenuitem32824() </p><p><b> {</b></p><p> CDClient dlg;</p><p> dlg.DoModal();</p>&l
105、t;p><b> }</b></p><p> void CMainDlg::OnMenuitem32825() </p><p><b> {</b></p><p> CDProvider dlg;</p><p> dlg.DoModal();</p><p
106、><b> }</b></p><p> void CMainDlg::OnMenuitem32811() </p><p><b> {</b></p><p> CDInput dlg;</p><p> dlg.SetOP(UserName);</p><p
107、> dlg.DoModal();</p><p><b> }</b></p><p> void CMainDlg::OnMenuitem32812() </p><p><b> {</b></p><p> CDOutPut dlg;</p><p>
108、 dlg.SetOP(UserName);</p><p> dlg.DoModal();</p><p><b> }</b></p><p> void CMainDlg::OnMenuitem32813() </p><p><b> {</b></p><p&g
109、t; CDAdjust dlg;</p><p> dlg.SetOP(UserName);</p><p> dlg.DoModal();</p><p><b> }</b></p><p> void CMainDlg::OnMenuitem32815() </p><p><
110、;b> {</b></p><p> CDCheck dlg;</p><p> dlg.DoModal();</p><p><b> }</b></p><p> void CMainDlg::OnMenuitem32816() </p><p><b>
111、 {</b></p><p> CDAbate dlg;</p><p> dlg.DoModal();</p><p><b> }</b></p><p> void CMainDlg::OnMenuitem32823() </p><p><b> {<
112、;/b></p><p> CDAbout dlg;</p><p> dlg.DoModal();</p><p><b> }</b></p><p> void CMainDlg::OnMenuitem32826() </p><p><b> {</b>
113、;</p><p> CDStore dlg;</p><p> dlg.DoModal();</p><p><b> }</b></p><p><b> 6.運行結果</b></p><p> 1運行程序出現用戶登錄界面,如圖6-1</p>&l
114、t;p> 圖6-1.用戶登錄界面</p><p> 2輸入用戶名MRKJ,密碼:111,單擊“登錄”按鈕。出現主界面,如圖6-2所示:</p><p> 圖6-2 用戶主界面</p><p><b> 7.實驗總結</b></p><p> 回顧起此次課程設計,至今我們仍感慨頗多,的確,自從拿到題目到完成
115、整個編程,從理論到實踐,在一個多月的日子里,可以學到很多很多的東西,不僅可以鞏固了以前所學過的知識,而且學到了很多在書本上所沒有學到過的知識。同時在這次課程設計中讓我們認識到做程序設計這項工作中我門要具備以下素質:</p><p> 有很強的團隊精神和協(xié)作能力和文檔習慣</p><p> 良好的文檔是正規(guī)研發(fā)流程中非常重要的環(huán)節(jié),缺乏文檔,一個軟件系統(tǒng)就缺乏生命力,在未來的查錯,升級以
116、及模塊的復用時就都會遇到極大的麻煩。</p><p> 此外編程是一項高精度的工作所以我們要有規(guī)范化,標準化的代碼編寫習慣,通過這次編程我們深深的感受到對代碼的變量命名,代碼內注釋格式,甚至嵌套中行縮進的長度和函數間的空行數字都有明確規(guī)定,良好的編寫習慣,不但有助于代碼的移植和糾錯,也有助于不同人員之間的協(xié)作。</p><p><b> 有模塊化思維能力</b>&
117、lt;/p><p> 模塊化思維就是編程任何一個功能模塊或函數的時候,要多想一些,不要局限在完成當前任務的簡單思路上,想想看該模塊是否可以脫離這個系統(tǒng)存在,是否可以通過簡單的修改參數的方式在其他系統(tǒng)和應用環(huán)境下直接引用,這樣就能極大避免重復性的開發(fā)工作?!?lt;/p><p><b> 善于學習和總結</b></p><p> 總結也是學習能力的
118、一種體現,每次完成一個編程任務,完成一段代碼,都應當有目的的跟蹤該程序的應用狀況,隨時總結,找到自己的不足,這樣所編寫的程序才能逐步提高,生活就是這樣,汗水預示著結果也見證著收獲。勞動是人類生存生活永恒不變的話題。通過實際動手做,我們才真正領略到“艱苦奮斗”這一詞的真正含義,我們想說,編程確實有些辛苦,但苦中也有樂,在這個團隊的任務中,一起的工作可以讓我們有說有笑,相互幫助,配合默契。對我們而言,知識上的收獲重要,精神上的豐收是可喜的。
119、挫折是一份財富,經歷是一份擁有。這次實際操作必將成為我們人生旅途上一個非常美好的回憶!</p><p> 總而言之,本次課程設計,從一個全新的高度培養(yǎng)了我們的團體協(xié)作能力、編程能力、整體規(guī)劃能力和理論聯系實際的能力,受益匪淺,相信此次的設計鍛煉會對我們將來的工作打下堅實的基礎。</p><p><b> 8.參考文獻</b></p><p>
120、; [1] 鄭莉,董淵,張瑞豐 ?!禖++語言程序設計》[M]。第3版。北京:清華大學出版社,2003</p><p> [2] 李海文,吳乃陵。《C++程序設計實踐教程》[M]。北京:高等教育出版社,2003</p><p> [3] 譚浩強,《C++程序設計題解與上機指導》[M]。北京:清華大學出版社。2004</p><p> [4] 錢能?!禖++程
121、序設計》[M]。北京:清華大學出版社,1999</p><p> [5] 龔沛曾,揚志強?!禖/C++程序設計教程》[M],北京高等教育出版社。2004</p><p> [6] 鄭莉,傅士星。《C++語言程序設計習題與實驗指導》[M],第2版。北京:清華大學出版社,2003</p><p> [7] 余蘇寧,王明福?!禖++程序設計》[M],北京:高等教育出
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 畢業(yè)設計--商品庫存管理系統(tǒng)
- 畢業(yè)設計----商品庫存管理系統(tǒng)(含源程序)
- 畢業(yè)設計----商品庫存管理系統(tǒng)(含源程序).doc
- 庫存管理系統(tǒng)畢業(yè)設計
- 畢業(yè)設計----庫存管理系統(tǒng)
- 庫存管理系統(tǒng)畢業(yè)設計
- 商店庫存管理系統(tǒng)-畢業(yè)設計
- 商店庫存管理系統(tǒng)-畢業(yè)設計
- 畢業(yè)設計(論文)-庫存管理系統(tǒng)
- 畢業(yè)設計--vb庫存管理系統(tǒng)設計
- 商品銷售管理系統(tǒng)畢業(yè)設計
- 畢業(yè)設計----商品銷售管理系統(tǒng)設計
- 畢業(yè)設計-----商品銷售管理系統(tǒng)設計
- 畢業(yè)設計---商品銷售管理系統(tǒng)設計
- 畢業(yè)設計--庫存管理信息系統(tǒng)
- 計算機畢業(yè)設計--- 庫存管理系統(tǒng)
- 畢業(yè)設計---基于rfid的庫存管理系統(tǒng)
- 畢業(yè)設計-庫存銷售管理系統(tǒng)的開發(fā)
- 畢業(yè)設計——商品銷售管理系統(tǒng)的設計
- 畢業(yè)設計---企業(yè)庫存信息管理系統(tǒng)
評論
0/150
提交評論