企業(yè)信息化管理畢業(yè)論文



畢業(yè)設(shè)計論文論文題目 :銷售管理系統(tǒng)所在系部 :軟件系企業(yè)信息化管理專業(yè)姓 名 :顏曉匡 學(xué) 號 :200900010458指導(dǎo)教師 :王維偉 江西先鋒軟件職業(yè)技術(shù)學(xué)院完成日期 :2012-3-2目錄1.前 言 12.系統(tǒng)需求分析 32 要求分析: 32.1 用戶定位分析: 32.2 功能需求分析 32.2.1 問題定義及可行性研究 32.2.1.1 問題定義 32.2.1.2 32.2.2 42.3 性能需要分析 43.環(huán)境平臺分析 43.2程序的功能設(shè)計 53.3程序流程設(shè)計 63.4 系統(tǒng)設(shè)計 63.5 數(shù)據(jù)庫設(shè)計 74. 系統(tǒng)的詳細設(shè)計 114.1系統(tǒng)模塊設(shè)計及程序流程圖 114.2程序單元設(shè)計以及編碼及其開發(fā) 135. 系統(tǒng)實現(xiàn) 145.1 應(yīng)用程序主界面的實現(xiàn) 145.1.1添加菜單 155.1.2系統(tǒng)與數(shù)據(jù)庫的連接 175.1.3添加公共模塊入引用 185.1.4添加代碼 185.2 交易管理的實現(xiàn) 185.2.1進貨登記的實現(xiàn) 195.2.2 銷售登記的實現(xiàn) 205.2.3 退貨登記的實現(xiàn) 215.3 進貨統(tǒng)計的實現(xiàn) 226. 結(jié)論與展望 237.參考文獻 231.前 言隨著科學(xué)技術(shù)的進步,計算機行業(yè)的迅速發(fā)展,大大提高人們的工作效率。
計算機信息處理系統(tǒng)的引進已徹底改變了許多公司的經(jīng)營管理 甚至附近的一個小店主也可能正在用計算機來控制銷售、記賬以及其他活動在一些大公司里,電子信息處理系統(tǒng)監(jiān)測全部工作設(shè)備的操作與運行銷售管理系統(tǒng)是企業(yè)管理機制中的重要組成部分,通過對企業(yè)銷售管理系統(tǒng)的銷售管理機制進行調(diào)查研究,開發(fā)了銷售管理系統(tǒng)本系統(tǒng)中解決了企業(yè)管理事務(wù)中的進貨、銷售、退貨等情況的問題以及相關(guān)統(tǒng)計工作本系統(tǒng)中包含七個功能模塊:系統(tǒng)登錄、交易管理、進貨統(tǒng)計、銷售銃計、業(yè)績查看、報表查看和幫助本系統(tǒng)使有Microsoft公司推出的visual basic 進行前端開發(fā),VB是基于WINDOWS的面向?qū)ο蟮目梢暬_發(fā)工具它采用了當今軟件設(shè)計的最新技術(shù),具有開發(fā)效率高、設(shè)計靈活、生成的軟件界面友好美觀等特點本系統(tǒng)中通過VB的ADO和數(shù)據(jù)庫進行無縫連接,大量應(yīng)用了VB中的控件和觸發(fā)事件后端的開發(fā)工具是Microsoft Access 2000,整個數(shù)據(jù)庫都是相互關(guān)聯(lián)的,使數(shù)據(jù)庫具有較高的完整性,一致性和安全性在現(xiàn)代化企業(yè)中,信息管理工作將發(fā)揮越來越重要的作用企業(yè)信息管理工作已經(jīng)滲透到企業(yè)日常工作的許多方面,無論是其自身還是所發(fā)揮的作用,都為企業(yè)的創(chuàng)新、發(fā)展以及經(jīng)濟效益,做出了顯著的貢獻。
因此,企業(yè)必須加強自身的信息基礎(chǔ)設(shè)施建設(shè),通過企業(yè)基礎(chǔ)數(shù)據(jù)的信息化、企業(yè)基本業(yè)務(wù)流程和事務(wù)處理的信息化、企業(yè)內(nèi)部控制及實施控制過程的信息化、人的行為規(guī)范管理等企業(yè)基礎(chǔ)管理信息化工程,確保企業(yè)在規(guī)模不斷擴大和業(yè)務(wù)迅速發(fā)展的過程中保持堅實的管理基礎(chǔ)和繁殖內(nèi)核,促進企業(yè)的可持續(xù)發(fā)展企業(yè)的銷售管理是企業(yè)發(fā)展的關(guān)鍵環(huán)節(jié),一個好的銷售管理體制將給企業(yè)帶來很可觀的經(jīng)濟效益無論是一個銷售公司還是一個銷售商店,都有很多的銷售數(shù)據(jù)需要管理手工管理這些紛繁復(fù)雜數(shù)據(jù)的方式已經(jīng)不適應(yīng)時代的潮流,實現(xiàn)數(shù)據(jù)規(guī)范化、自動化的電腦管理,是一個管理規(guī)范、動作高效的企業(yè)單位的必然要求本系統(tǒng)是為中小型企業(yè)的銷售管理系統(tǒng),專為中小型企業(yè)的銷售管理系統(tǒng)的需求而開發(fā)系統(tǒng)具有交易管理、進貨及銷售統(tǒng)計、預(yù)覽數(shù)據(jù)表等功能,界面友好、操作簡便開發(fā)此項目,能夠?qū)⑺鶎W(xué)的理論知識與實際應(yīng)用相結(jié)合,并嘗試應(yīng)用最新流行的開發(fā)工具,以達到掌握新技術(shù)、進一步提高程序開發(fā)能力的目的2.系統(tǒng)需求分析2 要求分析:盡早地對軟件項目的可行性做出細致而謹慎的評估,以避免在項目開發(fā)過程中浪費大量的人力、物力、財力2.1 用戶定位分析:進入二十一世紀,信息化的進程進一步加快,向著網(wǎng)絡(luò)化、智能化方向發(fā)展,計算機行業(yè)飛速向前發(fā)展,信息化深入到社會的各行各業(yè)。
微機化管理的廣泛應(yīng)用,使工作效率顯著提高通過可行性分析,我決定為中小型企業(yè)開發(fā)銷售管理系統(tǒng)企業(yè)規(guī)模的不斷擴大,客戶不斷增加,銷售業(yè)務(wù)也隨之猛增,手工管理紛繁復(fù)雜的銷售數(shù)據(jù)已經(jīng)不能滿足需要所以銷售管理的規(guī)范化、自動化已經(jīng)是必然的要求2.2 功能需求分析2.2.1 問題定義及可行性研究在討論具體的需求分析之前,我想先對兩個問題給予簡單的說明這兩個問題雖然簡單,但卻是軟件開發(fā)周期中不可缺少的兩個階段2.2.1.1 問題定義問題定義階段必須回答的關(guān)鍵問題是“要解決的問題是什么?”顯然,這個問題解決整個軟件開發(fā)周期中起著指導(dǎo)性作用軟件開發(fā)應(yīng)該有這樣一條鮮明的線索貫穿始終,否則我們的所有工作都是盲目的現(xiàn)在我們應(yīng)該明確問題定義階段的主要任務(wù):我們要建立一個銷售管理系統(tǒng),以解決企業(yè)銷售事務(wù)的基本情況,來擺脫傳統(tǒng)的手工記賬,實現(xiàn)管理自動化,從而提高工作效率同時該系統(tǒng)應(yīng)不可避免的涉及到庫存商品基本信息、供應(yīng)商信息、客戶信息的維護和處理及進貨統(tǒng)計、銷售統(tǒng)計等統(tǒng)計及查詢處理2.2.1.2 可行性研究這個階段要解決的關(guān)鍵問題是“對上一階段所確定的問題有無行得通的解決辦法”從而導(dǎo)出系統(tǒng)的邏輯模型,然后從系統(tǒng)邏輯模塊出發(fā)探索若干種可供選擇的系統(tǒng)實現(xiàn)方案。
由于實際條件的制約,對可行性研究我們不再多說,但我們必須明確,現(xiàn)在我們所討論的問題從各方面來說都行得通在明確 了這兩個簡單問題之后,我們的問題應(yīng)該步入正題了需求分析階段是軟件定義時期的是后一個階段,這一階段的中心任務(wù)是準確的回答“系統(tǒng)必須做什么?”這個問題其結(jié)束的標準是通過需求分析應(yīng)該得出有數(shù)據(jù)流程圖、ER圖、數(shù)據(jù)字典等描繪的精確的系統(tǒng)邏輯模型下面我們就緊緊圍繞需求分析階段的中心任務(wù)和目標展開計論2.2.2 銷售管理系統(tǒng)具體任務(wù)要求和運行過程系統(tǒng)的功能要求即用戶對目標系統(tǒng)數(shù)據(jù)處理功能所提出的要求,主要考慮以下銷售管理需求:★進貨時入庫登記,以便日后查看和統(tǒng)計進貨情況★銷售時把相應(yīng)數(shù)量的商品從現(xiàn)存商品庫中減去,并記錄于另外的一個銷售庫中,以便日后查看和統(tǒng)計銷售信息★是銷售就難免會有顧客退貨情況發(fā)生,因此還需建立一個相應(yīng)的退貨管理,把退回來的貨加入現(xiàn)存商品庫,再從銷售庫中減去,進行退貨登記★還要能夠隨時查看各種信息表,如員工信息、進貨信息、銷售信息、退貨信息等★除了以上一些基本的需求外,實際上公司用來進行決策和管理分析的數(shù)據(jù)才是用得最多的數(shù)據(jù)因此還需要有一些相應(yīng)的關(guān)于以上基本信息的統(tǒng)計信息。
如希望看各個時間段(如今日、本月、本和度、本年度等)的進貨或銷售情況,以便對一個的動作進行一個準確的預(yù)測和正確的決斷★為了調(diào)動員工的積極性,員工的薪水應(yīng)該和他的銷售業(yè)績掛鉤,因此還需要能夠查詢各員工的銷售業(yè)績,以便對他的業(yè)績進行考核和評比2.3 性能需要分析公司規(guī)模的不斷擴大,與客戶間的往來業(yè)務(wù)也越來越多,手工管理這些紛繁復(fù)雜數(shù)據(jù)的方式已經(jīng)不適應(yīng)企業(yè)發(fā)展的要求,實現(xiàn)數(shù)據(jù)規(guī)范化、自動化的電腦管理,是一個管理規(guī)范、動作高效的企業(yè)單位的必然要求因此我們開發(fā)并應(yīng)用此系統(tǒng),能夠適應(yīng)企業(yè)發(fā)展的需要,提高了工作效率,很好地實現(xiàn)了信息數(shù)據(jù)的規(guī)范化管理3.環(huán)境平臺分析1、由于Windows2000操作系統(tǒng)是有人機變互的友好界面,很容易掌握及操作,程序界面相對較容易實現(xiàn)等特點,加之目前基于Windows2000操作系統(tǒng)的軟件開發(fā)工具也很多,易于學(xué)習(xí)、開發(fā)及應(yīng)用2、同時由于銷售管理業(yè)務(wù)事務(wù)種類繁多,結(jié)合鐵嶺香河商貿(mào)有限公司的實際情況,銷售業(yè)務(wù)量及管理人員的素質(zhì)等因素,Windows2000操作系統(tǒng)易學(xué)易用,而且可以滿足需求,故決定采用Windows2000平臺開發(fā)3、采用Microsoft Access 型數(shù)據(jù)庫系統(tǒng)作為銷售管理系統(tǒng)的后臺數(shù)據(jù)庫,Access數(shù)據(jù)庫使用與Windows2000完全統(tǒng)一的風(fēng)格,采用面向?qū)ο蟮姆绞綄?shù)據(jù)庫進行管理與操作,大大簡化了用戶的開發(fā)與維護工作,另外小型數(shù)據(jù)庫的靈活性、安全性、易用性為數(shù)據(jù)庫編程提供了良好的條件。
4、由于Microsoft公司的Visual Basic 6.0具有面向?qū)ο罂梢暬幊痰奶攸c,是創(chuàng)建Windows98應(yīng)用程序最簡便、最快捷的開發(fā)工具之一,是集先進性、實用性于一體的現(xiàn)代化軟件開發(fā)工具,故采用Visual Basic6.0為開發(fā)工具硬 件:中央處理器(CPU):軟 驅(qū):內(nèi) 存:顯示器:打印機:此系統(tǒng)操作簡單,使用人員無需具有專業(yè)的計算機操作基礎(chǔ),因此對工作人員來說應(yīng)用此系統(tǒng)是不成問題的本系統(tǒng)開發(fā)經(jīng)費并不是很多對于規(guī)模不很大,經(jīng)費有限的單位在經(jīng)濟上是可以接受的,并且本系統(tǒng)實施后可以顯著提高效率,很快就可以體現(xiàn)經(jīng)濟效益投入:除軟件開發(fā)成本,一臺中等電腦,現(xiàn)價4000元左右,完全可以良好的運行系統(tǒng),完成硬件平臺的要求,而且經(jīng)濟實用綜上所述,無論是從技術(shù)方面還是經(jīng)濟方面看開發(fā)此系統(tǒng)均是可行的3.2程序的功能設(shè)計總體設(shè)計階段的基本目的是用比較抽象概括的方確定系統(tǒng)如何完成參定的任務(wù),也就是說,應(yīng)該確定系統(tǒng)的物理配置方案,并且進而確定組成系統(tǒng)的每個程序的結(jié)構(gòu)因此,總體設(shè)計階段由兩個小階段組成首先需要進行系統(tǒng)設(shè)計,從數(shù)據(jù)流圖出發(fā)設(shè)想完成系統(tǒng)功能的若干種合理的物理方案,最后選擇一個最佳方案。
然后進行軟件結(jié)構(gòu)設(shè)計,確定軟件由那些模塊組成以及這些模塊之間的動態(tài)調(diào)用關(guān)系3.3程序流程設(shè)計本系統(tǒng)開發(fā)時使用的系統(tǒng)只是普通的PC機,操作系統(tǒng)為Windows2000 版本數(shù)據(jù)庫的建立使用的是office XP中的Microsoft Access 數(shù)據(jù)訪問方法為使用ADO(Active數(shù)據(jù)對象 Active Data Objects)通過ODBC的方法同數(shù)據(jù)庫接口使用這種方式訪問數(shù)據(jù),可以使用任何一種ODBC數(shù)據(jù)源,即不止適合于SQL Server Oracle、Access等數(shù)據(jù)庫應(yīng)用程序,也適合于Excel表格、文本文件、圖形文件和無格式的數(shù)據(jù)文件此系統(tǒng)總體的功能是實現(xiàn)銷售管理的系統(tǒng)化、規(guī)范化和自動化系統(tǒng)總體框圖如下:銷售管理系統(tǒng)系統(tǒng)登錄交易管理進貨統(tǒng)計銷售統(tǒng)計業(yè)績查看查看數(shù)據(jù)表進貨登記銷售登記退貨登記用戶登錄修改密碼退出系統(tǒng)今日進貨本月進貨本季度進貨本年度進貨今日銷售本月銷售本季度銷售本年度銷售員工業(yè)績進貨表銷售表員工表進貨商表退貨表添加新用戶客戶表幫助3.4 系統(tǒng)設(shè)計銷售管理系統(tǒng)不簡單的是一個軟件,它覆蓋了企業(yè)銷售管理的職能,是企業(yè)管理事務(wù)中關(guān)鍵環(huán)節(jié)是一個將銷售管理思想以及當今最新計算機技術(shù)完美統(tǒng)一起來,實現(xiàn)科學(xué)化、自動化管理的集成應(yīng)用系統(tǒng)。
在功能方面,系統(tǒng)面向企業(yè)各個層次用戶的需求,即企業(yè)領(lǐng)導(dǎo)和管理人員以及保障系統(tǒng)運行的系統(tǒng)管理員為企業(yè)銷售管理提供全面、及時、準確的信息和可靠的依據(jù)在通用性設(shè)計方面,以標準化為基礎(chǔ),通過信息流程和管理過程的合理模型化、管理對象的模型化,使得系統(tǒng)具有一定的通用性和規(guī)范性在系統(tǒng)開放性方面,按照軟件工程開發(fā)規(guī)范實現(xiàn)系統(tǒng)的開放性,既便于擴充又便于升級,以適應(yīng)今后企業(yè)管理發(fā)展及銷售體系改革的需求在系統(tǒng)和數(shù)據(jù)的安全性方面,系統(tǒng)采用數(shù)據(jù)庫級用戶權(quán)限和應(yīng)用程序級運行權(quán)限的雙重控制機構(gòu),提供了統(tǒng)一的基于角色的用戶管理手段,通過數(shù)據(jù)庫系統(tǒng)的數(shù)據(jù)安全機制,具有完善的系統(tǒng)和數(shù)據(jù)安全的保障體系在操作性方面,采用圖形用戶界面技術(shù),使系統(tǒng)能夠以多得圖形窗口和豐富便利的操作界面,通過鼠標或鍵盤的操作,為用戶提供最簡潔的使用方法3.5 數(shù)據(jù)庫設(shè)計上面提到的各種功能的實現(xiàn)都離不開數(shù)據(jù)庫的支持,因此數(shù)據(jù)庫設(shè)計作為本系統(tǒng)設(shè)計的一部分不可缺少數(shù)據(jù)庫設(shè)計在整個程序設(shè)計過程中占據(jù)非常重要的地位,也是整個程序設(shè)計的基礎(chǔ)把數(shù)據(jù)庫從整個程序中分離出來,單獨進行,有很大的好處,即使程序設(shè)計分工明確,也方便程序員在詳細設(shè)計師不必考慮數(shù)據(jù)庫的結(jié)構(gòu),只需知道數(shù)據(jù)名及表名和表中的字段名就能進行編碼設(shè)計,體現(xiàn)面向?qū)ο笤O(shè)計的思想。
其實在需求分析階段,我們的很大一部分討論始終都沒離開用戶所要求的數(shù)據(jù)如果把前面的討論看成是數(shù)據(jù)庫的邏輯設(shè)計,下面的問題將是數(shù)據(jù)庫的具體物理實現(xiàn)我們使用的數(shù)據(jù)庫系統(tǒng)是Windowa Access 2000從上面的功能分析看出本系統(tǒng)需要建立以下幾個數(shù)據(jù)表:員工表(employee)表、現(xiàn)存貨表(goods)表、已售商品表(sell表)及廢品表(badgoods)表和使用用戶表(userdb表)圖3-2 數(shù)據(jù)庫各數(shù)據(jù)表間關(guān)系第四章 系統(tǒng)的詳細設(shè)計4. 系統(tǒng)的詳細設(shè)計4.1系統(tǒng)模塊設(shè)計及程序流程圖此系統(tǒng)的采用劃分獨立模塊,自頂向下逐步求精的方法設(shè)計這里僅列舉兩個典型程序流程圖退貨登記過程比較復(fù)雜,退貨登記模塊的程序流程圖如下圖4-1所示:登錄模塊的流程圖如下圖4-2所示: 4.2程序單元設(shè)計以及編碼及其開發(fā)本系統(tǒng)總體的功能是實現(xiàn)鐵嶺香河商貿(mào)有限公司銷售管理的系統(tǒng)化、規(guī)?;妥詣踊?,具體包括如下功能模塊:(1)系統(tǒng)登錄:包括用戶登錄、修改密碼、添加新用戶、退出系統(tǒng)等2)交易管理:包括進貨登記、銷售登記、退貨登記等其中進貨登記中還包含進貨廠商的登記,如果是新地進貨廠商,可以在此登記入庫銷售登記中還包括進貨客戶的登記,如果是新的客戶,可以在此登記入庫。
進貨和銷售的主要交易都是在此進行3)進貨統(tǒng)計:包括今日進貨統(tǒng)計、本月進貨統(tǒng)計、本季度進貨統(tǒng)計、本年度進貨統(tǒng)計等其中每次進行進貨統(tǒng)計都是按進貨廠商和進貨金額順序排列的使用一個表格顯示所選時間段的全部進貨數(shù)據(jù),包括進貨編號、商品名、生產(chǎn)廠商、產(chǎn)品型號、單價、數(shù)量、總金額、進貨日期、業(yè)務(wù)員編號等再使用另一表格顯示分別從各個廠商進貨的金額,還有一個文本框用于顯示此時間段的總進貨金額4)銷售統(tǒng)計:包括今日銷售統(tǒng)計、本月銷售統(tǒng)計、本季度銷售統(tǒng)計、本年度銷售統(tǒng)計等其中每次銷售統(tǒng)計都是按照產(chǎn)品廠商和銷售金額順序排序的,用戶可以一目了然的看出各種型號產(chǎn)品的銷售額使用一個表格顯示所選時間段的的全部銷售數(shù)據(jù),包括銷售編號、商品名、生產(chǎn)廠商、產(chǎn)品型號、單價、數(shù)量、總金額、銷售日期、業(yè)務(wù)員編號等;再使用另一表格分別顯示各個廠商產(chǎn)品的銷售金額,還有一個文本框用于顯示此時間段的總銷售金額5)業(yè)績查看:實現(xiàn)各員工銷售情況的查看,可以一次性顯示所有員工的銷售情況,也可以根據(jù)員工編號查看單個員工的銷售情況6)查看數(shù)據(jù)表:實現(xiàn)各種數(shù)據(jù)表的瀏覽,包括進貨表、銷售表、退貨表、員工表、進貨商、客戶表瀏覽時此表數(shù)據(jù)的所有信息項全部顯示。
如果是員工信息或進貨商信息有變化,還可以對員工表和進貨商表可以進行修改數(shù)據(jù),其他的表則不能進行修改,防止有人制造假數(shù)據(jù)7)幫助:提供系統(tǒng)信息及系統(tǒng)應(yīng)用提示5. 系統(tǒng)實現(xiàn)5.1 應(yīng)用程序主界面的實現(xiàn)系統(tǒng)主界面是程序運行的起始點,負責(zé)整個程序的開啟和關(guān)閉系統(tǒng)主界面的最終效果圖如圖5-1所示圖5-1 程序預(yù)覽運行程序后首先出現(xiàn)登錄界面,您需要在用戶名稱的下拉列表中選擇您所使用用的用戶名,然后鍵入密碼,點擊[登錄]按鈕或直接按回車鍵,就根據(jù)您的權(quán)限進入鐵嶺香河商貿(mào)有限公司銷售管理系統(tǒng)如果你所輸入的密碼與所選擇的用戶名不符,就會顯示錯誤信息,提示重新輸入輸入成功后,會根據(jù)你的權(quán)限對你的操作進行了如指掌制,在此系統(tǒng)中設(shè)有3種權(quán)限,在系統(tǒng)測試中在進行詳細介紹本系統(tǒng)的主界面是一個多文檔(MDI)窗體,使用MDI窗體可以使程序條理清晰,井然有序,因為MDI窗體是父窗體,它負責(zé)整個程序的啟動和關(guān)閉,其他的窗體都是它的子窗體一個應(yīng)用程序只能有一個MDI窗體,但可以擁有多個子窗體單擊“工程”→“添加MDI窗體”菜單,在彈出的對話框中單擊“打開”按鈕則為當前項目添加了一個MDI窗體添加好MDI窗體后,按照表5~1所示設(shè)置其各個屬性。
表5~1 MDI窗體屬性窗體屬性取值NameWindowsStateCaption鐵嶺香河商貿(mào)有限公司銷售管理系統(tǒng)StartUpPosition2-CenterScreenWindowsState2-Maximized5.1.1添加菜單使用菜單編輯器為本主窗體添加如圖5-2所示的多級菜單其中進貨統(tǒng)計菜單下有今日進貨量、本月進貨量、本季度進貨量、今年進貨量4個子菜單:銷售統(tǒng)計菜單下有今日銷售量、本月銷售量、本季度銷售量、今年銷售量4個子菜單:業(yè)績查看菜單無子菜單:查看數(shù)據(jù)表菜單下有現(xiàn)存貨表、各級菜單的Caption和Name屬性如表5-2所示表5-2 菜單屬性設(shè)置CaptionName登錄系統(tǒng)Mnlogin登錄Mnemlogin修改密碼Mnchpwd添加新用戶Adduser退出Mnexit交易管理Mntrade進貨登記Mnbuylog銷售登記Mnselllog退貨登記Mnretreat進貨統(tǒng)計Mnbuyst今日進貨量Mntbuy本月進貨量Mnthmbuy本季度進貨量Mnthsbuy今年進貨量Mnthybuy銷售統(tǒng)計Mnsellst今日銷售Mntsell本月銷售Mnthmsell本季度銷售Mnthssell今天銷售Mnthysell業(yè)績查看Mngrade查看數(shù)據(jù)表Mntable現(xiàn)存貨表Mngoodstable已售商品表Mnselltable退回表Mnretable員工表Mnem進貨商表Mnfc客戶表Mncus幫助Help5.1.2系統(tǒng)與數(shù)據(jù)庫的連接ODBC(開放式的數(shù)據(jù)庫連接,Oper Database Connectivity)是一種公認的關(guān)系數(shù)據(jù)源的接口界面。
它提供統(tǒng)一的接口界面,ODBC對任何數(shù)據(jù)源都未作優(yōu)化本程序中使用ADO通過ODBC的方法同數(shù)據(jù)庫接口,ADO通過其內(nèi)部的屬性和方法提供統(tǒng)一的數(shù)據(jù)訪問接口打開“控制面板”進入“管理工具”雙擊“數(shù)據(jù)源(ODBC)”圖標,進入如圖5-3所示的數(shù)據(jù)源管理器圖5-3 數(shù)據(jù)源管理器單擊“添加”按鈕,進入創(chuàng)建新數(shù)據(jù)源窗體,選擇其中的Microsoft AccessDriver(*.mdb)如圖5-4所示圖5-4 創(chuàng)建數(shù)據(jù)源單擊“完成”按鈕,進入如圖5-5所示的ODBC Microsoft Access安裝窗口,在“數(shù)據(jù)源名”中輸入此數(shù)據(jù)源名稱,單擊下面的“選擇”按鈕,選擇所要創(chuàng)建數(shù)據(jù)源的數(shù)據(jù)庫名可以單擊“高級按鈕”,進入設(shè)置高級選項窗口,設(shè)置使用此數(shù)據(jù)源的帳號和密碼5.1.3添加公共模塊入引用由于程序中對數(shù)據(jù)庫連接串是整個程序共用的,所有窗體都是用它連接數(shù)據(jù)源,而且還有一些跨窗體的變量,所以應(yīng)該使用公共模塊來存放這些全避變量單擊“工程”→“添加模塊”菜單,打開一個公共模塊,在其中添加如下代碼:Option ExplicitPublic conn As New ADODB.Connection由于要使用ADO連接數(shù)據(jù)源,因此在添加代碼之前應(yīng)添加上“Microsoft Active Data Objects 2.0 Library”項。
5.1.4添加代碼主窗體中主要是負責(zé)打開和關(guān)閉對數(shù)據(jù)庫的連接,其他的代碼則主要是實現(xiàn)單擊某個菜單選項即彈出相應(yīng)窗體的語句,添加以下代碼以打開數(shù)據(jù)庫連接:Private Sub MDIForm_Load()Dim strCnn AS StringStrCnn=”Provider=MSDASQL .1;Persist Security Info=False; Data Source=SellSystem”Conn.Open strCnnEnd Sub上面的strCnn被賦予的值是ADO的連接串屬性,其中Provider是數(shù)據(jù)源的提供者,中間一部分表示使用此數(shù)據(jù)源不用賬號和密碼,最后的Data Source 部分是前面建立的ODBC數(shù)據(jù)源的名稱再添加以下代碼,使得關(guān)閉程序的同時關(guān)閉對數(shù)據(jù)庫的連接;Private Sub MDIForm_unload (Cancel As Integer)End Sub5.2 交易管理的實現(xiàn)交易管理模塊下有進貨登記、銷售登記、退貨登記3個子模塊5.2.1進貨登記的實現(xiàn)重要控件及其屬性 進貨登記應(yīng)用界面中重要控件的屬性如表5-3年示表5-3 進貨登記窗體重要控件屬設(shè)置控件屬性屬性值FrameNameFrmaddgoodsCaption添加商品FrameNameFrmaddfcCaption添加廠商TextBoxNameTxtgoodsnoText編號自動添加EnabledFalseCommandNameCmdaddCaption添加入庫CommandNameCmdResetCaption清空重填CommandNameCmdAddfcCaption添加入庫CommandNameCmdResetfccaption清空重填(2)具體實現(xiàn)方法首先在MDIfrmMain 主窗體代碼中添加如下代碼,以使單擊“進貨登記”子菜單后進入本窗體:Private Sub mnbuy log_dlick()FrmAddGoods.ShowEnd Sub然后考慮“添加商品”框中的相應(yīng)代碼。
由于上下兩個框都要使用ADODB.Recordset變量,因此先加入以下代碼定義5個窗體范圍的ADODB.Recordser變量在代碼窗體的上端:Dim rs_supply As New ADODB.RecordsetDim rs_name As New ADODB.RecordsetDim rs_addfc As New ADODB.RecordsetDim rs_add As New ADODB.RecordsetDim rs_addfcname As New ADODB.Recordset首先需要檢測是否所有待填字段都已填寫相應(yīng)信息,不允許有空,如果為空則彈出“請?zhí)顚?****!”窗口提示用戶檢測完用戶輸入信息后,再使用上面定義的RecordSet對象變量打開goods表,這樣才能添加記錄到庫中代碼如下:Private Sub cmdadd_click()……Dim sq1 As StringSq1=“select * from goods”rs_add.Open sq1,conn,adOpenKeyset,adLockPessimistic……End Sub5.2.2 銷售登記的實現(xiàn)(1)重要控件及其屬性銷售登記應(yīng)用界面中重要控件的屬性如表5-4所示。
表5-4 銷售登記窗體重要控件屬性設(shè)置控件屬性屬性值TexBoxNameTxtGoodsNotext編號自動添加EnabledFalseCommandNameCmdsellCaption銷售CommandNameCmdResetCaption清空重填CommandNameCommand1caption添加新客戶(2)具體實施方法首先在MDIfrmMain主窗體代碼中添加如下代碼,以使單擊“銷售登記”子菜單后進入本銷售登記窗體:private Sub mnsell_Click()frmSell.ShowEnd Sub在添加銷售登記窗體的代碼時也需要加入以下代碼定義四個窗體范圍的ADODB.Recordset變量在代碼窗體的上端:Dim rs_custom As New ADODB.RecordsetDim rs_supply As New ADODB.RecordsetDim rs_add As New ADODB.Recordset5.2.3 退貨登記的實現(xiàn)(1)重要控件及其屬性退貨登記應(yīng)用界面中重要控件及其屬性如表5-5所示表5-5 退貨登記窗體重要控件屬性設(shè)置控件屬性屬性值TextBoxNameTxtGoodsNoText編號自動添加EnabledFalseCommandNameCmdRetreatCaption退貨CommandNameCmdResetCaption清空重填Option1ButtonNameOptionlCaption好的,入庫存商品庫Option1ButtonNameOption2Caption壞的,入廢商品庫(2)具體實現(xiàn)方法首先在MDIdfrmMain主窗體代碼中添加如下代碼,以使單擊“退貨登記”子菜單后進入本退貨登記窗體:private Sub mnselllog_Click() FrmRetreat.ShowEnd Sub退貨操作需要進行以下4個操作:檢測是否確實已銷售,從銷售表中減去,加入退貨表,返回加入現(xiàn)存貨表或廢商品庫表。
檢測和從銷售表中減去都是對銷售表的操作,因此可以用同一個游標所以需要加入以下代碼定義6個窗體范圍的ADODB.Recordset變量在代碼窗體的上端:Dim rs_custom As New ADODB.RecordsetDim rs_supply As New ADODB.RecordsetDim rs_back As New ADODB.RecordsetDim rs_check As New ADODB.RecordsetDim rs_buy As New ADODB.RecordsetDim rs_buybad As New ADODB.Recordset5.3 進貨統(tǒng)計的實現(xiàn)進貨統(tǒng)計模塊下有4個子模塊,分別是今日進貨量、本月進貸量、本季度進貨量、今年進貨量由于它們的應(yīng)用界面非常相似,本系統(tǒng)中使用一個SSTab控件以選項卡形式在一個應(yīng)用界面中實現(xiàn)以上4個子模塊進貨統(tǒng)計應(yīng)用界面中最重要的一個控件是一個SSTab控件,其屬性設(shè)置如表5-6和表5-7所示表5-6 SSTab控件屬性設(shè)置屬性屬性值NameSSTabbbuyTab count4tabsperRow4表5-7 SSTab控件屬性設(shè)置Current tabTab Caption0今日進貨量1本月進貨量2本季度進貨量3今年進貨量由于每個選項卡的界面都一樣,現(xiàn)以“今日進貨量”選項卡為便,此選項卡中需加入2個DataGrid控件,2個Adodc控件,1個Label和1個TextBos。
控件的屬性設(shè)置如表5-8所示表5-8 今日進貨量重要控件屬性設(shè)置控件屬性屬性值datagridNameDatdGridlAllowAddNewFalseAllowDeleteFalseAllowUpdateFalseDataSourceAdodclDatagridNameDataGrid2AllowAddNewFalseAllowDeleteFalseAllowUpdateFalseDataSourceAdodc2adodcNameAdodc1VisibleFalseAdodcNameAdodc2VisibleFalseTexBoxNameText1LabelNameLabel1caption總金額到此,今日進貨量選項卡的控件屬性設(shè)置完成,其他3個選項卡的控件安排和屬性設(shè)置與今日進貨量選項卡級為相似,不再贅述具體源程序代碼詳見代碼冊之frmbuyst部分6. 結(jié)論與展望經(jīng)過三個多月的開發(fā)和設(shè)計,銷售管理系統(tǒng)基本開發(fā)完成,其功能基本滿足中小型企業(yè)銷售管理系統(tǒng)的需求,能夠完成進貨管理、銷售管理及退貨管理等功能,以及按不同方式實現(xiàn)檢索,并提供部分系統(tǒng)維護功能,使用戶方便進行資料修改、更新、刪除。
但是由于畢業(yè)設(shè)計時間較短,加之本人水平所限,此系統(tǒng)只能初步運用Visual Basic強大功能的一些基本控件,在創(chuàng)建這個系統(tǒng)時也遇到過一些困難,如在設(shè)計退貨管理模塊時,要考慮所退回的商品的好與壞,是好的要退回原庫存商品庫中,是壞的則需退入廢品庫,操作過程復(fù)雜,是幾經(jīng)調(diào)試才能正常運行的因此在設(shè)計過程中可能有漏洞或不盡如人意的地方,這有待于以后進一步完善,請老師和同學(xué)們體諒并多提寶貴意見通過本次畢業(yè)設(shè)計,我基本掌握了Visual Basic編程Access的應(yīng)用,使我更進一步了解了面向?qū)ο缶幊痰膬?nèi)涵,領(lǐng)略了Visual Basic的博大精深,以及其高效率的開發(fā)環(huán)境,Visual Basic真的是很好的開發(fā)工具7.參考文獻[1] 譚浩強,王曉敏,李海波,楊紅兵Visual Basic 程序設(shè)計 中國鐵道出版社[2] 張勇 Visual Basic 課程設(shè)計案例精編 中國水利水電出版社[3] 張海藩,牟永敏.面向?qū)ο蟪绦蛟O(shè)計實用教程.清華大學(xué)出版社.2002.10~11[4] Ronaad J.Norman,Obiect-Oriented Systems and Design.1996.20~21[5] 鄧良松,劉海巖,陸麗娜.軟件工程.西安電子科技大學(xué)出版社.2004.71~78[6] 董士海.計算機軟件工程環(huán)境與軟件工程.北京:北京科學(xué)出版社.1990.45~48[7] 耿國華.數(shù)據(jù)結(jié)構(gòu)--C語言描述.西安電子科技大學(xué)出版社.2002.183~18721。
