VB 房地产评估系统设计与开发(论文+源码)_Nueve

摘要

房地产评估系统是典型的信息管理系统(MIS),其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。对于前者要求建立起数据一致性和完整性强、数据安全性好的库。而对于后者则要求应用程序功能完备,易使用等特点。本系统特有的房屋基本情况、专业评估人员、估价方法等。

    经过分析,我们使用 MICROSOFT公司的 VISUAL BASIC.NET开发工具,利用其提供的各种面向对象的开发工具,尤其是数据窗口这一能方便而简洁操纵数据库的智能化对象,首先在短时间内建立系统应用原型,然后,对初始原型系统进行需求迭代,不断修正和改进,直到形成用户满意的可行系统

关键字控件、窗体、域、ADO、模块

 第一章  为什么要开发一个房地产评估系统

计算机已经成为我们学习和工作的得力助手:今天,计算机的价格已经十分低廉,性能却有了长足的进步。它已经被应用于许多领域,计算机之所以如此流行的原因主要有以下几个方面:

首先,计算机可以代替人工进行许多繁杂的劳动;

其次,计算机可以节省许多资源;

第三,计算机可以大大的提高人们的工作效率;

第四,计算机可以使敏感文档更加安全,等等。

1.1用计算机进行房地产评估的意义

现在我国的房地产评估水平还停留在纸介质的基础上,这样的机制已经不能适应时代的发展,因为它浪费了许多人力和物力,在信息时代这种传统的管理方法必然被计算机为基础的信息管理所取代。

我作为一个计算机科学与技术系的本科生,希望可以在这方面有所贡献。我希望能用我四年的所学编制出一个实用的程序来帮助进行更有效的房地产评估

归纳起来,好处大约有以下几点:

1. 可以存储房屋信息,安全、高效;

2. 只需一到二名录入员即可操作系统,节省大量人力;

3. 可以迅速查到所需信息。

1.2为将来上网房地产评估做好准备

跟据1999年中国电信的调查报告显示我国的上网人数已达到890万,互联网已经十分普及,用户希望能在世界的任何一个角落查到自己想要的信息,本系统为将来的上网作了先期工作,比如远程数据库的建立。

1. 3房地产评估系统的设计分析

根据实际情况,我们使用原型法(Rapid Prototyping)即以少量代价快速地构造一个可执行的软件系统模型。使用户和开发人员可以较快地确定需求,然后采用循环进化的开发方式,对系统模型作连续的精化,将系统需具备的性质逐渐增加上去,直到所有的性质全部满足。此时模块也发展成为最终产品了

第二章  怎样开发一个房地产评估系统?

2.1编程环境的选择

微软公司的Visual BASIC.NET 是Windows应用程序开发工具, 是目前最为广泛的、易学易用的面向对象的开发工具。Visual BASIC.NET提供了大量的控件,这些控件可用于设计界面和实现各种功能,减少了编程人员的工作量,也简化了界面设计过程,从而有效的提高了应用程序的运行效率和可靠性。开发人员可以通过显式的自由线程编写具有高度可伸缩性的代码,同时通过其他现代化的语言特征(如结构化的异常处理等)编写具有较高可维护性的代码。故而,实现本系统VB.NET是一个相对较好的选择。

2.2 关系型数据库的实现

SQL SERVER2000 就是关系数据库开发工具,数据库能汇集各种信息以供查询、存储和检索。SQL SERVER 的优点在于它能使用数据表示图或自定义窗体收集信息。数据表示图提供了一种类似于 Excel 的电子表格,可以使数据库一目了然。另外,SQL SERVER 允许创建自定义报表用于打印或输出数据库中的信息。SQL SERVER也提供了数据存储库,可以使用桌面数据库文件把数据库文件置于网络文件服务器,与其他网络用户共享数据库。SQL SERVER 是一种关系数据库工具,关系数据库是已开发的最通用的数据库之一。如上所述,SQL SERVER 作为关系数据库开发具备了许多优点,可以在一个数据包中同时拥有桌面数据库的便利和关系数据库的强大功能。

2.3二者的结合(DBA)

微软的OLE DB数据库引擎提供了与数据库打交道的途径,我们是通过它以及ADO来访问数据库并对其进行各种操作。Visual BASIC.NET、SQL SERVER以及其他微软的软件产品都是通过共用SQL SERVER数据库引擎,从而给用户提供了丰富的数据类型。

ADO在数据库中的信息与将信息显示给用户看的Visual BASIC.NET程序之间架起了一座桥梁。我们可以设置ADO的各个属性,告诉它要调用那个数据库的哪个部分。缺省情况下,ADO根据数据库中的一个或多个数据表建立一个RECORDSET类型的记录集合。一个记录集合是动态的也就意味着,当原来的数据表中的容改变了以后,该记录集合中的记录也会随之改变。ADO还提供了用来浏览不同记录的各种跳转按钮。将ADO放置在窗体中之后,我们还必须在该控件与要处理的数据库之间建立联系。

第三章  Windows下的Visual BASIC.NET 编程环境简介

3.1模块化

Windows下的Visual BASIC.NET应用程序基本的构建块是用户所创建的对象,每一个对象都具有一些特性和行为(属性、事件和 方法)。开发人员可以最有效利用所创建的每一个对象。使应用程序具有可通用性可扩展性和强有力的功能。

3.2对象的编程

Visual BASIC.NET应用由一系列对象组成,包括有函数、菜单、函数、结构和数据窗口、用户对象、用户事件等等,对象中又包含若干控件如命令按钮、单行编辑器等这些对象和控件都可在许多应用中重复使用。

3.3实现菜单选项

菜单是程序最重要的特性之一,大多数程序都依赖一个定义良好的菜单使程序易于使用和维护,Visual BASIC.NET也提供了强大的创建菜单功能使程序更加标准。

您可以使用Visual BASIC.NET的Application Wizard也可以使用Visual BASIC.NET 的菜单编辑器建立菜单或者修改已经存在的菜单。

3.5强大的报表功能

Crystal Reports for Visual Studio .NET 是用于 Visual Studio .NET 的标准报表工具;它使 .NET 平台具有创建交互式、高质显示的内容的能力,这也是 Crystal Reports 长期以来所具有的主要优势。

使用 Crystal Reports for Visual Studio .NET,您可以在 Web 平台和 Windows 平台上承载报表,并将 Crystal 报表作为报表 Web 服务在 Web 服务器上发布。

例如,您可以创建 Web 应用程序,使用户可以深化图表并根据需要筛选信息。在这个示例中,图表实际上就是一个与应用程序中其他控件进行交互的 Crystal 报表。

Crystal Reports for Visual Studio .NET 是用于 Visual Studio .NET 的标准报表工具;它使 .NET 平台能够创建交互式的、高质量显现的内容,这也是 Crystal Reports 长期以来所具有的强项。

 第四章

使用SQL SERVER2000 实现关系型数据库

4.1数据库的概念

数据库是一种存储数据并对数据进行操作的工具。数据库的作用在于组织和表达信息,简而言之,数据库就是信息的集合。计算机的数据库可以分为两类:非关系数据库(flat-file)和关系数据库(relational)。关系数据库中包含了多个数据表的信息,数据库含有各个不同部分的术语,记录、域等。

4.2新建一个数据库

创建任何一个数据库的第一步是仔细的规划数据库,设计必须是灵活的、有逻辑的。创建一个数据库结构的过程被认为是数据模型设计。

1. 标识需要的数据;

2. 收集被标识的字段到表中;

3. 标识主关键字字段;

4. 绘制一个简单的数据图表;

5. 规范数据;

6. 标识指定字段的信息;

7. 创建物理表。

4.3修改已建的数据库

数据库的修改分为:添加、编辑和删除记录。这三种操作均可由Visual BASIC.NET 创建的程序来完成,下面的章节将详细描述实现的具体方法。

4.4 实现数据库之间的联系

数据库之间的关系指明两个库之间共享一个共同的关键字值。一个连接是指一种虚拟的表,这种表是在当用户要求从相互关联的各个不同的表中获取信息时建立的,关键字段用于在相互连接的不同表中查找匹配的记录。一个更高级的连接形式称为自连接。这种连接是指一个表被连接到它自己的一个字段,或在不同的纪录中由重复数据的组合字段。数据库中有三种不同类型的关键字:主关键字、组合关键字和外关键字。在表中使用的关键字类型用于描述库表示什么以及在数据库中如何与其它的库建立关系。

第五章

5.1系统功能

1. 可以进行录入房屋基本情况操作,如房屋面积、房屋位置等,自动核算出房地产价值。

2. 添加一个评估报告;

3. 删除一个评估报告;

4. 修改一个评估报告;

5. 查询房地产信息;采用了模糊查询技术,如此功能主要实现应用系统中常用的一种查询方式,可以对已有的信息进行查询,其主要目的是在一大堆评估报告当中迅速地查找所需的评估报告。

该功能主要根据房地产评估报告的不同条件信息进行查询。查询时可以选择条件中的一个或多个来实现,根据不同的信息将显示不同的结果。查询条件如:按房屋所有权人,房权证号,房屋坐落,估价时点,丘地号,设计用途,幢号,估价目的,房号,估价人名等不同的条件来查询。考虑运行速度,适当使用索引。

6. 归档房地产信息

  • 功能:归档评估报告模块的主要功能是按不同时间段和不同估价师查找其所有评估报告,然后在找到的结果中再选择所需的评估报告保存到相关目录中。

5.2流程图

 第六章

系统具体实现

6.1用户界面的实现

6.1.1 登录

选择用户姓名,输入密码。附录主要代码如下:

Private Sub InitMe()

        Try

            With tbl

                .Open("select * from gjsda where enable=1", serverDB, ADODB.CursorTypeEnum.adOpenStatic, ADODB.LockTypeEnum.adLockReadOnly)

                Do While Not .EOF

                    cmoUser.Items.Add(CStr(.Fields("name").Value).Trim)

                    .MoveNext()

                Loop

                cmoUser.SelectedIndex = 0

                .MoveFirst()

                lblGjsbh.Text = .Fields("gjsid").Value

            End With

        Catch err As Exception

            MsgBox("无法取得估价人员档案!", MsgBoxStyle.OKOnly + MsgBoxStyle.Critical, "错误")

            End

        End Try

    End Sub

 Private Sub cmdOK_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdOK.Click

        Try

            With txtPassword

                If .Text.Trim = CStr(tbl.Fields("password").Value).Trim Then

                    SetCurrentUser()

                    tbl.Close()

                    Me.Close()

                Else

                    MsgBox("密码错误,再试一次!", vbOKOnly + vbCritical, "错误")

                    .Focus()

                    .SelectionStart = 0

                    .SelectionLength = .Text.Length

                End If

            End With

        Catch exc As Exception

            MsgBox("无法正常启动本系统!", MsgBoxStyle.OKOnly + MsgBoxStyle.Critical, "错误")

            End

        End Try

    End Sub

Private Sub cmdCancel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdCancel.Click

        On Error Resume Next

        tbl.Close()

        End

    End Sub

Private Sub cmoUser_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmoUser.SelectedIndexChanged

        On Error Resume Next

        tbl.MoveFirst()

        tbl.Move(cmoUser.SelectedIndex, 0)

        lblGjsbh.Text = tbl.Fields("gjsID").Value

        txtPassword.Focus()

    End Sub

Private Sub GroupBox1_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles GroupBox1.Enter

End Sub

End Class

如果您在计算机领域有任何疑虑或不确定的地方,请毫不犹豫地与老师交流噢,我们期待着为您提供有针对性的建议和指导。您的问题和讨论对我们来说都非常重要。

  • 16
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值