售楼管理系统(第一稿).doc_第1页
售楼管理系统(第一稿).doc_第2页
售楼管理系统(第一稿).doc_第3页
售楼管理系统(第一稿).doc_第4页
售楼管理系统(第一稿).doc_第5页
已阅读5页,还剩30页未读 继续免费阅读

下载本文档

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

文档简介

售楼管理系统设计 -论文设计者:邓正雍 一、内容提要:房地产业的不断发展,利用电脑的先进管理手段,把售楼人员从一大堆合同中解放出来,将楼盘的销售推向“无纸化”已经成了解决当前房地产售楼管理的当务之急。本论文介绍的售楼管理系统就是为了实现这一目标而设计的。管理人员通过该系统可以及时了解楼盘的动态销售情况,还能够充分利用电脑的可检索性,方便、快速的了解有关销售的其他各种详细资料,以便即使做出正确决策。二、开发售楼管理系统所需基于的软件和硬件要求: 软件:1、用Visual Basic 6.0 作售楼管理系统前台开发工具。 2、用Access 2000 作售楼管理系统的后台数据库。 3、基于Windows 2000 操作系统硬件:1、cpu 赛扬 1.7G 2、内存 128M 3、硬盘 40 G三、售楼管理系统说明:(一)、系统组成的主要模块:房产管理、客户管理、收费管理、售楼管理。(二)、系统设计的主体结构:售楼管理系统房产管理客户管理收费管理售楼管理系统维护系统管理楼盘登记售楼人员登记售楼合同管理收款管理售楼人员查询售楼合同查询数据库备份数据库恢复添加用户退出系统收款情况查询收费查询收费登记客户资料查询客户资料登记户型登记楼盘查询户型查询 (三)、数据库设计:根据此系统的功能分析,系统数据库应该满足户型资料、客户资料、合同资料、收费资料、收款登记、售楼人员、收款登记、系统维护和系统管理9个功能的需求。所以需要利用Access建立一个House数据库,主要有包括如下8个表。表一:系统管理表,用于登录系统人员管理。字段名数据类型说明Czyh文本操作员号Mm文本操作员密码Qx文本权限表二:户型资料表,用于存放户型资料。字段名数据类型说明Hst_ID文本户型编号字段Hst_buildarea数字建筑面积Hst_usearea数字套内面积Hst_type文本房型Hst_memo文本简介Hst_picture文本保存图片表三:楼盘资料表,用于存放楼盘资料。字段名数据类型说明hos_id文本楼盘编号hos_hstid文本户型hos_price货币报价表四:合同资料表,用于存放合同资料。字段名数据类型说明Pct_ID数字合同编号Pct_houseID文本楼盘编号pct_buyerid文本购买人身份证Pct_salesID文本销售人员编号Pct_housequote货币楼盘单价Pct_discountrate数字折扣率Pct_discountcash货币折扣金额pct_carplaceid文本车位号Pct_carplace货币车位价格pct_basementid文本地下室编号Pct_basement货币地下室价格Pct_paykind文本付款方式Pct_bank文本贷款银行Pct_bookdate日期/时间认购日期Pct_pactdate日期/时间签定日期pct_state数字标记是否交款表五:客户资料表,用于存放客户资料。字段名数据类型说明Hon_ID文本身份证号Hon_name文本姓名Hon_sex文本性别Hon_tel文本电话Hon_handset文本手机Hon_job文本职业Hon_birthday日期/时间出生日期Hon_email文本电子邮件Hon_carcode文本车牌号Hon_zipcode文本邮编Hon_addr文本地址Hon_memo文本备注表六:收费信息表,用于保存收费信息。字段名数据类型说明fee_ID货币收费编号fee_houseID货币楼盘编号Fee_date货币收费时间fee_tv货币有线电视费Fee_tel货币电话调试费Fee_gas货币煤气初装费Fee_member货币公用设施费Fee_other货币其他费用Fee_deposit货币押金fee_skr文本收款人fee_jkr文本交款人表七:预计付款表,用于存放预计付款表信息。字段名数据类型说明Add_pactid数字预计付款序号Add_date日期/时间预计付款日期Add_money货币付款钱数shifoufukuan文本是否已付款标记表八:收款登记表,用于存放收款登记表信息字段名数据类型说明Icm_ID数字收款单号icm_hetonghao数字合同编号icm_houseID文本楼盘编号Icm_date日期/时间收款日期icm_money货币收款金额icm_paykind文本付款方式icm_skr文本收款人icm_jkr文本交款人编号表九:售楼人员表,用于存售楼人员表信息字段名数据类型说明Sal_ID文本人员编号Sal_sfz文本身份证号Sal_name文本姓名Sal_sex文本性别sal_birthday日期/时间出生日期Sal_tel文本电话Sal_handset文本手机Sal_email文本电子邮件Sal_zipcode文本邮编Sal_addr文本地址(四)、系统功能模块设计。1、创建售楼管理系统登录窗体。 在正式进入系统之前,需要对用户的身份进行确认,这是通过用户登录来实现的,所以系统中的第一个窗体也就应该是登录窗体。A.界面设计:控件名称属性属性值说明frmloginbackcolor&h00c0ffff&设置窗体背景颜色borderstyleFixed single设置窗体边框样式caption“登录”设置窗体标题iconSystem.ico设置窗体图标startupposition屏幕中心设置窗体初始位置Lable1caption“用户名”设置标题backcolor&h00c0ffff&设置背景颜色forecolor&h00c000c0&设置前景颜色Lable2caption“用户名”设置标题backcolor&h00c0ffff&设置背景颜色forecolor&h00c000c0&设置前景颜色cmbnametext“ ”设置文本框为空txtpwdtext“ ”设置文本框为空cmdokcaption“确定”设置命令按钮标题cmdcancelcaption“取消”设置命令按钮标题B窗体设计状态效果如下:C.工作流程: 此系统开启的第一个界面就是上述窗体,用户名中包括system模式和guset模式的两种形式。如果登录用户是system用户,他属于特权用户,具有对系统的完全管理权限。如果登录用户是guset用户,他属于一般用户,对系统中的某些功能无法进行管理。 当用户名和密码录入都正确时,点(确定)按钮就会进入主窗体,如果用户名或密码录入错误,系统将作出提示而重新录入。当点(取消)按钮时将退出整个系统。D模块原代码: Option ExplicitDim cnt As Integer 记录输入次数Dim sql As StringDim rs_login As New ADODB.RecordsetPrivate Sub cmdcancel_Click() conn.Close 关闭数据库连接 Set conn = Nothing Unload MeEnd SubPrivate Sub cmdok_Click() Dim userID As String If Trim(cmbName.Text) = Then 判断输入的用户名是否为空 MsgBox 没有这个用户, vbOKOnly + vbExclamation cmbName.SetFocus Else 判断用户名和密码是否正确 sql = select * from 系统管理表 where czyh= & cmbName.Text & rs_login.Open sql, conn, adOpenKeyset, adLockPessimistic If rs_login.EOF = True Then MsgBox 没有这个用户, vbOKOnly + vbExclamation, cmbName.SetFocus Else 检验密码是否正确 If Trim(rs_login.Fields(1) = Trim(txtPwd.Text) Then userID = cmbName.Text username = rs_login.Fields(2) 记录登录用户的类型,以便权限设置 Unload Me frmmain.Show rs_login.Close Exit Sub Else MsgBox 密码不正确, vbOKOnly + vbExclamation, txtPwd.SetFocus End If End If rs_login.Close End If cnt = cnt + 1 输入次数加1 If cnt = 3 Then MsgBox 您输入密码错误次数太多!, vbExclamation, Unload Me End If End SubPrivate Sub Form_Load() Dim connectionstring As String 定义连接字符串 connectionstring = provider=Microsoft.Jet.oledb.4.0; & _ data source= & App.Path & House.mdb conn.Open connectionstring 打开数据库 sql = select * from 系统管理表 检索系统管理表 rs_login.Open sql, conn, adOpenKeyset, adLockPessimistic 打开记录集 If rs_login.EOF = False Then 有记录时逐一添加到cmbName组合框 Do While rs_login.EOF = False cmbName.AddItem (rs_login.Fields(0) rs_login.MoveNext Loop cmbName.ListIndex = 0 默认显示第一个子项 End If rs_login.Close cnt = 0 初始化输入次数End Sub2建立主窗体。 此窗体为主界面,它具有菜单功能和按钮功能项,通过它的两项功能才能调用其他的工作窗体。A.界面设计。属性属性值说明caption“售楼管理系统”设置窗体标题iconSystem.ico设置窗体图标pictureDesktop.bmp设置窗体背景图案startupposition2-Centerscreen设置窗体默认位置windowstate2-maximized设置窗体默认状态名称frmmain设置窗体名称 菜单属性设置:标题名称房产管理Housemanage户型登记Housestylelogin楼盘登记buildinglogin户型查询housestylefind楼盘查询buildingfind客户管理customermanage客户资料登记Customerlogin客户资料查询customerdatefind收费管理chargemanage收费登记chargelogin收费查询chargefind售搂管理buildingsalemanage销售人员登记salemanlogin售搂合同管理buildingsalebargain收款管理gatheringmanage销售人员查询salemanfind售搂合同查询buildingsaledfind收款情况查询gatheringfind系统维护syetemmaintenance数据备份databasebak数据恢复datebaserecovery系统管理sysmanage添加用户adduser退出系统exitsysB窗体设计状态效果如下: 菜单设计状态效果如下:C.工作流程: 通过登录窗体成功后就进入了主窗体,当选择菜单中的某一项的下列选项时就会弹出相应功能的模块程序,也可以使用快捷的按钮方式。这些功能方便,简单,易操作和理解。D模块原代码:Option ExplicitPrivate Sub adduser_Click()Frmadduser.ShowEnd SubPrivate Sub buildingfind_Click()Frmbuildingfind.ShowEnd SubPrivate Sub buildinglogin_Click()frmBuildingLogin.ShowEnd SubPrivate Sub buildingsale_Click()frmHetongLogin.ShowEnd SubPrivate Sub buildingsalebargain_Click()frmHetongFind.ShowEnd SubPrivate Sub chargefind_Click()frmShoufeiFind.ShowEnd SubPrivate Sub chargelogin_Click()Frmshoufeilogin.ShowEnd SubPrivate Sub customerdatafind_Click()Frmkehufind.ShowEnd SubPrivate Sub customerlogin_Click()Frmkehulogin.ShowEnd SubPrivate Sub databasebak_Click()Dim fsofileIf conn.State 0 Then conn.Close Set conn = Nothing Set fsofile = CreateObject(scripting.filesystemobject) CommonDialog1.Filter = mdb文件(*.mdb)|*.mdb CommonDialog1.CancelError = True On Error GoTo myerr CommonDialog1.ShowSave fsofile.copyfile App.Path & House.mdb, CommonDialog1.FileTitle Dim connectionstring As String connectionstring = provider=Microsoft.Jet.oledb.4.0; & _ data source= & App.Path & House.mdb conn.Open connectionstring Exit Submyerr:End SubPrivate Sub databaserecovery_Click() Dim fsofile If conn.State 0 Then conn.Close Set conn = Nothing Set fsofile = CreateObject(scripting.filesystemobject) CommonDialog1.Filter = mdb文件(*.mdb)|*.mdb CommonDialog1.CancelError = True On Error GoTo myerr CommonDialog1.ShowOpen fsofile.copyfile CommonDialog1.FileTitle, App.Path & House.mdb Dim connectionstring As String connectionstring = provider=Microsoft.Jet.oledb.4.0; & _ data source= & App.Path & House.mdb conn.Open connectionstring Exit Submyerr:End SubPrivate Sub exitsys_Click()Unload MeEnd SubPrivate Sub Form_Load()If username = guest Then buildingsalebargain.Enabled = False databaserecovery.Enabled = False adduser.Enabled = False End IfEnd SubPrivate Sub Form_Unload(Cancel As Integer) If MsgBox(确实要退出本系统吗?, vbYesNo + vbQuestion, 提示) = vbNo Then Cancel = True 如果用户不退出,则取消卸载 Else 如果确定退出,在卸载之前关闭数据库 If conn.State 0 Then conn.Close 关闭数据库连接 Set conn = Nothing End IfEnd SubPrivate Sub gatheringfind_Click()frmShoukuanFind.ShowEnd SubPrivate Sub gatheringmanage_Click()Frmshoukuanlogin.ShowEnd SubPrivate Sub housestylefind_Click()Frmbuildingstylefind.ShowEnd SubPrivate Sub housestylelogin_Click() Frmhuxinglogin.ShowEnd SubPrivate Sub salemanfind_Click()frmSalemanFind.ShowEnd SubPrivate Sub salemanlogin_Click()frmSalemanLogin.ShowEnd SubPrivate Sub Toolbar1_ButtonClick(ByVal Button As MSComctlLib.Button)Select Case Button.Key 按关键字选择 Case bt_loupan 如果单击按钮关键字为bt_loupan则显示楼盘查询窗体 Frmbuildingfind.Show 1 Case bt_kehu Frmkehufind.Show 1 Case bt_shoufei frmShoufeiFind.Show 1 Case bt_shoulou frmHetongFind.Show 1 Case bt_shoukuan Frmshoukuanlogin.Show 1 Case bt_tuichu Unload Me End SelectEnd Sub3、建立户型登记窗体。主要用来对户型资料进行登记,包括添加、修改、删除等各种操作。A. 界面设计控件名称属性属性值说明Command1Caption“增加”设置命令按钮标题名称cmdadd设置命令按钮名称Command2Caption“修改”设置命令按钮标题名称cmdmodify设置命令按钮名称Command3Captioncmddel设置命令按钮标题名称“删除”设置命令按钮名称Command4Captioncmdexit设置命令按钮标题名称“退出“设置命令按钮名称Frame1Captioncmdexit设置框架标题Label1Caption“户型登记“设置标签标题Label2Caption“户型编号“设置标签标题Label3Caption“建筑面积“设置标签标题Label4Caption“平方米“设置标签标题Label5Caption“套内面积“设置标签标题Label6Caption“平方米“设置标签标题Label7Caption“-“设置标签标题Label8Caption“简介“设置标签标题Label9Caption“图片“设置标签标题Image1borderstyle0-none设置图片边框样式Text1名称“txthuxingnum “设置文本框名称Text“ “设置文本框内容Text2名称 “txtjianzhumianji “设置文本框名称Text“ “设置文本框内容Text3名称“ txttaomianji“设置文本框名称Text“ “设置文本框内容Text4名称“ txtfangxing “设置文本框名称Text“ “设置文本框内容Text5名称“ txtjianjie“设置文本框名称Text“ “设置文本框内容Combo1Text选择户型设置组合框文本Mshglexgrid名称“grdhuxing“设置表格控件的名称B窗体设计状态效果如下:C.工作流程: 窗体加载是使用ADO进行数据库的连接,同时在表格中显示出数据。单击“增加”按钮时,所有的文本框为可用状态,并且设置为空,“增加”按钮变为“保存”按钮。在输入完信息后,单击“保存”按钮,判断户型编号是否重复,对于不重复的户型保存如库。D.原代码:Option ExplicitDim rs_huxing As New ADODB.RecordsetDim gridclick As BooleanDim select_row As StringDim getrow As LongPrivate Sub cmdadd_Click() On Error GoTo adderror If cmdAdd.Caption = 保 存 Then 下面对输入的有效性进行验证 If Trim(txtHuxingnum.Text) = Then MsgBox 户型编号不能为空!, vbOKOnly + vbExclamation, txtHuxingnum.SetFocus Exit Sub End If If Trim(txtFangxing.Text) = Then MsgBox 请选择房型!, vbOKOnly + vbExclamation, Combo1.SetFocus Exit Sub End If If Trim(txtJianzhumianji.Text) = Then MsgBox 建筑面积不能为空!, vbOKOnly + vbExclamation, txtJianzhumianji.SetFocus Exit Sub End If If Trim(txtTaomianji.Text) = Then MsgBox 套内面积不能为空!, vbOKOnly + vbExclamation, txtTaomianji.SetFocus Exit Sub End If If Not IsNumeric(txtJianzhumianji.Text) Then 面积必须是数值 MsgBox 建筑面积请输入数字!, vbOKOnly + vbExclamation, txtJianzhumianji.SetFocus Exit Sub End If If Not IsNumeric(txtTaomianji.Text) Then MsgBox 套内面积请输入数字!, vbOKOnly + vbExclamation, txtTaomianji.SetFocus Exit Sub End If rs_huxing.MoveFirst 输入合法,开始插入 Dim i As Integer For i = 0 To rs_huxing.RecordCount - 1 逐条检查户型编号是否已经存在 If Trim(rs_huxing.Fields(0) = Trim(txtHuxingnum.Text) Then MsgBox 户型编号重复!, vbOKOnly + vbExclamation, txtHuxingnum.SetFocus Exit Sub End If rs_huxing.MoveNext Next i rs_huxing.MoveLast 户型编号不存在,在最后插入新纪录 rs_huxing.AddNew rs_huxing.Fields(0) = Trim(txtHuxingnum.Text) 逐字段插入 rs_huxing.Fields(1) = CSng(txtJianzhumianji.Text) 数值转换为字符串 rs_huxing.Fields(2) = CSng(txtTaomianji.Text) rs_huxing.Fields(3) = Trim(txtFangxing.Text) rs_huxing.Fields(4) = Trim(txtJianjie.Text) rs_huxing.Fields(5) = Trim(txtHuxingnum.Text) rs_huxing.Update 将插入的记录保存 MsgBox 添加成功!, vbOKOnly + vbExclamation, With grdHuxing 将表格最后一行数据更新 .Rows = rs_huxing.RecordCount + 1 .Row = grdHuxing.Rows - 1 .Col = 0 .Text = Trim(txtHuxingnum.Text) .Col = 1 .Text = Trim(txtJianzhumianji.Text) .Col = 2 .Text = Trim(txtTaomianji.Text) .Col = 3 .Text = Trim(txtFangxing.Text) .Col = 4 .Text = Trim(txtFangxing.Text) .Col = 5 .Text = Trim(txtJianjie.Text) End With cmdAdd.Caption = 增 加 成功保存后标题变为“增 加” Else 按钮标题为增 加时 txtHuxingnum.Text = 各个字段为空 txtJianzhumianji.Text = txtTaomianji.Text = txtJianjie.Text = cmdModify.Enabled = False 新增记录时,不能修改和删除记录 cmdDel.Enabled = False cmdAdd.Caption = 保 存 按钮标题变为“保 存” End If Exit Subadderror: MsgBox Err.DescriptionEnd SubPrivate Sub cmddel_Click()Dim answer As String Dim delete_row As String On Error GoTo delerror answer = MsgBox(确定要删除吗?, vbYesNo + vbQuestion, ) If answer = vbYes Then 确定删除 rs_huxing.MoveFirst Dim i As Integer For i = 0 To rs_huxing.RecordCount - 1 查找需要删除的记录 If rs_huxing.Fields(0) = txtHuxingnum.Text Then rs_huxing.Delete 删除 rs_huxing.Update 保存 MsgBox 删除成功!, vbOKOnly + vbExclamation, grdHuxing.RemoveItem getrow 从表格中删除此行 Exit Sub End If rs_huxing.MoveNext Next i Else Exit Sub End If Exit Subdelerror: MsgBox Err.DescriptionEnd SubPrivate Sub cmdexit_Click() Unload MeEnd SubPublic Sub setgrid()Dim i As IntegerOn Error GoTo seterrorWith grdHuxing .ScrollBars = flexScrollBarBoth .FixedCols = 1 .Rows = rs_huxing.RecordCount + 1 .Cols = 6 .SelectionMode = flexSelectionByRowFor i = 0 To .Rows - 1 .RowHeight(i) = 315Next iFor i = 0 To .Cols - 1 .ColWidth(i) = 1300Next iEnd WithExit Subseterror: MsgBox Err.Description End SubPublic Sub setgridhead() 设置表头格式 On Error GoTo setheaderror grdHuxing.Row = 0 在第一行中逐列设置显示文本,作为表头 grdHuxing.Col = 0 grdHuxing.Text = 户型编号 grdHuxing.Col = 1 grdHuxing.Text = 建筑面积 grdHuxing.Col = 2 grdHuxing.Text = 套内面积 grdHuxing.Col = 3 grdHuxing.Text = 户型 grdHuxing.Col = 4 grdHuxing.Text = 图片文件 grdHuxing.Col = 5 grdHuxing.Text = 户型简介 Exit Subsetheaderror: MsgBox Err.DescriptionEnd SubPrivate Sub cmdmodify_Click() On Error GoTo modifyerror txtHuxingnum.Enabled = False 户型不可更改 If Trim(txtFangxing.Text) = Then 修改后房型不能为空 MsgBox 房型不能为空!, vbOKOnly + vbExclamation, txtFangxing.SetFocus Exit Sub End If rs_huxing.MoveFirst Dim i As Integer For i = 0 To rs_huxing.RecordCount - 1 If Trim(rs_huxing.Fields(0) = Trim(txtHuxingnum.Text) Then 户型相同,说明是同一条记录,覆盖 rs_huxing.Fields(1) = CSng(txtJianzhumianji.Text) rs_huxing.Fields(2) = CSng(txtTaomianji.Text) rs_huxing.Fields(3) = Trim(txtFangxing.Text) rs_huxing.Fields(4) = Trim(txtJianjie.Text) rs_huxing.Fields(5) = Trim(txtHuxingnum.Text) rs_huxing.Update 保存修改 MsgBox 修改成功!, vbOKOnly + vbExclamation, With grdHuxing 更新表格 .Row = getrow .Col = 0 .Text = Trim(txtHuxingnum.Text) .Col = 1 .Text = Trim(txtJianzhumianji.Text) .Col = 2 .Text = Trim(txtTaomianji.Text) .Col = 3 .Text = Trim(txtFangxing.Text) .Col = 4 .Text = Trim(txtFangxing.Text) .Col = 5 .Text = Trim(txtJianjie.Text) End With Exit Sub End If rs_huxing.MoveNext Next imodifyerror: MsgBox Err.DescriptionEnd SubPrivate Sub Form_Load()Dim sql As String On Error GoTo load

温馨提示

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

评论

0/150

提交评论