![C++庫(kù)存管理系統(tǒng)文檔_第1頁(yè)](http://file4.renrendoc.com/view/572db35efdcfaec0bb5666c16ce62a41/572db35efdcfaec0bb5666c16ce62a411.gif)
![C++庫(kù)存管理系統(tǒng)文檔_第2頁(yè)](http://file4.renrendoc.com/view/572db35efdcfaec0bb5666c16ce62a41/572db35efdcfaec0bb5666c16ce62a412.gif)
![C++庫(kù)存管理系統(tǒng)文檔_第3頁(yè)](http://file4.renrendoc.com/view/572db35efdcfaec0bb5666c16ce62a41/572db35efdcfaec0bb5666c16ce62a413.gif)
![C++庫(kù)存管理系統(tǒng)文檔_第4頁(yè)](http://file4.renrendoc.com/view/572db35efdcfaec0bb5666c16ce62a41/572db35efdcfaec0bb5666c16ce62a414.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
安徽工業(yè)大學(xué)畢業(yè)設(shè)計(jì)(論文)任務(wù)書課題名稱超市庫(kù)存管理系統(tǒng)系 別 計(jì)算機(jī)系 專業(yè)班級(jí)軟件工程0741班姓 名 XXX字 號(hào) Oxxxxxxxx畢業(yè)設(shè)計(jì)(論文)的工作內(nèi)容:ー、進(jìn)行調(diào)研工作,了解、分析用戶對(duì)“超市庫(kù)存管理系統(tǒng)”的功能需求。二、熟練掌握一種程序設(shè)計(jì)語(yǔ)言,掌握其數(shù)據(jù)庫(kù)開發(fā)、訪問技術(shù)、編程設(shè)計(jì)技術(shù)。三、根據(jù)課題要求,軟件完成如下功能:1,對(duì)商品、商家基本信息的增刪改查等操作的實(shí)現(xiàn);2,對(duì)商品進(jìn)行入庫(kù)、出庫(kù)的操作;3,對(duì)高于庫(kù)存上限的商品或者低于庫(kù)存下限是的商品進(jìn)行顯示,以提醒操作人員及時(shí)處理;4,顯示操作日志,便于查詢操作員所操作的事物。四、要求軟件設(shè)計(jì)界面友好、使用方便,程序執(zhí)行安全、可靠。五、完成與設(shè)計(jì)內(nèi)容有關(guān)的外文資料翻譯,譯文約5000字。六、撰寫畢業(yè)論文并提交設(shè)計(jì)軟件及清單一份。日期:指導(dǎo)教師簽字:日期:摘要超市庫(kù)存管理的內(nèi)容是商品的入庫(kù)、出庫(kù)和庫(kù)存管理,它是商品管理的中間環(huán)節(jié),是用數(shù)據(jù)描述貨物的收入、發(fā)出和儲(chǔ)存的狀態(tài),及時(shí)有效地反映了商品在超市內(nèi)流動(dòng)的客觀過程,與庫(kù)存管理和商品管理的其他環(huán)節(jié)都有直接聯(lián)系。可以說它在商品配送管理中起著樞紐和基礎(chǔ)的重要作用。本系統(tǒng)以VisualC++6.0為開發(fā)工具,采用了SQLServer2000為后臺(tái)數(shù)據(jù)庫(kù)。該系統(tǒng)主要分為五大模塊:庫(kù)存管理模塊、顯示查詢模塊、商品信息模塊、商家模塊、系統(tǒng)模塊。關(guān)鍵詞:超市庫(kù)存管理系統(tǒng);VisualC++6.0;SQLServer2000AbstractThecontentsofthesupermarketinventorymanagementofgoodsoutofwarehouseandinventorymanagement,productmanagement,itisthemiddlepartistheuseofdatadescribingtheincomeofthegoods,issueandstorageofthestate,reflectingthetimelyandeffectiveflowofgoodsinthesupermarketobjectiveprocess,andinventorymanagementandmerchandisemanagementhavedirectcontactwiththeotherlinks.Managementcansaythatitplaysinthecommoditydistributionhubandthebasisofanimportantrole.ThesystemfortheVisualC++6.0developmenttool,theSQLServer2000databaseforthebackgroundThesystemconsistsoffivemodules:InventoryManagementmodule,displayquerymodule,productinformationmodule,thebusinessmodule,thesystemmodule.Keywords:SupermarketStorageManagementSystem;VisualC++2005;SQLServer2000目錄TOC\o"1-5"\h\z\o"CurrentDocument"!系統(tǒng)概述 1\o"CurrentDocument".!開發(fā)背景 1\o"CurrentDocument"1.2開發(fā)環(huán)境 1\o"CurrentDocument"1VisualC++6.0特點(diǎn) 1\o"CurrentDocument"2SQLServer2000特點(diǎn) 2\o"CurrentDocument"3AD0的特性 2\o"CurrentDocument"需求分析 3\o"CurrentDocument"2.I系統(tǒng)需求分析 3\o"CurrentDocument"2.2可行性分析 3\o"CurrentDocument"2.I技術(shù)可行性 3\o"CurrentDocument"經(jīng)濟(jì)可行性 3\o"CurrentDocument"操作可行性 4\o"CurrentDocument"數(shù)據(jù)描述 4\o"CurrentDocument"系統(tǒng)運(yùn)行需求 5\o"CurrentDocument"4.1用戶界面 5\o"CurrentDocument"4.2 硬件要求 5\o"CurrentDocument"軟件要求 5\o"CurrentDocument"使用方法 5\o"CurrentDocument"故障處理 5\o"CurrentDocument"3概要設(shè)計(jì) 6\o"CurrentDocument"1E-R模型的建立 6\o"CurrentDocument"3.2數(shù)據(jù)庫(kù)的設(shè)計(jì) 7\o"CurrentDocument"4詳細(xì)設(shè)計(jì) 11\o"CurrentDocument"系統(tǒng)總體框架設(shè)計(jì) 11\o"CurrentDocument"系統(tǒng)具體功能設(shè)計(jì) 11\o"CurrentDocument"4.2.1 登陸界面 11\o"CurrentDocument"4.2.2 主界面 12\o"CurrentDocument"4.2.3 庫(kù)存商品 12\o"CurrentDocument"4.2.4供貨商家 13\o"CurrentDocument"4.2.5商口口入庫(kù) 13\o"CurrentDocument"4.2.6 商品出庫(kù) 14\o"CurrentDocument"4.2.7 查詢 14\o"CurrentDocument"4.2.8 修改密碼 17\o"CurrentDocument"4.2.9 庫(kù)存報(bào)警 17\o"CurrentDocument"5調(diào)試運(yùn)行及測(cè)試 18\o"CurrentDocument"5.1調(diào)試運(yùn)行 18\o"CurrentDocument"5.2測(cè)試 18\o"CurrentDocument"總結(jié) 27\o"CurrentDocument"致謝 28\o"CurrentDocument"參考文獻(xiàn) 29\o"CurrentDocument"附錄ー:部分程序代碼 30\o"CurrentDocument"附錄二:外文資料/譯文 46\o"CurrentDocument"外文文獻(xiàn)原文 46\o"CurrentDocument"外文文獻(xiàn)翻譯 531系統(tǒng)概述開發(fā)背景在當(dāng)今這個(gè)快速發(fā)展的社會(huì),計(jì)算機(jī)產(chǎn)業(yè)興起,已經(jīng)成為各行業(yè)必不可少的工具,他實(shí)現(xiàn)了不同程度的自動(dòng)化操作,給人們的工作和生活帶來了極大的便利?,F(xiàn)在我們的周圍出現(xiàn)了大量的超市、便利店等,長(zhǎng)期以來人們使用傳統(tǒng)的人ェ方式管理倉(cāng)庫(kù)中的各種物資設(shè)備,這樣的管理方式不僅效率低,而且時(shí)間ー長(zhǎng),將產(chǎn)生大量的數(shù)據(jù)和文件,這給查找。更新和維護(hù)都帶來了不便。而對(duì)于這些企業(yè)而言資源管理、信息的存儲(chǔ)和處理顯得迫切重要,要適應(yīng)市場(chǎng)競(jìng)爭(zhēng),就需要有高效的處理方式和管理方法,因此加快超市庫(kù)存管理的信息化進(jìn)程是必可少的。所以開發(fā)該系統(tǒng)是必要的,使用該系統(tǒng)不僅能提高商品的信息化程度,減輕管理人員的管理、統(tǒng)計(jì)商品負(fù)擔(dān),也可以及時(shí)獲取商品入出庫(kù)信息,并同時(shí)提高管理效率和公司利益最大化。開發(fā)環(huán)境前臺(tái)應(yīng)用程序開發(fā)使用的是VisualC++6.0,后臺(tái)數(shù)據(jù)庫(kù)的建立和維護(hù)使用的是SQLServer2000oVisualC++6.0特點(diǎn)VisualC++6.0是功能最為強(qiáng)大的可視化開發(fā)工具之一,它不僅支持傳統(tǒng)的軟件開發(fā)方法更重要的是它能支持面向?qū)ο?、可視化的開發(fā)風(fēng)格。因此VisualC++6.0又稱作是ー個(gè)集成開發(fā)工具,它提供了軟件代碼自動(dòng)生成和可視化資源編輯功能。VisualC++6.0具有的優(yōu)點(diǎn):提供了面向?qū)ο蟮膽?yīng)用程序框架MFC(MicrosoftFoundationClass),簡(jiǎn)化了程序員的編程工作,提高了模塊的可重用性;提供了基于CASE技術(shù)的可視化軟件的自動(dòng)生成和維護(hù)工具AppWizard、ClassWizard,VisualStudio,WizardBar等,實(shí)現(xiàn)了直觀、可視的程序設(shè)計(jì)風(fēng)格,方便的編譯和管理各種類,維護(hù)程序的源代碼;封裝了Windows的API函數(shù)、USER、KERNEL.GDI函數(shù),簡(jiǎn)化了編程時(shí)創(chuàng)建、維護(hù)窗口的許多復(fù)雜的工作。其中MFC是ー個(gè)很大的、擴(kuò)展了的C++類層次結(jié)構(gòu),它能使開發(fā)Windows應(yīng)用程序變得更加容易。MFC是在整個(gè)Windows家族中都是兼容的,也就是說,無論是Windows3.x、Windows95還是WindowsNT)所使用的MFC是兼容的。每當(dāng)新的Windows版本出現(xiàn)時(shí),MFC也會(huì)得到修改以便使舊的編譯器和代碼能在新的系統(tǒng)中工作。MFC也回得到擴(kuò)展,添加新的特性、變得更加容易建立應(yīng)用程序。使用MFC的最大優(yōu)點(diǎn)是它為你做了所有最難做的事。MFC中包含了上成千上萬行正確、優(yōu)化和功能強(qiáng)大的Windows代碼。你所調(diào)用的很多成員函數(shù)完成了你自己可能很難完成的工作。從這點(diǎn)上將,MFC極大地加快了你的程序開發(fā)速度。由于MFC編程方法充分利用了面向?qū)ο蠹夹g(shù)的優(yōu)點(diǎn),它使得我們編程時(shí)極少需要關(guān)心對(duì)象方法的實(shí)現(xiàn)細(xì)節(jié),同時(shí)類庫(kù)中的各種對(duì)象的強(qiáng)大功能足以完成我們程序中的絕大部分所需功能,這使得應(yīng)用程序中程序員所需要編寫的代碼大為減少,有力地保證了程序的良好的可調(diào)試性。SQLServer2000特點(diǎn)SQLServer是一種關(guān)系數(shù)據(jù)庫(kù)(relationaldatabase),它除了支持傳統(tǒng)關(guān)系數(shù)據(jù)庫(kù)組件(如數(shù)據(jù)庫(kù)、表)和特性(如表的join)タト,也支持當(dāng)今關(guān)系數(shù)據(jù)庫(kù)常用的組件,如存儲(chǔ)過程(storedprocedure)、視圖(view)等。另外,它還支持,目前關(guān)系數(shù)據(jù)庫(kù)都支持的標(biāo)準(zhǔn)查詢語(yǔ)言 SQL(StructuredQueryLanguage)〇SQLServer另外…項(xiàng)重要的特點(diǎn)是它支持?jǐn)?shù)據(jù)庫(kù)復(fù)制(replication)功能,也就是當(dāng)你在ー個(gè)數(shù)據(jù)庫(kù)上執(zhí)行操作時(shí),可以將其操作結(jié)果傳至遠(yuǎn)程SQLServer相同的數(shù)據(jù)庫(kù)上,讓兩邊的數(shù)據(jù)保持同步。SQLServer2000是Microsoft公司推出的SQLServer數(shù)據(jù)庫(kù)管理系統(tǒng),該版本繼承了SQLServer7.0版本的優(yōu)點(diǎn)同時(shí)又在可靠性、質(zhì)量和易用性、可伸縮性、業(yè)務(wù)智能功能和對(duì)MXL的支持,以及與微軟BACK-OFFICE系列產(chǎn)品的無縫集成等方面增加了幾種新的功能,由此成為大規(guī)模聯(lián)機(jī)事物處理(OLTP)、數(shù)據(jù)倉(cāng)庫(kù)和電子商務(wù)應(yīng)用程序的優(yōu)秀數(shù)據(jù)庫(kù)平臺(tái)。ADO的特性ADO(ActiveXDataObject)是ー個(gè)用于存取數(shù)據(jù)源的COM組件。它提供了編程語(yǔ)言和統(tǒng)ー數(shù)據(jù)訪問方式OLEDB的一個(gè)中間層,也就是說它是建立在OLEDB之上的高層數(shù)據(jù)庫(kù)訪問技術(shù)。它封裝了OLEDB所提供的接口,比起OLEDB提供者,ADO的接口可以使程序員在更高級(jí)別上進(jìn)行數(shù)據(jù)交互。ADO技術(shù)不僅可以應(yīng)用于關(guān)系數(shù)據(jù)庫(kù),也可以應(yīng)用于非關(guān)系數(shù)據(jù)庫(kù)??梢杂媒y(tǒng)ー的方法對(duì)不同的文件系統(tǒng)進(jìn)行訪問,大大簡(jiǎn)化了程序編制,增加了程序的可移植性。通過ADO連接SQLServer數(shù)據(jù)庫(kù)可以分為有源數(shù)據(jù)庫(kù)連接和無源數(shù)據(jù)庫(kù)連接,我做的這個(gè)超市管理系統(tǒng)使用的是有源數(shù)據(jù)庫(kù)連接,也就是說首先要注冊(cè)數(shù)據(jù)源名稱(DSN),通過配置ODBC環(huán)境,進(jìn)行數(shù)據(jù)源的注冊(cè),然后才能在對(duì)數(shù)據(jù)庫(kù)編程時(shí),對(duì)數(shù)據(jù)源進(jìn)行連接、訪問和操作。2需求分析.I系統(tǒng)需求分析在現(xiàn)在有的超市企業(yè)也有自己的管理系統(tǒng),但是不是操作繁瑣就是功能不夠齊全,所以我們要開發(fā)ー個(gè)操作簡(jiǎn)單、功能齊全的管理系統(tǒng),讓具有一般計(jì)算機(jī)水平的員工也能方便使用。因此該系統(tǒng)的界面要友好,還要實(shí)現(xiàn)比較完整的功能。其主要包括以下兒個(gè)功能:庫(kù)存商品:顯示商品信息,并實(shí)現(xiàn)對(duì)商品信息的增刪改功能。供貨商家:顯示商家信息,并實(shí)現(xiàn)對(duì)商家信息的增刪改功能。商品入庫(kù):對(duì)商品進(jìn)行入庫(kù)操作。商品出庫(kù):對(duì)商品進(jìn)行出庫(kù)操作。商品信息:顯示所有商品信息,并顯示商品總數(shù)。商家信息:顯示所有商家信息,并顯示商品總數(shù)。入庫(kù)信息:顯示所有的入庫(kù)信息。出庫(kù)信息:顯示所有的出庫(kù)信息。庫(kù)存報(bào)警:顯示高于最高預(yù)警線或者最低于低預(yù)警線先的商品的詳細(xì)信息。修改密碼:修改登錄密碼。日志查看:方便査看操作日志信息。.2可行性分析.2.I技術(shù)可行性現(xiàn)在的社會(huì)計(jì)算機(jī)普及應(yīng)用,各種軟件應(yīng)運(yùn)而生,不管是一般的應(yīng)用軟件,還是開發(fā)軟件,都能在一般操作系統(tǒng)(Windows2000以上的版本或相應(yīng)的WindowsNT版本)上工作,當(dāng)然也包括VisualC++2005和SQLServer2000,所以用這兩種開發(fā)平臺(tái)開發(fā)出來的應(yīng)用軟件操作系統(tǒng)在Windows2000以上的版本或相應(yīng)的WindowsNT版本系統(tǒng)上也是可以運(yùn)行的。而且現(xiàn)在計(jì)算機(jī)技術(shù)已經(jīng)很成熟,設(shè)計(jì)人員不用自己編寫繁瑣的代碼,很多都是庫(kù)類中已經(jīng)存在的,編程人員在需要使用的時(shí)候只要調(diào)用就可以了。所以綜上所述,在技術(shù)方面考慮是可行的。.2.2經(jīng)濟(jì)可行性雖然開發(fā)該軟件是需要一定成本的,比如人力和物力,但是通過該軟件的使用可以減少企業(yè)管理費(fèi)用和人力開支,而其它ー些繁瑣的事物都通過新系統(tǒng)來加
以分析解決,不僅節(jié)省了大量的時(shí)間,還為企業(yè)的各項(xiàng)決策提供了寶貴的資料,為企業(yè)帶來的是更大的經(jīng)濟(jì)效益。從根本上提高了超市的經(jīng)濟(jì)效益,所以從經(jīng)濟(jì)上完全是可行的。2.3操作可行性本系統(tǒng)采用基于Windows的圖形用戶界面,所以不必具備計(jì)算機(jī)的專業(yè)技能,只要有…般的計(jì)算機(jī)知識(shí)的人員就可以輕松上手。而整個(gè)超市庫(kù)存管理系統(tǒng)采用友好的交互界面,簡(jiǎn)潔明了,不需要對(duì)數(shù)據(jù)庫(kù)進(jìn)行深入的了解。由此,該系統(tǒng)的操作是可行的,有必要開發(fā)該系統(tǒng)。綜合以上三方面,該系統(tǒng)具有很高的開發(fā)可行性,無論是從技術(shù)上或者經(jīng)濟(jì)上還是操作上。數(shù)據(jù)描述由上述分析和根據(jù)對(duì)系統(tǒng)的邏輯功能、數(shù)據(jù)在系統(tǒng)內(nèi)部的邏輯流向和邏輯變換過程的分析,可畫數(shù)據(jù)流圖2.1所示。商品入庫(kù)商品信息 ]査詢?nèi)霂?kù)信息 I出庫(kù)信息庫(kù)存報(bào)警修改管理員留碼系統(tǒng)操作日志系統(tǒng)幫助退出圖2.1系統(tǒng)總體數(shù)據(jù)流圖
系統(tǒng)運(yùn)行需求2.4.I用戶界面本系統(tǒng)的用戶交互界面采用的是基于Windows的窗口界面,便于操作。2.4.2硬件要求運(yùn)行本系統(tǒng)的硬件基本要求如下:CPU:IntelP3及以上;內(nèi)存:256MB及以上;硬盤:10GB及以上。2.4.3軟件要求操作系統(tǒng)使用Windows2000以上的版本或相應(yīng)的WindowsNT版本。數(shù)據(jù)庫(kù)系統(tǒng)采用:SQLServer2000〇2.4.4使用方法本系統(tǒng)已生成可執(zhí)行文件,使用時(shí)打開GMS.exe即可。2.4.5故障處理正常使用時(shí)不易出錯(cuò),對(duì)于用戶的輸入錯(cuò)誤應(yīng)給出適當(dāng)?shù)母恼崾?若運(yùn)行時(shí)遇到不可恢復(fù)的系統(tǒng)錯(cuò)誤,也必須保證數(shù)據(jù)庫(kù)完好無損。3概要設(shè)計(jì)E-R模型的建立根據(jù)需求分析的結(jié)果(數(shù)據(jù)流圖、數(shù)據(jù)字典等)對(duì)現(xiàn)實(shí)世界的數(shù)據(jù)進(jìn)行抽象,然后設(shè)計(jì)出本系統(tǒng)的E-R圖,如圖3.1、3.2、3.3所示。圖3.1出庫(kù)E-R圖圖3.2入庫(kù)E-R圖
圖3.3供應(yīng)E-R圖數(shù)據(jù)庫(kù)的設(shè)計(jì)根據(jù)系統(tǒng)功能設(shè)計(jì)的要求、功能模塊的劃分以及上面實(shí)體以及實(shí)體間關(guān)系的設(shè)計(jì),形成各個(gè)表格之間的關(guān)系,可設(shè)計(jì)超市庫(kù)存管理系統(tǒng)數(shù)據(jù)庫(kù)的各個(gè)表如下所示。系統(tǒng)用戶表的設(shè)計(jì):用戶(操作員號(hào),操作員姓名,操作員密碼)CREATETABLEadmin(Admin_codenvarchar(lO)COLLATEChinese_PRC_CI_ASNOTNULL,Admin_namenvarchar(30)COLLATEChinese_PRC_CI_ASNULL,Admin_passwdnvarchar(50)COLLATEChinese_PRC_CI_ASNULL表3.1系統(tǒng)用戶表列名數(shù)據(jù)類型長(zhǎng)度允許空說明是否主鍵Admin_codenvarchar10否操作員號(hào)是Admin_namenvarchar30是操作員姓名否Admin_passwdnvarchar50是操作員密碼否商品信息表的設(shè)計(jì):商品(商品編號(hào),商品名,當(dāng)前數(shù)量,庫(kù)存上限,庫(kù)存下限)CREATETABLEgoods(G_codenvarchar(50)COLLATEChinese_PRC_CI_ASNOTNULL,G_namenvarchar(50)COLLATEChinese_PRC_CI_ASNULL,CurrentnumberintNULL,Max_numberintNULL,MinnumberintNULL);表3.2商品イ信息表列名數(shù)據(jù)類型長(zhǎng)度允許空說明是否主鍵G_codenvarchar50否商品編號(hào)是G_namenvarchar50是商品名否Current_numberint4是當(dāng)前數(shù)量否Max_numberint4是庫(kù)存上限否Min_numberint4是庫(kù)存下限春入庫(kù)信息表設(shè)計(jì):入庫(kù)(商品編號(hào),供應(yīng)商號(hào),入庫(kù)數(shù)量,入庫(kù)價(jià)格,入庫(kù)日期)CREATETABLEinlib(Goods_codenvarchar(50)COLLATEChinese_PRC_CI_ASNULL,Provider_codenvarchar(50)COLLATEChinese_PRC_CI_ASNULL,In_numberintNULL,In_PricerealNULL,In_datenvarchar(50)COLLATEChinese_PRC_CI_ASNULL):表3.3入庫(kù)信息表列名數(shù)據(jù)類型長(zhǎng)度允許空說明是否主鍵Goods_codenvarchar50否商品編號(hào)否Provider_codenvarchar50是供應(yīng)商號(hào)否In_numberint4是入庫(kù)數(shù)量否In_Pricereal4是入庫(kù)價(jià)格否In_datedatetime8是入庫(kù)日期否出庫(kù)信息表設(shè)計(jì):出庫(kù)(商品編號(hào),出庫(kù)數(shù)量,出庫(kù)人,出庫(kù)時(shí)間)CREATETABLEoutlib(Goods_codenvarchar(50)COLLATEChinese_PRC_CI_ASNULL,Outnumbernvarchar(50)COLLATEChinese_PRC_CI_ASNULL,ut_personnvarchar(50)COLLATEChinese_PRC_CI_ASNULL,takernvarchar(50)COLLATEChinese_PRC_CI_ASNULL,out_datenvarchar(50)COLLATEChinese_PRC_CI_ASNULL);表3.4出庫(kù)イ信息表列名數(shù)據(jù)類型長(zhǎng)度允許空說明是否主鍵Goods_codenvarchar50是商品編號(hào)否Outnumbernvarchar50是出庫(kù)數(shù)量否Out_personnvarchar50是出庫(kù)人否out_dateSmalldatetime4是出庫(kù)時(shí)間否日志表設(shè)計(jì):日志(操作員姓名,操作類型,操作日期)CREATETABLElog(Admin_namenvarchar(30)COLLATEChinese_PRC_CI_ASNULL,do_whatnvarchar(50)COLLATEChinese_PRC_CI_ASNULL,do.datenvarchar(50)COLLATEChinese_PRC_CI_ASNULL);表3.5日志表列名數(shù)據(jù)類型長(zhǎng)度允許空說明是否主鍵Admin_namenvarchar30是操作員姓名否do_whatnvarchar50ノよ操作類型否do_datesmalldatetime4江操作日期否供應(yīng)商信息表設(shè)計(jì):供應(yīng)商(供應(yīng)商號(hào),供應(yīng)商名,供應(yīng)商地址,聯(lián)系人,電話,Email)CREATETABLEprovider(Provider_codenvarchar(50)COLLATEChinese_PRC_CI_ASNOTNULL,Provider_namenvarchar(30)COLLATEChinese_PRC_CI_ASNULL,Provider_addressnvarchar(50)COLLATEChinese_PRC_CI_ASNULL,Provider_personnvarchar(20)COLLATEChinese_PRC_CI_ASNULL,Provider.telphonenvarchar(13)COLLATEChinese_PRC_CI_ASNULL,Provider_emailnvarchar(50)COLLATEChinese_PRC_CI_ASNULL);表3.6供應(yīng)商信息表列名數(shù)據(jù)類型長(zhǎng)度允許空說明是否主鍵Provider_codenvarchar50否供應(yīng)商號(hào)是Provider_namenvarchar30是供應(yīng)商名否Provider_addressnvarchar50是供應(yīng)商地址看Provider_personnvarchar20是聯(lián)系人否Provider_telphonenvarchar13是電話否Provider_emailnvarchar50是Email否4詳細(xì)設(shè)計(jì)系統(tǒng)總體框架設(shè)計(jì)依據(jù)需求分析階段得到的數(shù)據(jù)流圖,在保證系統(tǒng)基本功能要求的前提下,可畫出庫(kù)存管理系統(tǒng)功能模塊圖如圖4.1所示。超市庫(kù)存管理系統(tǒng)庫(kù)存商品供貨商家商品入庫(kù)商品出庫(kù)存商品供貨商家商品入庫(kù)商品出庫(kù)查詢庫(kù)存報(bào)警系統(tǒng)ュ退出_」測(cè)ッ「-T-修改_廠増加_,退出_I-_出商家售心圖4.1系統(tǒng)功能模塊圖系統(tǒng)具體功能設(shè)計(jì)2.I登陸界面運(yùn)行系統(tǒng)后出現(xiàn)如圖4.2所示的登陸界面,輸入admin表中已經(jīng)存在的操作員名和正確的密碼后方能進(jìn)入主界面。用戶笥廠密碼,F回JRSMj圖4.2登陸界面
4.2.2主界面主界面包括系統(tǒng)所有的功能實(shí)現(xiàn),點(diǎn)擊不同功能,進(jìn)入不同功能的實(shí)現(xiàn)界面,成功登陸后將進(jìn)入主界面,主界面如圖4.3所示。圖4.3主界面4.2.3庫(kù)存商品單擊主界面中的“庫(kù)存商品”按鈕進(jìn)入庫(kù)存商品界面,如圖4.4所示。GO7O8...羊果544GO7O8...羊果544300100G0708...香?500122100G0713...乒乓球130200015GO713...棒棒樗6485000G07S952桃子6220050G32U餅干41100100G395839電R?第079020G712345方便面0400100G723456采石茶干020050竺改(出!?除(D)
退出(X)4.2.4供貨商家在主界面點(diǎn)擊“供貨商家”按鈕,進(jìn)入供貨商家界面,如圖4.5所示。圖4.5供貨商家界面4.2.5商品入庫(kù)在主界面中點(diǎn)擊'‘商品入庫(kù)”按鈕,進(jìn)入商品出庫(kù)界面,如圖4.6所示。其中“入庫(kù)商品”為下拉列表框,只可以選擇商品表中已經(jīng)存在的商品進(jìn)行入庫(kù)操作,供應(yīng)商也只能選擇供應(yīng)商表中已經(jīng)存在的記錄進(jìn)行入庫(kù)。確定| 取消圖4.6入庫(kù)界面
4.2.6商品出庫(kù)在主界面中點(diǎn)擊“商品出庫(kù)”按鈕,就進(jìn)入商品出庫(kù)界面,如圖4.7所示。圖4.7出庫(kù)界面4.2.7查詢單擊主界面的“商品信息”按鈕進(jìn)入商品信息界面,如圖4.8所示,顯示所有商品的具體信息。商品信息 區(qū)商品端言I商品名稱1當(dāng)前庫(kù)存|最大庫(kù)容最小庫(kù)容607083704100300100G07084004500122100G071338012501000100G07133902124200015G071340035095000G0789525020050G089340120100G321401100100G395839電風(fēng)扇079020-1k■ ,記錄總數(shù)|5—確定
單擊主界面的“商家信息”按鈕進(jìn)入商品信息界面,如圖4.9所不,顯示所有商家的具體信息。P0709110I 匯源P0709U02 藥P0709110I 匯源P0709U02 藥方果BSP07091103 余的茶行P07091202 文具批發(fā)P07091203 棗師傅山鞍涂山京京馬當(dāng)黃南對(duì)三四五六七強(qiáng)李王紀(jì)朱1234567 zhangsan?...2345678 lisi€3456789 wangwu?si...4567890 zhengliu?...5678901 zhuqi?126...定4.記錄總數(shù)定4.圖4.9商家信息單擊主界面的“入庫(kù)信息”按鈕進(jìn)入商品信息界面,如圖4.10所示,顯示所有入庫(kù)信息。商品編號(hào) I商家編號(hào) I入庫(kù)數(shù)量: I購(gòu)入價(jià)格 國(guó)人日翹G07083704P07091101222205312011...G07083704P07091101222205312011...G07134003P07091102120205312011...G07S952P070911021210612011...G07134003P07091101906220111...G3214P07091101423406220111...G07133902P070912023122011-06-022...G07133902P070912023122011-06-022...G07134003P070911011212011-06-052...圖4.10入庫(kù)信息
單擊主界面的“出庫(kù)信息”按鈕進(jìn)入商品信息界面,如圖4.1I所示,顯示所有出庫(kù)信息。圖4.11出庫(kù)信息單擊主界面的“操作日志”按鈕進(jìn)入操作日志界面,如圖4.12所示,顯示所有操作信息。圖4.12操作日志
4.2.8修改密碼在主界面中點(diǎn)擊“修改密碼”按鈕,進(jìn)入修改密碼界面,兩次輸入想要修改的密碼,即可修改成功。界面如圖4.13所示。圖4.13修改密碼界面4.2.9庫(kù)存報(bào)警在主界面中點(diǎn)擊“庫(kù)存報(bào)警”按鈕,進(jìn)入庫(kù)存報(bào)警界面,直接顯示當(dāng)前庫(kù)存中低于最低預(yù)警線和高于最高預(yù)警線的商品信息,便于管理人員及時(shí)處理,如圖4.14所示。匸存預(yù)審 「£31低于最低預(yù)警線的商品下列商品庫(kù)存過低,請(qǐng)及時(shí)購(gòu)買入庫(kù)!商品編號(hào) I商品名稱 I當(dāng)前庫(kù)存I最大庫(kù)容 I最小庫(kù)容|G07083704G078952G08934G3214G395839G07083704G078952G08934G3214G395839明果子刷干風(fēng)蘋桃牙tw電□〇〇15000〇〇〇OOOOO15112高于最高預(yù)警線的商品下列商品庫(kù)存過盛,請(qǐng)盡快出庫(kù)消售!商品,扁號(hào)1商品名稱1當(dāng)前庫(kù)存1最大庫(kù)答1最小庫(kù)容G07084004香薫500122100G07134003檯檯惚5095000確定(0)圖4.14庫(kù)存報(bào)警5調(diào)試運(yùn)行及測(cè)試調(diào)試運(yùn)行調(diào)試運(yùn)行時(shí)出現(xiàn)了很多錯(cuò)誤,在老師和同學(xué)的幫助以及自己查閱資料、網(wǎng)上搜索之后都一?解決了。主要是數(shù)據(jù)庫(kù)連接的問題和變量的問題。測(cè)試測(cè)試1名稱:登陸測(cè)試目的:測(cè)試登陸界面內(nèi)容:合理性檢查、合法性檢查,是否能成功登陸的測(cè)試步驟及操作:驅(qū)動(dòng)模塊調(diào)用之后,看是否能進(jìn)入主界面允許偏差:不允許任何偏差條件:admin表結(jié)果:如下所示若輸入的用戶名或密碼錯(cuò)誤將出現(xiàn)下圖5.1所示的提示。圖5.1登陸不成功若輸入的用戶名和密碼正確的話將進(jìn)入主操作界面,如圖5.2所示。主界面(商品庫(kù)存告理系統(tǒng)) 亶操作庫(kù)存商品 供貨商家 商品ハ庫(kù) 商品出屋查詢商品信息商家信息 入庫(kù)信息ー ー出庫(kù)信息特殊功能庫(kù)存報(bào)警| 修改密碼|系統(tǒng)操作日志 幫助 關(guān)于 汜出圖5.2主界面測(cè)試2名稱:商品的增加、刪除、修改記錄測(cè)試目的:測(cè)試商品操作界面。內(nèi)容:合理性檢查、合法性檢查,商品操作界面顯示控制步驟及操作:驅(qū)動(dòng)模塊調(diào)用之后,看是否能實(shí)現(xiàn)各個(gè)功能,并且查看數(shù)據(jù)庫(kù)中的數(shù)據(jù)是否做了相應(yīng)的改變。允許偏差:不允許任何偏差條件:goods表結(jié)果:如下所示點(diǎn)擊左邊列表框中的任意ー個(gè)行將會(huì)在右邊顯示,如圖5.3所示。商品操作商品ー.!商品.一I當(dāng)刖ー.丨最大...I最小..G0G0G0G0G0G0G0G3G3果蕉珠乓搬子刷干風(fēng)蘋香圖乒商品操作商品ー.!商品.一I當(dāng)刖ー.丨最大...I最小..G0G0G0G0G0G0G0G3G3果蕉珠乓搬子刷干風(fēng)蘋香圖乒棒桃牙餅電0005900520015215500015050〇〇〇〇〇112rs-i操作商品煽號(hào) ゆ78952商品名稱 偎子最大庫(kù)容[200商品I商品「當(dāng)前 大i最小.…GO708一G0708..G0713..G0713..G0713..G078952G08934G3214G395839果蕉珠乓棒子刷干風(fēng)
蘋香圖乒檯桃牙胡電筆球糖扇3001221000200050020012011007901001001001505010010020操作商品編號(hào) !*303525商品名稱 麻不一最大庫(kù)容 (2000最小庫(kù)容 卩90増加S)I修改(M)]刪除〇))最小庫(kù)容⑸0増加(A)|修改(M)|刪除(D)退出COnr圖5.3商品操作的顯示功能在商品右邊的文本框中輸入想要增加的商品信息,點(diǎn)擊“增加”按鈕就可以添加商品,如圖5.4所小。商品增加成功后將顯布在左邊的窗口中。l~a~l商品揍l~a~l退出里圖5.4增加商品
由圖5.6我們可以看到,剛剛我們添加的商品“襪子”,已經(jīng)在左邊的窗口中顯示出來了。但如果我們?cè)黾右粋€(gè)新的商品,商品號(hào)是商品表中已經(jīng)存在的話,將會(huì)提示錯(cuò)誤。比如我們加入商品號(hào)為G3214的商品(已經(jīng)存在,為餅干商品的商品號(hào)),點(diǎn)擊’‘添加"按鈕后將提示如下圖5.5錯(cuò)誤。原因是商品號(hào)是主鍵,主鍵是不能重復(fù)的。圖5.5不能重復(fù)插入選中窗口中的某一列,比如“襪子”,將在右邊顯示其相應(yīng)信息。在相應(yīng)的文本框中修改其數(shù)值,點(diǎn)擊“修改”按鈕后,新數(shù)值將顯示在左邊的窗口中。我們將其最大容量修改為300。具體如圖5.6、5.7所示。商品操作'XI3525[190操作商品編號(hào)商品名稱最大庫(kù)容最小庫(kù)容商品商品 當(dāng)前..最大最小0000〇〇9000500001111105112〇〇〇02000000002000021931?1*2521*1i7000590052000152155000筆球糖扇子果蕉珠其棒子刷干風(fēng)襪蘋香圖乒棒桃牙餅電003525G0708..GO708一60713..00713..G0713..GO78952608934G3214G395839nr商品操作新品.!商品.一I當(dāng)刖.."T最大...;最小...003525G0708...GO708.一G0713...G0713...G0713...GO78952G08934G3214G395839子果蕉珠乓棒子刷干風(fēng)秣蘋香圖乒棒桃牙餅電筆球糖扇000590052000152155000〇〇〇0020000000002000021933112521170000〇〇900050000?????????4ーーー?一??操作商品編號(hào)商品名稱最大庫(kù)容最小庫(kù)容增加色)Iー刪除色)修改色)I圖5.7商品修改成功點(diǎn)擊選中左邊的某個(gè)商品,單擊“刪除”按鈕,左邊將不再顯示該商品,說明該商品已被刪除,我們這里選“襪子”商品,結(jié)果如圖5.8所示。三三[三’三商品..商品..丨當(dāng)前...最大最小.G0708..¢0708..G0713..G0713..G0713..G078Q52G08934G321463gs83g扇果蕉珠乓棒子刷干FL蘋香圖兵檯桃牙tff電00059005200152155000操作商品徧號(hào) r商品名稱 r最大庫(kù)容「最小庫(kù)容「ー里加S)|修改例)I則除〇))]_退出〇〇測(cè)試3名稱:商家的增加、刪除、修改記錄測(cè)試。目的:測(cè)試商家操作界面。內(nèi)容:是否存在該記錄、合理性檢查、合法性檢查商家對(duì)話框顯示控制等步驟及操作:驅(qū)動(dòng)模塊調(diào)用之后,看是否能實(shí)現(xiàn)各個(gè)功能,并且查看數(shù)據(jù)庫(kù)中的數(shù)據(jù)是否做了相應(yīng)的改變。允許偏差:不允許任何偏差條件:provider表結(jié)果:如下所示同樣,點(diǎn)擊上面列表框中的信息將顯示在下面各個(gè)文本框中。點(diǎn)擊“增加”、“修改”、“刪除”、“退出”按鈕將實(shí)現(xiàn)相應(yīng)的功能,與“庫(kù)存商品”界面類似,測(cè)試結(jié)果都正常,這里不再贅述。測(cè)試4名稱:商品入庫(kù)測(cè)試。目的:測(cè)試入庫(kù)功能。內(nèi)容:入庫(kù)商品檢查、合理性檢查、合法性檢查,數(shù)據(jù)庫(kù)修改。步驟及操作:驅(qū)動(dòng)模塊調(diào)用之后,看是否能進(jìn)行入庫(kù)操作,并打開數(shù)據(jù)庫(kù)直接察看是否做了相應(yīng)的改變。允許偏差:不允許任何偏差條件:inlib表結(jié)果:如下所示填入所有信息后單擊“確定”按鈕將提示入庫(kù)成功,具體操作如圖5.9、5.10所示。單擊“取消”按鈕將返回主界面。
圖5.10入庫(kù)成功測(cè)試5名稱:商品出庫(kù)測(cè)試。目的:測(cè)試出庫(kù)功能。內(nèi)容:出庫(kù)的商品及其現(xiàn)有庫(kù)存量、出庫(kù)后的商品數(shù)量。步驟及操作:驅(qū)動(dòng)模塊調(diào)用之后,看是否能實(shí)現(xiàn)出庫(kù),并打開數(shù)據(jù)庫(kù)直接察看結(jié)果是否正確允許偏差:不允許任何偏差條件:outlib表結(jié)果:如下所示選擇要出庫(kù)的商品,會(huì)自動(dòng)顯示其現(xiàn)有數(shù)量,如圖5.11所示。確定取消
確定取消當(dāng)我們?cè)凇俺鰩?kù)數(shù)量”中輸入50時(shí),點(diǎn)擊確定按鈕,將出現(xiàn)如圖5.12所示的界面,再次點(diǎn)擊“采石茶干”時(shí)我們發(fā)現(xiàn)現(xiàn)有數(shù)量已經(jīng)變成了100.如圖5.13所示。圖5.12出庫(kù)成功圖5.13出庫(kù)后的結(jié)果現(xiàn)在我們?cè)賹ⅰ安墒韪伞背鰩?kù)200,將會(huì)顯示如圖5.14所示的提示。GMS ,江!庫(kù)存不足,請(qǐng)重新購(gòu)入出庫(kù)數(shù)量誦疋圖5.14庫(kù)存不足測(cè)試6名稱:顯示測(cè)試。目的:測(cè)試顯示功能。內(nèi)容:顯示界面顯示控制,能否顯示相應(yīng)的信息。步驟及操作:驅(qū)動(dòng)模塊調(diào)用之后,看是否能正確顯示各個(gè)模塊的信息允許偏差:不允許任何偏差條件:log、goods、provider、inlib、outlib表結(jié)果:如下所示各個(gè)模塊都能正常顯示數(shù)據(jù)。其具體界面見4.2.7總結(jié)通過這次畢業(yè)設(shè)計(jì),我體會(huì)到了很多,首先要把大學(xué)這四年所學(xué)的東西全部學(xué)以致用,在有限的時(shí)間內(nèi),ー個(gè)人完成一個(gè)獨(dú)立的項(xiàng)目,的確是ー個(gè)極大的挑戰(zhàn)。但是在這個(gè)挑戰(zhàn)中我學(xué)習(xí)到了很多,不會(huì)的就到圖書管翻閱資料、或者去網(wǎng)上搜索,或者請(qǐng)教老師和同學(xué),特別是老師和同學(xué)們,給予了我很大的幫助。在程序的設(shè)計(jì)中遇到了很多問題,印象深刻的就是開始的時(shí)候數(shù)據(jù)庫(kù)連接,怎么也連接不上總是提示用戶登錄失敗,以為是連接字符串的問題,但是改來改去也沒能解決問題,后來嘗試性的改了DSN的服務(wù)器,還有登錄用戶名,オ發(fā)現(xiàn)是服務(wù)器連接錯(cuò)誤,改了之后就運(yùn)行起來了。畢業(yè)設(shè)計(jì)給我?guī)淼牟粌H僅是挑戰(zhàn),更是機(jī)遇,他教會(huì)我如何去發(fā)現(xiàn)問題,然后如何解決問題,教我不能放棄,要一直的努力才能得到最后的勝利。通過畢業(yè)設(shè)計(jì)我不僅僅知道了更多的軟件方面的知識(shí),也學(xué)會(huì)了一些新的思考方式。致謝畢業(yè)設(shè)計(jì)是大學(xué)四年最后的ー個(gè)綜合能力設(shè)計(jì)應(yīng)用的總結(jié)。它給我們提供了ー個(gè)將自己平時(shí)所學(xué)的理論知識(shí)轉(zhuǎn)化成實(shí)際工作成果的機(jī)會(huì),它讓我們靈活的運(yùn)用所學(xué)過的知識(shí),去解決實(shí)際中的問題。通過本次學(xué)習(xí),我在理論知識(shí)和實(shí)踐知識(shí)方面都有了很大的收獲。在本次畢業(yè)設(shè)計(jì)中,我特別要感謝的是我的指導(dǎo)老師孫國(guó)華老師!在論文題目的選定、資料查閱、收集和寫作的整個(gè)過程中,孫老師都給予我細(xì)心指導(dǎo)和耐心幫助。孫老師認(rèn)真負(fù)責(zé)的工作態(tài)度,扎實(shí)嚴(yán)謹(jǐn)?shù)闹螌W(xué)精神和精益求精的理論水平都使我受益匪淺。在孫老師的幫助下,我的專業(yè)知識(shí)和專業(yè)能力達(dá)到了質(zhì)的飛躍。這一切對(duì)于我在以后的工作和學(xué)習(xí)中都有著巨大的幫助。在此,我在這里再次忠心的感謝孫老師在系統(tǒng)開發(fā)過程中給予我的大力幫助,使我有信心解決難題,ー步步的完成畢業(yè)設(shè)計(jì),使得系統(tǒng)能及時(shí)開發(fā)完成。同時(shí)還要向給予我無微不至的關(guān)心和幫助的學(xué)校各級(jí)領(lǐng)導(dǎo)和教師以及同學(xué)表達(dá)最誠(chéng)摯的謝意。參考文獻(xiàn)!謝勇.VisualC++6.0實(shí)例精通.北京:科學(xué)出版社,20002楊章偉.21天學(xué)通VisualC++.北京:電子工業(yè)出版社,20093趙松濤.中文版SQLServer2000應(yīng)用及實(shí)例集錦.北京:人民郵電出版社,20024林福泉.SQLServer2000中小企業(yè)實(shí)務(wù)應(yīng)用.北京:中國(guó)鐵道出版社,20015文龍,張自輝,胡開勝等.SQLServer2005中文版入門與提高.北京:清華大學(xué)出版社,20076明日科技.VisualC++項(xiàng)目開發(fā)實(shí)例自學(xué)手冊(cè).北京:人民郵電出版社,20087李博宣.VisualC++6.0數(shù)據(jù)庫(kù)開發(fā)指南.北京:清華大學(xué)出版社,20008黃明,梁旭,周紹斌.VisualC++信息系統(tǒng)設(shè)計(jì)與開發(fā)實(shí)例.北京:機(jī)械工業(yè)出版社,20059龍帥.深入淺出SQLServer數(shù)據(jù)庫(kù)開發(fā).北京:中國(guó)青年出版社,200610三揚(yáng)科技.VisualC++開發(fā)入行真功夫.北京:電子工業(yè)出版社,2009(美)CJDate.AnIntroductiontoDATABASESYSTEMS.北京:機(jī)械工業(yè)出版社,2002(美)薩維奇(SavitchW).PROBLEMSOLVINGWITHC++:TheObjectofProgramming(FifthEdition).北京:高等教育出版社,2006(美)ThinkinginC++(SecondEdition),北京:機(jī)械工業(yè)出版社,200214特別感謝百度知道、CSDN、MSDN、豆丁網(wǎng)等論壇給予的幫助。附錄一:部分程序代碼1數(shù)據(jù)庫(kù)連接數(shù)據(jù)庫(kù)連接采用的是ADO形式,主要實(shí)現(xiàn)代碼如下所示:CGMSApp::CGMSApp()(]CGMSApptheApp;CStringstrAdminName;BOOLCGMSApp::InitInstance()(AfxEnableControlContainer();#ifdef_AFXDLLEnable3dControls(); //CallthiswhenusingMFCinasharedDLL#elseEnable3dControlsStatic();//CallthiswhenlinkingtoMFCstatically#endifif(FAILED(::CoInitialize(NULL))){AfxMessageBox(nADOInitfailed");returnfalse;m_pConn.CreateInstance(_uuidof(Connection)); 〃初始化連接指針m_pConn->Open(,,Provider=MSDASQL;DSN=smn,',sa,,,,n',adConnectUnspecified); 〃設(shè)置連接字符串}//CatchExceptionscatch(_com_error&e){CStringerr;err.Format("%s”,(char*)(e.Description()));AfxMessageBox(err);)catch(...)AfxMessageBox("UnknownError...");}//InitADORecordSetm_pRs.CreateInstance(_uuidof(Recordset));CGMSDlgdig;m_pMainWnd=&dlg;intnResponse=dlg.DoModal();if(nResponse==IDOK)(//dismissedwithOK}elseif(nResponse=IDCANCEL)(//dismissedwithCancel}//Sincethedialoghasbeenclosed,returnFALSEsothatweexitthe//application,ratherthanstarttheapplication'smessagepump.returnFALSE;)boolCGMSApp::ADOExecute(_RecordsetPtr&ADOSet,_variant_t&strSQL){if(ADOSet->State==adStateOpen)〃獲取連接狀態(tài),若為打開狀態(tài)則關(guān)閉ADOSet->Close();try(ADOSet->Open(strSQL,m_pConn.GetInterfacePtr(),adOpenStatic,adLockOptimistic,adCmdUnknown);returntrue;)catch(_com_error&e)(CStringerr;err.Format("ADOError:%s”,(char*)e.Description。);AfxMessageBox(err);returnfalse;}}
2主界面其主要實(shí)現(xiàn)代碼如下:voidCMainDlg::OnButtonOut() 〃隱藏主窗口,進(jìn)入出庫(kù)信息界而CViewDlgdig;this->ShowWindow(SW_HIDE);dlg.Init(3);dlg.DoModal();this->ShowWindow(SW_SHOW);)〃隱藏上窗口,進(jìn)入庫(kù)存報(bào)警界voidCMainDlg::OnButtonAlert()〃隱藏上窗口,進(jìn)入庫(kù)存報(bào)警界CAlertDlgdig;dlg.DoModal();)voidCMainDlg::OnButtonAdmin()CAlertDlgdig;dlg.DoModal();)voidCMainDlg::OnButtonAdmin()改密碼界面(CPasswdDlgdig;dlg.DoModal();}voidCMainDlg::OnButtonLog()日志界面(CViewDlgdig;this->ShowWindow(SW_HIDE);dlg.Init(5);dlg.DoModal();this->ShowWindow(SW_SHOW);)voidCMainDlg::OnButtonHelp()助界面〃隱藏主窗口,進(jìn)入修〃隱藏主窗口,進(jìn)入操作〃隱藏主窗口,進(jìn)入幫WinExecCnotepad.exeGPS.HEP",SW_SHOW);}voidCMainDIg::OnButtonAbout() 〃隱藏主窗口,進(jìn)入關(guān)于界面CAboutDlgdig;dlg.DoModal();)voidCMainDIg::OnButtonExit() 〃隱藏主窗口,然后退出系統(tǒng){OnOK();}3庫(kù)存商品其主要實(shí)現(xiàn)代碼如下所示:BOOLCGoodsDlg::OnInitDialog() 〃初始化對(duì)話框{CDialog::OnInitDialog();m」istDisp.InsertColumn(〇,”商品編號(hào)");m」istDisp.InsertColumn(1商品名稱”);m」istDisp.InsertCohimn(2當(dāng)前庫(kù)存");11I」1§1ロ1§卩.1115?11(ス11I0!11(3,“最大庫(kù)存”);m_listDisp.!nsertColumn(4J最小庫(kù)存");RECTrect;m_listDisp.GetWindowRect(&rect);intwid=rect.right-rect.left;m_listDisp.SetColumnWidth(0,wid/5);m_listDisp.SetColumnWidth(1,wid/5);m_listDisp.SetColumnWidth(2,wid/5);m_listDisp.SetColumnWidth(3,wid/5);m_listDisp.SetColumnWidth(4,wid/5);mJistDisp.SetExtendedStyle(LVS_EX_FULLROWSELECT);RefreshData();returnTRUE;//returnTRUEunlessyousetthefocustoacontrol//EXCEPTION:OCXPropertyPagesshouldreturnFALSE}voidCGoodsDlg::ClearTxt() 〃清空各個(gè)文本控件(m_strCodeゴ";m_strName="";m_strMaxNum="";m__strMinNum=nu;UpdateData(false);)voidCGoodsDlg::RefreshData() 〃更新數(shù)據(jù)(m」istDisp.DeleteAHItems();m」istDisp.SetRedraw(FALSE);_variant_tHolder,strQuery;strQuery="select*fromgoods'1;theApp.ADOExecute(theApp.m_pRs,strQuery);intiCount=theApp.m_pRs->GetRecordCount();if(0==iCount)return;theApp.m_pRs->MoveFirst();inti=0;while(!theApp.m_pRs->adoEOF)(Holder=theApp.m_pRs->GetCollect("G_code");if(Holder.vt!=VT_NULL)m_listDisp.InsertItem(i,(char*)(_bstr_t)Holder);Holder=theApp.m_pRs->GetCollect("G_name");if(Holder.vt!=VT_NULL)m_listDisp.SetItemText(i,l,(char*)(_bstr_t)Holder);Holder=theApp.m_pRs->GetCollect("Current_number");if(Holder.vt!=VT_NULL)m_listDisp.SetItemText(i,2,(char*)Cbstr_t)Holder);Holder=theApp.m_pRs->GetCollect("Max_number");if(Holder.vt!=VT_NULL)m_listDisp.SetItemText(i,3,(char*)(_bstr_t)Holder);Holder=theApp.m_pRs->GetCollect("Min_number");if(Holder.vt!=VT_NULL)m_listDisp.SetItemText(i,4,(char*)(_bstr_t)Holder);theApp.m_pRs->MoveNext();i++;)m_listDisp.SetRedraw(TRUE);}voidCGoodsDIg::OnButtonExit() 〃退出商品操作界面OnOK();)voidCGoodsDlg::OnClickListDisp(NMHDR*pNMHDR,LRESULT*pResult)〃單擊選中左邊列表框中的某行在右邊現(xiàn)實(shí)(inti=m_listDisp.GetSelectionMark();m_strCode=m_listDisp.GetItemText(i,O);m_strName=m_listDisp.GetItemText(i,1);m_strMaxNum=m_listDisp.GetItemText(i,3);m_strMinNum=m」istDisp.GetItemText(i,4);UpdateData(FALSE);*pResult=0;}4供貨商家其主要實(shí)現(xiàn)代碼如下:voidCProviderDlg::RefreshData() 〃更新數(shù)據(jù){m_listDisp.DeleteAHItems();m_listDisp.SetRedraw(FALSE);_variant_tHolder,strQuery;strQuery="select*fromprovider";theApp.ADOExecute(theApp.m_pRs,strQuery);intiCount=theApp.m_pRs->GetRecordCount();if(0==iCount)return;theApp.m_pRs->MoveFirst();inti=0;while(!theApp.m_pRs->adoEOF)(Holder=theApp.m_pRs->GetCollect("Provider_code");if(Holder.vt!=VT_NULL)m_listDisp.InsertItem(i,(char*)Qbstr_t)Holder);Holder=theApp.m_pRs->GetCollect("Provider_name");if(Holder.vt!=VT_NULL)m_listDisp.SetItemText(i,l,(char*)(_bstr_t)Holder);Holder=theApp.m_pRs->GetCollect("Provider_address");if(Holder.vt!=VT_NULL)m」istDisp.Set!temText(i,2,(char*)(_bstr_t)Holder);Holder=theApp.m_pRs->GetCollect(nProvider_personu);if(Holder.vt!=VT_NULL)m_listDisp.SetItemText(i,3,(char*)(_bstr_t)Holder);Holder=theApp.m_pRs->GetCollect(',Provider__telphoneH);if(Holder.vt!=VT_NULL)m_listDisp.SetItemText(i,4,(char*)(_bstr_t)Holder);Holder=theApp.m_pRs->GetCollect(',Provider_emair,);if(Holder.vt!=VT_NULL)mJistDisp.SetItemText(i,5,(char*)(_bstr_t)Holder);theApp.m_pRs->MoveNext();i++;}m_listDisp.SetRedraw(TRUE);}BOOLCProviderDlg::OnInitDialog() 〃初始供應(yīng)商化對(duì)話框(CDialog::OnInitDialog();m」istDisp.InsertColumn(〇,"編號(hào)”);mJistDisp.InsertColumn(1,"名稱”);m」istDisp.InsertColumn(2,“地址”);m」istDisp.InsertColumn(3,”負(fù)責(zé)人”);m」istDisp.InsertColumn(4,”電話”);m_listDisp.InsertColumn(5,"Email'1);RECTrect;m」istDisp.GetWindowRect(&rect);intwid=rect.right-rect.left;m」istDisp.SetColumnWidth(0,wid/6);m_listDisp.SetColumnWidth(1,wid/6);m_listDisp.SetColumnWidth(2,wid/6);m_listDisp.SetColumnWidth(3,wid/6);m」istDisp.SetColumnWidth(4,wid/6);m」istDisp.SetColumnWidth(5,wid/6);mJistDisp.SetExtendedStyle(LVS_EX_FULLROWSELECT);RefreshData();returnTRUE;//returnTRUEunlessyousetthefocustoacontrol//EXCEPTION:OCXPropertyPagesshouldreturnFALSEvoidCProviderDlg::ClearTxt() 〃清空供應(yīng)商對(duì)話框中的各個(gè)文本控件(m_strAddress=,M,;m_strCode=,M,;m_strName=,M,;m_strEmail=,n,;m_strPerson=,,M;m_strPhone="u;UpdateData(false);}voidCProviderDlg::OnClickListDisp(NMHDR*pNMHDR,LRESULT*pResult) 〃單擊左邊列表框中的某行,將在右邊文本框中顯示{inti=m」istDisp.GetSelectionMark();m_strCode=m」istDisp.GetItemText(i,〇);m_strName=m_listDisp.GetItemText(i,1);m_strAddress=m_listDisp.GetItemText(i,2);m_strPerson=m」istDisp.GetItemText(i,3);m_strPhone=m」istDisp.GetItemText(i,4);m_strEmail=m_listDisp.GetItemText(i,5);UpdateData(FALSE);*pResult=0;}5商品入庫(kù)其主要實(shí)現(xiàn)代碼如下所示:BOOLCInDlg::OnInitDialog() 〃初始化入庫(kù)對(duì)話框(CDialog::OnInitDialog();m_Date=CTime::GetCurrentTime();m_Time=m_Date;m_cbGoods.SetRedraw(false);m_cbProvider.SetRedraw(false);_variant_tHolder,strQuery;strQuery="select*fromgoods";theApp.ADOExecute(theApp.m_pRs,strQuery);intiCount=theApp.m_pRs->GetRecordCount();if(0==iCount)returnTRUE;theApp.m_pRs->MoveFirst();inti=0;while(!theApp.m_pRs->adoEOF)(Holder=theApp.m_pRs?>GetCollect("G_name");if(Holder.vt!=VT_NULL)m_cbProvider.AddString((LPCTSTR)(_bstr_t)Holder);theApp.m_pRs->MoveNext();i++;}strQuery="select*fromprovider";theApp.ADOExecute(theApp.m_pRs,strQuery);iCount=theApp.m_pRs->GetRecordCount();if(0==iCount)returnTRUE;theApp.m_pRs->MoveFirst();i=0;while(!theApp.m_pRs->adoEOF)(Holder=theApp.m_pRs->GetCollect("Provider_name");if(Holder.vt!=VT_NULL)m_cbProvider.AddString((LPCTSTR)(_bstr_t)Holder);theApp.m_pRs->MoveNext();i++;)m_cbGoods.SetRedraw(true);m_cbProvider.SetRedraw(true);UpdateData(FALSE);returnTRUE;//returnTRUEunlessyousetthefocustoacontrol//EXCEPTION:OCXPropertyPagesshouldreturnFALSE)voidCInDig::OnButtonOk() 〃獲取商品號(hào)、供應(yīng)商號(hào)(UpdateData();m_cbGoods.GetWindowText(m_strGoodsName);m_cbProvider.GetWindowText(m_strProviderName);CStringstrGcode,strPcode;GetGoodsCode(m_strGoodsName,strGcode);GetProviderCode(m_strProviderName,strPcode);AddIn(strGcode,strPcode);AddGoods(atoi(m_strNum));)voidClnDlg::GetGoodsCode(CStringstrName,CString&strCode)現(xiàn)商品顯不在下拉列表的功能(_variant_tHolder,strQuery;strQuery="select*fromgoodswhereG_name士”+strName+”'“;theApp.ADOExecute(theApp.m_pRs,strQuery);theApp.m_pRs->MoveFirst();Holder=theApp.m_pRs->GetCollect("G_code");if(Holder.vt!=VT_NULL)strCode=Holder.bstrVal;)voidCInDlg::GetProviderCode(CStringstrName,CString&strCode)//實(shí)現(xiàn)商家顯示在下拉列表的功能(.variant」Holder,strQuery;strQuery="select*fromproviderwhereProvider_name士"+strName+"”';theApp.ADOExecute(theApp.m_pRs,strQuery);theApp.m_pRs->MoveFirst();Holder=theApp.m_pRs->GetCollect("Provider_code");if(Holder.vt!=VT_NULL)strCode=Holder.bstrVal;)voidClnDlg::OnButtonCancel() 〃退出入庫(kù)界面(OnCancel();}6商品出庫(kù)其主要實(shí)現(xiàn)代碼如下所示:voidCOutDlg::OnButtonCancel() 〃退出出庫(kù)界面
OnCancel();BOOLCOutDlg::OnInitDialog() 〃初始化出庫(kù)對(duì)話框{CDialog::OnInitDialog();m_Date=CTime::GetCurrentTime();m_Time=m_Date;m_cbGoods.SetRedraw(false);_variant_tHolder,strQuery;strQuery="select*fromgoods";theApp.ADOExecute(theApp.m_pRs,strQuery);intiCount=theApp.m_pRs->GetRecordCount();if(0==iCount)returnTRUE;theApp.m_pRs->MoveFirst();inti=0;while(!theApp.m_pRs->adoEOF)(Holder=theApp.m_pRs->GetCollect("G_name");if(Holder.vt!=VT_NULL)m_cbGoods.AddString((LPCTSTR)(_bstr_t)Holder);theApp.m_pRs->MoveNext();i++;)m_cbGoods.SetRedraw(true);UpdateData(FALSE);returnreturnTRUE;//returnTRUEunlessyousetthefocustoacontrol//EXCEPTION:OCXPropertyPagesshouldreturnFALSE}voidCOutDlg::OnCancelMode()(CDialog::OnCancelMode();)voidCOutDlg::OnSelchangeComboGoods()〃獲取商品當(dāng)前數(shù)量UpdateData();m_cbGoods.GetLBText(m_cbGoods.Ge
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 三年級(jí)下冊(cè)數(shù)學(xué)教案-解決問題的策略1-蘇教版
- 電子購(gòu)物車中的價(jià)格敏感度與心理論證分析
- 2025年中國(guó)輕食行業(yè)市場(chǎng)深度研究及投資戰(zhàn)略規(guī)劃報(bào)告
- 電商平臺(tái)的數(shù)據(jù)分析與市場(chǎng)預(yù)測(cè)研究
- 2025年中國(guó)他克莫司市場(chǎng)發(fā)展前景預(yù)測(cè)及投資戰(zhàn)略咨詢報(bào)告
- 湖南某茶廠茶葉項(xiàng)目可行性研究報(bào)告
- 2025年激光線切割加工行業(yè)深度研究分析報(bào)告
- 2025年中國(guó)涌泉噴頭行業(yè)市場(chǎng)調(diào)查研究及投資前景預(yù)測(cè)報(bào)告
- 2025年中國(guó)復(fù)方酮康唑軟膏行業(yè)發(fā)展?jié)摿︻A(yù)測(cè)及投資戰(zhàn)略研究報(bào)告
- 筍罐頭項(xiàng)目可行性研究報(bào)告
- 集裝箱知識(shí)培訓(xùn)課件
- 某縣城區(qū)地下綜合管廊建設(shè)工程項(xiàng)目可行性實(shí)施報(bào)告
- 2025年度民政局離婚協(xié)議書范本模板官方修訂2篇
- 《百達(dá)翡麗名表介紹》課件
- 2025版《VOCs廢氣處理設(shè)施安全檢查表》(全)
- JJF(京) 92-2022 激光標(biāo)線儀校準(zhǔn)規(guī)范
- 整形醫(yī)院客戶管理培訓(xùn)
- 七年級(jí)語(yǔ)文下冊(cè)全冊(cè)完整課件(部編版)
- 普惠金融政策解讀
- 2024年疾控中心支部工作計(jì)劃范本
- 砌筑工的培訓(xùn)
評(píng)論
0/150
提交評(píng)論