




免费预览已结束,剩余30页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1 题目题目 房产中介管理系统房产中介管理系统 I 摘摘 要要 房产中介管理系统是为房屋中介机构管理房屋出租 出售信息资料而设计的信息管 理系统 包含有后台数据库和前台应用程序系统两大部分 后台数据库要求数据的一致 性和完整性 安全性 用以储存单位工程文档资料及相关信息 前台应用程序系统要求应 用程序功能完备 易于使用和界面友好等 经过全面分析 确定数据库采用 ACCESS2000 开发工具为 Delphi 7 0 利用 Microsoft 公司的 ADO ActiveX Data Object ActiveX 数据对象 访问和操作数据库服务器中的数据 关键词 数据库 面向对象开发软件包 数据对象 II Abstract House Agency Management System is to design for house agency enterprise or business It have two include the database of backstage supporter and customer application system the database of backstage supporter ask safety and integrity and the consistency of data to store unit project document information and related information customer end ask application program function complete easily to use and interface friendly etc Via overall analysis determine to use database adopt ACCESS 2000 development tool is Delphi 7 0 ADO visit and operand according to the data in server Keywords database System Delphi ADO I 目 录 摘摘 要要 I ABSTRACT II 第一章第一章 开发概述开发概述 1 1 1 系统背景简介系统背景简介 1 1 2 DELPHI7 0 编程软件简介编程软件简介 1 1 3 数据库技术概述数据库技术概述 2 1 4 ADO 编程技术概述编程技术概述 2 第二章第二章 需求分析需求分析 3 2 1 需求调研需求调研 3 2 1 1 业务流程图业务流程图 3 2 1 2 功能需求 功能需求 4 2 1 3 性能需求性能需求 4 2 2 新系统逻辑方案 新系统逻辑方案 5 2 2 1 数据流程图 简称为数据流程图 简称为 DFD 5 2 2 2 数据字典 简称为数据字典 简称为 DD 6 第三章第三章 总体设计总体设计 8 3 1 系统模块图系统模块图 8 3 2 程序流程程序流程 9 3 3 模块设计模块设计 9 3 4 数据流图数据流图 10 3 5 数据库设计数据库设计 10 3 5 1 ADO 使用方法综述使用方法综述 10 3 5 2 E R 图图 12 3 5 3 新建数据库及字段新建数据库及字段 13 第四章第四章 详细设计详细设计 15 4 1 系统项目文件系统项目文件 15 4 2 闪现窗体的实现闪现窗体的实现 17 4 3 用户登录模块用户登录模块 17 4 4 主窗体模块主窗体模块 19 4 5 房屋出租登记窗体房屋出租登记窗体 21 4 6 房屋出租查询模块房屋出租查询模块 22 II 4 7 改变密码模块改变密码模块 23 4 8 其它模块其它模块 24 4 9 本软件所用控件的安装及使用方法本软件所用控件的安装及使用方法 25 4 10 程序设计过程中遇到的问题及解决方法程序设计过程中遇到的问题及解决方法 25 第五章第五章 系统性能测试系统性能测试 26 第六章第六章 总结总结 27 致谢致谢 28 参考文献参考文献 29 1 第一章第一章 开发概述开发概述 1 1 系统背景简介 房产中介数据库管理系统是一个房屋中介机构不可缺少的部分 能够为操作人员和 用户提供充足的信息和快速查询手段 但一直以来人们使用传统人工的方式管理房屋出 租 出售等房屋数据 这种管理存在着许多缺点 如 效率低 保密性差 时间一长 将产生大量的文件和数据 对于查找 更新和维护带来了不少的困难 随着科学技术的不 断提高 计算机科学日渐成熟 使用计算机对工程文档资料信息进行管理 具有检索迅 速 查找方便 可靠性高 存储量大 保密性好 寿命长 成本低等 这些优点能够极 大地提高工程文档资料管理的效率 也是企事业走向科学化 规范化管理必由之路 房产中介管理系统对房屋出租 出售等资料信息的存储采用了动态的创建 先建立 系统应用原型 然后对初始原型系统进行需求迭代 不断修正和改进 直到形成用户满 意的可行系统 房产中介管理系统的功能有 方便地操作数据库 包括增加数据 删除数据 修改数 据等 提供两种不同的打印模式 可以随时打印专业的报表 提供完善的查询方法 可以 对数据库的所有内容进行查询 还可以进行组合查询 可以随意修改数据的内容 可以将 登录用户分成三个层次 超级用户 管理员 普通客户 超级用户拥有操作本软件的所 有权利 管理员拥有除 用户管理 外操作本软件的所有权利 客户只拥有数据浏览等 操作本软件的部分权利 可以任意修改登录密码 保证数据库的安全 因此 开发这样 的管理软件成为很有必要的事情 1 2 Delphi7 0 编程软件简介 Delphi 是著名的 Borland 现在已和 Inprise 合并 公司开发的可视化软件开发 工具 真正的程序员用 c 聪明的程序员用 Delphi 这句话是对 Delphi 最经典 最 实在的描述 Delphi 被称为第四代编程语言 它具有简单 高效 功能强大的特点 和 VC 相比 Delphi 更简单 更易于掌握 而在功能上却丝毫不逊色 和 VB 相比 Delphi 的功能更强大 更实用 可以说 Delphi 同时兼备了 VC 功能强大和 VB 简单易学 的特点 它一直是程序员至爱的编程工具 Delphi 具有以下的特性 基于窗体和面向对象的方法 高速的编译器 强大的数 据库支持 与 Windows 编程紧密结合 强大而成熟的组件技术 但最重要的还是 Object Pascal 语言 它才是一切的根本 Delphi 提供了各种开发工具 包括集成环 境 图像编辑 Image Editor 以及各种开发数据库的应用程序 如 Desktop Database Expert 等 除此之外 还允许用户挂接其它的应用程序开发工具 如 Borland 公司的资源编辑器 Recourses Workshop 在 Delphi 众多的优势当中 它在数据库方面的特长显得尤为突出 适应于多种数 据库结构 从客户机 服务机模式到多层数据结构模式 高效率的数据库管理系统和 新一代更先进的数据库引擎 最新的数据分析手段和提供大量的企业组件 Delphi 发展至今 从 Delphi Delphi 到现在的 Delphi7 不断添加和改进各 种特性 功能越来越强大 Delphi7 添加了对 IDE 集成开发环境 的很多改进新特性 2 扩展了数据库支持 ADO 和 InterBase 数据库 带有 Internet 支持的 MIDAS 改进版 Team Souse 版本控制工具 转换功能 框架概念以及很多的新组件与新特性 Delphi7 0 软件开发工具是 Borland 公司推出的一个完全导向的可视化系统开发环 境的工具 它具有功能强大 运行速度快 易于学习和使用以及开发迅速等特点 所 以一经推出就受到广大用户的喜欢 Delphi 结合了可视化技术 面向对象技术 数据 库技术以及网络技术等多种先进的软件编程技术和思想 并使用了世界上最快的编译 器 使其成为创建功能丰富 界面友好的 Windows 应用软件的工具之一 Delphi7 0 版 本功能更为强大 不但继承了前面所有版本的优良特性 而且纠正了一些错误 它对 Web 服务 数据库的支持更加完善 Delphi7 0 具有强大的数据库应用程序开发功能 它能适应各种大型数据库 如 Oracle Sybase SQL 等 Delphi7 0 数据库应用程序基于 Borland 强大的数据库引擎 BDE 和丰富的数据库组件 利用 Delphi7 0 开发数据库应用程序 它会使用户得到 意想不到的收获 1 3 数据库技术概述 产生于本世纪 60 年代末 70 年代初的数据库技术对于每一个人可能都不陌生 在现 代社会它的应用范围越来越广 在各个领域都可以看到数据库技术的应用 它的出现使 得计算机应用进了新的时期 社会的每一领域都与计算机发生了联系 数据库技术聚集 了数据处理最精华的思想 是管理信息最先进的工具 通常有两种方法保存数据库 第一种是将整个数据库作为一个单独文件保存 如 Access 数据库 第二种方法是将数据库中每个数据表 索引以及其他一些数据库元素 分别保存在各自的文件中 Delphi7 0 对这两种方法都支持 1 4 ADO 编程技术概述 Microsoft 公司的 ADO ActiveX Data Object ActiveX 数据对象 是微软提出的 新标准 它使得客户端应用程序能够通过任何 OLEDB 提供者来访问和操作数据库服务器 中的数据 而不必进行 ODBC 配置 ADO 有两个主要优点 其一是易于使用 速度快 内存支出少 其二是 远程数据 访问 能够通过一个来回的传输将数据从服务器移动到客户端应用程序或 Web 中 然后 在客户端对数据进行操作 最后将更新数据返回服务器 3 第二章第二章 需求分析需求分析 2 1 需求调研 2 1 1 业务流程图 详细调查的重点是对管理业务的流程进行描述 通过采用系统流程图中部分图形工 具来描述管理活动 进行规范化说明 业务流程图的符号说明如图 2 2 所示 系统中人员 实体或单据 实物或信息流 处理 数据存储 图图 2 2 1 1 业务流程图图例业务流程图图例 详细调查之后 结合现行公司运营模式 为开发本系统而绘制出的管理业务流程图 如图 2 2 所示 图图 2 22 2 房产中介管理系统业务流程图房产中介管理系统业务流程图 外部实体 签约合同 未签约合同 出租定单 管理员 管理中心 出租台帐 外部实体 购买定单 购买凭证 出租 购买 出售台帐 4 2 1 2 功能需求 对于本系统 我们需要实现以下一些基本功能 1 登录管理 为了软件和数据库的安全 验证登录人员的不同身份 防止非法用户 入侵系统 将登录用户分成三个层次 超级用户 管理员 普通客户 超级用户拥有操 作本软件的所有权利 管理员拥有除 用户管理 外操作本软件的所有权利 客户只拥 有数据浏览等操作本软件的部分权利 2 闪现窗体 在登录窗体之前出现 主要显示以下信息 一是显示本系统的题目即 房产中介管理系统 二是显示一行信息 即 正在加载中 3 主界面窗体 本窗体的功能很简单 主要是为进入本系统其它所有的功能窗体提 供一个操作方便 界面美观的基础平台 4 房屋出租登记窗体 功能是对房屋出租信息进行登记 主要是进行添加出租信息 的登记操作 5 房屋出租信息查询窗体 功能主要是可以对所有的房屋出租的信息进行查询 可以是简单的通过按 收件号 进行查询 也可以通过 高级查询 按钮进入高级查询 页面 通过多个字段进行高级查询 从而为用户提供快速 准确的查询服务 6 房屋出售登记窗体 功能是对房屋出售信息进行登记 主要是进行添加出售信息 的登记操作 7 房屋出售信息查询窗体 功能主要是可以对所有的房屋出售的信息进行查询 可以是简单的通过按 收件号 进行查询 也可以通过 高级查询 按钮进入高级查询 页面 通过多个字段进行高级查询 8 文档管理 主要功能是通过程序调用 word 打开 房屋租凭合同 商品房买 卖合同 二手房屋买卖合同 居间协议 二手房买卖流程 等电子文档 供购房 者和中介公司签订合同提供方便 9 系统维护窗体 主要功能是对操作数据库的管理人员进行各种资料的维护 如超 级用户登录后可以增加管理员帐户 增加客人帐户 修改自身密码 更换操作员 管理 员用户登录后可以修改自身密码 更换操作员 客人帐户登录后则不能进行本单元的任 何操作 2 1 3 性能需求 系统的运行对运行环境还有一些要求 1 硬件环境 处理器 Intel Pentium III 或者更高 内存 128M 硬盘空间 3GB 显卡 SVGA 显示适配器 2 软件环境 操作系统 Windows 98 Me 2000 XP 数据库 Access2000 5 房屋资料信息表 客户资料信息表 2 2 新系统逻辑方案 系统分析的主要成果是系统的逻辑模型 本系统的逻辑模型主要是以系统的数据流 图和数据字典为主要描述工具 即在公司仓库管理方式和业务流程进行认真分析和研究 的基础上 排除现有组织机构和业务分工所造成的信息障碍 完全从业务管理功能和管 理对象出发 按照信息系统中应有的数据流和数据结构来勾画系统的概貌 2 2 1 数据流程图 简称为 DFD 如图 2 3 房产中介管理系统系统流程图 数据流程图是组织中信息运动的抽象 它是在调研的基础上 从系统的科学性 管 理的合理性 实际运动的可行性角度出发 将信息处理功能和彼此之间的联系自顶向下 逐层分解 从逻辑上精确地描述系统应具有的数据加工功能 数据输入 数据输出 数 据存储及数据来源和去向 外部实体 等项目 首先 分析房产中介管理系统的总体情况 划分系统边界 识别系统的数据来源和 去处 确定外部实体 得出系统的顶层数据流程图 然后划分出几个主要的信息管理功能 并明确各功能之间的联系 绘制出数据流程 操作员 房屋 出 租 客户 管 理 房产 出 售 房 产 状态 查 询 操作员 房管中心 房屋 信息 管 理 6 图 房产中介管理系统的数据流程图如图 2 4 所示 下面是这个系统的数据流程图 分为房屋基本信息管理 房屋出租管理 房屋出售 管理 房产状态查询管理等模块 2 2 2 数据字典 简称为 DD 绘制 DFD 只是对数据处理和彼此之间的联系进行了说明 为进一步明确数据的 详细内容和数据加工过程 应将数据流图中的全部数据流及其组成部分的数据元素 数据 存储 数据加工 通过数据字典描述清楚 以便于此后系统设计的进行 这就需要开发人 员编写详细的数据字典 来描述系统开发过程的细节 下面列出本系统中的数据项 数据流 数据存储 加工处理和数据结构的数据字典 数据字典可采用图表格式或较紧凑的记录格式描述 本文采用的是图表格式 1 数据项的 DD 表列举如下 限于篇幅 仅列举部分 表表 2 2 1 1 房产编号的数据字典房产编号的数据字典 数 据 项 系统名 房产中介管理系统 编号 I001 名称 房产号 别名 数据项值 类型 字符型 长度 10 个字节 取值范围 简述 每个房屋都具有唯一的编号 它是某个房屋的唯一标识符 它设计成 自动编号 由系统自动生成 编写日期修改记录 审核日期 表表 2 2 2 2 房屋状态的数据字典房屋状态的数据字典 数 据 项 系统名 房产中介管理系统 编号 I002 名称 房产状态 别名 数据项值 类型 字符型 长度 20 个字节 取值范围 简述 房产状态是房产中介管理系统中一个重要的字段 描述了当前房产属 于出租或出售的类型以及是否已经出租和出售 编写日期修改记录 审核日期 7 表表 2 2 3 3 客户编号的数据字典客户编号的数据字典 2 数据流的 DD 表列举如下 表表 2 2 5 5 房产出租登记的数据字典 仅举一例 房产出租登记的数据字典 仅举一例 3 数据处理加工的 DD 表列举如下 表表 2 72 7 现有库存的数据字典 仅举一例 现有库存的数据字典 仅举一例 数 据 项 系统名 房产中介管理系统 编号 I003 名称 客户编号 别名 数据项值 类型 字符型 长度 20 个字节 取值范围 简述 它是识别客户的唯一编号 编写日期修改记录 审核日期 数 据 流 系统名 房产中介管理系统 编号 F1 条目名称 出租登记 来源 操作员员 去处 中介管理部门 公司其它高层领导 数据流组成 出租登记 编号 地址 建筑面积 楼层 租金 竣工日期 区 域 简要说明 当某房产房屋出租时登记的信息 编写日期修改记录 审核日期 数 据 处 理 加 工 系统名 房产中介管理系统 编号 条目名称 房屋状态 输入 数据流 F3 输出 数据流 F4 处理逻辑 对房屋出租或出售的状态进行处理 简要说明 当某房屋已经出售将对该房屋的状态修改为已处理 编写日期修改记录 审核日期 8 第三章第三章 总体设计总体设计 3 1 系统模块图 房 产 中 介 管 理 系 统 房屋出租登记模块 房屋出租查询模块 房屋出售登记模块 房屋出售查询模块 文档管理模块 系统维护模块 9 3 2 程序流程 3 3 模块设计 按照需求分析的结果 本系统将分为以下几大模块 各模块的功能及对应的窗体名 称如下所示 1 闪现窗体 在登录窗体之前出现 主要显示以下信息 一是显示本系统的题目即 房产中介管理系统 二是显示作者即本人 三是显示一行信息 即 正在加载 中 对应窗体 Form3 2 登录管理 为了软件和数据库的安全 验证登录人员的不同身份 防止非法用 户入侵系统 将登录用户分成三个层次 超级用户 管理员 普通客户 对应窗体 Frm login 3 主界面窗体 本窗体的功能很简单 主要是为进入本系统其它所有的功能窗体提 供一个操作方便 界面美观的基础平台 对应窗体 Mainform 4 房屋出租登记窗体 功能是对房屋出租信息进行登记 主要是进行添加出租信息 的登记操作 对应窗体 Frm lenddetail 5 房屋出租信息查询窗体 功能主要是可以对所有的房屋出租的信息进行查询 闪现窗体模块 登录类型选择模块 主窗体模块 房 屋 出 租 登 记 模 块 房 屋 出 租 查 询 模 块 房 屋 出 售 登 记 模 块 房 屋 出 售 查 询 模 块 文 档 管 理 模 块 系 统 维 护 模 块 10 对应窗体 Frm Querylend 6 房屋出售登记窗体 功能是对房屋出售信息进行登记 主要是进行添加出售信息 的登记操作 对应窗体 Frm saledetail 7 房屋出售信息查询窗体 功能主要是可以对所有的房屋出售的信息进行查询 对应窗体 Frm Querysale 8 文档管理 主要功能是通过程序调用 word 打开 房屋租凭合同 商品房买 卖合同 二手房屋买卖合同 居间协议 二手房买卖流程 等电子文档 供购房 者和中介公司签订合同提供方便 9 系统维护窗体 主要功能是对操作数据库的管理人员进行各种资料的维护 用户 管理对应窗体 Frm userpower 修改密码对应窗体 Frm userchgpwd 3 4 数据流图 数据流图主要是从数据流的角度来描述一个企事业组织的业务活动 它具体描述一 个组织有哪几个组成部分 也描述了来往于各部分之间的数据流 数据流图有三个基本 要素 数据流 加工 文件 数据流是由一组固定成分的数据组成 加工是对数据进行 的操作 文件是暂存贮的数据 由于本系统只有一步数据的录入 并没有数据的流动 加工等 所以比较简单 本系统的数据流图如下所示 处理 信息 数据库 客户信息 数据库信息 用户 3 5 数据库设计 3 5 1 ADO 使用方法综述 本毕业设计就是用 ADO 操作数据库 data mdb 在 Delphi 组件面板上有 ADO 组件页 其中前 6 个是 ADO 组件 在空白窗体上放置一个 ADOConnection1 组件 一个 ADOTable1 组件 一个 DataSource1 组件 一个 DBGrid1 组件 先设定一下部分组件属性如下 设定 DBGrid1 组件的 DataSource 属性为 DataSource1 设定 DataSource1 组件的 Dataset 属性为 用户 信息 查询 用户 查询信息 查询结果 信息 11 ADOTable1 双击 ADOConnection1 组件或者在其属性列表中点击 ConnectionString 后的 省略号都可以打开连接字符串设定窗口如图 3 1 点击 Build 按钮 将打开数据连接 属性窗口如图 3 2 图 3 1 ConnectionString 所示 其中有四个页面 在第一个 提供者 页面中 列出了可以使用的各种驱动数据 库驱动 我们选择 Microsoft Jet 4 0 OLE DB Provider 驱动 选择完毕数据库驱动后 点击 连接 页面 如图 3 3 所示 在这里输入或选择数据库 这里我们查找选择数据 库为 C 房屋中介管理系统 data mdb 如果数据库有密码可将 空白密 图 3 2 数据连接属性的提供者 码 复选框去掉选择 就可以输入密码 选中 允许保存密码 这样以后就可以无需再 输入密码了 接下来可以点击 测试连接 按钮 如果提示 测试连接成功 那么说明 数据库可正常连接上 在 高级 页面中选择访问权限为 ReadWrite 在 所有 页 面中显示的是用户目前设定的连接属性 用户可以再修改 点击 确定 按钮后返回到 12 上图 这时可以看到属性设定字符串已经自动生成 点击 OK 按钮返回即可 再把 ADOConnection1 组件的 LoginPrompt 属性设定为 false 这样以后程序在运行时就不会 弹出 密码输入框 了 但如果你的数据库有密码且在上面的 连接 页面中没有输入 密码没有选中 允许保存密码 那么不要把此属性设定为 false 因为你以后需要手工 输入密码 接着设定 ADOTable1 组件的 Connection 属性为 ADOConnection1 单击 ADOTable1 组件的 tablename 属性后的省略号 将可 图 3 3 数据连接属性的连接 以看到数据库 liualiang mdb 中的所有数据表名称列表 从中选择一个如 表 1 设定 ADOTable1 组件的 Active 属性为 True 则马上可以在 DbGrid 中看到表中的数据了 如果 马上运行程序就可以在窗口中浏览和编辑数据了 在本程序中在本程序中 因为很多单元都要访问数据库 所以为了方便 使用一个单元 Datamodule1 在单元里放置一个控件 Adoconnection1 用于统一连接数据库 其它单元要 访问时 只要把 adotalbe 或 adoquery 控件的数据源指向 Datamodule1 中的 Adoconnection1 控件就可以了 这样大大减少了代码量 减少了工作量 3 5 2 E R 图 根据系统前面的逻辑结构设计 得到系统的实体 在此基础上 设计出系统数据库 的逻辑结构 用 E R 图表示如下 出租和出售 13 3 5 3 新建数据库及字段 运行 Microsoft 公司的 Office2000 办公软件中的 Access 数据库软件 点击菜单 文件 在出现的菜单项中选择 新建 菜单项 然后点击 空数据库 在弹出的 文件新建数据库 对话框中键入数据库的名称 本软件中应写入 data mdb 这时系统将会自动进入详细的数据库设计窗体 我们选择 使用设计器 创建表 在弹出的 表 4 1 设计窗体中 依次写入各个字段名以及他们相对应的数据类型 和说明事项 设计好字段名后 关闭并保存表为 用户信息表 双击 用户信息表 然后在弹出的数据录入窗体中录入数据 并保存 同时由于系 统提供了房屋资料管理的功能 所以要在数据库中增加 房屋资料 它主要是用来保存 房屋信息的 它的字段和类型如表 4 2 表 4 1 用户信息表的描述 字段名称数据类型 用户名文本 密码文本 用户等级文本 表 4 2 房屋资料的描述 字段名称数据类型 位置文本 楼层文本 面积数字 产权情况文本 结构文本 价格数字 状态文本 因为软件中需要四个数据库即 客户资料 中介信息表 单位信息表 常识 信息表 所以还要在数据库 data mdb 中新建这几个表 增加记录的步骤也与上面增加 记录的步骤完全一样 由于篇幅的限制 其它几个表的结构 包括详细的字段名 类型 大小 在这里 我就不一一列举出来了 打开数据库 data mdb 就可以直接看到了 设计完成后 按同样的方法向其中加入数据 即几条含有原始数据的记录 客户 房屋中介 房屋 登记 14 这样一个数据库 data mdb 就初步制作完成了 15 第四章第四章 详细设计详细设计 根据已有的需求信息和总体设计 可以进行系统的详细设计和实现 系统的设计和 实现如下 4 1 系统项目文件 每一个 Delphi 工程都有一个项目文件 在本系统中 项目文件如下所示 program Mdiapp uses Forms windows Sysutils Classes Main in MAIN PAS MainForm Common in Common pas SaleCause in SaleCause pas Frm SaleCause base in base pas Frm Base DataBase in DataBase pas DataModule1 TDataModule login in login pas Frm Login UserChgPwd in UserChgPwd pas Frm UserChgPwd SaleDetail in SaleDetail pas Frm SaleDetail UserPower in UserPower pas Frm UserPower QuerySale in QuerySale pas Frm QuerySale SysSet in SysSet pas Frm SysSet LendDetail in LendDetail pas Frm LendDetail QueryLend in QueryLend pas Frm QueryLend LendCause in LendCause pas Frm LendCause InfoList in InfoList pas Frm InfoList Unit1 in Unit1 pas Form1 Unit2 in Unit2 pas Form2 Unit3 in Unit3 pas Form3 R RES var form3 tform3 begin Application Initialize form3 tform3 Create form3 这里是启动闪现窗体 form3 makesplash 启动闪现窗体的延时程序 gs WorkPath ExtractFilePath Application EXEName 得到可执行文件的路径 打开数据库模板 Application Title 房产中介管理系统 16 Application CreateForm TDataModule1 DataModule1 Application CreateForm TMainForm MainForm Application CreateForm TForm3 Form3 MainForm show 连接数据库 if f ConnectDataBase False then begin Application MessageBox 连接数据库出错 可能原因有 13 10 1 配置文件 exhib ini 的数据库配置小节有问题 n r 13 10 2 本系统运行路径不对 13 10 3 本机未安装数据库的 Client 端驱动程序 13 10 4 其他问题 13 10 请与管理员联系 系统出错 MB OK Application Terminate end 系统参数初始化 f SysParmInit 显示登录窗口 Frm login TFrm Login Create Application try Frm Login ShowModal if Frm Login login True then begin 为登录用户定制界面 MainForm StatusBar Panels 0 text gs OrgName MainForm StatusBar Panels 1 text 操作员 gs Login UserName MainForm StatusBar Panels 2 text 工作日期 FormatDateTime yyyy mm dd gt login time MainForm f InitUserMenu 打开查询窗口 end else begin Application Terminate end Finally Frm Login Free end form3 Close 关闭闪现窗体 form3 Free 释放闪现窗体 Application Run end 17 4 2 闪现窗体的实现 1 1 闪现窗体的实际运行图闪现窗体的实际运行图 2 2 实现的方法 实现的方法 首先 制作一个名为 Form3 的窗体 画面如上图所示 其次 在其中加入一个过程 即一个延时程序的过程 makesplah 代码如下 procedure tform3 makesplash begin borderstyle bsnone show update sleep 2000 end 第三 在工程文件代码中将入以下语句 一是在开始部分加上 form3 tform3 Create form3 form3 makesplash 二是在最后结果部分加上 form3 Close 关闭闪现窗体 form3 Free 释放闪现窗体 具体可以参见上上页的哪一段工程项目文件的源程序 4 3 用户登录模块 1 1 用户登录模块的窗体效果图用户登录模块的窗体效果图 18 2 2 核心代码解释 核心代码解释 在输入登录密码后 按 确定 后触发的事件 procedure TFrm Login bbtnokClick Sender TObject begin 录入检验 if cbUserId text then begin messagedlg 请 选 择 用 户 名 mtInformation mbok 0 cbUserId SetFocus exit end 登录验证 with ADOQ Temp do begin close SQL Clear SQL Add SELECT From 用户信息表 Where 用户名 cbUserId Text Open 用户有效性 IF not IsEmpty then begin 登录失败 If edtPassword Text Fieldbyname 密码 AsString then begin messagedlg 口令错误 请修改 mterror mbok 0 LoginNum LoginNum 1 if LoginNum 3 then begin messagedlg 非法用户 你无权使用本系统 mterror mbok 0 application Terminate end 19 edtPassword Text edtPassword SetFocus exit end 登录成功 else begin 保存登录的用户信息 gs login userid fieldbyname 用户名 asstring gs login username fieldbyname 用户名 asstring gs login userlevel fieldbyname 用户等级 asstring gs login Password fieldbyname 密码 asstring gt login time now Login true self close end end else begin messagedlg 指定的用户已被注销 你无权使用本系统 mterror mbok 0 Login False self close end end end 4 4 主窗体模块 本模块的主要功能是 为进入本系统其它所有的功能窗体提供一个操作方便 界面 美观的基础平台 1 窗体效果图如下 20 2 核心代码解释 一是 登录用户类型不同 权限不同的代码解释 一是 登录用户类型不同 权限不同的代码解释 function TMainForm f InitUserMenu Boolean begin if gs login userlevel 超级用户 then begin m state 1 Enabled true m state 2 Enabled true m state 3 Enabled true m system UserPower Enabled true m system sysset Enabled true end else if gs login userlevel 管理员 then begin m state 1 Enabled true m state 2 Enabled true m state 3 Enabled true end else begin 普通客户 限制使用好几个菜单 m operation Lend Enabled false m operation Sale Enabled false btnLendDetail Enabled false btnSaleDetail Enabled false n3 Enabled false n4 Enabled false 21 end Result True end 二是 文档管理菜单中打开二是 文档管理菜单中打开 wordword 文档的核心代码解释 文档的核心代码解释 如打开 文档租凭合同文档 procedure TMainForm m state 1Click Sender TObject var s string varword variant begin s ExtractFilePath Application EXEName program doc doc1 doc try varword createoleobject word basic varword fileopen s varword appshow except showmessage 运行 Microsoft word 失败 end end 4 5 房屋出租登记窗体 功能是对房屋出租信息进行登记 主要是进行添加出租信息的登记操作 1 1 窗体效果图如下窗体效果图如下 2 2 窗体的窗体的 保存保存 按钮的代码解释按钮的代码解释 procedure TFrm LendDetail btnOkClick Sender TObject var strSQL string strCode string begin 22 inherited 检查数据录入的有效性 if f CheckValue False then exit 数据保存处理 DataModule1 ADOConnection1 BeginTrans try ADOQ Data UpdateBatch DataModule1 ADOConnection1 CommitTrans except DataModule1 ADOConnection1 RollbackTrans MessageBox handle 数据保存失败 警告 MB OK exit end MessageBox handle 数据保存成功 提示 MB OK MB ICONINFORMATION 继续新增 if ParmEditorMode ADD then begin ParmId FormShow nil end end 4 6 房屋出租查询模块 1 1 本模块的窗体效果图如下所示 本模块的窗体效果图如下所示 23 2 2 查询查询 的核心代码与解释 的核心代码与解释 procedure TFrm QueryLend btnFindClick Sender TObject var strFilter string begin inherited 构造过滤条件 strFilter if trim edtNo text then strFilter strFilter 收件号 like edtNo text AND if rdoStatus itemindex 1 then begin strFilter strFilter 状态 未处理 AND end else if rdoStatus itemindex 2 then begin strFilter strFilter 状态 已处理 AND end else if rdoStatus itemindex 3 then begin strFilter strFilter 状态 已作废 AND end if strFilter then strFilter copy strFilter 0 Length strFilter 5 过滤查询 if strFilter then begin ADOQ Data Filtered false end else begin ADOQ Data Filtered true ADOQ Data Filter strFilter end end 4 7 改变密码模块 1 1 本模块的窗体效果图如下所示 本模块的窗体效果图如下所示 24 2 2 本模块中修改密码的代码解释如下 本模块中修改密码的代码解释如下 procedure TFrm UserChgPwd bbtnOkClick Sender TObject var sqlstr string begin inherited if edtoldpassword textgs login password then begin messagedlg 旧密码输入错误 mterror mbok 0 exit end if edtnewpassword Textedtnewpassword2 Text then begin messagedlg 新密码两次输入不一致 mterror mbok 0 exit end else begin sqlstr UPDATE 用户信息表 SET 密码 edtnewpassword Text where 用户名 gs login userid DataModule1 ADOConnection1 Execute sqlstr messagedlg 修改完成 密码已经改变 mtinformation mbok 0 close end end 4 8 其它模块 由于编幅的原因 我不可能把所有的模块都一一介绍到了 还有几个模块 如 房 屋出售登记模块 房屋出售查询模块 文档管理模块 系统维护模块 等由于和 已经介绍的部分模块在代码上大同小异 在此省略了 25 4 9 本软件所用控件的安装及使用方法 本软件根据编程的需要一共使用了一个第三方控件 Ehlib 表格增强控件 使用它的 目的主要一是系统功能的需要 第二个也是锻炼自己使用第三方控件的本领 如第三方 控件的安装 使用等 EhlibEhlib 表格增强控件表格增强控件 它的安装方法如下它的安装方法如下 在在 FileFile 菜单下 选择 OPEN 打开 Ehlib 安装包中的 Ehlib dpk 文件 文件类型 列表框中选 dpk 在出现的 Package 窗口中 工具栏上有 Install 按钮 按此按钮即 可进行安装 如果 Install 按钮处于无效状态 那么先按 Compile 按钮编译 一般来说 编译之后 Install 按钮就会处于有效状态 此时再按 Install 按钮就可以了 Ehlib 控件是一系列表格增强控件的组合 本软件主要用到其中的两个组件 TDBGridEh 组件和 TPrintDBGridEh 组件 TDBGridEh 组件 这是对 Delphi 自带的 TDbgrid 控件的增强改进版 它包含了所有 TDbgrid 的功能 并增加了自己的特色功能 TPrintDBGridEh 组件 与 TDBGridEh 组件配套使用 主要是预览并打印 TDBGridEh 组件接受到的数据库中的表格信息 也是一个相当有用的组件 Delphi 自身并没有携带 这一表格打印功能的组件 4 10 程序设计过程中遇到的问题及解决方法 4 10 14 10 1 第三方控件安装后在使用过程中 仍然不能运行的问题 第三方控件安装后在使用过程中 仍然不能运行的问题 即 第三方控件在按照安装提示准确地安装完毕后 然后在窗体上放上该控件 设 置好控件属性后运行 系统会提示找不到某某 dcu 文件 这是因为软件运行是需要将 该控件所对应的 dcu 文件加载到可执行文件中 所以需要设置一下控件所对应 dcu 的 路径 具体方法如下 单击 project 然后选中 Options 这时会弹出 Project Options for 的设置窗体 在 Directories Conditionals 项的 Search Path 里 面进入该控件所对应的 dcu 的文件路径即可 4 10 24 10 2 动态路径的设置问题动态路径的设置问题 为确保程序在任何一个目录下都可以正常使用 就必须对数据库的文件路径进行动 态的设定 开始我制作时没有注意到这个问题 用的都是绝对路径 后来调试时发现了 这一问题 并加一解决了 即要在 Datamodule1 单元的源代码部分用代码对 Adoconnection1 的 connectionstring 属性进行赋值 即 connectionstring provider Micros
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 监察法考试题及答案
- 集团成本面试题及答案
- 食品药品考试试题及答案
- 港口物流期末试题及答案
- 镭雕岗位考试题及答案
- 溺水急救考试题及答案
- 2025年托福考试预测试卷:备考资料汇编
- 2025年无损检测员中级无损检测实操历年试题
- 2025年网络工程师考试网络安全策略与法规试卷
- 2025年税务师考试税收审计法模拟试卷
- 广西2025年公需科目学习考试试题及答案4
- 代加工板材合同协议书范本
- 2025-2026学年新七年级上学期开学摸底考试语文试卷(广东专用)
- 早期诊断技术优化-第1篇-洞察及研究
- 2025 慢阻肺合并肺心病诊疗查房课件
- 2025二手房个人购房合同范本
- 2025年c语言大考试题及答案
- 2025年病历书写竞赛题库
- 2025年辅导员技能大赛试题题库(含答案)
- 2025版一次性社保补偿协议示范文本及争议裁决机制
- (标准)专利合同转让协议书范本
评论
0/150
提交评论