計(jì)算機(jī)車(chē)輛管理系統(tǒng)_第1頁(yè)
計(jì)算機(jī)車(chē)輛管理系統(tǒng)_第2頁(yè)
計(jì)算機(jī)車(chē)輛管理系統(tǒng)_第3頁(yè)
計(jì)算機(jī)車(chē)輛管理系統(tǒng)_第4頁(yè)
計(jì)算機(jī)車(chē)輛管理系統(tǒng)_第5頁(yè)
已閱讀5頁(yè),還剩19頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、 PAGE III上海交通大學(xué)MBA學(xué)位論文 新經(jīng)濟(jì)時(shí)代的企業(yè)績(jī)效評(píng)價(jià)與報(bào)告 PAGE 1計(jì)算機(jī)車(chē)輛管理系統(tǒng)摘 要本課題針對(duì)當(dāng)前我國(guó)車(chē)輛管理多數(shù)采用人工管理的現(xiàn)狀以及即使采用了計(jì)算機(jī)車(chē)輛管理系統(tǒng)卻不能完全滿足車(chē)輛管理的實(shí)際發(fā)展需要,對(duì)車(chē)輛管理業(yè)務(wù)經(jīng)過(guò)詳細(xì)的系統(tǒng)調(diào)查,開(kāi)發(fā)出的操作簡(jiǎn)單而且方便實(shí)用的一個(gè)車(chē)輛管理系統(tǒng)。本系統(tǒng)使用Visual Basic6.0開(kāi)發(fā)工具,結(jié)合Access數(shù)據(jù)庫(kù)、通過(guò)MIS控件來(lái)實(shí)現(xiàn)數(shù)據(jù)庫(kù)的操作。車(chē)輛管理系統(tǒng)主要對(duì)車(chē)輛管理日常工作中遇到的實(shí)際問(wèn)題,例如檔案管理、運(yùn)營(yíng)管理、車(chē)輛管理、駕駛員管理、系統(tǒng)維護(hù)等.本系統(tǒng)經(jīng)過(guò)測(cè)試,運(yùn)行穩(wěn)定,可投入使用。關(guān)鍵詞:車(chē)輛管理,Visual

2、 Basic,AccessAbstractThis topic aims at a current our country the vehicle management most an adoption artificial a management of present condition and even adopted the calculator vehicle a management system but cant satisfy the actual development demand of with the vehicle management completely, man

3、age detailed system of the business process inquisition to the vehicle, develop the operation of in brief and the convenience is practical of a vehicle management system. This system usage Visual Basic6。0 development tools, combine an Access database and control a piece through an MIS to carry out t

4、he operation of the database. The vehicle management system mainly manages to the vehicle to meet in the daily pursuit of actual problem, for example the file management, the luck camp management, vehicle management, pilot management, system maintenance etc. This system circulates a stability throug

5、h test, can throw in an usage.Keywords: The vehicle management, the Visual Basic, Access目 錄 引 言如今的社會(huì),時(shí)間就是金錢(qián)。以車(chē)代步便成了我們節(jié)省時(shí)間的必須,而我們的現(xiàn)狀是不可能每人都擁有私家車(chē)來(lái)滿足這個(gè)社會(huì)。所以,公交車(chē)便成了最好的折衷的辦法。面對(duì)海量的車(chē)客和交錯(cuò)繁雜的交通線路。公交調(diào)度問(wèn)題是當(dāng)前我國(guó)許多大城市交通發(fā)展過(guò)程中的共同難題,公交車(chē)擁擠、運(yùn)行緩慢已經(jīng)帶來(lái)了巨大的社會(huì)經(jīng)濟(jì)、福利損失,因此做好公交車(chē)的調(diào)度具有重要意義。車(chē)輛管理是對(duì)車(chē)輛及駕駛員的技術(shù)監(jiān)督和安全管理.管理范圍包括:登記檢驗(yàn)車(chē)輛,考核

6、審驗(yàn)駕駛員,核發(fā)車(chē)輛號(hào)牌、行車(chē)證和駕駛證,監(jiān)督車(chē)輛的制造、保養(yǎng)、維修和駕駛員的培訓(xùn)工作,管理非機(jī)動(dòng)車(chē).目的在于提高運(yùn)輸效率,保證交通安全,在預(yù)防犯罪分子用車(chē)輛進(jìn)行犯罪活動(dòng),維護(hù)社會(huì)治安秩序。隨著信息時(shí)代的來(lái)臨,電腦的日益普及,車(chē)輛調(diào)度慢慢朝向由計(jì)算機(jī)來(lái)控制的趨勢(shì)發(fā)展。以前全用人力來(lái)調(diào)度的歷史將被取代。車(chē)輛管理系統(tǒng)主要是為單位管理本單位的車(chē)輛二開(kāi)發(fā)的系統(tǒng),它主要包括車(chē)輛管理子模塊、駕駛員管理子模塊、事故管理子模塊、查詢(xún)統(tǒng)計(jì)子模塊以及系統(tǒng)維護(hù)子模塊,其中以車(chē)輛管理子模塊為主要模塊。在車(chē)輛管理子模塊中包括車(chē)輛登記、購(gòu)車(chē)信息錄入、車(chē)輛外修記錄、車(chē)輛保險(xiǎn)等功能模塊;在查詢(xún)統(tǒng)計(jì)子模塊總,根據(jù)車(chē)輛信息可以查

7、詢(xún)到購(gòu)車(chē)信息、車(chē)輛外修記錄、車(chē)輛保險(xiǎn)記錄,還可以查詢(xún)到車(chē)輛事故信息,也可根據(jù)駕駛員信息查詢(xún)到駕駛員事故信息。本小組基本上完成以上各個(gè)模塊的構(gòu)造.當(dāng)然。還有一些地方?jīng)]做好甚至沒(méi)做到。當(dāng)代社會(huì)是信息時(shí)代,幾乎一切的工作生活都離不開(kāi)信息,車(chē)輛管理調(diào)度系統(tǒng)就是其中的一個(gè)典型的例子.車(chē)輛管理調(diào)度系統(tǒng)如下主要的功能:1.車(chē)輛檔案管理2.車(chē)輛運(yùn)營(yíng)管理3.車(chē)輛管理4.駕駛員管理和系統(tǒng)維護(hù).有了計(jì)算機(jī),車(chē)輛管理系統(tǒng)變得統(tǒng)一化、規(guī)范化、系統(tǒng)化。從而提高了系統(tǒng)的安全性和可操作性。給使用者也提供了方便,降低了信息的丟失性,提高了安全性.用了計(jì)算機(jī)管理的車(chē)輛調(diào)度系統(tǒng),不但沒(méi)有了手抄的麻煩,而且使整個(gè)工作更明了化,清晰化

8、,規(guī)范化和系統(tǒng)化。第1章 課題簡(jiǎn)介1。1 系統(tǒng)背景車(chē)輛管理系統(tǒng)用計(jì)算機(jī)管理機(jī)動(dòng)車(chē)輛的檔案,運(yùn)營(yíng)管理以及駕駛員信息的一種計(jì)算機(jī)應(yīng)用技術(shù)的創(chuàng)新,在計(jì)算機(jī)還未普及之前車(chē)輛管理都是由工作人員手工抄寫(xiě)的方式來(lái)操作的?,F(xiàn)在一般的車(chē)輛管理都是采用計(jì)算機(jī)作為工具的實(shí)用的計(jì)算機(jī)智能化車(chē)輛管理程序來(lái)幫助工作人員進(jìn)行更有效的機(jī)動(dòng)車(chē)輛管理。車(chē)輛管理系統(tǒng)是典型的信息管理系統(tǒng)(MIS),其開(kāi)發(fā)主要包括后臺(tái)數(shù)據(jù)庫(kù)的建立和維護(hù)以及前端應(yīng)用程序的開(kāi)發(fā)兩個(gè)方面.對(duì)于前者要求建立起數(shù)據(jù)一致性和完整性強(qiáng)、數(shù)據(jù)安全性好的庫(kù)。而對(duì)于后者則要求應(yīng)用程序功能完備,易使用等特點(diǎn)。VISUAL BASIC開(kāi)發(fā)工具,利用其提供的各種面向?qū)ο蟮拈_(kāi)發(fā)

9、工具,尤其是數(shù)據(jù)窗口這一能方便而簡(jiǎn)潔操縱數(shù)據(jù)庫(kù)的智能化對(duì)象,首先在短時(shí)間內(nèi)建立系統(tǒng)應(yīng)用原型,然后,對(duì)初始原型系統(tǒng)進(jìn)行需求迭代,不斷修正和改進(jìn),直到形成用戶滿意的可行系統(tǒng)。隨著計(jì)算機(jī)技術(shù)的不斷發(fā)展,計(jì)算機(jī)應(yīng)用于各大領(lǐng)域,并給人們的生活帶來(lái)了極大的便利,在固定管理系統(tǒng)亦是如此.以往固定資產(chǎn)員由于缺乏適當(dāng)?shù)能浖o其工作帶來(lái)了很多不便。本論文所介紹的便是一個(gè)固定資產(chǎn)管理系統(tǒng),以方便在固定資產(chǎn)安排和固定資產(chǎn)管理上的工作任務(wù)。此系統(tǒng)是運(yùn)用VB和ACCESS兩個(gè)工具來(lái)開(kāi)發(fā)完成的。1.2 VB優(yōu)缺點(diǎn)及屬性1。2.1 VB的優(yōu)點(diǎn) VB的優(yōu)點(diǎn)有:具有面向?qū)ο蟮目梢暬O(shè)計(jì)工具;事件驅(qū)動(dòng)的編制機(jī)制;提供了易學(xué)易用的

10、應(yīng)用程序集成開(kāi)發(fā)環(huán)境;結(jié)構(gòu)化的程序設(shè)計(jì)語(yǔ)言;強(qiáng)大的數(shù)據(jù)庫(kù)操縱功能;Active技術(shù);網(wǎng)絡(luò)功能;多個(gè)應(yīng)用程序向?qū)Ш屯陚涞腍elp聯(lián)機(jī)幫助功能。1。2.2 VB的缺點(diǎn)VB的缺點(diǎn)有:不支持類(lèi);(類(lèi)是現(xiàn)在軟件開(kāi)放在軟件架構(gòu)上的通用解決方案);間接讀內(nèi)存;不支持多線程;對(duì)低存支持不夠,不過(guò)可以通過(guò)內(nèi)嵌匯編和其他預(yù)言來(lái)實(shí)現(xiàn)。1。2.3 主要的控件及其屬性簡(jiǎn)介1.命令按鈕類(lèi)的控件:Caption屬性:用來(lái)顯示在控件上的標(biāo)題。Enable屬性:控制控件的激活狀態(tài)灰色或可用。Appearance屬性:值為1時(shí),則以3D效果顯示該控件,0則不然.Backcolor 屬性:用來(lái)改變?cè)诎粹o上顯示圖像的背景色。Canc

11、el屬性:該屬性決定按鈕是否為一個(gè)“取消”按鈕.Default屬性:決定哪一個(gè)命令按鈕控件是窗體的缺省命令按鈕。Font屬性:控制各種文字字體類(lèi)型。Left,top,height,width屬性:設(shè)定控件的位置與大小。Style,picture屬性:決定按鈕的現(xiàn)實(shí)方式是否為圖像形式出現(xiàn)。Visible屬性:確定控件運(yùn)行時(shí)是否可見(jiàn)。Index屬性:當(dāng)控件為一控件數(shù)組時(shí),此屬性值為該控件在數(shù)組的下標(biāo)值。2.標(biāo)簽框類(lèi)的控件:Caption屬性:在應(yīng)用程序界面上加入說(shuō)明。Autosize屬性:決定控件是否自動(dòng)改變大小以小時(shí)其全部?jī)?nèi)容。Backstyle屬性:用以指示標(biāo)簽是否透明。Bordstyle屬性

12、:用以設(shè)定控件是否有邊框。3。文本框類(lèi)的控件:Text屬性:通過(guò)向text屬性賦值的方法來(lái)改變?cè)搶傩缘闹?。Maxlength屬性:該屬性設(shè)定在文本框中能夠輸入的最大字符數(shù)。Multline屬性:該屬性設(shè)定text字符串中是否接受換行符。Scrollbars屬性:該屬性決定是否為文本框加滾動(dòng)條。Passwordchar屬性:該屬性設(shè)定輸入文本的特殊顯示字符,在設(shè)計(jì)密碼程序時(shí)候非常有用。Change時(shí)間樹(shù)形:文本框的內(nèi)容發(fā)生改變時(shí),相應(yīng)的控件之間發(fā)生相應(yīng)地改變,具有即時(shí)性。Keypress:時(shí)間由用戶在文本框控件中按任意鍵觸發(fā)。4.單選按鈕類(lèi)的控件:Caption屬性:顯示在控件上的文本,是單選按

13、鈕的標(biāo)題.Alignment屬性:決定單選按鈕的標(biāo)題在控件的位置。Enable屬性:該控件為灰色是為false,表示運(yùn)行時(shí)不可用.Index屬性:屬性值表示為單選按鈕組成的控件中某個(gè)按鈕的索引值。Tabindex屬性:建立控件時(shí),vb自動(dòng)為其分配已個(gè)tabindex值,利用tab鍵可以在控件之間切換焦點(diǎn)。Value屬性:反映控件狀態(tài)的屬性,返回true表示已選擇了該按鈕。5.復(fù)選按鈕類(lèi)的控件:Caption屬性:缺省為check1。Index屬性:該屬性值為復(fù)選框控件數(shù)組的下標(biāo)。Value屬性:value為0表空白,為1表勾號(hào),為2表示灰色勾號(hào)。6??蚣茴?lèi)的控件:Frame屬性:作為其他控件的

14、容器。7。列表框架和組合類(lèi)的控件:List屬性:列表框控件的表項(xiàng)是使用數(shù)組的方式保存,數(shù)組的每一個(gè)元素存儲(chǔ)列表控件的一個(gè)表項(xiàng)。Listcount屬性:控件列表部分項(xiàng)目的個(gè)數(shù)。Mutselect屬性:可以設(shè)置列表框?yàn)閱芜x或允許多選屬性。Selectd屬性:表示已個(gè)數(shù)組,數(shù)組各元素為:Selected(0),selecrted(1)8。滾動(dòng)條類(lèi)的控件:Value屬性:滾動(dòng)條上滑塊所在位置由value值所決定。Max和Min屬性:對(duì)value值的最大、最小進(jìn)行限制.Largechange屬性:用戶點(diǎn)擊滾動(dòng)條于箭頭之間的區(qū)域時(shí),value的改變量。9。定時(shí)器類(lèi)類(lèi)的控件:Interval屬性:表示定時(shí)的

15、時(shí)間間隔,以毫秒為單位.Enable屬性:為true時(shí)(缺省值),激活定時(shí)器開(kāi)始計(jì)時(shí);為false時(shí)處于休眠狀態(tài)。1。3 數(shù)據(jù)庫(kù)介紹1.3。1 ACCESS的優(yōu)點(diǎn)ACCESS的優(yōu)點(diǎn)有:數(shù)據(jù)的結(jié)構(gòu)化;數(shù)據(jù)的共享性;數(shù)據(jù)的獨(dú)立性;數(shù)據(jù)的完整性;數(shù)據(jù)的靈活性和數(shù)據(jù)的安全性。1.3.2 數(shù)據(jù)庫(kù)連接方式選擇Visual basic6.0連接數(shù)據(jù)庫(kù)的主要方式為以下幾種方式:1。用data控件進(jìn)行數(shù)據(jù)庫(kù)鏈接。2.利用adodc(ADO Data Control)進(jìn)行數(shù)據(jù)庫(kù)鏈接。3.利用DataEnvironment進(jìn)行數(shù)據(jù)庫(kù)鏈接4。是利用ADO(ActiveX Data Objects)進(jìn)行編程現(xiàn)在我們來(lái)大

16、致對(duì)這幾種技術(shù)應(yīng)用介紹:1.用data控件進(jìn)行數(shù)據(jù)庫(kù)鏈接。第一步:給窗體添加一個(gè)Data控件。第二步:用Access建立一個(gè)名為Pad的數(shù)據(jù)庫(kù),在庫(kù)中建立以個(gè)表Myset,給表添加四個(gè)字段:backcolor(數(shù)據(jù)),forecolor(文本),fontname(文本),fontsize(文本).注意:請(qǐng)將庫(kù)文件存入程序所在目錄.如果機(jī)器沒(méi)安裝Access,可通過(guò)VB建庫(kù)。2.利用adodc(ADO Data Control)進(jìn)行數(shù)據(jù)庫(kù)鏈接:使用adodata控件訪問(wèn)數(shù)據(jù)庫(kù)可以完全不用編寫(xiě)代碼,只需要通過(guò)簡(jiǎn)單的設(shè)置和操作其屬性就可以實(shí)現(xiàn)與數(shù)據(jù)庫(kù)的連接,通過(guò)綁定數(shù)據(jù)感知控件,就能提供一個(gè)訪問(wèn)數(shù)據(jù)

17、庫(kù)的界面,用來(lái)實(shí)現(xiàn)對(duì)數(shù)據(jù)庫(kù)的瀏覽、添加、刪除、修改等操作。3.利用DAO對(duì)數(shù)據(jù)庫(kù)進(jìn)行操縱:在Visual basic中提供了兩種于jet數(shù)據(jù)引擎接口的方法:data控件與數(shù)據(jù)訪問(wèn)對(duì)象(DAO)DAO是database object的英文簡(jiǎn)寫(xiě),要訪問(wèn)數(shù)據(jù)庫(kù)一方面數(shù)據(jù)庫(kù)要提供訪問(wèn)接口,另一方面要在編程環(huán)境中有對(duì)數(shù)據(jù)庫(kù)的支持。DAO模型時(shí)設(shè)計(jì)關(guān)系數(shù)據(jù)庫(kù)系統(tǒng)結(jié)構(gòu)的對(duì)象類(lèi)的稽核。他們提供了管理關(guān)系型數(shù)據(jù)庫(kù)系統(tǒng)所需要的全部操作屬性和方法,這其中包括建立數(shù)據(jù)庫(kù),定義表,字段和建立表間關(guān)系,定位和查詢(xún)數(shù)據(jù)庫(kù)等。1。3.3 關(guān)系數(shù)據(jù)庫(kù)關(guān)系數(shù)據(jù)庫(kù)介紹:關(guān)系數(shù)據(jù)庫(kù)是目前各類(lèi)數(shù)據(jù)庫(kù)中最重要、最流行的數(shù)據(jù)庫(kù),他應(yīng)用數(shù)學(xué)

18、方法來(lái)處理數(shù)據(jù)庫(kù)數(shù)據(jù),使目前使用最廣泛的數(shù)據(jù)庫(kù)系統(tǒng)。20世紀(jì)7年代以后開(kāi)發(fā)的數(shù)據(jù)庫(kù)管理系統(tǒng)產(chǎn)品幾乎都是基于關(guān)系的。在數(shù)據(jù)庫(kù)發(fā)展歷史上,最重要的成就就是關(guān)系模型。關(guān)系數(shù)據(jù)庫(kù)系統(tǒng)于非關(guān)系數(shù)據(jù)庫(kù)系統(tǒng)的區(qū)別是:關(guān)系系統(tǒng)治有“表”這一種數(shù)據(jù)結(jié)構(gòu);而非關(guān)系數(shù)據(jù)庫(kù)系統(tǒng)還有其他數(shù)據(jù)結(jié)構(gòu),對(duì)這些數(shù)據(jù)結(jié)構(gòu)有其他的操作。1.3.4 Microsoft Access Microsoft Access介紹: 使用Microsoft Access,可以在單一的數(shù)據(jù)庫(kù)文件中管理所有的信息。在這個(gè)文件中,用戶可以將自己的數(shù)據(jù)分別保存在各自獨(dú)立的存儲(chǔ)空間中,這些空間稱(chēng)作表;可以使用聯(lián)機(jī)窗口來(lái)查看、添加及更新表中的數(shù)據(jù);使用查詢(xún)

19、來(lái)查找并檢索所要的數(shù)據(jù);可可以使用報(bào)表以特定的版面布置來(lái)分析及打印數(shù)據(jù)。如果要保存數(shù)據(jù),請(qǐng)為每一種類(lèi)型的信息創(chuàng)建一個(gè)表。如果要從查詢(xún)、窗體或報(bào)表中的多個(gè)表中將數(shù)據(jù)合并在一起,就要定義各個(gè)表之間的關(guān)系。如果要簡(jiǎn)單地直接在某個(gè)表中查看、輸入及更改數(shù)據(jù),請(qǐng)創(chuàng)建一個(gè)窗體。在打開(kāi)一個(gè)窗體時(shí),Microsoft Access將從一個(gè)或多個(gè)表中檢索數(shù)據(jù),并使用用戶在“窗體向?qū)А边x擇的版面布局或所創(chuàng)建的版面布局,將窗體顯示在屏幕上.如果要分析數(shù)據(jù)或?qū)?shù)據(jù)以特定的方式打印出來(lái),請(qǐng)創(chuàng)建一個(gè)報(bào)表。例如,可以打印一份將數(shù)據(jù)分組并計(jì)算數(shù)據(jù)總合的報(bào)表,也可以打印另一份帶有各種數(shù)據(jù)格式的打印有件標(biāo)簽的報(bào)表。1.4 系統(tǒng)組成

20、及基本功能本系統(tǒng)主要有六個(gè)部分組成:用戶登陸和注冊(cè) ;車(chē)輛檔案管理 ;車(chē)輛運(yùn)營(yíng)管理 ;車(chē)輛管理 ;駕駛員管理;系統(tǒng)維護(hù).1用戶登陸和注冊(cè):通過(guò)用戶名和密碼進(jìn)入系統(tǒng)。2車(chē)輛檔案管理:車(chē)輛檔案錄入;車(chē)輛檔案查詢(xún);車(chē)輛異動(dòng)列表;車(chē)輛異動(dòng)查詢(xún);車(chē)輛報(bào)廢;車(chē)輛報(bào)廢查詢(xún)。3車(chē)輛運(yùn)營(yíng)管理:車(chē)輛運(yùn)營(yíng)列表;車(chē)輛運(yùn)營(yíng)查詢(xún);清空運(yùn)營(yíng)表。4車(chē)輛管理:維修管理(車(chē)輛維修列表;車(chē)輛維修查詢(xún);添加零件) 違章管理(車(chē)輛違章列表;車(chē)輛違章查詢(xún)) 事故管理(車(chē)輛事故列表;車(chē)輛事故查詢(xún))。5駕駛員管理:駕駛員檔案管理;駕駛員檔案查詢(xún);駕駛員獎(jiǎng)罰。6系統(tǒng)維護(hù):系統(tǒng)初始化;管理員設(shè)置;數(shù)據(jù)備份;數(shù)據(jù)恢復(fù);退出。第2章 系統(tǒng)設(shè)計(jì)2.1

21、 系統(tǒng)的功能結(jié)構(gòu)設(shè)計(jì)登陸系統(tǒng)系統(tǒng)主界面車(chē)輛管理系統(tǒng)維護(hù)駕駛員管理車(chē)輛運(yùn)營(yíng)管理車(chē)輛檔案管理圖2.1系統(tǒng)功能結(jié)構(gòu)圖2。2 系統(tǒng)的數(shù)據(jù)庫(kù)設(shè)計(jì)表2。1 車(chē)輛檔案表此表所體現(xiàn)的是添加車(chē)輛的檔案,一旦有新車(chē)入庫(kù)就及時(shí)登記進(jìn)去以便以后排車(chē)使用。他的主鍵是車(chē)牌號(hào)碼,因?yàn)檐?chē)牌號(hào)碼是唯一的.表2。2 車(chē)輛變更表此表所體現(xiàn)的是車(chē)輛的異動(dòng)情況,一旦有變更的話就做及時(shí)修改以便以后查詢(xún).表2。3車(chē)輛運(yùn)營(yíng)表此表所體現(xiàn)的是車(chē)輛的運(yùn)營(yíng)狀況,若想查詢(xún)目前車(chē)輛的運(yùn)營(yíng)情況在此表中可以一目了然。表2。4 駕駛員檔案此表所體現(xiàn)的是駕駛員的檔案,表中記載了每個(gè)駕駛員的具體情況,同樣“駕駛員編號(hào)”是該表的主鍵。表2.5 車(chē)輛事故表此表所體現(xiàn)

22、的是車(chē)輛事故情況,每當(dāng)有事故發(fā)生以及該事故的詳細(xì)情況和其他事項(xiàng),諸如保險(xiǎn)理賠金等都有詳細(xì)記錄在內(nèi)。該表的主鍵是“事故編號(hào)”。表2。6車(chē)輛違章表此表所體現(xiàn)的是車(chē)輛違章情況,記載了違章車(chē)輛的詳細(xì)情況,諸如原因,處罰等.表2.7 車(chē)輛維修表此表所體現(xiàn)的是車(chē)輛維修狀況,記載了維修車(chē)輛的詳細(xì)情況,諸如更換的零件,數(shù)目和維修時(shí)間等。表2.8 零件表此表所體現(xiàn)的是零件的名字和單價(jià)。表2。9獎(jiǎng)懲表此表所體現(xiàn)的是駕駛員的獎(jiǎng)懲情況。詳細(xì)列出了每位駕駛員的收入和支出(因違章等原因)情況.表2.10 用戶表此表所體現(xiàn)的是用戶的情況,包括用戶姓名,密碼和用戶類(lèi)型(管理員和普通用戶)。第3章 系統(tǒng)主要功能設(shè)計(jì)和實(shí)現(xiàn)3.1

23、 登陸界面設(shè)計(jì)和實(shí)現(xiàn)圖3.1 系統(tǒng)登陸界面登陸界面設(shè)計(jì)代碼:Private Sub Combo1_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then Command1。SetFocus End IfEnd Sub/這段程序的作用是當(dāng)按下回車(chē)時(shí)候,焦點(diǎn)指向command1,也就是按下command1按鈕,就是登陸.Private Sub Command1_Click() Set adors = adoCon.Execute(”select * from 用戶表 where 用戶姓名=ltrim( Text1 & ) and 密碼=ltrim(

24、Text2 ) and 用戶類(lèi)型=ltrim(” Combo1。Text ))/這個(gè)語(yǔ)句是指在輸入用戶名和密碼之后連接數(shù)據(jù)庫(kù),查找相對(duì)應(yīng)的用戶名和密碼和用戶類(lèi)型。 If adors。EOF Then MsgBox 您輸入的信息有誤,請(qǐng)重新輸入!, , 系統(tǒng)提示/ Text1 = Text2 = ”/如果用戶名和密碼之類(lèi)的出錯(cuò),跳出個(gè)信息框,內(nèi)容是“您輸入的信息有誤,請(qǐng)重新輸入”并清空2個(gè)輸入框。 Text1.SetFocus i = i + 1 If i = 3 Then MsgBox 對(duì)不起,您已無(wú)權(quán)使用本系統(tǒng)!”, , ”系統(tǒng)提示 Unload Me/連續(xù)3次出錯(cuò)之后,系統(tǒng)跳出信息框,內(nèi)容

25、是:“對(duì)不起,您已無(wú)權(quán)使用本系統(tǒng)!”然后自動(dòng)關(guān)閉跳出. End If Else Select Case adors!用戶類(lèi)型 Case 管理員 Case ”普通用戶” MDIForm1.mnuyydelete.Enabled = False MDIForm1。mnusyscsh.Enabled = False MDIForm1。mnuglyset.Enabled = False End Select/登陸成功后區(qū)分管理員和普通用戶,普通用戶的上述3個(gè)功能是被禁用的。 MDIForm1.Show/顯示form1內(nèi)容 adors。Close Unload Me End IfEnd SubPriva

26、te Sub Command2_Click() Unload Me adoRs.CloseEnd Sub/點(diǎn)退出按鈕,退出登錄界面Private Sub Form_Load() Combo1。ListIndex = 0End Sub/ 設(shè)置當(dāng)前選中項(xiàng)為第一項(xiàng)Private Sub Text1_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then Text2.SetFocus End IfEnd SubPrivate Sub Text2_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then Com

27、bo1.SetFocus End IfEnd Sub/光標(biāo)在用戶名上的時(shí)候按下回車(chē),光標(biāo)就跳到密碼輸入欄上,再按下回車(chē)跳轉(zhuǎn)到用戶類(lèi)型上面。3。2 登陸系統(tǒng)主界面設(shè)計(jì)和實(shí)現(xiàn)圖3.2 系統(tǒng)主界面主界面設(shè)計(jì)代碼如下:Private Sub mnuaddlj_Click() frmLJ.Show StatusBar1.Panels(1)。Text = 零件添加窗體”End Sub/顯示frmLJ這個(gè)FORM,狀態(tài)欄的第一個(gè)框里的字顯示零件添加窗體”P(pán)rivate Sub mnubf_Click() frmDataCopy.Show StatusBar1.Panels(1).Text = ”數(shù)據(jù)備份窗體

28、End Sub/顯示frmDataCopy這個(gè)FORM,狀態(tài)欄的第一個(gè)框里的字顯示”數(shù)據(jù)備份窗體”P(pán)rivate Sub mnucarbf_Click() frmcarBFlr.Show StatusBar1.Panels(1).Text = 車(chē)輛報(bào)廢錄入窗體End Sub/顯示frmcarBFlr這個(gè)FORM,狀態(tài)欄的第一個(gè)框里的字顯示車(chē)輛報(bào)廢錄入窗體Private Sub mnucarbfcha_Click() frmcarBFcha。Show StatusBar1.Panels(1)。Text = 車(chē)輛報(bào)廢查詢(xún)窗體End Sub/顯示frmcarBFcha這個(gè)FORM,狀態(tài)欄的第一個(gè)框里

29、的字顯示車(chē)輛報(bào)廢查詢(xún)窗體”P(pán)rivate Sub mnucardaadd_Click() frmcardalr。Show StatusBar1。Panels(1)。Text = 車(chē)輛檔案錄入窗體End Sub/顯示frmcardalr這個(gè)FORM,狀態(tài)欄的第一個(gè)框里的字顯示車(chē)輛檔案錄入窗體”P(pán)rivate Sub mnucardacha_Click() frmcardacha。Show StatusBar1。Panels(1).Text = ”車(chē)輛檔案查詢(xún)窗體End Sub/顯示frmcardacha這個(gè)FORM,狀態(tài)欄的第一個(gè)框里的字顯示車(chē)輛檔案查詢(xún)窗體Private Sub mnucars

30、gcha_Click() frmcarSGcha。Show StatusBar1。Panels(1)。Text = 車(chē)輛事故查詢(xún)窗體End Sub/顯示frmcarSGcha這個(gè)FORM,狀態(tài)欄的第一個(gè)框里的字顯示車(chē)輛事故查詢(xún)窗體Private Sub mnucarsglist_Click() frmcarSGlr.Show StatusBar1.Panels(1).Text = 車(chē)輛事故錄入窗體End Sub/顯示frmcarSGlr這個(gè)FORM,狀態(tài)欄的第一個(gè)框里的字顯示”車(chē)輛事故錄入窗體Private Sub mnucarwxcha_Click() frmcarWXcha。Show St

31、atusBar1。Panels(1)。Text = ”車(chē)輛維修查詢(xún)窗體End Sub/顯示frmcarWXcha這個(gè)FORM,狀態(tài)欄的第一個(gè)框里的字顯示”車(chē)輛維修查詢(xún)窗體”P(pán)rivate Sub mnucarwxlist_Click() frmcarWXlr.Show StatusBar1.Panels(1)。Text = 車(chē)輛維修錄入窗體”End Sub/顯示frmcarWXlr這個(gè)FORM,狀態(tài)欄的第一個(gè)框里的字顯示車(chē)輛維修錄入窗體”P(pán)rivate Sub mnucarwzcha_Click() frmcarWZcha.Show StatusBar1。Panels(1)。Text = ”車(chē)

32、輛違章查詢(xún)窗體”End Sub/顯示frmcarWZcha這個(gè)FORM,狀態(tài)欄的第一個(gè)框里的字顯示”車(chē)輛違章查詢(xún)窗體”P(pán)rivate Sub mnucarwzlist_Click() frmcarWZlr.Show StatusBar1。Panels(1).Text = ”車(chē)輛違章錄入窗體End Sub/顯示frmcarWZlr這個(gè)FORM,狀態(tài)欄的第一個(gè)框里的字顯示”車(chē)輛違章錄入窗體”P(pán)rivate Sub mnucaryd_Click() frmcarydlr.Show StatusBar1。Panels(1).Text = 車(chē)輛異動(dòng)錄入窗體End Sub/顯示frmcarydlr這個(gè)FO

33、RM,狀態(tài)欄的第一個(gè)框里的字顯示車(chē)輛異動(dòng)錄入窗體Private Sub mnucarydcha_Click() frmcarydcha。Show StatusBar1.Panels(1)。Text = ”車(chē)輛異動(dòng)查詢(xún)窗體”End Sub/顯示frmcarydcha這個(gè)FORM,狀態(tài)欄的第一個(gè)框里的字顯示車(chē)輛異動(dòng)查詢(xún)窗體”P(pán)rivate Sub mnucaryycha_Click() frmcarYYcha.Show StatusBar1。Panels(1).Text = 車(chē)輛運(yùn)營(yíng)查詢(xún)窗體End Sub/顯示frmcarYYcha這個(gè)FORM,狀態(tài)欄的第一個(gè)框里的字顯示”車(chē)輛運(yùn)營(yíng)查詢(xún)窗體Priv

34、ate Sub mnuexit1_Click() Unload MeEnd Sub/卸載當(dāng)前窗體Private Sub mnuexit3_Click() Unload MeEnd Sub/卸載當(dāng)前窗體Private Sub mnuglyset_Click() frmManager.Show StatusBar1。Panels(1).Text = 管理員設(shè)置窗體End Sub/顯示frmManager這個(gè)FORM,狀態(tài)欄的第一個(gè)框里的字顯示管理員設(shè)置窗體”P(pán)rivate Sub mnuhf_Click() frmDataHF。Show StatusBar1.Panels(1).Text = 數(shù)據(jù)

35、恢復(fù)窗體”End Sub/顯示frmDataHF這個(gè)FORM,狀態(tài)欄的第一個(gè)框里的字顯示數(shù)據(jù)恢復(fù)窗體”P(pán)rivate Sub mnujsycha_Click() frmDrivercha。Show StatusBar1.Panels(1)。Text = ”駕駛員檔案查詢(xún)窗體”End Sub/顯示frmDrivercha這個(gè)FORM,狀態(tài)欄的第一個(gè)框里的字顯示”駕駛員檔案查詢(xún)窗體Private Sub mnujsyjc_Click() frmDrJC.Show StatusBar1。Panels(1)。Text = 獎(jiǎng)金評(píng)定窗體End Sub/顯示frmDrJC這個(gè)FORM,狀態(tài)欄的第一個(gè)框里的

36、字顯示獎(jiǎng)金評(píng)定窗體Private Sub mnujsylist_Click() frmDriverlr。Show StatusBar1.Panels(1).Text = 駕駛員檔案錄入窗體End Sub/顯示frmDriverlr這個(gè)FORM,狀態(tài)欄的第一個(gè)框里的字顯示駕駛員檔案錄入窗體”P(pán)rivate Sub mnusyscsh_Click() If MsgBox(”執(zhí)行此命令會(huì)清空數(shù)據(jù)庫(kù)里所有記錄,確實(shí)要執(zhí)行嗎?, vbOKCancel, ”系統(tǒng)提示) = vbOK Then adoCon。Execute (delete from 車(chē)輛檔案”) adoCon.Execute (delete

37、 from 車(chē)輛報(bào)廢表) adoCon.Execute (delete from 車(chē)輛事故表”) adoCon.Execute (”delete from 車(chē)輛違章表) adoCon。Execute (”delete from 車(chē)輛維修表”) adoCon.Execute (delete from 車(chē)輛異動(dòng)表) adoCon。Execute (delete from 車(chē)輛運(yùn)營(yíng)表”) adoCon。Execute (delete from 駕駛員檔案) adoCon.Execute (”delete from 零件表”) adoCon。Execute (”delete from 用戶表”) ad

38、oCon。Execute (”delete from 獎(jiǎng)罰表) Else Exit Sub End IfEnd Sub/執(zhí)行一個(gè)詢(xún)問(wèn)對(duì)話框,如果選擇OK則上述表都清除,Cancel則取消操作Private Sub mnuyydelete_Click() If MsgBox(”真的要清空運(yùn)營(yíng)表嗎?, vbOKCancel, ”系統(tǒng)提示”) = vbOK Then adoCon。Execute (delete from 車(chē)輛運(yùn)營(yíng)表) Else Exit Sub End IfEnd Sub/執(zhí)行一個(gè)詢(xún)問(wèn)對(duì)話框,如果選擇OK則上述表都清除,Cancel則取消操作Private Sub mnuyylis

39、t_Click() frmcarYYlr.Show StatusBar1。Panels(1)。Text = ”車(chē)輛運(yùn)營(yíng)錄入窗體”End Sub/顯示frmcarYYlr這個(gè)FORM,狀態(tài)欄的第一個(gè)框里的字顯示”車(chē)輛運(yùn)營(yíng)錄入窗體Private Sub Toolbar1_ButtonClick(ByVal Button As MSComctlLib.Button) Select Case Button.Index Case 1 Call mnucardaadd_Click Case 2 Call mnujsylist_Click Case 3 Call mnuyylist_Click Case 5

40、 Call mnucarwxlist_Click Case 6 Call mnucarwzlist_Click Case 7 Call mnucarsglist_Click End Select End Sub/菜單上的按鈕,選擇不同的按鈕調(diào)用相應(yīng)的命令Private Sub Toolbar1_ButtonMenuClick(ByVal ButtonMenu As MSComctlLib.ButtonMenu) Select Case ButtonMenu。Index Case 1 Call mnucardacha_Click Case 2 Call mnujsycha_Click Case

41、3 Call mnucaryycha_Click Case 5 Call mnucarwxcha_Click Case 6 Call mnucarwzcha_Click Case 7 Call mnucarsgcha_Click End Select/菜單上的按鈕,選擇不同的按鈕調(diào)用相應(yīng)的命令3.3 車(chē)輛檔案查詢(xún)界面設(shè)計(jì)和實(shí)現(xiàn)圖3。3 車(chē)輛檔案查詢(xún)界面點(diǎn)擊車(chē)輛檔案管理按鈕,選擇車(chē)輛檔案列表按鈕。根據(jù)車(chē)輛號(hào)碼,車(chē)輛類(lèi)型,車(chē)輛所在單位,是否保險(xiǎn),異動(dòng)情況,是否報(bào)廢等綜合條件進(jìn)行查詢(xún)。車(chē)輛查詢(xún)?cè)O(shè)計(jì)代碼:Private Sub ckbf_Click() If ckbf.Value Then Combo

42、6。Enabled = True Else Combo6.Enabled = False End IfEnd Sub/點(diǎn)擊下拉菜單按鈕選擇“報(bào)廢”是否可用True為可用,F(xiàn)alse為不可用Private Sub ckbx_Click() If ckbx.Value Then Combo4。Enabled = True Else Combo4。Enabled = False End IfEnd Sub/點(diǎn)擊下拉菜單按鈕選擇“保險(xiǎn)是否可用True為可用,F(xiàn)alse為不可用Private Sub ckcp_Click() If ckcp.Value Then Combo1。Enabled = Tru

43、e Else Combo1.Enabled = False End IfEnd Sub/點(diǎn)擊下拉菜單按鈕選擇“車(chē)牌號(hào)碼”是否可用True為可用,False為不可用Private Sub ckdw_Click() If ckdw.Value Then Combo3.Enabled = True Else Combo3。Enabled = False End IfEnd Sub/點(diǎn)擊下拉菜單按鈕選擇“車(chē)牌單位”是否可用True為可用,F(xiàn)alse為不可用Private Sub cklx_Click() If cklx。Value Then Combo2.Enabled = True Else Com

44、bo2.Enabled = False End IfEnd Sub/點(diǎn)擊下拉菜單按鈕選擇“車(chē)牌類(lèi)型”是否可用True為可用,F(xiàn)alse為不可用Private Sub ckyd_Click() If ckyd.Value Then Combo5.Enabled = True Else Combo5。Enabled = False End IfEnd Sub/點(diǎn)擊下拉菜單按鈕選擇“異動(dòng)”是否可用True為可用,F(xiàn)alse為不可用Private Sub cmdAll_Click() Frame1。Enabled = False ckcp。Value = 0 cklx.Value = 0 ckdw.V

45、alue = 0 ckbx。Value = 0 ckyd。Value = 0 ckbf.Value = 0/賦值0 Call Rebind/調(diào)用Rebind cmdCha。Visible = True/ cmdCha按鈕可見(jiàn) cmdAll。Visible = False/ cmdAll按鈕不可見(jiàn) cmdOk.Enabled = False/ cmdOk被禁用End SubPrivate Sub cmdExit_Click() MDIForm1。StatusBar1.Panels(1).Text = Unload MeEnd SubPrivate Sub cmdCha_Click() /點(diǎn)擊查詢(xún)

46、按紐后首先清空車(chē)輛檔案列表 Call QingKong cmdCha.Visible = False/cmdCha按鈕不可見(jiàn) cmdAll.Visible = True/cmdAll按鈕可見(jiàn) Frame1.Enabled = True/Frame1按鈕可使用 cmdOk.Enabled = True/cmdOk按鈕可使用End SubPrivate Sub cmdOk_Click() Dim sql As String Dim scp As String If ckcp.Value Then scp = ”車(chē)牌號(hào)碼 like ” Combo1。Text & %/查詢(xún)以輸入的數(shù)字開(kāi)頭的數(shù)據(jù) El

47、se scp = 車(chē)牌號(hào)碼 like %”/查詢(xún)所有數(shù)據(jù) End If Dim slx As String If cklx.Value Then slx = 車(chē)輛類(lèi)型 like & Combo2。Text & ”/查詢(xún)以輸入的數(shù)字開(kāi)頭的數(shù)據(jù) Else slx = ”車(chē)輛類(lèi)型 like /查詢(xún)所有數(shù)據(jù) End If Dim sdw As String If ckdw。Value Then sdw = 車(chē)輛所在單位 like & Combo3.Text & ”%/查詢(xún)以輸入的數(shù)字開(kāi)頭的數(shù)據(jù) Else sdw = ”車(chē)輛所在單位 like %”/查詢(xún)所有數(shù)據(jù) End If Dim sbx As St

48、ring If ckbx。Value Then sbx = 保險(xiǎn)否=” Combo4。Text & ”/查詢(xún)以輸入的數(shù)字開(kāi)頭的數(shù)據(jù) Else sbx = ”保險(xiǎn)否 like %”/查詢(xún)所有數(shù)據(jù) End If Dim syd As String If ckyd。Value Then syd = 異動(dòng)否= & Combo5。Text & /查詢(xún)以輸入的數(shù)字開(kāi)頭的數(shù)據(jù) Else syd = ”異動(dòng)否 like ”/查詢(xún)所有數(shù)據(jù) End If Dim sbf As String If ckbf.Value Then sbf = 報(bào)廢否=” & Combo6。Text ”/查詢(xún)以輸入的數(shù)字開(kāi)頭的數(shù)據(jù) E

49、lse sbf = ”報(bào)廢否 like %/查詢(xún)所有數(shù)據(jù) End If sql = select * from 車(chē)輛檔案 where & scp & and & slx and ” sdw and ” sbx ”and & syd & and ” sbf MsgBox sql If sql = select from 車(chē)輛檔案 where 車(chē)牌號(hào)碼 like and 車(chē)輛類(lèi)型 like and 車(chē)輛所在單位 like %and 保險(xiǎn)否 like and 異動(dòng)否 like %and 報(bào)廢否 like Then MsgBox ”請(qǐng)選擇查詢(xún)條件, , ”系統(tǒng)提示” Call QingKong /清空

50、上一次的查詢(xún)記錄 Exit Sub End If Set adors = adoCon.Execute(sql) If adors。EOF Then /清空上一次的查詢(xún)記錄 Call QingKong/清空上一次的查詢(xún)記錄 /給出文本框提示 MsgBox 沒(méi)有符合您查詢(xún)車(chē)輛的條件!, , ”系統(tǒng)提示”/給出文本框提示 Else Adodc1。RecordSource = sql Adodc1.Refresh End If adors。Close ckcp.Value = 0 cklx.Value = 0 ckdw。Value = 0 ckbx。Value = 0 ckyd。Value = 0

51、ckbf。Value = 0End SubPrivate Sub Form_Load() Adodc1。ConnectionString = Provider=Microsoft.Jet.OLEDB。4。0;Data Source= App.Path ”clgl。mdb;Persist Security Info=False Call Rebind cmdAll.Visible = False/cdmAll按鈕不可見(jiàn) cmdCha。Visible = True/cmdCha按鈕可見(jiàn) cmdOk。Enabled = False/cmdOk按鈕禁用 frmcardacha.Height = 507

52、0 frmcardacha。Width = 7935/設(shè)置位置(高度,寬度)。 將表里存在的所有車(chē)牌加到控件combo1里 On Error Resume Next Adodc1。RecordSource = ”select distinct 車(chē)牌號(hào)碼 from 車(chē)輛檔案/重復(fù)數(shù)據(jù)只出現(xiàn)一次 Do Combo1。AddItem Adodc1.Recordset。Fields(0) Adodc1.Recordset.MoveNext Loop Until Adodc1.Recordset.EOF Adodc1。Refresh/一個(gè)循環(huán)語(yǔ)句,將數(shù)據(jù)添加到列表框里并顯示 Adodc2。RecordS

53、ource = select distinct 車(chē)輛類(lèi)型 from 車(chē)輛檔案”/重復(fù)數(shù)據(jù)只出現(xiàn)一次 Adodc2。Refresh Do Combo2。AddItem Adodc2.Recordset。Fields(0) Adodc2。Recordset。MoveNext Loop Until Adodc2。Recordset.EOF/一個(gè)循環(huán)語(yǔ)句,將數(shù)據(jù)添加到列表框里并顯示 Adodc3。RecordSource = ”select distinct 車(chē)輛所在單位 from 車(chē)輛檔案/重復(fù)數(shù)據(jù)只出現(xiàn)一次 Adodc3.Refresh Do Combo3.AddItem Adodc3。Recor

54、dset。Fields(0) Adodc3.Recordset.MoveNext Loop Until Adodc3。Recordset。EOF Adodc1。RecordSource = ”select * from 車(chē)輛檔案” Adodc1.RefreshEnd Sub/一個(gè)循環(huán)語(yǔ)句,將數(shù)據(jù)添加到列表框里并顯示Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer) cmdExit_ClickEnd SubPrivate Sub Rebind() Frame2。Caption = ”車(chē)輛檔案列表” 聯(lián)接數(shù)據(jù)庫(kù)及選表 Adodc1。ConnectionString = ”P(pán)rovider=Microsoft.Jet.OLEDB.4。0;Data Source= App。Path & ”clgl.mdb & ;Persist Security Info=False” Adodc1.RecordSource = select * from 車(chē)輛檔案 Adodc1.RefreshEnd SubPrivate Sub QingKong() Frame2.Caption = ”您所要查詢(xún)的車(chē)輛檔案如下:” 清空

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論