基于NET的企業(yè)進(jìn)銷存管理系統(tǒng)設(shè)計論文_第1頁
基于NET的企業(yè)進(jìn)銷存管理系統(tǒng)設(shè)計論文_第2頁
基于NET的企業(yè)進(jìn)銷存管理系統(tǒng)設(shè)計論文_第3頁
基于NET的企業(yè)進(jìn)銷存管理系統(tǒng)設(shè)計論文_第4頁
基于NET的企業(yè)進(jìn)銷存管理系統(tǒng)設(shè)計論文_第5頁
已閱讀5頁,還剩55頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、 本科生畢業(yè)設(shè)計摘 要傳統(tǒng)企業(yè)的管理模式大部分主要還是采用手工記賬的模式,其管理效率比較低。隨著社會的發(fā)展,人們的消費能力在提高,企業(yè)進(jìn)貨、銷售和庫存的信息量將會非常龐大。如果能對這些數(shù)據(jù)進(jìn)行統(tǒng)計分析,對商品的進(jìn)銷存進(jìn)行全面的管理,將會給企業(yè)管理帶來很大的幫助。針對企業(yè)用手工完成進(jìn)銷存管理存在處理速度慢和容易出錯等問題,本系統(tǒng)設(shè)計出集進(jìn)貨管理、銷售管理、庫存管理為一體的,基本上滿足中小企業(yè)的進(jìn)銷存管理體統(tǒng)。本系統(tǒng)采用C#.NET作為開發(fā)環(huán)境,選用SQL Server 2008數(shù)據(jù)庫為平臺,采用三層架構(gòu)中的隔離驅(qū)動模式,充分考慮到實際操作中出現(xiàn)的各種情況,結(jié)合計算機(jī)容量大、記憶力強(qiáng)和處理速度快等

2、優(yōu)點,在提高公司管理效率的同時,增加了毛利的計算,也為進(jìn)銷存管理系統(tǒng)的設(shè)計與應(yīng)用提供了借鑒意義。本文所設(shè)計的進(jìn)銷存管理系統(tǒng),界面友好,操作方便、功能完整,使得企業(yè)管理合理規(guī)范,最大限度的滿足了用戶的需要。關(guān)鍵詞:進(jìn)銷存管理;SQL Server數(shù)據(jù)庫;C#.NET;隔離驅(qū)動模式ABSTRACTThe traditional enterprise management mode and most of the major or the use of manual accounting mode, the management efficiency is relatively low. With

3、the development of society, people's consumption ability in raising, enterprise purchase, sales and inventory information will be very large. If the energy of these data for statistical analysis, to the commodity Invoicing comprehensive management, will be of great help to the enterprise managem

4、ent.In view of the enterprise with complete manually Invoicing management existence the processing speed is slow and prone to error and other problems, the system design a set of stock management, sales management, inventory management as a whole, basically satisfies the small and medium-sized enter

5、prises Invoicing management system. This system uses C#.NET as a development environment, using SQL Server 2008 database as a platform, the three layer architecture of isolation driven pattern, give full consideration to the actual operation occurs in a variety of situations, combined with computer

6、capacity, strong memory and processing speed, to improve management efficiency at the same time, increase the profit calculation, also for Invoicing management system design and application to offer draw lessons from a meaning.The design of the Invoicing management system, friendly interface, conven

7、ient operation, complete functions, the management of enterprises has a reasonable standard, to maximize the satisfaction of user needs.Keywords:inventory management; SQL Server; C#.NET; isolation driven pattern.目 錄1 緒論11.1課題的研究背景11.2課題研究意義11.3本課題主要研究內(nèi)容21.4本文的結(jié)構(gòu)安排22 開發(fā)的相關(guān)技術(shù)42.1.NET框架42.1.1.NET框架介紹42

8、.2.2.NET編譯技術(shù)52.2ADO.NET技術(shù)62.2.1ADO.NET介紹62.2.2ADO.NET中的主要對象62.2.3用ADO.NET連接SQL Server數(shù)據(jù)庫72.3隔離驅(qū)動模式82.4開發(fā)工具介紹82.4.1SQL Server 2008數(shù)據(jù)庫系統(tǒng)82.4.2C#編程語言92.4.3Visual Studio 2010工具軟件介紹93 系統(tǒng)功能的架構(gòu)與設(shè)計113.1系統(tǒng)功能描述113.1.1系統(tǒng)總體功能結(jié)構(gòu)113.1.2系統(tǒng)功能實現(xiàn)流程133.2數(shù)據(jù)庫設(shè)計143.2.1業(yè)務(wù)邏輯編碼規(guī)則143.2.2數(shù)據(jù)庫創(chuàng)建153.2.3數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計163.2.4數(shù)據(jù)表邏輯關(guān)系203

9、.3Visual Studio 2010的設(shè)計223.3.1Visual Studio 2010項目的創(chuàng)建223.3.2添加模塊223.3.3系統(tǒng)窗體匯總表234 系統(tǒng)功能模塊實現(xiàn)264.1用戶登錄模塊的實現(xiàn)264.2系統(tǒng)主窗體274.3進(jìn)貨模塊的實現(xiàn)284.3.1進(jìn)貨單與退貨單284.3.2進(jìn)貨分析304.3.3進(jìn)貨統(tǒng)計(不含退貨)304.3.4單位往來對賬314.4銷售模塊314.4.1銷售單、銷售退貨貨單、銷售統(tǒng)計314.4.2銷售狀況324.4.3商品銷售排行334.4.4銷售成本344.4.5往來對賬354.5庫存模塊364.5.1庫存狀況364.5.2庫存商品上限、下限報警374.

10、5.3庫存盤點384.6基礎(chǔ)數(shù)據(jù)模塊的實現(xiàn)394.6.1庫存商品394.6.2往來單位404.6.3公司職員404.7系統(tǒng)維護(hù)404.7.1本單位信息設(shè)置404.7.2系統(tǒng)權(quán)限管理設(shè)置414.7.3數(shù)據(jù)庫備份與恢復(fù)414.7.4系統(tǒng)數(shù)據(jù)清理425 總 結(jié)43參考文獻(xiàn):44翻譯部分45英文原文45中文譯文51致謝561 緒論1.1課題的研究背景隨著企業(yè)規(guī)模的不斷擴(kuò)大,原始手工的管理方式已不能適應(yīng)企業(yè)的發(fā)展現(xiàn)狀,也無法滿足企業(yè)高復(fù)雜、快速、準(zhǔn)確的管理工作要求,企業(yè)的管理者并非固步自封,在現(xiàn)今競爭日趨激烈的市場環(huán)境下,企業(yè)的管理者在試圖不斷地鞏固現(xiàn)有的資源基礎(chǔ)上,一邊摸索著管理經(jīng)驗,一邊尋求可以幫助

11、企業(yè)在管理上突破的新管理方式和新方法,提高企業(yè)管理上的靈活性,實現(xiàn)企業(yè)的穩(wěn)步發(fā)展,迎接日益激烈的市場競爭,信息技術(shù)為他們提供了最好的途徑1。以計算機(jī)與通信技術(shù)為基礎(chǔ)的信息技術(shù)已經(jīng)進(jìn)入了蓬勃發(fā)展的時期。信息技術(shù)為人們創(chuàng)造了一種全新的不受時間、地域和計算機(jī)本身約束而實現(xiàn)信息交流、共享和協(xié)作的方式,這種新的處理方式給企業(yè)帶來了新的機(jī)遇和挑戰(zhàn)。在企業(yè)信息化大背景的影響下,對企業(yè)經(jīng)營活動中的進(jìn)、銷、存進(jìn)行有效的控制和管理。要實現(xiàn)企業(yè)的信息化,關(guān)鍵是要實現(xiàn)企業(yè)信息的集成和共享。為了實現(xiàn)信息化,企業(yè)選擇了進(jìn)銷存管理系統(tǒng)。此系統(tǒng)利用計算機(jī)對企業(yè)的進(jìn)貨、銷售及庫存進(jìn)行一體化管理,對庫存商品進(jìn)行查詢和匯總,讓管理

12、者時刻對物資儲做到心里有數(shù);通過建立商品到貨入庫管理,對入庫商品的采購時間、供應(yīng)商及價格進(jìn)行控制。銷售管理幫助企業(yè)掌握銷售動向。企業(yè)采用進(jìn)銷存系統(tǒng)來管理企業(yè)的進(jìn)銷存業(yè)務(wù)可以帶來明顯的經(jīng)濟(jì)效益和社會效益2。它的優(yōu)點主要體現(xiàn)在以下幾方面:極大提高了員工的工作效率,大大減少了以往到貨商品入庫到銷售出庫流程繁瑣,雜亂的弊端;基于計算機(jī)技術(shù)的進(jìn)銷存管理系統(tǒng),可以減少入庫管理、出庫管理及庫存管理中的漏洞,可以減少管理成本,增加企業(yè)收入;進(jìn)銷存管理的操作自動化和信息的電子化,全面提高了企業(yè)的管理水平。因此,為進(jìn)一步提高企業(yè)進(jìn)銷存業(yè)務(wù)處理效率,建立高效的進(jìn)銷存系統(tǒng)就變得十分重要。1.2課題研究意義信息管理是人

13、類為了有效地開發(fā)和利用信息資源,以現(xiàn)代信息技術(shù)為手段,對信息資源進(jìn)行計劃、組織、領(lǐng)導(dǎo)和控制的社會活動。簡單地說,信息管理就是人對信息資源和信息活動的管理。信息管理的根本目的是控制信息流向,實現(xiàn)信息的效用與價值。進(jìn)銷存的系統(tǒng)是一個企業(yè)進(jìn)貨同銷售工作的核心,它的內(nèi)容對于企業(yè)的決策者和管理者來說都至關(guān)重要,所以進(jìn)銷存管理系統(tǒng)應(yīng)該能夠為用戶提供充足的信息和快捷的查詢手段。對一個從事商業(yè)活動的公司來說,都需要采購、存儲、以及銷售商品,對這樣的工作流程,建立一個合適的信息管理系統(tǒng),進(jìn)行有效的管理和控制,是十分有必要的。本軟件系統(tǒng)是根據(jù)化妝品公司的特點,集進(jìn)、銷、存、分析于一體,可以實現(xiàn)對管理員管理、供應(yīng)商

14、管理、進(jìn)貨管理、銷售管理、庫存管理等管理,使得管理合理規(guī)范,實現(xiàn)對商品的進(jìn)貨、付款、銷貨、收款和庫存統(tǒng)計等業(yè)務(wù)的計算機(jī)管理,大大減輕了公司工作員工的工作量,全面提高了管理的管理效率以及服務(wù)質(zhì)量,使公司管理水平和業(yè)務(wù)水平躍上了一個新的臺階,系統(tǒng)操作方便及簡單的界面給用戶節(jié)省了不少寶貴的時間,提高了效率,也減少了人為出錯的概率。系統(tǒng)采用計算機(jī)這一現(xiàn)代化管理工具,不但可以提高工作效率和工作質(zhì)量,而且還可以節(jié)省大量的人力、物力和財力。計算機(jī)管理代替落后的手工管理后,原來幾個人幾天干的活,現(xiàn)在一個人就完全可以勝任。只要在配一臺普通臺式計算機(jī)和一個操作人員就可以實現(xiàn),完成對公司信息的管理。1.3本課題主要

15、研究內(nèi)容通過實際調(diào)查,要求本系統(tǒng)具有以下功能: (1)軟件設(shè)計以方便和全面為宗旨,入手快,操作簡單; (2)考慮到操作人員的計算機(jī)知識有限,因此本系統(tǒng)具有良好的人機(jī)界面; (3)對于系統(tǒng)的使用對象較多,設(shè)計了較好的權(quán)限管理;(4)方便的數(shù)據(jù)查詢,支持多條件查詢;(5)庫存報警的基點是可變的并增加了庫存的折損模塊;(6)當(dāng)外界環(huán)境(停電、網(wǎng)絡(luò)病毒)干擾本系統(tǒng)時,系統(tǒng)可以通過備份和恢復(fù)來保護(hù)原始數(shù)據(jù)的安全。1.4本文的結(jié)構(gòu)安排第一章介紹了本課題的背景及研究意義、課題設(shè)計任務(wù)。第二章介紹了基于.NET進(jìn)銷存系統(tǒng)開發(fā)的相關(guān)技術(shù)分析。第三章介紹了企業(yè)進(jìn)銷存管理系統(tǒng)的總體結(jié)構(gòu)設(shè)計。第四章詳細(xì)介紹進(jìn)銷存管理

16、系統(tǒng)的實現(xiàn),如系統(tǒng)主頁面界面、進(jìn)貨、銷售、庫存等模塊的實現(xiàn)。第五章總結(jié)了整個設(shè)計過程,并給出系統(tǒng)的改進(jìn)方案。2 開發(fā)的相關(guān)技術(shù)2.1.NET框架2.1.1.NET框架介紹.NET框架(Framework)簡稱.NET,是由微軟開發(fā),一個致力于敏捷軟件開發(fā)(Agile softwaredevelopment)、快速應(yīng)用開發(fā)(Rapidapplication development)、平臺無關(guān)性和網(wǎng)絡(luò)透明化的軟件開發(fā)平臺。.NET是微軟為下一個十年對服務(wù)器和桌面型軟件工程邁出的第一步。NET包含許多有助于互聯(lián)網(wǎng)和內(nèi)部網(wǎng)應(yīng)用迅捷開發(fā)的技術(shù)。.NET框架定義了.NET應(yīng)用程序的開發(fā)和運行環(huán)境,包括可在

17、.NET應(yīng)用程序中使用的類庫,類類似與java的虛擬機(jī)。開發(fā)人員可以在次平臺或環(huán)境下為各種平臺和設(shè)備編寫應(yīng)用程序。.NET框架功能非常強(qiáng)大,主要體現(xiàn)在一下幾個方面3:提供了一個面向?qū)ο蟮木幊汰h(huán)境,完全支持面向?qū)ο蟮木幊獭T谲浖目蓮?fù)用性、和擴(kuò)展性、可維護(hù)性、靈活性方面都有很大是提高;提供了支持多中編譯語言的編譯器,使應(yīng)用程序可以在多種設(shè)備(從臺式機(jī)到移動電話)上運行;提供了許多開發(fā)人員可重復(fù)的基礎(chǔ)類,包括線程、文件輸入輸出、數(shù)據(jù)庫支持、XML數(shù)據(jù)分析、安全控制等,這些類庫可用于所有.NET平臺支持的語言;對Web應(yīng)用的強(qiáng)大支持??删帉懽R別Internet并在Internet上也支持的應(yīng)用程序,

18、并且這些應(yīng)用程序也接受諸如XML、HTTP、SOAP這樣的開發(fā)標(biāo)準(zhǔn)。.NET框架包括公共語言運行庫(CLR)和統(tǒng)一的類庫集兩個主要組件4。其中公共語言運行庫是.NET框架的基礎(chǔ),它提供內(nèi)存管理、線性管理和遠(yuǎn)程處理等核心服務(wù)。公共語言運行庫提取.NET應(yīng)用程序.將其編譯成本機(jī)的處理代碼,同時進(jìn)行安全性檢查。它能夠自動處理對象布局,并管理對象應(yīng)用,當(dāng)不再使用對象時,釋放它們。這樣有助于消除內(nèi)存泄露和其他常見的編譯錯誤。.NET框架的另一個重要組件類庫集,它是一個綜合性的、面向?qū)ο蟮目芍赜妙愋图?,包括類、接口和值類型組成的庫,是建立.NET框架應(yīng)用程序、組件和控件的基礎(chǔ)。如圖2-1顯示了.NET框

19、架的組件及其要素。圖2-1 .NET的組件極其架構(gòu)2.2.2.NET編譯技術(shù)為實現(xiàn)多語言開發(fā),.NET所有編程都不是被直接編譯為本地代碼,而是編譯成微軟中間語言MSIL(Microsoft Intermediate Language)代碼,再有即時編譯器(JIT)轉(zhuǎn)換成機(jī)器碼5。如圖2-2。圖2-2 .NET編譯原理 C#和.NET支持用其他語言編寫代碼的代碼通過各自的編譯器編譯成MSIL,再通過JIT編譯器編譯成相應(yīng)的額操作專用代碼6。這種編譯方式實現(xiàn)了代碼托管,提高了程序的運行效率。2.2ADO.NET技術(shù)2.2.1ADO.NET介紹ADO.NET是由一系列的數(shù)據(jù)庫相關(guān)類和接口組成的,它的

20、基石是XML技術(shù),所以通過ADO.NET不僅能訪問關(guān)系型數(shù)據(jù)庫中的數(shù)據(jù),而且還能訪問層次化的XML數(shù)據(jù)7。ADO.NET提供了兩種數(shù)據(jù)訪問的模式8:一種是為連接模式(Connected),另一種為非連接模式(Disconnected)。后一種模式是ADO.NET中才具有的。相比于傳統(tǒng)的數(shù)據(jù)庫訪問模式,非連接的模式提供了更大的可升級性和靈活性。在該模式下,一旦應(yīng)用程序從數(shù)據(jù)源中獲得所需的數(shù)據(jù),它就斷開與原數(shù)據(jù)的連接,并將獲得的數(shù)據(jù)以XML的形式存放在主存中。在應(yīng)用程序處理完數(shù)據(jù)后,它再取得與原數(shù)據(jù)的連接并完成數(shù)據(jù)的更新工作。ADO.NET中的DataSet類是非連接模式的核心,數(shù)據(jù)集對象(Dat

21、aSet)以XML的形式存放數(shù)據(jù)9。我們既可以從一個數(shù)據(jù)庫中獲取一個數(shù)據(jù)集對象,也可以從一個XML數(shù)據(jù)流中獲取一個數(shù)據(jù)集對象。而從用戶的角度來看,數(shù)據(jù)源在哪里并不重要,也是無須關(guān)心的。這樣一個統(tǒng)一的編程模型就可被運用于任何使用了數(shù)據(jù)集對象的應(yīng)用程序。ADO.NET有效地從數(shù)據(jù)操作中將數(shù)據(jù)訪問分解為多個可以單獨使用或一前一后使用的不連續(xù)組件。ADO.NET包含用于連接到數(shù)據(jù)庫、執(zhí)行命令和檢索結(jié)果的.NET Framework數(shù)據(jù)提供程序。用戶可以直接處理檢索到的結(jié)果,或?qū)⑵浞湃階DO.NET DataSet對象,以便與來自多個源的數(shù)據(jù)或在層之間進(jìn)行遠(yuǎn)程處理的數(shù)據(jù)組合在一起,以特殊方式向用戶公開。

22、ADO.NET DataSet對象也可以獨立于.NET Framework數(shù)據(jù)提供程序使用,以管理應(yīng)用程序本地的數(shù)據(jù)或源自XML的數(shù)據(jù)。2.2.2ADO.NET中的主要對象ADO.NET的對象主要包括DataSet,DataTable,DataColumn,DataRow和DataRelation10。(1)DataSet這個對象是一個集合對象,它可以包含任意數(shù)量的數(shù)據(jù)表,以及所有表的約束、索引和關(guān)系。所有這些信息都以XML的形式存在,可以處理、遍歷、搜索任意或者全部的數(shù)據(jù)。(2)DataTable這個對象可以在DataSet對象內(nèi)找到所有表。通過“Table”屬性可以訪問DataTable的

23、集合。類似地,通過DataSet的“Relations”屬性可以訪問到所有已經(jīng)建立的數(shù)據(jù)集關(guān)系。(3)DataColumn表包含與列有關(guān)的信息,包括列的名稱、類型和屬性。它在從一個數(shù)據(jù)表中得到數(shù)據(jù)的過程中起著重要的作用。它還可以用來用于創(chuàng)建DataTable的架構(gòu)的基本構(gòu)造塊,通過向DataColumnCollection中添加一個或多個DataColumn對象來生成這個架構(gòu)。每個DataColumn都有DataType屬性,該屬性確定DataColumn所包含的數(shù)據(jù)的種類。 (4)DataRow要填充一個表,可以使用命令的自動數(shù)據(jù)綁定功能,或者也可以手工添加行,方法是:創(chuàng)建DataRow對象

24、,把DataRow對象插入到表,然后為該記錄的各個字段填寫數(shù)據(jù)??梢酝ㄟ^Rows集合導(dǎo)航DataTable的元素,利用Rows集合實現(xiàn)一個順序?qū)Ш狡鳎蛘咄ㄟ^搜索或直接定位跳轉(zhuǎn)到特定的記錄。DataRelationDataRelation相當(dāng)于數(shù)據(jù)表之間的關(guān)系,它作為整體和DataSet相關(guān)聯(lián),Relations集合中的每個DataRelation對象都包括了DataSet的Tables集合中兩個DataTable的連接信息。所以只要指定每一個表中用于連接的列,就可以連接到DataTable,這個關(guān)系比較類似于在指定關(guān)系數(shù)據(jù)庫的關(guān)系時把一個表的外鍵關(guān)聯(lián)起來。2.2.3用ADO.NET連接SQL

25、 Server數(shù)據(jù)庫從ADO.NET連接到SQL Server數(shù)據(jù)庫有三種方法,這里主要介紹在服務(wù)器資源管理器中連接到SQL Server。打開.NET工作環(huán)境,在服務(wù)器資源管理器中的數(shù)據(jù)連接上單擊鼠標(biāo)右鍵,選擇“添加連接”,彈出“數(shù)據(jù)連接屬性”對話框。提供程序默認(rèn)為Microsoft OLE DB Provider for SQL Server,在“連接”選項卡中直接輸入數(shù)據(jù)庫名稱或從自動檢測到的結(jié)果中選擇,輸入用戶名和密碼,單擊“測試連接”按鈕,如果測試成功,則彈出“測試連接成功”對話框。測試成功后,既“在數(shù)據(jù)庫上選擇數(shù)據(jù)庫”的下拉列表中會出現(xiàn)這個連接所對應(yīng)的所有數(shù)據(jù)庫,選擇指定的數(shù)據(jù)庫,

26、即完成了連接數(shù)據(jù)庫。2.3隔離驅(qū)動模式進(jìn)銷存管理系統(tǒng)的現(xiàn)實,主要用到三層架構(gòu)中的隔離驅(qū)動模式,這在系統(tǒng)各個模塊中都得到了體現(xiàn)。通常所說的三層架構(gòu)是指陳述(UI)、業(yè)務(wù)邏輯層(BLL)、數(shù)據(jù)訪問層(DAL),其中陳述層負(fù)責(zé)界面的顯示,用于顯示數(shù)據(jù)和接收用戶輸入的數(shù)據(jù),為用戶提供交互式操作界面;業(yè)務(wù)邏輯層是表示層和數(shù)據(jù)訪問層之間的橋梁,主要負(fù)責(zé)數(shù)據(jù)的傳遞和處理;數(shù)據(jù)訪問層主要實現(xiàn)對數(shù)據(jù)的保存和讀取操作11。所謂隔離驅(qū)動模式,就是在開發(fā)項目時,陳述層和數(shù)據(jù)訪問層被獨立開發(fā),常常平行開發(fā)。這兩層在設(shè)計時沒有任何干擾,所以不會存在人為的約束和有害的設(shè)計元素。當(dāng)兩層的設(shè)計都獨立完成后,在設(shè)計業(yè)務(wù)邏輯層,業(yè)

27、務(wù)邏輯層的責(zé)任就是在沒有對數(shù)據(jù)層和陳述的需求變化的基礎(chǔ)上完成所有的轉(zhuǎn)換。因為陳述層和數(shù)據(jù)訪問層是完全獨立的,當(dāng)邏輯業(yè)務(wù)層需求改變的時候,它們都可以做相應(yīng)的修改而不影響對方。改變兩個物理上不相鄰的層不會直接對其他層產(chǎn)生影響或發(fā)生沖突,這就允許數(shù)據(jù)訪問層結(jié)構(gòu)的調(diào)整或者陳述層根據(jù)用戶的需要做相應(yīng)的變化,而不需要系統(tǒng)做更大調(diào)整或修改。隔離驅(qū)動模式的設(shè)計圖如2-3所示。圖2-3 隔離驅(qū)動模式2.4開發(fā)工具介紹2.4.1SQL Server 2008數(shù)據(jù)庫系統(tǒng)在畢業(yè)設(shè)計中我用到了Microsoft公司的SQL Server 2008。SQL Server 2008 是Microsoft公司推出的SQL S

28、erver數(shù)據(jù)庫管理系統(tǒng)的最新版本該版本繼承了SQL Server 2000版本的優(yōu)點同時它推出了許多新的特性和關(guān)鍵的改進(jìn),使得它成為至今為止的最強(qiáng)大和最全面的SQL Server版本。這個平臺新功能有以下特點12:(1)可信任的使得公司可以以很高的安全性、可靠性和可擴(kuò)展性來運行他們最關(guān)鍵任務(wù)的應(yīng)用程序。(2)高效的使得公司可以降低開發(fā)和管理他們的數(shù)據(jù)基礎(chǔ)設(shè)施的時間和成本。(3)智能的提供了一個全面的平臺,可以在你的用戶需要的時候給他發(fā)送觀察和信息。2.4.2C#編程語言Microsoft是這樣描述C#的:“C#是從C和C+派生來的一種簡單、現(xiàn)代、面向?qū)ο蠛皖愋桶踩木幊陶Z言。C#主要是從C/

29、C+編程語言家族移植過來的,C和C+的程序員會馬上熟悉它。C#試圖結(jié)合Visual Basic的快速開發(fā)能力和C+的強(qiáng)大靈活的能力?!?3Microsoft C#是微軟退出的與JAVA語言香抗衡的一種支持網(wǎng)絡(luò)編程新的編程語言,它是為生成運行在.NET Framework14上的、廣泛的企業(yè)級應(yīng)用程序而設(shè)計的。C#是專門用于.NET的編程語言,用C#編寫的代碼總是在.NET框架中運行15。C#為開發(fā)者提供了以下主要方便特點16:簡便性不管是成員、類、名字空間還是引用,都統(tǒng)一簡化到用點來表達(dá);一致性每種數(shù)據(jù)類型都視為一個對象,統(tǒng)一了類型系統(tǒng);面向?qū)ο髵仐壛巳趾瘮?shù)、變量和常量了概念;可升級性類型聲

30、明和定義綜合在一起,去掉無C和C+編譯中需要的各種各樣的頭文件。2.4.3Visual Studio 2010工具軟件介紹Visual Studio 2010是微軟公司推出的開發(fā)環(huán)境。是目前最流行的Windows平臺應(yīng)用程序開發(fā)環(huán)境。其集成開發(fā)環(huán)境(IDE)的界面被重新設(shè)計和組織,變得更加簡單明了。除了Microsoft SQL Server,它還支持 IBM DB2和Oracle數(shù)據(jù)庫。與Visual Studio 2008相比新功能還包括17:(1)C# 4.0中的動態(tài)類型和動態(tài)編程:C# 4.0的主題就是動態(tài)編程(Dynamic Programming)。雖然C#仍然是一種靜態(tài)語言,但是

31、對象的意義開始變得越來越“動態(tài)”。它們的結(jié)構(gòu)和行為無法通過靜態(tài)類型來捕獲,或者至少編譯器在編譯程序時無法得知對象的結(jié)構(gòu)和行為。C#引入了一種新的靜態(tài)類型“dynamic”,當(dāng)你擁有了一個dynamic類型的對象后,你“對它做的事情”只會在運行時進(jìn)行解析。(2)多顯示器支持:“一夫多器”,隨著現(xiàn)代應(yīng)用程序規(guī)模越來越大,開發(fā)工具越來越復(fù)雜,需要同時處理的信息也越來越多,多顯示器已經(jīng)成為我們開發(fā)工作的實際需要了。常常我們希望能夠一邊編寫代碼,一邊能夠直觀地看到界面的變化,同時我們還想開著搜索引擎查找資料等等。(3)使用Visual Studio 2010的特性支持TDD:TDD(Test-Drive

32、n Development)測試驅(qū)動開發(fā):開始流行于20世紀(jì)90年代,是極限編程中倡導(dǎo)的程序開發(fā)方法之一,其主要思想就是先寫測試程序,然后再實現(xiàn)代碼使其通過測試。無法高效地編寫測試程序;困難:測試程序?qū)懞煤?,無法自動生成代碼框架,開發(fā)人員還要用大量的時間來編寫實現(xiàn)代碼。VS2010的“即用即產(chǎn)生”特性,可以讓我們根據(jù)測試程序,根據(jù)代碼的使用情況,快速地反向生成相應(yīng)的代碼。(4)支持Office:動態(tài)編程C# 4.0中引入了一種新的靜態(tài)類型dynamic,這使得我們在使用COM進(jìn)行Office開發(fā)的時候,無需再進(jìn)行復(fù)雜而繁瑣的對象類型轉(zhuǎn)換??蛇x參數(shù)Office函數(shù)有很多參數(shù),C# 3.0不支持可

33、選參數(shù),每次調(diào)用函數(shù)都必須給定全部參數(shù);C# 4.0支持參數(shù)使用默認(rèn)值。No-PIA部署以前Office開發(fā)要求目標(biāo)機(jī)器(用戶機(jī)器)安裝特定版本Office,在VS2010的No-PIA部署中,將真正使用到的程序集嵌入到應(yīng)用程序中。(5)Quick Search特性:在VS2010中,我們可以通過在任何代碼文件中使用快捷鍵“Ctrl + ”,(Ctrl鍵加上逗號鍵)調(diào)出“Quick Search”窗口,在搜索框中輸入任意的字符作為搜索條件,VS就會替我們在項目中搜索相關(guān)聯(lián)的符號,類型,成員名稱等等,同時將搜索結(jié)果動態(tài)地顯示在窗口下方的搜索結(jié)果列表中。我們可以不斷地更換搜索條件,直到找到我們想要

34、的結(jié)果為止。(6)C+ 0x新特性:C+的新標(biāo)準(zhǔn)C+0x已經(jīng)進(jìn)入了feature freeze的階段。Visual Studio 2010引入了TR1包含的部分特性外,還引入了4個重要的C+新特性:Lambda表達(dá)式,靜態(tài)斷言static_assert,auto關(guān)鍵字,右值引用。(7)IDE增強(qiáng):VS2000之后,VC+的IDE效率越來越低下。VS2010中VC+增強(qiáng)主要包括:改進(jìn)的項目系統(tǒng)支持,改進(jìn)的VS用戶體驗,增強(qiáng)的MFC,VC+程序的發(fā)布與部署。(8)使用Visual C+ 2010創(chuàng)建Ribbon界面:隨著Office 2007的發(fā)布,它改變了以往傳統(tǒng)的下拉式菜單用戶界面,取而代之的

35、是全新的被稱之為“Ribbon”的固定式工具欄界面。(9)新增基于.NET平臺的語言F#:F#是由微軟發(fā)展的為微軟.NET語言提供運行環(huán)境的程序設(shè)計語言。它是基于Ocaml的,而Ocaml是基于ML函數(shù)程序設(shè)計語言的,用于顯示.NET在不同編程語言間互通的程序設(shè)計。微軟計劃將慢慢整合F#至.NET平臺并使F#最終成為.NET平臺的頂峰語言。3 系統(tǒng)功能的架構(gòu)與設(shè)計作為一個企業(yè)進(jìn)銷存管理信息系統(tǒng),其功能是實現(xiàn)公司進(jìn)銷存信息管理的系統(tǒng)化、規(guī)范化和自動化。3.1系統(tǒng)功能描述本系統(tǒng)屬于中小型企業(yè)的數(shù)據(jù)庫系統(tǒng),可以對中小型企業(yè)的進(jìn)銷存進(jìn)行有效控制。通過本系統(tǒng)可以達(dá)一下目標(biāo):(1)采用人機(jī)對話方式,界面友

36、好美觀信息查詢靈活、方便,數(shù)據(jù)存儲安全可靠。(2)與供應(yīng)商和代理商賬目清晰。(3)功能強(qiáng)大的營業(yè)額分析(4)實施強(qiáng)大的后臺監(jiān)控功能。(5)實現(xiàn)商品的進(jìn)貨分析與統(tǒng)計、銷售分析與統(tǒng)計、商品銷售成本明細(xì)等功能(6)強(qiáng)大的庫存警告功能,盡可能的減少商家不必要的損失。(7)系統(tǒng)對用戶輸入的數(shù)據(jù)進(jìn)行嚴(yán)格的數(shù)據(jù)檢查,盡可能的排除人為的錯誤。 3.1.1系統(tǒng)總體功能結(jié)構(gòu)“進(jìn)銷存管理系統(tǒng)”的實現(xiàn)框圖如圖3-1所示。主要功能包括以下六個方面:(1)進(jìn)貨管理功能進(jìn)貨管理模塊是進(jìn)銷存管理系統(tǒng)中不可缺少的重要組成部分,它主要負(fù)責(zé)為系統(tǒng)記錄進(jìn)貨單及其退貨信息,相應(yīng)的進(jìn)貨商品會添加到庫存管理中。進(jìn)貨管理包括:1)進(jìn)貨單:進(jìn)

37、貨單據(jù)的填寫;2)進(jìn)貨退貨單:進(jìn)貨后退貨單據(jù)的填寫;3)進(jìn)貨分析:查看分析進(jìn)貨的數(shù)量、價格、折合的金額;4)進(jìn)貨統(tǒng)計:通過供應(yīng)商、經(jīng)手人或時間的選擇對進(jìn)貨商品進(jìn)行的統(tǒng)計;5)單位往來對賬:查看所有往來單位,并顯示與單位的賬目。(2)銷售管理功能銷售管理模塊實現(xiàn)對商品銷售過程進(jìn)行全方位管理和全程監(jiān)控。進(jìn)貨管理包括:1)銷售單:銷售單據(jù)的填寫;2)銷售退貨單:銷售后退貨單據(jù)的填寫;3)銷售統(tǒng)計:對商品進(jìn)行詳細(xì)統(tǒng)計和所有綜合統(tǒng)計;4)銷售狀況:商品的銷售狀況進(jìn)行詳細(xì)統(tǒng)計,并可查詢單月的銷售和銷售退貨的明細(xì)賬本;5)商品銷售排行:通過供應(yīng)商、經(jīng)手人或時間的選擇對銷售商品進(jìn)行的排序;6)商品銷售成本表:

38、查看銷售商品的成本和毛利;7)往來對賬:進(jìn)貨和銷售進(jìn)行詳細(xì)的對賬(包括批量進(jìn)價的差額)。(3)庫存管理功能庫存管理模塊實現(xiàn)對商品庫存進(jìn)行全方位管理和全程監(jiān)控。庫存管理包括:1)庫存狀況:查看庫存信息和進(jìn)行庫存商品的上下限報警設(shè)置;2)庫存商品上限報警:顯示庫存超過上限的商品;3)庫存商品下限報警:顯示庫存超過下限的商品;3)庫存盤點:查看并設(shè)置庫存商品狀況和損件數(shù)量。(4)基礎(chǔ)數(shù)據(jù)管理功能基礎(chǔ)數(shù)據(jù)管理模塊實現(xiàn)對企業(yè)的基礎(chǔ)數(shù)據(jù)進(jìn)行管理?;A(chǔ)數(shù)據(jù)管理包括:1)庫存商品:查看、修改和添加企業(yè)的所有商品的信息;2)往來單位:查看、修改和添加單位的代理商和供應(yīng)商的信息;3)公司職員:查看、修改和添加公司

39、員工的信息。(5)系統(tǒng)維護(hù)功能系統(tǒng)維護(hù)模塊實現(xiàn)對系統(tǒng)進(jìn)行全方位管理。系統(tǒng)維護(hù)包括:1)本單位信息:查看和修改企業(yè)的信息;2)系統(tǒng)權(quán)限管理設(shè)置:實現(xiàn)登錄本系統(tǒng)的用戶進(jìn)行權(quán)限設(shè)置;3)系統(tǒng)數(shù)據(jù)備份/恢復(fù):實現(xiàn)系統(tǒng)內(nèi)數(shù)據(jù)的備份和數(shù)據(jù)的恢復(fù)功能;4)系統(tǒng)數(shù)據(jù)清理:實現(xiàn)系統(tǒng)內(nèi)的數(shù)據(jù)的清空。(6)輔助功能輔助功能模塊實現(xiàn)對商品庫存進(jìn)行全方位管理和全程監(jiān)控。庫存管理包括:1)登錄主頁:快捷的登錄公司的主網(wǎng)頁;2)登錄播客:快捷的登錄公司品牌的播客;3)啟動Word:快捷的啟動Word,進(jìn)行文檔編輯;4)啟動Excel:快捷的啟動Word,進(jìn)行表格編輯;5)計算器:快捷的啟動計算器,進(jìn)行數(shù)學(xué)運算。圖3-1 系

40、統(tǒng)功能結(jié)構(gòu)圖3.1.2系統(tǒng)功能實現(xiàn)流程功能實現(xiàn)流程就是系統(tǒng)功能實現(xiàn)的過程。系統(tǒng)的流程分析如圖3-2所示。(1)本系統(tǒng)是從用戶登錄模塊開始的,用戶進(jìn)入登錄界面,對用戶的身份進(jìn)行認(rèn)證。身份認(rèn)證可以分為以下兩個過程:1)確認(rèn)用戶是否是有效的系統(tǒng)用戶:當(dāng)用戶名和密碼錯誤,或不一致時,系統(tǒng)會出現(xiàn)錯誤提示對話框;當(dāng)輸入正確時則進(jìn)入進(jìn)銷存管理系統(tǒng)。2)確定用戶的權(quán)限:在有效系統(tǒng)用戶的情況下確定用戶的使用權(quán)限,從而決定用戶可以進(jìn)入界面時可操作的模塊。(2)進(jìn)入系統(tǒng)后,是四大模塊(細(xì)化功能七大模塊)的設(shè)計,基礎(chǔ)數(shù)據(jù)、系統(tǒng)維護(hù)、輔助功能和退出。其中,基礎(chǔ)數(shù)據(jù)是進(jìn)銷存企業(yè)的重中之重,它存放企業(yè)的基礎(chǔ)數(shù)據(jù)。在它的基礎(chǔ)

41、上,才實現(xiàn)了進(jìn)貨管理、庫存管理和銷售管理,完成企業(yè)日常運營的進(jìn)銷存這些功能的功能數(shù)據(jù)。(3)退出模塊設(shè)有退出按鈕,直接關(guān)閉本系統(tǒng)。圖3-2 系統(tǒng)功能流程圖3.2數(shù)據(jù)庫設(shè)計3.2.1業(yè)務(wù)邏輯編碼規(guī)則編碼設(shè)計是數(shù)據(jù)庫系統(tǒng)開發(fā)的前提條件,是系統(tǒng)不可缺少的重要內(nèi)容18。編碼是指與原來名稱對應(yīng)的編號、符號或記號。它是進(jìn)行信息交換、處理、傳輸和實現(xiàn)信息資源共享的關(guān)鍵。編碼也用于指定數(shù)據(jù)的處理方法、區(qū)別數(shù)據(jù)類型,并指定計算機(jī)處理的內(nèi)容等。本系統(tǒng)內(nèi)部信息編碼采用了統(tǒng)一的編碼方式情況。(1)單據(jù)編號1)進(jìn)貨單據(jù)編碼號為系統(tǒng)的當(dāng)前日期、“進(jìn)貨”的拼音簡碼和七位數(shù)字的編碼組合,例如,20120405JH000000

42、1。2)進(jìn)貨退貨單據(jù)編碼號為系統(tǒng)的當(dāng)前日期、“退貨”的拼音簡碼和七位數(shù)字的編碼組合,例如,20120405TH0000001。3)銷售單據(jù)編碼號為系統(tǒng)的當(dāng)前日期、“銷售”的拼音簡碼和七位數(shù)字的編碼組合,例如,20120405XS0000001。4)銷售退貨單據(jù)編碼號為系統(tǒng)的當(dāng)前日期、“銷售退貨”的拼音簡碼和七位數(shù)字的編碼組合,例如,20120405XSTH0000001。(2)商品編號商品編號為字母“T”和4位數(shù)字編碼的組合,例如,T0001。(3)往來單位編號往來單位編號為字母“U”和4位數(shù)字編碼的組合,例如,U0001。(4)職員編號職員編號為字母“E”和4位數(shù)字編碼的組合,例如,E000

43、1。3.2.2數(shù)據(jù)庫創(chuàng)建數(shù)據(jù)庫的創(chuàng)建過程:(1)單擊“開始”“程序”Microsoft SQL Server 2008SQL Server Management Studio,啟動SQL 2008;(2)連接到服務(wù)器,本系統(tǒng)用的是Windows登錄,所以直接點“確定”;(3)找到在資源管理器下的“數(shù)據(jù)庫”文件夾右擊“新建數(shù)據(jù)庫”在彈出的窗體中輸入數(shù)據(jù)庫的名稱db_EMS“確定”。圖如3-3。圖3-3數(shù)據(jù)庫的創(chuàng)建3.2.3數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計系統(tǒng)進(jìn)銷存管理系統(tǒng)主要用來記錄一個企業(yè)中所有的進(jìn)貨、銷售、庫存等信息,因此數(shù)據(jù)量比較大,為了實現(xiàn)系統(tǒng)的各個功能,實現(xiàn)數(shù)據(jù)的清晰,本系統(tǒng)供設(shè)計了14張數(shù)據(jù)表。詳

44、細(xì)信息見表3-4。表3-4 數(shù)據(jù)庫表匯總(1)tb_currentaccount(往來單位對賬明細(xì)表)列名描述類型允許空值主鍵billdate錄單日期datetime否否billcode商品編號varchar(20)否否addgathering銷售應(yīng)收float是否factaddfee銷售實收float是否reducegathering進(jìn)貨應(yīng)付float是否factfee進(jìn)貨實付float是否balance差額float是否units往來單位varchar(30)是否(2)tb_employee(職員信息表)列名描述類型允許空值主鍵employeecode職員編號varchar(5)否否han

45、dle經(jīng)手人varchar(10)否是sex性別varchar(4)是否dept部門varchar(20)是否tel電話varchar(20)是否memo備注varchar(40)是否(3)tb_power(權(quán)限表)列名描述類型允許空值主鍵ID編號int否否sysuser用戶名varchar(20)否否password密碼varchar(20)是否stock存庫管理bit是否vendition銷售管理bit是否storage進(jìn)貨管理bit是否system系統(tǒng)維護(hù)bit是否base基礎(chǔ)數(shù)據(jù)bit是否(4)tb_resell_detailed(銷售退貨明細(xì)表)列名描述類型允許空值主鍵billcod

46、e退貨編號varchar(20)否否tradecode商品編號varchar(20)否否fullname商品全稱varchar(20)否否unit單位char(4)是否qty數(shù)量float是否price價額float是否tsum金額float是否billdate錄單日期datetime是否(5)tb_resell_main(銷售退貨主表)列名描述類型允許空值主鍵billdate錄單日期datetime否否billcode退貨編號varchar(20)否否units退貨單位varchar(30)否否handle經(jīng)手人varchar(10)否否summary摘要varchar(100)是否full

47、payment應(yīng)退金額float是否payment實退金額float是否(6)tb_rewarehouse_detailed(進(jìn)貨退貨明細(xì)表)列名描述類型允許空值主鍵billcode錄單日期varchar(20)否否tradecode退貨編號varchar(20)否否fullname商品全稱varchar(20)否否type商品型號varchar(10)是否standard商品規(guī)格varchar(10)是否produce產(chǎn)地varchar(20)是否unit單位char(4)是否qty數(shù)量float是否price價格float是否tsum金額float是否billdate錄單日期datetim

48、e是否(7)tb_rewarehouse_main(進(jìn)貨退貨主表)列名描述類型允許空值主鍵billdate錄單日期datetime是否billcode退貨編號varchar(20)是否units單位varchar(30)是否handle經(jīng)手人varchar(10)是否summary摘要varchar(100)否否fullgathering應(yīng)退金額float否否gathering實退金額float否否(8)tb_sell_detailed(銷售明細(xì)表)列名描述類型允許空值主鍵billcode銷售編號varchar(20)否否tradecode商品編號varchar(20)否否fullname商品

49、全稱varchar(20)否否unit購貨單位varchar(4)是否qty數(shù)量float是否price價格float是否tsum金額float是否billdate錄單日期datetime是否(9)tb_sell_main(銷售主表)列名描述類型允許空值主鍵billdate錄單日期datetime否否billcode銷售編號varchar(20)否否units購貨單位varchar(30)否否handle經(jīng)手人varchar(10)否否summary摘要varchar(100)是否fullgathering應(yīng)收金額float是否gathering實收金額float是否(10)tb_stock(

50、庫存商品基本信息表)列名描述類型允許空值主鍵tradecode商品編號varchar(5)否否fullname商品全稱varchar(20)否是type商品型號varchar(10)否否standard商品規(guī)格varchar(10)否否unit單位varchar(10)否否produce產(chǎn)地varchar(20)否否qty庫存數(shù)量float是否price最后進(jìn)價float是否averageprice加權(quán)平均價float是否saleprice最后銷價float是否stockcheck庫存盤點float是否upperlimit存貨報警上限int是否lowerlimit存貨報警下限int是否(11)tb_unit(本單位信息設(shè)置表)列名描述類型允許空值主鍵fullname本單位全名varchar(30)否否tax稅號varcha

溫馨提示

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

評論

0/150

提交評論