畢業(yè)設計(論文)-C#超市進銷存系統(tǒng)設計_第1頁
畢業(yè)設計(論文)-C#超市進銷存系統(tǒng)設計_第2頁
畢業(yè)設計(論文)-C#超市進銷存系統(tǒng)設計_第3頁
畢業(yè)設計(論文)-C#超市進銷存系統(tǒng)設計_第4頁
畢業(yè)設計(論文)-C#超市進銷存系統(tǒng)設計_第5頁
已閱讀5頁,還剩24頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、目錄 TOC o 1-3 h z u HYPERLINK l _Toc320390896 摘要 PAGEREF _Toc320390896 h 1 HYPERLINK l _Toc320390897 引言 PAGEREF _Toc320390897 h 2 HYPERLINK l _Toc320390898 1.開發(fā)背景及開發(fā)語言 PAGEREF _Toc320390898 h 3 HYPERLINK l _Toc320390899 開發(fā)背景 PAGEREF _Toc320390899 h 3 HYPERLINK l _Toc320390900 開發(fā)語言 PAGEREF _Toc3203909

2、00 h 4 HYPERLINK l _Toc320390901 2.可行性分析與需求分析 PAGEREF _Toc320390901 h 6 HYPERLINK l _Toc320390902 2.1 可行性分析 PAGEREF _Toc320390902 h 6 HYPERLINK l _Toc320390903 2.2 模塊需求分析 PAGEREF _Toc320390903 h 6 HYPERLINK l _Toc320390904 2.3 數(shù)據(jù)庫需求分析及概念設計 PAGEREF _Toc320390904 h 8 HYPERLINK l _Toc320390905 3.總體設計 P

3、AGEREF _Toc320390905 h 13 HYPERLINK l _Toc320390906 3.1 開發(fā)環(huán)境 PAGEREF _Toc320390906 h 13 HYPERLINK l _Toc320390907 3.2 系統(tǒng)界面 PAGEREF _Toc320390907 h 13 HYPERLINK l _Toc320390908 公共類設計與模塊功能代碼實現(xiàn) PAGEREF _Toc320390908 h 14 HYPERLINK l _Toc320390909 4開發(fā)難點分析 PAGEREF _Toc320390909 h 26 HYPERLINK l _Toc32039

4、0910 5 實習總結 PAGEREF _Toc320390910 h 27 HYPERLINK l _Toc320390911 6 參考文獻 PAGEREF _Toc320390911 h 28 HYPERLINK l _Toc320390912 附錄 PAGEREF _Toc320390912 h 29畢業(yè)實習論文超市進銷存管理系統(tǒng)摘要目前,無論是私有公司還是國有企業(yè)對于貨物都要求實行信息化管理,以提高管理水平和工作效率,同時也可以最大限度地減少手工操作帶來的錯誤。于是,進銷存管理信息系統(tǒng)便應運而生。在超市中,產品的進銷存涉及商品的采購、庫存、銷售、查詢、營業(yè)分析。為了更好地處理超市日常運

5、作程序,使得超市商品進銷存更加合理。所以一款好的超市進銷存管理系統(tǒng)就顯得尤為重要了。從另一方面來講,對普通超市來講,涉及原材料的進貨渠道、銷售情況及庫存等方面的管理,管理的好與壞對超市的持久性至關重要。概括地說,用戶對進銷存系統(tǒng)的需求具有普遍性。超市進銷存銷售管理系統(tǒng)適用于超市采購、銷售和倉庫部門,對超市采購、銷售及倉庫的業(yè)務全過程進行有效控制和跟蹤。使用超市進銷存銷售管理系統(tǒng)可有效減少盲目采購、降低采購本錢、合理控制庫存、減少資金占用并提高市場靈敏度,提升超市的市場競爭力。本系統(tǒng)是一個簡單小型的超市進銷存管理系統(tǒng),它主要分為根本檔案模塊,進貨管理模塊,庫存管理模塊,銷售管理模塊,系統(tǒng)模塊。開

6、發(fā)工具采用Microsoft visual studio 2005,開發(fā)語言為,,數(shù)據(jù)庫采用大型數(shù)據(jù)庫SQL Server 2005。運行平臺為windows xp/vista關鍵字 : 進銷存 C# SOL Server2005引言當今社會是一個信息社會,一個知識經濟時代。自世界上第一臺計算機ENIAC(Electronic numerical integrator and calculator)于1946年在美國問世到現(xiàn)在,計算機業(yè)飛速開展,技術淘汰指標高的驚人,價格下降以及軟件應用的快速擴展引發(fā)了以信息處理計算機化為標志的“微機革命,隨之而來的是以全球信息網絡普及和全球信息共享為標志的“

7、全球信息網絡革命的蓬勃興起??梢?,世界已進入在計算機信息管理領域中劇烈競爭的時代,計算機已經變得普通的不能再普通的工具,如同我們離不開的自行車、汽車一樣。在這種環(huán)境下證實了一句話:誰掌握的知識多,信息量大,信息處理速度快,批量大,誰的效率就高,誰就能在各種競爭中立于不敗之地。中小型企業(yè)在我國經濟開展中具有重要的地位,目前我國的中小型超市數(shù)量較多、地區(qū)分布廣泛、行業(yè)分布跨度大,隨著全球經濟一體化的開展及中國參加WTO,中小型企業(yè)將面臨外資企業(yè)和國外產品與效勞的嚴峻挑戰(zhàn)。如果我國的中小型超市不借助先進的管理思想轉變經營觀念、使用信息化提高企業(yè)的管理水平和工作效率,將很難在今后的國際競爭中取勝。隨著

8、技術開展,電腦的操作及管理日趨普及,因此我國中小型超市采用電腦管理公司的各種業(yè)務也已成為趨勢和必然。信息在不同的領域里有著不同的概念,在管理科學領域中,通常認為信息是經過加工處理后的一種數(shù)據(jù)形式,是一種有次序的符號排列,它是系統(tǒng)傳輸和處理的對象。處在信息時代的今天,信息的作用越來越為人們所重視。制定工作方案,研究投資策略,都離不開對信息的充分利用。管理信息系統(tǒng)Management Information System,縮寫MIS是一種“人機系統(tǒng),它以特定的模式支持一個組織內各級組織機構之間的通訊,對信息資源進行綜合開發(fā),管理和利用,實現(xiàn)對該組織的有效管理。它通過對數(shù)據(jù)的加工處理,及時為管理與決

9、策分析提供信息。其主要任務是最大限度的利用現(xiàn)代計算機及網絡通訊技術加強企業(yè)的信息管理,通過對企業(yè)擁有的人力、物力、財力、設備、技術等資源的調查了解,建立正確的數(shù)據(jù),加工處理并編制成各種信息資料及時提供給管理人員,以便進行正確的決策,不斷提高企業(yè)的管理水平和經濟效益。隨著我國與世界信息高速公路的接軌,企業(yè)通過計算機網絡獲得信息必將為企業(yè)帶來巨大的經濟效益和社會效益,企業(yè)的辦公及管理都將朝著高效、快速、無紙化的方向開展。MIS系統(tǒng)通常用于系統(tǒng)決策,MIS系統(tǒng)的最終目的是使管理人員及時了解公司現(xiàn)狀,把握將來的開展路徑。正文開發(fā)背景及開發(fā)語言開發(fā)背景中小型超市在我國經濟開展中具有重要的的地位,目前我國

10、中小型超市數(shù)量多,地區(qū)分布廣泛,行業(yè)分布跨度大。隨著全球商業(yè)一體化和電子商務的興起,中小型超市之間的競爭將越來越劇烈。網絡及電子商務的迅猛開展突破了時間、空間的局限性,給中小型超市帶來了更多的開展時機,同時也增大了同行業(yè)之間的競爭強度。這就要求中小型超市必須改變經營管理模式,提高運營效率,目前我國中小型超市的信息化水平還比擬低,隨著電腦技術的開展,同時市場經濟的快速多變,競爭劇烈,超市行業(yè)采用電腦管理進貨,銷售,庫存等諸多環(huán)節(jié)已成為必然趨勢!進銷存管理系統(tǒng)的開展歷程 1.進銷存管理系統(tǒng)的開展歷史可以追溯到20世紀60年代末期。由于當時計算機技術已經進入實用階段,同時大型企業(yè)用手工來計算和發(fā)放薪

11、資既費時費力又非常容易出過失,為了解決這個矛盾,第一代的進銷存管理系統(tǒng)應運而生。當時由于技術條件和需求的限制,用戶非常少,而且那種系統(tǒng)充其量也只不過是一種自動計算薪資的工具,既不包含非財務的信息,也不包含薪資的歷史信息,幾乎沒有報表生成功能和薪資數(shù)據(jù)分析功能。但是,它的出現(xiàn)為進銷存管理的管理展示了美好的前景,即用計算機的高速度和自動化來替代手工的巨大工量,用計算機的高準確性來防止手工的錯誤和誤差,使大規(guī)模集中處理大型企業(yè)的薪資成為可能。 2.第二代的進銷存管理系統(tǒng)出現(xiàn)于20世紀70年代末。由于計算機技術的飛速開展,無論是計算機的普及性,還是計算機系統(tǒng)工具和數(shù)據(jù)庫技術的開展,都為進銷存管理系統(tǒng)的

12、階段性開展提供了可能。第二代進銷存管理系統(tǒng)根本上解決了第一代系統(tǒng)的主要缺陷,對非財務的進銷存管理信息和薪資的歷史信息都給予了考慮,其報表生成和薪資數(shù)據(jù)分析功能也都有了較大的改善。但這一代的系統(tǒng)主要是由計算機專業(yè)人員開發(fā)研制的,未能系統(tǒng)地考慮進銷存管理的需求和理念,而且其非財務的進銷存管理信息也不夠系統(tǒng)和全面。 3.進銷存管理系統(tǒng)的革命性變革出現(xiàn)在20世紀90年代末。由于市場競爭的需要,如何吸引和留住人才,激發(fā)員工的創(chuàng)造性、工作責任感和工作熱情已成為關系企業(yè)興衰的重要因素,人才已經成為企業(yè)最重要的資產之一。公正、公平、合理的企業(yè)管理理念和企業(yè)管理水平的提高,使社會對進銷存管理系統(tǒng)有了更高的需求;

13、同時由于個人電腦的普及,數(shù)據(jù)庫技術、客戶/效勞器技術,特別是Internet/Intranet技術的開展,使得第三代進銷存管理系統(tǒng)的出現(xiàn)成為必然。第三代進銷存管理系統(tǒng)的特點是從進銷存管理的角度出發(fā),用集中的數(shù)據(jù)庫將幾乎所有與進銷存管理相關的數(shù)據(jù)如薪資福利、招聘、個人職業(yè)生涯的設計、培訓、職位管理、績效管理、崗位描述、個人信息和歷史資料統(tǒng)一管理起來,形成了集成的信息源。友好的用戶界面,強有力的報表生成工具、分析工具和信息的共享使得進銷存管理人員得以擺脫繁重的日常工作,集中精力從戰(zhàn)略的角度來考慮企業(yè)進銷存管理規(guī)劃和政策。一套比擬系統(tǒng)的進銷存管理理念,并建立了一整套比擬標準的進銷存管理方法。在積極建

14、立企業(yè)現(xiàn)代企業(yè)管理機制的今天,僅僅靠原始的手工管理或簡單的單機管理,人力資源部門面對大量的信息,無法有效率地將其中的重要局部提取出來,并做出相應的判斷和處理。公司管理者的決策只能依據(jù)報表數(shù)據(jù),在浪費大量人力、物力的同時無法做到實時監(jiān)控,難以保證數(shù)據(jù)的準確性和及時性。因此,先進的管理思想在企業(yè)中實現(xiàn)就成為了一個可望而不可及的目標。公司集團非常急需一套既有先進管理思想又適合國內大企業(yè)的進銷存管理信息系統(tǒng),作為實現(xiàn)目標和提高現(xiàn)有水平的一種重要手段開發(fā)語言C#本系統(tǒng)采用C#語言作為開發(fā)語言,C#是由C,C+語言開展而來,他在繼承兩者的強大功能的同時,也拋棄了他們一些復雜的特性,使得該門語言變得相對簡單

15、,尤其在界面實現(xiàn)方面顯得更有優(yōu)勢,更容易控制。C#中沒有宏,沒有模板,不允許多重繼承,不再強調使用指針,幾乎拋棄了所有令編程人員頭疼的特征。C#在語法和思維方面也與java有著很強大的相似性。C#是多種語言的混合體,因此它像Java一樣語法簡潔,像VB6一樣使用簡單,像C+一樣功能強大和靈活C#沒有像C+那樣麻煩的位操作。以下是C#核心特征的一局部,其中大局部特點也是其他支持.NET的程序語言所共有的特征。不需要指針!C#程序通常不需要直接對指針進行操作盡管在絕對必要時也能自由地進行底層操作。垃圾收集器能夠自動管理內存。因此,C#不支持delete關鍵字。類、接口枚舉、結構和委托都有正式的語法

16、結構。具有與C+類似的功能,可以簡單地重載運算符為自定義類型例如,不需要操心確保返回*this以能夠鏈接。支持基于特性的編程。這種方式的開發(fā)允許我們注釋類型及其成員來進一步限定其行為。隨著的發(fā)布大約在2005年,C#編程語言得到了更新以支持很多花哨的東西,主要是以下幾項。構建泛型類型和泛型成員的能力。使用泛型,我們可以構建非常高效的并且類型平安的代碼,在和泛型項交互的時候可以定義很多占位符。支持匿名方法,它允許我們在任何需要委托類型的地方提供內聯(lián)函數(shù)。很多委托/事件模型的簡化,包括協(xié)變、逆變以及方法組轉換。SQL Server 2005SQL Server 2005 是一個全面的數(shù)據(jù)庫平臺,使

17、用集成的商業(yè)智能 (BI) 工具提供了企業(yè)級的數(shù)據(jù)管理。SQL Server 2005 數(shù)據(jù)庫引擎為關系型數(shù)據(jù)和結構化數(shù)據(jù)提供了更平安可靠的存儲功能,使您可以構建和管理用于業(yè)務的高可用和高性能的數(shù)據(jù) HYPERLINK :/baike.baidu /view/330120.htm t _blank 應用程序。SQL Server 2005不僅可以有效地執(zhí)行大規(guī)模聯(lián)機事務處理,而且可以完成數(shù)據(jù)倉庫和電子商務應用等許多具有挑戰(zhàn)性的工作。SQL Server 2005 數(shù)據(jù)引擎是本企業(yè)數(shù)據(jù)管理解決方案的核心。此外 SQL Server 2005 結合了分析、報表、集成和通知功能。這使您的企業(yè)可以構建

18、和部署經濟有效的 BI 解決方案,幫助您的團隊通過記分卡、Dashboard、Web services 和移動設備將數(shù)據(jù)應用推向業(yè)務的各個領域。與 Microsoft Visual Studio、Microsoft Office System 以及新的開發(fā)工具包包括 Business Intelligence Development Studio的緊密集成使 SQL Server 2005 與眾不同。無論您是開發(fā)人員、 HYPERLINK :/baike.baidu /view/67185.htm t _blank 數(shù)據(jù)庫管理員、信息工作者還是決策者,SQL Server 2005 都可以為您

19、提供創(chuàng)新的解決方案,幫助您從數(shù)據(jù)中更多地獲益SQL Server 2005 通過在可伸縮性、數(shù)據(jù)集成、開發(fā)工具和強大的分析等方面的革新更好確實立了微軟在BI領域的領導地位。SQL Server 2005 能夠把關鍵的信息及時的傳遞到組織內員工的手中,從而實現(xiàn)了可伸縮的商業(yè)智能。從CEO 到信息工作者,員工可以快速的、容易的處理數(shù)據(jù),以更快更好的做出決策。SQL Server 2005全面的集成、分析和報表功能使企業(yè)能夠提高他們已有應用的價值,即便這些應用是在不同的平臺上。商業(yè)智能增強表達在以下幾個方面:端到端的集成BI平臺集成效勞分析效勞報表效勞Microsoft Office System的

20、集成可行性分析與需求分析2.1 可行性分析技術可行性 鑒于我在大學期間學習了有關java語言的系統(tǒng)開發(fā)并實現(xiàn)了一個用java編寫的超市管理系統(tǒng),并在大四第一學期學習了C#語言,對于管理信息系統(tǒng)的開發(fā)又有了新的認識和提高,使自己在開發(fā)管理信息系統(tǒng)的方面的技術更加成熟。C#語言和VB語言擁有強大的界面實現(xiàn)功能,而C#語言和java語言的語法思維方面有著巨大的相似之處,駕馭起來也比擬容易。所以通過分析,結合自己的技術水平和指導老師的指導,該系統(tǒng)的設計還是可行的。2經濟可行性 學校和網絡上有著較為豐富的免費的資料資源,和指導老師的義務指導,所以根本上該系統(tǒng)開發(fā)過程中的本錢還是很低的,在經濟上是可行的。

21、操作可行性 該系統(tǒng)只要界面設計友好,再搭配使用說明,操作起來是沒有問題的。綜上分析來看,開發(fā)該系統(tǒng)完全可行。2.2 模塊需求分析無論是一個公司還是一個超市,都有很多的數(shù)據(jù)要管理。手工管理這些紛繁復雜的數(shù)據(jù)的方式已經不適應時代的潮流,實現(xiàn)數(shù)據(jù)標準化,自動化的電腦管理,是一個管理標準,運作高效的企事業(yè)單位的必然要求。而且如何降低本錢已經成為超市首要解決的問題。要降低本錢,提高收益,就必須合理化管理,管理的好壞對超市的生存持久性至關重要,準確的講,用戶對進銷存系統(tǒng)的需求有著普遍性。本系統(tǒng)就是為了實現(xiàn)小超市的進銷存數(shù)據(jù)而設計的小型管理系統(tǒng)。本系統(tǒng)包括銷售管理,庫存管理,供貨商管理,進貨管理及用戶管理5

22、局部。系統(tǒng)結構如下圖。系統(tǒng)功能結構:圖1.1.1 系統(tǒng)結構圖2.2.1系統(tǒng)目標本系統(tǒng)屬于小型超市進銷存銷售管理系統(tǒng),可以有效的對中小型超市進行銷售管理。本系統(tǒng)應到達以下目標:1系統(tǒng)采用人機交互的方式,界面美觀友好,信息查詢靈活方便2對用戶輸入的數(shù)據(jù)進行嚴格的檢驗,降低人為錯誤3提高數(shù)據(jù)存儲的平安可靠性4能夠對進貨信息進行有效地管理5能夠準確的,詳細的管理商品庫存信息6最大可能實現(xiàn)系統(tǒng)的易操作性2.2.2系統(tǒng)模塊子功能概述1、根本檔案功能:1實現(xiàn)對員工,以及商品供給商信息的增加,刪除,修改操作。2對在職員工的登陸名與登陸密碼的修改操作。3實現(xiàn)對員工,供給商信息的查詢。2、進貨管理功能:1實現(xiàn)對貨

23、物的進貨管理和退收操作。2對已進貨物進行詳細查詢3、銷售管理功能:1實現(xiàn)商品的銷售功能和商品退貨功能4、庫存管理功能:1實現(xiàn)庫存報警和庫存查詢功能5、系統(tǒng)管理功能: 1提供對所有數(shù)據(jù)的保存?zhèn)浞菀约皵?shù)據(jù)恢復的功能此次設計我個人負責進貨信息,銷售信息以及退貨詳情這三個分子模塊的設計與實現(xiàn),故我就這三個模塊來進行分析。2.3 數(shù)據(jù)庫需求分析及概念設計2.3.1 數(shù)據(jù)庫需求分析用戶的需求具體表達在對商品數(shù)據(jù)的增加和查詢。這就要求數(shù)據(jù)庫結構充分滿足各種信息的輸出和輸入。搜集根本數(shù)據(jù)、數(shù)據(jù)結構和數(shù)據(jù)處理的流程,組成一個詳盡的數(shù)據(jù)字典,為后面的具體設計打下根底。通過上述系統(tǒng)功能分析,總結出所要設計的三個子模

24、塊有如下的需求信息:1. 登陸需要在職員工的登錄名和密碼,這兩個字段已經設計到tb-EmpInfo中。2. 銷售信息,退貨詳情以及進貨信息這三個子模塊需要獨立的數(shù)據(jù)經過上述系統(tǒng)功能分析和需求總結,設計如下面所示的數(shù)據(jù)項和數(shù)據(jù)結構。1、員工信息表,包括:員工編號,員工姓名,登陸賬號,登錄密碼,員工性別,員工生日,所屬部門,員工職位,家庭 , 號碼,家庭住址等字段;2、銷售信息表,包括:銷售編號,商品編號,員工姓名,商品名稱,銷售數(shù)量,銷售時間,單價,應付金額,實付金額,備注等字段;3、進貨信息表,包括:商品編號,商品名稱,供給商名稱,進貨數(shù)量,進貨單價,銷售單價,應付金額,實付金額,倉庫名稱等字

25、段;4、退貨詳情表,包括:退貨商品編號,銷售編號,商品名稱,退貨日期,退貨數(shù)目,退貨單價,實付金額,退貨原因等字段2.3.2 數(shù)據(jù)庫邏輯結構設計數(shù)據(jù)庫的邏輯設計由的分析可知,員工信息表,銷售信息表,進貨信息表以及退貨信息表的設計分別為EmpInfo (圖1.1),SellGoods(圖1.2),JHGoodsInfo(圖1.3),THGoodsInfo(圖1.4)圖 EmpInfo表圖1.2 SellGoods表圖1.3 JHGoodsInfo表圖1.4 THGoodsInfo表數(shù)據(jù)庫概念設計ER圖 超市離不開貨物往來,日常貨物的購置是非常重要的,在一個數(shù)據(jù)庫中建立一個進貨信息表用以存儲進貨的

26、詳細信息是非常必要的。進貨信息尸體ER圖如下圖。 圖1.5 進貨信息實體ER圖當顧客對某件商品不滿意時,可能會要求退貨,同時超市經營者也要詳細的了解退貨信息。此時,所需要在數(shù)據(jù)庫中建立一個商品退貨信息表用于存儲所有退貨信息,商品退貨信息實體ER圖如下圖。圖1.6 商品退貨信息實體ER圖為了時刻了解超市的銷售利潤,需要對商品的的銷售情況有所了解,故需要在數(shù)據(jù)庫中建立一張商品銷售實體ER圖,商品銷售實體ER圖如下圖圖1.6 商品銷售信息實體ER圖3.總體設計3.1 開發(fā)環(huán)境操作系統(tǒng):Microsoft Windows Xp Professional Service Pack 3開發(fā)工具:Micro

27、soft visual studio 2005應用數(shù)據(jù)庫:SQL Server 2005 開發(fā)版開發(fā)語言:3.2 系統(tǒng)界面3.2.1 登陸界面及主界面登陸界面如下圖。圖2.2.1 登錄窗體如果用戶名錯誤或者不存在,會彈出提示框,如下圖。圖2.2.2 錯誤提示框主界面窗體如圖2.2.3所示圖2.2.3 主界面窗體3.3公共類設計與模塊功能代碼實現(xiàn)3.3.1 公共類設計GetSqlConnection類主要實現(xiàn)與數(shù)據(jù)庫的的連接,在代碼或其他公共類中可以調用該類,連接數(shù)據(jù)庫,試下代碼如下:using System;using System.Collections.Generic;using Syst

28、em.Text;using System.Data.SqlClient; /引用必要的命名空間namespacepublic class getSqlConnection代碼中用到的變量String G_Str_ConnectionString = DataSource=20211022-1045SQLEXPRESS;database=db_CSManage;uid=sa;pwd=;SqlConnection G_Con; /聲明鏈接對象構造函數(shù)public getSqlConnection()連接數(shù)據(jù)庫public SqlConnection GetCon()G_Con = new SqlC

29、onnection(G_Str_ConnectionString);G_Con.Open();return G_Con; ThGoodsInfo類是商品退貨信息表實體類,該類的的功能是傳遞商品退貨信息表有關的參數(shù)實體。實現(xiàn)代碼如下:using System;using System.Collections.Generic;using System.Text;namespacepublic class tb_ThGoodsInfoprivate string ThGoodsID;public string strThGoodsID / 退貨編號 get return ThGoodsID; set

30、 ThGoodsID=value; private string KcID; public string strKcID / 庫存編號 get return KcID;set KcID=value; private string GoodsID; public string strGoodsID /商品編號 get return GoodsID;set GoodsID=value; private string SellID; public string strSellID /銷售單號 get return SellID;set SellID=value; private string Emp

31、Id; public string intEmpId get return EmpId;set EmpId=value; private string ThGoodsName; public string strThGoodsName get return ThGoodsName; set ThGoodsName=value; private int ThGoodsNum; public int intThGoodsNum get return ThGoodsNum;set ThGoodsNum=value; private DateTime ThGoodsTime; public DateT

32、ime daThGoodsTime get return ThGoodsTime; set ThGoodsTime=value; private string ThGoodsPrice; public string deThGoodsPrice get return ThGoodsPrice; set ThGoodsPrice=value; private string ThNeedPay; public string deThNeedPay get return ThNeedPay; set ThNeedPay=value; private string ThHasPay; public s

33、tring deThHasPay get return ThHasPay; set ThHasPay=value; private string ThGoodsResult; public string deThGoodsResult get return ThGoodsResult; set ThGoodsResult=value; 3.3.2 模塊功能實現(xiàn)商品銷售模塊實現(xiàn)對商品的銷售,已買商品的撤消操作。界面如下圖:圖3.1 商品銷售模塊該模塊界面實現(xiàn)只需要在開發(fā)工具左側工具箱中選擇相應的控件添加到Form中即可,而后再對相應的控件進行雙擊,添加事件響應。功能實現(xiàn)關鍵代碼如下:privat

34、e void FillControls() try SqlDataReader sqldr = sellMenthod.dtb_SellGoodsFind(this.dataGridView10, this.dataGridView1.CurrentCell.RowIndex.Value.ToString(); sqldr.Read(); if (sqldr.HasRows) txtSellID.Text = sqldr0.ToString(); txtSellID.Enabled = false; txtEmpID.Text = sqldr3.ToString(); txtGoodsName

35、.Text = sqldr4.ToString(); txtSellGoodsNum.Text = sqldr5.ToString(); DaSellGoodsTime.Value = Convert.ToDateTime(sqldr6.ToString(); txtSellRemark.Text = sqldr10.ToString(); txtdeSellPrice.Text = sqldr7.ToString(); txSellNeedPay.Text = sqldr8.ToString(); txtdeSellHasPay.Text = sqldr9.ToString(); sqldr

36、.Close(); catch (Exception ee) MessageBox.Show(ee.ToString(); 使用該模塊時,需要購置商品,需要點擊界面上方的添加,系統(tǒng)會自動生成一個流水號,然后在商品名稱一欄填入所要購置的商品,等一切操作完成后,點擊保存,便完成交易了。商品退貨模塊實現(xiàn)對商品的退貨功能鑒于C#語言有著強大的界面繪制功能,所以在此對于商品退貨模塊的界面設計就不再講了,我們著重講述該模塊的退貨功能的實現(xiàn)和操作時所要注意的問題。圖為商品退貨模塊的設計界面圖。圖3.1 商品退貨模塊商品退貨模塊關鍵代碼如下:namespace CHEXC public partial cla

37、ss frmThGoodsInfo : Form public frmThGoodsInfo() InitializeComponent(); tb_ThGoodsInfo tbGoodinfo = new tb_ThGoodsInfo(); tb_ThGoodsMenthod tbMendd = new tb_ThGoodsMenthod(); public string goodid = null; public string Kcid = null; public int intCoun = 0; public void getClear() txtThGoodsID.Text=; tx

38、tSellID.Text=; txtSellID.Text=; txtThGoodsName.Text=; txThGoodsNum.Text=; daThGoodsTime.Value = DateTime.Now; txtThGoodsPrice.Text=; txtThHasPay.Text=; txtThNeedPay.Text=; txtThGoodsResult.Text=; txtDataTime.Text = ; txtPrice.Text = ; txtnum.Text = ; txtEmpID.Text = ; /初始化數(shù)據(jù) public void FillControls

39、() try SqlDataReaderll.RowIndex.Value.ToString() sqldr.Read(); if (sqldr.HasRows) / 數(shù)據(jù)庫操作 txtThGoodsID.Text = sqldr0.ToString(); txThGoodsNum.Text= sqldr6.ToString(); txtThGoodsPrice.Text=sqldr8.ToString(); txtThHasPay.Text=sqldr10.ToString(); txtThNeedPay.Text=sqldr9.ToString(); txtThGoodsResult.Te

40、xt=sqldr11.ToString(); txtEmpID.Text=sqldr4.ToString(); daThGoodsTime.Value = Convert.ToDateTime(sqldr7.ToString(); sqldr.Close(); catch (Exception ee) MessageBox.Show(ee.ToString(); public void fillGet() try tb_SellGoodsMenthod tbsell = new tb_SellGoodsMenthod(); SqlDataReader dr = tbsell.dtb_SellG

41、oodsFind(this.dataGridView11, this.dataGridView1.CurrentCell.RowIndex.Value.ToString(); dr.Read(); if (dr.HasRows) / 界面表中填充顯示 txtSellID.Text = dr0.ToString(); txtThGoodsName.Text = dr4.ToString(); goodid = dr2.ToString(); Kcid = dr1.ToString(); txtDataTime.Text = dr6.ToString(); txtPrice.Text = dr7.

42、ToString(); txtnum.Text = Convert.ToInt32(dr5.ToString().ToString(); dr.Close(); catch (Exception ee) MessageBox.Show(ee.Message.ToString(); 使用方法和銷售管理模塊是一樣的,只不過需要注意的是,所推貨物的數(shù)量必須低于起初所購置貨物的數(shù)目,否那么會出現(xiàn)數(shù)據(jù)庫錯誤。進貨管理模塊設計與實現(xiàn)模塊界面圖如下圖3.3 進貨管理模塊界面圖功能實現(xiàn)關鍵代碼:namespace public class tb_JhGoodsInfoMenthod SqlConnection

43、 conn = null; SqlCommand cmd = null; SqlDataReader qlddr = null; public int tb_JhGoodsInfoMenthodAdd(tb_JhGoodsInfo tbGood) int intFalg = 0; try string str_Add = insert into tb_JhGoodsInfo values( ; str_Add += + tbGood.strGoodsID + , + tbGood.strEmpId + , + tbGood.strJhCompName + ,; str_Add += + tbG

44、ood.strDepotName + , + tbGood.strGoodsName + , + tbGood.strGoodsNum + ,; str_Add += + tbGood.strGoodsUnit + , + tbGood.deGoodsJhPrice + , + tbGood.deGoodsSellPrice + ,; str_Add += + tbGood.deGoodsNeedPrice + , + tbGood.deGoodsNoPrice + , + tbGood.strGoodsRemark + ,; str_Add += + tbGood.DaGoodTime +

45、, + tbGood.Falg + ); getSqlConnection getConnection = new getSqlConnection(); conn = getConnection.GetCon(); cmd = new SqlCommand(str_Add, conn); intFalg = cmd.ExecuteNonQuery(); conn.Dispose(); return intFalg; catch (Exception ee) MessageBox.Show(ee.ToString(); return intFalg; public int tb_JhGoods

46、InfoMenthodUpdate(tb_JhGoodsInfo tbGood) int intFalg = 0; try string str_Add = update tb_JhGoodsInfo set ; str_Add += EmpId= + tbGood.strEmpId + ,JhCompName= + tbGood.strJhCompName + ,; str_Add += DepotName= + tbGood.strDepotName + ,GoodsName= + tbGood.strGoodsName + ,GoodsNum= + tbGood.strGoodsNum

47、+ ,; str_Add += GoodsUnit= + tbGood.strGoodsUnit + ,GoodsJhPrice= + tbGood.deGoodsJhPrice + ,GoodsSellPrice= + tbGood.deGoodsSellPrice + ,; str_Add += GoodsNeedPrice= + tbGood.deGoodsNeedPrice + ,GoodsNoPrice= + tbGood.deGoodsNoPrice + ,GoodsRemark= + tbGood.strGoodsRemark + ,; str_Add += GoodTime=

48、+ tbGood.DaGoodTime + ,Falg= + tbGood.Falg + where GoodsID = + tbGood.strGoodsID + ; getSqlConnection getConnection = new getSqlConnection(); conn = getConnection.GetCon(); cmd = new SqlCommand(str_Add, conn); intFalg = cmd.ExecuteNonQuery(); conn.Dispose(); return intFalg; catch (Exception ee) Mess

49、ageBox.Show(ee.ToString(); return intFalg;3.3.3 小結開發(fā)一套完整的超市進銷存管理系統(tǒng),要從實際出發(fā),根據(jù)實際需要設計流程圖。根據(jù)系統(tǒng)數(shù)據(jù)量選擇數(shù)據(jù)庫,分析系統(tǒng)具體需要的模塊,對模塊要進行嚴格的編碼控制,對于一些常見的錯誤要進行異常處理。通過對該系統(tǒng)的分析和設計,使我不僅能夠掌握超市進銷存管理系統(tǒng)的開發(fā)流程,而且對開發(fā)其他軟件也有很好的啟發(fā)。4開發(fā)難點分析 開發(fā)超市進銷存銷售管理系統(tǒng)過程中,用到了觸發(fā)器。觸發(fā)器是一種特殊類型的存儲過程,當使用update,insert,或delete其中的一種或多種操作在指定表中對數(shù)據(jù)進行修改時,觸發(fā)器會生效。觸發(fā)器可以查詢其他表,而且可以包含復雜的SQL語句。他們主要用于強制復雜的業(yè)務規(guī)那么或要求。例如??梢钥刂剖欠裨试S給予客戶的當前賬戶狀態(tài)插入訂單。觸發(fā)器語句中使用了兩種特殊的表:deleted表和inserted表,可以使用這兩個臨時的駐留內存的表測試某些數(shù)據(jù)修改的效果及設置觸發(fā)器操作的條件;然而,不能直接對表中的數(shù)據(jù)進行更改。Deleted表用于存儲delete和update語句所影響的行的副本。在執(zhí)行delete和update語句時,行從觸發(fā)器表中刪除,并傳輸?shù)絛e

溫馨提示

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

評論

0/150

提交評論