还剩49页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
届XXXX班毕业论文存档编号XX大学毕业论文题目房屋租赁管理系统专业计算机科学与技术年级2002学号200000000000论文作者XXX指导教师XXX职称教授XX大学计算机学院制完成时间2006年03月20日摘要随着我国市场经济的快速发展和人们生活水平的不断提高,简单的租凭服务已经不能满足人们的需求如何利用先进的管理手段,提高房屋租凭管理水平,是当今社会所面临的一个重要课题本文通过用VB
6.0编写房屋租赁管理系统,利用软件工程原理,采用面向对象的编程方法,其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面,实现了房屋租赁管理的自动化和信息化.整个系统从符合操作简便、界面友好、灵活、实用、安全的要求出发,完成基本资料管理、客户资料管理、租凭合同管理、财务管理、统计报表管理等功能.经过实际测试证明,本文所设计的房屋租赁管理系统可以用于物业管理部门从事房屋租赁信息管理方面的需要论文主要介绍了本课题的开发背景,所要完成的功能和开发的全过程重点的说明了系统设计的重点、设计思想、难点技术和解决方案关键词数据库VisualBasic
6.0房屋租赁管理系统目录TOC\o1-3\u摘要1第一章序论
11.1课题来源
11.2开发背景和开发目的
11.3可行性分析
21.
3.1经济可行性分析
21.
3.2操作可行性分析
21.
3.3技术可行性分析
21.4本文所做的工作2第二章需求分析
42.1系统目标
42.2应用现状调查
42.3系统总体流程图如下:
42.4系统的数据流程图及分析:
52.5系统功能模块图5第三章开发工具的选择及简介
63.1开发工具的选择
63.2开发工具简介7第四章房屋租赁管理系统的详细设计
104.1数据库概要
104.
1.1数据库的含义
104.
1.2数据库管理系统
104.
1.3数据库应用系统
124.2数据库的结构设计
124.3系统主界面的设计
144.3各主要功能模块的设计与实现174.3.1基本资料管理模块设计174.3.2客户资料管理模块的设计244.3.2.1租户基本资料的设计244.3.2.2求租户基本资料的设计254.3.3租赁管理模块的设计284.3.
3.1签订合同的设计284.3.
3.2预定租房的设计354.3.4财务管理模块的设计364.3.
4.1定金收取的设计364.3.5统计报表模块的设计394.3.5.1房屋统计报表的设计394.3.5.2租户信息表404.3.5.3求租客户信息表414.3.5.3租金统计表的设计42第五章主菜单的设计及系统连编
435.1主菜单的设计
435.2系统的编译与发行44第六章毕业设计小结45参考文献45致谢46第一章序论
1.1课题来源随着我国市场经济的快速发展和信息化水平的不断提高,如何利用先进的管理手段,提高物业管理的水平,是当今社会所面临的一个课题提高企业的管理水平,必须全方位地提高企业的管理意识只有高标准、高质量的管理才能满足企业的发展需求面对信息时代的挑战,利用高科技手段来提高房屋租赁管理无疑是一条行之有效的途径在某种意义上,信息与科技在企业管理与现代化建设中显现出越来越重要的地位房租租赁管理方面的信息化与科学化,已成为现代化生活水平步入高台阶的重要标志随着计算机技术不断的飞速发展,计算机以及计算机控制的自动处理技术已融入人类社会的各个领域并发挥着越来越重要的作用对于当今的科学信息是一次重大的飞越,为人们的生活、工作、学习带来潜移默化的影响今天我们使用计算机对房屋租赁信息进行管理,具有手工管理所无法比拟的优点例如检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等这些优点能够极大地提高房屋租赁管理的效率面对目前的实际状况,迫切需要开发一个新系统来适应这一些工作.
1.2开发背景和开发目的利用计算机实现物业管理中的房屋租赁管理势在必行对于物业管理企业来说,利用计算机支持企业高效率完成房屋租赁管理的日常事务,是适应现代企业制度要求、推动企业劳动型管理走向科学化、规范化的必要条件;而房屋租赁管理是一项琐碎、复杂而又十分细致的工作,房屋的基本资料客户资料的管理房屋租赁管理,各项收费以及统计报表的管理一般不允许出错,如果实行手工操作须手工填制大量的表格这就会耗费工作人员大量的时间和精力,计算机进行房屋租赁工作的管理,不仅能够保证各项信息准确无误、快速输出,同时计算机具有手工管理所无法比拟的优点.例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等这些优点能够极大地提高物业管理的效率也是企业的科学化、正规化管理与世界接轨的重要条件开发本系统就是为了解决物业管理企业在房屋租赁信息管理中的一些不规范,使房屋租赁信息的管理向着规范化、简单化、有效化的方向发展
1.3可行性分析
1.
3.1经济可行性分析本系统开发简单但要耗去一定的时间,所用的开发工具和软件都差不多是免费的而且,由于系统能够在未来较长的一段时期内稳定地发挥作用,这对于学生房屋租赁信息的自动化管理,称业管理企业的人力和财力都有很大的帮助由此可见在,开发此系统在经济上是完全可行的
1.
3.2操作可行性分析如今的计算机已经走进千家万户,硬件成本的下降,导致计算机购买成本的降低.我的这套系统是利用自己的计算机加MicrosoftVisualFoxPro
6.0作为软件的开发平台,使开发出来的系统有友好的用户界面、有良好的安全性设置、有详细的操作说明书,这样更使各类用户很快地掌握系统的使用方法操作友好因此在操作上是可行的.
1.
3.3技术可行性分析从目前IT业界比较流行的数据库开发、管理软件来看,对于比较简单的中小型数据库,VisualBasic
6.0和Windows2000的结合无疑是在实际应用中较为成功的一种解决方案为用户提供了业界软件开发一直坚持的非常友好、操作简单的用户界面、完善强大的数据库操作功能和简洁明了的数据库接口所以技术实行起来相对会容易
1.4本文所做的工作第一章绪论部分主要叙述课题来源、开发背景和开发目的可行性分析分析比较当前开发工具,数据库技术的比较第二章结合软件工程方法,对系统进行需求分析、系统目标和应用现状调查、系统总体流程图与功能调查图绘制与分析第三章在需求分析的基础上选择好开发工具并对开发工具做简要描述.第四章根据需求分析的结果,对系统进行概要设计,主要介绍用VisualBasic
6.0创建应用程序的步骤以及在本系统开发的所用到控件.实现每一个模块的具体功能第五章根据第四章的创建应用程序步骤及VisualBasic
6.0提供的控件进行房屋租赁管理系统的详细设计.重点分析数据库的设计以及主要功能模块的实现.第六章在完成了主要功能模块的设计后本章进行的系统主程序的设计以及怎样在VisualBasic
6.0环境下生成应用程序.第七章毕业设计小结,总结部分介绍了设计体会和编程体会.设计存在的不足及今后的学习方向.第二章需求分析
2.1系统目标采用企业现有的软硬件环境及科学的管理系统开发方案,建立房屋租赁信息管理系统,实现房屋租赁信息管理的计算机自动化系统应符合物业管理企业原有的房屋租赁管理制度,并达到操作直观、方便、实用、安全等要求
2.2应用现状调查当前,很多物业管理企业的房屋租赁信息管理都是以纸张为介质作记录,人力管理的比例比较大往往是各个主要负责人以书面的形式管理房屋租赁信息效率低下数据打印汇总成绩更新不及时,容易丢失损坏数据给学校学生带来损失不易保存且数据保密性较差
2.3系统总体流程图如下:
2.4系统的数据流程图及分析:数据流程图整个系统从总体上分为基本资料管理、客户资料管理、租赁管理、财务管理以及统计报表五大部分,每一部分实现的功能如下基本资料管理功能实现房屋基本资料的管理.客户资料管理分租户基本资料跟求租户基本资料管理租赁管理分为合同签订,合同续签,合同管理,预定租房,合同查询,预定单查询,出租到期提醒,预定到期提醒财务管理功能分定金、押金、租金收取,租金管理,定金退还,押金退还统计报表功能房屋统计报表,租户统计报表,求租客户信息表,历史租户表,现有合同表,历史合同表,预定金统计,押金,定金统计,租金统计等功能
2.5系统功能模块图第三章开发工具的选择及简介
3.1开发工具的选择针对目前世界上流行的大量软件和开发工具,经过认真分析其优缺点,结合数据库管理系统的需要和目前的硬件环境,我们选用微软WINDOWS平台下的VisualBasic
6.0(简写为VB
6.0)作为房屋租赁管理系统的开发工具.
3.2开发工具简介现在,市场上可以选购的应用开发产品很多,流行的也有数十种目前在我国市场上最为流行、使用最多、最为先进的可用作企业级开发工具的产品有Microsoft公司的VisualBasicMicrosoft公司的VisualCMicrosoft公司的VisualFoxProBorland公司的DelphiPowersoft公司的PowerBuliderJava等等在目前市场上这些众多的程序开发工具中,有些强调程序语言的弹性与执行效率;有些则偏重于可视化程序开发工具所带来的便利性与效率的得高,各有各的优点和特色,也满足了不同用户的需求然而,语言的弹性和工具的便利性是密不可分的,只有便利的工具,却没有弹性的语言作支持,许多特殊化的处理动作必需要耗费数倍的工夫来处理,使得原来所标榜的效率提高的优点失去了作用;相反,如果只强调程序语言的弹性,却没有便利的工具作配合,会使一些即使非常简单的界面处理动作,也会严重地浪费程序设计师的宝贵时间VisualBasic是美国微软公司的第一个编程工具和系统开发的第一个产品,VisualBasic以优良的性能、较强的系统开发功能、完美的视觉界面和简单易学的特点,已经赢得了全世界广大用户的偏爱VisualBasic的编程环境包含了快速有效的开发功能,尤其是数据窗口这一方便而简洁操纵数据库的智能化对象,使系统的开发更人性化,操作更简便作为管理信息系统的开发,VisualBasic是一个非常理想选择VisualBasic是一种可视化的、面对对象和条用事件驱动方式的结构化高级程序设计,可用于开发Windows环境下的种类应用程序它简单易学、效率高,且功能强大,可以与Windows的专业开发工具SDK相媲美,而且程序开发人员不必具有C/C++编程基础在VisualBasic环境下,利用事件驱动的编程机制、新颖易用的可视化设计工具,使用Windows内部的应用程序接口API函数,以及动态链接库DLL、动态数据交换DDE、对象的链接与嵌入OLE、开放式数据访问ODBC等技术,可以高效、快速地开发出Windows环境下功能强大、图形界面丰富的应用软件系统总的来说,VisualBasic
6.0具有以下特点VisualBasic是一种可视化的、面对对象和条用事件驱动方式的结构化高级程序设计,可用于开发Windows环境下的种类应用程序它简单易学、效率高,且功能强大,可以与Windows的专业开发工具SDK相媲美,而且程序开发人员不必具有C/C++编程基础在VisualBasic环境下,利用事件驱动的编程机制、新颖易用的可视化设计工具,使用Windows内部的应用程序接口API函数,以及动态链接库DLL、动态数据交换DDE、对象的链接与嵌入OLE、开放式数据访问ODBC等技术,可以高效、快速地开发出Windows环境下功能强大、图形界面丰富的应用软件系统可视化编程用传统程序设计语言设计程序时,都是通过编写程序代码来设计用户界面,在设计过程中看不到界面的实际显示效果,必须编译后运行程序才能观察如果对界面的效果不满意,还要回到程序中修改有时候,这种编程-编译-修改的操作可能要反复多次,大大影响了软件开发效率VisualBasic提供了可视化设计工具,把Windows界面设计的复杂性“封装”起来,开发人员不必为界面设计而编写大量程序代码只需要按设计要求的屏幕布局,用系统提供的工具,在屏幕上画出各种“部件”,即图形对象,并设置这些图形对象的属性VisualBasic自动产生界面设计代码,程序设计人员只需要编写实现程序功能的那部分代码,从而可以大大提高程序设计的效率面向对象的程序设计
4.0版以后的VisualBasic支持面向对象的程序设计,但它与一般的面向对象的程序设计语言C++不完全相同在一般的面向对象程序设计语言中,对象由程序代码和数据组成,是抽象的概念;而VisualBasic则是应用面向对象的程序设计方法OOP,把程序和数据封装起来作为一个对象,并为每个对象赋予应有的属性,使对象成为实在的东西在设计对象时,不必编写建立和描述每个对象的程序代码,而是用工具画在界面上,VisualBasic自动生成对象的程序代码并封装起来每个对象以图形方式显示在界面上,都是可视的结构化程序设计语言VisualBasic是在BASIC语言的基础上发展起来的,具有高级程序设计语言的语句结构,接近于自然语言和人类的逻辑思维方式VisualBasic语句简单易懂,其编辑器支持彩色代码,可自动进行语法错误检查,同时具有功能强大且使用灵活的调试器和编译器VisualBasic是解释型语言,在输入代码的同时,解释系统将高级语言分解翻译成计算机可以识别的机器指令,并判断每个语句的语法错误在设计VisualBasic程序的过程中,随时可以运行程序,而在整个程序设计好之后,可以编译生成可执行文件.EXE,脱离VisualBasic环境,直接在Windows环境下运行事件驱动编程机制VisualBasic通过事件来执行对象的操作一个对象可能会产生多个事件,每个事件都可以通过一段程序来响应例如,命令按钮是一个对象,当用户单击该按钮时,将产生一个“单击”CLICK事件,而在产生该事件时将执行一段程序,用来实现指定的操作在用VisualBasic设计大型应用软件时,不必建立具有明显开始和结束的程序,而是编写若干个微小的子程序,即过程这些过程分别面向不同的对象,由用户操作引发某个事件来驱动完成某种特定的功能,或者由事件驱动程序调用通用过程来执行指定的操作,这样可以方便编程人员,提高效率访问数据库VisualBasic具有强大的数据库管理功能,利用数据控件和数据库管理窗口,可以直接建立或处理MicrosoftAccess格式的数据库,并提供了强大的数据存储和检索功能同时,VisualBasic还能直接编辑和访问其他外部数据库,如dBASE,FoxPro,Paradox等,这些数据库格式都可以用VisualBasic编辑和处理VisualBasic提供开放式数据连接,即ODBC功能,可通过直接访问或建立连接的方式使用并操作后台大型网络数据库,如SQLServer,Oracle等在应用程序中,可以使用结构化查询语言SQL数据标准,直接访问服务器上的数据库,并提供了简单的面向对象的库操作指令和多用户数据库访问的加锁机制和网络数据库的SQL的编程技术,为单机上运行的数据库提供了SQL网络接口,以便在分布式环境中快速而有效地实现客户/服务器client/server方案动态数据交换DDE利用动态数据交换DynamicDataExchange技术,可以把一种应用程序中的数据动态地链接到另一种应用程序中,使两种完全不同的应用程序建立起一条动态数据链路当原始数据变化时,可以自动更新链接的数据VisualBasic提供了动态数据交换的编程技术,可以在应用程序中与其他Windows应用程序建立动态数据交换,在不同的应用程序之间进行通信对象的链接与嵌入OLE对象的链接与嵌入OLE将每个应用程序都看作是一个对象object,将不同的对象链接link起来,再嵌入embed某个应用程序中,从而可以得到具有声音、影像、图像、动画、文字等各种信息的集合式的文件OLE技术是Microsoft公司对象技术的战略,它把多个应用程序合为一体,将每个应用程序看作是一个对象进行链接和嵌入,是一种应用程序一体化的技术利用OLE技术,可以方便地建立复合式文档compounddocument,这种文档由来自多个不同应用程序的对象组成,文档中的每个对象都与原来的应用程序相联系,并可执行与原来应用程序完全相同的操作动态链接库DLLVisualBasic是一种高级程序设计语言,不具备低级语言的功能,对访问机器硬件的操作不太容易实现但它可以通过动态链接库技术将C/C++或汇编语言编写的程序加入到VisualBasic应用程序中,可以像调用内部函数一样调用其他语言编写的函数此外,通过动态链接库,还可以调用Windows应用程序接口API函数,实现SDK所具有的功能第四章房屋租赁管理系统的详细设计
4.1数据库概要
4.
1.1数据库的含义所谓数据库,就是为了满足某些系统、某些用户的需要,在计算机系统中按照一定的数据模型、数据结构等方式进行组织、存储和使用的互相关联的数据集合,是数据按科学的结构形式组织的“仓库”在实际中,人们把数据库以文件形式存入于磁盘(软盘、硬盘或磁带)中,数据库管理系统以文件形式对其进行调度管理
4.
1.2数据库管理系统数据库管理系统,简称DBMS,是为数据库的建立,使用和维护而配置的软件,它提供了安全性和完整性等统一控制机制,方便用户管理和存取大量的数据资源例如,VisualBasic
6.0就是微机上使用的一种数据管理系统在数据库管理系统的支持下,数据完全独立于应用程序,并且能被多个用户或程序共享,其关系如图所示应用程序与数据库的关系数据库管理系统一般具备数据库的定义、操作、查询及控制等功能它将所有应用程序使用的数据汇集起来,建立数据库,使之面对所有应用程序的查询和访问因此,作为访问者的应用程序相对于数据库来说是独立的,而作为被访问的数据在数据库中同样是独立的当要建立新的数据管理系统时,只要生成一个新的应用程序即可,它可以立即使用现成的数据库,而不必建立新的数据文件数据库管理系统是为数据库的建立、使用、管理和维护而配置的软件它建立在操作系统的基础上,对数据库进行统一的管理和控制用户使用的各种数据库命令以及应用程序的执行都要通过数据库管理系统数据库管理系统还承担着数据库的维护工作,保证数据库的安全性和完整性数据库管理系统的功能体现在“管理”二字上它针对不同的用户及不同的使用目的,提供给用户各种操作、管理数据库的命令、函数、控件和对象,以帮助用户完成任务其主要功能如下定义数据库根据用户设计的数据结构建立数据库结构组织.存取数据它包括很多基本操作:输入、更新、插入、检索、删除、输出、统计、排序、索引等数据库运行管理所有数据库的操作都要在数据库管理系统的饿控制程序的统一管理下进行,以保证正确运行,保证数据库正确有效数据库系统的维护系统维护是一项重要的工作,它包括数据库的转存、恢复、数据库的重组及性能监视、分析等由上可见,数据库管理系统是一个能使用和管理数据库中数据的软件这是数据库系统与文件系统的一个最大的区别数据库管理系统功能的强弱基本上决定了整个数据库系统功能
4.
1.3数据库应用系统数据库应用系统是指系统开发人员利用数据库系统资源开发出来的,面向某一类信息处理问题而建立的软件系统数据库系统的用户自己编写的、基于数据库数据的程序称为应用程序,针对某一数据库管理而编制的一组应用程序形成该数据库的应用系统,它是数据库系统的一个重要组成部分,它们与数据库上的数据构成数据库中最活跃的部分
4.2数据库的结构设计为了实现管理信息系统的计算机化,仅仅用文字来描述信息的流动和存储还远远不够,还要进一步调查分析舍去物质流,抽象出信息流,定义出数据库各数据表的结构,并对各种数据的属性和各项处理功能进行详细分析系统分析的主要成果是系统的逻辑模型通过对该系统的研究将系统数据分为以下几个表:客户信息表定金表房屋表押金表求租,预定表以及租金等几个表各表的具体设计结构如下:客户信息表:字段名类型宽度小数位数客户编号字符型10租户姓名字符型6工作单位字符型20联系电话字符型2性别字符型8租户人数字符型20身份证编号字符型20备注备注型4定金表:字段名类型宽度小数位数收费编号字符型10定金金额字符型10预定金编号字符型10收费日期日期型8预定客户字符型10预定房屋编号字符型10备注备注型房屋表:字段名类型宽度小数位数房屋编号字符型8物业地址字符型10房型字符型20建筑面积数值型52使用面积数值型52装修情况字符型10出租价位数值型52目前状态字符型字符型备注备注型押金表:字段名类型宽度小数位数收费编号字符型10押金金额数值型52收费日期日期型8合同编号字符型10客户姓名字符型8房屋编号字符型10备注备注型求租表:字段名类型宽度小数位数求租客户编号字符型10求租客户姓名字符型10电话字符型15房型要求字符型50面积要求数值型52装修要求字符型50意向价位数值型52意向房屋编号字符型10备注备注租金表:字段名类型宽度小数位数收费编号字符型10租金年份日期型8租金月份日期型8应交租金数值型52已交租金数值型52久费金额数值型52客户姓名字符型10交费日期日期型8备注备注
4.3系统主界面的设计启动系统后,主界面设计效果图如下:公用模块的设计代码分析如下:OptionExplicitPublicconnAsNewADODB.Connection定义全局变量queryhouse作为判断frmHouse窗体显示查询的数据还是全体数据PublicqueryhouseAsBoolean定义全局变量sqlqh作为查询房屋信息时的sql语句PublicsqlqhAsString定义全局变量querycf作为判断frmClient窗体家庭租户选项卡显示查询的数据还是全体数据PublicquerycfAsBoolean定义全局变量sqlqcf作为查询家庭租户信息时的sql语句PublicsqlqcfAsString定义全局变量querycg作为判断frmClient窗体家公司户选项卡显示查询的数据还是全体数据PublicquerycgAsBoolean定义全局变量sqlqcg作为查询公司租户信息时的sql语句PublicsqlqcgAsString定义全局变量queryemp作为判断frmEmp窗体显示查询的数据还是全体数据PublicqueryempAsBoolean定义全局变量sqlqe作为查询员工信息时的sql语句PublicsqlqeAsString定义全局变量queryqzc作为判断frmQZClient窗体显示查询的数据还是全体数据PublicqueryqzcAsBoolean定义全局变量sqlqzc作为查询求租客户信息时的sql语句PublicsqlqzcAsString定义全局变量querycon作为判断frmAdminContract窗体显示查询的数据还是全体数据PublicqueryconAsBoolean定义全局变量sqlqcon作为查询合同信息时的sql语句PublicsqlqconAsString定义全局变量sqlqyd作为查询预定单信息时的sql语句PublicsqlqydAsString定义全局变量fromqzc作为判断frmYuDing窗体是从frmQZClient窗体中单击下定金预定调用的还是直接菜单调用的PublicfromqzcAsBoolean定义全局变量fromYuding作为判断frmPayDingJin窗体是从frmYuDing窗体中单击收取定金调用的还是直接菜单调用的PublicfromYudingAsBoolean定义全局变量fromContract作为判断frmPayYaJin窗体是从frmSignContract窗体中单击收取押金调用的还是直接菜单调用的PublicfromContractAsBoolean定义全局变量ZuJinfromContract作为判断frmPayZuJin窗体是从frmSignContract窗体中单击收取租金调用的还是直接菜单调用的PublicZuJinfromContractAsBoolean定义全局变量queryZuJin作为判断frmAdminZuJin窗体显示查询的数据还是全体数据PublicqueryZuJinAsBoolean定义全局变量sqlqzj作为查询合同信息时的sql语句PublicsqlqzjAsString定义全局变量sqlqdj作为查询定金信息时的sql语句PublicsqlqdjAsString定义全局变量sqlqyj作为查询押金信息时的sql语句PublicsqlqyjAsString
4.3各主要功能模块的设计与实现4.3.1基本资料管理模块设计房屋基本资料管理的运行效果图如下:其表单界面的属性设计比较直观在此重点分析新增修改删除保存四个命令按钮的源代码设计新增按钮源码:PrivateSubcmdAdd_Click设置除保存和取消按钮外的其他按钮不可用cmdAdd.Enabled=FalsecmdEdit.Enabled=FalsecmdDel.Enabled=FalsecmdSave.Enabled=TruecmdCancel.Enabled=TruecmdFirst.Enabled=FalsecmdPrev.Enabled=FalsecmdNext.Enabled=FalsecmdLast.Enabled=FalsecmdQuery.Enabled=False需要清空所有text框,并且设置它们可写Fori=0To7Text1i.Text=Text1i.Enabled=TrueNextiCombo
1.Enabled=Trueadd变量用于保存时判断是从添加还是修改后保存add=1Text
10.SetFocusEndSubPrivateSubcmdCancel_Click取消按钮用于用户添加或修改过程中放弃添加或修改操作cmdSave.Enabled=FalsecmdCancel.Enabled=FalsecmdAdd.Enabled=TruecmdQuery.Enabled=True如果是从添加后取消Ifadd=1Then如果当前House表中有数据则显示第一条数据IfNotrs_house.EOFAndNotrs_house.BOFThenFori=0To7Text1i.Text=rs_house.FieldsiNextiIfrs_house.Fields8=已租ThenCombo
1.ListIndex=0ElseIfrs_house.Fields8=未租ThenCombo
1.ListIndex=1ElseIfrs_house.Fields8=意向ThenCombo
1.ListIndex=2EndIfcmdEdit.Enabled=TruecmdDel.Enabled=TruecmdFirst.Enabled=TruecmdPrev.Enabled=TruecmdNext.Enabled=TruecmdLast.Enabled=True如果没有数据,则显示空ElseFori=0To7Text1i.Text=NexticmdEdit.Enabled=FalsecmdDel.Enabled=FalsecmdFirst.Enabled=FalsecmdPrev.Enabled=FalsecmdNext.Enabled=FalsecmdLast.Enabled=FalseEndIf如果是修改后取消,则恢复到修改前的数据ElseIfadd=0ThenFori=0To7Text1i.Text=rs_house.FieldsiNextiIfrs_house.Fields8=已租ThenCombo
1.ListIndex=0ElseIfrs_house.Fields8=未租ThenCombo
1.ListIndex=1ElseIfrs_house.Fields8=意向ThenCombo
1.ListIndex=2EndIfEndIf开始时设置各个text框不可写Fori=0To7Text1i.Enabled=FalseNexti先设置ComboBox的默认值及不可改Combo
1.Enabled=FalseEndSubPrivateSubcmdClose_ClickUnloadMeEndSub删除按钮的源代码PrivateSubcmdDel_Click当单击删除记录时,需要弹出一个提示框,警告用户DimanswerAsStringanswer=MsgBox确定要删除吗?vbYesNo确实删除Ifanswer=vbYesThenrs_house.Delete删除当前记录rs_house.Update更新删除MsgBox成功删除!vbOKOnly+vbExclamationElseExitSubEndIf删除之后,显示总信息条数需要减1Text
2.Text=ValText
2.Text-1删除当前记录后,需要显示下一条记录,如果删除的是最后一条记录,则显示上一条记录先移动rs_house记录到后一条rs_house.MoveNextIfrs_house.EOFThenrs_house.MovePrevious如果没有到记录首则显示该记录IfNotrs_house.BOFThenFori=0To7Text1i.Text=rs_house.FieldsiNextiIfrs_house.Fields8=已租ThenCombo
1.ListIndex=0ElseIfrs_house.Fields8=未租ThenCombo
1.ListIndex=1ElseIfrs_house.Fields8=意向ThenCombo
1.ListIndex=2EndIf如果到记录首,则表格已经为空,置所有text框显示为空ElseIfrs_house.BOFThenFori=0To7Text1i.Text=NexticmdFirst.Enabled=FalsecmdPrev.Enabled=FalsecmdNext.Enabled=FalsecmdLast.Enabled=FalseEndIf如果删除的不是首尾记录,则显示当前记录即可ElseFori=0To7Text1i.Text=rs_house.FieldsiNextiIfrs_house.Fields8=已租ThenCombo
1.ListIndex=0ElseIfrs_house.Fields8=未租ThenCombo
1.ListIndex=1ElseIfrs_house.Fields8=意向ThenCombo
1.ListIndex=2EndIfEndIfEndSub保存按钮的源代码PrivateSubcmdEdit_Click设置除保存和取消按钮外的其他按钮不可用cmdAdd.Enabled=FalsecmdEdit.Enabled=FalsecmdDel.Enabled=FalsecmdSave.Enabled=TruecmdCancel.Enabled=TruecmdFirst.Enabled=FalsecmdPrev.Enabled=FalsecmdNext.Enabled=FalsecmdLast.Enabled=FalsecmdQuery.Enabled=False需要设置除主键之外的text框可写Fori=1To7Text1i.Enabled=TrueNextiCombo
1.Enabled=Trueadd=0EndSubPrivateSubcmdFirst_Click先移动rs_house记录到第一条rs_house.MoveFirst同时需要设置相应按钮为不可用和不可用cmdPrev.Enabled=FalsecmdFirst.Enabled=FalsecmdNext.Enabled=TruecmdLast.Enabled=True如果已经是第一条记录,则提示用户Ifrs_house.BOF=TrueThenMsgBox对不起,已经是第一条记录了!vbOKOnly+vbInformation注意ExitSub如果不是,则个数据表的记录位置移到第一条记录,并且显示之ElseFori=0To7Text1i.Text=rs_house.FieldsiNextiIfrs_house.Fields8=已租ThenCombo
1.ListIndex=0ElseIfrs_house.Fields8=未租ThenCombo
1.ListIndex=1ElseIfrs_house.Fields8=意向ThenCombo
1.ListIndex=2EndIfEndIfEndSubPREV检索按钮的源代码4.3.2客户资料管理模块的设计4.3.2.1租户基本资料的设计运行效果图如下所示:在租户基本资料中,我们重点分析查找家庭租户功能的源码,如下:PrivateSubcmdQuery_ClickIfText
1.Text=ThenMsgBox查询条件不可为空!vbOKOnly+vbInformation注意Text
1.SetFocusExitSubEndIf设置查询家庭租户变量为真querycf=Truesqlqcf=whereCombo
1.Text=Text
1.TextfrmClient.Show关闭本窗体UnloadMeEndSub4.3.2.2求租户基本资料的设计其保存按钮的源码分析如下PrivateSubcmdSave_Click检测数据是否完整IfText
10.Text=ThenMsgBox求租客户编号不可为空!vbOKOnly+vbInformation注意Text
10.SetFocusExitSubElseIfText
11.Text=ThenMsgBox求租客户姓名不可为空!vbOKOnly+vbInformation注意Text
11.SetFocusExitSubElseIfText
12.Text=ThenMsgBox求租客户电话不可为空!vbOKOnly+vbInformation注意Text
12.SetFocusExitSubElseIfNotText
14.Text=AndIsNumericText
14.Text=FalseThenMsgBox面积要求不为空则应为数字!vbOKOnly+vbInformation注意Text
14.SetFocusExitSubElseIfNotText
16.Text=AndIsNumericText
16.Text=FalseThenMsgBox意向价位不为空则应为数字!vbOKOnly+vbInformation注意Text
16.SetFocusExitSubElseIfNotText
17.Text=AndIsNumericText
17.Text=FalseThenMsgBox意向租期不为空则应为数字!vbOKOnly+vbInformation注意Text
17.SetFocusExitSubEndIf如果意向房屋编号不为空,需要检查是否存在IfNotText
18.Text=ThenDimsqlhcheckAsStringDimrs_hcheckAsNewADODB.Recordsetsqlhcheck=select*fromHousewhere房屋编号=Text
18.Textrs_hcheck.OpensqlhcheckconnadOpenStaticadLockOptimisticIfrs_hcheck.EOFThenMsgBox该房屋编号不存在,请重填或清空!vbOKOnly+vbInformation注意Text
18.SetFocusrs_hcheck.CloseExitSubEndIfrs_hcheck.CloseEndIf添加数据后保存Ifadd=1Then检测房屋编号这个主键是否已经在表中存在Dimrs_checkAsNewADODB.RecordsetDimsqlCheckAsStringsqlCheck=select*fromQZClientwhere求租客户编号=Text
10.Textrs_check.OpensqlCheckconnadOpenStaticadLockOptimisticIfNotrs_check.EOFAndNotrs_check.BOFThenMsgBox该求租客户编号已经存在,请重填一个!vbOKOnly+vbInformation注意rs_check.CloseText
10.SetFocusText
10.Text=ExitSubEndIfrs_check.Close主键不重复,可以加入表中rs_QZClient.AddNewFori=0To9rs_QZClient.Fieldsi=Text1i.TextNextirs_QZClient.Update添加之后显示总共条数信息加1Text
2.Text=ValText
2.Text+1修改数据后的保存Elsers_QZClient.UpdateEndIfMsgBox保存数据成功!vbOKOnly+vbInformation祝贺保存后需要设置其他按钮可用,以及各个text框不可写cmdAdd.Enabled=TruecmdEdit.Enabled=TruecmdDel.Enabled=TruecmdSave.Enabled=FalsecmdCancel.Enabled=FalsecmdFirst.Enabled=TruecmdPrev.Enabled=TruecmdNext.Enabled=TruecmdLast.Enabled=TruecmdQuery.Enabled=TruecmdYuDing.Enabled=TrueFori=0To9Text1i.Enabled=FalseNextiEndSub4.3.3租赁管理模块的设计4.3.
3.1签订合同的设计因租赁管理,财务管理和统计报表三个模块的窗体设计比较多,无法一一描述,故选择有代表性的窗体设计加以分析,其合同签订窗体的运行效果图如下:如图所示签订的源码设计如下:PrivateSubcmdSign_Click先检查输入数据完整性Fori=0To2IfText1i.Text=ThenMsgBox除备注外的所有项不可为空!vbOKOnly+vbInformation注意Text1i.SetFocusExitSubEndIfNextiFori=3To4IfText1i.Text=OrIsDateText1i.Text=FalseThenMsgBox日期应为这样的格式2003-7-15!vbOKOnly+vbInformation注意Text1i.SetFocusExitSubEndIfNextiIfText
16.Text=OrIsNumericText
16.Text=FalseThenMsgBox月租金应为数字!vbOKOnly+vbInformation注意Text
16.SetFocusExitSubEndIfIfText
18.Text=OrIsNumericText
18.Text=FalseThenMsgBox押金应为数字!vbOKOnly+vbInformation注意Text
18.SetFocusExitSubEndIfIfText
19.Text=ThenMsgBox业务员不可为空!vbOKOnly+vbInformation注意Text
19.SetFocusExitSubEndIfIfText
110.Text=OrIsDateText
110.Text=FalseThenMsgBox签订日期应为这样的格式2003-7-15!vbOKOnly+vbInformation注意Text
110.SetFocusExitSubEndIf止租日期不能前于起租日期IfDateValueText
14.TextDateValueText
13.TextThenMsgBox止租日期不能前于起租日期vbOKOnly+vbInformation注意Text
14.SetFocusExitSubEndIf租期等于起租日期和止租日期之差,结尾不足一月,按一月计使用datediff函数计算日期之差Text
15.Text=IntDateDiffdDateValueText
13.TextDateValueText
14.Text/31+1总租金等于月租金乘以租期Text
17.Text=ValText
15.Text*ValText
16.Text检查完数据完整性后,还需要检查该客户是否已存入租户表中,以及该房屋是否为未出租或预定状态sqlc=select*fromClientwhere租户姓名=Text
11.Textrs_ccheck.OpensqlcconnadOpenStaticadLockOptimisticIfrs_ccheck.EOF=TrueThenrs_ccheck.CloseMsgBox该客户资料还未存入租户资料表中,请先录入该客户资料!vbOKOnly+vbInformation注意ExitSubEndIfrs_ccheck.Close检测房屋状态sqlh=select*fromHousewhere房屋编号=Text
12.Textrs_hcheck.OpensqlhconnadOpenStaticadLockOptimisticIfrs_hcheck.EOF=TrueThenMsgBox该房屋编号不存在,请重新输入一个!vbOKOnly+vbInformation注意Text
12.SetFocusrs_hcheck.CloseExitSubElseIfrs_hcheck.Fields8=已租ThenMsgBox该房屋已经出租了,请选择另一房屋!vbOKOnly+vbInformation注意rs_hcheck.CloseExitSub如果该房屋状态为预定,则需要看预定人是否为该客户,如果不是,需要弹出对话框提示用户ElseIfrs_hcheck.Fields8=预定Then检查该客户是否为预定客户sqlyd=select*fromYuDingwhere预定房屋编号=Text
12.Textrs_yd.OpensqlydconnadOpenStaticadLockOptimistic如果该客户不是预定客户,检查预定有效期IfNotrs_yd.Fields1=Text
11.TextThen如果已经过了预定有效期,别的用户可以承租IfDateDateAdddrs_yd.Fields4rs_yd.Fields8Then出租,加入合同表sqlcon=select*fromContractrs_contract.OpensqlconconnadOpenStaticadLockOptimisticrs_contract.AddNewFori=0To11rs_contract.Fieldsi=Text1i.TextNextirs_contract.Update修改房屋状态rs_hcheck8=已租rs_hcheck.Update检查求租客户表中是否有该客户,如果有,则删除之sqlqzc=select*fromQZClientwhere求租客户姓名=Text
11.Textrs_qzc.OpensqlqzcconnadOpenStaticadLockOptimisticIfrs_qzc.EOF=FalseThenrs_qzc.Deleters_qzc.UpdateEndIf显示签订合同成功MsgBox签订合同成功!vbOKOnly+vbInformation注意设置签订按钮不可用cmdSign.Enabled=FalsecmdYaJin.Enabled=TruecmdZuJin.Enabled=True关闭所有打开的记录集rs_qzc.Closers_yd.Closers_hcheck.Closers_contract.CloseExitSubElseMsgBox该房屋已经被别人预定了,请选择另一房屋!vbOKOnly+vbInformation注意rs_hcheck.Closers_yd.CloseExitSubEndIf该客户即为预定客户,可以出租ElseIfrs_yd.Fields1=Text
11.TextThen出租,加入合同表sqlcon=select*fromContractrs_contract.OpensqlconconnadOpenStaticadLockOptimisticrs_contract.AddNewFori=0To11rs_contract.Fieldsi=Text1i.TextNextirs_contract.Update修改房屋状态rs_hcheck8=已租rs_hcheck.Update删除预定表中该项rs_yd.Deleters_yd.Update检查求租客户表中是否有该客户,如果有,则删除之sqlqzc=select*fromQZClientwhere求租客户姓名=Text
11.Textrs_qzc.OpensqlqzcconnadOpenStaticadLockOptimisticIfrs_qzc.EOF=FalseThenrs_qzc.Deleters_qzc.UpdateEndIf显示签订合同成功MsgBox签订合同成功!!vbOKOnly+vbInformation注意设置签订按钮不可用cmdSign.Enabled=FalsecmdYaJin.Enabled=TruecmdZuJin.Enabled=True关闭所有打开的记录集rs_qzc.Closers_yd.Closers_hcheck.Closers_contract.CloseExitSubEndIf如果该房屋状态为未租,则可以顺利出租ElseIfrs_hcheck.Fields8=未租Then出租,加入合同表sqlcon=select*fromContractrs_contract.OpensqlconconnadOpenStaticadLockOptimisticrs_contract.AddNewFori=0To11rs_contract.Fieldsi=Text1i.TextNextirs_contract.Update修改房屋状态rs_hcheck8=已租rs_hcheck.Update检查求租客户表中是否有该客户,如果有,则删除之sqlqzc=select*fromQZClientwhere求租客户姓名=Text
11.Textrs_qzc.OpensqlqzcconnadOpenStaticadLockOptimisticIfrs_qzc.EOF=FalseThenrs_qzc.Deleters_qzc.UpdateEndIf显示签订合同成功MsgBox签订合同成功!vbOKOnly+vbInformation注意设置签订按钮不可用cmdSign.Enabled=FalsecmdYaJin.Enabled=TruecmdZuJin.Enabled=True关闭所有打开的记录集rs_qzc.Closers_hcheck.Closers_contract.CloseExitSubEndIf4.3.
3.2预定租房的设计其收取定金的设计如下PrivateSubcmdDingJin_ClickfromYuding=TruecmdDingJin.Enabled=FalsefrmPayDingJin.ShowEndSub4.3.4财务管理模块的设计4.3.
4.1定金收取的设计系统维护的运行效果图如下:其收取定金按钮的源码设计如下:PrivateSubcmdAdd_Click先检测数据完整性IfText
10.Text=ThenMsgBox收费编号不可为空!vbOKOnly+vbInformation注意Text
10.SetFocusExitSubEndIfIfText
12.Text=OrIsDateText
12.Text=FalseThenMsgBox收费日期应为这样的日期格式2003-8-3!vbOKOnly+vbInformation注意Text
12.SetFocusExitSubEndIfIfText
13.Text=ThenMsgBox预定单编号不可为空!vbOKOnly+vbInformation注意Text
13.SetFocusExitSubEndIf检测该收费编号是否已存在sqlch=select*fromDingJinwhere收费编号=Text
10.Textrs_ch.OpensqlchconnadOpenStaticadLockOptimisticIfrs_ch.EOF=FalseThenMsgBox该收费编号已经存在,请重新输入一个!vbOKOnly+vbInformation注意Text
10.SetFocusrs_ch.CloseExitSubEndIfrs_ch.Close还需要检测预定单编号是否存在、并且自动写入预定客户和预定房屋编号sqlyd=select*fromYuDingwhere预定单编号=Text
13.Textrs_yd.OpensqlydconnadOpenStaticadLockOptimisticIfrs_yd.EOF=TrueThenMsgBox该预定单编号不存在!vbOKOnly+vbInformation注意rs_yd.CloseText
13.SetFocusExitSubElseText
11.Text=rs_yd.Fields3Text
14.Text=rs_yd.Fields1Text
15.Text=rs_yd.Fields2EndIfrs_yd.Close加入定金收费表sqlpay=select*fromDingJinrs_pay.OpensqlpayconnadOpenStaticadLockOptimisticrs_pay.AddNewFori=0To6rs_pay.Fieldsi=Text1iNextirs_pay.Updaters_pay.CloseMsgBox收取定金成功!vbOKOnly+vbInformation注意添加完后,需要设置收取定金按钮不可用cmdAdd.Enabled=FalseEndSub押金跟租金的收取跟定金收取的设计雷同,故不作重点描述4.3.5统计报表模块的设计在该模块中不作按钮的源码分析4.3.5.1房屋统计报表的设计其运行图如下:4.3.5.2租户信息表4.3.5.3求租客户信息表4.3.5.3租金统计表的设计统计按钮的源码分析如下:PrivateSubcmdTg_Click统计按钮按照combo2的选择进行统计下面的sql语句已用户选择的Combo
2.text分组,并且统计同一个Combo
2.text的租金sqltg=selectCombo
2.Textsum应交租金as应交租金总额sum已交租金as_已交租金总额sum欠费金额as欠费总额fromZuJingroupby_Combo
2.TextorderbyCombo
2.TextIfrs_tg.State=adStateOpenThenrs_tg.CloseEndIfrs_tg.CursorLocation=adUseClientrs_tg.OpensqltgconnadOpenStaticadLockOptimistic设置DataGrid2的数据源SetDataGrid
2.DataSource=rs_tgDataGrid
2.RefreshEndSub第五章主菜单的设计及系统连编
5.1主菜单的设计在实际的系统设计中菜单可分为两种类型即下拉式菜单和弹出式菜单下拉式菜单系统中一般有一个主菜单其中包括若干个选择项.主菜单单的每一项又可下拉出下一级子菜单.这样用一个个的窗口的形式弹出在屏幕上它是通过菜单编辑器建立其步骤如下:1选取要建立菜单的窗体2从“工具”菜单中选取“菜单编辑器”建立如下图所示的系统主菜单:可以看出菜单系统的建立比较直观因此不作重点描述一个典型的数据库应用程序由数据结构,操作界面,查询选项和报表打印等组成在设计应用程序时,应仔细考虑每个组件提供的功能以及与其他组件之间的关系设计好的功能模块制作完毕后,单击全编译执行在确认无误后单击文件菜单下的生成工程得到一个.EXE的可执行程序.到此一个完整的系统设计完成.
5.2系统的编译与发行系统各功能模块设计完毕之后接下来的工作是对当前所设计的系统进行打包处理选“文件”里面的生成房屋租赁管理系统.exe菜单,编译通过以后就成为可执行文件需要注意的是,生成的可执行文件应该和数据库文件放在同一个文件夹里面,否则运行是会出现找不到文件的错误使用vb
6.0中的’packagedeployment工具发布第六章毕业设计小结经过一个多月的努力毕业设计终于完毕,在这段学习时间里,虽然遇到过困难,也看到了希望,房屋租赁管理系统的设计,让我又学到了一门技术,虽然还掌握得不够精通,但还是有一定的认识和了解,对于我将来的学习是有价值的本系统的功能基本符合设计需求,能够完成房屋租赁信息的存储和查询以及各类相关报表统计使用户方便进行数据输入、修改、删除等管理措施对于数据的一致性的问题也通过程序进行了有效的解决在系统设计过程中,我体会到了即使是一件小事也不能马虎,在设计之前一定要对所设计的系统有较为深刻地了解并对用户的要求加以认真的分析并给予分类对所分类进行功能模块化设计画出系统数据流图流程图和结构图.这样在进行详细设计时才可以做到有条不紊一步一步地进行.编制一个系统还是有很多可学习的地方,不仅要掌握好相关知识,而且做事要细心,谨慎,这也是将来工作和学习应该注意的地方总的来说,通过这次课题,我也同时学到了技术层面以外的知识,那就是在建立应用程序上的流程定出研究方向,收集资料,分析资料,确定项目,实现分析,提出实现方案,程序编辑,程序调试,程序修改,程序增添等等的步骤这些都使我认识到建立应用程序不是一件随便的事情,它有一个系统的、严密的、逻辑的工作流程,将来的社会是竞争激烈的社会,特别是计算机行业,要不断的学习,再学习,才可以把自己融入社会的发展中,所以在工作过程中,要不断的充电,才可以更好的体会自己人生的价值由于本人的水平有限,在文章中难免有错误,和不足之处,望评审老师和同学们批评指正在本次毕业设计中,我从指导老师身上学到了很多东西,取人之长,补已之短指导老师认真负责的工作态度,严谨的治学精神和深厚的理论水平都使我受益匪浅他无论在理论上还是在实践中,都给与我很大的帮助,使我得到不少的提高这对于我以后的工作和学习都是一种巨大的帮助和财富忠心感谢指导老师的耐心的辅导在此我向他们至以最高的敬意.参考文献
[1]邵洋、谷宇、何旭洪编著.VisualFoxPro
6.0数据库系统开发实例导航(第二版)人民邮电出版社
[2]卢湘鸿主编.VisualFoxPro
6.0数据库与程序设计电子工业出版社,2002年11月
[3]郭赢发,张红娟,赵伟华《VisualFoxPro
6.0及其程序设计》,西安电子科技大学出版社,2001
[4]郭赢发,《数据库原理与应用》(修订版)西安电子科技大学出版社,1999
[5]翁正科,《VisualFoxPro
6.0数据库开发教程》清华大学出版社,1999
[6]C.D.Date《数据库系统导论》机械工业出版社2000
[7]HectorGarcial-MolinaJeffreyD.UllmanJenniferWidom《数据库系统实现》2001
[8]林陈雷郭安源葛晓东《教育信息化系统开发实例导航》人民邮电出版社2003致谢在我完成毕业设计和论文前前后后,始终得到了XXXX的大力支持和帮助,在这里我要特此感谢!还有和我一起讨论的同学们和老师,我的许多的认识就是和他们的讨论中获得的,在这里也要表示感谢!航院徐博制作整理上传历史合同现有合同历史租户预定单统计基本资料基本资料基本资料基本资料应用程序3应用程序2数据库数据库管理系统应用程序1租金收取定金收取财务管理财务财务管理定金退还合同签定预定到期提醒出租到期提醒预定单查询合同查询预定租房合同管理合同续签求租客户资料租金管理押金收取租户基本资料房屋基本管理统计报表财务管理租赁管理求租客户登记信息租户求租资料押金管理合同签订基本资料统计报表财务财务管理押金退还下定金,预定管理定金管理基本信息输入房屋登记客户资料基本资料房屋租赁管理系统房屋统计求租客户租户信息表定金统计租金统计PAGE45。