(精品)畢業(yè)精品房產中介管理系統(tǒng)精品(2013年優(yōu)秀畢業(yè)設計)_第1頁
(精品)畢業(yè)精品房產中介管理系統(tǒng)精品(2013年優(yōu)秀畢業(yè)設計)_第2頁
(精品)畢業(yè)精品房產中介管理系統(tǒng)精品(2013年優(yōu)秀畢業(yè)設計)_第3頁
(精品)畢業(yè)精品房產中介管理系統(tǒng)精品(2013年優(yōu)秀畢業(yè)設計)_第4頁
(精品)畢業(yè)精品房產中介管理系統(tǒng)精品(2013年優(yōu)秀畢業(yè)設計)_第5頁
已閱讀5頁,還剩47頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

房產中介管理系統(tǒng)摘 要房產中介管理系統(tǒng)是為房屋中介機構管理房屋出租、出售信息資料而設計的信息管理系統(tǒng),包含有后臺數(shù)據(jù)庫和前臺應用程序系統(tǒng)兩大部分,后臺數(shù)據(jù)庫要求數(shù)據(jù)的一致性和完整性、安全性,用以儲存單位工程文檔資料及相關信息,前臺應用程序系統(tǒng)要求應用程序功能完備、易于使用和界面友好等。經(jīng)過全面分析,確定數(shù)據(jù)庫采用ACCESS2000,開發(fā)工具為Delphi 7.0,利用Microsoft公司的ADO(ActiveX Data Object,ActiveX數(shù)據(jù)對象)訪問和操作數(shù)據(jù)庫服務器中的數(shù)據(jù)。關鍵詞: 數(shù)據(jù)庫 面向對象開發(fā)軟件包 數(shù)據(jù)對象Abstract House Agency Management System is to design for house agency enterprise or business. It have two include the database of backstage supporter and customer application system, the database of backstage supporter ask safety and integrity and the consistency of data to store unit project document information and related information, customer end ask application program function complete, easily to use and interface friendly etc. Via overall analysis, determine to use database adopt ACCESS 2000, development tool is Delphi 7.0, ADO visit and operand according to the data in server. Keywords: database System Delphi ADO目 錄摘 要1Abstract21前言及開發(fā)工具、開發(fā)技術簡介31.1系統(tǒng)背景簡介31.2 Delphi7.0編程軟件介紹51.3 數(shù)據(jù)庫技術概述71.4 ADO編程技術概述72需求分析92.1功能需求92.2性能需求 103總體設計113.1 系統(tǒng)程次模塊圖 113.2 系統(tǒng)流程圖3.3 模塊設計3.3 數(shù)據(jù)庫設計4詳細設計4.1系統(tǒng)項目文件4.2閃現(xiàn)窗體設計4.3登記登錄管理模塊設計4.4主窗體管理模塊設計4.5 房屋出租登記模塊設計4.6房屋出租查詢模塊設計4.7房屋資料管理模塊設計4.8本軟件所用控件的安裝和使用方法4.9遇到的問題及解決方法5系統(tǒng)性能測試6總結7致謝與參考文獻53一.前言及開發(fā)工具、開發(fā)技術簡介1.1 系統(tǒng)背景簡介房產中介數(shù)據(jù)庫管理系統(tǒng)是一個房屋中介機構不可缺少的部分,能夠為操作人員和用戶提供充足的信息和快速查詢手段。但一直以來人們使用傳統(tǒng)人工的方式管理房屋出租、出售等房屋數(shù)據(jù),這種管理存在著許多缺點,如:效率低、保密性差,時間一長,將產生大量的文件和數(shù)據(jù),對于查找、更新和維護帶來了不少的困難。隨著科學技術的不斷提高,計算機科學日漸成熟,使用計算機對工程文檔資料信息進行管理,具有檢索迅速、查找方便、可靠性高、存儲量大、保密性好、壽命長、成本低等。這些優(yōu)點能夠極大地提高工程文檔資料管理的效率,也是企事業(yè)走向科學化、規(guī)范化管理必由之路。房產中介管理系統(tǒng)對房屋出租、出售等資料信息的存儲采用了動態(tài)的創(chuàng)建,先建立系統(tǒng)應用原型,然后對初始原型系統(tǒng)進行需求迭代,不斷修正和改進,直到形成用戶滿意的可行系統(tǒng)。房產中介管理系統(tǒng)的功能有:方便地操作數(shù)據(jù)庫,包括增加數(shù)據(jù)、刪除數(shù)據(jù)、修改數(shù)據(jù)等;提供兩種不同的打印模式,可以隨時打印專業(yè)的報表;提供完善的查詢方法,可以對數(shù)據(jù)庫的所有內容進行查詢,還可以進行組合查詢;可以隨意修改數(shù)據(jù)的內容;可以將登錄用戶分成三個層次:超級用戶、管理員、普通客戶。超級用戶擁有操作本軟件的所有權利,管理員擁有除“用戶管理”外操作本軟件的所有權利,客戶只擁有數(shù)據(jù)瀏覽等操作本軟件的部分權利;可以任意修改登錄密碼,保證數(shù)據(jù)庫的安全。因此,開發(fā)這樣的管理軟件成為很有必要的事情。1.2 Delphi7.0編程軟件簡介Delphi是著名的Borland(現(xiàn)在已和Inprise合并)公司開發(fā)的可視化軟件開發(fā)工具?!罢嬲某绦騿T用c,聰明的程序員用Delphi”,這句話是對Delphi最經(jīng)典、最實在的描述。Delphi被稱為第四代編程語言,它具有簡單、高效、功能強大的特點。和VC相比,Delphi更簡單、更易于掌握,而在功能上卻絲毫不遜色;和VB相比,Delphi的功能更強大、更實用。可以說Delphi同時兼?zhèn)淞薞C功能強大和VB簡單易學的特點。它一直是程序員至愛的編程工具。Delphi具有以下的特性:基于窗體和面向對象的方法,高速的編譯器,強大的數(shù)據(jù)庫支持,與Windows編程緊密結合,強大而成熟的組件技術。但最重要的還是Object Pascal語言,它才是一切的根本。Delphi提供了各種開發(fā)工具,包括集成環(huán)境、圖像編輯(Image Editor),以及各種開發(fā)數(shù)據(jù)庫的應用程序,如Desktop Database Expert等。除此之外,還允許用戶掛接其它的應用程序開發(fā)工具,如Borland公司的資源編輯器(Recourses Workshop)。在Delphi眾多的優(yōu)勢當中,它在數(shù)據(jù)庫方面的特長顯得尤為突出:適應于多種數(shù)據(jù)庫結構,從客戶機服務機模式到多層數(shù)據(jù)結構模式;高效率的數(shù)據(jù)庫管理系統(tǒng)和新一代更先進的數(shù)據(jù)庫引擎;最新的數(shù)據(jù)分析手段和提供大量的企業(yè)組件。Delphi發(fā)展至今,從Delphi、Delphi到現(xiàn)在的Delphi7,不斷添加和改進各種特性,功能越來越強大。Delphi7添加了對IDE(集成開發(fā)環(huán)境)的很多改進新特性,擴展了數(shù)據(jù)庫支持(ADO和InterBase數(shù)據(jù)庫),帶有Internet支持的MIDAS改進版,Team Souse版本控制工具,轉換功能,框架概念以及很多的新組件與新特性。Delphi7.0軟件開發(fā)工具是Borland公司推出的一個完全導向的可視化系統(tǒng)開發(fā)環(huán)境的工具。它具有功能強大、運行速度快、易于學習和使用以及開發(fā)迅速等特點,所以一經(jīng)推出就受到廣大用戶的喜歡。Delphi結合了可視化技術、面向對象技術、數(shù)據(jù)庫技術以及網(wǎng)絡技術等多種先進的軟件編程技術和思想,并使用了世界上最快的編譯器,使其成為創(chuàng)建功能豐富、界面友好的Windows應用軟件的工具之一。Delphi7.0版本功能更為強大,不但繼承了前面所有版本的優(yōu)良特性,而且糾正了一些錯誤,它對Web服務、數(shù)據(jù)庫的支持更加完善。Delphi7.0具有強大的數(shù)據(jù)庫應用程序開發(fā)功能,它能適應各種大型數(shù)據(jù)庫,如Oracle、Sybase、SQL等,Delphi7.0數(shù)據(jù)庫應用程序基于Borland強大的數(shù)據(jù)庫引擎( BDE)和豐富的數(shù)據(jù)庫組件,利用Delphi7.0開發(fā)數(shù)據(jù)庫應用程序,它會使用戶得到意想不到的收獲。1.3 數(shù)據(jù)庫技術概述產生于本世紀60年代末70年代初的數(shù)據(jù)庫技術對于每一個人可能都不陌生,在現(xiàn)代社會它的應用范圍越來越廣,在各個領域都可以看到數(shù)據(jù)庫技術的應用。它的出現(xiàn)使得計算機應用進了新的時期,社會的每一領域都與計算機發(fā)生了聯(lián)系。數(shù)據(jù)庫技術聚集了數(shù)據(jù)處理最精華的思想,是管理信息最先進的工具。通常有兩種方法保存數(shù)據(jù)庫。第一種是將整個數(shù)據(jù)庫作為一個單獨文件保存,如Access數(shù)據(jù)庫。第二種方法是將數(shù)據(jù)庫中每個數(shù)據(jù)表、索引以及其他一些數(shù)據(jù)庫元素分別保存在各自的文件中。Delphi7.0對這兩種方法都支持。 1.4 ADO編程技術概述Microsoft公司的ADO(ActiveX Data Object,ActiveX數(shù)據(jù)對象)是微軟提出的新標準,它使得客戶端應用程序能夠通過任何OLEDB提供者來訪問和操作數(shù)據(jù)庫服務器中的數(shù)據(jù),而不必進行ODBC配置。ADO有兩個主要優(yōu)點:其一是易于使用、速度快、內存支出少。其二是“遠程數(shù)據(jù)訪問”,能夠通過一個來回的傳輸將數(shù)據(jù)從服務器移動到客戶端應用程序或Web中,然后在客戶端對數(shù)據(jù)進行操作,最后將更新數(shù)據(jù)返回服務器。二.需求分析2.1功能需求對于本系統(tǒng),我們需要實現(xiàn)以下一些基本功能:(1)登錄管理: 為了軟件和數(shù)據(jù)庫的安全,驗證登錄人員的不同身份,防止非法用戶入侵系統(tǒng)。將登錄用戶分成三個層次:超級用戶、管理員、普通客戶。超級用戶擁有操作本軟件的所有權利,管理員擁有除“用戶管理”外操作本軟件的所有權利,客戶只擁有數(shù)據(jù)瀏覽等操作本軟件的部分權利。(2)閃現(xiàn)窗體: 在登錄窗體之前出現(xiàn),主要顯示以下信息:一是顯示本系統(tǒng)的題目即:“房產中介管理系統(tǒng)”;二是顯示作者即本人;三是顯示一行信息,即“正在加載中”。(3)主界面窗體: 本窗體的功能很簡單,主要是為進入本系統(tǒng)其它所有的功能窗體提供一個操作方便、界面美觀的基礎平臺。(4)房屋出租登記窗體: 功能是對房屋出租信息進行登記,主要是進行添加出租信息的登記操作。(5)房屋出租信息查詢窗體: 功能主要是可以對所有的房屋出租的信息進行查詢,可以是簡單的通過按“收件號”進行查詢,也可以通過“高級查詢”按鈕進入高級查詢頁面,通過多個字段進行高級查詢,從而為用戶提供快速、準確的查詢服務。(6)房屋出售登記窗體: 功能是對房屋出售信息進行登記,主要是進行添加出售信息的登記操作。(7)房屋出售信息查詢窗體: 功能主要是可以對所有的房屋出售的信息進行查詢,可以是簡單的通過按“收件號”進行查詢,也可以通過“高級查詢”按鈕進入高級查詢頁面,通過多個字段進行高級查詢。(8)報表打印功能: 本功能是附屬在房屋出租查詢窗體和房屋出售查詢窗體里的,可以將查詢得出的任何表格數(shù)據(jù)生成報表進行打印。(9)房屋資料登記窗體: 功能主是要對房屋信息進行登記,包括數(shù)據(jù)的添加、刪除、修改、查詢等操作。同時可以對數(shù)據(jù)表中的房屋資料進行統(tǒng)計,統(tǒng)計出未出租、已出租、未出售、已出售的房屋數(shù)量以及所有房屋的總數(shù)量。(10)客戶資料登記窗體:主要功能是對客戶資料進行登記,包括對客戶資料數(shù)據(jù)的添加、刪除、修改等操作。同時可以對數(shù)據(jù)表中的房屋資料進行查詢,主要是提供按客戶的姓名進行查詢的功能。(11)系統(tǒng)維護窗體:主要功能是對操作數(shù)據(jù)庫的管理人員進行各種資料的維護。如超級用戶登錄后可以增加管理員帳戶、增加客人帳戶、修改自身密碼、更換操作員;管理員用戶登錄后可以修改自身密碼、更換操作員??腿藥舻卿浐髣t不能進行本單元的任何操作。(12)購房常識管理窗體:主要功能是為購房者提供一些購房上的小常識,為購房者提供一些方便吧??梢詫彿砍WR按標題進行查詢。(13)文檔管理:主要功能是通過程序調用word,打開“房屋租憑合同”、“商品房買賣合同”、“二手房屋買賣合同”、“居間協(xié)議”、“二手房買賣流程”等電子文檔,供購房者和中介公司簽訂合同提供方便。2.2性能需求系統(tǒng)的運行對運行環(huán)境還有一些要求: 1.硬件環(huán)境處理器:Intel Pentium III或者更高。內存: 128M。硬盤空間:3GB。顯卡:SVGA顯示適配器。2.軟件環(huán)境操作系統(tǒng):Windows 98/Me/2000/XP數(shù)據(jù)庫:Access2000退出系統(tǒng)三.總體設計3.1系統(tǒng)模塊圖房屋出租登記模塊房屋出租查詢模塊房屋出售登記模塊閃現(xiàn)窗體模塊用戶登錄模塊收文登記模塊主窗體模塊單位文檔數(shù)據(jù)庫管理系統(tǒng)房屋出售查詢模塊房屋資料管理模塊客戶資料管理模塊文檔管理模塊購房常識管理模塊系統(tǒng)維護模塊3.2系統(tǒng)流程圖閃現(xiàn)窗體模塊登錄類型選擇模塊主窗體模塊報表打印模塊購房常識管理模塊文檔管理模塊客戶資料管理模塊房屋資料管理模塊房屋出售查詢模塊房屋出售登記模塊房屋出租查詢模塊房屋出租登記模塊3.4模塊設計按照需求分析的結果,本系統(tǒng)將分為以下幾大模塊,各模塊的功能及對應的窗體名稱如下所示:(1)閃現(xiàn)窗體: 在登錄窗體之前出現(xiàn),主要顯示以下信息:一是顯示本系統(tǒng)的題目即:“房產中介管理系統(tǒng)”;二是顯示作者即本人;三是顯示一行信息,即“正在加載中”。(對應窗體Form3)。(2) 登錄管理: 為了軟件和數(shù)據(jù)庫的安全,驗證登錄人員的不同身份,防止非法用戶入侵系統(tǒng)。將登錄用戶分成三個層次:超級用戶、管理員、普通客戶。(對應窗體Frm_login)。(3)主界面窗體: 本窗體的功能很簡單,主要是為進入本系統(tǒng)其它所有的功能窗體提供一個操作方便、界面美觀的基礎平臺。(對應窗體Mainform)。(4)房屋出租登記窗體: 功能是對房屋出租信息進行登記,主要是進行添加出租信息的登記操作。(對應窗體Frm_lenddetail)。(5)房屋出租信息查詢窗體: 功能主要是可以對所有的房屋出租的信息進行查詢。(對應窗體Frm_Querylend)。(6)房屋出售登記窗體: 功能是對房屋出售信息進行登記,主要是進行添加出售信息的登記操作。(對應窗體Frm_saledetail)。(7)房屋出售信息查詢窗體: 功能主要是可以對所有的房屋出售的信息進行查詢。(對應窗體Frm_Querysale)。(8)報表打印功能: 本功能是附屬在房屋出租查詢窗體和房屋出售查詢窗體里的,可以將查詢得出的任何表格數(shù)據(jù)生成報表進行打印。本部分主要通過第三方控件Ehlib來完成。(9)房屋資料登記窗體: 功能主是要對房屋信息進行登記,包括數(shù)據(jù)的添加、刪除、修改、查詢、統(tǒng)計等操作。(對應窗體Form1)。(10)客戶資料登記窗體:主要功能是對客戶資料進行登記,包括對客戶資料數(shù)據(jù)的添加、刪除、修改、查詢等操作。(對應窗體Form2)。(11)系統(tǒng)維護窗體:主要功能是對操作數(shù)據(jù)庫的管理人員進行各種資料的維護。(用戶管理對應窗體Frm_userpower;修改密碼對應窗體Frm_userchgpwd;)。(12)購房常識管理窗體:主要功能是為購房者提供一些購房上的小常識,為購房者提供一些方便吧??梢詫彿砍WR按標題進行查詢。(對應窗體Frm_infolist)。(13)文檔管理:主要功能是通過程序調用word,打開“房屋租憑合同”、“商品房買賣合同”、“二手房屋買賣合同”、“居間協(xié)議”、“二手房買賣流程”等電子文檔,供購房者和中介公司簽訂合同提供方便。3.4 數(shù)據(jù)流圖數(shù)據(jù)流圖主要是從數(shù)據(jù)流的角度來描述一個企事業(yè)組織的業(yè)務活動,它具體描述一個組織有哪幾個組成部分,也描述了來往于各部分之間的數(shù)據(jù)流。數(shù)據(jù)流圖有三個基本要素:數(shù)據(jù)流、加工、文件。數(shù)據(jù)流是由一組固定成分的數(shù)據(jù)組成。加工是對數(shù)據(jù)進行的操作。文件是暫存貯的數(shù)據(jù)。由于本系統(tǒng)只有一步數(shù)據(jù)的錄入,并沒有數(shù)據(jù)的流動、加工等,所以比較簡單。本系統(tǒng)的數(shù)據(jù)流圖如下所示:處理信息數(shù)據(jù)庫客戶信息數(shù)據(jù)庫信息用戶查詢結果信息查詢信息用戶信息查詢 用戶3.5 數(shù)據(jù)庫設計3.5.1 ADO使用方法綜述本畢業(yè)設計就是用ADO操作數(shù)據(jù)庫data.mdb。在Delphi組件面板上有ADO組件頁,其中前6個是ADO組件。在空白窗體上放置一個ADOConnection1組件,一個ADOTable1組件、一個DataSource1組件、一個DBGrid1組件。先設定一下部分組件屬性如下:設定DBGrid1組件的DataSource屬性為DataSource1,設定DataSource1組件的Dataset屬性為ADOTable1。雙擊ADOConnection1組件或者在其屬性列表中點擊ConnectionString后的省略號都可以打開連接字符串設定窗口如圖3-1:點擊“Build”按鈕,將打開數(shù)據(jù)連接屬性窗口如圖3-2 圖3-1 ConnectionString 所示,其中有四個頁面,在第一個“提供者”頁面中,列出了可以使用的各種驅動數(shù)據(jù)庫驅動。我們選擇Microsoft Jet 4.0 OLE DB Provider驅動。選擇完畢數(shù)據(jù)庫驅動后,點擊“連接”頁面,如圖3-3所示:在這里輸入或選擇數(shù)據(jù)庫,這里我們查找選擇數(shù)據(jù)庫為“C:房屋中介管理系統(tǒng)data.mdb”,如果數(shù)據(jù)庫有密碼可將“空白密圖3-2 數(shù)據(jù)連接屬性的提供者碼”復選框去掉選擇,就可以輸入密碼,選中“允許保存密碼”這樣以后就可以無需再輸入密碼了。接下來可以點擊“測試連接”按鈕,如果提示“測試連接成功”那么說明數(shù)據(jù)庫可正常連接上。在“高級”頁面中選擇訪問權限為“ReadWrite”。在“所有”頁面中顯示的是用戶目前設定的連接屬性,用戶可以再修改。點擊“確定”按鈕后返回到上圖,這時可以看到屬性設定字符串已經(jīng)自動生成,點擊“OK”按鈕返回即可。再把ADOConnection1組件的LoginPrompt屬性設定為false,這樣以后程序在運行時就不會彈出“密碼輸入框”了。但如果你的數(shù)據(jù)庫有密碼且在上面的“連接”頁面中沒有輸入密碼沒有選中“允許保存密碼”,那么不要把此屬性設定為false,因為你以后需要手工輸入密碼。接著設定ADOTable1組件的Connection屬性為ADOConnection1,單擊ADOTable1組件的tablename屬性后的省略號,將可圖3-3 數(shù)據(jù)連接屬性的連接以看到數(shù)據(jù)庫liualiang.mdb中的所有數(shù)據(jù)表名稱列表,從中選擇一個如“表 1”,設定ADOTable1組件的Active屬性為True,則馬上可以在DbGrid中看到表中的數(shù)據(jù)了。如果馬上運行程序就可以在窗口中瀏覽和編輯數(shù)據(jù)了。在本程序中,因為很多單元都要訪問數(shù)據(jù)庫,所以為了方便,使用一個單元Datamodule1,在單元里放置一個控件Adoconnection1用于統(tǒng)一連接數(shù)據(jù)庫,其它單元要訪問時,只要把adotalbe或adoquery控件的數(shù)據(jù)源指向Datamodule1中的Adoconnection1控件就可以了。這樣大大減少了代碼量,減少了工作量。3.5.2 新建數(shù)據(jù)庫及字段運行Microsoft公司的Office2000辦公軟件中的Access數(shù)據(jù)庫軟件。點擊菜單“文件”,在出現(xiàn)的菜單項中選擇“新建”菜單項。然后點擊“空數(shù)據(jù)庫”,在彈出的“文件新建數(shù)據(jù)庫”對話框中鍵入數(shù)據(jù)庫的名稱,本軟件中應寫入data.mdb。這時系統(tǒng)將會自動進入詳細的數(shù)據(jù)庫設計窗體。我們選擇“使用設計器”創(chuàng)建表。在彈出的“表4_1”設計窗體中,依次寫入各個字段名以及他們相對應的數(shù)據(jù)類型和說明事項。設計好字段名后,關閉并保存表為“用戶信息表” 。雙擊“用戶信息表”然后在彈出的數(shù)據(jù)錄入窗體中錄入數(shù)據(jù),并保存。同時由于系統(tǒng)提供了房屋資料管理的功能,所以要在數(shù)據(jù)庫中增加“房屋資料”,它主要是用來保存房屋信息的,它的字段和類型如表4_2:表4_1 用戶信息表的描述字段名稱數(shù)據(jù)類型用戶名文本密碼文本用戶等級文本表4_2房屋資料的描述字段名稱數(shù)據(jù)類型位置文本樓層文本面積數(shù)字產權情況文本結構文本價格數(shù)字狀態(tài)文本因為軟件中需要四個數(shù)據(jù)庫即“客戶資料”、“中介信息表”、“單位信息表”、“常識信息表”,所以還要在數(shù)據(jù)庫data.mdb中新建這幾個表,增加記錄的步驟也與上面增加記錄的步驟完全一樣。由于篇幅的限制,其它幾個表的結構(包括詳細的字段名、類型、大小)在這里,我就不一一列舉出來了。打開數(shù)據(jù)庫data.mdb就可以直接看到了。設計完成后,按同樣的方法向其中加入數(shù)據(jù),即幾條含有原始數(shù)據(jù)的記錄。這樣一個數(shù)據(jù)庫data.mdb就初步制作完成了。四.詳細設計根據(jù)已有的需求信息和總體設計,可以進行系統(tǒng)的詳細設計和實現(xiàn)。系統(tǒng)的設計和實現(xiàn)如下:4.1 系統(tǒng)項目文件 每一個Delphi工程都有一個項目文件,在本系統(tǒng)中,項目文件如下所示:program Mdiapp;uses Forms, windows, Sysutils, Classes, Main in MAIN.PAS MainForm, Common in Common.pas, SaleCause in SaleCause.pas Frm_SaleCause, base in base.pas Frm_Base, DataBase in DataBase.pas DataModule1: TDataModule, login in login.pas Frm_Login, UserChgPwd in UserChgPwd.pas Frm_UserChgPwd, SaleDetail in SaleDetail.pas Frm_SaleDetail, UserPower in UserPower.pas Frm_UserPower, QuerySale in QuerySale.pas Frm_QuerySale, SysSet in SysSet.pas Frm_SysSet, LendDetail in LendDetail.pas Frm_LendDetail, QueryLend in QueryLend.pas Frm_QueryLend, LendCause in LendCause.pas Frm_LendCause, InfoList in InfoList.pas Frm_InfoList, Unit1 in Unit1.pas Form1, Unit2 in Unit2.pas Form2, Unit3 in Unit3.pas Form3;$R *.RESvarform3:tform3;begin Application.Initialize; form3:=tform3.Create(form3); /這里是啟動閃現(xiàn)窗體 form3.makesplash; /啟動閃現(xiàn)窗體的延時程序 gs_WorkPath := ExtractFilePath(Application.EXEName); /得到可執(zhí)行文件的路徑 / 打開數(shù)據(jù)庫模板 Application.Title := 房產中介管理系統(tǒng); Application.CreateForm(TDataModule1, DataModule1); Application.CreateForm(TMainForm, MainForm); Application.CreateForm(TForm3, Form3); MainForm.show; / 連接數(shù)據(jù)庫 if f_ConnectDataBase()=False then begin Application.MessageBox(連接數(shù)據(jù)庫出錯,可能原因有:#13#101. 配置文件 exhib.ini 的數(shù)據(jù)庫配置小節(jié)有問題nr#13#102. 本系統(tǒng)運行路徑不對#13#103. 本機未安裝數(shù)據(jù)庫的 Client 端驅動程序#13#104. 其他問題#13#10請與管理員聯(lián)系.,系統(tǒng)出錯,MB_OK); Application.Terminate; end; / 系統(tǒng)參數(shù)初始化 f_SysParmInit(); / 顯示登錄窗口 Frm_login:=TFrm_Login.Create(Application); try Frm_Login.ShowModal; if Frm_Login.login=True then begin / 為登錄用戶定制界面 MainForm.StatusBar.Panels0.text :=gs_OrgName; MainForm.StatusBar.Panels1.text :=操作員:+gs_Login_UserName; MainForm.StatusBar.Panels2.text :=工作日期:+FormatDateTime(yyyy-mm-dd,gt_login_time); / MainForm.f_InitUserMenu; / 打開查詢窗口 end else begin Application.Terminate; end; Finally Frm_Login.Free; end; / form3.Close; /關閉閃現(xiàn)窗體 form3.Free; /釋放閃現(xiàn)窗體 Application.Run; end. 4.1 閃現(xiàn)窗體的實現(xiàn)(1)閃現(xiàn)窗體的實際運行圖(2)實現(xiàn)的方法:首先,制作一個名為Form3的窗體。畫面如上圖所示。其次,在其中加入一個過程,即一個延時程序的過程:makesplah。代碼如下:procedure tform3.makesplash;begin borderstyle:=bsnone; show; update; sleep(2000);end;第三,在工程文件代碼中將入以下語句:一是在開始部分加上:form3:=tform3.Create(form3); form3.makesplash;二是在最后結果部分加上:form3.Close; /關閉閃現(xiàn)窗體 form3.Free; /釋放閃現(xiàn)窗體具體可以參見上上頁的哪一段工程項目文件的源程序。4.2 用戶登錄模塊 (1)用戶登錄模塊的窗體效果圖 (2)核心代碼解釋: 在輸入登錄密碼后,按“確定”后觸發(fā)的事件。procedure TFrm_Login.bbtnokClick(Sender: TObject);begin /錄入檢驗 if cbUserId.text= then begin messagedlg(請 選 擇 用 戶 名 !,mtInformation,mbok,0); cbUserId.SetFocus(); exit; end; /登錄驗證 with ADOQ_Temp do begin close; SQL.Clear; SQL.Add(SELECT * From 用戶信息表 Where 用戶名=+cbUserId.Text+); Open; /用戶有效性 IF not IsEmpty then begin /登錄失敗 If edtPassword.Text Fieldbyname(密碼).AsString then begin messagedlg(口令錯誤,請修改 !,mterror,mbok,0); LoginNum:=LoginNum+1; if LoginNum=3 then begin messagedlg(非法用戶!你無權使用本系統(tǒng),mterror,mbok,0); application.Terminate ; end; edtPassword.Text :=; edtPassword.SetFocus; exit; end /登錄成功 else begin /保存登錄的用戶信息 gs_login_userid :=fieldbyname(用戶名).asstring; gs_login_username :=fieldbyname(用戶名).asstring; gs_login_userlevel :=fieldbyname(用戶等級).asstring; gs_login_Password :=fieldbyname(密碼).asstring; gt_login_time:=now(); Login:=true; self.close; end; end else begin messagedlg(指定的用戶已被注銷!你無權使用本系統(tǒng)!,mterror,mbok,0); Login:=False; self.close; end; end;end;4.3 主窗體模塊 本模塊的主要功能是:為進入本系統(tǒng)其它所有的功能窗體提供一個操作方便、界面美觀的基礎平臺。 (1)窗體效果圖如下: (2)核心代碼解釋:一是:登錄用戶類型不同,權限不同的代碼解釋:function TMainForm.f_InitUserMenu():Boolean;begin if gs_login_userlevel=超級用戶 then begin m_state_1.Enabled :=true; m_state_2.Enabled :=true; m_state_3.Enabled :=true; m_system_UserPower.Enabled :=true; / m_system_sysset.Enabled :=true; end else if gs_login_userlevel=管理員 then begin m_state_1.Enabled :=true; m_state_2.Enabled :=true; m_state_3.Enabled :=true; end else begin / 普通客戶,限制使用好幾個菜單 m_operation_Lend.Enabled :=false; m_operation_Sale.Enabled :=false; btnLendDetail.Enabled :=false; btnSaleDetail.Enabled :=false; n3.Enabled:=false; n4.Enabled:=false; end; / Result:=True;end;二是:文檔管理菜單中打開word文檔的核心代碼解釋:如打開“文檔租憑合同文檔”:procedure TMainForm.m_state_1Click(Sender: TObject);vars:string;varword:variant;begins:=ExtractFilePath(Application.EXEName)+programdocdoc1.doc;try varword:=createoleobject(word.basic); varword.fileopen(s); varword.appshow; except showmessage(運行Microsoft word 失敗!); end;end;4.4 房屋出租登記窗體功能是對房屋出租信息進行登記,主要是進行添加出租信息的登記操作。(1)窗體效果圖如下:(2)窗體的“保存”按鈕的代碼解釋procedure TFrm_LendDetail.btnOkClick(Sender: TObject);var strSQL :string; strCode :string;begin inherited; / 檢查數(shù)據(jù)錄入的有效性 if f_CheckValue()=False then exit; / 數(shù)據(jù)保存處理 DataModule1.ADOConnection1.BeginTrans; try ADOQ_Data.UpdateBatch; / DataModule1.ADOConnection1.CommitTrans; except DataModule1.ADOConnection1.RollbackTrans; MessageBox(handle,數(shù)據(jù)保存失敗!,警告,MB_OK); exit; end; MessageBox(handle,數(shù)據(jù)保存成功!,提示,MB_OK+MB_ICONINFORMATION); / 繼續(xù)新增 if ParmEditorMode = ADD then begin ParmId :=; FormShow(nil); end;end;4.4房屋出租查詢模塊(1)本模塊的窗體效果圖如下所示:(2)“查詢”的核心代碼與解釋:procedure TFrm_QueryLend.btnFindClick(Sender: TObject);var strFilter:string;begin inherited; / 構造過濾條件 strFilter := ; if trim(edtNo.text) then strFilter := strFilter + (收件號 like +%+edtNo.text+%)+ AND ; / if rdoStatus.itemindex=1 then begin strFilter := strFilter + 狀態(tài)=+未處理+ AND ; end else if rdoStatus.itemindex=2 then begin strFilter := strFilter + 狀態(tài)=+已處理+ AND ; end else if rdoStatus.itemindex=3 then begin strFilter := strFilter + 狀態(tài)=+已作廢+ AND ; end; / if strFilter then strFilter :=copy( strFilter,0,Length(strFilter)-5 ); /過濾查詢 if strFilter= then begin ADOQ_Data.Filtered:=false; end else begin ADOQ_Data.Filtered:=true; ADOQ_Data.Filter:=strFilter; end;end;4.5 房屋資料登記模塊(1)本模塊的窗體效果圖如下所示(2)本模塊中“查詢”按鈕的核心代碼解釋如下:注意這里我用的查詢方法與上面用到的查詢方法不一樣,以體現(xiàn)查詢方法的多樣性。procedure TForm1.btnFindClick(Sender: TObject);vars:string;begin inherited; if edtTitle.Text then begin s:=select * from 房屋資料 where 位置 like %+edtTitle.Text +%; ADOQ_Data.close; adoq_data.SQL.Clear; adoq_data.SQL.add(s); adoq_data.Open; end else begin ADOQ_Data.Filtered:=false; end; (3)本模塊中還有一個統(tǒng)計功能,用于對數(shù)據(jù)表中的房屋資料進行統(tǒng)計,統(tǒng)計出未出租、已出租、未出售、已出售的房屋數(shù)量以及所有房屋的總數(shù)量。其核心代碼如下(僅列出統(tǒng)計“已出租”房屋數(shù)量的代碼,其余與些相同):adoquery1.Close;adoquery1.SQL.Clear;adoquery1.SQL.add(select * from 房屋資料 where 狀態(tài)=已出租);adoquery1.Open;n:=adoquery1.RecordCount;edit2.Text:=inttostr(n);4.6改變密碼模塊(1)本模塊的窗體效果圖如下所示:(2)本模塊中修改密碼的代碼解釋如下:procedure TFrm_UserChgPwd.bbtnOkClick(Sender: TObject);var sqlstr:string;begin inherited; if edtoldpassword.textgs_login_password then begin messagedlg(舊密碼輸入錯誤!,mterror,mbok,0); exit; end; if edtnewpassword.Textedtnewpassword2.Text then begin messagedlg(新密碼兩次輸入不一致!,mterror,mbok,0); exit; end else begin sqlstr:=UPDATE 用戶信息表 SET 密碼=+edtnewpassword.Text+ where 用戶名=+gs_login_userid+; DataModule1.ADOConnection1.Execute(sqlstr); messagedlg(修改完成,密碼已經(jīng)改變!,mtinformation,mbok,0); close; end;end;4.8其它模塊:由于編幅的原因,我不可能把所有的模塊都一一介紹到了,還有幾個模塊,如“房屋出售登記模塊”、“房屋出售查詢模塊”、“購房常識模塊”、“客房資料登記模塊”等由于和已經(jīng)介紹的部分模塊在代碼上大同小異,在此省略了。4.8本軟件所用控件的安裝及使用方法本軟件根據(jù)編程的需要一共使用了一個第三方控件Ehlib表格增強控件,使用它的目的主要一是系統(tǒng)功能的需要,第二個也是鍛煉自己使用第三方控件的本領,如第三方控件的安裝,使用等。 Ehlib表格增強控件它的安裝方法如下:在File菜單下,選擇“OPEN”打開Ehlib安裝包中的Ehlib.dpk文件(文件類型列表框中選*.dpk),在出現(xiàn)的Package窗口中,工具欄上有Install按鈕,按此按鈕即可進行安裝。如果Install按鈕處于無效狀態(tài),那么先按Compile按鈕編譯,一般來說編譯之后Install按鈕就會處于有效狀態(tài),此時再按Install按鈕就可以了。Ehlib控件是一系列表格增強控件的組合。本軟件主要用到其中的兩個組件: TDBGridEh 組件和TPrintDBGridEh 組件。 TDBGridEh 組件:這是對Delphi自帶的TDbgrid控件的增強改進版,它包含了所有TDbgrid的功能,并增加

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論