小区物业信息管理系统_第1页
小区物业信息管理系统_第2页
小区物业信息管理系统_第3页
小区物业信息管理系统_第4页
小区物业信息管理系统_第5页
已阅读5页,还剩45页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

word文档可自由复制编辑word文档可自由复制编辑 摘要随着市场经济的迅速发展和人们生活水平的不断提高,住宅式小区已经成为人们安居乐业的首选起始点。住宅小区规模的不断扩大和住户的不断增多,相关物业信息的管理质量和档次就受到越来越多的关注。而随着计算机科学技术的日益普及,利用计算机来实现小区物业信息的管理势在必行。这套小区物业信息管理系统通过实际的需求分析,对小区各项常见的业务包括物业设备,停车场,设备维护和修理等及小区房产和住户的基本信息进行智能化的管理,采用成熟简单容易操作的VISAULBASIC作为开发工具,采用SQLServer做后台数据库,整个系统操作简便,界面友好,灵活使用,更高效安全。本论文详细的论述了该小区物业信息管理系统的需求分析,系统分析,系统开发和实现等步骤和过程。关键词:物业信息管理;信息系统;VISAULBASIC;需求分析ABSTRACTWiththerapiddevelopmentofthemarketeconomyandthegreatraiseofpeoplelivingconditions,dormitoryhasbecametheprinciplechoiceofpeopletosettledownandstartwiththeirenterprises.Theenlargedareaofthedormitoryandtheincreasednumberofresidentsmakethequalityandgradeofthemanagementofcorrelativeestateinformationbepaidmoreattention.Meanwhile,withthepopularizationofthecomputertechnology,itismoreurgenttousecomputertoactualizetheintelligentmanagementandmaintenance.Thisestateinformationmanagementsystemcollectsactualanddetailedrequirementsfromcommonvarietiesofbusinesssuchasfacilitiesequipments,parking,operationandmaintenanceofequipmentsandbasicinformationofresidentsanddormitory,useVISUALBASICastheexploittoolandSOLservertoestablishthedatabase.Thispaperdetaileddiscusstheanalysisofrequirements,analysisandactualizationofthesystemandotherprocesses.Keywords:theEstateManagementSystem;VISUALBASIC;Requirementsanalysis目录摘要 IABSTRACT II第1章引言 11.1开发背景 11.2研究内容 2第2章开发工具简介 32.1VisualBasic简介 32.1.1概述 32.1.2显示编辑数据 32.1.3应用程序体系结构 32.1.4数据库工具的支持 32.1.5VisualBasic6.0的特点主要体现 42.1.6数据控件简介 42.2SQLServer数据库简介 52.2.1SQLServer概述 52.2.2数据库管理概述 52.2.3表的介绍 6第3章系统需求分析 93.1系统开发方案和目标 93.2可行性分析 103.3系统功能分析和设计 10第4章数据库设计 144.1主要数据流 144.2数据库概念结构设计 144.3数据库逻辑结构设计 19第5章系统的实现 265.1建立系统主窗体: 265.2住户资料管理窗体的设计 275.3查询住户窗体的设计 295.4表格形式显示住户资料窗体的设计 315.5房产资料窗体的设计 325.6物业设备管理窗体的设计 345.7仪表数据管理窗体的设计 365.8收费管理窗体的设计 385.9仪表数据统计窗体的设计 40第6章结束语 43致谢 45参考文献 46第1章引言1.1开发背景小区物业信息管理的定义已明确为物业管理企业要为全体业主和用户提供服务。在诸多物业的公共契约里都载有这样一个条款:物业管理的根本宗旨是为全体业主和用户提供及保持良好的生活、工作环境,并尽可能满足他们的合理要求。随着市场经济的迅速发展和人们生活水平的日益提高,住宅式小区已经毫无疑问的成为人们首选的安居置业的起点和开始。住宅本身的质量和档次,小区整体的美感和环境已经不再是住户们唯一关心的选择标准,小区物业的完善管理和周到服务也渐渐成为住户们非常在意的焦点,对其的要求也是越来越高、越来越细。同时,小区规模的无限扩大和住户的不断增加,小区的停车问题,附带设施的维护问题,住户们的报修投诉问题等等工作也变的更加琐杂和繁重,人们一直以来依赖的传统的人工管理模式已经慢慢的跟不上如此快速发展的时代脚步,而科学技术的飞速提高,计算机科学技术的日渐成熟和其越来越广泛的应用普及,让它强大的功能很及时很到位的解决了那些人工操作和管理所力不能及的难题。信息管理系统是计算机网络技术及多媒体技术的发展和普及的成果。现代化的管理方法和组织运作模式,无不渗透着先进信息技术和方法的应用,信息管理与信息系统已经成为现代企业组织必不可少的一部分,社会迫切需要既懂计算机及信息处理技术,又懂得经济、经营和管理知识的高级复合型人才。这套小区物业信息管理系统的开发和实现是针对小区各项事物包括物业和基本资料等业务工作,利用计算机进行集中管理和规划,通过前台的VB窗体设计及后台SQLserver连接数据库进行数据和信息的管理和处理。利用计算机来完成繁重的物业设备管理,仪表数据管理,停车场的管理,住户的报修投诉和反馈信息的管理等等,很大程度的减少了人力,物力和财力的投入,并节约了小区物业资源,解放了物业管理者被如此困难繁重的工作量所困束,使整个小区的管理和运营趋于自动化智能化。所以,开发这样一套小区物业信息管理系统是十分有需要和必要的。1.2研究内容论文主要研究对小区物业信息管理系统的需求分析和总体设计,划分功能模块对系统流程进行总体规划。根据实际的需求,要求该系统具有总体的8项功能,包括对系统安全性的管理,对住户和房产的基本资料的管理,对物业设备和社区设施维修的管理,对仪表数据的管理,对停车场的管理,对相关收费的管理,对用户投诉,报修和维修等项目的管理及对各项数据的统计和管理。根据类型的不同,具体可将上述8项功能分为四大模块:登陆系统管理模块,包括用户注册,密码修改等部分;基础资料管理模块,包括住户资料和房产资料等的查询和管理;小区各项常见业务管理模块,包括物业设备,停车场,用户报修信息,收费等;数据统计管理模块,包括设备统计,仪表统计,收费统计等。通过这套系统,可以实现对小区物业信息的智能化和电子化管理,不仅提高了小区物业管理的档次和质量,还在相当程度上节约了在管理上的财力投入和人力资源,极大的提高了社会效益和经济效益。第2章开发工具简介2.1VisualBasic简介2.1.1概述VisualBasic以它基于窗口和面向对象的编程方法,与Windows操作系统紧密的结合,强大的数据库技术支持,迅捷的编译速度,同时具备易学灵活的特点,一直为程序员所偏爱。尤其重要的是,VisualBasic非常擅长数据库编程,因为它适应多种数据库结构,从客户机/服务器模式,到多层数据库模式,另外大量的控件给开发数据库应用程序提供了极大的便捷。因此使用VisualBasic作为数据库应用程序开发的工具是编程人员最好的选择之一。在谈到VisualBasic数据库系统时,首先应该介绍Boland公司的数据库引擎(BolandDatabaseEngine,简称为BDE)。Boland公司没有采用Microsoft制定的ODBC标准,而是自行开发了BDE数据库引擎。2.1.2显示编辑数据组件板[Datacontrols]选项卡上的组件称为数据控制组件,用于显示数据库的数据,并且让用户编辑数据并保存到数据库中。数据控制组件构成了数据库应用程序的用户界面。数据控制组件要通过数据源(DataSource)组件与数据库连接。同一窗体中的多个数据控制组件可以连接到同一数据源组件上,这些数据控制组件能保持同步,因为数据控制组件总是显示当前记录的数据。数据源组件一般放在数据模块上,与用户界面分开。数据控制组件有好几种,使用那个数据控制组件取决于要显示的数据的类型,也取决于怎样组织这些信息、怎样让用户浏览信息和怎样让用户编辑数据的方式。2.1.3应用程序体系结构根据数据库应用程序时使用本地数据库还是远程数据库,是单用户访问还是多用户访问,同时访问数据库的用户数以及需要存储的信息类型,数据库应用程序的体系结构可分为单层体系结构、双层体系结构和多层体系结构三种不同的体系结构。例如,所谓单层体系机构,是应用程序和数据库处于同一操作系统中,应用程序通过本地数据库或数据库文件来存取数据。由于使用本地数据库,故可获得较快的访问速度。2.1.4数据库工具的支持数据库(DataBase)是数据管理的工具。数据库是相互关联的集合,他用综合的方法组织数据,具有较小的数据冗余,可供多个用户共享,具有较高的数据独立性,具有安全控制机制,能够保证数据的安全、可靠,允许并发地使用数据库,能有效、及时地处理数据,并能保证数据的一致性和完整性。数据库管理系统(DataBaseManagementSystem,简称DBMS)的任务是对数据源进行管理,并且使之能为多个用户共享,同时还能保证数据的安全性、可靠性、完整性、一致性,还要保证数据的高度独立性。数据库管理系统的工具比较多,如SQLServer、Oracle、Access等。具体来说,一个数据管理系统具备如下功能:·数据库定义功能:可以定义数据库的结构和数据库的存储结构,可以定义数据库中数据之间的联系,可以定义数据的完整性约束条件和保证完整性的触发机制等;·数据库操纵功能:可以完成对数据库中数据的操纵,可以装入、删除、修改数据,可以重新组织数据库的存储结构,可以完成数据库的备份和恢复等操作;·数据库查询功能:可以以各种方式提供灵活的查询功能,使用户可以方便地使用数据库中的数据;·数据库控制功能:可以完成对数据库的安全性控制、完整性控制、多用户环境下的并发控制等各方面的控制;·数据库通信功能:在分布式数据库或提供网络操作功能的数据库中还必须提供数据库的通信功能。2.1.5VisualBasic6.0的特点主要体现VisualBasic6.0的特点主要体现在两大块:新语言的扩充和数据库的应用开发能力增强。前者表现为动态数组,方法重载和默认参数,后者则是表现在增加的数据库组件,可访问远程和本地数据库及网络,对其他数据库开发工具的完全支持,可更好的支持Client/Sever数据库应用程序开发和客户数据集的增强5个方面。2.1.6数据控件简介数据控件是用于显示和编辑数据库中的数据,因而又被称为数据浏览控件。它们在常用控件工具条中的DataControls页上.数据控件是设计用户接口中最重要的部分,这些控件的功能和用途如下:·DBGrid用网格的形式显示来自数据源中的数据,可以在设计时使用字段编辑器,或者在运行时制定网格的列。·DBText显示当前记录特定字段的数据值。·DBEdit使用编辑框来显示和编辑当前记录中的特殊字段的值。·BEdit显示字段类型的备注类型的数据库数据。·DBComboBox下拉列表框,既可直接输入又可选择一个值来更新记录。·DBChart用于显示数据库中有关数据汇总的图形和表。2.2SQLServer数据库简介2.2.1SQLServer概述MicrosoftSQLServer是一种介于客户机/服务器的关系型数据库管理系统,它使用Transact_SQL语句在服务器和客户机之间传送请求。SQLServer使用客户机/服务器体系结构把所有的工作负荷分解成在服务器机器上的任务和在客户机机器上的任务。客户机应用程序负责商业逻辑和向用户提供数据,一般运行在一个或多个客户机机器上,但是也可以运行在服务器上。服务器管理数据库和分配可用的服务器资源,例如内存,网络带宽和磁盘操作。客户机应用程序届容许应用程序在单独的客户机上运行,并且通过网络与服务器通信。2.2.2数据库管理概述数据库是存放数据的地方,是数据库管理系统中的最重要的组成部分之一。在客户机/服务器数据库系统中,有两个主要的组成部分,这就是程序和数据结构,程序是为基于客户机的用户访问数据提供一个用户界面,而数据库结构是用来管理和存储服务器上的数据。数据库组件主要包括:数据库,表,数据库图表,索引,视图,存储过程和触发器等。数据库主要是存储了数据的表的集合以及其它的数据库对象。数据类型的具体分类如下:·字符数据类型包括:Char,Varchar和Text,字符数据是由任何字母符号和数字任意组合而成的数据。Varchar是变长数据类型,其长度不超过8kb。Char是定长数据类型,其长度最多为8kb。超过8kb的ASCII数据可以使用Text数据类型存储。·Unicode数据类型包括:Nchar,Nvarchar和Ntext。在Unicode标准中,包括了以各种字符集定义的全部字符。使用Unicode数据类型,所占用的空间是使用非Unicode数据类型所占用的空间的大小的两倍。在SQLSever中,Unicode数据以Nchar,Nvarchar和Next数据类型存储。使用这种字符类型存储的列可以存储多个字符集中的字符。当列的长度变化是,应该使用Nvarchar字符类型,这是最多可以存储4000个字符,当列的长度固定不变时,应该使用Nchar字符类型,同样,这是最多可以存储4000个字符。当使用Next数据类型时,该列可以存储多于4000个字符。·日期和时间数据类型包括:Datatime和Smalldatatime两种类型,日期和实间数据类型由有效的日期和时间组成。日期的格式可以设定,设置日期格式的命令如下:SETDATEFORMAT{format|@format_var}·数字数据类型包括:正数,负数,小数和整数,整数由正整数和负整数组成,在MicrosoftSQLSever中,整数存储的数据类型是Int,Smallint,Tinyint。使用Int数据类型时,存储数据的范围是-2147483648到2147483647。使用Smallint数据类型时,存储数据的范围是从-32768到32767。使用Tinyint数据类型时,存储数据的范围是从0到255。精确小数数据在SQLSever中的数据类型是,Decimal和Numeric。这种数据所占的存储空间根据该数据的位数和小数点后的数据来确定。在SQLSever中,近似小数数据的类型是float和real。2.2.3表的介绍在数据库的开发中,因该把一个个表规划合理,设计准确,完整实现,这是数据库开发的基础。古人云:“不积跬步,无以至千里;不积小流无以成江海。”这段话说明了一个道理,无论做什么事,都要从小事做起。对数据库管理系统来说也是这个道理。无论是如何庞大的系统,无论是如何复杂的系统,都是一步步地从系统的各个组成部分做起。如果数据库管理系统是“千里”那么数据库中的表就是“小流”。表是数据库中的主要对象,用来存储各种各样的信息。表具有以下特征:·表代表实体,由唯一的名称,该名称用来确定实体。·表示有行和列组成的,行有时也称为记录,列有时也成为字段或者域。美以行都是对实体的一个完整描述,每一个字段都是对该实体的一种属性的描述。·行的顺序可以是任意的,一般是按照数据插入的顺序存储的。·列的顺序也可以是任意的,对使用是没有影响的。·表名在一个数据库中的唯一属性是由SQLSever强制实现的。列名也是一样,行在一个表中的唯一性一般是由用户通过增加列的主键来强制实现的,即在一个表中,应该没有相同的两行出现。表是数据库中的主要对象,用来存储各种各样的信息。针对表的管理,具体操作如下:1、创建表CREATTABLEtable_name({<column_definition>|column_nameAScomputed_column_expression|<table_constraint>}[,…..n])[ON{filegroup|DEFAULT}][TEXTIMAGE_ON{filegroup_DEFAULT}]2、修改表ALTERTABLEtable{ADD{[<column_definition>]|column_nameAScomputed_column_expression|[<table_constraint>]}[,…n]|DROP{COLUMNcolumn}[,…n]}3、向表中插入数据INSERT[INTO]{table_name|view_name}[(column_list)]{VALUES|values_list|select_statement}4、修改表中的数据UPTATE{table_name|view_name}SET{column_list}=expression[,…][WGEREclause]5、删除表中的数据DELETE[FROM]table-nameWHEREsearch_conditions6、删除表DROPTABLEtable_name另外,查询语句SELECT对于SQLSever数据库来说,检索数据都要使用SELECT语句。因此,SELECT语句可以说是最经常使用的SQL语句。SELECT语句的作用是把数据库中的数据检索出来,SELECT语句SELECT[ALL|DISTINCT]select_list[INTO[new_table_name]]FROM{table_name|view_name}[[,{table_name|view_name|[,…]}[WHEREclause][GROUPBYclause][HAVINGclause][ORDERBYclause][COMPUTEclause][FORBROWSE]第3章系统需求分析3.1系统开发方案和目标该小区物业信息管理系统是希望通过计算机实现对小区繁杂的物业信息进行智能化和自动化的管理,通过总的需求分析得到系统流程图如3-1所示:信息管理程序物业信息管理库事务信息管理程序物业信息管理库事务统计查询报表统计查询报表图3-1系统流程图系统开发的总体任务是实现各种信息的系统化,规范化和自动化。通过对某小区的调查,获知小区物业管理系统应具备以下功能:(1)对小区所有房屋资料的录入和增,删,改,查询等功能的实现,这是一个小区管理的基础,小区管理都是基于该小区的房产资源而产生的。(2)对本小区内住户的详细资料的管理,包括增,删,改,查询等功能的实现,这也是物业管理产生的基础,物业管理都是相对该小区的所有住户而言的。(3)有了上述资料后,需要实现实质性的物业管理,本系统主要实现物业设备管理,仪表包括水,电,气表数据管理,收费管理,住户投诉管理,住户报修管理,设备维修管理,停车场管理,这些基本的物业管理功能构成了小区物业管理的主体,其中与住户密切的是仪表数据和收费管理,仪表数据管理模块管理每个住户的水,电,气表的资料,统计住户每月的用量以及需要交纳的费用,收费管理记录物业公司对住户的每一笔收费,包括水,电,气等使用费用和物业管理费用,物业维修费用等费用。住户投诉管理和住户维修管理分别记录住户对物业公司的不满的投诉和针对各种设施向物业公司的报修,物业设备和设备维修管理则是对一些整个小区的公共设施的管理和维修记录,比如小区大门和小区里户外的健身器材。(4)各种物业统计报表,包括物业设备统计报表,所有住户的水,电,气仪表资料的统计,各种收费统计,住户投诉统计,住户报修统计,物业设备维修统计等。这样以便物业公司对整个小区的物业管理情况有个全面的了解。3.2可行性分析通过前面所作的工作,我们对系统应该具有的基本功能和所受的约束,已有一定的了解。对于本系统的可行性,我们从以下三方面进行研究:·技术可行性:现有的技术完全可以实现本系统。我们用客户/服务器结构来实现网络环境。选择VisualBasic6.0和SQLSERVER2000这两个流行软件作为我们的开发软件。选择VisualBasic6.0是因为这门语言算是我们比较熟悉的语言之一,并且用VB开发界面比较方便快捷而且界面美观大方。选择SQLSERVER作后台数据库是因为它本身就是大型数据库管理软件,功能强大,而且它也是微软的产品,和VB的兼容性好。·经济可行性分析:这个系统一旦投入使用,将会给贸易公司带来前所未有的方便和快捷。不但会提高工作效率,减少不必要的中间环节以及不必要的开支,而且可以给其带来更大的利润。总之,这个系统的经济效益远远大于开发成本。·操作可行性:VisualBasic提供的人机界面使得操作人员和计算机能够进行准确的交流信息,只要具备计算机基础知识,经过一两天的培训即可熟练地使用该系统。对系统维护人员的要求较高,要求熟悉Delphi,能够解决操作员提出的使用问题,并协助系统开发人员根据用户要求对系统进行升级,维护。3.3系统功能分析和设计建立起规范完善的物业信息系统,搭建居住者和物业公司之间进行沟通的桥梁。系统具体具备的动能包括:·物业管理(系统):实现用户注册、登录、密码修改,等功能并对其权限进行控制以方便不同用户对其信息进行操作,便于归档查询统计,也保障了系统的安全性。其中包括的注册/登录信息有登录名,登陆密码,用户描述等。·住户信息管理:实现对入住业主信息的录入,管理和查询的功能。业主信息管理包括业主ID,业主姓名,出生年月,籍贯,性别,工作单位及地址,邮编,身份证号码,联系电话,开户银行,银行帐号,入住时间,迁出时间等。·房产信息管理:实现对小区房产信息的录入,管理和查询的功能。房产信息管理包括房间编号,物业地址,建筑面积,使用面积,转修情况,单价,总价,是否已经售出,买主编号,买主姓名,备注等。·物业设备管理:实现对小区物业设备的录入,管理和查询的功能。物业设备管理包括设备编号,设备名称,型号,品牌,所属部门,购买日期,事故记录等。·仪表数据管理:实现对小区物业仪表数据的录入,管理和查询的功能。仪表数据管理包括的主要内容有仪表编号,住户姓名,物业地址,年份,月份,上月数据,本月数据,本月用量,单价,本月费用,上月抄表日期,本月抄表日期,本月交费日期,办理人等。物业对住户的仪表管理包括水表,电表,气表。·停车场管理:实现对小区物业仪表数据的录入,管理和查询的功能。停车场管理主要包括车位编号,车位位置,停车住户,物业地址,使用日期,备注等。·收费管理:实现对小区物业管理收费,仪表使用情况收费的录入,管理和查询的功能。收费管理主要包括收费编号,住户姓名,物业地址,年份,月份,收费项目,收费方式,应收总额,已交金额,欠款金额,交费日期,办理人,备注等。·住户投诉管理:实现对小区住户投诉的录入,管理和查询的功能。住户投诉管理主要包括投诉编号,投诉日期,接待人,投诉住户,物业地址,电话,处理日期,处理人员,投诉内容,处理情况等。·用户报修管理:实现对小区用户报修的录入,管理和查询的功能。用户报修管理主要包括报修编号,报修日期,接待人,报修住户,物业地址,电话,完成日期,维修人员,服务费用,屋料费用,合计费用,报修内容,维修情况等。·物业设备维修管理:实现对小区物业设备维修的录入,管理和查询的功能。物业设备维修管理主要包括维修编号,设备编号,设备名称,维修日期,完成日期,维修费用,维修人员,维修内容,维修情况等。·数据统计:实现对小区各种数据统计:包括:设备统计,仪表统计,收费统计,住户投诉统计,设备报修和设备维修统计。概括以上列举的各项功能,得到系统功能模块图如下:图3-2系统功能模块部分图图3-3系统功能模块部分图另外,数据统计和管理的功能模块图也单独列出如下:数据统计管理数据统计管理仪表数据统计收费统计物业设备统计住户投诉统计住户报修统计设备维修统计仪表数据统计收费统计物业设备统计住户投诉统计住户报修统计设备维修统计图3-4报表统计模块图用户的需求具体体现在各种信息的提供、保存、更新和查询,这就要求数据库结构功能充分满足各种信息的输入和输出。根据对小区物业信息的需求,得出本系统所处理的数据流程图入下:申请装修水电气读表业主入户房屋签约申请装修水电气读表业主入户房屋签约填写收费单物业管理填写收费单物业管理交水电气费交水电气费装修装修业主业主通知通知图3-5系统数据流程图第4章数据库设计4.1主要数据流用户表={序号+登录名+登陆密码+用户描述}住户表={住户编号+物业地址+房型+建筑面积+使用面积+业主名称+籍贯+工作单位+邮编+身份证号+电话+开户银行+银行帐号+入住时间+迁出时间+性别}房产资源表={房间编号+物业地址+建筑面积+使用面积+房型+装修情况+单价+总价+买主+备注+是否已售出}物业设备表={设备编号+设备名称+型号+品牌+所属部门+购买日期+事故记录}停车场信息表={车位编号+车位位置+停车住户+物业地址+开始日期+截止日期+备注}住户投诉表={投诉编号+投诉日期+接待人员+投诉住户+物业地址+电话+处理日期+处理人员+投诉内容+处理情况}住户报修表={报修编号+报修日期+接待人员+报修住户+物业地址+电话+完成日期+维修人员+服务费用+物料费用+合计费用+报修内容+维修情况}设备维修表={维修编号+设备编号+设备名称+维修日期+完成日期+维修费用+维修人员+维修内容+维修情况}仪表资料表={仪表编号+住户姓名+物业地址+年份+月份+上月资料+本月用量+单价+本月费用+上月抄表日期+本月抄表日期+办理人}物业收费表={收费编号+住户姓名+物业地址+年份+月份+收费项目+收费方式+应收总额+已交金额+欠费金额+交费日期+办理人+备注}仪表收费表={收费编号+住户姓名+物业地址+年份+月份+收费项目+收费方式+应收总额+已交金额+欠费金额+交费日期+办理人+备注}4.2数据库概念结构设计根据上面的数据项和数据结构,设计出能够满足用户需求的各种实体,以及它们之间的关系。设计规划出的实体有:住户实体,房产资源实体,物业设备实体,停车场实体,住户投诉信息实体,住户报修实体,设备维修实体,仪表信息实体,物业收费信息实体。各实体之间的联系图如4-1所示:图4-1实体之间ER图各个实体具体的属性图如下:住户实体住户实体入住时间住户编号入住时间住户编号物业地址业主姓名物业地址业主姓名图4-2住户实体属性图房产资源实体房产资源实体总价总价建筑面积物业地址房间编号建筑面积物业地址房间编号图4-3房产资源实体信息实体属性图物业设备实体物业设备实体所属部门设备编号所属部门设备编号型号设备名称型号设备名称图4-4物业设备实体属性图停车场信息实体停车场信息实体截止日期车位编号截止日期车位编号开始日期车位位置开始日期车位位置图4-5停车场信息实体属性图住户投诉信息实体住户投诉信息实体投诉编号投诉编号投诉内容投诉内容处理人员投诉住户处理人员投诉住户图4-6住户投诉信息实体属性图住户报修信息实体住户报修信息实体报修内容报修编号报修内容报修编号物业地址报修住户物业地址报修住户图4-7住户报修实体属性图设备维修信息实体设备维修信息实体维修情况维修情况维修内容设备编号维修编号维修内容设备编号维修编号图4-8设备维修信息实体属性图仪表信息实体仪表信息实体本月数据仪表编号本月数据仪表编号上月数据住户姓名上月数据住户姓名图4-9仪表信息实体属性图物业收费实体物业收费实体年份,月份收费编号年份,月份收费编号收费项目住户姓名收费项目住户姓名图4-10物业收费实体属性图4.3数据库逻辑结构设计逻辑结构设计的任务就是把概念结构转换为与筛选的DBMS所支持的数据模型相符合的过程。该系统的逻辑结构就是将概念结构(基本E-R图)转换为SQLSERVER所支持的关系型数据模型,具体转换规则如下:(1)基本E-R图转换为SQLSERVER所支持的关系型数据模式(表),实体的属性就是关系的属性,实体的码就是关系的码。(2)在占用设计过程中,运用规范化理论与方法对实体尽量分解成BCNF模式。(3)一个联系转化为一个关系模式,与该联系相连的各实体的码,以及联系的属性转化为关系属性,对象同码的关系模式进行合并。根据上述转换原则对该系统的实体进行了分解,同时,采用数据字典的方式对该系统的逻辑结构进行描述。参见该系统数据库字典。表4-1用户资料表字段名数据类型长度是否为空用户名char10Notnull密码char10Null姓名varchar20Null注册时间datetime8Null表4-2住户资料表字段名类型长度是否为空住户编号char10Notnull物业地址varchar50Null房型char10Null建筑面积numeric9{10,2}Null使用面积numeric9{10,2}Null业主姓名char10Null籍贯varchar50Null工作单位varchar50Null邮编char10Null身份证号varchar20Null电话varchar20Null开户银行varchar50Null银行帐号varchar20Null入住时间datetime8Null迁出时间varchar50Null性别char2Null表4-3房产资料表字段名类型长度是否为空房间编号char10Notnull物业地址varchar50Null使用面积numeric9{10,2}Null房型char10Null装修情况varchar50Null单价money8Null总价money8Null买主编号char10Null买主姓名char10Null备注varchar50Null是否已售出char10Null表4-4设备资料表字段名类型长度是否为空设备编号char10Notnull设备名称varchar50Null型号varchar20Null品种varchar20Null所属部门char10Null购买日期datetime8Null事故记录varchar200Null表4-5停车场资料表字段名类型长度是否为空车位编号char10Notnull车位位置varchar50Null停车住户varchar50Null物业地址varchar50Null开始日期varchar20Null截止日期varchar20Null备注varchar50Null表4-6住户投诉表字段名类型长度是否为空投诉编号char10Notnull投诉日期datetime8Null接待人员char10Null投诉住户char10Null物业地址varchar50Null电话varchar20Null处理日期varchar20Null处理人员varchar50Null投诉内容varchar250Null处理情况varchar250Null表4-7住户报修表字段名类型长度是否为空报修编号char10Notnull报修日期datetime8Null接待人员char10Null报修住户char10Null物业地址varchar50Null电话varchar20Null完成日期varchar50Null维修人员varchar20Null服务费用char10Null物料费用varchar50Null合计费用varchar50Null报修内容varchar250Null维修情况varchar250Null表4-8维修资料表字段名类型长度是否为空维修编号char10Notnull设备名称varchar50Null维修日期datetime8Null完成日期varchar50Null维修费用varchar50Null维修人员varchar50Null维修内容varchar250Null维修情况varchar250Null表4-9水力资料表字段名类型长度是否为空仪表编号char10Notnull住户姓名char10Null物业地址varchar50Null年份int4Null月份int4Null上月数据numeric9{10,2}Null本月数据numeric9{10,2}Null本月用量numeric9{10,2}Null单价numeric9{10,2}Null本月费用numeric9{10,2}Null上月抄表日期datetime8Null本月抄表日期datetime8Null本月交费日期datetime8Null办理人char10Null表4-10电力资料表字段名类型长度是否为空仪表编号char10Notnull住户姓名char10Null物业地址varchar50Null年份int4Null月份int4Null上月资料numeric9{10,2}Null本月资料numeric9{10,2}Null本月用量numeric9{10,2}Null单价numeric9{10,2}Null本月费用numeric9{10,2}Null上月抄表日期datetime8Null本月抄表日期datetime8Null本月交费日期datetime8Null办理人char10Null表4-11煤气资料表字段名类型长度是否为空仪表编号char10Notnull住户姓名char10Null物业地址datetime50Null年份int4Null月份int4Null上月资料numeric9{10,2}Null本月资料numeric9{10,2}Null本月用量numeric9{10,2}Null单价numeric9{10,2}Null本月费用numeric9{10,2}Null上月抄表日期datetime8Null本月抄表日期datetime8Null本月交费日期datetime8Null办理人char10Null表4-12物业收费资料表字段名类型长度是否为空收费编号char10Notnull住户姓名char10Null物业地址varchar50Null年份int4Null月份int4Null收费项目varchar50Null收费方式varchar50Null应收总额numeric9{10,2}Null已交金额numeric9{10,2}Null欠费金额numeric9{10,2}Null交费日期datetime8Null办理人char10Null备注varchar250Null表4-13仪表收费资料表字段名类型长度是否为空收费编号char10Notnull住户姓名char10Null物业地址varchar50Null年份int4Null月份int4Null收费项目varchar50Null收费方式varchar50Null应收总额numeric9{10,2}Null已交金额numeric9{10,2}Null欠费金额numeric9{10,2}Null交费日期datetime8Null办理人char10Null备注varchar250Null第5章系统的实现5.1建立系统主窗体:本系统的主窗体是一个多文文件(MDI)窗体,使用MDI窗体可以使程序条理清晰,井然有序,MDI窗体是父窗体,它负责整个程序的启动和关闭,其他窗体都是它的子窗体,一个应用程序只能有一个MDI窗体,但可以拥有多个子窗体。单击“工程”,“添加MDI窗体”菜单,添加好MDI窗体后,如表所示设置其各项属性:表5-1MDI属性表窗体属性取值NameMDIfrmMainCaption小区物业管理系统Startupposition2-屏幕中心Windowstate2-Maximized单击“工程”,“工程属性”菜单,将启动对象选择MDIfrmmain项,将这一多文件窗体作为程序的启动窗体,在“工程名称”中输入项目名称:小区物业管理系统。图5-1主菜单界面在主窗体中主要负责打开和关闭对数据库的连接。打开数据库连接的代码如下:PrivateSubMDIForm_Load()'在主窗体中打开对数据库的连接Setconn=NewConnectionconn.ConnectionString="driver={sqlserver};server=(local);database=xqwyglvb"conn.Open……EndSub再添加以下代码,使得关闭程序的同时关闭对数据库的连接。PrivateSubMDIForm_Unload(CancelAsInteger)conn.CloseEndSub5.2住户资料管理窗体的设计该窗体用到了SSTab控件,Adodc控件和DataGrid控件,SSTab控件共有三个选项卡:住户资料,住户物业收费资料,住户仪表资料。后二个选项卡分别有1个和3个DataGrid控件,住户选项卡上的所有text为一个text数组。其他重要控件及属性设置如表所示:图5-2住户资料界面表5-2住户资料信息属性表控件属性属性值FrameNameFrame1Caption功能键CommandNameCmdfirstCaption第一条CommandNameCmdprevCaption前一条CommandNameCmdnextCaption后一条CommandNameCmdlastCaption最后一条CommandNameCmdqueryCaption查找CommandNameCmdaddCaption添加CommandNameCmdeditCaption修改CommandNameCmddelCaption删除CommandNameCmdsaveCaption保存CommandNameCmdcancelCaption取消CommandNameCmdcloseCaption关闭CommandNameCmdtableCaption以表格显示CommandNameCombo1List男女Itemdata01在本窗体代码框中定义几个本窗体范围的ADODB.RECORDSET变量和一个用于保存时候的变量,代码如下:Dimrs_clientAsNewADODB.RecordsetDimrs_countAsNewADODB.Recordset'设置一个add变量用于保存时判断是从添加还是修改后保存Dimadd'定义rs_wuye、rs_water,rs_power,rs_gas为显示该住户物业资料和仪表资料的记录集Dimrs_wuyeAsNewADODB.RecordsetDimrs_waterAsNewADODB.RecordsetDimrs_powerAsNewADODB.RecordsetDimrs_gasAsNewADODB.Recordset其他代码详见程序部分。5.3查询住户窗体的设计查询住户窗体用于用户选择和输入查询条件,查询住户资料,查询后可以选择认逐条浏览形式显示,也可以选择以表格形式一次性显示查询到的住户资料。查询住户窗体如图所示:加入图中所有控件,主要控件包括:9个combo控件,3个text控件,一个3个command控件。表5-3查询住户窗体属性表控件属性属性值CommandNameCmdqueryoneCaption查找后逐个显示CommandNameCmdquerytableCaption查找后表格显示CommandNameCmdcloseCaption关闭ComboNameCombo1List住户编号;物业地址;房型;使用面积;业主姓名;性别;籍贯;入住时间Itemdata0;1;2;3;4;5;6;7ComboNameCombo2List=;>;<Itemdata0;1;2ComboNameCombo3ListAnd;or,notItemdata0;1;2图5-3查询住户界面查找按钮Cmdqueryone实现查询后逐条显示的功能,系统首先检查用户输入的查询值是否合理,然后根据用户输入的查询值确定查询的SQL语句,然后显示逐条显示窗体,即入住资料窗体,主要代码如下:……IfNotText3.Text=""ThenIfCombo7.ListIndex=3Thensqlqc=sqlqc&""&Combo6.Text&""&Combo7.Text&Combo8.Text&Val(Text3.Text)ElseIfCombo7.ListIndex=7ThenIfIsDate(Text3.Text)=FalseThenMsgBox"输入的不是日期型内容,请输入这样的日期格式:2003-8-3!",vbOKOnly+vbInformation,"注意"ExitSubEndIfsqlqc=sqlqc&""&Combo6.Text&""&Combo7.Text&Combo8.Text&"#"&DateValue(Text3.Text)&"#"Elsesqlqc=sqlqc&""&Combo6.Text&""&Combo7.Text&Combo8.Text&"'"&Text3.Text&"'"EndIfEndIffrmClient.Show……5.4表格形式显示住户资料窗体的设计以表格显示住户资料窗体使用一个表格显示所有住户资料或者查询到的住户资料。图5-4表格式显示界面表5-4表格形式差件属性表控件属性属性值CommandNameCmdorderCaption排序ComboNameCombo1List住户编号;物业地址;房型;使用面积;业主姓名;性别;籍贯;入住时间Itemdata0;1;2;3;4;5;6;7窗体载入时,首先判断是显示所有住户资料或者查询到的住户资料。依据是根据变量query的取值。DimsqlAsStringIfquery=FalseThensql="select*fromClientorderby住户编号"rs_client.CursorLocation=adUseClientrs_client.Opensql,conn,adOpenStatic,adLockOptimistic'设置DataGrid1的数据源SetDataGrid1.DataSource=rs_clientDataGrid1.Refresh'因查询而调用,只显示符合查询的数据ElseIfquery=TrueThensql="select*fromClient"&sqlqc&"orderby住户编号"rs_client.CursorLocation=adUseClientrs_client.Opensql,conn,adOpenStatic,adLockOptimisticSetDataGrid1.DataSource=rs_clientDataGrid1.RefreshEndIf5.5房产资料窗体的设计房产资料窗体用于显示房产资料,用户可以添加,删除,修改,查询房产资料,以及对房产资料前后翻页浏览和以表格形式显示房产资料。图5-5房产资料窗体界面该窗体的保存按钮的click事件:首先判断当前操作是添加后保存还是修改后保存,判断的依据是根据变量add的取值。'添加数据后保存Ifadd=1Then'检测房间编号这个主键是否已经在表中存在Dimrs_checkAsNewADODB.RecordsetDimsqlCheckAsStringsqlCheck="select*fromHousewhere房间编号='"&(Text1(0).Text)&"'"rs_check.OpensqlCheck,conn,adOpenStatic,adLockOptimisticIfNotrs_check.EOFAndNotrs_check.BOFThenMsgBox"该房间编号已经存在,请重填一个!",vbOKOnly+vbInformation,"注意"rs_check.CloseText1(0).SetFocusText1(0).Text=""ExitSubEndIfrs_check.Close'主键不重复,可以加入表中rs_house.AddNewFori=0To10rs_house.Fields(i)=Text1(i).TextNextirs_house.Fields(11)=Combo1.Textrs_house.Update'添加之后显示总共条数信息加1Text2.Text=Val(Text2.Text)+1'修改数据后的保存Elsers_house.UpdateEndIfMsgBox"保存数据成功!",vbOKOnly+vbInformation,"祝贺"5.6物业设备管理窗体的设计物业设备管理窗体可以添加,删除,修改,查询物业设备资料,还可以前后翻页浏览所有物业设备资料。图5-6物业设备管理界面窗体显示后,首先需要固定其显示位置,以及设置一些控件的初始值,代码如下:PrivateSubForm_activate()DimX0AsLongDimY0AsLong'让窗体居中X0=Screen.WidthY0=Screen.HeightX0=(X0-Me.Width)/2Y0=(Y0-Me.Height)/2Me.MoveX0,Y0cmdSave.Enabled=FalsecmdCancel.Enabled=False'设置显示记录条数的Text2不可写Text2.Enabled=False……然后需要判断始查询显示还是直接调用显示,分别处理之,非查询显示时代码如下:'如果不是查询显示,则显示第一条记录IfqueryEq=FalseThen'在from_laod()方法中打开住户信息表'如果rs_countrs_equipt当前状态是打开的,则先关闭之Ifrs_count.State=adStateOpenThenrs_count.CloseEndIfIfrs_equip.State=adStateOpenThenrs_equip.CloseEndIf'计算总共数据条数DimsqlcountAsStringsqlcount="selectcount(*)fromEquipment"rs_count.Opensqlcount,conn,adOpenStatic,adLockOptimisticIfrs_count.EOFThenText2.Text=0ElseText2.Text=rs_count.Fields(0)EndIfDimsql_equipAsStringsql_equip="select*fromEquipment"rs_equip.CursorLocation=adUseClientrs_equip.Opensql_equip,conn,adOpenStatic,adLockOptimistic'如果当前Equipment表中有数据则显示第一条数据IfNotrs_equip.EOFAndNotrs_equip.BOFThenFori=0To6Text1(i).Text=rs_equip.Fields(i)NextiEndIf由于查询时候需要用到跨窗体的变量,所以需要在公共模块中定义二个公共变量:代码如下:'定义全局变量queryEq作为判断frmEquipment窗体显示查询的数据还是全体数据PublicqueryEqAsBoolean'定义全局变量sqlequip作为查询设备信息时的sql语句PublicsqlequipAsString5.7仪表数据管理窗体的设计仪表数据管理窗体有3个选项卡,分别记录水表,电表,仪表,气表数据,每个选项卡上都可以对相应的仪表数据进行添加,删除,修改,查询操作,还可以前后翻页浏览该仪表数据。图5-7仪表数据管理界面在查询时候需要用到跨窗体的变量,因此,需要在公共模块中定义4个公共变量,代码如下:'定义全局变量querywater作为判断frmYiBiao窗体水表选项卡显示查询的数据还是全体数据PublicquerywaterAsBoolean'定义全局变量querypower作为判断frmYiBiao窗体电表选项卡显示查询的数据还是全体数据PublicquerypowerAsBoolean'定义全局变量querygas作为判断frmYiBiao窗体气表选项卡显示查询的数据还是全体数据PublicquerygasAsBoolean'定义全局变量sqlYiBiao作为查询3种仪表信息时的sql语句PublicsqlYiBiaoAsString窗体显示后,首先需要固定其显示位置,以及设置一些控件的初始值,代码如下:PrivateSubForm_activate()DimX0AsLongDimY0AsLong'让窗体居中X0=Screen.WidthY0=Screen.HeightX0=(X0-Me.Width)/2Y0=(Y0-Me.Height)/2Me.MoveX0,Y0cmdSave.Enabled=FalsecmdCancel.Enabled=False……EndSub5.8收费管理窗体的设计收费管理窗体包括物业收费管理和仪表收费管理2个选项卡,每个选项卡上,用户可以对该收费数据项进行添加,删除,修改,查询等操作,还可以前后翻页浏览。图5-8收费管理界面实现本窗体重点在于对当前添加或者修改的数据根据不同选项卡进行正确的保存。系统运行时候,首先判断当前选择的选项卡1还是选择项卡2,然后判断添加变量addw的值是否为1,如果为1,表明当前是添加操作,如果不为1,表明是修改。实现的主要代码如下:'2个选项卡的保存代码IfSSTab1.Tab=0Then'添加数据后保存Ifaddw=1Then'检测房间编号这个主键是否已经在表中存在Dimrs_wcheckAsNewADODB.RecordsetDimsqlwCheckAsStringsqlwCheck="select*fromWuYeFeewhere收费编号='"&(Text1(0+k).Text)&"'"rs_wcheck.OpensqlwCheck,conn,adOpenStatic,adLockOptimisticIfNotrs_wcheck.EOFAndNotrs_wcheck.BOFThenMsgBox"该收费编号已经存在,请重填一个!",vbOKOnly+vbInformation,"注意"rs_wcheck.CloseText1(0+k).SetFocusText1(0+k).Text=""ExitSubEndIfrs_wcheck.Close'主键不重复,可以加入表中rs_wuye.AddNewFori=0To12rs_wuye.Fields(i)=Text1(i+k).TextNextirs_wuye.Update'添加之后显示总共条数信息加1Text2.Text=Val(Text2.Text)+1'修改数据后的保存Elsers_wuye.UpdateEndIf5.9仪表数据统计窗体的设计本系统数据报表包括物业设备统计报表,仪表数据统计,收费统计,住户投诉统计,住户报修统计,物业设备维修统计等子功能。本节重点研究仪表数据统计窗体的设计。仪表数据统计窗体有4个选项卡,分别统计记录所有水表资料,电表资料,气表资料,住户水电气表资料。其中水,电,气表选项卡可以对相应数据进行选择排序和统计显示,而住户水电气表资料选项卡可以对相应数据进行选择排序和统计显示,而住户水电气表资料选项卡是对住户水,电,气资料进行统计,可以选择排序显示。图5-9仪表数据统计界面表5-5仪表数据统计属性表控件属性属性值CommandNameCmdorderwCaption排序CommandNameCmdorderpCaption排序CommandNameCmdordergCaption排序CommandNameCmdordercCaption排序ComboNameCombo1List仪表编号;住户姓名;物业地址;年份,月份;上月数据;本月数据;本月用量;单价;本月费用;上月抄表日期;本月抄表日期;本月交费日期;办理人Itemdata0;1;2;3;4;5;6;7;8;9;10;11;12;13下面实现排序功能,前三个选项卡的排序按钮功能类似,都是同时兼有统计按钮的功能,即用户选择了排序的标准后同时按排序标准进行统计,由于前三个选项卡的排序按钮功能实现代码类似。这里只讲诉水表选项卡的排序按钮设计流程和代码:首先使用sql查询语句对water表进行查询,显示的排序标准是combo1的值,接着对water进行分组统计,最后显示在datagrid2表格中。代码如下:PrivateSubcmdOrderw_Click()Ifrs_order.State=adStateOpenThenrs_order.CloseEndIfsqlod="select*fromWaterorderby"&Combo1(0).Textrs_order.CursorLocation=adUseClientrs_order.Opensqlod,conn,adOpenStatic,adLockOptimistic'设置DataGrid1的数据源SetDataGrid1(0).DataSource=rs_orderDataGrid1(0).Refresh'使用分组统计,并显示在DataGrid2中'下面的sql语句已用户选择的Combo1(0).text分组、排序,并且统计同一个Combo1(0).text的数量sqltg="select"&Combo1(0).Text&",sum(本月用量)as总用量,sum(本月费用)as总费用"&_"fromWatergroup

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论