畢業(yè)論文終稿-C商店智能管理系統(tǒng)_第1頁(yè)
畢業(yè)論文終稿-C商店智能管理系統(tǒng)_第2頁(yè)
畢業(yè)論文終稿-C商店智能管理系統(tǒng)_第3頁(yè)
畢業(yè)論文終稿-C商店智能管理系統(tǒng)_第4頁(yè)
畢業(yè)論文終稿-C商店智能管理系統(tǒng)_第5頁(yè)
已閱讀5頁(yè),還剩56頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、 畢業(yè)設(shè)計(jì)(論文)題 目: *商店智能管理系統(tǒng) 學(xué) 院: 計(jì)算機(jī)科學(xué)學(xué)院 專業(yè)班級(jí): 計(jì)算機(jī)科學(xué)與技術(shù)06級(jí)2班 指導(dǎo)教師: 職稱: 學(xué)生姓名: 學(xué) 號(hào): 40605010201 摘 要當(dāng)前, 我國(guó)商業(yè)正處在一個(gè)高速發(fā)展的時(shí)期, 也是我國(guó)商業(yè)由傳統(tǒng)商業(yè)向現(xiàn)代化商業(yè)轉(zhuǎn)變的重要時(shí)期,正在經(jīng)歷由經(jīng)驗(yàn)決策到信息決策轉(zhuǎn)變的時(shí)期。如何及時(shí)準(zhǔn)確地獲得各種信息,了解市場(chǎng)的發(fā)展趨勢(shì),來預(yù)測(cè)、指導(dǎo)經(jīng)營(yíng)活動(dòng);如何及時(shí)準(zhǔn)確地掌握商店內(nèi)部動(dòng)態(tài)和信息,已成為商店最關(guān)心的問題。本系統(tǒng)基于成熟的c/s模式,采用c#作為編程語(yǔ)言,microsoft visual studio 2008作為開發(fā)工具,以sql server 20

2、08 作為后臺(tái)的數(shù)據(jù)庫(kù),利用ado.net數(shù)據(jù)庫(kù)訪問技術(shù)實(shí)現(xiàn)對(duì)數(shù)據(jù)庫(kù)的各種管理操作。系統(tǒng)分為兩部分:第一部分針對(duì)員工使用,包括的功能如:查詢商品信息、查詢供應(yīng)商信息、商品銷售等;第二部分面向店主使用,包括的功能如:對(duì)商品信息、供應(yīng)商信息、會(huì)員和員工信息的增刪查改,計(jì)算利潤(rùn)等。 為了避免用戶打開很多窗口導(dǎo)致桌面混亂,設(shè)計(jì)過程中使用mdiparent方法將所有本系統(tǒng)的子窗體放置于主窗體之內(nèi),無(wú)論用戶怎么拖動(dòng),窗體都不會(huì)離開主窗體。設(shè)計(jì)過程中,首先建立了系統(tǒng)的應(yīng)用原型,然后在此基礎(chǔ)上進(jìn)行需求迭代,詳細(xì)設(shè)計(jì)時(shí)不斷修改和完善,經(jīng)過測(cè)試階段反復(fù)調(diào)試和驗(yàn)證,最終形成達(dá)到設(shè)計(jì)要求的可行系統(tǒng)。關(guān)鍵詞:c#,ad

3、o.net,sql server,c/s模式,信息化管理abstractat present, our business is in a period of rapid development, but also our business from traditional to modern commercial business important period of change, is going through the experience of making changes to the information decision-making period. how to timel

4、y and accurate access to information, understand the market trends, to predict and guide business activities; how timely and accurate grasp the internal dynamics and information store has become shop most concerned about. the system is based on mature c / s mode, using c # as the programming languag

5、e, microsoft visual studio 2008 as a development tool to sql server 2008 database as a background, using ado.net database access technology on a variety of database management operations. system is divided into two parts: the first part for employees to use, including features such as: check product

6、 information, inquiries, supplier information, product sales; the second part of the owner for the use, including features such as: product information, supplier information , members and staff additions and deletions of information search change, calculating profits. in order to avoid the user to o

7、pen many windows cause desktop clutter, the design methods used during the mdiparent all sub-form of the system placed within the main form, no matter how the user drag the form will not leave the main form. design process, the first application of the system to establish a prototype, and then based

8、 on the needs in this iteration, detailed design, constantly amended and improved, 經(jīng)過 test phase repeated debugging and verification, form a viable system to meet the design requirements. key words: c#,ado.net,sql server,c/s mode,information managementii目 錄第1章 引言11.1 問題的提出11.2 研究現(xiàn)狀11.3 研究?jī)?nèi)容21.4 研究方法

9、和技術(shù)路線2第2章 系統(tǒng)開發(fā)平臺(tái)和語(yǔ)言介紹32.1 microsoft visual studio 2008 的簡(jiǎn)介32.1.1 快速的應(yīng)用程序開發(fā)32.1.2 高效的團(tuán)隊(duì)協(xié)作32.1.3 突破性的用戶體驗(yàn)42.2 microsoft sql server 2008 簡(jiǎn)介42.3 c#語(yǔ)言簡(jiǎn)介52.4 ado.net簡(jiǎn)介52.4.1 sqlconnection 類62.4.2 command對(duì)象62.4.3 sqldatareader類62.4.4 dataset對(duì)象62.4.5 sqldataadapter類72.4.6 datatable類7第3章 系統(tǒng)分析與總體設(shè)計(jì)83.1 需求分析83

10、.2 系統(tǒng)模塊設(shè)計(jì)83.2.1系統(tǒng)功能模塊分析83.2.2 系統(tǒng)流程分析93.3 數(shù)據(jù)庫(kù)設(shè)計(jì)103.3.1 數(shù)據(jù)庫(kù)邏輯結(jié)構(gòu)設(shè)計(jì)103.3.2 系統(tǒng)e-r圖設(shè)計(jì)12第4章 系統(tǒng)詳細(xì)設(shè)計(jì)144.1 底層數(shù)據(jù)操作模塊設(shè)計(jì)144.2 系統(tǒng)登錄界面與主界面設(shè)計(jì)164.2.1 登錄界面設(shè)計(jì)164.2.2 系統(tǒng)主界面設(shè)計(jì)174.3 商品管理模塊設(shè)計(jì)194.3.1 商品信息查詢模塊194.3.2 商品信息維護(hù)模塊204.4 供應(yīng)商管理模塊設(shè)計(jì)254.4.1供應(yīng)商信息查詢模塊254.4.2供應(yīng)商信息維護(hù)模塊264.5 員工管理模塊設(shè)計(jì)314.5.1 員工信息查詢模塊314.5.2員工信息維護(hù)模塊324.6 會(huì)員

11、管理模塊設(shè)計(jì)374.6.1 會(huì)員信息查詢模塊374.6.2 會(huì)員信息維護(hù)模塊374.7 銷售管理模塊設(shè)計(jì)424.7.1 出售商品模塊424.7.2 利潤(rùn)計(jì)算模塊434.8 系統(tǒng)管理模塊444.8.1 權(quán)限管理模塊444.8.2 注銷登錄模塊484.8.3 退出系統(tǒng)模塊48第5章 系統(tǒng)測(cè)試與性能分析49第6章 總結(jié)50致 謝51參考文獻(xiàn)522第1章 引言第1章 引言1.1 問題的提出隨著人類社會(huì)的不斷發(fā)展,計(jì)算機(jī)越來越發(fā)揮著重要的作用。它提高了人們的工作效率,方便了人們的生活,為人們?cè)鎏砹瞬簧贅啡ぃ踔劣诟淖兞巳藗儌鹘y(tǒng)的生活方式。計(jì)算機(jī)帶來的改變是巨大的,人們可以通過簡(jiǎn)單的輸入幾個(gè)字符,就能輕松

12、地得到我們想要的東西。該商店目前存在的問題是:信息化不足,計(jì)算機(jī)僅僅用于娛樂和查找資料,大量的日常工作皆是手工處理,因此工作效率低,倉(cāng)庫(kù)管理也非常不合理,不能及時(shí)根據(jù)最近的銷售量及時(shí)調(diào)整進(jìn)貨量以及進(jìn)貨品種。通過該系統(tǒng),西安昌盛商店可以實(shí)現(xiàn):1、減輕管理者和工作人員的工作量 2、提高商店管理的規(guī)范性 3、及時(shí)查看商店的盈虧情況 4、合理安排進(jìn)貨時(shí)間、數(shù)量以及品種。1.2 研究現(xiàn)狀目前市場(chǎng)上針對(duì)大中型企業(yè)所做的erp系統(tǒng)層出不窮,但是針對(duì)類似西安昌盛商店這種小的商店,卻無(wú)人問津。孰不知隨著改革開放以來,我國(guó)經(jīng)濟(jì)的飛速發(fā)展,這類小商店如雨后春筍般出現(xiàn)在大街小巷。這樣子的小商店沒有獨(dú)立的部門,更不會(huì)需

13、要如erp企業(yè)資源計(jì)劃系統(tǒng)這樣子龐大而又昂貴的軟件。但是隨著計(jì)算機(jī)在我國(guó)的普及,越來越多的店主系統(tǒng)將手頭上的諸多所示交給店里面的計(jì)算機(jī)來完成,以幫助自己更高效的工作。此時(shí),一款必須能夠適應(yīng)此類店鋪的軟件應(yīng)運(yùn)而生。此軟件前身即為庫(kù)存管理系統(tǒng)。隨著全國(guó)零售商業(yè)的高速發(fā)展,其倉(cāng)庫(kù)管理變得日益復(fù)雜,日常所需處理的數(shù)據(jù)量漸漸龐大,商業(yè)運(yùn)轉(zhuǎn)的中間環(huán)節(jié)也越來越多,原先主要靠人工管理和簡(jiǎn)單計(jì)算機(jī)管理的方法,顯然已無(wú)法適應(yīng)企業(yè)規(guī)模的不斷擴(kuò)大。鑒于這種情況,庫(kù)存管理系統(tǒng)應(yīng)運(yùn)而生?,F(xiàn)在的大型庫(kù)存管理系統(tǒng)可實(shí)現(xiàn)諸如出入庫(kù)操作,移庫(kù)操作,庫(kù)存物品損毀、修復(fù)記錄,盤點(diǎn)計(jì)劃自動(dòng)生成,設(shè)置盤點(diǎn)狀態(tài),盤點(diǎn)結(jié)果確認(rèn),庫(kù)存訂貨處理

14、等一系列復(fù)雜的功能。未來的發(fā)展將進(jìn)一步的智能化,更大程度的替代人工管理。該系統(tǒng)面向小型商店而產(chǎn)生,加入了此類商店需要的各種其他的功能。使軟件更加貼切此類商店的需求。簡(jiǎn)化了大型庫(kù)存管理系統(tǒng)中高級(jí)的功能,使軟件更加易用。同時(shí)也降低了軟件開發(fā)的成本,使此類小型店鋪更易于接受該軟件。56西安工程大學(xué)學(xué)士學(xué)位論文隨著該系統(tǒng)的發(fā)展,未來此軟件必將普及于大街小巷的小商店。使他們的工作更加高效,使這些小商店的老板們能夠?qū)⒏嗟臅r(shí)間用在如何經(jīng)營(yíng)店鋪,而不是浪費(fèi)在人工計(jì)算利潤(rùn)等繁瑣的事情上。1.3 研究?jī)?nèi)容在了解該商店業(yè)務(wù)流程的基礎(chǔ)上,結(jié)合以前所學(xué)的編程知識(shí)和軟件工程知識(shí),使用當(dāng)今最為流行的編程語(yǔ)言c#,將需求轉(zhuǎn)

15、化成為功能模塊再加以實(shí)現(xiàn)。論文各章簡(jiǎn)介: 第1章:包含選擇論題的背景和原因,以及此論題的研究現(xiàn)狀。 第2章:系統(tǒng)開發(fā)平臺(tái)的基本知識(shí)。 第3章:系統(tǒng)分析與總體設(shè)計(jì) 第4章:系統(tǒng)詳細(xì)設(shè)計(jì) 第5章:系統(tǒng)測(cè)試與性能分析 第6章:總結(jié)本次開發(fā)運(yùn)行結(jié)果1.4 研究方法和技術(shù)路線研究方法:首先抱著認(rèn)真和嚴(yán)謹(jǐn)?shù)膽B(tài)度去研究。具體方法如下:a. 多用時(shí)間去看c#方面的書籍,給自己打好良好的理論知識(shí)。b. 因題目中最重要的就是編程部分,所以在軟件設(shè)計(jì)時(shí),應(yīng)使軟件具有較強(qiáng)的可維護(hù)性和更新性。c. 題目中還涉及到較多的數(shù)據(jù)庫(kù)知識(shí),所以也要多多研究數(shù)據(jù)庫(kù)方面的知識(shí)。技術(shù)路線:使用強(qiáng)大的visual studio 2008

16、 和 sql server 2008作為編程的工具和數(shù)據(jù)庫(kù)管理工具。采用成熟的c/s模式完成軟件部分的系統(tǒng)設(shè)計(jì)。平臺(tái)選用最先進(jìn)的.net framework 3.5。第2章 系統(tǒng)開發(fā)平臺(tái)和語(yǔ)言介紹第2章 系統(tǒng)開發(fā)平臺(tái)和語(yǔ)言介紹2.1 microsoft visual studio 2008 的簡(jiǎn)介microsoft visual studio 2008 使開發(fā)人員能夠快速創(chuàng)建高質(zhì)量、用戶體驗(yàn)豐富而又緊密聯(lián)系的應(yīng)用程序,充分展示了 microsoft 開發(fā)智能客戶端應(yīng)用程序的構(gòu)想。借助 visual studio 2008,采集和分析信息將變得更為簡(jiǎn)單便捷,業(yè)務(wù)決策也會(huì)因此變得更為有效。任何規(guī)模

17、的組織都可以使用 visual studio 2008 快速創(chuàng)建能夠利用 windows vista 和 2007 visual studio system 的更安全、更易于管理并且更可靠的應(yīng)用程序。visual studio 2008 在三個(gè)方面為開發(fā)人員提供了關(guān)鍵改進(jìn): 快速的應(yīng)用程序開發(fā) 高效的團(tuán)隊(duì)協(xié)作 突破性的用戶體驗(yàn) visual studio 2008 提供了高級(jí)開發(fā)工具、調(diào)試功能、數(shù)據(jù)庫(kù)功能和創(chuàng)新功能,幫助在各種平臺(tái)上快速創(chuàng)建當(dāng)前最先進(jìn)的應(yīng)用程序。visual studio 2008 包括各種增強(qiáng)功能,例如可視化設(shè)計(jì)器(使用 .net framework 3.5 加速開發(fā))、對(duì)

18、web 開發(fā)工具的大量改進(jìn),以及能夠加速開發(fā)和處理所有類型數(shù)據(jù)的語(yǔ)言增強(qiáng)功能。visual studio 2008 為開發(fā)人員提供了所有相關(guān)的工具和框架支持,幫助創(chuàng)建引人注目的、令人印象深刻并支持 ajax 的 web 應(yīng)用程序。開發(fā)人員能夠利用這些豐富的客戶端和服務(wù)器端框架輕松構(gòu)建以客戶為中心的 web 應(yīng)用程序,這些應(yīng)用程序可以集成任何后端數(shù)據(jù)提供程序、在任何當(dāng)前瀏覽器內(nèi)運(yùn)行并完全訪問 asp.net 應(yīng)用程序服務(wù)和 microsoft 平臺(tái)。2.1.1 快速的應(yīng)用程序開發(fā)為了幫助開發(fā)人員迅速創(chuàng)建先進(jìn)的軟件,visual studio 2008 提供了改進(jìn)的語(yǔ)言和數(shù)據(jù)功能,例如語(yǔ)言集成的查

19、詢 (linq),各個(gè)編程人員可以利用這些功能更輕松地構(gòu)建解決方案以分析和處理信息。visual studio 2008 還使開發(fā)人員能夠從同一開發(fā)環(huán)境內(nèi)創(chuàng)建面向多個(gè) .net framework 版本的應(yīng)用程序。開發(fā)人員能夠構(gòu)建面向 .net framework 2.0、3.0 或 3.5 的應(yīng)用程序,意味他們可以在同一環(huán)境中支持各種各樣的項(xiàng)目。2.1.2 高效的團(tuán)隊(duì)協(xié)作visual studio 2008 提供了幫助開發(fā)團(tuán)隊(duì)改進(jìn)協(xié)作的擴(kuò)展的和改進(jìn)的服務(wù)西安工程大學(xué)學(xué)士學(xué)位論文項(xiàng)目,包括幫助將數(shù)據(jù)庫(kù)專業(yè)人員和圖形設(shè)計(jì)人員加入到開發(fā)流程的工具。使用 microsoft .net framewo

20、rk 3.net framework 提供了用于解決常見編程任務(wù)的構(gòu)建基塊(預(yù)制的軟件),從而能夠快速構(gòu)造具有出色的最終用戶體驗(yàn)的緊密聯(lián)系的應(yīng)用程序。在 .net framework 模型業(yè)務(wù)流程上有效構(gòu)建的緊密聯(lián)系的應(yīng)用程序有利于在異類環(huán)境中實(shí)現(xiàn)系統(tǒng)集成。visual studio 和 .net framework 的結(jié)合使用減少了對(duì)公用管道代碼的需要,從而縮短了開發(fā)時(shí)間并使開發(fā)人員能夠集中精力解決業(yè)務(wù)問題。.net framework 3.5 是在 .net framework 3.0 的基礎(chǔ)上構(gòu)建的更高版本。得到增強(qiáng)的功能領(lǐng)域包括基類庫(kù)、windows workflow foundati

21、on、windows communication foundation、windows presentation foundation 和 windows cardspace。2.1.3 突破性的用戶體驗(yàn)visual studio 2008 為開發(fā)人員提供了在最新平臺(tái)上加速創(chuàng)建緊密聯(lián)系的應(yīng)用程序的新工具,這些平臺(tái)包括 web、windows vista、visual studio 2007、sql server 2008 和 windows server 2008。對(duì)于 web,asp.net ajax 及其他新技術(shù)使開發(fā)人員能夠迅速創(chuàng)建更高效、交互式更強(qiáng)和更個(gè)性化的新一代 web 體驗(yàn)。2.

22、2 microsoft sql server 2008 簡(jiǎn)介sql server是一個(gè)關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)。它最初是由microsoft sybase 和ashton-tate三家公司共同開發(fā)的,于1988 年推出了第一個(gè)os/2 版本。在windows nt 推出后,microsoft與sybase 在sql server 的開發(fā)上就分道揚(yáng)鑣了,microsoft 將sql server 移植到windows nt系統(tǒng)上,專注于開發(fā)推廣sql server 的windows nt 版本。sybase 則較專注于sql server在unix 操作系統(tǒng)上的應(yīng)用。sql server 2008是一

23、個(gè)重大的產(chǎn)品版本,它推出了許 多新的特性和關(guān)鍵的改進(jìn),使得它成為至今為 止的最強(qiáng)大和最全面的sql server版本。這個(gè)平臺(tái)有以下特點(diǎn): 可信任的使得公司可以以很高的安全性、可靠性和可擴(kuò)展性來運(yùn)行他們最關(guān)鍵任務(wù)的應(yīng)用程序。 高效的使得公司可以降低開發(fā)和管理他們的數(shù)據(jù)基礎(chǔ)設(shè)施的時(shí)間和成本。 智能的提供了一個(gè)全面的平臺(tái),可以在你的用戶需要的時(shí)候給他發(fā)送觀察和信息。 2.3 c#語(yǔ)言簡(jiǎn)介c#是一種安全的、穩(wěn)定的、簡(jiǎn)單的、優(yōu)雅的,由c和c+衍生出來的面向?qū)ο蟮木幊陶Z(yǔ)言。它在繼承c和c+強(qiáng)大功能的同時(shí)去掉了一些它們的復(fù)雜特性(例如沒有宏和模版,不允許多重繼承)。c#綜合了vb簡(jiǎn)單的可視化操作和c+的高

24、運(yùn)行效率,以其強(qiáng)大的操作能力、優(yōu)雅的語(yǔ)法風(fēng)格、創(chuàng)新的語(yǔ)言特性和便捷的面向組件編程的支持成為.net開發(fā)的首選語(yǔ)言。 并且c#成為ecma與iso標(biāo)準(zhǔn)規(guī)范。c#看似基于c+寫成,但又融入其它語(yǔ)言如pascal、java、vb等。 微軟c#語(yǔ)言定義主要是從c和c+繼承而來的,而且語(yǔ)言中的許多元素也反映了這一點(diǎn)。c#在設(shè)計(jì)者從c+繼承的可選選項(xiàng)方面比java要廣泛一些(比如說struts),它還增加了自己新的特點(diǎn)(比方說源代碼版本定義).但它還太不成熟,不可能擠垮java。 c#還需要進(jìn)化成一種開發(fā)者能夠接受和采用的語(yǔ)言.而微軟當(dāng)前為它的這種新語(yǔ)言大造聲勢(shì)也是值得注意的.目前大家的反應(yīng)是:這是對(duì)ja

25、va的反擊. 2.4 ado.net簡(jiǎn)介ado.net的名稱起源于ado(activex data objects),這是一個(gè)廣泛的類組,用于在以往的microsoft技術(shù)中訪問數(shù)據(jù).之所以使用ado.net名稱,是因?yàn)閙icrosoft希望表明,這是在.net編程環(huán)境中優(yōu)先使用的數(shù)據(jù)訪問接口.它提供了平臺(tái)互用性和可伸縮的數(shù)據(jù)訪問。ado.net增強(qiáng)了對(duì)非連接編程模式的支持,并支持rich xml.由于傳送的數(shù)據(jù)都是xml格式的,因此任何能夠讀取xml格式的應(yīng)用程序都可以進(jìn)行數(shù)據(jù)處理。事實(shí)上,接受數(shù)據(jù)的組件不一定要是ado .net組件,它可以是基于一個(gè)microsoft visual stu

26、dio的解決方案,也可以是任何運(yùn)行在其它平臺(tái)上的任何應(yīng)用程序。 ado.net是一組用于和數(shù)據(jù)源進(jìn)行交互的面向?qū)ο箢悗?kù)。通常情況下,數(shù)據(jù)源是數(shù)據(jù)庫(kù),但它同樣也能夠是文本文件、excel表格或者xml文件。ado.net允許和不同類型的數(shù)據(jù)源以及數(shù)據(jù)庫(kù)進(jìn)行交互。然而并沒有與此相關(guān)的一系列類來完成這樣的工作。因?yàn)椴煌臄?shù)據(jù)源采用不同的協(xié)議,所以對(duì)于不同的數(shù)據(jù)源必須采用相應(yīng)的協(xié)議。一些老式的數(shù)據(jù)源使用odbc協(xié)議,許多新的數(shù)據(jù)源使用oledb協(xié)議,并且現(xiàn)在還不斷出現(xiàn)更多的數(shù)據(jù)源,這些數(shù)據(jù)源都可以通過.net的ado.net類庫(kù)來進(jìn)行連接。 ado.net提供與數(shù)據(jù)源進(jìn)行交互的相關(guān)的公共方法,但是對(duì)于

27、不同的數(shù)據(jù)源采用一組不同的類庫(kù)。這些類庫(kù)稱為data providers,并且通常是以與之交互的協(xié)議和數(shù)據(jù)源的類型來命名的。表1列處了一些常見的data providers,以及它們所使用的api前綴,和允許進(jìn)行交互的數(shù)據(jù)源類型。2.4.1 sqlconnection 類和數(shù)據(jù)庫(kù)交互,你必須連接它。連接幫助指明數(shù)據(jù)庫(kù)服務(wù)器、數(shù)據(jù)庫(kù)名字、用戶名、密碼,和連接數(shù)據(jù)庫(kù)所需要的其它參數(shù)。connection對(duì)象會(huì)被command對(duì)象使用,這樣就能夠知道是在哪個(gè)數(shù)據(jù)庫(kù)上面執(zhí)行命令。 與數(shù)據(jù)庫(kù)交互的過程意味著你必須指明想要發(fā)生的操作。這是依靠 command對(duì)象執(zhí)行的。你使用command對(duì)象來發(fā)送sql

28、語(yǔ)句給數(shù)據(jù)庫(kù)。 command對(duì)象使用connection對(duì)象來指出與哪個(gè)數(shù)據(jù)庫(kù)進(jìn)行連接。你能夠單獨(dú)使用command對(duì)象來直接執(zhí)行命令,或者將一個(gè)command對(duì)象的引用傳遞給 sqldataadapter,它保存了一組能夠操作下面描述的一組數(shù)據(jù)的命令。 2.4.2 command對(duì)象成功于數(shù)據(jù)建立連接后,就可以用command對(duì)象來執(zhí)行查詢,修改,插入,刪除等命令; command對(duì)象常用的方法有executereader方法,excrtescalar()方法executenonquery()方法;插入數(shù)據(jù)可用executenonquery()方法來執(zhí)行插入命令。 2.4.3 sqldat

29、areader類許多數(shù)據(jù)操作要求你只是讀取一串?dāng)?shù)據(jù)。data reader對(duì)象允許你獲得從command對(duì)象的select語(yǔ)句得到的結(jié)果。考慮性能的因素,從data reader返回的數(shù)據(jù)都是快速的且只是“向前”的數(shù)據(jù)流。這意味著你只能按照一定的順序從數(shù)據(jù)流中取出數(shù)據(jù)。這對(duì)于速度來說是有好處的,但是如果你需要操作數(shù)據(jù),更好的辦法是使用dataset。 2.4.4 dataset對(duì)象dataset對(duì)象是數(shù)據(jù)在內(nèi)存中的表示形式。它包括多個(gè)datatable對(duì)象,而datatable包含列和行,就象一個(gè)普通的數(shù)據(jù)庫(kù)中的表。你甚至能夠定義表之間的關(guān)系來創(chuàng)建主從關(guān)系(parent-child relat

30、ionships)。dataset是在特定的場(chǎng)景下使用幫助管理內(nèi)存中的數(shù)據(jù)并支持對(duì)數(shù)據(jù)的斷開操作的。dataset是被所有data providers使用的對(duì)象,因此它并不像data provider一樣需要特別的前綴。 2.4.5 sqldataadapter類某些時(shí)候你使用的數(shù)據(jù)主要是只讀的,并且你很少需要將其改變至底層的數(shù)據(jù)源。同樣一些情況要求在內(nèi)存中緩存數(shù)據(jù),以此來減少并不改變的數(shù)據(jù)被數(shù)據(jù)庫(kù)調(diào)用的次數(shù)。data adapter通過斷開模型來幫助你方便的完成對(duì)以上情況的處理。當(dāng)在一單批次的對(duì)數(shù)據(jù)庫(kù)的讀寫操作的持續(xù)的改變返回至數(shù)據(jù)庫(kù)的時(shí)候,data adapter 填充(fill)data

31、set對(duì)象。data adapter包含對(duì)連接對(duì)象以及當(dāng)對(duì)數(shù)據(jù)庫(kù)進(jìn)行讀取或者寫入的時(shí)候自動(dòng)的打開或者關(guān)閉連接的引用。另外,data adapter包含對(duì)數(shù)據(jù)的select,insert,update和delete操作的command對(duì)象引用。你將為dataset中的每一個(gè)table都定義data adapter,它將為你照顧所有與數(shù)據(jù)庫(kù)的連接。所有你將做的工作是告訴data adapter什么時(shí)候裝載或者寫入到數(shù)據(jù)庫(kù)。 2.4.6 datatable類datatable 是一個(gè)數(shù)據(jù)網(wǎng)格控件。它可以被應(yīng)用在 vb 和 asp 上。它無(wú)須代碼就可以簡(jiǎn)單的綁定數(shù)據(jù)庫(kù)。它具有微軟風(fēng)格的用戶界面。 第3

32、章 系統(tǒng)分析與總體設(shè)計(jì)第3章 系統(tǒng)分析與總體設(shè)計(jì)3.1 需求分析西安昌盛商店長(zhǎng)期以來都是采用傳統(tǒng)的銷售模式,存在著以下問題:(1) 手工記錄每日的售出商品,晚上老板伏案工作,計(jì)算盈虧情況。(2) 由于商品非常之多,而且商品上沒有標(biāo)售價(jià),因此會(huì)經(jīng)常出現(xiàn)售貨員忘記售價(jià)的情況。給營(yíng)業(yè)造成諸多不便。(3) 手工記錄銷售情況,經(jīng)常由于出現(xiàn)一時(shí)忙碌,售貨員忘了記錄商品的銷售情況。(4) 供應(yīng)商方面的管理也存在各種問題,經(jīng)常會(huì)存在找不到供應(yīng)商名片的情況。(5) 會(huì)員管理方面,由于沒有辦理會(huì)員卡,所以存在新來的員工不認(rèn)識(shí)老會(huì)員的問題。 所以我們的系統(tǒng)應(yīng)該具備以下功能:(1) 對(duì)商品按類別分開,使用戶分類查詢、

33、添加、修改、刪除商品信息。(2) 按照供應(yīng)商所供應(yīng)的貨物將供應(yīng)商也分類管理。(3) 錄入會(huì)員信息,方便員工查詢。(4) 使用計(jì)算機(jī)統(tǒng)計(jì)商品的銷售情況,以及盈利情況。3.2 系統(tǒng)模塊設(shè)計(jì)3.2.1系統(tǒng)功能模塊分析根據(jù)需求分析,西安昌盛商店智能管理系統(tǒng)的系統(tǒng)模塊圖如下圖所示。圖3-1 西安昌盛商店智能管理系統(tǒng)模塊圖登錄界面模塊:登錄名采用下拉框形式,有效地避免了用戶輸入錯(cuò)誤,方便用戶使用,密碼輸入框采用加密文字顯示,避免用戶在輸入時(shí)泄露密碼。西安工程大學(xué)學(xué)士學(xué)位論文商品管理模塊:包含日用類、食品類、煙草類、勞保類這四大類商品信息的查詢和維護(hù)。根據(jù)登錄權(quán)限的不同,顯示或隱藏部分子功能。供應(yīng)商管理模塊

34、:包含日用類、食品類、煙草類、勞保類這四大類供應(yīng)商信息的查詢和維護(hù)。根據(jù)登錄權(quán)限的不同,顯示或隱藏部分子功能。員工管理模塊:包含員工信息查詢和維護(hù)兩個(gè)子功能?!皢T工”權(quán)限不可見此模塊。會(huì)員管理模塊:包含會(huì)員信息的查詢和維護(hù)兩個(gè)子功能?!皢T工”權(quán)限不可見會(huì)員信息維護(hù)子功能。銷售管理模塊:包含商品出售和利潤(rùn)計(jì)算兩個(gè)子功能?!皢T工”權(quán)限不可見利潤(rùn)計(jì)算子功能。系統(tǒng)管理模塊:包含注銷登錄和退出系統(tǒng)兩個(gè)子功能。3.2.2 系統(tǒng)流程分析該系統(tǒng)根據(jù)權(quán)限的不同,登陸后能使用的功能也不同。權(quán)限則分為:admin(店主)和normal(員工)兩種。店主身份可以使用所有的功能,而員工只能使用其中類似查詢這樣的基本功能

35、。員工登錄系統(tǒng)的流程圖如圖3-2所示。圖3-2 員工登錄系統(tǒng)流程圖店主登錄系統(tǒng)的流程圖如圖3-3所示。圖3-3 店主登錄系統(tǒng)流程圖3.3 數(shù)據(jù)庫(kù)設(shè)計(jì) 本系統(tǒng)的數(shù)據(jù)庫(kù)采用的是sql server 2008 數(shù)據(jù)庫(kù)管理系統(tǒng)。根據(jù)系統(tǒng)的需求分析和功能模塊設(shè)計(jì),本系統(tǒng)定義的數(shù)據(jù)庫(kù)中包含8個(gè)表:?jiǎn)T工信息表employee,會(huì)員信息表member,供應(yīng)商信息表supplier,勞保類商品信息表laobao,日用類商品信息表riyong,食品類商品信息表shipin,煙草類商品信息表yancao,登錄權(quán)限表user_right。3.3.1 數(shù)據(jù)庫(kù)邏輯結(jié)構(gòu)設(shè)計(jì)(1)員工信息表employee:用來保存員工信息

36、,結(jié)構(gòu)如表3-1所示。表3-1 員工信息表編號(hào)字段名稱數(shù)據(jù)結(jié)構(gòu)說明1eidint員工編號(hào)2enamevarchar(50)員工姓名3eageint員工年齡4esexvarchar(50)員工性別5ehometownvarchar(50)員工籍貫(2)會(huì)員信息表member:用來保存會(huì)員信息,結(jié)構(gòu)如表3-2所示。表3-2 會(huì)員信息表編號(hào)字段名稱數(shù)據(jù)結(jié)構(gòu)說明1memidint會(huì)員編號(hào)2memnamevarchar(50)會(huì)員姓名3memageint會(huì)員年齡4memsexvarchar(50)會(huì)員性別5memhometownvarchar(50)會(huì)員籍貫(3)供應(yīng)商信息表supplier:用來保存供

37、應(yīng)商信息,結(jié)構(gòu)如表3-3所示。表3-3 供應(yīng)商信息表編號(hào)字段名稱數(shù)據(jù)結(jié)構(gòu)說明1sidint供應(yīng)商編號(hào)2sortidint商品種類編號(hào)3snamevarchar(50)供應(yīng)商名稱4saddrvarchar(50)供應(yīng)商地址5sphonevarchar(50)供應(yīng)商電話(4)勞保類商品信息表laobao:用來保存勞保類商品的信息,結(jié)構(gòu)如表3-4所示。表3-4 勞保類商品信息表編號(hào)字段名稱數(shù)據(jù)結(jié)構(gòu)說明1goodsidint商品編號(hào)2goodsnamevarchar(50)商品名稱3goodspricefloat商品價(jià)格4mempricefloat會(huì)員價(jià)格5unitvarchar(50)計(jì)價(jià)單位6st

38、ockint庫(kù)存余量(5)日用類商品信息表riyong:用來保存日用類商品的信息,結(jié)構(gòu)如表3-5所示。表3-5 日用類商品信息表編號(hào)字段名稱數(shù)據(jù)結(jié)構(gòu)說明1goodsidint商品編號(hào)2goodsnamevarchar(50)商品名稱3goodspricefloat商品價(jià)格4mempricefloat會(huì)員價(jià)格5unitvarchar(50)計(jì)價(jià)單位6stockint庫(kù)存余量(6)食品類商品信息表shipin:用來保存食品類商品的信息,結(jié)構(gòu)如表3-6所示。表3-6 食品類商品信息表編號(hào)字段名稱數(shù)據(jù)結(jié)構(gòu)說明1goodsidint商品編號(hào)2goodsnamevarchar(50)商品名稱3goodsp

39、ricefloat商品價(jià)格4mempricefloat會(huì)員價(jià)格5unitvarchar(50)計(jì)價(jià)單位6stockint庫(kù)存余量(7)煙草類商品信息表yancao:用來保存煙草類商品的信息,結(jié)構(gòu)如表3-7所示。表3-7 煙草類商品信息表編號(hào)字段名稱數(shù)據(jù)結(jié)構(gòu)說明1goodsidint商品編號(hào)2goodsnamevarchar(50)商品名稱3goodspricefloat商品價(jià)格4mempricefloat會(huì)員價(jià)格5unitvarchar(50)計(jì)價(jià)單位6stockint庫(kù)存余量(8)登錄權(quán)限表user_right:用來保存用戶的登錄信息,結(jié)構(gòu)如表3-8所示。表3-8 登錄權(quán)限表編號(hào)字段名稱數(shù)據(jù)

40、結(jié)構(gòu)說明1login idvarchar(50)登錄編號(hào)2loginnamevarchar(50)登錄名稱3loginpwdvarchar(50)登錄密碼4loginrightvarchar(50)登錄權(quán)限3.3.2 系統(tǒng)e-r圖設(shè)計(jì)由于店員和店主之間存在不同的權(quán)限,所能使用的功能也不同,所以他們的e-r圖也不同。店員只能對(duì)系統(tǒng)中的信息進(jìn)行查看,而不能改動(dòng)任何信息。所以,店員的e-r圖如圖3-4所示。圖3-4 店員e-r圖店主具備所有操作的權(quán)限,可以對(duì)系統(tǒng)中的所有信息進(jìn)行查看,增加,修改,刪除。店主的e-r圖如圖3-5所示。圖3-5 店主e-r圖第4章 系統(tǒng)詳細(xì)設(shè)計(jì)第4章 系統(tǒng)詳細(xì)設(shè)計(jì)4.1

41、底層數(shù)據(jù)操作模塊設(shè)計(jì) 此模塊是用來給本系統(tǒng)中所有需要用到數(shù)據(jù)庫(kù)的程序提供的一類方法。里面定義了各種有關(guān)數(shù)據(jù)庫(kù)操作的功能,包含:數(shù)據(jù)庫(kù)連接函數(shù),獲取數(shù)據(jù)集函數(shù),執(zhí)行數(shù)據(jù)操作函數(shù)等。代碼如下:class sqlhelper / / 創(chuàng)建sqlconnection類,為后面的連接數(shù)據(jù)庫(kù)操作提供支持。 / / public sqlconnection getconn() string strconn = server = (local); database=xacsstoremanage;integrated security = true; sqlconnection myconn = new sq

42、lconnection(strconn); return myconn; / / 獲取指定的數(shù)據(jù)集。作為datagridview的數(shù)據(jù)源使用。 / / / / public dataset getdataset(string mysqlstr, string mydatatable) sqlconnection myconn = this.getconn(); sqldataadapter myadapter = new sqldataadapter(mysqlstr, 西安工程大學(xué)學(xué)士學(xué)位論文myconn); dataset mydataset = new dataset(); myadap

43、ter.fill(mydataset, mydatatable); return mydataset; / / 按照指定的sql語(yǔ)句獲取數(shù)據(jù)庫(kù)中的相應(yīng)數(shù)據(jù) / / / public sqldatareader getreader(string sqlstr) sqlconnection myconn = this.getconn(); sqlcommand mycomm = new sqlcommand(sqlstr, myconn); myconn.open(); sqldatareader myreader = mycomm.executereader(commandbehavior.cl

44、oseconnection); return myreader; / / 執(zhí)行相應(yīng)sql語(yǔ)句。 / / public void getcomm(string sqlstr) sqlconnection myconn = this.getconn(); myconn.open(); sqlcommand mycomm = new sqlcommand(sqlstr, myconn); mycomm.executenonquery(); mycomm.dispose(); myconn.close(); myconn.dispose(); 4.2 系統(tǒng)登錄界面與主界面設(shè)計(jì)4.2.1 登錄界面設(shè)計(jì)

45、本系統(tǒng)登錄界面為loginform.cs,登錄名的選擇采用下拉框的形式,這樣子可以很好的避免了用戶輸入登錄名不合法的問題。密碼的輸入采用的是加密字符串的形式,以此來避免用戶所輸入的密碼被人看到。當(dāng)用戶輸入密碼錯(cuò)誤時(shí)會(huì)有錯(cuò)誤提示,并且自動(dòng)清空密碼輸入框,以便用戶重新輸入。顯示界面如下所示:圖4-1 登錄界面實(shí)現(xiàn)代碼如下:sqlhelper sh = new sqlhelper();/實(shí)例化sqlhelper類private void loginbutton_click(object sender, eventargs e) sqldatareader myreader = sh.getreade

46、r(select loginname,loginright from user_right where loginid= + combobox1.text + and loginpwd= + textbox2.text + ); myreader.read(); if (myreader.hasrows) loginname = myreaderloginname.tostring().trim(); userright = myreaderloginright.tostring().trim(); mainform mform = new mainform(); this.hide(); m

47、form.show(); else messagebox.show(用戶名或密碼錯(cuò)誤!, 提示, messageboxbuttons.ok, messageboxicon.information); textbox2.text = ; myreader.close();4.2.2 系統(tǒng)主界面設(shè)計(jì) 本系統(tǒng)的主界面為mainform.cs,在主界面的下方采用狀態(tài)欄顯示當(dāng)前登錄用戶的登錄權(quán)限以及用戶名。系統(tǒng)根據(jù)登錄權(quán)限的不同顯示或隱藏部分功能模塊。(1) 店主登錄界面:“admin”權(quán)限可以使用本系統(tǒng)的所有功能,包括:商品管理,供應(yīng)商管理,員工管理,會(huì)員管理,銷售管理,系統(tǒng)管理。其界面如下所示:圖4

48、-2 店主登錄系統(tǒng)主界面(2) 店員登錄界面:“normal”權(quán)限的用戶登錄系統(tǒng)后,系統(tǒng)只給其提供部分功能,如:商品管理、供應(yīng)商管理、會(huì)員管理這三大模塊下的查詢子功能,銷售管理模塊下的出售商品子功能,以及系統(tǒng)管理。顯示界面如下:圖4-3 店員登錄系統(tǒng)主界面實(shí)現(xiàn)隱藏功能的代碼如下:private void mainform_load(object sender, eventargs e) /當(dāng)?shù)卿浀挠脩魴?quán)限為“normal”時(shí),隱藏部分內(nèi)容。 if (loginform.userright = normal) 供應(yīng)商信息維護(hù)toolstripmenuitem.visible = false; 員

49、工管理toolstripmenuitem.visible = false; 會(huì)員基本信息維護(hù)toolstripmenuitem.visible = false; 信息修改toolstripmenuitem.visible = false; 信息修改toolstripmenuitem1.visible = false; 信息修改toolstripmenuitem2.visible = false; 信息修改toolstripmenuitem3.visible = false; toolstripstatuslabel1.text = 當(dāng)前用戶為: + loginform.loginname + , 權(quán)限為: + loginform.userright; 4.3 商品管理模塊設(shè)計(jì)由于該商店銷售四大類商品,為了方便用戶管理,此模塊將四大類商品分別進(jìn)行管理,但其原理都是一樣的,所以只以一類商品的管理作為示范。4.3.1 商品信息查詢模塊該模塊用于查詢商品的各種信息,如商品的價(jià)格,會(huì)員價(jià)格,庫(kù)存余量,計(jì)價(jià)單位等。顯示界面如下所示:圖4-4 商品信息查詢界面實(shí)現(xiàn)代碼如下:/ / 加載此窗體時(shí),加載數(shù)據(jù)到datagr

溫馨提示

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