超市管理系統(tǒng)畢業(yè)設(shè)計(jì)畢業(yè)論文

上傳人:1888****888 文檔編號:38658706 上傳時間:2021-11-08 格式:DOC 頁數(shù):31 大?。?.44MB
收藏 版權(quán)申訴 舉報(bào) 下載
超市管理系統(tǒng)畢業(yè)設(shè)計(jì)畢業(yè)論文_第1頁
第1頁 / 共31頁
超市管理系統(tǒng)畢業(yè)設(shè)計(jì)畢業(yè)論文_第2頁
第2頁 / 共31頁
超市管理系統(tǒng)畢業(yè)設(shè)計(jì)畢業(yè)論文_第3頁
第3頁 / 共31頁

下載文檔到電腦,查找使用更方便

15 積分

下載資源

還剩頁未讀,繼續(xù)閱讀

資源描述:

《超市管理系統(tǒng)畢業(yè)設(shè)計(jì)畢業(yè)論文》由會員分享,可在線閱讀,更多相關(guān)《超市管理系統(tǒng)畢業(yè)設(shè)計(jì)畢業(yè)論文(31頁珍藏版)》請?jiān)谘b配圖網(wǎng)上搜索。

1、 1超市管理系統(tǒng)超市管理系統(tǒng)摘摘 要要近年來,計(jì)算機(jī)技術(shù)日趨成熟,數(shù)據(jù)庫技術(shù)不斷發(fā)展,管理信息系統(tǒng)的應(yīng)用已延伸到社會的各個領(lǐng)域。結(jié)合管理信息系統(tǒng)的開發(fā)方法及步驟,以此為理論基礎(chǔ),開發(fā)出一個小型的信息管理系統(tǒng)超市管理系統(tǒng)。超市管理是超市的開展日常運(yùn)營活動的必須的環(huán)節(jié)。傳統(tǒng)的手工管理方式不但浪費(fèi)人力、時間,而且管理復(fù)雜,易出差錯?;谟?jì)算機(jī)技術(shù)的完備的超市管理系統(tǒng)把一些繁瑣的數(shù)據(jù)計(jì)算、信息處理化為簡單的指令操作。完全實(shí)現(xiàn)數(shù)據(jù)信息的電算化管理,徹底把人從手工管理中解放出來。經(jīng)過艱苦的努力,我們終于實(shí)現(xiàn)了預(yù)期的設(shè)計(jì)目標(biāo),開發(fā)出這套具有一定實(shí)用價值的超市管理系統(tǒng),使用這套系統(tǒng)有利于提高超市商家的勞動生產(chǎn)

2、率,節(jié)約運(yùn)營成本,增加經(jīng)濟(jì)效益。本文主要介紹了該系統(tǒng)生成的背景及 Visual Basic 6.0 和 Access 的一般原理。闡述了本管理系統(tǒng)的結(jié)構(gòu)及工作原理;設(shè)計(jì)實(shí)現(xiàn)了登錄模塊、銷售統(tǒng)計(jì)、查看數(shù)據(jù)表、主界面的實(shí)現(xiàn);分析并解決了現(xiàn)實(shí)中的若干技術(shù)問題。關(guān)鍵詞關(guān)鍵詞數(shù)據(jù)庫 Visual Basic6.0 超市管理 2AbstractIn recent years, the computer technique has become more and more ripe; the database technique develops constantly and the application

3、 of the information management system has stretched into every field of our society. Combining the methods and steps of the information management system and basing on the theory of it, I developed a small information management systemthe super market management system.The management of super market

4、 is a necessary part of the companys daily operation. Traditional way is a waste of human resources and time, and it is complicated and often runs with mistakes. Based on the computer technique, the perfect shopping management turns those complicated data calculation and information processing into

5、simple instructions.It realized the electronic management of data information completely. It liberates people from the human management entirely. After hard work, I finally realized my design as expected, and developed this practical and valuable book-sell management system. Using it will raise the

6、working rate, reduce the cost and raise the economic benefit of the company. This paper mainly introduces the develop background of the system and the basic theory of Visual Basic 6.0 and Access Visual. It tells the structure of the super market management system and its working theory; it analyzes

7、the specialty, difficulty and important things in system realization. The design realizes the management of the system users, the basic information, the business, and the members management.Keywords:Database Visual Basic6.0 The super market management 3目錄目錄摘 要.1ABSTRACT.2目錄 .3緒論.41.系統(tǒng)開發(fā)工具.51.1 VISUA

8、L BASIC簡介.51.1.1 什么是 Visual Basic1.51.1.3 Visual Basic 的特點(diǎn)1.51.2 ACCESS 2002.61.2.1 Access 簡介3.61.2.2 Access 2002 和數(shù)據(jù)庫的關(guān)系4.72.可行研究和需求分析性.82.1 可行性研究5.82.2 需求分析.83.系統(tǒng)總體設(shè)計(jì)方案.103.1 系統(tǒng)功能分析.103.2 數(shù)據(jù)庫設(shè)計(jì).103.3 系統(tǒng)功能模塊設(shè)計(jì).123.4 系統(tǒng)功能介紹.144. 系統(tǒng)各模塊的設(shè)計(jì)及實(shí)現(xiàn).184.1 用戶控制模塊及界面詳細(xì)設(shè)計(jì).184.2 主窗體.194.3 交易管理模塊及界面設(shè)計(jì).2044 進(jìn)貨統(tǒng)計(jì)模塊

9、及界面設(shè)計(jì).2445 銷售統(tǒng)計(jì)模塊及界面設(shè)計(jì).264.6 查看數(shù)據(jù)表功能模塊的設(shè)計(jì).2747 模塊及界面設(shè)計(jì).304.8 關(guān)于界面的設(shè)計(jì).31結(jié)論.31致謝.32參考文獻(xiàn).32 4緒論隨著科學(xué)技術(shù)的不斷提高,計(jì)算機(jī)科學(xué)日漸成熟,其強(qiáng)大的功能已為人們深刻認(rèn)識,它已進(jìn)入人類社會的各個領(lǐng)域并發(fā)揮著越來越重要的作用。而當(dāng)今時代是飛速發(fā)展的信息時代,各行各業(yè)都離不開信息處理。計(jì)算機(jī)的最大好處在于可以利用它進(jìn)行信息管理。使用計(jì)算機(jī)進(jìn)行信息管理,不僅提高了工作效率,而且大大的提高了其安全性。超市管理是超市中不可缺少的重要部分,超市的管理信息量繁多,包含很多信息的數(shù)據(jù)管理?,F(xiàn)今,大多數(shù)大型超市商場都使用計(jì)算機(jī)

10、進(jìn)行信息管理,而小型超市商店仍然采用傳統(tǒng)的人工管理方式,這種管理方式存在著許多缺點(diǎn),如:效率低、工作量大等,而且,隨著購買者與超市數(shù)量的增長,對于超市的銷售、進(jìn)貨、退貨、交易管理等等,使更新和維護(hù)都帶來了不少的困難。本系統(tǒng)就是為了改變傳統(tǒng)的超市商店這種現(xiàn)狀所設(shè)計(jì)的。使用計(jì)算機(jī)對超市進(jìn)行管理,有著手工管理所無法比擬的優(yōu)點(diǎn)。例如:查看迅速、查找方便、可靠性高、存儲量大、保密性好、壽命長、成本低等。這些優(yōu)點(diǎn)能夠使超市管理進(jìn)入科學(xué)化、正規(guī)化的軌道。 51.系統(tǒng)開發(fā)工具1.1 Visual Basic 簡介1.1.1 什么是 Visual Basic1“Visual”的意思是“可視的” ,指的是開發(fā)圖形

11、用戶界面(GUI)的方法。讀者不需編寫大量代碼去描述界面元素的外觀和位置,而只要把預(yù)先建立的對象放到屏幕上即可。 “可視的 Basic”這個名字初聽起來可能抽象了點(diǎn),但實(shí)際上它卻是最形象的叫法,用戶只要看到 Visual Basic 的界面就會明白了,實(shí)際上它無需編程,就可以實(shí)現(xiàn)許多功能。在 Visual Basic 中還引入了控件的概念,在 Windows 中各種各樣的按扭、文本框等都是控件。Visual Basic 把這些控件模式化,并且每個控件都有若干屬性來控制它的外觀以及工作方法(Method) ,這樣用戶就可以象在畫板上作圖一樣,隨意按幾下鼠標(biāo)和按扭就可以完成一定的任務(wù),而這些在以前

12、的編程語言下是要編寫相當(dāng)復(fù)雜的代碼的?!癇asic”指的是 BASIC 語言,一種在計(jì)算技術(shù)發(fā)展史上應(yīng)用的最為廣泛的語言之一。Visual Basic 在原有 BASIC 語言的基礎(chǔ)上進(jìn)行了大量的擴(kuò)展,現(xiàn)在,從個人使用的小型工具軟件到大型企業(yè)的系統(tǒng)軟件,甚至通過網(wǎng)絡(luò)遍及全球的分布式應(yīng)用軟件,都可以使用 Visual Basic 開發(fā)。1.1.3 Visual Basic 的特點(diǎn)11.面向?qū)ο蟮目梢暬?在 Visual Basic6.0 中,應(yīng)用面向?qū)ο蟮某绦蛟O(shè)計(jì)方法(OOP) ,把程序和數(shù)據(jù)庫封裝在一起視為一個對象,而且每個對象都是可視的,程序員在設(shè)計(jì)時只需用現(xiàn)有的工具根據(jù)界面設(shè)計(jì)的要求,直接

13、在“窗體”上畫出諸如“按扭” 、“滾動條” 、 “文本框”等不同類型的對象,并為它們設(shè)置“屬性”編寫“事件”代碼即可,從而大大簡化了設(shè)計(jì)的復(fù)雜度。2.事件驅(qū)動的編程機(jī)制Visual Basic6.0 通過事件驅(qū)動來執(zhí)行對象的操作。在事件驅(qū)動的程序中,代碼不是按照預(yù)定的路徑執(zhí)行,而是在響應(yīng)不同的事件時執(zhí)行不同的代碼模塊。每個對象都有一個事件集,每個事件發(fā)生都要有有相應(yīng)的程序代碼來響應(yīng),即要執(zhí)行一段程序代碼。事件可以由用戶操作觸發(fā),也可以由操作系統(tǒng)或其他應(yīng)用程序的消息觸發(fā),甚至可以由應(yīng)用程序本身的消息觸發(fā)。這些事件的順序決定了代碼執(zhí)行的順序,因此應(yīng)用程序每次運(yùn)行時所經(jīng)過的代碼的路徑是不同的。在程序

14、設(shè)計(jì)時,不需要建立明顯的開始和結(jié)束的大塊應(yīng)用程序,也不需要指出 6先執(zhí)行哪部分代碼和按什么順序執(zhí)行代碼,只需編寫一些針對事件的許多小的模塊子程序(也稱過程) 。3.交互式的程序開發(fā)過程傳統(tǒng)的編程過程分三個步驟:編寫源程序、將源程序編譯和連接生成可執(zhí)行的二進(jìn)制代碼和最后運(yùn)行生成可執(zhí)行的二進(jìn)制代碼。而 Visual Basic6.0 采用的是交互式方法開發(fā)應(yīng)用程序,使三個步驟之間不再有明顯的界限。傳統(tǒng)的編程中,如果編寫源程序中出現(xiàn)錯誤,只有在編譯和運(yùn)行時才會被編譯器捕捉,此時必須先返回編輯狀態(tài)修改錯誤,然后再編譯、連接和運(yùn)行,直到正確為止。Visual Basic 編程在輸入代碼時便進(jìn)行解釋,即時

15、捕獲并突出顯示大多數(shù)語法或拼寫錯誤,同時將出現(xiàn)警告對話框,并將出錯的源代碼以紅色顯示,方便用戶及時修改程序。4.提供強(qiáng)大的數(shù)據(jù)庫訪問工具隨著計(jì)算機(jī)技術(shù)的發(fā)展,數(shù)據(jù)庫越來越顯示出其強(qiáng)大的數(shù)據(jù)存儲和數(shù)據(jù)管理能力。為了滿足人們對數(shù)據(jù)庫的需要,Visual Basic 提供了強(qiáng)大的數(shù)據(jù)庫程序設(shè)計(jì)能力。它不僅能管理 Microsoft Access 格式的數(shù)據(jù)庫,還能訪問其他外部數(shù)據(jù)庫,如 FoxPro,Paradox 等格式的數(shù)據(jù)庫。另外,Visual Basic 還提供了開放式數(shù)據(jù)庫連接(ODBC)功能,可以通過直接訪問或建立連接的方式使用并操作后臺大型網(wǎng)絡(luò)數(shù)據(jù)庫,如 SQL Server,Orac

16、le 等。在應(yīng)用程序中可以使用結(jié)構(gòu)化查詢語言(SQL)直接訪問 Server 上的數(shù)據(jù)庫,并提供簡單的面向?qū)ο蟮膸觳僮髅?、多用戶?shù)據(jù)庫的加鎖機(jī)制和網(wǎng)絡(luò)數(shù)據(jù)庫的編程技術(shù),為單機(jī)上運(yùn)行的數(shù)據(jù)庫提供 SQL 網(wǎng)絡(luò)接口,以便于在分布式環(huán)境中快速而有效地實(shí)現(xiàn)客戶/服務(wù)器方案。5.充分利用 Windows 資源Visual Basic 提供的動態(tài)數(shù)據(jù)交換(DDE)編程技術(shù),可以在應(yīng)用程序中實(shí)現(xiàn)與其他 Windows 應(yīng)用程序建立動態(tài)數(shù)據(jù)交換、在不同的應(yīng)用程序之間進(jìn)行通信的功能。Visual Basic 提供的對象連接與嵌入(OLE)技術(shù)是將每個應(yīng)用程序都看作對象,將不同的對象連接起來,嵌入到某個應(yīng)用程序

17、中,從而可以得到具有聲音、影象、圖象、動畫、文字等各種信息的集合式文件。1.2 Access 20021.2.1 Access 簡介3 建立一個數(shù)據(jù)庫我們有多種選擇,現(xiàn)在市場上有各種各樣的數(shù)據(jù)庫,而且每一種數(shù)據(jù)庫都有其自身的特點(diǎn),不能說哪一種更好,只能在其中尋找一種能更好地適應(yīng)系統(tǒng)需求、更好地滿足用戶的要求以及適應(yīng)開發(fā)人員的習(xí)慣。在本 7系統(tǒng)中,作為超市管理系統(tǒng)是一個比較小的應(yīng)用系統(tǒng),它所產(chǎn)生和處理的數(shù)據(jù)量也比較小。因此,沒有必要使用像 SQL Server 和 Oracle 這樣的大型數(shù)據(jù)庫。Microsoft Office 中的 Access 數(shù)據(jù)庫在計(jì)算機(jī)上的應(yīng)用比較普及,是開發(fā)小型數(shù)據(jù)

18、庫系統(tǒng)的比較理想的選擇,所以,在本系統(tǒng)中我選擇了 Access 數(shù)據(jù)庫。 Access 作為一個數(shù)據(jù)庫管理系統(tǒng),它被集成在 Microsoft Office 中。Access 數(shù)據(jù)庫處理的基本結(jié)構(gòu),采取關(guān)系型數(shù)據(jù)庫模式。與其他的數(shù)據(jù)庫系統(tǒng)相比,Access 更加簡單易學(xué),一個普通的計(jì)算機(jī)用戶可以很快地掌握它。Access 2002 的功能十分強(qiáng)大,利用它可以方便地實(shí)現(xiàn)對信息保存、維護(hù)、查詢、統(tǒng)計(jì)、打印、交流、發(fā)布,而且它可以十分方便地與 Office 其他組件交流數(shù)據(jù),這些功能對一個一般用戶而言已經(jīng)足夠了。1.2.2 Access 2002 和數(shù)據(jù)庫的關(guān)系4Microsoft Access 從

19、本質(zhì)上說就是一個數(shù)據(jù)庫管理系統(tǒng),具體來說是一個關(guān)系數(shù)據(jù)庫管理系統(tǒng)(RDBMS) 。Access 主要用于中小型數(shù)據(jù)庫系統(tǒng)。它相對于其他數(shù)據(jù)庫產(chǎn)品來說開發(fā)時間比較晚,但由于它強(qiáng)大的功能和使用上的方便,使越來越多的用戶轉(zhuǎn)向Access,成為當(dāng)今最為通用的數(shù)據(jù)庫軟件。作為新一代 RDBMS 的代表,Microsoft Access 2002 提供了真正的關(guān)系數(shù)據(jù)庫管理。在 Access 數(shù)據(jù)庫中,數(shù)據(jù)是由表格組成的,在表格中有主關(guān)鍵字和外部關(guān)鍵字的定義,在數(shù)據(jù)庫中提供了完全的引用完整性,保證了數(shù)據(jù)庫的完整性。同時 Access 的表格具有數(shù)據(jù)確認(rèn)規(guī)則,以避免不精確的數(shù)據(jù)輸入。表格的每一個字段都具有自

20、己的格式和缺省的定義。Access 能作為獨(dú)立的數(shù)據(jù)庫管理系統(tǒng)使用,或作為客戶產(chǎn)生結(jié)構(gòu)化查詢語言這樣的服務(wù)程序。另外,Access 數(shù)據(jù)庫具有開放式數(shù)據(jù)庫互連性(ODBC)特性,用戶可以與許多外部數(shù)據(jù)相連接。Access 數(shù)據(jù)庫所能完成的功能基本是一個數(shù)據(jù)庫管理系統(tǒng)所應(yīng)具有的功能,概括如下:(1)根據(jù)需要制定 Access 數(shù)據(jù)庫系統(tǒng),對數(shù)據(jù)進(jìn)行保存、查閱和計(jì)算。(2)利用數(shù)據(jù)表存儲相應(yīng)的數(shù)據(jù)信息,為每一種實(shí)際對象的信息創(chuàng)建一個表,在表中對不同數(shù)據(jù)以不同方式保存。(3)按實(shí)際對象之間的關(guān)系,定義各個表之間的關(guān)系。(4)檢索用戶指定條件的數(shù)據(jù),創(chuàng)建相應(yīng)的查詢來進(jìn)行檢索,可以利用查詢更新或刪除多條

21、記錄,并對表中的數(shù)據(jù)執(zhí)行各種計(jì)算。(5)直接輸入、查看或更改數(shù)據(jù)庫中的數(shù)據(jù),利用表格或窗體完成。(6)對數(shù)據(jù)庫中的數(shù)據(jù)進(jìn)行分析,通過特定方式打印數(shù)據(jù),制作報(bào)表。(7)將數(shù)據(jù)庫中的數(shù)據(jù)傳輸?shù)狡渌麛?shù)據(jù)庫的服務(wù)器上,實(shí)現(xiàn)資源共享。 82.可行研究和需求分析性軟件開發(fā)最初的工作就是問題定義,也就是確定超市中要求解決的問題是什么;做好軟件定義時期的工作是降低軟件成本提高軟件質(zhì)量的關(guān)鍵。在軟件開發(fā)的不同階段進(jìn)行修改需要付出的代價是很不相同的,越在早期改正錯誤,付出的代價就越小,了解了它的重要性之后,我明白前期工作一定要做好才能更好地提高工作效率。我把任務(wù)超市又仔細(xì)地研究了一遍,充分明白了它的要求后,接下來

22、作可行性研究,只有做好可行性研究才有可能把以后的工作做好。2.1 可行性研究5可行性研究的目的就是用最小的代價在盡可能短的時間內(nèi)確定問題是否能夠解決??尚行匝芯康哪康牟皇墙鉀Q問題,而是確定問題是否值得去解決。不能靠主觀猜想,只能靠客觀分析。首先應(yīng)該近一步地分析和澄清問題定義,如果正確則進(jìn)一步加以肯定,如果有錯則應(yīng)立刻改正,經(jīng)過仔細(xì)審查,然后從三方面分析它的可行性:1)技術(shù)可行性(即使用現(xiàn)有的技術(shù)能實(shí)現(xiàn)這個系統(tǒng)嗎):答案是肯定的,VB 功能強(qiáng)大,能用簡單的方法完成復(fù)雜的問題。 2)操作可行性(系統(tǒng)的操作方式在這個用戶組織能行的通嗎):答案是肯定的,本系統(tǒng)操作簡單,系統(tǒng)的運(yùn)行不需要特定的環(huán)境。3)

23、經(jīng)濟(jì)可行性(系統(tǒng)的經(jīng)濟(jì)效益是否能超過它的開發(fā)成本):2.2 需求分析需求分析是軟件定義時期的最后一個階段,它的基本任務(wù)是準(zhǔn)確地回答“系統(tǒng)必須做什么”這個問題,需求分析的任務(wù)還不是確定系統(tǒng)怎樣完成它的工作,而僅僅是確定系統(tǒng)必須完成哪些工作,也就是對目標(biāo)系統(tǒng)提出完整、準(zhǔn)確、清晰、具體的要求。可行性研究階段產(chǎn)生的文檔是需求分析的出發(fā)點(diǎn)。需求分析階段系統(tǒng)本人仔細(xì)研究超市管理系統(tǒng)應(yīng)實(shí)現(xiàn)的功能并將它們具體化。數(shù)據(jù)字典是關(guān)于數(shù)據(jù)信息的集合,任何字典最主要的用途都是供人查閱對不了解的條目的解釋,數(shù)據(jù)字典的作用也正是在軟件分析和設(shè)計(jì)的過程中給人提供關(guān)于數(shù)據(jù)的描述信息。針對一般超市管理系統(tǒng)的需求,通過對超市管理工

24、作過程的內(nèi)容分析與本人所要承擔(dān)的任務(wù),設(shè)計(jì)出下面的數(shù)據(jù)項(xiàng)和數(shù)據(jù)結(jié)構(gòu): 9(1) 交易管理:包括進(jìn)貨登記、銷貨登記、退貨登記等。其中進(jìn)貨登記中還包含進(jìn)貨商登記,如過是新的進(jìn)貨廠商,可以直接在此登記入庫。進(jìn)貨和進(jìn)銷存的主要交易都是在此進(jìn)行。每次交易(包括進(jìn)貨、銷貨和退貨)都需要對商品名稱、生產(chǎn)廠商、商品型號、單價、數(shù)量、總金額、交易日期、經(jīng)手業(yè)務(wù)員編號等各項(xiàng)記錄。在交易過程中,程序的編寫盡可能的方便員工進(jìn)行交易,比如:進(jìn)貨登記時,如果商品編號相同,則自動添加該商品的其它屬性;銷貨登記時,用戶只要輸入商品編號,該商品的其它屬性即可自動出現(xiàn)。退貨登記時,只要輸入正確的銷貨編號,其進(jìn)銷存信息也將自動列出

25、,盡量的方便了用戶的操作,同時對于登陸的員工編號程序也自動的將其列在進(jìn)貨登記、銷貨登記中,以己防止員工進(jìn)行非正常的交易。(2) 進(jìn)貨統(tǒng)計(jì):包括今日進(jìn)貨統(tǒng)計(jì)、本月進(jìn)貨統(tǒng)計(jì)、本季度進(jìn)貨統(tǒng)計(jì)、本季度進(jìn)貨統(tǒng)計(jì)、本年度進(jìn)貨統(tǒng)計(jì)等。其中每次進(jìn)貨統(tǒng)計(jì)都是按進(jìn)貨廠商和進(jìn)貨總金額統(tǒng)計(jì)顯示的。使用一個表格顯示所選時間段的全部進(jìn)貨數(shù)據(jù),包括進(jìn)貨編號、商品名稱等。再使用另一個表格顯示分別從各個廠商進(jìn)貨的金額,還有一個文本框用于顯示次時間段的進(jìn)貨總金額。(3) 系統(tǒng)管理:包括更換用戶、修改密碼、退出系統(tǒng)、與關(guān)與。用戶在進(jìn)入后可以根據(jù)自己的需要進(jìn)行更改密碼,調(diào)換用戶重新登錄,退出本系統(tǒng)和一些相關(guān)的相關(guān)本版的信息提示。(4

26、) 銷售統(tǒng)計(jì),包含的數(shù)據(jù)項(xiàng)有:銷售編號、商品編號、商品名稱、生產(chǎn)產(chǎn)商、生產(chǎn)社、銷售年、銷售月、銷售日、業(yè)務(wù)員編號等等。(5) 查看數(shù)據(jù)表,包含的數(shù)據(jù)項(xiàng)有:進(jìn)貨表、現(xiàn)存商品表、退貨表、銷售表、管理員工表等等。(6) 系統(tǒng)用戶信息,包含的數(shù)據(jù)項(xiàng)有:用戶名、口令、級別。 103.系統(tǒng)總體設(shè)計(jì)方案3.1 系統(tǒng)功能分析系統(tǒng)開發(fā)的總體任務(wù)是實(shí)現(xiàn)各種信息的系統(tǒng)化、規(guī)范化和自動化。系統(tǒng)功能分析是在系統(tǒng)開發(fā)的總體任務(wù)的基礎(chǔ)上完成。本人根據(jù)系統(tǒng)需要與任務(wù)的分配要完成的主要任務(wù)與功能有:對本系統(tǒng)的登錄模塊的實(shí)現(xiàn):根據(jù)不同的用戶權(quán)限來登錄到主窗體。對本統(tǒng)主要界機(jī)的設(shè)計(jì)實(shí)現(xiàn):在主界面中要實(shí)現(xiàn)五個彈出菜單;有交易管理菜單

27、,進(jìn)貨統(tǒng)計(jì)菜單,銷售統(tǒng)計(jì)菜單,查看數(shù)據(jù)表菜單,系統(tǒng)管理菜單。3.2 數(shù)據(jù)庫設(shè)計(jì)上面提到的各種功能的實(shí)現(xiàn)都離不開數(shù)據(jù)庫的支持,因此數(shù)據(jù)庫設(shè)計(jì)作為本系統(tǒng)設(shè)計(jì)的一部分不可缺少。開發(fā)本系統(tǒng)中使用的數(shù)據(jù)庫系統(tǒng)是 Windows Access 2000 。從上面的功能分析不難看出本系統(tǒng)需要建立以下幾個數(shù)據(jù)表:buy 表(進(jìn)貨表)、goods 表(現(xiàn)存商品表)、sell 表(進(jìn)銷存表)、retreat 表(退貨表)、employee 表(員工表)、manufacturer 表(進(jìn)貨商表)。由于數(shù)據(jù)量比較小,所以這些數(shù)據(jù)表都存在一個數(shù)據(jù)庫下:sellsystem.mdb 下面對各個數(shù)據(jù)表的結(jié)構(gòu)做一下簡單介紹:

28、在系統(tǒng)的數(shù)據(jù)庫設(shè)計(jì)中,進(jìn)貨表、銷貨表、商品庫存表和退貨表涉及了交易管理三個子菜單的絕大部分?jǐn)?shù)據(jù),是本系統(tǒng)數(shù)據(jù)庫的核心,所以將對其部分表的設(shè)置列表顯示。Manufacturer 表(進(jìn)貨商表)中包括有廠商編號、廠商名稱、聯(lián)系人姓名、電話、廠商地址等字段,表略。employee(員工表)中包括有員工編號、員工姓名、員工密碼、員工電話、員工地址等字段,表略。buy 表(進(jìn)貨表)中包括有進(jìn)貨編號、商品編號、商品名稱、生產(chǎn)廠商、型號、數(shù)量、進(jìn)貨價、進(jìn)貨年、進(jìn)貨月、進(jìn)貨日、總金額、業(yè)務(wù)員編號等。設(shè)計(jì)該數(shù)據(jù)表的主要目的是方便管理員的查看,使系統(tǒng)的數(shù)據(jù)管理能夠更加層次化。具體設(shè)置如表 3-1 所示。表 3-1

29、 buy 表字段名數(shù)據(jù)類型說明進(jìn)貨編號文本字段大小為 20 11商品名稱文本字段大小為 20生產(chǎn)廠商文本字段大小為 20型號文本字段大小為 20數(shù)量數(shù)字長整型進(jìn)貨價貨幣貨幣進(jìn)貨年數(shù)字整型進(jìn)貨月數(shù)字整型進(jìn)貨日數(shù)字整型業(yè)務(wù)員編號文本字段大小為 20總金額貨幣貨幣goods 表(現(xiàn)存商品表)中包括有商品編號、生產(chǎn)廠商、商品名稱、型號、進(jìn)貨價、銷貨價、數(shù)量、進(jìn)貨年、進(jìn)貨月、進(jìn)貨日、業(yè)務(wù)員編號、總金額等字段。具體設(shè)置如表 3-2 所示。表 3-2 goods 表字段名數(shù)據(jù)類型說明商品編號文本字段大小為 20商品名稱文本字段大小為 20生產(chǎn)廠商文本字段大小為 20型號文本字段大小為 20數(shù)量數(shù)字長整型進(jìn)貨

30、價貨幣貨幣銷貨價貨幣貨幣 retreat 表(退貨表)中包括有退貨編號、銷貨編號、生產(chǎn)廠商、商品名稱、型號、單價、數(shù)量、總金額、退貨年、退貨月、退貨日、業(yè)務(wù)員編號等。具體設(shè)置如表 3-3 所示。表 3-3 retreat 表字段名數(shù)據(jù)類型說明退貨編號文本字段大小為 20銷貨編號文本字段大小為 20商品名稱文本字段大小為 20生產(chǎn)廠商文本字段大小為 20型號文本字段大小為 20單價貨幣貨幣數(shù)量數(shù)字長整型 12總金額貨幣貨幣退貨年數(shù)字整型退貨月數(shù)字整型退貨日數(shù)字整型業(yè)務(wù)員編號文本字段大小為 20本節(jié)總結(jié):對于本圖超市管理系統(tǒng)功能的實(shí)現(xiàn),重點(diǎn)和難點(diǎn)有如下幾處: 交易管理模塊在本模塊中,對于商品的進(jìn)貨

31、、銷貨和退貨操作時,都要注意其操作過程中商品數(shù)量及其它屬性的變化,本人在制作此模塊時,采用了指導(dǎo)教師提供給我的思想:進(jìn)貨登記時,將進(jìn)貨信息添加到進(jìn)貨表中。然后對商品庫存表的編號進(jìn)行判斷,如果進(jìn)貨信息的商品編號存在,則將商品庫存表中對應(yīng)記錄的商品數(shù)量做相應(yīng)的調(diào)整;如果商品編號不存在,則直接將進(jìn)貨信息添加到商品庫存表中。貨登記時,先將商品的銷貨信息添加到銷貨表中,然后將商品庫存表中響應(yīng)的商品的數(shù)量做相應(yīng)的調(diào)整,保證商品數(shù)量的一致性。退貨登記時將退貨信息添加到退貨表中,然后將退貨數(shù)量從進(jìn)銷存表中減掉,最后將退貨數(shù)量加到商品庫存表中。3.3 系統(tǒng)功能模塊設(shè)計(jì)對上述各項(xiàng)功能進(jìn)行集中、分塊,按照結(jié)構(gòu)化程序

32、設(shè)計(jì)的要求,得到如圖3.1 的系統(tǒng)功能模塊圖。 13 否 是 用戶登錄是否是管理員主界面交易管理進(jìn)貨統(tǒng)計(jì)系統(tǒng)管理銷售統(tǒng)計(jì)查看數(shù)據(jù)表進(jìn)貨登記銷售登記退貨登記修改密碼退出系統(tǒng)關(guān)于更換用戶今日進(jìn)貨統(tǒng)計(jì)本月進(jìn)貨統(tǒng)計(jì)本季度進(jìn)貨統(tǒng)計(jì)今年進(jìn)貨統(tǒng)計(jì)今日銷售統(tǒng)計(jì)本月銷售統(tǒng)計(jì)本季度銷售統(tǒng)計(jì)今年銷售統(tǒng)計(jì)查看進(jìn)貨表查看現(xiàn)存商品表查看銷售表查看退貨表管理員工表查看進(jìn)貨商表 14(1)交易管理模塊:用于管理商品的進(jìn)貨,進(jìn)銷存,退貨登記的操作。 (2)進(jìn)貨統(tǒng)計(jì)管理:主要用于對商品每日,每月,第季度,每年的進(jìn)貨情況進(jìn)行統(tǒng)計(jì)管理,此功能只有以管理員的身份進(jìn)入時才為可用狀態(tài)。(3)銷售統(tǒng)計(jì)管理:主要用于對商品每日,每月,第季度,

33、每年的進(jìn)銷存情況進(jìn)行統(tǒng)計(jì)管理,此功能只有以管理員的身份進(jìn)入時才為可用狀態(tài)。(4)查看數(shù)據(jù)表:主要能查看進(jìn)貨表,商品信息表,進(jìn)銷存表,退貨表等進(jìn)行查看,以實(shí)現(xiàn)對商品信息的及時了解。 3.4 系統(tǒng)功能介紹(1)登陸窗體 該登陸窗體對用戶登陸做了一個簡單的判斷,如果是管理員登陸則可進(jìn)入初始化界面,然后再進(jìn)入主界面。 具體做法是:先在窗體級中定義一個記錄集,用于打開 employee 表,打開后將該表中的字段:員工姓名,依次加到 combo1 中。全加入后關(guān)閉記錄集,然后對 combo1 和 text1 中的內(nèi)容做一下簡單判斷:如果 combo1 和 text1 中的數(shù)據(jù)正好和 employee 表中

34、的某個記錄相同,則通過登陸窗體,否則提示用戶用戶名或密碼有誤。在通過登陸窗體中還要對用戶名做一下判斷:如果是管理員登陸,則進(jìn)入系統(tǒng)初始化窗體,如果是普通用戶登陸,則進(jìn)入主界面。(2) 初始化窗體 該初始化窗體為本系統(tǒng)的使用者提供了試運(yùn)行服務(wù),如果使用者試運(yùn)行后決定正式使用,可以通過管理員登陸本窗體對系統(tǒng)進(jìn)行初始化,即清空試運(yùn)行階段的所有進(jìn)銷存數(shù)據(jù)。具體實(shí)現(xiàn)過程為:定義 5 個記錄集,其每一個記錄集控制一個數(shù)據(jù)表的打開與關(guān)閉操作,其記錄集的取名與數(shù)據(jù)表相近:rs_sell, rs_buy, rs_goods, rs_retreat,rs_manufacturer.當(dāng)管理員點(diǎn)擊是標(biāo)簽時,先出現(xiàn)一個

35、消息框,問管理員是否真的要進(jìn)行初始化。如果是,則 5 個記錄集依次連接到 5 個數(shù)據(jù)表上,然后對每個數(shù)據(jù)表的內(nèi)容進(jìn)行刪除操作。具體刪除方法為:先對表的狀態(tài)進(jìn)行判斷,如果某個數(shù)據(jù)表的內(nèi)容為空,則直接關(guān)閉記錄集,以免多步操作數(shù)據(jù)表出現(xiàn)錯誤;如果該數(shù)據(jù)表不為空,則依次刪除該數(shù)據(jù)表的每一個記錄,對于每一個數(shù)據(jù)表都要做此判斷,并且每打開一個新的數(shù)據(jù)表都要關(guān)閉上一個數(shù)據(jù)表,這樣操作起來層次顯得比較清晰,而且維護(hù)起來也比較方便。 15(3)主窗體 主窗體的建立十分簡單,只需將所要實(shí)現(xiàn)的功能編輯成菜單即可。該窗體的運(yùn)行過程為:用戶首先進(jìn)入登陸窗體,如果是管理員登陸,則先進(jìn)入初始化窗體,經(jīng)過判斷是否需要初始化后

36、,進(jìn)入主窗體。其權(quán)限為:銷貨統(tǒng)計(jì)、進(jìn)貨統(tǒng)計(jì)、查看數(shù)據(jù)表和系統(tǒng)管理。其權(quán)限的設(shè)置使管理員能夠方便的查看任何時間段內(nèi)的所有信息,還可以對員工表進(jìn)行管理。如果是普通用戶登陸,則直接進(jìn)入主窗體,其授予的權(quán)限只有交易管理和系統(tǒng)管理,也就是說員工只能負(fù)責(zé)對商品進(jìn)行如庫登記、銷貨登記和退貨登記,另外在一個員工對本系統(tǒng)使用的整個期間內(nèi),進(jìn)貨登記、銷貨登記和退貨登記三個窗體中的顯示的業(yè)務(wù)員編號都由系統(tǒng)自動給出的該員工的員工編號。(4)進(jìn)貨登記窗體 本窗體用來實(shí)現(xiàn)商品進(jìn)貨功能,將進(jìn)貨信息添加到 buy表,再將該信息選擇性的加入 goods 表。如果是新的進(jìn)貨廠商,可以在此入庫登記。其具體實(shí)現(xiàn)過程如下所述:先在窗體

37、級變量中定義三個記錄集:rs_buy,rs_goods,rs_manufacture 用來控制三個數(shù)據(jù)表:buy 表,goods 表,manufacturer 表。在用戶點(diǎn)擊添加商品中的添加入庫操作之前,程序先會檢查是否有用戶是否有個別屬性為空,并做出提示。然后將商品添加到 buy 表中,再添加到 goods 表。在添加到 goods 表時,程序會先判斷該商品編號是否已經(jīng)存在,如果存在則直接將該添加信息的數(shù)量加到 goods 表中相應(yīng)的記錄上。為此,進(jìn)貨編號、商品編號是 buy 表、goods 表中不可重復(fù)的屬性。為方便用戶操作,程序特在商品編號的文本框:text2 的 Change 事件中做

38、了一個判斷,即如果該商品編號存在的話直接顯示該商品的其他屬性。另外,對于總金額文本框也是由數(shù)量和進(jìn)貨價兩個文本框的 Change 事件計(jì)算入內(nèi)的。如果是新的進(jìn)貨商,可以將它的信息添加到進(jìn)貨商表。其過程和上面所說的添加到 buy 表基本相同,這里就不做介紹了。(5) 銷貨登記窗體 本窗體主要功能是對商品進(jìn)行進(jìn)銷存,首先對員工輸入的銷貨信息進(jìn)行完整條件的判斷,條件符合后進(jìn)行進(jìn)銷存。然后將進(jìn)銷存信息存入 sell 表,并對 goods 表的數(shù)量做相應(yīng)修改。 具體實(shí)現(xiàn)過程為:先在窗體集中定義兩個記錄集:rs_sell,rs_goods,用來控制兩個數(shù)據(jù)表:sell 表和 goods 表。在銷貨窗體中,

39、如果用戶輸入的商品編號已經(jīng)存在,則該商品的其它屬性將隨著 text2(即商品編號)的 Change 事件出現(xiàn)在其對應(yīng)的位置上。而進(jìn)銷存日期和業(yè)務(wù)員編號已經(jīng)是程序默認(rèn)給出的系統(tǒng)時間和登陸員工的編號。在判斷沒有空缺屬性后該商品將順利添加如庫,而且該商品在 goods 表中的數(shù)量也將隨之做相應(yīng)的改變,使 goods 表和 sell 表的總和保持原來 goods 表中的數(shù)量值。 16(6)退貨窗體 本窗體的功能是實(shí)現(xiàn)商品退貨功能,當(dāng)人為判斷某商品可以退貨時即可將該商品退貨。其數(shù)據(jù)庫實(shí)現(xiàn)為:先將該信息加入 retreat 表,然后從 sell 表中減掉,最后對 goods 表的數(shù)量做一下調(diào)整即可。其具體

40、實(shí)現(xiàn)過程是:先在窗體集中定義三個記錄集:rs_sell,rs_goods,rs_retreat 用來控制三個數(shù)據(jù)表:sell 表、goods 和 retreat 表。在退貨窗體中,如果用戶輸入的銷貨編號存在,則關(guān)于該商品的進(jìn)銷存信息將依次出現(xiàn)在相應(yīng)的對話框中。退貨成功后,該退貨信息先添加到退貨表,然后將其退貨數(shù)量從相應(yīng)的 sell 表中減掉,并添加到 goods 表中。(7)進(jìn)貨統(tǒng)計(jì)菜單 進(jìn)貨統(tǒng)計(jì)菜單下有 4 個子菜單,分別是今日進(jìn)貨統(tǒng)計(jì)、本月進(jìn)貨統(tǒng)計(jì)、本季度進(jìn)貨統(tǒng)計(jì)、今年進(jìn)貨統(tǒng)計(jì)。由于他們的界面非常相似,本程序中使用了一個 SSTab 控件以選項(xiàng)卡的形式在一個窗體中實(shí)現(xiàn)以上 4 個子菜單。這

41、樣做使窗體顯得更加美觀。為項(xiàng)目添加了必要的控件之后,開始進(jìn)行界面設(shè)計(jì)。先在窗體上添加一個 SSTab控件,單擊鼠標(biāo)右鍵在快捷菜單中選擇”屬性”命令。將其選項(xiàng)卡的數(shù)目定為4 個,標(biāo)題分別為:今日進(jìn)貨、本月進(jìn)貨、本季度進(jìn)貨、本年度進(jìn)貨。由于每個選項(xiàng)卡的界面都一樣,現(xiàn)以”今日進(jìn)貨”選項(xiàng)卡為例,加入兩個 datagrid 控件,兩個 Adodc 控件,一個 Label 控件,一個 textbox 控件和 8 個 command 控件。其中兩個 Adodc 的數(shù)據(jù)源連接都是才用的相對路徑與 sellsystem 的 buy 表連接的,兩個 Adodc 連接的 SQL 語句分別如下:select * fr

42、om buyselect 生產(chǎn)廠商,sum(總金額) as 各廠商進(jìn)貨總金額 from buy group by 生產(chǎn)廠商。(8)銷貨統(tǒng)計(jì)窗體 進(jìn)銷存統(tǒng)計(jì)菜單下有 4 個子菜單,分別是今日銷貨、本月銷貨、本季度銷貨、今年銷貨。由于它們的界面非常相似,本程序中使用一個 SSTab 控件以選項(xiàng)卡形式在一個窗體中實(shí)現(xiàn) 4 個子菜單。其界面設(shè)計(jì)和窗體說明與進(jìn)貨統(tǒng)計(jì)大同小異,也一樣一個選項(xiàng)卡為例進(jìn)行說明,現(xiàn)以”今日銷貨”為例:加入兩個 datagrid 控件,兩個 Adodc 控件,一個 Label 控件,一個textbox 控件和 8 個 command 控件。其中兩個 Adodc 的數(shù)據(jù)源連接都是采

43、用的相對路徑與 sell 表連接的,兩個 Adodc 連接的 SQL 語句分別如下:select * from sellselect 生產(chǎn)廠商,sum(總金額) as 各廠商銷貨總金額 from sell group by 生產(chǎn)廠商。 (9)查看進(jìn)貨表 其界面的設(shè)計(jì)比較簡單,只是一個 datagrid 控件,一個Adodc 控件(已隱藏)和四個 Command 控件。本窗體的主要設(shè)計(jì)在于其四個命 17令按紐在進(jìn)貨表為空時不可用。(10)查看進(jìn)貨表 本窗體的主要設(shè)計(jì)目的是設(shè)置一個查詢商品庫存表的條件 。具體操作為:為查詢現(xiàn)存商品表設(shè)立了一個簡單的查詢條件,一個是直接顯示現(xiàn)存的全部商品表,一個是按

44、條件對現(xiàn)存商品進(jìn)行查詢,用戶可以根據(jù)自己需要按商品名稱或生產(chǎn)廠商分別進(jìn)行查找。該窗體的實(shí)現(xiàn)是要在窗體集的變量中設(shè)置一個記錄集 rs_goods,用來控制 goods 表,然后將記錄集在打開窗體時的 select 語句設(shè)為與本窗體的 text1 和 text2 有關(guān)的 SQL 語句。然后讓現(xiàn)存商品表顯示出來。(11)管理員工表 本窗體的制作目的在于方便對管理員用戶的管理, 本節(jié)前面曾經(jīng)提過系統(tǒng)初始化的功能,但其初始化并不能對員工表進(jìn)行操作,當(dāng)管理員登陸本系統(tǒng)時,可以訪問此窗體,對用戶表進(jìn)行維護(hù)。但不能對管理員進(jìn)行刪除操作,此操作已被本人屏蔽。 (12)更換用戶功能 在一個商品進(jìn)銷存公司可能會存在

45、員工交接班的現(xiàn)象,為了方便用戶交接班的操作順利進(jìn)行,在系統(tǒng)管理模塊中做了一個更換用戶子菜單,該子菜單便順利的實(shí)現(xiàn)了此功能,而且它也方便了管理員的登陸管理。(13)修改密碼 為了方便用戶使用,在本模塊中還設(shè)置了一個修改密碼窗體,該窗體主要包括一個用戶名輸入、一個原密碼輸入和兩個新密碼輸入。此窗體實(shí)現(xiàn)的功能是顯而易見的,方便了用戶的操作,增加了系統(tǒng)使用的安全性。具體做法是:先要求用戶將四個必填項(xiàng)填寫完整,然后對兩個新密碼進(jìn)行相同判斷,如果相同,則將記錄集 rs_employee 打開,對用戶名和原密碼進(jìn)行核對,如果相同,就將老密碼替換為新密碼。本節(jié)總結(jié):對于本商品進(jìn)銷存管理系統(tǒng)功能的實(shí)現(xiàn),重點(diǎn)和難

46、點(diǎn)有以下幾處:交易管理模塊:在本模塊中,對于商品的進(jìn)貨、銷貨和退貨操作時,都要注意其操作過程中商品數(shù)量及其它屬性的變化,本人在制做此模塊時,采用了指導(dǎo)教師的提供給我的思想:進(jìn)貨登記時,將進(jìn)貨信息添加到進(jìn)貨表中。然后對商品庫存表的編號進(jìn)行判斷,如果進(jìn)貨信息的商品編號存在,則將商品庫存表中相應(yīng)記錄的商品數(shù)量做對應(yīng)調(diào)整;如果商品編號不存在,則直接將進(jìn)貨信息添加到商品庫存表中。銷貨登記時,先將商品的銷貨信息添加到銷貨表中,然后將商品庫存表中響應(yīng)的商品的數(shù)量做相對調(diào)整,保證商品數(shù)量的一致性。退貨登記時將退貨 18信息添加到退貨表中,然后將退貨數(shù)量從進(jìn)銷存表中減掉,最后將退貨數(shù)量加到商品庫存表中。在本系統(tǒng)

47、管理員登陸時,顯示給管理員的第一個界面:系統(tǒng)初始化也是本系統(tǒng)的又一大功能特色,其實(shí)現(xiàn)過程中要嚴(yán)格控制每一個記錄集對相應(yīng)數(shù)據(jù)表的打開與關(guān)閉操作。4. 系統(tǒng)各模塊的設(shè)計(jì)及實(shí)現(xiàn) 經(jīng)過了前面的可行性研究和需求分析,現(xiàn)在可以對我要完成的功能模塊的實(shí)現(xiàn)做詳細(xì)的設(shè)計(jì)。4.1用戶控制模塊及界面詳細(xì)設(shè)計(jì)退出 Splash 窗體后就進(jìn)入了登錄窗體。輸入相應(yīng)的用戶名和密碼。如果用戶的密碼輸錯錯誤,則不能登錄到系統(tǒng)主窗體;如果用戶密碼正確,則進(jìn)入系統(tǒng)的 MDI 主窗體。 19代碼設(shè)計(jì):Private Sub Label3_Click() If Combo1.Text = Then MsgBox 請輸入用戶名!, vb

48、OKOnly + vbInformation, 注意 Combo1.SetFocus Exit Sub ElseIf Text1.Text = Then MsgBox 請輸入密碼!, vbOKOnly + vbInformation, 注意 Text1.SetFocus Exit Sub4.2 主窗體 在 MDI 主窗體中,設(shè)計(jì)了 5 項(xiàng)菜單,分別為“交易管理” 、 “進(jìn)貨統(tǒng)計(jì)”“銷售統(tǒng)計(jì)” 、 “查看數(shù)據(jù)表” 、 “系統(tǒng)管理” 、管理員權(quán)限、進(jìn)貨統(tǒng)計(jì)、銷貨統(tǒng)計(jì)、查看數(shù)據(jù)表、系統(tǒng)管理。部分設(shè)計(jì)代碼如下: Private Sub mnBuyMonth_Click()frmBuyall.Text2

49、.Enabled = FalsefrmBuyall.SSTab1.Tab = 1 20frmBuyall.SSTab1.TabEnabled(0) = FalsefrmBuyall.SSTab1.TabEnabled(1) = TruefrmBuyall.SSTab1.TabEnabled(2) = FalsefrmBuyall.SSTab1.TabEnabled(3) = FalsefrmBuyall.Showstrbuy = select * from buy where 進(jìn)貨年= & inty & and 進(jìn)貨月= & intm & rs_buy.Open strbuy, cnn, ad

50、OpenKeyset, adLockPessimisticfrmBuyall.Adodc2.RecordSource = strbuyfrmBuyall.Adodc2.RefreshfrmBuyall.DataGrid2.ReBindIf rs_buy.EOF = True Then frmBuyall.Adodc6.RecordSource = strbuy frmBuyall.Adodc6.Refresh frmBuyall.DataGrid6.ReBind MsgBox 您本月沒有進(jìn)貨記錄!, vbOKOnly + vbInformation, 注意rs_buy.Closestrfcto

51、tal = select 生產(chǎn)廠商,sum(總金額) as 各廠商進(jìn)貨總金額 from buy where 進(jìn)貨年= & inty & and 進(jìn)貨月= & intm & group by 生產(chǎn)廠商rs_fctotal.Open strfctotal, cnn, adOpenKeyset, adLockPessimisticfrmBuyall.Adodc6.RecordSource = strfctotalfrmBuyall.Adodc6.RefreshfrmBuyall.DataGrid6.ReBindrs_fctotal.Closestrtotal = select sum(總金額) as

52、 進(jìn)貨總金額 from buy where 進(jìn)貨年= & inty & and 進(jìn)貨月= & intm & rs_total.Open strtotal, cnn, adOpenKeysetm, adLockPessimisticfrmBuyall.Text2.Text = rs_total.Fields(進(jìn)貨總金額)rs_total.CloseEnd Sub4.3 交易管理模塊及界面設(shè)計(jì)1進(jìn)貨登記:進(jìn)貨登記: 21在些界面的操作中可以進(jìn)行對所進(jìn)的商品的信息及生產(chǎn)廠商的相關(guān)信息的添加,清空等操作。 其實(shí)現(xiàn)的部分代碼如下:下面是對進(jìn)貨表進(jìn)行添加記錄操作! str_buy = select * f

53、rom buy where 進(jìn)貨編號= & Text1.Text & rs_buy.Open str_buy, cnn, adOpenStatic, adLockOptimistic 打開進(jìn)貨表 If rs_buy.EOF = True Then rs_buy.AddNew rs_buy.Fields(進(jìn)貨編號) = Text1.Text rs_buy.Fields(商品名稱) = Text3.Text rs_buy.Fields(生產(chǎn)廠商) = Text4.Text rs_buy.Fields(型號) = Text5.Text rs_buy.Fields(數(shù)量) = Val(Text6.Te

54、xt) rs_buy.Fields(進(jìn)貨價) = Val(Text7.Text) rs_buy.Fields(進(jìn)貨年) = Text9.Text rs_buy.Fields(進(jìn)貨月) = Text10.Text rs_buy.Fields(進(jìn)貨日) = Text11.Text rs_buy.Fields(業(yè)務(wù)員編號) = Text12.Text rs_buy.Fields(總金額) = Val(Text13.Text) rs_buy.Update rs_buy.Close 關(guān)閉進(jìn)貨表 Else MsgBox 此進(jìn)貨編號已存在,請重添!, vbOKOnly + vbInformation, 22

55、注意 Text1.Text = Text1.SetFocus rs_buy.Close Exit Sub 關(guān)閉進(jìn)貨表 End If下面是對商品庫存表進(jìn)行入庫操作! Dim sql As String sql = select * from goods where 商品編號 = & Text2.Text & rs_goods.Open sql, cnn, adOpenStatic, adLockOptimistic If rs_goods.EOF = True Then rs_goods.Close str_goods = select * from goods rs_goods.Open st

56、r_goods, cnn, adOpenStatic, adLockOptimistic 打開庫存表 rs_goods.AddNew rs_goods.Fields(商品編號) = Text2.Text rs_goods.Fields(商品名稱) = Text3.Text rs_goods.Fields(生產(chǎn)廠商) = Text4.Text rs_goods.Fields(型號) = Text5.Text rs_goods.Fields(數(shù)量) = Val(Text6.Text) rs_goods.Fields(進(jìn)貨價) = Val(Text7.Text) rs_goods.Fields(銷貨

57、價) = Val(Text8.Text) rs_goods.Update MsgBox 商品入庫成功, vbOKOnly + vbExclamation, rs_goods.Close 關(guān)閉庫存表 Else numgoods = rs_goods.Fields(數(shù)量) rs_goods.Fields(數(shù)量) = Val(Text6.Text) + numgoods rs_goods.Update MsgBox 商品入庫成功, vbOKOnly + vbExclamation, 關(guān)閉庫存表 rs_goods.Close End IfEnd Sub2 2銷售登記:銷售登記: 23對銷售的商品進(jìn)行相

58、關(guān)信息的登記,并進(jìn)行行銷售金額的計(jì)算。其部分設(shè)計(jì)代碼如下:Private Sub Command1_Click() If Text1.Text = Then MsgBox 請?zhí)顚戜N貨編號!, vbOKOnly + vbInformation, 注意 Text1.SetFocus Exit Sub ElseIf Text2.Text = Then MsgBox 請?zhí)顚懮唐肪幪枺? vbOKOnly + vbInformation, 注意 Text2.SetFocus Exit Sub End If str_goods = select * from goods where 商品編號= & Tex

59、t2.Text & rs_goods.Open str_goods, cnn, adOpenStatic, adLockOptimistic If rs_goods.EOF = True Then MsgBox 對不起,此商品型號已無貨!請選擇其他型!, vbOKOnly + vbInformation, 注意 rs_goods.Close Exit Sub3 3 退貨登記退貨登記: 24對退貨的相關(guān)信息進(jìn)行記。如商品名,編號,價格,退貨員,數(shù)量,金額時間等等進(jìn)行登記。 其部分實(shí)代碼如下:Private Sub Command1_Click()If Text1.Text = Then MsgB

60、ox 請?zhí)顚懲素浘幪枺? vbOKOnly + vbInformation, 注意 Text1.SetFocus Exit Sub ElseIf Text2.Text = Then MsgBox 請?zhí)顚戜N貨編號!, vbOKOnly + vbInformation, 注意 Text2.SetFocus Exit Sub ElseIf Text11.Text = Then MsgBox 請?zhí)顚懮唐窋?shù)量!, vbOKOnly + vbInformation, 注意 Text11.SetFocus Exit SubEnd If 下面是對銷售表進(jìn)行操作! str_sell = select * fro

61、m sell where 銷貨編號= & Text2.Text & rs_sell.Open str_sell, cnn, adOpenStatic, adLockOptimistic If rs_sell.EOF = True Then MsgBox 對不起,沒有銷售此商品型號!無法退貨!, vbOKOnly + vbInformation, 注意 rs_sell.Close Exit Sub 25 ElseIf rs_sell.Fields(數(shù)量) Val(Text11.Text) Then MsgBox 對不起,退貨數(shù)量過大,無法退貨!, vbOKOnly + vbInformation

62、, 注意 rs_sell.Close Exit Sub44 進(jìn)貨統(tǒng)計(jì)模塊及界面設(shè)計(jì)主要用于對商品每日,每月,第季度,每年的進(jìn)貨情況進(jìn)行統(tǒng)計(jì)管理,此功能只有以管理員的身份進(jìn)入時才為可用狀態(tài)。其部分設(shè)計(jì)代碼如下:Private Sub Form_Load()inty = Year(Date)intm = Month(Date)intd = Day(Date)Dim str As Stringstr = Provider=Microsoft.Jet.OLEDB.4.0;Data Source= & App.Path & sellsystem.mdb;Adodc1 的相對路徑連接Adodc1.Conn

63、ectionString = strAdodc1.CommandType = adCmdTextAdodc1.RecordSource = select * from buy where 進(jìn)貨年= & inty & and 進(jìn)貨月= & intm & and 進(jìn)貨日= & intd & Adodc1.Refresh 26Set DataGrid1.DataSource = Adodc1DataGrid1.RefreshAdodc2 的相對路徑連接Adodc2.ConnectionString = strAdodc2.CommandType = adCmdTextAdodc2.RecordSou

64、rce = select * from buy where 進(jìn)貨年= & inty & and 進(jìn)貨月= & intm & Adodc2.RefreshSet DataGrid2.DataSource = Adodc2DataGrid2.Refresh45 銷售統(tǒng)計(jì)模塊及界面設(shè)計(jì)主要用于對商品每日,每月,第季度,每年的進(jìn)銷存情況進(jìn)行統(tǒng)計(jì)管理,此功能只有以管理員的身份進(jìn)入時才為可用狀態(tài)。其部分設(shè)計(jì)代碼如下:Private Sub Form_Load()inty = Year(Date)intm = Month(Date)intd = Day(Date)Text1.Enabled = FalseT

65、ext2.Enabled = False 27Text3.Enabled = FalseText4.Enabled = FalseDim str As Stringstr = Provider=Microsoft.Jet.OLEDB.4.0;Data Source= & App.Path & sellsystem.mdb;Adodc1.ConnectionString = strAdodc1.CommandType = adCmdTextAdodc1.RecordSource = select * from sell where 銷售年= & inty & and 銷售月= & intm &

66、and 銷售日= & intd & Adodc1.RefreshSet DataGrid1.DataSource = Adodc1DataGrid1.RefreshAdodc2.ConnectionString = strAdodc2.CommandType = adCmdTextAdodc2.RecordSource = select * from sell where 銷售年= & inty & and 銷售月= & intm & Adodc2.RefreshSet DataGrid2.DataSource = Adodc2DataGrid2.Refresh4.6 查看數(shù)據(jù)表功能模塊的設(shè)計(jì)在這個功能模塊中,主要有如下幾個小功能模塊組成:查看貨表, 查看現(xiàn)存超市表,查看退超市表,查看銷售表,管理員工表等幾個功能.主要實(shí)現(xiàn)對超市管理中的超市進(jìn),存,銷進(jìn)行管理.還有對系統(tǒng)員工的管理.這幾個功能都是以表格的形式來顯相關(guān)的數(shù)據(jù)的.在查看現(xiàn)成超市表中,采用搜索的功能,在表中填入相關(guān)的的關(guān)鍵詞,就能查到相關(guān)的超市名,超市號,生產(chǎn)商,條碼.主要是采用 SQL 語言中的搜索,SELCET 語句進(jìn)行關(guān)

展開閱讀全文
溫馨提示:
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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

相關(guān)資源

更多
正為您匹配相似的精品文檔
關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號:ICP2024067431-1 川公網(wǎng)安備51140202000466號


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺,本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng),我們立即給予刪除!