房地产销售管理信息系统的开发与设计_第1页
房地产销售管理信息系统的开发与设计_第2页
房地产销售管理信息系统的开发与设计_第3页
房地产销售管理信息系统的开发与设计_第4页
房地产销售管理信息系统的开发与设计_第5页
已阅读5页,还剩34页未读 继续免费阅读

下载本文档

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

文档简介

1、房地产销售管理信息系统的开发与设计21绪论21开发环境的简介21.2 visual basic 6.0 简介21.3 sql server 2000 简介21.2前台和后台数据库的连接32系统的分析32 理解分析32.2 需求分析33系统功能模块设计43房屋信息管理43.2销售信息管理54数据库设计64.1.1 楼房信息表64.1.2 房间信息表64.1.4销售记录表74.2 e-r 图74.3 在sql sever2000屮实现表创建的sql语句84.3.2 适用 treeview 控件显示结构94.3.3 sql多条查询语句结构95系统主界而105.1系统主窗体105.2公共模块116 房

2、屋信息管理126.1.2房间管理166. 1.3信息查询206销传信息管理226.1.1 客户信息226.2. 1房屋定价266.2.2房屋销售296.2.3统计分析327、小结33参考文献33房地产销售管理信息系统的开发与设计1绪论从20世纪80年代开始、随着计算机硬件和软件技术的发展,特别是计算机和通信 网络技术的h趋融合,信息化给企业带来了巨大的变化,信息技术在企业小的应用不再 局限于企业活动的某些环节,而是逐步地渗透到企业活动的齐个领域、各个环节,极大 地改变了企业的生产、流通和组织管理方式,推动了企业物资流、资金流和信息流的相 互融合。凭借it信息技术和现代管理思想,在这样一个多元化

3、的信息社会里建立房地 产销售平台是大势所趋。房地产管理是一项复杂的工作,它应该非常及时地了解楼盘目前的基本信息,而且能方便的添 加、编辑和查询楼盘的资料。同时,房地产的销售要和大量的客八接触,所以这个销售系统要能够 记录相应客户的信息和需求等等。1.1开发环境的简介在对房地产销售管理信息系统的设计屮,本文采丿ij了 visual basic 6.0作为开发工具,sql server 2000作为数据库管理工具。visual basic 6.0是川來创建高性能的企业应用程序及基于web的应用 程序的最有效工具。visual basic 6.0使开发者得以创建驻留在客户或服务器上或运行在分布式n层

4、 坏境里的强壮应用程序。是快速创建以数据为屮心的企业解决方案的完全套件。而sql server 2000 则是fl前最优秀的数据库管理系统乙一,以其易川性得到很多川户的青睐。它包括支持开发的引擎、 标准的sql语言、扩展的特性(如复制、olap、分析)等功能。1.2 visual basic 6.0 简介vb是一种可视化的、而向对象和采用事件驱动方式的结构化高级程序设计语言, 可用于开发windows环境下的齐类应用程序。它简单易学、效率高,且功能强大可以 与windowsr专业开发工具sdk相媲美。在visualbasic环境下,利用事件驱动的编程 机制、新颖易用的可视化设计工具,使用win

5、dows内部的广泛应用程序接口(spi)函 数,以用动态链接库(dll)、对象的链接与世隔嵌入(ole)、开放式数据连接(odbc) 等技术,可以高效、快速地开发windows环境下功能强大、图形界而丰富的应用软件 系统。随着版本的提高,visual basic的功能也越来越强。5.0版以后,visual basic推 出了中文版,与前个版本相比,其功能有了很大提升。visual basic 6.0是1998年的 产品,后来又有几次的升级,现在用的大多数是sp4.1 3 sql server 2000 简介sql server 2000是microsoft公司推出的sql server数据库管

6、理系统,该版木继承了 sql server 7.0版本的优点同时又比它增加了许多更先进的功能具有使用方便可伸缩性好与相关软件集成程度高等优点。sql server 2000中包括一系列管理和开发工具,这些工具可改进在多个站 点上安装、部署、管理和使用sql server的过程。sql server 2000还支持基 于标准的、与windows dna集成的程序设计模型,使sql server数据库和数据 仓库的使用成为生成强大的可伸缩系统的无缝部分。这些功能使您得以快速交付 sql server应用程序,使客户只需最少的安装和管理开销即可实现这些应用程序。数据仓库。sql server 200

7、0屮包括析取和分析汇总数据以进行联机分析处理(olap)的工 具。sql server屮还包扌舌一些工具,町用來直观地设计数据库并通过english query來分析数据 1.2前台和后台数据库的连接本论文前台和后台的数据库连接是采用ado控件来实现的,ado控件直接支持 sql结构化查询语言,使用它可以用最少的代码创建数据库应用程序。而ado控件操 作简易,使用方便o ado数据控件常见的屈性有connectionstring屈性commadandtype 属性、cursorlocation屈性、locktype属性、recordsource属性。实例化ado数据控 件时,需要对这些属性进行

8、赋值,代码如下'设置ado控件的连接字符串 '定义 commandtype ;类型 "定义 cursorlocation 位置 “定义locktype类型“定义数据源,结构sql语句 '刷新'实例化ado控件:ado1ado 1 .connectionstring = connectionstringado 1 .commandtye = adcmdtextado 1 .cursorlocation = aduseclientado1. locktype = adlockpessimisticado 1 .recordsoure = u select

9、* from 楼房信息表ado 1. refresh2系统的分析2.1 理解分析在房地产开发过程屮,楼盘销售是非常重要的环节,也是房地产开发的关键环节, 如何提供楼盘销售服务之恋,也是显的非常迫切的,而h通关管理系统,可以来规范和 管理销售过程的各个环节,并提供相关信息。这样,可以极大的提高服务质量和效率。2. 2 需求分析楼盘销售管理主要负责管理房屋信息,并对房屋进行定价,然后进行销售,为用户 提供不同信息统计分析,满足管理人员需求。该系统主要包括房屋信息管理和销借信息 管理两大部分。 房屋信息管理:主要负责管理房屋的基木信息,包括楼房信息和房间信息 销售信息管理:主耍负责客户信息、房屋定价

10、、房屋销售以及统计分析楼盘销售管理系统是为了满足用户进行楼盘销售而开发的。所以,楼旁销售管理系 统应达到以下目标: 减少人工的参与和基础信息的录入,具有良好的自治功能和信息循环能够方便地广利客户资料能够根据市场变化对房屋进行定价 能够管理所有的房屋信息,包括房信息和房间信息 能够快速的进行房屋信息的查询3系统功能模块设计根据对楼盘销售管理系统的需求分析,一个标准的楼销售管理系统应该包括房屋信 息管理和销售信息管理功能,如图3.1所示。每一个功能模块都包含了一系列的子功能。楼盘销售管理系统丿房屋信息管理销售信息管理< 丿图3. 13.1房屋信息管理房屋信息管理模块用来管理楼房信息和房间信息

11、,它包括楼房管理、房间管理和信息查询3个子功能,如图下房屋信息管理楼房管理)房间管理k)信息查询<)楼房管理功能实现对楼房信息的维护这类信息主要包括楼房号、楼名、所处位置、 山地面积、总投资、层数、房间数、简介等。该模块提供对信息的增加、修改和删除功 能。房间管理功能实现对房间信息的维护。这类信息主耍包括房间号、楼房号、位置、 房间大小、适用户型、销售状态、简介、成本价、销售价、折扌ii率等。该模块提供增加、 修改删除功能。信息查询系统功能实现对楼房信息和房间信息的查询。该模块提供模式匹配和多条 件查询。3.2销售信息管理销售信息管理模块主要用來管理楼盘销售情况,包扌舌客户信息、房屋定价

12、、房屋销 售、统计分析4个了功能,如下图s3. 31客户信息客户信息功能主要实现客户基本信息维护。这类信息主要包括编号、姓名、性别、 出生h期、婚否、家庭成员数、职位、身份证号、经济收入、备注。2. 房屋定价房屋定价功能主要实现对房间的统一定价,涉及的信息包括成本价、销售价格、折 扣率。成本价是指房屋的成本价格:销售价格是指房屋待销售的价格;折扣率是指楼旁 销售时的折扣率。3. 房屋销售房屋销售功能实现对房屋销售信息的记录。记录的信息包括销售id、房间号、楼房 号、客户编号、成本价、销售价、折扣率、利润、付款方式、交易日期、备注等。销售 id为标示种子,自增为1;销售价是指打折后的销售价格;利

13、润二销售价-成本价。4. 统计分析统计分析功能主要实现对楼旁销售信息的统计分析。它通过多条件进行分析,分 析条件主要有楼房号、利润、付款方式。4数据库设计根据系统需求,需要建立四张表,即楼房信息表格、房间信息表、客户信息表、销 售记录表。4. 1. 1 楼房信息表楼房信息表负责楼房信息,主要包括楼房号、楼名、所处位置、占地面积、总投资、 层数、房间数、简介等,表结构如下:列名数据类型长度允许空|char4bdnamenv ar char50bdposi ti onnvar char200vareaflgt8vinves tmeritfloat8vlayersint4vroomnint4vbdi

14、ntroductiontext16v4.1.2 房间信息表房间信息表负责维护房间信息,主要包括房间号、楼房号、位置、房间大小、适用4.1.3 客户信息表客户信息表格主要用语维护客户的基本信息,主要包括看了客户编号、姓名、性别、 出生口期、婚否、家庭成员数、职位、身份证号、经济收入、备注等,表结构如下列名数据类型长度允许空char4namenvar char50sexchar2birthdatetimw8vmari taichar4membersint4vj obsnvarchar50viden ti£ig tionchar184.1.4销售记录表销售记录表用于对房间进行销售,记录销售

15、记录,主要包括销售id、房间号、楼房 号、客户编号、成木价、销售价、折扣率、利润、付款方式、交易日期、备注等,表结 构如下:列名数据类型长度允许空numeri c9roomidchar4buildingidchar4cu£tomerldchar4cos tfloa t8pri cefloa t8di scourtpaltefloa t8profi tfloa t84. 2 e-r 图馬间彳三息衣"胆1、可号,a位ht* 房iff大刀、一 适用户翹2 销传状态2咸本价" 销宵价2 折扌口辛"t ji t va彳笠h彳21恵妄afk嚴处位宣. 占:*也面积&

16、quot; 述加却商介2俏借5己录衣7pk-笳芒id<-3葺细价稟二曰“ 间房户木亡扣润款易注 虏樓玄威销折利付立备客户彳m恵、赛pem户汨号性别 出生曰朋 0昏否耳只位 爲伪证号 经济收入a 电勺舌 住址岳注4.3 在sql sever2000中实现表创建的sql语句楼盘销售管理系统需耍适用listview控件和treeview控件,以及如何结构sql 多条件查询语语句。4. 3. 1适用listview控件显示数据listview控件是一个windows公共控件。作为一个增强功能的列表框,显示更多的 信息。listview控件可以适用4种不同试图显示项目,通过这些控件,可将项目组成有

17、 或没有列标头的列,并显示伴随的图标和文本,这样可以直观而方便地浏览各个对象的 数据。listview控件并不是默认的工具箱的配置项口,必须手工添加引用不捡,此外就是 通过代码来控制listview控件与数据的关联了,其代码如下所示:private sub loaddatao <>'装载数据dim 1ist as listttemdim key as stringset rs = nothingsqlstr = "select * from 楼房信息表 order by buildingtd"set rs = selectsql(sqlstr, msg)

18、'查询楼房信息listviewl. listitems. clear'清空 listview 控件tf rs. recordcount = 0 then'如果不存在楼房信息,添加按钮可用,其他按钮不可用cmdaddenablcd = true: cmdmodify. enabled = false: cmddclctc. enablcd = false cmdcancel enabled = i?alse: cmdsave enabled = falseelse'如果存在楼房信息,初始化listview控件ts.movcfirstdo until rs. eof

19、key = rs fields(z,buildingtd") & rs. fields(z,bdname")set list = listviewl. listitemsadd(, , key, 1)rs.movenextloop'编辑控件可川性cmdadd.enabled = true: cmdmodify. enabled = true: cmddeleteenabled = truecmdcancel.enabled = false: cmdsaveenabled = falsers. movcfirst'返回到第一条记录end if'

20、设置控件enable值call ctrenablc(false)end subprivate sub ctienable(flag as boolean)'设置控件的enable值txtbuildingld .enabled = flagtxtnameenabled = flagtxtarea enabled = flagtxt investenabled = flagtxtfloorsenabled = flagtxtroomsenablcd = flagtxtposition. enabled = flag txtnotesenabled = flag end subprivate

21、 sub showdatao'在控件中显示数据if rs. recordcount <> 0 then'如果存在记录'为控件赋值txtbuiidingtd. text = rs. fields("buildingid")txtname.text = rs. fields(z,bdname")txtarea.text = rs. fields("area")txttnvest .text = rsfields cinvestmcnt)txtfloors.text = ts. fields("layer

22、s")txtrooms.text = rs. fields(":roomn")txtposition. text = rs.fields("bdposition")txtnotes.text = rs. fields(,zbdintroduction")end ifend subprivate sub listviewl click()'在控件中显示楼房信息dim key as stringif rs.recordcount > 0 thenkey 二 trim(listview1. selectedltem)sqlst

23、r 二 ” select * from 楼房信息表 where buildingtd= ' & left (key, 4) & set rs = sei ectsql(sqlstr, msg)call showdata'重新显示数据end ifend subprivate sub cmdadd_click() y沐jin换作'、' call ctrclear'所有控件重置call ctrenable(true)/设豐控彳牛enable值为可用flag二'设置标志flag,表示所进行的操作为添加 '添加、修改、删除按钮不可用

24、,取消、保存按钮可用cmdaddenabled 二 false: cmdmodify. enabled 二 false: cmddeleteenabled 二 falsecmdcance1enabled = true: cmdsaveenabled = trueend sub用户单击listview的listitem来触发listview的click事件,并通过查询语句 查询所单击的listitem对应的楼房数据,最后用text文木显示出来。这样,listview很好的发挥了图形功能,让界面更有人性化4. 3. 2 适用treeview控件显示结构treeview控件为用户捉供了一种按层次结构

25、显示信息的方式,它包含了称作节点 (node)的条目列表,毎一节点都可以有口己的节点,从而提供一种更深层次的数据定 义,每个节点都可以被折叠起来,从而允许访问者在一个treeviewk控件中查找,只查 看所感兴趣的那一级的数据,如某一楼房的各个房间数据,node对象是treeview控件中 的一线,它包含图像和文木,nodes集合包含一个或多个node对象,语法如卜:treeview. nodes,treeview. nodes itom(index)。4. 3.3 sql多条查询语句结构在统计分析模块屮,需耍通过多条件进行分析。分析条件主要有楼房号、利润以及 付款方式。实现该功能,只需把各个

26、查询语句连接起来,构造sql语句,其代码如下:private sub cmdquerv_click()'分析销售信息,构造sql语句sqlstr = "select * from 销售记录表 where 1=1if chkbuildingld. value二1 then'如果通过楼房号來进行分析if trim(cobbuildingid. text) <> "所有"thenend ifif chkmethod. value = 1 then sqlstr 二 sqlstr & ” and end ifif chkprofit.

27、value = 1 then sqlstr 二 sqlstr & ” and end ifsqlstr = sqlstr & " and buildingid= " & left(trim(cobbui1dingid. text), 4) & end if'如果通过付款方式来进行分析 payment二'"& trim(cobmethod. text) &”,如果通过利润来逬行分巧profit be twee n " & txtroom/real & ” emd "

28、& txtroom?rea2set rs = sei ectsql(sqlstr, msg)set datagridl datasource 二 rsdatagridl. refreshend sub5系统主界面系统主界面主要用于构建系统的主窗体,并编写一些公共模块,方便其他子窗体构 建和调用。5.1系统主窗体系统主窗体主要曲窗体本身和菜单构成。首先建立一个工程,然后创建系统主窗体, 主窗体的菜单,并在主窗体中添加窗体代码,來处理接各个子窗体的关系。楼盘销售管 理系统的主界面如下:主窗体屈性设置如下:屋性-frmmain| cjtmm &x n. mdif oirm1缶称)fx

29、-mm ai xtapp eanc e1 - 3daxit. oskowchi 1 -±r- ezxti-uleb alckc ol or-11 &h8ooooooc&c %p i otl槎蛊请喜管理系纟充ertalbl e dlti-nehe i6t5ohelpc ortt. ex t.td 工a onoct c on.)left3015li rdkm o deo norteli rjkt op i amdif orrn 1m otj.s el u oncnone )m ouls ef o i nt. ex-o def slxjll hm ove l*bl etx-

30、ia.ene go t. i elt et o olbstmeoledx" opm o d.eo nonef i c t.xur eqtozxe )ri 各htt ole ft.fs es ar ollb ar sti-ules t. eix- tupp o s i t. i ono _手动t algt op1890visibletyxiewhe.t. stki shelpf ejl s ewi dlth9obow i ndows t. et. eo noxrn在主窗体中调用、切换不同界面,private sub building click()frmbuilding showend

31、 subprivate sub custom click()frmcustomcr showend subprivate sub info click()frminfo. showend subprivate sub mnuend_click()unload meend subprivate sub pricc_click()frmprice showend subprivate sub room_click()frmroom. showend subprivate sub salc_click()frmsale showend subprivate sub statistics_click(

32、) frmstatistics showend sub进行相应功能的实现,其代码如下:'打开楼房管理界面'打开客户信息界面'打开信息查询界面'结束'打开房屋定价界面'打开房间管理界面'打开楼盘销售界而'打开统计分析界而5. 2公共模块在visual basic中可以使用公共模块来存放整个项目所需要的公用函数和全局变 量,来提高代码的利用率,在项目资源管理器重为项目添加一个module,保存为 operatedata. baso opweatedata公共模块主要是用来对数据库操作的,主要包扌舌以下4 个函数。 connstr0 a

33、s string函数,返回连接字符审,用来设置数据库连接字符审。 opcnconn(byref conn as adodb. connection) as boolean 函数,返回布尔值, 用来打开数据库连接。 executesql(byvai sqlstr as string, byref msg as string)函数,返回布尔 值,用来执行sql语句。 sclcctsql(by vai sqlstr as string, byref msg as string) as adob. recordset 函数,返回recordset,用来执行杳询语句。公共模块的代码如下所示.public

34、 eunction connstr() as string'设置数据库连接字符串connstr = " provider=sqloledb. 1; integrated sccurity=sspi;z,& _"persist security lnfo=ealse; initial catalog=楼盘销售系统"end functionpublic function opcnconn(byref conn as adodb.conncction) as boolcan'打开数据库连接,连接成功& true, 1t1错时返|hi fa

35、lseset conn = new adodb. connection'出错处理'出错处理'打开数据库连接'如果出错,进行错误处理on error goto errorhandleconn opon connstropcnconn 二 trueexit functionerrorhandle:msgbox "连接数据库失败!请重新连接!"openconn 二 falseexit functionend functionpublic sub executesql(bvval sqlstr as string, bvref msg as stri

36、ng)'执行sql语句dim conn as adodb. connectiondim stokenso as string'出错处理on error goto errorllandle'判断sql语句stokens = split (sql)'调用 split 函数拆分 sql 语句if instr ("insert, delcte, ipdate,z, ucase( (stokens (0) then'打开数据库连接'如果打开连接成功,执行sql语句if openconn(conn) thenconn.execute sqlstrm

37、sg二stokens (0) & "操作执行成功! ”end ife semsg = "sql 语句有误: & sqlstrend if'程序结束的时候进行对象销毁匸作finally_exit:set rst 二 nothingset conn 二 nothingexit suberrorhandle:msg ="执行错误:"& err. descript ionresume finally_exitend subpublic function seiectsql(byvai sqlstras string, byref

38、msg as string) as adodb. recordset'执行 sql 语旬,返回 adodb. recordsetdim conn as adodb. connectiondim rst as /d0db. recordsetdim stokenso as string'出错处理on error goto errorllandle'判断sql语句stokens = split (sqlstr)if instr("select", ucase(stokens(0) then'打开数据库连接'如果打开连接成功,就进行杳询操作

39、if openconn(conn) thenset rst 二 new adodb. recordsetrstcursorlocation 二 aduseclientrst. open trim$(sqlstr), conn, adopendynamic, adlockoptimistic'执彳亍查询操作set selectsql = rstmsg 二"查询到"& rst. recordcount & ” 条记录!"end ife semsg = "sql 语句有误: & sqlstrend iffinally_exit:

40、set rst 二 nothingset conn 二 nothing'如果sql语句执行出错,提示出错信息并转到exit functionerrorhandle:finally exitmsgstring ="査询错误:"&err descriptionresume finally exitend function6 房屋信息管理简历好主窗体后,开始对两个管理模块的简历进行阐述。首先是房屋信息管理模块,它主要实 现楼房管理、房间管理和信息查询等功能。楼房管理简历楼房信息,并对楼房信息进行维护;房间管理设置房间倍息,并対房间信息进行维护;倍息查询提供房间信息

41、查询功能。6.1.1楼房管理楼房管理主要用于简历娄烦信息,包括楼房号、楼名、所处位置、占地面积、总投 资、层数、房间数、简介等,并对楼房信息进行添加、修改、删除等操作。g楼房管理回冈楼房嗣鸿博园哄居乐康如嚟务之楼名:总投资:房间数:所处位置:简介:騷藉翳翳鬍黔暫'采光很好'旁边有顼楼龙管理界面楼房管理窗体主要空间的屈性如表所示i f«m.s. 3k*. mdu ohm8040o zoru. cn o ru )p <1_ s ghx-vxq o 丰tooxl>ol.jed*- opm o dx s xvi dhaka oshowch > x dr&qu

42、ot; b<z idz? o 丄 o ru <- x omu exxd d m «> x g&x <.rt o h_ p>c7 oxx 上 a x 乞工 d3dtt jxi i a-msooooooc ah»-vxossqo坯丰步qk序|ocl <3 oro3otso zoc mdxxote1cw o ru ao q e<.具体代码如下:运行窗体时出发load事件,调用loaddata过程初始化楼房listview设置空间可 用属性,调用showdata il程显示数据,其代码如下:option explicitdim rs

43、 as adodb, recordsetdim sqlstr as stringdim msg as stringdim flag as string'判断是新增记录还是修改记录private sub form load()call loaddata'装载数据cal 1 showdata'显示数廨loaddata 11程,装载数据,其代码如下:private sub loaddata()'装载数据dim list as listitemdim key as stringset rs = nothingsqlstr = "select * from 楼房

44、信息表 order by buildingld" set rs = selectsql (sqlstr, msg)'查询楼房信息listviewl. listitems. clear'清空 ijstview 控件if rs. recordcount = 0 then'如果不存在楼房信息,添加按钮可用,其他按钮不可用cmdadd. enabled = true: cmdmodify. enabled = false: cmddelete. enabled = false cmdcance1enabled = false: cmdsave.enabled 二 fa

45、lseelse'如果存在楼房信息,初始化listview控件rs. movefirstdo until rs. eofkey = rs. fields ("buildingid") & rs. fields (,bdnamc,z)set list = listviewl. listitems. add(, , key, 1)rs.movenextloop'编辑控件可用性cmdadd.enabled 二 true: cmdmodify. enabled 二 true: cmddelete. enabled 二 truecmdcanccl.enabled

46、 = false: cmdsave.enabled 二 falsers. movefirst'返回到第一条记录end if'设置控件enable值call ctrenal)le(false)er,dwfe ctrenable过程设置空间的可属性其代码如下所示:private sub ctrenable(flag as boolean)'设置控件的enable值txtbuildingldenabled = flagtxtname .enabled = flag txtarea .enabled = flag txtlnvcst enabled = flag txtfloo

47、rs .enabled = flag txtroomsenabled 二 flag txtpositionenabled = flag txtnotes. enabled = flagend sub调用showdata 程,在控件中显示字段的相应数据,期代码如下:private sub showdtitao'在控件中显示数据if rs. recordcount <> 0 then'如果存在记录'为控件赋值txtbuildingld. text 二 rsfields("buildingid")txtname text 二 rs. field

48、s(z,bdname")txtarea.text 二 rs. fields("area")txttnvest.text 二 rsfields("investment") txtfloors.text = rs. fields("layers") txtrooms.text 二 rs. fields("roomn") txtposition. text 二 rs. fields("bdposition") txtnotes.text = rs. fields(,zbdintroducti

49、on")end ifend sub(2) 当用户单击listview控件中楼房图标时,将出发listviewl_cilk事件,在 控件中显示楼房信息,代码如下:private sub listviewl clicko'在控件中显示楼房信息dim key as stringif rs.recordcount > 0 thenkey 二 trim(listview1. selectedltem)sqlstr 二 ” select * from 楼房信息表 where buildingtd= ' & left (key, 4) & set rs = s

50、ei ectsql(sqlstr, msg)call showdata'重新显示数据end ifend sub(3) 当用户单击【保存】按钮时,将触发cmdsave_c订k事件。在保存数据库之前, 要对数据进行合法性检查,需要调用checkdata函数,返冋true时候表示数据合法, 返冋false吋表示数据非法。同时需要调用setdata过程来设置数据,其代码如下所示;private sub cmdsave_click()'保存操作on error goto errmsg'错误处理if not checkdata then exit sub'如果数据不合法就退

51、出操作if flag = "modify" then八如東是衫衣数据,给出修衣提示msg二msgbox c您确实耍修改这条数据吗?: vbyesno)if msg = vbycs thencall setdata'设直数据字段的值elseexit subend ifel self flag二"add" then'如果是添加新数据rs. addnowcall setdata'设置数据字段的值end ifrs. update'更新数据'设置控件的可用性cmdmodify. enabled = true: cmddele

52、te. enabled = true: cmdadd. enabled 二 truecmdsavc.enabled 二 false: cmdcanccl.enabled 二 falseif flag = "add" thenmsgbox("成功添加数据! ”)e scmsgbox c成功更新数据!)end ifcall loaddata'重新装载数据if rs. recordcount > 0 then'定位到添加或修改记录rs.movefirstrs. find ("buildingid二'"& trim

53、(txtbuildingid. text) &if not rs. eof then call showdata'璽新显示数据end ifexit suberrmsg:.'报告出错信息msgbox err description, vbexclamation,"出错"end sub调用checkdata函数,返冋ture时表示数据合法,返冋false时表示数据非法,其代码如下所示:private function checkdata0 as boolean'检查数据的合法性dim rst as adodb. recordsetdim msgt

54、 as stringmsgt 二'检查数据if trim(txtbuildingid. text) = ”" then msgt二楼房号为空;”elsclf lcn(txtbuildingid. text) <> 4 then msgt = msgt & "楼房号不是4位;"el self trim(txtncime. text) = "” then msgt = msgt & "楼名为空;end ifif not msgt 二then msgbox (msgt) checkdata = falseexit

55、functionend ifif flag = "add" then'检查楼房号是否为空'检查楼房号是否为4位'检杳楼名是否为空'如果提示信息不为空,给出错误提示'返回falsesqlstr 二"select * from 楼房信息表 where buildingtd='添加数据时,检査数据唯一性'"& trim(txt.bui idingtd. text) & "、”set rst = selectsql(sqlstr, msg)if rst. recordcount &

56、gt; 0 then'如果己经存在该楼房信息,提示重复添加msgbox ("该信息已经存在,重复添加! “)rst closecheckdata二false'如果信息重复添加,返冋falseexit functionend ifend ifcheckdata = true'如果数据检查合法,返回trueend function调用setdata过程。给数据库的字段赋值,其代码如下:private sub sctdatao'为字段设置数据:rs. fields("buildingtd") = txtbuildingtd. textrs

57、. fields(z,bdnamc,z)二 txtnamc.textrs. fields (z/areaz,) = txtarea .textrs. fields(zzinvestment")二 txt!nvest.textrs. fields("layers")二 txtfloors.textrs. fields("roomn") = txtrooms .textrs. fields(z,bdposition")二 txtposition. textrs. fields(/zbdintroductionz,)二 txtnolcs.t

58、extend sub(4) 当用户单击【取消】按钮时,将触发cmdcancel_clik()事件,对当前工作执 行取消操作,其代码如下:private sub cmdcancel click()'取消操作call showdata'璽新在控件中显示信息call ctrenable(ftilse)'设置控件 enable 值为不可用'修改、删除、添加按钮可用,保存和取消按钮不可用cmdaddenablcd = true: cmdmodify. enablcd = true: cmddclctc.enablcd = truecmdsaveenabled = false: cmdcancel.enabled = falseend sub6.1. 2房间管理房间管理的主要功能是在楼房下

温馨提示

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

评论

0/150

提交评论