




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
畢業(yè)設(shè)計PAGE1汽車電子設(shè)計競賽汽車遠(yuǎn)近光燈智能控制系統(tǒng)的設(shè)計與實現(xiàn)設(shè)計人員:指導(dǎo)老師:完成時間:
摘要:本汽車遠(yuǎn)近光燈智能控制系統(tǒng)分為遠(yuǎn)光燈和近光燈光強(qiáng)檢測部分、汽車環(huán)境光強(qiáng)檢測并自動調(diào)光部分、時鐘檢測智能開啟燈光部分、液晶顯示遠(yuǎn)近光燈亮滅情況部分、主動按鍵自由控制部分。整個系統(tǒng)主要以模擬電路為主,配合數(shù)字電路控制,全系統(tǒng)通過AT89S52單片機(jī)進(jìn)行全局控制,利用光敏電阻進(jìn)行可靠的可見光光強(qiáng)檢測。通過論證,本系統(tǒng)能夠很好地實現(xiàn)汽車的燈光亮度調(diào)節(jié)和遠(yuǎn)近光燈的轉(zhuǎn)換。關(guān)鍵字:遠(yuǎn)光燈,近光燈,AT89S52,光強(qiáng)檢測,調(diào)節(jié)光亮度TheAutoDistanceHeadlightAutomaticMonitoringElectricalSystemAbstract:Theautodistanceheadlightautomaticmonitoringelectricalsystemcanbedividedintolong-and-shortdistancelightforcemonitoringpart,autoenvironmentlightforceautomaticmonitoringpart,clockmonitoringautomaticpower-onpart,liquidcrystaldisplayinglongandshortdistancelighton-and-offpart,activeautomaticpressingcontrollingpart.Thewholesystemisfocusedonanalogouscircuitandaccompaniedwithdigitalcircuitmonitoring.Thesystemcontrolsthewholeconditionthrough51MCUanddetectsthevisiblelightforcebrightnessbyphotoresistorreliably.Basedondemonstrations,thesystemcanperformautolightforceadjustmentandlongandshortdistancelighttransferring.Keywords:longdistancelightshortdistancelightAT89S52,lightforcedetectionadjustinglightforcebrightness(一)系統(tǒng)方案:系統(tǒng)方案的選擇與論證基本方案論證本設(shè)計硬件電路分為系統(tǒng)控制部分、遠(yuǎn)光燈和近光燈光強(qiáng)檢測部分、汽車環(huán)境光強(qiáng)檢測并自動調(diào)光部分、時鐘檢測智能開啟燈光部分、液晶顯示遠(yuǎn)近光燈亮滅情況部分、自動按鍵自由控制部分六大部分。方案系統(tǒng)采用AT89S52進(jìn)行全局控制,汽車環(huán)境光強(qiáng)檢測并自動調(diào)光部分采用光敏電阻與BTS629A所組成的外圍電路來檢測燈光與自動調(diào)光,無需單片機(jī)控制;遠(yuǎn)光燈和近光燈光強(qiáng)檢測部分采用了光敏電阻與比較器根據(jù)“0”、“1”電平來判別遠(yuǎn)光燈和近光燈;時鐘檢測智能開啟燈光部分采用了DS1307實時時鐘芯片,使單片機(jī)能夠?qū)崟r根據(jù)規(guī)定白天和黑夜的兩個時間段分別控制,實時操作;自動按鍵自由控制部分,具備人性化操作,無論在那個時間、那種情況,司機(jī)都可以自由的操作車燈;液晶顯示部分則采用LCD1602來提醒司機(jī)當(dāng)前車燈的情況。(二)功能指標(biāo)1.功能:系統(tǒng)通過AT89S52單片機(jī)進(jìn)行全局控制,利用光敏電阻進(jìn)行可靠的可見光光強(qiáng)檢測,很好地實現(xiàn)了汽車的燈光亮度調(diào)節(jié)和遠(yuǎn)近光燈的轉(zhuǎn)換,也可以通過鍵盤實現(xiàn)車燈的自動控制和手動控制的切換,同時燈也可以根據(jù)時間來開啟和關(guān)閉,液晶顯示當(dāng)前燈的開啟情況。(三)實現(xiàn)原理(1)系統(tǒng)硬件主要組成部分系統(tǒng)控制模塊:本模塊采用了AT89S52便宜的51內(nèi)核單片機(jī),晶振為11.0592MHz,其中外圍電路包括復(fù)位電路。遠(yuǎn)近光燈檢測模塊:本模塊采用了光敏電阻和比較器為基礎(chǔ)的光強(qiáng)測量電路,比較器采用了uA741集成運放。通過調(diào)整電位器來實現(xiàn)光強(qiáng)強(qiáng)度檢測,比較器輸出為高電平,則為遠(yuǎn)光燈,否則就是近光燈。自動調(diào)光模塊:該模塊采用了BTS629A與光敏電阻構(gòu)成的環(huán)境光強(qiáng)檢測與自動調(diào)光電路,當(dāng)汽車所在環(huán)境中的光線變強(qiáng),光敏電阻立刻檢測到光線的變化,并且轉(zhuǎn)換為電壓的變化,輸出到調(diào)光芯片BTS629A的2號管腳,實現(xiàn)同步調(diào)光。時鐘模塊:該模塊用于檢測白天和黑夜,使單片機(jī)可以在不同情況下控制車燈的亮滅。液晶顯示模塊:該模塊用于提醒提示司機(jī)當(dāng)前的車燈亮滅情況。主動按鍵自由控制模塊:該模塊由3個簡單的按鍵構(gòu)成,其中一號按鍵是開啟遠(yuǎn)光燈,二號按鍵是開啟近光燈,三號按鍵是自由模塊,由遠(yuǎn)近光燈檢測模塊來判斷是開啟遠(yuǎn)光燈還是近光燈。方便司機(jī)隨時操作車燈。(四)硬件框圖遠(yuǎn)近光燈檢測模塊遠(yuǎn)近光燈檢測模塊CPUAT89S52系統(tǒng)控制自動調(diào)光模塊按鍵模塊液晶顯示遠(yuǎn)近光燈時鐘模塊圖1硬件組成方案(五)軟件流程開始(開始(Initial()函數(shù))讀時鐘(Read_RTC())時間在夜晚嗎?(時鐘規(guī)定時間)檢測p3.2高電平還是低電平?讀時鐘(Read_RTC())顯示時鐘(Display())檢測(p1.2||p1.3||p1.4||時間在晚上嗎?)是否動作?遠(yuǎn)光燈近光燈自動調(diào)節(jié)模式P1.2||p1.3||p1.4||=0時間還在晚上嗎?(六)系統(tǒng)測試方案系統(tǒng)分為遠(yuǎn)光燈和近光燈光強(qiáng)檢測部分、汽車環(huán)境光強(qiáng)檢測并自動調(diào)光部分、時鐘檢測智能開啟燈光部分、液晶顯示遠(yuǎn)近光燈亮滅情況部分、主動按鍵自由控制部分。首先是進(jìn)行單個模塊的測試,然后再將所有的模塊結(jié)合軟件一起測試。由于本系統(tǒng)的時鐘模塊和液晶模塊,平常接觸較多,相對比較熟悉,所以就只測試了遠(yuǎn)光燈和近光燈光強(qiáng)檢測部分和汽車環(huán)境光強(qiáng)檢測并自動調(diào)光部分。測試設(shè)備:示波器,萬用表、穩(wěn)壓直流電源、手電筒、電腦和編程器測試數(shù)據(jù):測試分析:由調(diào)試的數(shù)據(jù)可以知道,車燈根據(jù)外界環(huán)境的變化,當(dāng)在晚上的時間里,單片機(jī)會根據(jù)車的狀態(tài)自動開燈,在外界光強(qiáng)暗時,車燈功率大,當(dāng)外界功光強(qiáng)強(qiáng)時,車燈功率小,此時達(dá)到一個節(jié)能的效果。實現(xiàn)功能:晚上汽車會車時,根據(jù)系統(tǒng)遠(yuǎn)光燈和近光燈光強(qiáng)檢測部分檢測對面汽車遠(yuǎn)近光的開啟情況,來自動切換自己車燈的遠(yuǎn)近光燈,以此減少交通事故。同時汽車還會根據(jù)汽車環(huán)境光強(qiáng)檢測并自動調(diào)光部分檢測到的環(huán)境光強(qiáng)來調(diào)節(jié)自身車燈的光強(qiáng),以大到節(jié)能的目的。特色:通過遠(yuǎn)近光燈的切換,可以減少司機(jī)由于光照過強(qiáng),而引起的交通事故,達(dá)到了安全的效果。汽車環(huán)境光強(qiáng)檢測并自動調(diào)光部分可以自動調(diào)節(jié)汽車的燈的亮度,減少了汽車的燈泡的功率消耗,從而實現(xiàn)了節(jié)能,環(huán)保的理念。(七)附錄含源代碼和程序清單(一部分)#include<reg51.h>#include<intrins.h>/**********************定義LCD1602控制字******************************/#defineLCD_SYS_MODE0X38//8位數(shù)據(jù)總線,2行顯示,5*7點陣#defineLCD_NO_FLASH0X0c//開顯示,光標(biāo)不顯示,光標(biāo)不閃爍#defineLCD_SH0X14//光標(biāo)左移#defineLCD_NO_SHIFT0X06//AC加1,光標(biāo)移動,內(nèi)容不移動#defineLCD_CLEAR_SCREEN0X01//清屏#defineLCD_GO_HOME0X02//AC=0,光標(biāo),畫面回HPME//輸入方式設(shè)置#defineLCD_AC_AUTO_INCREASEMENT0X06//數(shù)據(jù)讀寫操作后,AC自動增一#defineLCD_AC_AUTO_DECREASEMENT0x04//減一#defineLCD_MOVE_ENABLE0X05//數(shù)據(jù)讀寫操作后,畫面平移#defineLCD_MOVE_DISABLE0X04//不動//設(shè)置顯示,光標(biāo)及閃爍開關(guān)#defineLCD_DISPLAY_ON0X0C//顯示開#defineLCD_DISPLAY_OFF0X08//顯示關(guān)#defineLCD_CURSOR_ON0X0A//光標(biāo)顯示#defineLCD_CURSOR_OFF0X08//光標(biāo)不顯示#defineLCD_CURSOR_BLINK_ON0X09//光標(biāo)閃爍#defineLCD_CURSOR_BLINK_OFF0XO8//光標(biāo)不閃爍//光標(biāo),畫面移動,不影響DDRAM#defineLCD_LEFT_MOVE0X18//LCD顯示左移一位#defineLCD_RIGHT_MOVE0X1C//LCD顯示右移一位#defineLCD_CURSOR_LEFT_MOVE0X10//光標(biāo)左移一位#defineLCD_CURSOR_RIGHT_MOVE0X14//右//工作方式設(shè)置#defineLCD_DISPLAY_DOUBLE_LINE0x38//兩行顯示#defineLCD_DISPLAY_SIGLE_LINE0X30//一行顯示/***********************LCD1602地址相關(guān)******************************/#defineLINE1_HEAD0x80//第一行DDRAM起始地址#defineLINE2_HEAD0xc0//第二行DDRAM起始地址#defineLINE10//第一行#defineLINE21//第二行#defineLINE_LENGTH16//每行的最大字符長度/***********************LCD1602接線引腳定義************************************************可根據(jù)實際電路改變*******************************/#defineLCDIOP0//定義P2口與LCD1602的數(shù)據(jù)口相接sbitLCD_RS=P2^7;sbitLCD_RW=P2^6;sbitLCD_EN=P2^5;sbitP3_2=P3^2;sbitP1_2=P1^2;sbitP1_3=P1^3;sbitP2_2=P2^2;sbitP1_4=P1^4;sbitP2_3=P2^3;/**********************另外相關(guān)的定義*********************************/#defineDELAYTIME100//#defineHIGH1#defineLOW0#defineTURE1#defineFALSE0#defineucharunsignedchar#defineuintunsignedint/*************************以下是函數(shù)的申明部分*************************/voidLCD_init(void);//LCD1602初始化voidLCD_send_command(ucharcommand);//voidLCD_send_data(uchardat);voidLCD_write_string(ucharx,uchary,char*Data);voidLCD_delay(void);voidLCD_write_char(unsignedx,unsignedchary,unsignedchardat);voidLCD_set_position(unsignedcharx);voidDisplay1(void);/*********************結(jié)束***********************************************//***************************DS1307開始*****************************************************************/#defineWait1us_nop_();#defineWait2us{_nop_();_nop_();}#defineWait4us{Wait2us;Wait2us;}#defineWait8us{Wait4us;Wait4us;}#defineWait10us{Wait8us;Wait2us;}#defineWRITEDS13070xD0#defineREADDS13070xD1sbitSDA=P2^1;//DS1307Serial-DataInputpin5sbitSCL=P2^0;//DS1307Serial-ClockInputpin6/************************************************************/voidI2C_start(void);//I2CstartfunctionvoidI2C_stop(void);//I2Cstopfunction//voidI2C_send_ack(void);//I2CsendresponsionfunctionvoidI2C_send_noack(void);unsignedcharI2C_write_byte(unsignedcharIIC_data);//I2CbuswritebytefunctionunsignedcharI2C_read_byte(void);//I2Cbusreadbytefunction/***********************************************************************/voidWrite1307(unsignedcharadd,unsignedchardat);//writeinformationtods1307unsignedcharRead1307(unsignedcharadd);//readinformationfromds1307voidRead_RTC(void);//readRTCvoidSet_RTC(void);//setRTC/***********************************************************************/codeunsignedcharset_rtc_code[7]={55,59,20,4,07,8,8};//秒分時周日月年0到7codeunsignedcharrtc_address[7]={0x00,0x01,0x02,0x03,0x04,0x05,0x06};codeunsignedchar*day[7]={"Mon","Tue","Wen","Thu","Fri","Sat","Sun"};unsignedcharread_rtc_code[7];/***********************************************************************/voidInitial(void);//systeminitizefunctionvoidDisplay(void);//RTCdisplayfunction/***********************************************************************/voidmain(void){inti;Initial();while(1){P1_2=LOW;P1_3=LOW;P1_4=LOW;Read_RTC();if((0<=read_rtc_code[2]&&read_rtc_code[2]<=6||18<=read_rtc_code[2]&&read_rtc_code[2]<=24)&&P2_2==HIGH&&P2_3==LOW){while((0<=read_rtc_code[2]&&read_rtc_code[2]<=6||18<=read_rtc_code[2]&&read_rtc_code[2]<=24)&&P1_2==LOW&&P1_3==LOW&&P1_4==LOW){P1_4=HIGH;Read_RTC();Display();}}elseLCD_send_command(LCD_CLEAR_SCREEN);while(P1_2==LOW&&P1_3==LOW&&P1_4==LOW&&6<read_rtc_code[2]&&read_rtc_code[2]<18){Read_RTC();Display1();P2_2=LOW;P2_3=HIGH;}PT:Read_RTC();while(P1_2==LOW&&P1_3==LOW&&(0<=read_rtc_code[2]&&read_rtc_code[2]<=6||18<=read_rtc_code[2]&&read_rtc_code[2]<=24)){if(P3_2){LCD_write_string(0x00,LINE1,"LIGHT1_ON");LCD_write_string(0x00,LINE2,"LIGHT2_OFF");P2_2=HIGH;P2_3=HIGH;for(i=0;i<10000;i++){;}P2_3=HIGH;P2_2=LOW;for(i=0;i<10000;i++){;}P2_2=HIGH;P2_3=HIGH;for(i=0;i<10000;i++){;}while(P3_2==HIGH&&P1_2==LOW&&P1_3==LOW&&(0<=read_rtc_code[2]&&read_rtc_code[2]<=6||18<=read_rtc_code[2]&&read_rtc_code[2]<=24)) { Read_RTC(); P2_2=HIGH; P2_3=HIGH; }}else{LCD_write_string(0x00,LINE1,"LIGHT1_OFF");LCD_write_string(0x00,LINE2,"LIGHT2_ON");P2_2=LOW;P2_3=LOW;for(i=0;i<10000;i++){;}P2_2=HIGH;P2_3=HIGH;for(i=0;i<10000;i++){;}P2_2=LOW;P2_3=LOW;for(i=0;i<10000;i++){;}while(P3_2==LOW&&P1_2==LOW&&P1_3==LOW&&(0<=read_rtc_code[2]&&read_rtc_code[2]<=6||18<=read_rtc_code[2]&&read_rtc_code[2]<=24)){Read_RTC();P2_2=LOW;P2_3=LOW;}}}if(P1_2){LCD_send_command(LCD_CLEAR_SCREEN); while(P1_3==LOW&&P1_4==LOW){P2_2=HIGH;P2_3=HIGH;LCD_write_string(0x00,LINE1,"LIGHT1_ON");LCD_write_string(0x00,LINE2,"LIGHT2_OFF");}}elseif(P1_3){LCD_send_command(LCD_CLEAR_SCREEN);while(P1_2==LOW&&P1_4==LOW){P2_2=LOW;P2_3=LOW;LCD_write_string(0x00,LINE1,"LIGHT1_OFF");LCD_write_string(0x00,LINE2,"LIGHT2_ON");}}elseif(P1_4){gotoPT;}}} 擴(kuò)展應(yīng)用系統(tǒng)電路圖3、查新報告基于HT46R24的汽車車燈智能控制器設(shè)計。設(shè)計了一種基于HT46R24的汽車車燈智能控制器,對該控制器的單片機(jī)控制電路、環(huán)境光檢測電路與光強(qiáng)判斷電路、繼電控制車燈電路。結(jié)果表明研制的汽車車燈智能控制器設(shè)計原理新穎,硬件簡單,具有可靠的自動變光功能。與汽車遠(yuǎn)近光燈智能控制系統(tǒng)比較1.基于HT46R24的汽車車燈智能控制器是通過光敏電阻來檢測光,把環(huán)境光檢測電路的光通過光強(qiáng)判斷電路來把光分為3種等級,微光區(qū),弱光區(qū),無光區(qū)。通過檢測到的狀態(tài)來控制示寬燈,遠(yuǎn)光燈,近光燈的開啟,通過控制3種車燈的開啟來實現(xiàn)車燈的調(diào)節(jié),利用等級來調(diào)光。汽車遠(yuǎn)近光燈智能控制系統(tǒng)是通過光敏電阻來檢測遠(yuǎn)光燈,實現(xiàn)遠(yuǎn)近光燈的自動切換,而自動調(diào)光是由BTS629芯片來實現(xiàn),它是隨著外界光強(qiáng)的變化來改變車燈的亮度,點對點的調(diào)光,實現(xiàn)的方法不同,而本系統(tǒng)能實現(xiàn)節(jié)能的效果。應(yīng)用資料與參考文獻(xiàn)目錄單片機(jī)原理與控制技術(shù)張志良51單片機(jī)及其C語言程序開發(fā)實例清華大學(xué)出版社前言雖然汽車工業(yè)經(jīng)歷了一百多年的發(fā)展歷史,但對國家經(jīng)濟(jì)的發(fā)展和騰飛以及對人類社會的文明帶來了巨大影響。在許多國家,汽車工業(yè)已成為支柱產(chǎn)業(yè),現(xiàn)有的汽車銷售公司的汽車銷售管理水平還停留在紙介質(zhì)的基礎(chǔ)上,這樣的機(jī)制已經(jīng)不能適應(yīng)時代的發(fā)展,因為它浪費了許多的人力和物力。在信息時代這種傳統(tǒng)的管理方法必然被計算機(jī)為基礎(chǔ)的信息管理所取代,汽車銷售系統(tǒng)的誕生真正解決了這一問題。在汽車銷售管理系統(tǒng)中需要處理大量的汽車信息,還要時刻更新汽車銷售信息,不斷添加和完善汽車信息。面對不同種類的信息,需要合理的數(shù)據(jù)庫結(jié)構(gòu)來保存數(shù)據(jù)信息,需要有效的程序結(jié)構(gòu)支持各種數(shù)據(jù)操作的執(zhí)行。汽車信息自動化的產(chǎn)品管理在歐美等國家早已經(jīng)實現(xiàn)。它最主要的特點是能夠?qū)崟r的和準(zhǔn)確的控制店內(nèi)的銷售情況。如果可以能夠?qū)崟r掌握銷售流程及銷售情況,則可以有效地加速汽車的周轉(zhuǎn)率并提高服務(wù)質(zhì)量,而且可以減少汽車售價不符等所產(chǎn)生的問題。顧客的消費要求的是希望在購買中能基本上都能購得所需的汽車,并且還要既保證汽車質(zhì)量還要提供享受優(yōu)質(zhì),方便的服務(wù)。1.系統(tǒng)分析1.1背景分析隨著現(xiàn)代科學(xué)技術(shù)的迅猛發(fā)展,計算機(jī)技術(shù)已經(jīng)滲透到各個領(lǐng)域,成為各行業(yè)必不可少的工具,特別是Internet技術(shù)的推廣和信息高速公路的建立,使IT產(chǎn)業(yè)在市場競爭中越發(fā)顯示出其獨特的優(yōu)勢,步入信息化時代,有巨大的數(shù)據(jù)信息等待加工處理和傳輸,這使得對數(shù)據(jù)庫的進(jìn)一步開發(fā)和利用顯得尤為迫切。汽車工業(yè)經(jīng)歷了一百多年的發(fā)展歷史,對國家經(jīng)濟(jì)的發(fā)展和騰飛以及對人類社會的文明帶來了巨大影響。在許多國家,汽車工業(yè)已成為支柱產(chǎn)業(yè),隨著人們生活水平以及汽車性能的不斷提高,人們對汽車的消費和需求也越來越旺盛,世界汽車工業(yè)也保持龐大的市場需求和生產(chǎn)規(guī)模。1.2系統(tǒng)需求分析近年來,中國汽車市場發(fā)展迅猛,以接近40%的速度增長,特別是政府新政策的出臺,大大刺激了消費市場。巨大的市場容量和可觀的經(jīng)濟(jì)效益,引起各汽車廠家(包括世界各著名汽車廠家的在華企業(yè))紛紛加大投資,汽車市場烽煙四起,汽車銷售策略和模式新招頻出,競爭已是空前的激烈。在如此形式下,一種介于生產(chǎn)廠家和用戶之間的橋梁,汽車銷售公司正在不斷的產(chǎn)生和發(fā)展壯大。汽車銷售公司的汽車銷售管理水平不高,直接關(guān)系著各汽車廠家的根本利益,但現(xiàn)有的汽車銷售公司的汽車銷售管理水平還停留在紙介質(zhì)的基礎(chǔ)上,這樣的機(jī)制已經(jīng)不能適應(yīng)時代的發(fā)展,因為它浪費了許多的人力和物力。在信息時代這種傳統(tǒng)的管理方法必然被計算機(jī)為基礎(chǔ)的信息管理所取代。1.3系統(tǒng)可行性分析在IT行業(yè)中從業(yè)的工作人員一般都要求掌握計算機(jī)技術(shù),具有一定的軟硬件基礎(chǔ),會使用各種管理軟件,熟悉IT產(chǎn)品。因為,有的公司對職工的素質(zhì)要求比較高,從管理層到下面的銷售人員,都要求具有一定的計算機(jī)基礎(chǔ),所以在新系統(tǒng)投入使用時,只要對職工進(jìn)行少量的培訓(xùn),系統(tǒng)的功能和使用方法就基本上能夠是系統(tǒng)順利運行。因為通過網(wǎng)絡(luò)傳遞銷售信息可以不受距離的限制,因此可以借閱許多的人力和物力,方便管理,由此可以減少不必要的開支,同時該系統(tǒng)可以提高公司的銷售效率,提高了公司的經(jīng)濟(jì)效益。銷售管理系統(tǒng)是一個信息化、智能化和先進(jìn)管理理念的集合體。而銷售管理是一個動態(tài)過程,在其運行過程中要采取多項措施。所以在銷售管理中獲得經(jīng)濟(jì)效益是一個綜合效益,要對它進(jìn)行直接定量的分析是比較困難的。一般新系統(tǒng)帶來的經(jīng)濟(jì)效益是簡介的,其最主要的表現(xiàn)就是減少了企業(yè)管理費用和人力開支。系統(tǒng)采用基于Windows的圖形用戶界面,而該系統(tǒng)是大家熟悉的操作系統(tǒng),對于那些有一般的計算機(jī)知識的人員就可以輕松上手。而整個公司管理系統(tǒng)采用最友好的交互界面,簡介明了,不需要對數(shù)據(jù)庫進(jìn)行深入的了解。由此,該系統(tǒng)的操作是可行的,有必要開發(fā)該系統(tǒng)。1.4系統(tǒng)功能分析本系統(tǒng)采用自定向下方法開發(fā),其功能模塊主要有如下幾個部分:進(jìn)貨管理模塊、庫存管理模塊、銷售管理模塊、客戶管理模塊和系統(tǒng)模塊。具體的功能描述如下:進(jìn)貨管理:能很好地完成汽車的進(jìn)貨管理。進(jìn)貨管理包括供應(yīng)商信息,需求商信息和汽車基本信息的入庫作業(yè),并根據(jù)企業(yè)情況制定進(jìn)貨計劃,實施產(chǎn)品采購,并進(jìn)行進(jìn)貨查詢。銷售管理:能詳細(xì)地記錄需求商與公司之間的交易過程,即訂車和退車過程。能及時準(zhǔn)確地獲得汽車在某階段的盈虧情況和市場的需求走勢。即通過對汽車銷售排行、汽車進(jìn)貨、汽車退貨、訂車、退車等信息查詢獲得相應(yīng)的結(jié)果,以備公司作為參考,從而制定出相應(yīng)的策略。庫存管理:其功能是對采購來的車輛進(jìn)行企業(yè)內(nèi)部編碼入庫,產(chǎn)品分類等活動,同時能夠根據(jù)銷售清單進(jìn)行出貨管理,以及庫存統(tǒng)計??蛻艄芾恚浩涔δ苁菍镜目蛻艉凸┴浬绦畔⑦M(jìn)行管理,包括查詢,更新等。系統(tǒng)管理:能夠?qū)Σ煌瑱?quán)限的用戶進(jìn)行合理的管理。包括添加用戶,刪除用戶,用戶賬號和密碼管理以及系統(tǒng)各模塊的維護(hù)等。整個汽車銷售管理系統(tǒng)的功能結(jié)構(gòu)如圖1.1所示:汽車銷售管理系統(tǒng)汽車銷售管理系統(tǒng)客戶管理銷售管理進(jìn)貨管理庫存管理系統(tǒng)管理客戶信息管理客戶信息查詢銷售信息登記銷售信息查詢銷售信息盤點進(jìn)貨信息登記進(jìn)貨信息查詢庫存信息登記庫存信息維護(hù)客戶權(quán)限管理系統(tǒng)功能維護(hù)圖1.1系統(tǒng)功能結(jié)構(gòu)圖2.系統(tǒng)概要設(shè)計2.1設(shè)計思想(1)系統(tǒng)分成幾個相對獨立的模塊,但這些模塊都進(jìn)行集中式管理。(2)分層的模塊化程序設(shè)計思想,整個系統(tǒng)采用模塊化結(jié)構(gòu)設(shè)計。作為應(yīng)用程序有較強(qiáng)的可操作性和擴(kuò)展性。(3)合理的數(shù)據(jù)流設(shè)計,在應(yīng)用系統(tǒng)設(shè)計中,相對獨立的模塊間以數(shù)據(jù)流相互連接,使各模塊間的耦合性較低,方便系統(tǒng)運行,提高系統(tǒng)安全性。2.2設(shè)計原則為了使本系統(tǒng)功能齊全完備,操作簡便,最大限度的提高軟件的質(zhì)量,從而滿足用戶的實際需要,在設(shè)計開發(fā)過程中遵循了如下原則:(1)合法性原則:依據(jù)產(chǎn)品核算系統(tǒng)的工作規(guī)定以及要求,參照核算實際的工作情況,進(jìn)行諸如產(chǎn)品進(jìn)貨、銷售等工作。(2)實用性原則:適合產(chǎn)品信息管理工作的實際需求,并能夠處理一些特殊情況的要求,此外,盡可能預(yù)留空間,以便擴(kuò)充功能。(3)準(zhǔn)確性原則:對輸入的相關(guān)資料建立檢錯機(jī)制,及時報錯,使用戶能夠及時準(zhǔn)確的輸入合法資料(如:類型匹配,長度不超限等)。(3)易操作原則:要求設(shè)計的系統(tǒng)功能齊全,界面友好,操作方便,必要的地方進(jìn)行提示。(5)源程序可讀性原則:為了便于其他設(shè)計,維護(hù)人員讀懂代碼或以后的代碼修改,軟件升級維護(hù),即可能做好代碼注釋工作。(6)優(yōu)化原則:為了達(dá)到優(yōu)化的目的,合理的運用窗口,菜單,對象等的繼承,自定義用戶對象,事件,函數(shù),減少不必要的重復(fù)性代碼,使程序簡介明了,也方便了將來的維護(hù)。(7)安全性原則:可以為該系統(tǒng)的用戶設(shè)置用戶權(quán)限。2.3系統(tǒng)業(yè)務(wù)流程圖汽車銷售管理系統(tǒng)主要是是以先進(jìn)的管理理念和科學(xué)的計算機(jī)技術(shù)來取代原始的手工操作。在新系統(tǒng)開發(fā)前,對這個汽車管理系統(tǒng)業(yè)務(wù)流程進(jìn)行了系統(tǒng)的調(diào)查,得出了下面的業(yè)務(wù)流程圖,如圖2-1所示:需需圖2.1系統(tǒng)業(yè)務(wù)流程圖不需否否是是是否公司總經(jīng)理與供貨商洽談進(jìn)貨是否是新供貨商《新供貨商新車輛引進(jìn)流程》《訂貨管理作業(yè)流程》《進(jìn)貨工作流程》銷售管理采購與店面共同分析是否滯銷等問題采購部分析經(jīng)營是否有問題《新車輛轉(zhuǎn)正流程》《供應(yīng)商分析淘汰流程》《結(jié)算流程》《舊供貨商新車輛引進(jìn)流程》采購部處理解決《退貨管理流程》新車輛是否已經(jīng)到期是否需新供應(yīng)商2.4系統(tǒng)數(shù)據(jù)流分析圖圖2.2銷售管理系統(tǒng)頂層圖公司經(jīng)理汽車銷售管理系統(tǒng)顧客供貨商職工人事信息操作人事信息清單車輛信息清單車輛信息操作銷售單進(jìn)貨單采購單職工信息1:庫存管理1:庫存管理2:銷售管理3:進(jìn)貨管理4:人事管理庫存信息清單已進(jìn)貨信息進(jìn)貨信息查詢庫存信息進(jìn)貨信息請求銷售信息查詢庫存信息查詢銷售單銷售信息清單前臺銷售信息職工信息人事信息清單人事信息查詢采購單進(jìn)貨信息清單進(jìn)貨單已有供貨商信息新供貨商信息銷售信息圖2.3汽車銷售管理系統(tǒng)第0層圖圖2.4庫存管理部分第1層圖圖2.5銷售管理部分第1層圖圖2.6進(jìn)貨管理部分第1層圖圖2.7人事管理部分第1層圖2.5數(shù)據(jù)字典數(shù)據(jù)流條目(1)已進(jìn)貨信息=進(jìn)貨單號+供貨商號+車輛名稱+進(jìn)貨價+進(jìn)貨數(shù)量+進(jìn)貨日期+備注(2)銷售信息=銷售單號+車輛編號+銷售數(shù)量+銷售日期文件條目(1)文件名:職工清單組成:{職工編號+姓名+性別+籍貫+學(xué)歷+類別+工資+聯(lián)系電話+聯(lián)系地址+身份證號+聘用日期+編制日期+備注}組織:按職工編號遞增排列(2)文件名:車輛清單組成:{車輛編號+供貨商號+名稱+條形碼+計量單位+類別+產(chǎn)地+單價+備注}組織:按車輛編號遞增排列(3)文件名:供貨商清單組成:{供貨商號+名稱+聯(lián)系人+聯(lián)系電話+聯(lián)系地址+開戶行+銀行帳號+備注}組織:按供貨商編號遞增排列(3)文件名:進(jìn)貨清單組成:{進(jìn)貨單號+車輛編號+供貨商號+進(jìn)貨價+數(shù)量+金額+進(jìn)貨日期+備注}組織:按進(jìn)貨單編號遞增排列(4)文件名:銷售清單組成:{銷售單號+車輛編號+銷售數(shù)量+銷售日期}組織:按銷售單編號遞增排列(5)文件名:庫存清單組成:{車輛編號+庫存數(shù)量}組織:按車輛編號遞增排列加工說明(1)加工名:1:查詢加工邏輯:根據(jù)要查詢的庫存信息,檢索出庫存信息明細(xì)表輸入流:庫存信息查詢,發(fā)出庫存信息請求輸出流:庫存信息清單,進(jìn)貨信息請求(2)加工名:1:更新根據(jù)進(jìn)貨信息或銷售信息更新庫存信息輸入流:已進(jìn)貨信息,銷售信息輸出流:發(fā)出庫存檢索請求(3)加工名:2:查詢根據(jù)要查詢的銷售信息,檢索出銷售信息明細(xì)表輸入流:銷售信息查詢輸出流:銷售清單,銷售單(4)加工名:2:更新加工邏輯:根據(jù)銷售信息更細(xì)銷售清單輸入流:前臺銷售信息,庫存信息輸出流:更新庫存清單(5)加工名:3:查詢加工邏輯:根據(jù)要查詢的進(jìn)貨信息,檢索出進(jìn)貨信息明細(xì)表輸入流:進(jìn)貨信息查詢,發(fā)出進(jìn)貨/采購清單查詢輸出流:庫存信息清單,已進(jìn)貨信息,新供貨商信息,進(jìn)貨單信息清單,采購單,進(jìn)貨信息請求,進(jìn)貨/采購清單檢索結(jié)果(6)加工名:3:更新加工邏輯:根據(jù)進(jìn)貨信息更新進(jìn)貨清單輸入流:進(jìn)貨信息請求,進(jìn)貨單輸出流:發(fā)出進(jìn)貨/采購清單查詢(7)加工名:4:查詢加工邏輯:根據(jù)輸入要查詢的職工信息或供貨商信息,檢索出相應(yīng)的結(jié)果輸入流:職工信息查詢,供貨商信息查詢,發(fā)出職工/供貨商清單查詢輸出流:已有供貨商信息,供貨商信息清單,職工信息清單,職工/供貨商清單檢索結(jié)果(8)加工名:4:更新加工邏輯:根據(jù)輸入的職工信息或新供貨商信息更新相應(yīng)的職工清單或供貨商清單輸入流:職工信息,新供貨商信息清單,職工/供貨商清單檢索結(jié)果2.6性能分析(1)數(shù)據(jù)精確度產(chǎn)品的進(jìn)貨單和銷售單中,單價、金額采用浮點數(shù),保留至小數(shù)點后兩位。(2)時間特性該管理系統(tǒng)軟件從啟動到進(jìn)入系統(tǒng)登錄界面的時間正常情況下應(yīng)少于5秒,錄入并更新數(shù)據(jù)的時間正常情況下少于2秒。(3)適用性該管理系統(tǒng)軟件適用于Windows2000/xp及以上操作系統(tǒng)。3.系統(tǒng)詳細(xì)設(shè)計3.1系統(tǒng)功能結(jié)構(gòu)圖系統(tǒng)總體結(jié)構(gòu)如圖3.1所示:汽車銷售管理系統(tǒng)汽車銷售管理系統(tǒng)客戶管理模塊銷售管理模塊進(jìn)貨管理模塊庫存管理模塊系統(tǒng)管理模塊客戶信息管理客戶信息查詢銷售信息登記銷售信息查詢銷售信息盤點進(jìn)貨信息登記進(jìn)貨信息查詢庫存信息登記庫存信息維護(hù)客戶權(quán)限管理系統(tǒng)功能維護(hù)圖3.1系統(tǒng)總體結(jié)構(gòu)圖3.2系統(tǒng)功能設(shè)計系統(tǒng)功能設(shè)計是使整個系統(tǒng)能基本實現(xiàn)車輛的進(jìn)、銷、存等管理功能,能讓公司管理者更直觀的了解公司的經(jīng)營狀況,以做出相應(yīng)的經(jīng)營決策。管理信息系統(tǒng)(MIS)就是要對這些資源建立正確的數(shù)據(jù)庫,并進(jìn)行信息的收集、傳送、存儲、編制成各種憑證、報表、臺帳、圖形等信息,同時對這些信息進(jìn)行維護(hù),通過實測公司的各種運行情況,并利用過去的歷史數(shù)據(jù)預(yù)測未來的發(fā)展,從公司全局的角度出發(fā)進(jìn)行決策,利用信息控制公司的行為,輔助公司完成其銷售目標(biāo)。本系統(tǒng)主要包括五大模塊,分別是客戶管理模塊,銷售管理模塊,進(jìn)貨管理模塊,庫存管理模塊,系統(tǒng)管理模塊。每個模塊的功能如下:1.客戶管理模塊功能:(1)實現(xiàn)客戶信息的查詢;(2)實現(xiàn)客戶信息的更新,包括增加、刪除、修改功能;(3)實現(xiàn)供貨商信息的查詢;(4)實現(xiàn)供貨商信息的更新,包括增加、刪除、修改功能。2.銷售管理模塊功能:(1)實現(xiàn)銷售信息的查詢;(2)實現(xiàn)車輛銷售信息的盤點。3.進(jìn)貨管理模塊功能:(1)實現(xiàn)進(jìn)貨信息的查詢;(2)實現(xiàn)進(jìn)貨信息的更新,包括增加、刪除、修改功能。4.庫存管理模塊功能:(1)實現(xiàn)車輛信息的查詢;(2)實現(xiàn)車輛信息的更新,包括增加、刪除、修改功能;(3)實現(xiàn)庫存信息的查詢;(4)實現(xiàn)庫存信息的更新,包括增加、刪除、修改功能。5.系統(tǒng)管理模塊功能:(1)實現(xiàn)對不同權(quán)限的用戶進(jìn)行合理的管理;(2)實現(xiàn)對各個模塊的維護(hù)和監(jiān)控等功能。3.3系統(tǒng)各模塊功能設(shè)計3.3.1.客戶管理模塊模塊功能:該模塊主要是實現(xiàn)對客戶、供貨商信息的查詢;實現(xiàn)客戶、供貨商信息的更新,包括增加、刪除、修改功能??蛻?、供應(yīng)商信息查詢:根據(jù)該模塊的信息公司可以制定營銷策略和銷售策略,完善公司服務(wù),提高質(zhì)量。更好的帶動公司銷售??蛻?、供應(yīng)商信息更新:更好的完善客戶、供應(yīng)商的信息,刪除陳舊無用的信息。輸入項、輸出項:該模塊的輸入項為客戶、供應(yīng)商信息。3.3.2.銷售管理模塊模塊功能:本模塊的主要功能是把銷售信息寫入銷售清單,同時對庫存清單進(jìn)行更新,以備用戶將來對庫存信息進(jìn)行查詢和打印,此外還可以對銷售信息進(jìn)行查詢和盤點功能。銷售信息查詢:根據(jù)車輛銷售情況,按需要對銷售情況進(jìn)行查詢。在該查詢模塊中,可以按照車輛的編號、銷售日期等多種方式進(jìn)行車輛銷售信息查詢。銷售信息盤點:可以按照需要對在一定時期內(nèi)的銷售情況進(jìn)行盤點。輸入項、輸出項:本模塊的數(shù)據(jù)輸入項主要是車輛的銷售單號和車輛編號。其中還包括銷售數(shù)量和銷售日期。3.3.3.進(jìn)貨管理模塊模塊功能:該模塊主要是實現(xiàn)進(jìn)行進(jìn)貨信息查詢、進(jìn)貨計劃制定兩個功能。進(jìn)貨信息查詢:該模塊為公司提供整個公司的進(jìn)貨情況查詢,也可以進(jìn)行進(jìn)貨信息的明細(xì)查詢,并以進(jìn)貨報表形式打印出來。進(jìn)貨計劃制定:該模塊可以為制定進(jìn)貨計劃,并形成相應(yīng)的采購訂單。輸入項、輸出項:該模塊的輸入項為公司的進(jìn)貨單,其中包括進(jìn)貨單的編號,車輛的編號,供貨商號,進(jìn)貨價,數(shù)量,金額進(jìn)貨日期,備注。3.3.4.庫存管理模塊模塊功能:本模塊的主要功能是車輛信息的查詢和更新,庫存信息的查詢和更新。查詢車輛信息:主要功能查詢車輛的明細(xì)信息,和它的庫存信息。添加車輛信息:主要功能添加新進(jìn)的車輛。修改車輛信息:主要功能是修改車輛的信息,包括他的庫存數(shù)量。刪除車輛信息:主要功能是刪除不再銷售的車輛信息。輸入項、輸出項:本模塊的數(shù)據(jù)輸入項主要是車輛編號。3.3.5.系統(tǒng)管理模塊系統(tǒng)用戶管理:在系統(tǒng)實行多用戶管理時,本模塊將為系統(tǒng)開辟多個系統(tǒng)用戶,并能對其進(jìn)行簡單的信息維護(hù),用戶名變更和密碼修改。退出:選擇退出系統(tǒng),將關(guān)閉整個系統(tǒng),結(jié)束本次使用。3.4系統(tǒng)數(shù)據(jù)庫設(shè)計3.4.1.E-R模型汽車銷售管理系統(tǒng)數(shù)據(jù)庫E-R模型,如圖3.2所示:圖3圖3.2數(shù)據(jù)庫E-R模型圖mnmmnn名稱職工/用戶職工編號籍貫供貨日期進(jìn)貨日期電話地址供貨商編號供貨商進(jìn)貨進(jìn)貨單號車輛編號名稱價格車輛姓名性別條形碼開戶行銀行帳號工資身份證號客戶供貨銷售單號銷售日期數(shù)量銷售3.4.2.數(shù)據(jù)庫表設(shè)計由數(shù)據(jù)模型利用SQLServer2000進(jìn)行數(shù)據(jù)庫的詳細(xì)設(shè)計,其基本表的設(shè)計如下:(1)職工清單(StaffBill)中文字段名英文字段名字段類型長度主鍵/外鍵字段值約束職工編號staffIDchar6PNOTNULL姓名namenvarchar8NOTNULL性別sexnchar2NOTNULL籍貫homenvarchar4NULL學(xué)歷diplomanvarchar4NOTNULL類別kindnvarchar10NULL工資salaryint4NULL聯(lián)系電話phonevarchar12NULL聯(lián)系地址addressnvarchar50NULL身份證號idCardvarchar18NOTNULL聘用日期beginDatedatetime8NULL編制日期enactTimedatetime8NULL備注othersntext50NULL表3-1職工清單表說明:此表存放職工信息。(2)用戶清單(UserBill)中文字段名英文字段名字段類型長度主鍵/外鍵字段值約束帳號loginIDchar6P/FNOTNULL密碼passWordchar6NOTNULL表3-2用戶清單表說明:此表存放系統(tǒng)用戶信息。(3)車輛清單(MerchBill)中文字段名英文字段名字段類型長度主鍵/外鍵字段值約束車輛編號merchIDchar6PNOTNULL供貨商號profferIDchar6FNOTNULL名稱fullNamenvarchar80NOTNULL條形碼barCodechar15NOTNULL計量單位metricUnitvarchar4NOTNULL類別kindnvarchar8NULL產(chǎn)地birthPlacenvarchar50NULL單價unitCostmoney4NOTNULL備注othersntext50NULL表3-3車輛清單表說明:此表存放車輛信息。(4)供貨商清單(ProfferBill)中文字段名英文字段名字段類型長度主鍵/外鍵字段值約束供貨商號profferIDchar6PNOTNULL名稱fullNamenvarchar50NOTNULL聯(lián)系人contactPersonnvarchar8NOTNULL聯(lián)系電話phonevarchar12NOTNULL聯(lián)系地址addressnvarchar50NOTNULL開戶行openingBanknvarchar10NULL銀行帳號accountIDvarchar15NULL備注othersntext50NULL表3-4供應(yīng)商清單表說明:此表存放供貨商信息。(5)進(jìn)貨清單(ImportBill)中文字段名英文字段名字段類型長度主鍵/外鍵字段值約束進(jìn)貨單號importBillIDchar6PNOTNULL車輛編號merchIDchar6P/FNOTNULL供貨商號profferIDchar6FNOTNULL進(jìn)貨價importPricemoney4NOTNULL數(shù)量quantityint4NOTNULL金額totalMoneymoney4NOTNULL進(jìn)貨日期importDatedatetime8NOTNULL備注othersntext50NULL表3-5進(jìn)貨清單表說明:此表存放進(jìn)貨信息。(6)銷售清單(SaleBill)中文字段名英文字段名字段類型長度主鍵/外鍵字段值約束銷售單號saleBillIDchar6PNOTNULL車輛編號merchIDchar6P/FNOTNULL銷售數(shù)量saleNumint4NOTNULL銷售日期saleDatedatetime8NOTNULL表3-6銷售清單表說明:此表存放銷售信息。(7)庫存清單(StoreBill)中文字段名英文字段名字段類型長度主鍵/外鍵字段值約束車輛編號merchIDchar6P/FNOTNULL庫存數(shù)量storeNumint4NOTNULL表3-6庫存清單表4.系統(tǒng)實現(xiàn)4.1實現(xiàn)策略該系統(tǒng)采用系統(tǒng)開發(fā)中常見的多文檔結(jié)構(gòu),搭配菜單欄、工具欄、狀態(tài)欄等界面工具實現(xiàn)系統(tǒng)分析和系統(tǒng)設(shè)計中提出的功能。4.2系統(tǒng)登錄窗口登錄窗口的主要功能是對用戶身份進(jìn)行,驗證只有系統(tǒng)的合法用戶才能進(jìn)入系統(tǒng)。其窗口如圖4.1所示:圖4.1系統(tǒng)登錄窗口在進(jìn)行系統(tǒng)登錄過程中,登錄窗口將調(diào)用數(shù)據(jù)庫里的用戶清單,并對賬號和密碼進(jìn)行驗證,只有輸入了正確的賬號和密碼后,系統(tǒng)登錄才會成功。在登錄窗口中,對系統(tǒng)的嘗試登錄次數(shù)進(jìn)行了限制,禁止用戶無終止的進(jìn)行系統(tǒng)登錄嘗試,在本系統(tǒng)中,當(dāng)用戶對系統(tǒng)的三次登錄失敗后,系統(tǒng)將自動機(jī)制登錄,突出登錄窗口。并在輸入了錯誤的或者是不存在的賬戶和密碼時,系統(tǒng)會給出出錯信息提示,指明登錄過程中的錯誤輸入或者錯誤操作,以便用戶進(jìn)行正確的登錄。4.3系統(tǒng)主窗體在登陸成功之后,就可以進(jìn)入銷售管理系統(tǒng)的主界面進(jìn)行操作了。其窗口如圖4.2所示:圖4.2系統(tǒng)主窗口4.3.1菜單欄在這個系統(tǒng)的主窗口中,需要設(shè)計一個菜單欄,為用戶執(zhí)行各種命令和操作提供方便。菜單的結(jié)構(gòu)如系統(tǒng)功能設(shè)計中的系統(tǒng)模塊結(jié)構(gòu)圖所示。菜單欄窗口部分菜單列表如表4-1所示:對象屬性屬性值說明一級菜單“客戶管理”標(biāo)題客戶關(guān)系(&B)標(biāo)題為“客戶關(guān)系”,訪問鍵為Alt+B名稱KHGX菜單訪問名稱二級菜單“供貨商管理”標(biāo)題供貨商管理標(biāo)題為“供貨商管理”名稱GHSGL菜單訪問名稱快捷鍵Ctrl+Y通過快捷鍵Ctrl+Y訪問此菜單二級菜單“顧客管理”標(biāo)題顧客管理標(biāo)題為“顧客管理”名稱GKGL菜單訪問名稱快捷鍵Ctrl+H通過快捷鍵Ctrl+H訪問此菜單一級菜單“銷售管理”標(biāo)題銷售管理(&N)標(biāo)題為“銷售管理”,訪問鍵為Alt+N名稱XSGL菜單訪問名稱二級菜單“銷售單”標(biāo)題銷售單標(biāo)題為“銷售單”名稱XSD菜單訪問名稱快捷鍵Ctrl+S通過快捷鍵Ctrl+S訪問此菜單二級菜單“銷售查詢”標(biāo)題銷售查詢標(biāo)題為“銷售查詢”名稱XSCX菜單訪問名稱快捷鍵Ctrl+X通過快捷鍵Ctrl+X訪問此菜單一級菜單“進(jìn)貨管理”標(biāo)題進(jìn)貨管理(&F)標(biāo)題為“進(jìn)貨管理”,訪問鍵為Alt+F名稱JHGL菜單訪問名稱二級菜單“采購單”標(biāo)題采購單標(biāo)題為“采購單”名稱CGD菜單訪問名稱快捷鍵Ctrl+P通過快捷鍵Ctrl+P訪問此菜單二級菜單“采購查詢”標(biāo)題采購查詢標(biāo)題為“采購查詢”名稱CGCX菜單訪問名稱快捷鍵Ctrl+G通過快捷鍵Ctrl+G訪問此菜單一級菜單“庫存管理”標(biāo)題庫存管理(&F)標(biāo)題為“庫存管理”,訪問鍵為Alt+F名稱KCGL菜單訪問名稱二級菜單“庫存盤點”標(biāo)題庫存盤點標(biāo)題為“庫存盤點”名稱CKPD菜單訪問名稱快捷鍵Ctrl+K通過快捷鍵Ctrl+K訪問此菜單二級菜單“庫存查詢”標(biāo)題庫存查詢標(biāo)題為“庫存查詢”名稱KCCX菜單訪問名稱快捷鍵Ctrl+F通過快捷鍵Ctrl+F訪問此菜單一級菜單“系統(tǒng)設(shè)置”標(biāo)題系統(tǒng)設(shè)置(&O)標(biāo)題為“系統(tǒng)設(shè)置”,訪問鍵為Alt+O名稱XTSZ菜單訪問名稱二級菜單“密碼設(shè)置”標(biāo)題密碼設(shè)置標(biāo)題為“密碼設(shè)置”名稱MMSZ菜單訪問名稱快捷鍵Ctrl+M通過快捷鍵Ctrl+M訪問此菜單二級菜單“關(guān)于系統(tǒng)”標(biāo)題關(guān)于系統(tǒng)標(biāo)題為“關(guān)于系統(tǒng)”名稱GYXT菜單訪問名稱快捷鍵Ctrl+A通過快捷鍵Ctrl+A訪問此菜單一級菜單“退出系統(tǒng)”標(biāo)題退出系統(tǒng)(&X)標(biāo)題為“退出系統(tǒng)”,訪問鍵為Alt+X名稱TCXT菜單訪問名稱表4-1菜單列表4.3.2工具欄在應(yīng)用程序的開發(fā)中,一般將使用比較頻繁的功能以工具欄的形式放置在窗口上。這樣,當(dāng)用戶需要使用這些功能的時候,直接單擊工具欄上對應(yīng)的圖標(biāo)按鈕就能調(diào)出那些常用功能了。這避免了用戶去菜單欄中層層查找需要的功能而浪費的時間。在這個系統(tǒng)中,將常用的采購單、銷售單、庫存查詢、密碼設(shè)置和退出系統(tǒng)五個功能以工具欄按鈕的形式放置在工具欄上。4.3.3狀態(tài)欄應(yīng)用程序中的狀態(tài)欄用于顯示當(dāng)前狀態(tài)下應(yīng)用程序或操作系統(tǒng)的執(zhí)行狀態(tài)。一般狀態(tài)欄顯示在窗口的最下面。4.4客戶管理窗口在客戶管理窗口中用戶可以對客戶的信息進(jìn)行檢索、編輯和查看。客戶管理中的車主回訪窗口如圖4.3所示:圖4.3車主回訪車主檔案及回訪記錄查詢窗口如圖4.4所示:圖4.4車主檔案用戶跟蹤窗口如圖4.5所示:圖4.5用戶跟蹤用戶檔案窗口如圖4.6所示:圖4.6用戶檔案4.5供貨商管理窗口在公司引進(jìn)車輛時,首先查詢已有的供貨商信息,然后按照供貨商信息采購車輛;或者從新的供貨商那里引進(jìn)新的車輛,此時,要把新供貨商信息添加到供貨商清單中。有時,不再從某一供貨商那里采購車輛時,此時要把供貨商信息刪掉。當(dāng)供貨商信息有變化時,就需要對供貨商信息進(jìn)行維護(hù)等。廠商窗口如圖4.7所示:圖4.7廠商信息廠商查詢窗口如圖4.8所示:圖4.8廠商查詢4.6銷售單與銷售查詢窗口每次有車輛銷售出去的時候,都要生成一張銷售單。銷售單窗口如圖4.9所示:圖4.9銷售單在生成銷售單的同時,車輛銷售中也會相應(yīng)的做出車輛銷售記錄。車輛銷售窗口如圖4.10所示:圖4.10車輛銷售記錄用戶在操作中經(jīng)常需要對銷售出庫的車輛進(jìn)行查詢,而且可能根據(jù)不同的標(biāo)準(zhǔn)進(jìn)行查詢。所以,在在銷售查詢窗口中,提供了綜合查詢方式。銷售單查詢窗口如圖4.11所示:圖4.11銷售單查詢4.7采購單與采購查詢窗口當(dāng)每一次有車輛入庫的時候,會生成一張采購單。采購訂單窗口如圖4.12所示:圖4.12采購訂單在生成采購單的同時,車輛采購中也會作出相應(yīng)的車輛記錄。車輛采購窗口如圖4.13所示:圖4.13車輛采購有時用戶在對采購入庫的車輛進(jìn)行查詢,可根據(jù)不同的標(biāo)準(zhǔn)進(jìn)行查詢。采購查詢窗口如圖4.14所示:圖4.14采購訂單查詢4.8車輛管理窗口在車輛管理窗口中,允許用戶對車輛的記錄進(jìn)行增加、刪除、編輯等操作。當(dāng)有車輛入庫時,需要填寫入庫單。車輛入庫窗口如圖4.15所示:圖4.15車輛入庫入庫單窗口如圖4.16所示:圖4.16入庫單同時完善車輛信息如車型、顏色等信息。車型信息窗口4.17所示圖4.17車型信息車型信息的添加窗口如圖4.18所示:圖4.18車型信息車型信息查詢窗口如圖4.19所示:圖4.19車輛銷售4.9庫存查詢與庫存盤點窗口經(jīng)過前面的操作,登錄窗口和主窗口就全部設(shè)計完畢了。但是主窗口中的各種功能,包括菜單中和工具欄中的,都是沒有事件處理代碼的空架子。當(dāng)調(diào)用這些功能的時候,不會有人和效果。從下面開始就逐步實現(xiàn)系統(tǒng)中的各種功能。菜單中的庫存查詢主要是查詢每一款庫存車輛的信息。在這個窗口中,提供一個下拉列表框,用戶可以從中選擇一種查詢依據(jù),單擊“查詢”按鈕就可以查詢數(shù)據(jù)。庫存車輛查詢窗口如圖4.20所示:圖4.20庫存車輛查詢庫存盤點就是根據(jù)銷售記錄和采購記錄計算出每款汽車的庫存數(shù)量。由于公司中采購和銷售活動非常頻繁,而且銷售的車輛種類需要考慮到實際庫存大于零,因此庫存盤點功能也十分常用和重要。庫存車輛窗口如圖4.21所示:圖4.21庫存車輛4.10職工管理窗口在系統(tǒng)開發(fā)中,為解決公司人員流動問題,在系統(tǒng)中增添了職工管理子模塊,用來對公司的人員進(jìn)行信息化管理,以此來提高職工的辦事效率,節(jié)約人力資源。新職工錄入:在公司招進(jìn)新職工時,對其進(jìn)行基本信息的存儲,對職工信息進(jìn)行基本的了解。職工信息維護(hù):當(dāng)職工信息發(fā)生變化,或者是職工離職,換崗對相關(guān)信息發(fā)生變化時,利用此子模塊對其進(jìn)行信息變更。公司職工窗口如圖4.22所示:圖4.22公司職工公司職工查詢窗口如圖4.23所示:圖4.23公司職工查詢4.11密碼設(shè)置窗口密碼設(shè)置是權(quán)限設(shè)置的一部分。已有用戶,可以在系統(tǒng)中為新加入的用戶或職工增加用戶名和密碼。更改登錄口令窗口如圖4.24所示:圖4.24更改登錄口令操作員管理窗口如圖4.25所示:圖4.25操作員管理5.系統(tǒng)運行測試完成對流程的編碼后最重要的事情就是對系統(tǒng)的測試工作了,測試在系統(tǒng)設(shè)計階段有兩個時期,通常在編寫每個模塊后做單元測試,另一個時期是對系統(tǒng)的綜合測試。5.1模塊測試在模塊測試時主要從以下幾個方面考慮:1.模塊接口;2.局部數(shù)據(jù)結(jié)構(gòu);3.重要執(zhí)行通道;4.出錯處理通道;5.影響上述方面的邊界條件。測試時進(jìn)行代碼審查,從數(shù)據(jù)類型,變量聲明,數(shù)據(jù)結(jié)構(gòu)進(jìn)行審查,然后進(jìn)行功能測試,從輸入一些簡單的數(shù)據(jù)開始執(zhí)行一遍,觀測運行期間變量的變化,運行中值的變化范圍。改變測試方案來變換另一個角度進(jìn)行測試,發(fā)現(xiàn)錯誤并記錄,修改代碼,測試條件使程序通過多層分支,判別運行結(jié)果從而完成模塊測試。5.2整體測試總體測試是組裝軟件的系統(tǒng)技術(shù),本系統(tǒng)測試采用漸增集成測試,即測試單一模塊,將測試完的模塊加入系統(tǒng)中,進(jìn)行一次系統(tǒng)測試,依次類推將所有模塊加入系統(tǒng)中,在具體測試時,采用自頂向下的結(jié)合方式,從主控模塊開始,沿各控制層向下移動,逐漸把所有模塊結(jié)合了。在測試過程中使用到調(diào)試技術(shù):1.采用debug調(diào)試語句,跟蹤數(shù)據(jù);2.嵌入打印語句,輸出中間結(jié)果;3.利用VisualStudio2003中調(diào)試工具,從調(diào)試窗口觀測變量的變化;4.設(shè)置斷點,觀察程序在斷點附近的狀況。評估運行的可靠性問題:1.結(jié)果正確;2.運行速度;3.空間利用率;4.算法的可行性??偨Y(jié)在畢業(yè)設(shè)計當(dāng)中認(rèn)我認(rèn)識到開發(fā)一項好的軟件并不是那么容易就能完成的。在這過程中勤奮是非常重要,同時多于別的同學(xué)溝通也是解決問題的好辦法。在與別的同學(xué)交流過程中,可以學(xué)習(xí)別人的解決的方法和思維。對以后的學(xué)習(xí)和工作有很大的幫助。其次,在設(shè)計的過程中我了解了,在開發(fā)一個項目時一定要先做好規(guī)劃,按照軟件的開發(fā)過程,詳細(xì)地寫好每一個必要的文檔。一般的規(guī)則是,寫文檔需要全面的考慮所有的問題。例如,如果預(yù)期讀者是系統(tǒng)設(shè)計師,需要提供技術(shù)細(xì)節(jié),然后按照正確語法組織和編輯內(nèi)容。軟件文檔的最主要目標(biāo)是傳達(dá)一個系統(tǒng)的技術(shù)要素和使用方法。第二個目標(biāo)是提供軟件開發(fā)過程中的需求,決策,行為,角色和責(zé)任的書面記錄。只有實現(xiàn)了這兩個目標(biāo),軟件文檔才真正提供了有意義的信息。軟件的概念就是:程序+文檔,程序就是文檔,文檔集成在程序中。它要求在選擇開發(fā)環(huán)境時不僅要考慮環(huán)境對設(shè)計、開發(fā)的完美支持,而且要考慮對維護(hù)、文檔的支持;它要求軟件人員在設(shè)計、開發(fā)過程中要考慮維護(hù)問題、文檔問題;它要求程序與文檔存儲在同一位置、同一系統(tǒng)中;它要求使用相同工具進(jìn)行程序與文檔的書寫、檢索;它要求在編寫和維護(hù)程序的同時形成文檔,在書寫文檔時編寫、維護(hù)程序。程序與文檔合一的概念不僅存在于系統(tǒng)的設(shè)計、開發(fā)階段而且存在于系統(tǒng)的維護(hù)階段,它貫穿軟件的生命周期。致謝經(jīng)過一段時間的艱苦努力,我終于完成了汽車銷售管理系統(tǒng)的全部設(shè)計過程,并使該系統(tǒng)達(dá)到可實際應(yīng)用的階段。在畢業(yè)設(shè)計過程中,既磨練了我的意志,也對我在大學(xué)期間所學(xué)的知識進(jìn)行了一次考察和升華。在畢業(yè)設(shè)計付梓之際,我想向曾經(jīng)給過我?guī)椭椭С值睦蠋熀屯瑢W(xué)表示衷心的感謝。首先,要向我的論文指導(dǎo)老師王桂東老師致以誠摯的謝意。在論文的寫作過程中,從選題立意、謀篇布局、收集資料、形成提綱直至全文定稿,都是在王桂東老師的悉心指導(dǎo)下完成的。百忙之中老師抽空認(rèn)真細(xì)致地伏案為我們修改論文的情景,仍歷歷在目;輔導(dǎo)時老師循循善誘、不斷啟發(fā)我們思考的話語,仍猶鳴在耳。在整個畢業(yè)論文指導(dǎo)期間,王老師嚴(yán)謹(jǐn)求實的治學(xué)態(tài)度、兢兢業(yè)業(yè)的工作作風(fēng)以及謙厚親切的師德風(fēng)范使我受益匪淺。在王老師的指導(dǎo)下我明晰了論文的關(guān)鍵所在以及文章的主旨思路,也學(xué)到了諸多方面的知識,專業(yè)水平有了很大的提高。其次,要感謝我親愛的同學(xué)們,是他們伴我度過了人生中最關(guān)鍵、最美好的大學(xué)時光,和他們?nèi)粘O嗵幍狞c點滴滴讓我印象深刻。是同學(xué)們對我的啟發(fā)和幫助,為我營造了和諧的研究氛圍,給予我戰(zhàn)勝困難的勇氣和信心。最后,再次衷心的感謝各位老師和在我論文寫作過程中給予我?guī)椭耐瑢W(xué)和朋友。參考文獻(xiàn)[1]求是科技,張立科.VisualBasic6.0信息管理系統(tǒng)開發(fā)實例導(dǎo)航.北京:人民郵電出版社.2006.2:161-226[2]董國平,謝晗昕.信息系統(tǒng)開發(fā)實例精粹(VisualBasic版).北京:電子工業(yè)出版社.2006.6:55-116[3]王春才,高春艷.VisualBasic數(shù)據(jù)庫系統(tǒng)開發(fā)完全手冊.北京:人民郵電出版社.2007.4:283-319[4]賽奎春,高春艷.VisualBasic信息管理系統(tǒng)開發(fā)實例精選.北京:機(jī)械工業(yè)出版社.2005.7:42-98[5]柴欣,武優(yōu)西.VisualBasic程序設(shè)計基礎(chǔ)(第三版).北京:中國鐵道出版社.2006.12[6]賀世娟,陳冀川.VisualBasic程序設(shè)計.北京:中國水利水電出版社.2002.6[7]王遠(yuǎn)征.VisualBasic6.0與可視化編程.西安:電子科技大學(xué)出版社.1999.6[8]柴欣,李惠然.VisualBasic程序設(shè)計教程.北京:海洋工業(yè)出版社.2001.1[9]宋偉.VisualBasic6.0編程基礎(chǔ).北京:清華大學(xué)出版社.1999.1[10]捷新工作室.VisualBasic6.0基礎(chǔ)教程.北京:國防工業(yè)出版社.1999.6[11]劉炳文.VisualBasic程序設(shè)計教程(第二版).北京:清華大學(xué)出版社.2001.1[12]網(wǎng)冠科技.SQLServer2000時尚編程百例.北京:機(jī)械工業(yè)出版社.2002.3[13]衛(wèi)紅春.信息系統(tǒng)分析與設(shè)計.西安:電子科技大學(xué)出版社.2003.5
[14]薛華成.管理信息系統(tǒng)(第三版).北京:清華大學(xué)出版社.1999.6
[15]求是科技.SQLServer2000數(shù)據(jù)庫開發(fā)技術(shù)與工程實踐.北京:人民郵電出版社.2004.6[16]/郭琦.VisualBasic數(shù)據(jù)庫系統(tǒng)開發(fā)技術(shù).北京:人民郵電出版社.2003.12[17]王道榮.VisualBasic6.0數(shù)據(jù)庫處理—從入門到精通.北京:中國鐵道出版社.2000.9[18]周緒,白海波.SQLServer2000中文版入門與提高.北京:清華大學(xué)出版社.2001.5
[19]鄭若忠,田興彥.數(shù)據(jù)庫原理.長沙:國防科技大學(xué)出版社.1998.8[20]范國平,陳曉鵬.Access2002數(shù)據(jù)庫系統(tǒng)開發(fā)實例導(dǎo)航[M].北京:人民郵電出版社.2003附錄登錄窗口主要代碼:DimconnAsNewADODB.connectionDimrsAsNewADODB.RecordsetDimconnstingAsStringDimnumAsIntegerPrivateSubform_lpad()connstring="Provider=SQLOLEDB.l;Password=ecc;PersistSecurityInfo=True;UserID=sa;"&"InitalCatalog=PurchaseandSale;Server=(local)"lfconn.State<>lThemconn.Open(connstring)EndIfSetrs=conn.Execute("select*fromusers")Withrs.MoveFirstDoWhileNot.EOFDoEventscmbUserName.addltem(!用戶).MoveNextLoopEndWithcmbUserName.ListIndex=0conn.CloseEndSubPrivateSubcmdOK_Click()IfTrim(mbUserName.Text)=""ThenMsgBox"用戶名不能為空!",vbOKOnly+vbExclamation,"警告!"mbUserName.SetFocusExitSubEndIfconnstring="Provider=SQLOLEDB.l;Password=ecc;PersistSecurityInfo=True;UserID=sa;"&"InitalCatalog=PurchaseandSale;Server=(local)"lfconn.State<>lThemconn.Open(connstring)EndIfSetrs=conn.Execute("select*fromuserswhere用戶="&Trim(mbUserName.Text)&"")Ifrs.EOFThenMsgBox"沒有該用戶!"&vbCrLf&"請重新輸入!",vbOKOnly+vbExclamation,"提示"mbUserName.SetFocusExitSubElsers.MoveFirstIfrs.Fields("密碼").ValueTtrim(txtPWD.Text)ThemUnloadfrmLoginLoadfrmMainfrmMain.ShowElseIfmun<2Thennum=num+1msgbox"口令不對,請重新輸入!"&vbCrLf&"您還有"&Str(3-num)&"次機(jī)會!",vbOKOnly+vbExclamation,"提示"txtPWD.SetFocusExitSubElseMsgBox"對不起,您無權(quán)使用本系統(tǒng)!",vbOKOnly+vbExclamation,"提示"UnloadfrmLoginExitSubEndIfEndIfEndIfconn.CloseEndSubPrivateSubcodCancel_Click()UnloadfrmLoginEndSub庫存查詢窗口主代碼PrivateSubForm_Load()Combo1.AddItem("車輛名稱")Combo1.AddItem("產(chǎn)地")Combo1.AddItem("規(guī)格")Combo1.AddItem("包裝")Combo1.AddItem("庫存")Combo1.ListIndex=0EndSubPrivateSubCommand1_Click()OnErrorGoTomyerradoKCCX.CommandType=adCmdTextadoKCCX.RecordSource="select*fromproductwhere"&Trim(Combo1.Text)&"like"&Trim(Text1.Text)&"%"adoKCCX.Refreshmyerr:EndSubPrivateSubCommand2_Click()UnloadMeEndSubPrivateSubForm_Unload(CancelA
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度知識產(chǎn)權(quán)贈與及許可協(xié)議書范文
- 二零二五年度資料員招聘與知識產(chǎn)權(quán)保護(hù)與運用協(xié)議
- 2025年度電力設(shè)備安裝與檢修服務(wù)合同
- 二零二五年度科研機(jī)構(gòu)實驗室年租房合同
- 二零二五年度廣告公司兼職設(shè)計師合作協(xié)議
- 2025年度珠寶玉石進(jìn)出口貿(mào)易合同
- 網(wǎng)絡(luò)安全防御策略知識題庫
- 探索阿凡提的故事的寓言色彩
- 農(nóng)業(yè)環(huán)境保護(hù)工作要點
- 公司年度運營計劃與目標(biāo)分解書
- 零星工程(零星用工)簽認(rèn)單
- 氬氣安全技術(shù)說明書MSDS
- 四年級數(shù)學(xué)下冊教案-練習(xí)一-北師大版
- 5G手機(jī)無線通訊濾波芯片產(chǎn)業(yè)化項目環(huán)境影響報告表
- 《對外援援助成套項目勘察設(shè)計取費標(biāo)準(zhǔn)內(nèi)部暫行規(guī)定(稿)》
- 通用反應(yīng)單元工藝
- 空冷塔施工方案
- 電飯煲的智能控制系統(tǒng)設(shè)計
- 儲罐玻璃鋼內(nèi)防腐
- 2013-2015北京地鐵部分線路年客流量
- 機(jī)械設(shè)計說明書
評論
0/150
提交評論