汽車租賃管理系統(tǒng)的設(shè)計與實(shí)現(xiàn)_第1頁
汽車租賃管理系統(tǒng)的設(shè)計與實(shí)現(xiàn)_第2頁
汽車租賃管理系統(tǒng)的設(shè)計與實(shí)現(xiàn)_第3頁
汽車租賃管理系統(tǒng)的設(shè)計與實(shí)現(xiàn)_第4頁
汽車租賃管理系統(tǒng)的設(shè)計與實(shí)現(xiàn)_第5頁
已閱讀5頁,還剩98頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

摘要近年來,隨著計算機(jī)技術(shù)的成熟及數(shù)據(jù)庫技術(shù)的發(fā)展,信息管理系統(tǒng)的應(yīng)用已延伸到社會的各個領(lǐng)域。以信息管理系統(tǒng)的開發(fā)為理論基礎(chǔ),開發(fā)出汽車租賃管理系統(tǒng)。汽車租賃管理是汽車租賃公司開展平常運(yùn)營的重要工具。傳統(tǒng)的人工管理方式不僅浪費(fèi)時間,并且管理復(fù)雜,易出差錯。汽車租賃管理系統(tǒng)能使繁瑣的數(shù)據(jù)計算、信息解決變得簡樸易操作,完全實(shí)現(xiàn)數(shù)據(jù)信息的電算化管理。使用這套系統(tǒng)有助于提高汽車租賃公司的效率,節(jié)約成本,增長經(jīng)濟(jì)效益。本論文重要介紹了該系統(tǒng)的生成及VisualBasic6.0和Access的一般原理。闡述了整個汽車租賃管理系統(tǒng)的制作環(huán)節(jié)及工作原理;設(shè)計實(shí)現(xiàn)了系統(tǒng)用戶管理、基本信息管理、業(yè)務(wù)管理、會員管理等程序模塊;分析了系統(tǒng)的可行性并解決了也許存在的問題。關(guān)鍵詞:數(shù)據(jù)庫;VisualBasic6.0;汽車租賃管理AbstractInrecentyears,withthedevelopmentofthetechnologyofcomputeranddatabase.Informationmanagementsystemhasstretchedintoeveryfieldofoursociety.Basedonthedevelopmenttheoryoftheinformationmanagementsystemthendevelopedanothermanagementsystem--theautomobilelend-lease.Themanagementofautomobilelendingandleasingplayaveryimportantroleinthecompany'sdailyoperation.Comparedwiththetraditionalwaywhichwastehumanresourcesandtime.Atthesametime,itiscomplicatedandoftenrunswithmistakes.Whiletheautomobilelend-leasesystemturnthecomplicateddatacalculationandinformationprocessingintosimpleinstructions.Notonlyincreasetheefficiency,buttheeconomicbenefits.ThispapermainlyintroducesthedevelopbackgroundofthesystemandthebasictheoryofVisualBasic6.0andAccessVisual.Ittellsthestructureoftheautomobilelend-leasemanagementsystemanditsworkingtheory;itanalyzesthespecialty,difficultyandimportantthingsinsystemrealization.Thedesignrealizesthemanagementofthesystemusers,thebasicinformation,thebusiness,andthemembers'management.Keywords:Database;VisualBasic6.0;Theautomobilelend-leasemanagement目錄第1章緒論 11.1開發(fā)背景 11.2系統(tǒng)功能簡介 11.3開發(fā)工具 11.3.1VisualBasic6.0簡介 21.3.2Access2023簡介 21.4可行性研究與需求分析 31.4.1可行性研究 31.4.2需求分析 3第2章系統(tǒng)數(shù)據(jù)庫設(shè)計 42.1數(shù)據(jù)庫管理系統(tǒng)簡介 42.2ADO數(shù)據(jù)庫訪問技術(shù) 42.3系統(tǒng)功能分析研究 52.4系統(tǒng)功能模塊圖 52.5數(shù)據(jù)字典 62.6數(shù)據(jù)庫各表的數(shù)據(jù)結(jié)構(gòu) 7第3章系統(tǒng)功能設(shè)計 123.1登錄模塊設(shè)計 123.2主程序界面設(shè)計 133.3基礎(chǔ)數(shù)據(jù)管理模塊的實(shí)現(xiàn) 143.3.1車輛和保險類型管理窗體的設(shè)計 143.3.2汽車銷售商管理窗體的設(shè)計 153.3.3保險公司管理窗體的設(shè)計 163.3.4車輛管理窗體的設(shè)計 173.4客戶會員管理模塊的實(shí)現(xiàn) 183.4.1客戶信息管理窗體的設(shè)計 183.4.2會員信息管理窗體設(shè)計 193.4.3會員類型管理窗體設(shè)計 213.5平常業(yè)務(wù)管理模塊的實(shí)現(xiàn) 213.5.1汽車租賃管理窗體設(shè)計 223.5.2汽車歸還管理窗體設(shè)計 24結(jié)論 26致謝 27參考文獻(xiàn) 27附錄程序代碼 29第1章緒論1.1開發(fā)背景今天,隨著人民生活水平的不斷提高,汽車已不再遙不可及,汽車租賃作為一種全新的消費(fèi)模式已成為一個極具市場潛力的行業(yè),它不僅可以有效的疏通汽車生產(chǎn)與汽車銷售之間的“瓶頸”,并且對汽車消費(fèi)市場的擴(kuò)展有著不可低估的功效。在這個“時間就是金錢”的社會,加快生活節(jié)奏,提高生活效率刻不容緩。因此在必要的時候向汽車出租公司提出租賃車輛的規(guī)定,已成為被大眾認(rèn)可的選擇。在社會需求的帶動下,汽車租賃市場出現(xiàn)了前所未有的繁榮景象。各個汽車租賃公司門庭若市,業(yè)務(wù)激增。然而在繁忙的景象背后,卻也暴露出汽車租賃公司在解決業(yè)務(wù)信息時以人工方式為主所帶來的諸如:效率低下,管理混亂,失誤增多等諸多弊端。在實(shí)踐中,汽車租賃行業(yè)的業(yè)主們逐漸意識到在租賃行業(yè)中借助計算機(jī)引入信息管理的重要性,并開始不斷提高自身的素質(zhì)和高科技在工作中的投入,以改善信息的管理,提高服務(wù)效率。汽車租賃管理系統(tǒng)就是對車輛信息和客戶信息的管理,重要涉及車輛的基本信息、車輛的出租狀態(tài)、車輛的投保情況、客戶信息的管理等。它的設(shè)計開發(fā)充足按照汽車租賃的實(shí)際業(yè)務(wù)流程,結(jié)合了租賃行業(yè)的實(shí)際運(yùn)營特點(diǎn),滿足汽車租賃行業(yè)的信息化需求。1.2系統(tǒng)功能簡介汽車租賃管理系統(tǒng)針對的是汽車租賃公司在向客戶提供出租車輛服務(wù)過程中面對的各種問題而開發(fā)的,對其業(yè)務(wù)信息進(jìn)行自動化、信息化解決,使車輛租賃管理變得高校、快捷、規(guī)范。此系統(tǒng)具有完善的功能,使用輕松方便,易于維護(hù),適應(yīng)性強(qiáng)。涉及客戶信息管理、車輛信息管理、汽車租賃歸還管理、會員類型管理、會員信息管理、保險公司管理、汽車銷售商管理等。具有添加、修改、刪除、查詢等功能,通過這些管理模塊,可以使汽車租賃服務(wù)更加清楚,更加便捷,提高了服務(wù)質(zhì)量,減少了操作人員的工作量。希望它能為業(yè)內(nèi)人員的工作提供一定的幫助。1.3開發(fā)工具1.3.1VisualBasic6.0簡介VisualBasic是一種結(jié)構(gòu)化的編程語言,它集成了一個完整且功能強(qiáng)大的應(yīng)用程序開發(fā)環(huán)境。操作簡樸易學(xué),使程序設(shè)計不再復(fù)雜。“visual”指的是開發(fā)圖形用戶界面(GUI)的方法。不需編寫大量代碼去描述界面元素的外觀和位置,而只要把預(yù)先建立的對象加到屏幕上,一點(diǎn)即可?!癇asic”是一種在計算機(jī)技術(shù)發(fā)展歷史上應(yīng)用的最為廣泛的語言。此外,在VisualBasic中引入了控件的概念,在Windows中控件的身影無處不在,各種各樣的按鈕,文本框等都是控件。VisualBasic把這些控件模式化,并且每個控件都有若干屬性用來控制控件的外觀以及工作方法。VisualBasic是具有集成的可視化數(shù)據(jù)庫工具,VisualBasic6.0提供了一整套工具以在任何應(yīng)用程序中集成數(shù)據(jù)庫。它可用來設(shè)計和修改ADO等數(shù)據(jù)庫工具,也可用拖放方式創(chuàng)建綁有數(shù)據(jù)的表格和報告。更重要的是VisualBasic簡樸、易學(xué)、實(shí)用,深受廣大編程愛好者的愛慕。1.3.2Access2023簡介MicrosoftAccess數(shù)據(jù)庫管理系統(tǒng)是MicrosoftOffice系列應(yīng)用軟件的一部分,是基于Windows平臺的數(shù)據(jù)庫管理系統(tǒng),它操作簡樸、功能全面、使用方便,不僅具有傳統(tǒng)數(shù)據(jù)庫管理軟件所具有的功能,同時還進(jìn)一步增強(qiáng)了與Internet的集成,用戶可以通過Internet共享Access數(shù)據(jù)庫。Access具有強(qiáng)大的數(shù)據(jù)管理功能,可以方便地運(yùn)用各種數(shù)據(jù)源,生成窗體(表單)、查詢、報表和應(yīng)用程序等。1Access2023是Microsoft公司出品的關(guān)聯(lián)式資料庫套裝軟體。它提供視覺化的設(shè)計介面,不必撰寫程式,即可快速,簡樸地開發(fā)出美觀實(shí)用的資料庫管理系統(tǒng)。Access2023由如下組成:資料表:為access儲存資料的地方,亦為資料的主線來源,一個資料庫至少要存在一個資料表。查詢:可依使用者需求,以一些限制條件(篩選,過濾…)來選取資料表中。表單:建立一個讓使用者輸入,查詢,修改資料的操作畫面。報表:將資料庫里的資料運(yùn)用報表做成有運(yùn)用價值的畫面資料。資料頁:為Access2023的新增物件,資料發(fā)布至網(wǎng)路的媒介。此物件完畢建立后,將會在資料庫檔案外,再產(chǎn)生一個HTML檔。巨集:建立簡樸的資料操作指令與將一連串的執(zhí)行動作自動化。應(yīng)用于一些反復(fù)性高的動作或者用于使用者自訂工作環(huán)境上。模組:開發(fā)應(yīng)用系統(tǒng)的工具。是讓使用者能更隨心所欲的去控制系統(tǒng)。1.4可行性研究與需求分析1.4.1可行性研究通過對部分用戶和部門的調(diào)查研究表白,傳統(tǒng)的租賃管理系統(tǒng),在后期維護(hù)和更新上比較麻煩,假如對功能模塊進(jìn)行修改,需要對整個系統(tǒng)進(jìn)行重新架構(gòu)才干實(shí)現(xiàn)。本系統(tǒng)在基本信息管理模塊中實(shí)現(xiàn)了對車輛、客戶、駕駛員等信息的增長、刪除、修改等功能。在平常任務(wù)模塊中,實(shí)現(xiàn)了對租賃和歸還信息的管理。在基礎(chǔ)數(shù)據(jù)管理中還涉及了租賃協(xié)議的打印,非常周到,貼合實(shí)際。本系統(tǒng)具有:操作簡便、靈活,用戶界面直觀;可實(shí)現(xiàn)公司管理程序化、條理化、規(guī)范化、高效化;提供及時、可靠的數(shù)據(jù)資料,并自動對數(shù)據(jù)進(jìn)行分析;多數(shù)操作選項(xiàng)采用人工選擇的方式,避免了用戶記憶一些不必要的指令,減輕用戶操作承擔(dān)。1.4.2需求分析開發(fā)汽車租賃管理系統(tǒng)的目的就是為了使租賃公司可以更好的為客戶服務(wù)且工作不需要花費(fèi)大量的時間和精力。這不僅使客戶租車過程簡化、快捷,還能使租賃公司信息更規(guī)范,易管理.綜上所述,公司不再需要過多的人員去管理繁雜的資料,既節(jié)省了辦公效率、減少了成本,還節(jié)省了客戶的時間。本系統(tǒng)通過短期的可行性市場調(diào)查與分析工作及長期實(shí)踐操作,最后擬定整體系統(tǒng)方案,在綜合各項(xiàng)軟件指標(biāo)的前提下認(rèn)真完畢。第2章系統(tǒng)數(shù)據(jù)庫設(shè)計2.1數(shù)據(jù)庫管理系統(tǒng)簡介數(shù)據(jù)庫是信息管理系統(tǒng)的基本技術(shù),是計算機(jī)科學(xué)的重要分支。數(shù)據(jù)庫(DataBase,DB)是指長期儲存在計算機(jī)內(nèi)的、有組織的、可以共享的數(shù)據(jù)集合。數(shù)據(jù)庫中的數(shù)據(jù)按一定的數(shù)據(jù)模型組織、描述和儲存,具有較小的冗余度、較高的數(shù)據(jù)獨(dú)立性和易擴(kuò)展性,并可認(rèn)為各種用戶共享。數(shù)據(jù)庫管理系統(tǒng)是在操作系統(tǒng)的支持下,為數(shù)據(jù)庫的建立、使用和維護(hù)而配置的軟件環(huán)境,如MicrosoftSQLServer、MicrosoftAccess等。數(shù)據(jù)庫系統(tǒng)是位于用戶與操作系統(tǒng)之間的一層數(shù)據(jù)管理軟件,它在操作系統(tǒng)的基礎(chǔ)上,對數(shù)據(jù)庫進(jìn)行管理和控制,運(yùn)用數(shù)據(jù)庫管理系統(tǒng)提供的一系列命令,用戶能方便地實(shí)現(xiàn)對數(shù)據(jù)庫的基本操作(如建表、向表中添加記錄、刪除記錄和修改記錄等)。用戶使用的各種數(shù)據(jù)庫命令以及數(shù)據(jù)庫應(yīng)用程序的運(yùn)營,都要通過數(shù)據(jù)庫管理系統(tǒng)來實(shí)現(xiàn);此外,數(shù)據(jù)庫管理系統(tǒng)還要保證數(shù)據(jù)的安全性,完整性,多用戶對數(shù)據(jù)庫的并發(fā)使用以及發(fā)生故障后系統(tǒng)的回復(fù)等任務(wù)。在信息資源已成為各個部門的重要財富和資源的當(dāng)下。開發(fā)一個滿足各個部門信息解決規(guī)定的信息系統(tǒng)也因此成為一個公司或組織生存和發(fā)展的重要部分。因此,作為信息系統(tǒng)核心,數(shù)據(jù)庫已得到越來越廣泛的應(yīng)用,新的應(yīng)用領(lǐng)域采用數(shù)據(jù)庫存儲和解決信息資源。對于一個國家來說,數(shù)據(jù)庫的規(guī)模、信息量的大小和使用頻度已成為衡量這個國家信息化限度的重要標(biāo)志。2.2ADO數(shù)據(jù)庫訪問技術(shù)VisualBasic作為一種面向?qū)ο蟮目梢暬幊坦ぞ?,具有簡樸易學(xué)、靈活方便易于擴(kuò)充的特點(diǎn)。因此它越來越多的用作數(shù)據(jù)庫應(yīng)用程序的前端開發(fā)工具。在VisualBasic中,可以通過ActiveX數(shù)據(jù)對象(ADO),數(shù)據(jù)訪問對象(DAO),ODBC直接連接到數(shù)據(jù)庫:其中ADO是最新的數(shù)據(jù)庫訪問技術(shù)。它是使用更加簡樸,靈活的對象模型。本系統(tǒng)就是基于這種技術(shù)開發(fā)的。ADO在工程的創(chuàng)建過程中提供執(zhí)行以下操作的方式:連接到數(shù)據(jù)源。指定訪問數(shù)據(jù)源的命令,同時可帶變量參數(shù)或優(yōu)化執(zhí)行。通常涉及ADO的Command對象。執(zhí)行命令,例如一個SELECT腳本。假如這個命令使數(shù)據(jù)按表中行的形式返回,則將這些行存儲在易于檢查、操作或更改的緩存中。適當(dāng)情況下,可以把緩存行的更改內(nèi)容寫回數(shù)據(jù)庫中,更新數(shù)據(jù)源。提供常規(guī)方法檢測錯誤(錯誤通常由建立連接或執(zhí)行命令導(dǎo)致),涉及ADO的Error對象。2.3系統(tǒng)功能分析研究本系統(tǒng)通過對市場需求的具體調(diào)研和分析,擬定本系統(tǒng)應(yīng)具有系統(tǒng)管理基礎(chǔ)數(shù)據(jù)管理、客戶會員管理、平常業(yè)務(wù)管理等模塊的功能.下面具體分析一下各個模塊的功能。系統(tǒng)管理模塊該模塊可以完畢修改用戶密碼,添加新用戶,設(shè)立密碼以及退出系統(tǒng)等操作。2、基礎(chǔ)數(shù)據(jù)管理模塊在這個模塊中,可以設(shè)立車輛類型和保險類型,并且還可以對汽車銷售商,車輛的保險公司進(jìn)行管理,如添加,修改和刪除等操作??蛻魰T管理模塊在這個模塊中,可以設(shè)立會員的級別以及添加,修改,和刪除客戶和會員的信息。4、平常業(yè)務(wù)管理模塊在這個模塊中可以完畢車輛的出租,審核以及還車的操作,并且可以查詢和打印租賃協(xié)議。2.4系統(tǒng)功能模塊圖汽車租賃管理信息系統(tǒng)的系統(tǒng)功能結(jié)構(gòu)圖如圖2.1所示。圖2.1系統(tǒng)總體功能設(shè)計2.5數(shù)據(jù)字典數(shù)據(jù)字典是關(guān)于數(shù)據(jù)信息的集合,它為分析階段的工具,其作用就是在軟件分析和設(shè)計的過程中給人提供關(guān)于數(shù)據(jù)的描述信息,在數(shù)據(jù)字典中,建立一組嚴(yán)密一致的定義很有助于改善分析員和用戶之間的通信,因此將消除也許的誤解。數(shù)據(jù)字典重要應(yīng)當(dāng)涉及的每個數(shù)據(jù)元素的控制信息有:名字,別名,描述,定義,位置。數(shù)據(jù)字典中包含的每個數(shù)據(jù)元素的控制信息是很有價值的。由于列出了使用一個給定的數(shù)據(jù)元素的所有程序(或者模塊),所以很容易估計改變一個數(shù)據(jù)將產(chǎn)生的影響,并且能對所有受影響的程序或者模塊做出相應(yīng)的調(diào)整。本系統(tǒng)的數(shù)據(jù)字典如下:1、名字:car別名:車輛信息描述:車輛的購買,保險。技術(shù)信息。使用,價格等信息。定義:car=carno+cartype+arname+color+oilno+engineno+carcase+saleid+buydate+insurno+insured+insurtype+insurSdate+insurEdate+deposit+dayprice+weekendprice+weekprice+monthprice+Daykm+overtimeprice+overkmprice+status+comment位置:車輛管理,汽車租賃,車輛歸還2、名字:users別名:用戶信息描述:系統(tǒng)用戶的名稱定義:users=username+userpwd位置:用戶信息3、名字:customer別名:客戶信息描述:記錄客戶的名字,年齡,聯(lián)系方式等各種信息定義:customer=id+name+sex+age+idcard+telephone+workplace+address+zipcode+email+licenseno+licensetype+gedate+expiredate+diverage+flag+typeid+certificate+warrantor+wildcard+wworkplace4、名字:membertype別名:會員類型描述:記錄會員類型的編號,名稱,折扣率定義:membertype=id+typename+rate位置:會員類型定義,會員信息,汽車租賃,車輛歸還5、名字:company別名:公司信息描述:保險公司和車輛銷售商的名稱,地址,聯(lián)系方式等信息定義:company=id+company+telephone+zipcode+fax+address+email+contact+typeid+comment位置:銷售商信息,保險公司信息,車輛信息7、名字:types別名:類型信息描述:車輛品牌類型以及保險種類定義:types=id+typename+typeid+description8、名字:lease別名:租賃業(yè)務(wù)信息描述:協(xié)議編號,租賃模式。租還車時間等業(yè)務(wù)信息定義:lease=contractno+carno+custid+leasetime+leasemode+price1+price2+workdays+weekendcount+deposit+daykm+oprice1+oprice2+returntime+returnkm+othercost+rate+dayment+total+status+createdate+username+realtime位置:車輛租賃,車輛歸還2.6數(shù)據(jù)庫各表的數(shù)據(jù)結(jié)構(gòu)本系統(tǒng)數(shù)據(jù)庫名稱為CarMIS,數(shù)據(jù)庫中涉及:①用戶信息表(users)②車輛信息表(Cars)③公司信息表(Company)④客戶信息表(Customer)⑤車輛和保險類型信息表(Types)⑥會員類型信息表(MenberType)⑦租賃信息表(Lease)。各表數(shù)據(jù)結(jié)構(gòu)如下:表2.1用戶信息表的數(shù)據(jù)結(jié)構(gòu)表名:Users說明:用戶信息表字段名類型大小空值描述Usernamenvarchar20用戶名userpwdnvarchar40用戶密碼表2.2車輛信息表的數(shù)據(jù)結(jié)構(gòu)表名:Cars說明:車輛信息表字段名類型大小空值描述Carnonvarchar20Y汽車編號Typeidsmallint2Y烈性編號carnamenvarchar50Y汽車名稱colornvarchar20Y顏色oilnonvarchar30Y燃油編號enginenonvarchar50Y發(fā)動機(jī)標(biāo)號carcasenvarchar50Y車架編號Saleidint2Y銷售商Buydatesmalldatetime10Y購買日期Insurnonvarchar50Y保險公司insuridint4Y保單號insurtypenvarchar50Y保險類型Insursdatesmalldatetime10Y保險開始日期Insuredatesmalldatetime10Y保險結(jié)束日期Depositsmallint4Y押金Daypricesmallint4Y日租金Weekend-pricesmallint4Y周末日租金Weekpricesmallint4Y周租金monthpricesmallint4Y月租金daykmsmallint4Y日限公里overtimepricesmallint4Y超時單位費(fèi)用overkmpricesmallint14Y超公里單位費(fèi)用statusnvarchar10Y狀態(tài)commentntext10Y備注表2.3公司信息表的數(shù)據(jù)結(jié)構(gòu)表名:Company說明:公司信息表字段名類型大小空值描述Idint4公司編號Companynvarchar100Y公司名稱Telephonenvarchar50Y電話Zipcodenvarchar8Y郵編Faxnvarchar50Y傳真Addessnvarchar50Y地址Emailnvarchar50Y電郵Contactnvarchar50Y聯(lián)系人Typeidtinyint1Y類型編號commentntext16Y備注表2.4客戶信息表的數(shù)據(jù)結(jié)構(gòu)表名:Customer說明:客戶信息表字段名類型大小空值描述Idnvarchar20Y客戶編號Namenvarchar50Y名稱Sexnvarchar2Y性別Agesmallint2Y年齡Idcardnvarchar30Y會員卡號Telephonenvarchar30Y電話Workplacenvarchar30Y工作地點(diǎn)Addressnvarchar50Y地址Zipcodenvarchar50Y郵編Emailnvarchar10Y電郵Licensenonvarchar30Y駕照IDLicensetypenvarchar20Y駕照類型Getdatenvarchar20Y駕照獲得日期Expireddatenvarchar20Y駕照過期日期Driveragesmallint2Y駕齡Flagtinyint2Y折扣Typeidint4Y會員類型編號Certificatenvarchar40Y抵押證件Warrantornvarchar50Y擔(dān)保人Widcardnvarchar30Y擔(dān)保人身份證wworkplacenvarchar100Y擔(dān)保人工作地點(diǎn)表2.5車輛和保險類型信息表的數(shù)據(jù)結(jié)構(gòu)表名:Types說明:車輛和保險類型信息表字段名類型大小空值描述Idint4編號typenamenvarchar50Y類型名稱Typeidtinyint2類型編號descriptionnvarchar100Y描述表2.6會員類型信息表的數(shù)據(jù)結(jié)構(gòu)表名MemberType說明:會員類型信息表字段名類型大小空值描述Idint4會員編號Typenamenvarchar20Y類型名稱Ratereal8Y享受折扣表2.7租賃信息表的數(shù)據(jù)結(jié)構(gòu)表名:Lease說明:租賃信息表字段名類型大小空值描述Contracnonvarchar50Y協(xié)議編號Carnonvarchar20Y車輛編號Custidnvarchar20Y客戶編號Leasetimesmalldatetime10Y租賃日期Leasemodenvarchar10Y租賃方式Price1smallint4Y價格1Price2smallint4Y價格2Workdayssmallint2Y工作天數(shù)Weekendcountsmallint2Y周末天數(shù)Depositint4Y押金Daykmsmallint2Y超限時間數(shù)Outkmsmallint4Y超限費(fèi)用Oprice1smallint4Y日限時間超限費(fèi)用Oprice2smallint4Y日限公里超限費(fèi)用Returntimesmalldatetime10還車時間returnkmint4實(shí)際公里Othercostint4Y其他費(fèi)用Ratereal4Y享受折扣Paymentint4實(shí)際支付Totalint4費(fèi)用總額Statusnvarchar10Y狀態(tài)Createdatesmalldatetime10創(chuàng)建日期Usernamenvarchar20經(jīng)辦人realrtimesmalldatetime10Y實(shí)際還車時間第3章系統(tǒng)功能設(shè)計3.1登錄模塊設(shè)計登錄模塊是進(jìn)入系統(tǒng)后的第一個界面,為了提高系統(tǒng)的安全性,本系統(tǒng)設(shè)立了身份驗(yàn)證功能,以防非法人員進(jìn)入系統(tǒng)。登錄流程圖如圖3.1所示。輸入用戶名和密碼輸入用戶名和密碼判斷用戶是否存在判斷密碼是否對的登錄成功否否是是圖3.1登錄流程圖登錄模塊窗體如圖3.2所示,包含三個標(biāo)簽控件,一個框架,兩個文本框和兩個命令按鈕。圖3.2登陸界面一方面點(diǎn)擊工程菜單,選擇“添加窗體”,在新建的工程內(nèi)添加一個空窗體,在適當(dāng)?shù)奈恢卯嫵隹蚣埽缓笤诳蚣軆?nèi)添加兩個標(biāo)簽控件和兩個文本框,然后把另一個標(biāo)簽和兩個命令按鈕畫在下面,設(shè)立各個控件屬性,最后編寫源代碼。例如:將第二個命令按鈕的控制名設(shè)為“cmd_cancel”,caption屬性設(shè)為“取消”,字體設(shè)為“宋體”,enable和visible屬性均設(shè)為“True”,編寫按鈕單擊時間源代碼如下:PrivateSubCmd_Cancel_Click()EndEndSub3.2主程序界面設(shè)計用戶登錄成功后,即進(jìn)入系統(tǒng)主界面。主界面的外觀設(shè)計應(yīng)當(dāng)大方美觀,布局合格,方便用戶的下一步操作,其窗體布局如下,菜單欄內(nèi)設(shè)有五個子菜單欄,工具欄內(nèi)設(shè)有六個按鈕,分別連接常用的功能。用戶登錄成功后,即進(jìn)入系統(tǒng)主程序界面。主界面的窗體布局如下,菜單欄內(nèi)設(shè)有【基礎(chǔ)數(shù)據(jù)管理】、【客戶會員管理】【平常業(yè)務(wù)管理】【系統(tǒng)管理】四個子菜單,工具欄內(nèi)設(shè)有六個按鈕,分別為【車輛類型設(shè)立】【汽車銷售商管理】【保險公司管理】【汽車租賃】【汽車歸還】【會員信息】。主程序界面如圖3.3。圖3.3主程序界面點(diǎn)擊新建工程按鈕,在生成的窗體上單擊右鍵,在彈出的菜單欄上點(diǎn)擊“菜單編輯器”命令,打開菜單編輯器。設(shè)計好程序各級菜單。在窗體上添加“圖像列表控件”,用于保存工具欄按鈕所使用的圖像,在窗體上添加“工具欄控件”,將其與“圖像控制列表控件”相關(guān)聯(lián)。并加入代表耽擱按鈕的“按鈕對象”,最后編寫工具欄相應(yīng)的源代碼。工具欄單擊事件源代碼如下:PrivateSubToolbar1_ButtonClick(ByValButtonAsMSComctlLib.Button)SelectCaseButton.KeyCase"aa"LoadFrmTypeFrmType.ShowvbModalCase"bb"LoadFrmSalesFrmSales.ShowvbModalCase"cc"LoadFrmInsuranceFrmInsurance.ShowvbModalCase"dd"LoadFrmLeaseFrmLease.ShowvbModalCase"ee"LoadFrmReturnFrmReturn.ShowvbModalCase"gg"LoadFrmMembersFrmMembers.ShowvbModalEndSelectEndSub3.3基礎(chǔ)數(shù)據(jù)管理模塊的實(shí)現(xiàn)3.3.1車輛和保險類型管理窗體的設(shè)計該窗體上設(shè)有兩個單選按鈕,一個datalist控件,四個命令按鈕,其窗體如下:圖3.4車輛和保險類型設(shè)立界面一方面按設(shè)計添加窗體,安排好各控件的布局,設(shè)立其相應(yīng)屬性,例如:將左邊的“單選按鈕”名稱屬性設(shè)為“optsel”,caption屬性設(shè)為“汽車類型”,Indexs屬性設(shè)為“0”,字體屬性設(shè)為“宋體”,value值設(shè)為“True”,而命令按鈕設(shè)立同上,如對“添加”按鈕的設(shè)立,設(shè)立完畢后編寫源代碼。3.3.2汽車銷售商管理窗體的設(shè)計此窗體用于對車輛銷售商的信息如:銷售商名稱,聯(lián)系電話,傳真,地址,郵編,電子郵箱等操作,還可以根據(jù)用戶選擇的銷售商名稱查詢該廠商旗下汽車租賃情況。窗體設(shè)計如圖3.5。圖3.5汽車銷售商管理界面此窗體上設(shè)立了六和命令按鈕,一個Datagrid控件,一個標(biāo)簽控件和一個文本框。一方面按設(shè)計添加窗體,做好各控件的布局,設(shè)立相應(yīng)屬性,如:datagrid控件名稱屬性設(shè)立為“datagrid1”,dragmode屬性設(shè)立為“0”,allowaddnew屬性設(shè)為“False”,Allowdelete屬性設(shè)立為“False”,allowupdate屬性設(shè)為“False”。字體設(shè)立為“宋體”,Enable和Visible屬性均設(shè)為“True”。其添加命令按鈕單擊事件源代碼如下:PrivateSubCmd_Add_Click()FrmCompanyEdit.Modify=FalseFrmCompanyEdit.nTid=1FrmCompanyEdit.txtCompany=""FrmCompanyEdit.lblType="銷售商"FrmCompanyEdit.txtTelephone=""FrmCompanyEdit.txtFax=""FrmCompanyEdit.txtAddress=""FrmCompanyEdit.txtContact=""FrmCompanyEdit.txtComment=""FrmCompanyEdit.txtZipCode=""FrmCompanyEdit.txtEmail=""FrmCompanyEdit.Show1GridRefreshEndSub3.3.3保險公司管理窗體的設(shè)計此窗體用于對保險公司信息如:保險公司的公司名稱,聯(lián)系電話,傳真,地址,郵編,電子郵箱等備注的查詢,添加,修改和刪除。此外還可根據(jù)用戶選擇的保險公司名稱查詢投保語該保險公司的汽車的情況。設(shè)計窗體如圖3.6。圖3.6保險公司管理界面一方面按設(shè)計添加窗體,安排好各控件的布局,設(shè)立其相應(yīng)屬性,如:名稱屬性為“l(fā)abel1”,alignment屬性設(shè)立為“0”,文本框?qū)ζ浞绞綖椤白髮R”,Caption屬性設(shè)立為“保險公司名”,字體屬性設(shè)立為“宋體”。查看保險車輛按鈕的單擊事件源代碼如下:PrivateSubCmd_ViewCars_Click()FrmSaleCars.nType=2FrmSaleCars.sSaleName=Trim(Adodc1.Recordset.Fields(1))FrmSaleCars.nSaleId=Adodc1.Recordset.Fields(0)FrmSaleCars.txtSaleName=Trim(Adodc1.Recordset.Fields(1))FrmSaleCars.Caption="查看保險公司保險汽車"FrmSaleCars.Label1="保險公司名稱"FrmSaleCars.Show1EndSub3.3.4車輛管理窗體的設(shè)計本窗體用于提供對車輛信息的添加,修改和刪除功能,可解決的信息涉及車輛的基本信息如車牌號,狀態(tài),車輛類型,顏色,押金,日租金等。設(shè)計界面如圖3.7。圖3.7車輛管理界面3.4客戶會員管理模塊的實(shí)現(xiàn)3.4.1客戶信息管理窗體的設(shè)計客戶信息管理窗體用于對客戶信息如:編號、姓名、性別、年齡、駕駛證編號、駕齡等的查找、添加、修改、刪除等操作。并且提供將普通客戶加入會員的服務(wù)。本窗體上設(shè)立有六個命令按鈕,一個Adodc控件,一個Datagrid控件,一個標(biāo)簽控件和一個文本框。命令按鈕分別為“添加”“修改”“刪除”“查找”“加入會員”“退出”。窗體設(shè)計如圖3.8。圖3.8客戶信息管理界面點(diǎn)擊“工程”菜單,選擇“添加窗體”,在窗體上畫出所需控件,把這些控件移動至窗體內(nèi)適當(dāng)位置,并設(shè)立各個控件的屬性,最后編寫各個控件相應(yīng)事件過程。如,對于命令按鈕:“刪除”,當(dāng)放置好按鈕位置后,將其名稱屬性設(shè)立為“Cmd_del”,對于Caption屬性則設(shè)立為“刪除”,字體屬性設(shè)立為“宋體”,Enabled和Visible屬性設(shè)立為true。 進(jìn)行刪除操作時,一方面在列表框上顯示出來的客戶信息條目中將要刪除一條選中(假如不選擇,系統(tǒng)則默認(rèn)為選擇了第一條)做出選擇后,單擊“刪除”按鈕,顯示一個對話框,選中用戶是否確認(rèn)刪除,選“是”,則系統(tǒng)從數(shù)據(jù)庫中刪除該項(xiàng),并彈出一個信息框,告知用戶操作成功。 命令按鈕“刪除”單擊事件源代碼如下:PrivateSubCmd_Del_Click()IfAdodc1.Recordset.EOF=TrueThenMsgBox"請選擇記錄"ExitSubEndIfIfMsgBox("是否擬定要刪除",vbYesNo,"請確認(rèn)")=vbNoThenExitSubEndIfMyCustomer.Delete(Trim(Adodc1.Recordset.Fields(0)))MsgBox"成功",vbInformationGridRefreshEndSub3.4.2會員信息管理窗體設(shè)計會員信息管理窗體用于對會員信息如,編號,姓名,年齡駕駛證編號,駕齡,登記日期等的查找、修改及注銷功能。本窗體上設(shè)有四個命令按鈕,一個Datagrid控件,一個標(biāo)簽控件和一個文本框。窗體設(shè)計如圖3.9。圖3.9會員信息管理界面點(diǎn)擊“工程”菜單,選擇“添加窗體”,在新建工程內(nèi)添加一個空窗體,先設(shè)立窗體的屬性,名稱屬性設(shè)立為“Frmmembers”,StartUpPosition屬性設(shè)立為“2”,即窗體初次出現(xiàn)是在屏幕中心顯示,F(xiàn)ont屬性設(shè)立為“宋體”,Caption屬性設(shè)立為“會員管理”。接著對其它控件的屬性進(jìn)行設(shè)立。 命令按鈕“注銷會員”的功能是將用戶選定的會員條目從客戶信息表中刪除(假如不選擇,系統(tǒng)默認(rèn)為選擇了第一條)選擇后,單擊“注銷會員”按鈕,彈出對話框,詢問用戶“是否擬定要注銷會員資格”,選擇“是”,系統(tǒng)執(zhí)行注銷操作,并彈出一個信息框,顯示“注銷會員成功”,最后系統(tǒng)更新Datagrid控件中顯示的會員信息條目。命令按鈕“注銷會員”單擊事件策劃年供需源代碼如下:PrivateSubCmd_OffMember_Click()IfAdodc1.Recordset.EOF=TrueThenMsgBox"請選擇記錄"ExitSubEndIfIfMsgBox("是否擬定要注銷會員資格",vbYesNo,"請確認(rèn)")=vbNoThenExitSubEndIfMyCustomer.TypeId=0MyCustomer.UpdateToMember(Trim(Adodc1.Recordset.Fields(0)))MsgBox"注銷會員成功",vbInformationGridRefreshEndSub3.4.3會員類型管理窗體設(shè)計本窗體用于對會員類型的管理,即對會員等級進(jìn)行分類,如,vip會員,一般會員,超級會員等,不同等級的用戶享受的租賃價格的折扣不同。通過“添加”功能可登記新的會員用戶,及其享受的折扣,通過“修改”功能可修改已有的會員類型名稱及折扣?!皠h除”功能與之前描述的“注銷會員”操作類似,在此不再贅述。 本窗體上設(shè)立有四個命令按鈕,一個Datagrid控件,窗體設(shè)計如圖3.10。圖3.10會員類型管理界面點(diǎn)擊“工程”菜單,選擇“添加窗體”,設(shè)立各個控件在窗體中的位置,然后設(shè)立窗體及各控件屬性,最后編寫窗體及各個空間源代碼。 當(dāng)窗體載入是,觸發(fā)form_load()事件,即窗體載入事件。該載入事件的源代碼: PrivateSubForm_load() GridRefresh EndSub 其中,GridRefresh為一個函數(shù)調(diào)用語句,是在窗體模塊內(nèi)部定義的一個私有過程,在過程中設(shè)立了Adodc控件的兩個屬性,分別為Connectionstring屬性和Recordsource屬性。該過程的作用為在DataGrid控件上向用戶顯示會員類型的即存信息。3.5平常業(yè)務(wù)管理模塊的實(shí)現(xiàn)3.5.1汽車租賃管理窗體設(shè)計汽車租賃模塊的實(shí)現(xiàn)是本系統(tǒng)的關(guān)鍵,當(dāng)客戶提出租車規(guī)定期,租賃公司通過系統(tǒng)的這一模塊向數(shù)據(jù)庫的Lease表中添加新的租賃記錄。在車輛處在特定的狀態(tài)時,可執(zhí)行對記錄信息的修改、刪除、審核、續(xù)租等操作。車輛的狀態(tài)由Lease表中狀態(tài)字段指定。本窗體上設(shè)立有一個DataGrid控件,一個組合框,一個標(biāo)簽控件,八個命令按鈕控件,設(shè)計窗體如圖3.11。圖3.11汽車租賃管理界面在“工程”中添加一個窗體后,按上述布局設(shè)立空間。然后進(jìn)行各控件的屬性設(shè)立。當(dāng)執(zhí)行“添加”操作并成功添加一條新的租賃信息后,將在DataGrid控件中顯示出這條新的記錄,其中“狀態(tài)”欄內(nèi)為“出租”,此時,可對這一條記錄執(zhí)行“修改”、“刪除”操作,添加車輛出租信息后,擬定所添數(shù)據(jù)無誤,則應(yīng)執(zhí)行“租賃審核”命令,“審核”即為擬定。當(dāng)單擊“租賃審核”按鈕后,將彈出一個對話框,詢問用戶是否確執(zhí)行租賃審核,選擇“是”,車輛“狀態(tài)”則變?yōu)椤白赓U審核”,即用戶將不能對該記錄執(zhí)行“修改”、“刪除”命令,但可執(zhí)行“續(xù)租”命令。執(zhí)行“續(xù)租”后,車輛狀態(tài)變?yōu)椤袄m(xù)租”。擬定續(xù)租信息無誤,執(zhí)行“續(xù)租審核”命令。 當(dāng)單擊“添加”命令按鈕后,將觸發(fā)“添加”命令按鈕的單擊事件。此時將打開“編輯車輛出租信息”窗體,如圖3.12。圖3.12添加或修改租賃信息的界面窗體上設(shè)有三個Datagrid控件和三個ADODC控件,系統(tǒng)將在程序執(zhí)行中為ADODC控件設(shè)立connectionstring屬性和recordsource屬性,為datagrid控件設(shè)立datasource屬性,以達(dá)成將datagrid控件與數(shù)據(jù)庫相連,在datagrid控件中顯示相關(guān)信息的目的處在“出租審核”的協(xié)議可以打印,單擊“打印協(xié)議”按鈕,就能打印出所選的租賃協(xié)議,結(jié)果如圖3.13。圖3.13租賃協(xié)議的打印3.5.2汽車歸還管理窗體設(shè)計本模塊用于對車輛歸還業(yè)務(wù)的管理,通過本模塊可對已租車輛實(shí)現(xiàn)歸還,信息修改,結(jié)算審核和查詢操作,窗體設(shè)計如圖3.14。圖3.14汽車租賃歸還管理界面當(dāng)辦理歸還業(yè)務(wù)時,打開此窗體,單擊命令按鈕“歸還”,打開“車輛歸還結(jié)算審核”,如圖3.15。圖3.15汽車歸還結(jié)算界面按辦理租賃業(yè)務(wù)時所創(chuàng)建的協(xié)議編號,查找相應(yīng)的車輛信息,即可進(jìn)行歸還操作。當(dāng)解決完歸還信息后,返回“車輛租賃歸還”窗體,在datagrid控件中顯示出剛解決完的歸還業(yè)務(wù)信息,車輛狀態(tài)為“歸還”,只有對“歸還”狀態(tài)的信息,才干執(zhí)行“結(jié)算審核”操作。單擊“結(jié)算審核”命令按鈕,將彈出一個對話框,詢問用戶是否確認(rèn)結(jié)算審核信息,選擇“是”,將最后完畢車輛的歸還業(yè)務(wù)的解決,此時車輛狀態(tài)為“結(jié)算審核”。當(dāng)添加完窗體上的各個控件后,進(jìn)行窗體布局,屬性設(shè)立。最后完畢代碼編寫。如將窗體的名稱屬性設(shè)為'Frmreturn",caption屬性設(shè)為“車輛租賃歸還管理”,字體設(shè)立為“宋體”,Startupposit屬性設(shè)為"2",即窗體初次出現(xiàn)時位置在屏幕中心,,然后編寫代碼如下:PrivateSubForm_Load()GridRefreshcob_Status.AddItem"歸還",0cob_Status.AddItem"歸還審核",1Cmd_RntCheck.Enabled=FalseEndSub結(jié)論通過三個月的摸索學(xué)習(xí)。終于完畢了這個“汽車租賃管理系統(tǒng)”。通過對開發(fā)過程的研究,我對對數(shù)據(jù)庫及visualBasic6.0的使用方法有了更深的理解。讓我深刻體會到一個工程的開發(fā),編程過程并不那么簡樸,從軟件的需求分析到系統(tǒng)設(shè)計再到工程代碼的實(shí)現(xiàn),讓我體會到要成為純熟掌握編程語言的軟件開發(fā)者是多么不容易,一個實(shí)用的高質(zhì)量的系統(tǒng)軟件,要想充足滿足客戶需求,必須扎扎實(shí)實(shí)的做好需求分析,為后續(xù)的系統(tǒng)設(shè)計和實(shí)現(xiàn)打下良好的基礎(chǔ)。 本系統(tǒng)界面簡潔,設(shè)計合理,可以實(shí)現(xiàn)預(yù)計的功能,但系統(tǒng)的容錯性還不太完善。這也暴露出我的編程能力尚有待提高。此后我會繼續(xù)努力學(xué)習(xí),不斷充實(shí)自己,提高自己的能力??偟膩碚f,本系統(tǒng)的設(shè)計基本符合用戶規(guī)定,可認(rèn)為用戶使用。由于本人水平有限,在設(shè)計思緒和技巧方法上也許比較愚鈍,在開發(fā)語言的掌握上也許相對膚淺,所以,反映到系統(tǒng)中,難免存在許多的局限性之處,殷切希望各位老師批評、指正。致謝一方面我要衷心的感謝我的指導(dǎo)教師黃迎春老師,由于這篇論文是在他的悉心指導(dǎo)下才完畢的。在設(shè)計的起初階段,我總被一些問題所難倒,不知如何切入重點(diǎn),從而讓我對畢業(yè)設(shè)計失去了信心與耐性,是黃老師在百忙之中抽出休息時間對我進(jìn)行了一番思想上的教育并耐心的一步一步的指導(dǎo)我的畢業(yè)設(shè)計。在老師的細(xì)心指導(dǎo)下,我重新對設(shè)計有了理性的思考,這不僅解決了我心中的膽怯,并且也解決了我在畢業(yè)設(shè)計中所碰到的嚴(yán)謹(jǐn)?shù)膯栴},并且使我更加懂得了如何去分析和解決問題,并從中體會到了真正成功的喜悅。黃老師在學(xué)術(shù)上給予我精心的指導(dǎo),可以說他一絲不茍的敬業(yè)精神、淵博的學(xué)術(shù)知識和嚴(yán)謹(jǐn)求實(shí)的治學(xué)態(tài)度使我受益匪淺,讓我也把更多的精力放在了我在大學(xué)校原里最后的一次考試——畢業(yè)設(shè)計。通過這兩個月的磨練,使我懂得了要想成為一名優(yōu)秀的編程人員,不僅要有良好的基礎(chǔ)知識,踏實(shí)地基本功,更重要的是要有不怕困難,戰(zhàn)勝困難的決心和勇氣。因此,每每碰到問題后我都會自己潛心研究,查找各種資料,借助網(wǎng)絡(luò)和圖書兩大信息力量,加上我平時的所學(xué),盡量解決問題度過難關(guān)。另一方面還要感謝給予我?guī)椭?、支持和鼓勵的同學(xué)特別是同組的同學(xué),是他們給了我很大的幫助,讓我可以順利的完畢本次畢業(yè)設(shè)計;是他們給了我大學(xué)最后時光的快樂,讓我懂得學(xué)習(xí)的真諦。最后,我要向?qū)W習(xí)中默默支持我的家人和朋友,及所有關(guān)心幫助過我的師長和同學(xué)們表達(dá)真摯的感謝,由于你們的存在,使得我在走進(jìn)大學(xué)后努力的學(xué)習(xí),快速的增長知識,現(xiàn)在即將走出大學(xué)校園,我會加倍的努力,使自己更上一層樓,做個對社會有用的人!參考文獻(xiàn)[1]羅朝盛.VisualBasic6.0程序設(shè)計教程.第三版.人民郵電出版社,2023.2[2]劉志嫵.基于VB和SQL的數(shù)據(jù)庫編程技術(shù),第一版,清華大學(xué)出版社,2023.4.[3]劉玉山.VB數(shù)據(jù)庫項(xiàng)目設(shè)計模塊化教程,第一版,機(jī)械工業(yè)出版社,2023.8.[4]楊富國,王健.VisualBasic程序開發(fā)案例解析,第一版,北京交通大學(xué)出版社,2023.2[5]李勇帆.VisualBasic6.0程序設(shè)計與應(yīng)用,人民郵電出版社,2023.2[6]沈大林.中文VisualBasic6.0實(shí)用教程:結(jié)構(gòu)化程序設(shè)計.第一版,人民郵電出版社,2023.6[7]陳承歡.ADO.NET數(shù)據(jù)庫訪問技術(shù)案例教程,第一版.人民郵電出版,2023.4[8]楊芙清.全國計算機(jī)等級考試二級教程.第1版.高等教育出版社,2023,10[9]童愛紅,候太平.VisualBasic數(shù)據(jù)庫編程.第1版.清華大學(xué)出版社,北京交通大學(xué)出版社,2023,6:[10]劉文濤,VisualBasic+Access數(shù)據(jù)庫開發(fā)與實(shí)例,第一版,清華大學(xué)出版社,2023.7附錄程序代碼PublicSubConnectstring()Conn="provider=Microsoft.Jet.Oledb.4.0;DataSource="&_App.pATH+"\database\CarMIS.mdb"&";PersistSecurityInfo=False"EndSubPrivateSubConnect()IfIsConnect=TureThenExitSubEndIfSetcnn=NewADODB.Connectioncnn.ConnectionString=Conncnn.OpenIfcnn.State<>adStateOpenThenMsgBox"數(shù)據(jù)庫連接失敗"EndEndIfIsConnect=TrueEndSubPrivateSubDisconnect()DimRcAsLongIfIsConnect=FalseThenExitSubEndIfcnn.CloseSetcnn=NothingIsConnect=FalseEndSubPublicSubDB_Connect()Connect_Num=Connect_Num+1ConnectEndSubPublicSubDB_Disconnect()IfConnect_Num>=CONNECT_LOOP_MAXThenConnect_Num=0DisconnectEndIfEndSubPublicSubDBapi_Disconnect()Connect_Num=0DisconnectEndSubPublicSubSQLExt(ByValTmpSQLstmtAsString)DimcmdAsNewADODB.CommandDB_ConnectSetcmd.ActiveConnection=cnncmd.CommandText=TmpSQLstmtcmd.ExecuteSetcmd=NothingDB_DisconnectEndSubPublicFunctionQueryExt(ByValTmpSQLstmtAsSrting)AsADODB.RecordsetDimrstAsNewADODB.RecordsetDB_ConnectSetrst.ActiveConnection=cnnrst.CuisorTyepe=aDOpenDynamicrst.LockType=adLockOptisticrst.OpenTmpSQLstmtSetQueryExt=rstEndFunctionPublicSubInit()UserName=""UserPwd=""EndSubPublicSubDelete(ByValTmpUserAsString)SqlStmt="DELETEFROMUsersWHEREUserName='"_+Trim(TmpUser)+"'"SQLExt(SqlStmt)EndSubPublicFunctionGetInfo(ByValTmpUserAsString)AsBooleanUserName=TampUserDimrsAsNewADODB.RecordsetSqlStmt="SELECT*FROMUsersWHEREUserName='"_+Trim(TmpUser)+"""Setrs=QueryExt(SqlStmt)Ifrs.EOFThenGetInfo=FalseExitFuntionElseIfIsNull(rs.Fields(1))ThenUserPwd=""ElseUserPwd=Trim(rs.Fields(1))EndIfEndIfGetInfo=TrueEndFunctionPublicFunctionIn_DB(ByValTmpUserAdString)AsBooleanDimrsAsNewADODB.RecordsetSqlStmt="SELECT*FROMUsersWHEREUserName='"_+Trim(TmpUser)+"""Setrs=QueryExt(SqlStmt)IfNotrs.EOFThenIn_DB=TrueElseIn_db=FalseEndIfEndFunctionPublicSubInset()SqlStmt="INSERTINTOUsersValues('"_+Trim(UserName)+"','"+Trim(UserPwd)+"')"SQLExt(SqlStmt)EndSubPublicSubUpdate(ByValTmpUserAsString)SqlStmt="UpdateUsersSetUserName='"+Trim(UserName)_+'"',UserPwd='"+Trim(UserPwd)_+"'WHEREUserName='"+Trim(TmpUser)+"'"SQLExt(SqlStmt)EndSubPublicSubInit()TypeName=""TypeId=1Description=""EndSubPublicSubDelete(ByValTmpIdAsLong)SqlStmt="DELETEFROMTypesWHEREId="+Trim(TmpId)SQLExt(SqlStmt)EndSubPublicFunctionGetInfo(ByValTmpIdAsLong)AsBooleanDimrsAsNewADODB.RecordsetSqlStmt="SELECT*FROMTypesWHEREId="+Trim(TmpId)Setrs=QueryExt(SqlStmt)Ifrs.EOFThenInitGetInfo=FalseElseIfIsNull(rs.Fields(0))ThenId=0ElseId=rs.Fields(0)EndIfIfIsNull(rs.Fields(1))ThenTypeName=""ElseTypeName=rs.Fields(1)EndIfIfIsNull(rs.Fields(2))ThenTypeId=1ElseTypeId=rs.Fields(2)EndIfIfIsNull(rs.Fields(3))ThenDescription=""ElseDescription=rs.Fields(3)EndIfGetInfo=TrueEndIfEndFunctionPublicFunctionIn_DB(ByValTmpTypeNameAsString,ByValTmpTidAs_Integer)AsBooleanDimrsAsNewADODB.RecordsetSqlStmt="SELECT*FROMTypesWHERETypeName'"_+Trim(TmpTypeName)+"'ANDTypeId="+Trim(Str(TmpTid))Setrs=QueryExt(SqlStmt)Ifrs.EOF=TrueThenIn_DB=FaleseElseIn_DB=TrueEndIfEndFunctionPublicSubGetInfoByTypeId(ByValTmpTypeIdAsInteger)DimrsAsNewADODB.RecordsetDimiAsLongEraseArr_TypeReDimArr_Type(0)EraseArr_IdReDimArr__Id(0)SqlStmt="SELECT*FROMTypesWHERETypeId="+Trim(TmpTypeId)Setrs=QueryExt(SqlStmt)i=0WhileNotrs.EOFReDimPreserveArr_Id(i+1)ReDimPreserveArr_Type(i+1)Arr_Id(i)=rs.Fields(0)Arr_TYPE(i)=RS.fIELDS(1)I=I+1rs.MoveNextWendEndSubPublicFunctionGetTypeNames(ByValTmpTypeIdsAsString)AsStringDimrsAsNewADODB.RecordsetDimiAsIntegeri=0GetTypeNames=""Sqlstmt="SELECT*FROMTypesWHEREIdIN("+Trim(TmpTypeIds)+")"Setrs=QueryExt(SqlStmt)WhlieNotrs.EOFIfi=0ThenGetTypeNames=rs.Fields(1)ElseGetTypeNames=GetTypeNames+","+rs.Fields(1)EndIfi=i+1rs.MoveNextWendEndFunctionPublicSubInsert()SqlStmt="INSERTINTOUsersValues('"_+Trim(UsersName)+"','"+Trim(UserPwd)+"')"SQLExt(SqlStmt)EndSubPublicSubUpdate(ByValTmpUserAsString)SqlStmt="UpdateUsersSetUserName='"+Trim(UserName)"_+"',UserPwd='"+Trim(UserPwd)_+"'WHEREUserName='"+Trim(TmpUser)+"'"SQLExt(SqlStmt)EndSubPublicSubInit()Company=""Telephone=""ZipCode=""Fax=""Address=""Email=""Contact=""TypeId=1Comment=""EndSubPublicSubDelete(ByValTmpIdAsLong)SqlStmt="DELETEFROMCompanyWHEREId="+Trim(TmpId)SQLExt(SqlStmt)EndSubPublicFunctionGetInfo(ByValTmpIdAsInteger)AsBooleanDimrsAsNewADODB.RecordsetSqlStmt="SELECT*FROMCompanyWHEREId="+Trim(TmpId)Setrs=QueryExt(SqlStmt)Ifrs.EOFThenInitGetInfo=FaleseElseIfIsNull(rs.Fields(0))ThenId=0ElseId=rs.Fields(0)EndIfIfIsNull(rs.Fields(1))ThenCompany=""ElseCompany=rs.Fields(1)EndIfIfIsNull(rs.Fields(2))ThenTelephone=""ElseTelephone=rs.Fields(2)EndIfIfIsNull(rs.Fields(3))ThenZipCode=""ElseZipCode=rs.Fields(3)EndIfIfIsNull(rs.Fields(4))ThenFax=""ElseFax=rs.Fields(4)EndIfIfIsNull(rs.Fields(5))ThenAddress=""ElseAddress=rs.Fields(5)EndIfIfIsNull(rs.Fields(6))ThenEmail=""ElseEmail=rs.Fields(6)EndIfIfIsNull(rs.Fields(7))ThenContact=""Contact=rs.Fields(7)EndIfIfIsNull(rs.Fields(8))ThenTypeId=1ElseTypeId=rs.Fields(8)EndIfIfIsNull(rs.Fields(9))ThenComment=""ElseComment=rs.Fields(9)EndIfGetInfo=TrueEndIfEndFunctionPublicFunctionIn_DB(ByValTmpTidAsInteger)AsBooleanDimrsAsNewADODB.RecordsetSqlStmt="SELECT*FROMCompanyWHERETypeId="+Trim(Str(TmpTid))Setrs=QueryExt(SqlStmt)Ifrs.EOF=TrueThenIn_DB=FlaseElseIn_DB=TrueEndIfEndFunctionPublicSubInsert()SqlStmt="INSERTINTOCompany(Company,Telephone,Fax,ZipCode,Address,"_&_"Email,Contact,TypeId,Comment)VALUES('"+Trim(Company)+_Trim(Telephone)+"','"+Trim(Fax)+"','"+Trim(ZipCode)+_"','"&_Trim(Address)+"','"+Trim(Email)+'','"+Trim(Contact)+_"','"&_Trim(TypeId)+",'"+Trim(Comment)+"')"SQLExt(SqlStmt)EndSubPublicSubUpdate(ByValTmpIdAsLong)SqlStmt="UPDATECompanySETCompany='"+Trim(Company)&_"',Telephone='"+Trim(Telephone)+"',Fax='"+Trim(Fax)+"',"&_"ZipCode='"+Trim(ZipCode)+"',Address='"+Trim(Address)+_"',Email='"&Trim(Email)+"',Contact='"+Trim(Contact)+"',Comment='"&_Trim(Comment)+"'WhereId="+Trim(Str(TmpId))SQLExt(SqlStmt)EndSubPublicSubUpdateToMember(ByValTmpIdAsString)SqlStmt="UpdateCustomerSetFlag=1,"_+"TypeId="+Trim(TypeId)_+"WHEREId='"+Trim(TmpId)+"'"SQLExt(SqlStmt)EndSubPublicSubUpdateStatus(ByValTmpCNoAsString)SqlStmt="UpdateLeaseSetStatus='"+Trim(Status)+"'WHERE_ContractNo='"+Trim(TmpCNo)+"'"SQLExt(SqlStmt)EndSubPublicSubUpdateAddStatus(ByValTmpCNoAsString)SqlStmt="UpdateLeaseSetStatus='‘續(xù)租’,ReturnTime='"+_Trim(ReturnTime)+"',"_+"WorkDays="+Trim(WorkDays)+",WeekEndCount="+_Trim(WeekEndCount)+","_+"Total="+Trim(Total)+",UserNme='"+Trim(UseName)+"'"_+"WHEREContractNo='"+Trim(TmpCNo)+"'"SQLExt(SqlStmt)EndSubPublicSubUpdate(ByValTmpIdAsLong)SqlStmt="UPDATECompanySETCompany'"+Trim(Company)&_"',Telephone='"+Trim(Telephone)+"',Fax='"+Trim(Fax)+_"',"&_"ZipCode='"+Trim(ZioCode)+"',Address='"+Trim(Address)+_"',Email='"&_Trim(Email)+"',Contact='"+Trim(Contact)+"',Comment='"&_Trim(Comment)+"'WhereId="+Trim(Str(TmpId))SQLExt(SqlStmt)EndSubPrivateSubGridRefresh()IfTrim(cob_Status.Text)=""OrTrim(cob_Status.Text)="所有"ThenSchCnd=""ElseSchCnd="ANDStatus='"+Trim(cob_Status.Text)+"'"EndIfAdodcl.ConnectionString=ConnAdodcl.RecorSource="SELECTContractNoAS協(xié)議編號,CarNoAS車牌號,“_+"CustIdAS客戶號,LeaseTimeAS租賃時間,LeaseModeAS租賃模式,"——+"ReturnTimeAS歸還時間,StatusAS狀態(tài),"+IIF([Status]='日‘,Pricel*WorkDays+Price2*WeekEndCount,Pricel*WorkDays)AS租車費(fèi)用,"_+"OtherCostAS其他費(fèi)用,PaymentAS實(shí)際支付,DepositAS押金,TotalAS總額"_+"FROMLeaseWHEREStatusNOTIN('歸還','結(jié)算審核')"+SchCnd_+"ORDERBYReturnTimeDESC,LeaseTimeDESC"Adodcl.RefreshSetDataGridl.DataSource=Adodc1DataGrid1.Columns(0).Width=1000DataGrid1.Columns(1).Width=1000DataGrid1.Columns(2).Width=1000DataGrid1.Columns(3).Width=1800DataGrid1.Columns(4).Width=1000DataGrid1.Columns(5).Width=1800DataGrid1.Columns(6).Width=1000DataGrid1.Columns(7).Width=1000DataGrid1.Colu

溫馨提示

  • 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論