




已阅读5页,还剩53页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
I 摘摘 要要 多功能理财系统是在迫切需要详细了解自家财务状况的情况下着手开发的 本 文介绍了多功能理财系统的开发背景 意义和目前的发展现状 论述了多功能理财 系统的分析 设计 实现的过程 文中详细描述了整个开发过程的技术选择和开发 环境的搭建及实现 该系统是一个典型的数据库应用系统 在数据库的理论支持下 运用 SQL Server2000 PowerBuilder 软件进行创建 在系统开发的前期工作中 对 数据库的发展现状和趋势 SQL Server2000 以及 PowerBuilder 进行了比较详细的介 绍 对多功能理财系统做了详细的可行性研究并且从多功能理财系统的功能 运行 环境 应用性和安全功能需求 4 个方面进行了需求分析 多功能理财系统划分为 5 大模块 分别是日常收支模块 债务债权贷款模块 工具管理模块 基础信息管理 模块和系统管理模块 此软件的开发为研究更完美的理财系统帮助人们更好的理财 和理财系统的进一步发展都具有一定的实践意义和理论指导 关键词 关键词 多功能理财系统 PowerBuilder SQL Server2000 II Abstract The multi purpose managing finances systems are in urgent needs to understand in detail oneself financial situation in the situation begins to develop This article introduced the multi purpose managing finances system s development background the significance and the present development present situation elaborated the process which the multi purpose managing finances system s analysis In the article described the entire performance history technical choice and the development environment build in detail and realizes This system is a typical database application system under the database theory support using SQL Server2000 the PowerBuilder software carries on the foundation In the system development s initial work to the database development present situation and the tendency SQL Server2000 as well as PowerBuilder has carried on the quite detailed introduction Has done the detailed feasibility study to the multi purpose managing finances systems and from the multi purpose managing finances system s function the movement environment the utility and the security function demand 4 aspects has carried on the demand analysis The multi purpose managing finances system division is 5 big modules respectively is daily revenue and expenditure module the debt creditor s rights loan module the tool management module the foundation information management module and the system administration module This software s development to study the more perfect managing finances system to help a people better managing finances and the managing finances system s further development has certain practice significance and the theory instruction Key words Multifunction financial management system PowerBuilder SQL Server2000 I 目目 录录 摘摘 要要 I ABSTRACT II 第第 1 章章 绪论绪论 1 1 1 课题的背景 1 1 2 选题经过 1 1 3 课题目的及意义 2 第第 2 章章 方案论证方案论证 4 2 1 可行性分析 4 2 1 1 社会可行性 4 2 1 2 技术可行性 4 2 1 3 操作可行性 4 2 2 需求分析 4 2 2 1 功能需求 4 2 2 2 多功能理财系统数据流图 5 2 2 3 数据库需求分析 6 2 2 4 数据字典 6 2 3 技术简介 7 2 3 1 PowerBuilder 7 2 3 2 SQL Server 2000 8 第第 3 章章 过程论述过程论述 9 3 1 概要设计 9 3 2 数据库设计 10 3 2 1 概念模型 10 3 2 2 逻辑模型 13 第第 4 章章 详细设计与系统实现详细设计与系统实现 15 4 1 数据库详细设计与实现 15 4 1 1 创建数据库 15 4 1 2 创建表和字段 16 4 1 3 创建触发器 19 4 2 系统模块的设计 20 4 2 1 登录窗口 20 4 2 2 等待界面 21 4 2 3 主程序界面 22 4 2 4 基础信息管理 24 4 2 5 收入管理 25 II 4 2 6 支出管理 27 4 2 7 债务管理 29 4 2 8 报表管理 29 4 2 9 工具管理 30 4 2 10 系统管理 33 第第 5 章章 系统测试与分析系统测试与分析 36 5 1 软件测试及目标 36 5 1 1 软件测试 36 5 1 2 软件测试目标 36 5 2 软件测试 36 5 2 1 单元测试 36 5 2 2 功能测试 38 5 3 集成测试 40 5 4 系统测试 40 5 5 结果分析 40 总总 结结 41 致致 谢谢 43 参考文献参考文献 44 附附 录录 45 1 第第 1 章章 绪论绪论 1 1 课题的背景课题的背景 国家统计局 2010 年 2 月 25 日发布的统计数据显示 2009 年城乡居民人民币储 蓄存款余额 260772 亿元 比上年的 217885 亿元增加 42887 亿元 比 2007 年的 172534 亿元增加 88238 亿元 特别是发达城市居民的可支配收入正在逐步达到中等 发达国家水平 许多居民除了购房 购车外还有大量的金融资产 如何分配 管理 资产是居民最大的需求 如何管理自己的财务就成了一个重要问题 理财俨然已成 为人们生活的时尚话题之一 于是理财系统应运而生 它的出现对于理财者来说是 至关重要的 所以理财系统应该能够为每一个理财者提供充足的信息和快捷的统计 手段 实现理财的便捷化 准确化和保密化 多功能理财系统 即 Multifunction financial management system 它是利用计算 机应用技术 使理财逐步信息化 从而形成由理财人员与计算机共同构成服务于家 庭 公司 机构的人机信息财务管理系统 计算机的最大优点在于利用它能够高效 准确地进行财务信息管理 使用计算机进行信息财务管理 不仅提高了工作效率 而且大大的提高了其安全性 理财系统是为实现个人人生目标而制定 安排 实施和管理的一个各方面总体 协调的财务计划的过程 或者说对家庭资产的合理安排与管理 具体是指 一 采 用全面系统的管理思想来管理个人或家庭所有资源 二 体现出现代和专业的理财 理念 理财者只有综合现代会计学 财务学 投资学 统计学等学科的理财理念才 能为现代家庭提供正确 科学及专业的理财指导 三 紧密结合理财市场与金融现 状 理财就是采取全面的 专业的 系统的理财思想与方法来规划资产 使其处于 收支均衡的理想状态 并达到财富最大化的目标 在这样的背景下 理财软件发展迅速并得到很好的推广 但目前国内理财软件 的质量参差不齐 功能也稍有不足 所以一款功能完备又具有个性化服务的多功能 理财系统软件正是理财者所期盼的 1 2 选题选题经过经过 信息作为生产力中最活跃的因素 很早就在人类经济生活中发挥着不可替代的 作用 目前人们所提到的信息管理系统 通常是指以计算机为工具 对信息进行收 集 存贮 检索 加工和传递 应用于组织机构及企业管理等领域的 人 机系统 它系统功能简单 效率低 对管理的作用有限 随着世界经济和我国经济逐步向知识经济迈进 无论是基于工业经济的管理信 息系统 还是面向少数专家和管理人员的专家系统 ES 或决策支持系统 DSS 其 2 处理对象和服务对象 自身的系统结构 处理能力 都有了进一步的发展 理财 Personal Finance 并不是一个新鲜词 简单地说就是开源节流 管理好 您的钱 科学理财其实包括两个方面 赚钱 如何积累财富 实现财产的保值 和增值 花钱 如何用最少的钱获得最好的服务和最大的满足 科学理财不仅 仅是安排好柴米油盐 而且是把钱财及相关事务纳入有计划 有系统的管理 一般 而言 科学理财应该能达成下列目的 1 在考虑投资风险的前提下 增加收入 2 在有计划提高生活品质的前提下 减少不必要的支出 3 可以提高个人或家庭 的生活水平 4 可以储备未来的养老所需 正确的理财观念非常重要 科学理财方式选择将成为决定个人贫富差距的关键 性因素 真正的理财是因人而异 因 财 宜的 理财方式的选择也因人而异 在 国内 有些人自己亲自进行股票 债券买卖 只有少部分人请理财机构带为理财 而在国外大部分人是请经验丰富的理财专家或顾问来替他们理财 节支开源 理财的核心是投资收益的最大化和个人资产分配合理化的集合 理财服务通过 充分利用各种理财工具 如现金 银行存款 股票 债券 基金 期货 房产 保 险等 帮助您达到合理分配的目的 为了帮助用户管理自己的财产 使客户能够 对自己的财务状况有一个清晰认识 方便管理自己的财务 提供时间段的财务统计 让用户对自己的财产有个宏观的概念 更好地了解自己的财务状况 进行更理智的 财务决策 以满足您对理财安全性 收益性等多样化要求 因此 简单实用的桌面 个人理财软件 能满足家庭和个人的理财需求 提供账户管理 收支管理 借贷管 理 统计等功能 开发一个多功能理财软件迎合了现代的个人 家庭和组织机构的发展趋势 对 合理分配财务起到重要意义 1 3 课题目的及意义课题目的及意义 一直以来人们都使用传统的手工记录来管理家庭或自己财务情况 这种方式不 仅不便于长期保存 也存在着效率太低 保密性太差等缺点 时间一长 往往一团 乱麻 随着居民收入水平的提高和居民各种消费和收入的多样性 理财所需要记录 的信息就会越来越多 产生的大量文件和数据使人无从下手 在这样的条件下设计 出合理的理财计划是很难实现的 随着现代家庭财务管理观念进一步提高 管理财务的手段也变得更加丰富 生 活水平和文化水平的提高 家庭购买电脑的能力和应用电脑的能力也开始提高 人 们应用电脑进行家庭财务管理的观念也在增强 因此 开发一款通用型理财软件已 经成为社会需求 本系统开发的是一款多功能理财系统软件 目标是把适合家庭化 的常用财务管理手段及家庭日常收支管理实现计算机化管理 使家庭及家庭成员的 收支活动更好地进行记录并加以统计分析 也使家庭理财变得方便 快捷 安全 全面 3 本系统是典型的管理信息系统 MIS 其开发主要包括后台数据库的建立和 前台应用程序开发两个方面 对于前者要求建立起资源的 一致性和完整性 对 于后者则要求应用程序具有 功能完备 使用方便 易于扩展 等特点 随着科学技术的不断提高 计算机科学日渐成熟 其强大的功能已逐渐被人们 认识并掌握 使用计算机对理财信息进行管理具有传统的手工管理所没法比拟的优 点 例如 统计方便 查找容易 可靠性高 保密性好 更新方便等 这些优点能 够极大地提高家庭理财信息管理的效率 大大降低居民在信息管理精力上的投入 使企业获得更大的利润空间 因此 开发一个能够管理家庭 企业单位内部各种财 务信息的多功能理财管理系统是一件十分必要的事情 4 第第 2 章章 方案论证方案论证 2 1 可行性分析可行性分析 2 1 1 社会可行性 多功能理财系统是迎合个人 家庭和组织机构的理财发展趋势 系统具体要完 成财务的入账 出账 统计以及打印报表等功能 目前用户所面临的问题是 财务 收支不明确 花费计算不准确 面对传统的方式感到枯燥无趣等问题 因此利用现 代计算机技术 开发一个多功能理财系统是非常有必要的 2 1 2 技术可行性 本系统采用 PowerBuilder 作为开发工具 数据库用 Microsoft SQL SERVER 2000 系统尽管在其组织关系上存在着很大的复杂性 繁琐性 但是就整个系统的 技术构成上来看 它还是属于一个数据库应用类的系统 其基本操作还是对存在的 数据库进行添加 删除 查找 编辑等 所以就单纯的数据库应用来看 暂不存在 太大的技术问题 2 1 3 操作可行性 软件界面的设计简约 层次清晰 功能直观 操作者可以一目了然 明白软件 当前的工作状态 系统可应用于 Win98 NT 2000 XP 操作 采用标准窗口设计方案 简单明了 易学易用 只要稍看软件说明 就能熟练的操作 可以很好的完成工作 2 2 需求分析需求分析 2 2 1 功能需求 多功能理财系统是针对用户要求用计算机 对自己财务的收入 支出以及相关 的各种信息 进行记录 修改 添加 删除而设计的一种现代化管理软件 通过需求分析 本系统需要具有以下功能 1 由于一项新的软件在被使用之前 对于使用者来说是陌生和崭新的 所以 要求系统具有良好的人机界面 2 对用户各种信息进行管理 3 查询 修改 删除 添加数据方便 数据的稳定性和可靠性好 具体说来 要求本系统具有以下几个功能模块 用户登录模块 基础信息管理 模块 收支管理模块 债务管理模块 工具管理模块 系统管理模块 各模块具体 的需求描述如下 5 1 用户登录模块 验证用户的信息是否合法 以及验证用户是否为系统的合法用户 2 收支管理模块 主要实现对收入和支出记录的添加 删除 修改 查询功能以及以报表的形式 进行输出 3 债务管理模块 主要实现对债权 债务和贷款的添加 删除 修改 查询功能 4 工具管理模块 主要实现系统中必要的工具如记事本 计算器 日历 通讯录 MP3 播放器 5 基础信息管理模块 在系统中主要包括各种基础信息的添加 修改 删除 查询 6 系统管理模块 主要实现数据备份及恢复 用户管理的添加 删除 更改及密码修改 2 2 2 多功能理财系统数据流图 一个基于计算机的信息处理系统是由数据流和一系列的转换构成的 而这些转 换将输入数据流变换为输出数据流 数据流图就是用来刻画数据流和转换的信息系 统建模技术 它用简单的图形记号分别表示数据流 转换 数据源以及外部实体 它提供了层次结构 让分析人员能够方便地表示任意抽象级别上的信息系统或其子 系统 并支持问题分解 逐步求精的分析方法 多功能理财系统通过各个子模块为用户提供理财管理数据的各种操作 并要保 证数据的安全和一致 系统总体流程 合法用户 登录 执行操作 退出系统 详细设计如图 2 1 所示 成功 债务 管理 工具 管理 基础 信息 失败 系统 管理 收支 管理 登录 主界面 操作 开始 结束 6 图 2 1 系统总体流程图 2 2 3 数据库需求分析 用户的需求具体体现在各种信息的提供 保存 更新 查询 这就是要求数据 库结构能充分满足各种信息的输出和输入 收集基本数据 数据结构及数据处理的 流程 组成一份详尽的数据字典 1 为以后的数据库设计打下基础 通过系统功能分析 总结出如下需求信息 2 1 用户分一般用户和管理员用户 2 一个用户可向多个银行借贷 一个银行可向多个用户提供贷款 3 一个银行可开多个账户 一个账户只能存在于一个银行 4 一个用户将收入放入多个账户 一个账户可以被多人支出 5 一个债权人对应多个债务人 一个债务人可向多个债权人借钱 经过上述系统功能分析和需求总结 并且考虑到将来功能上的扩展 设计如下 面所示的数据项和数据结构 管理员信息表 包括数据项 用户名 密码等 用户表 包括数据项 用户名 出生日期 工作地点 联系方式 备注等 银行机构表 包括数据项 银行名称 银行简介 备注等 账户表 包括数据项 账户名 账号 开户日期 余额 备注等 2 2 4 数据字典 在本系统的数据字典设计中 着重对数据字典中的数据结构做了详细分析 1 名字 用户信息 描述 系统中所用理财者的信息 定义 用户信息 用户姓名 出生日期 工作地点 联系电话 备注 2 名字 银行信息 描述 系统中银行机构的信息 定义 银行信息 银行名称 银行简介 备注 3 名字 账户信息 描述 系统中账户的信息 定义 账户信息 账户名称 账号 户主姓名 开户银行 开户日期 余额 备 注 4 名字 收入信息 描述 系统中用户收入的信息 定义 收入信息 收入编号 发生日期 原因 收入人员 所属账户 金额 备 注 5 名字 支出信息 描述 系统中用户支出的信息 定义 支出信息 支出编号 发生日期 原因 支出人员 所属账户 金额 备 注 7 6 名字 债务信息 描述 系统中用户债务的信息 定义 债务信息 债务编号 债务人 债权人 日期 金额 所属账户 备注 7 名字 债权信息 描述 系统中用户债务的信息 定义 债权信息 债权编号 债权人 债务人 日期 金额 所属账户 备注 8 名字 贷款信息 描述 系统中用户贷款的信息 定义 贷款信息 贷款编号 贷款人 合同号 贷款机构 贷款额 日期 期限 还 款账户 每月还款额 备注 2 3 技术简介技术简介 2 3 1 PowerBuilder PowerBuilder 3 是著名的数据库应用开发工具生产厂商 PowerSoft 公司推出的产 品 PowerSoft 现已被数据库厂商 Sybase 所收购 它完全按照客户机 服务器体系结 构研制设计 在客户机 服务器结构中 它使用在客户机中 作为数据库应用程序的 开发工具而存在 由于 PowerBuilder 采用了面向对象和可视化技术 提供可视化的应用开发环境 使得我们利用 PowerBuilder 可以方便快捷地开发出利用后台服务器中的数据和数 据库管理系统的数据库应用程序 PowerBuilder 特色 1 一种图形化的快速应用开发 RAD 工具 2 用来进行客户 服务器开发的专业工具 从 6 0 版本开始 PowerBuilder 支持三层或是 n 层结构 对一个应用程序进行分 割以后 将代码分为不同的逻辑组件 具体分配取决于系统方案及当前的商业要求 这种结构的优点包括四个方面 可重复使用 可在不同的应用程序间共享 性能提升 将计算机负担从客户机转至服务器 开发者可充分利用计算资源 使应用程序的执行达到最佳状态 由此获得更好的性能 易于管理 可将大型 复杂的应用程序划分为易于管理的模块 易于维护 由于组件集中 便于重复使用 适应商业需求的变化 3 提供对面向对象编程的全面支持 内置多种对象类 其中以 DataWindow 对象最为著名 可以方便的访问数据库 PowerBuilder 还提供了对多种数据源的简便连接 具有高度的开放性和灵活性 4 具有强大的 易于使用的第四代编程语言 PowerScript PowerScript 是 PowerBuilder 使用的面向对象的编程语言 它是由命令 语句 函数 还有用户自定义的对象或类及 SQL 语句组成的 它是一种极为灵活的高级结 8 构化语言 它具有易学易用的特点 5 PowerBuilder 与网络 PowerBuilder 对 WEB 提供了强大的支持 主要有以下几个方面 对 PB Window Plug in 和 Window Activex PBWeb 客户机的 PowerBuilderVM 支持 对 HTML PB 和 Java 客户机的连接的支持 用于 Web 客户机访问中层逻辑的 Web PB 2 3 2 SQL Server 2000 Mircrosoft SQL Server 2000 是一个分布式的关系型数据库管理系统 4 具有客户 服务器体系结构 采用了一种称为 Transact SQL 的 SQL 语言在客户机和服务器之 间传递客户机的请求和服务器的处理结果 在 Mircrosoft SQL Server 2000 系统中 数据库的管理采取了先进的动态管理机 制 数据库的大小可以随着数据量的变化而缩小或者扩大 另外 用户数据都是非 常重要的和保密的 这些数据存储在 Mircrosoft SQL Server 2000 系统中有绝对的安 全性保障 有完善的用户帐户策略和许可机制 只有经过授权的用户才能访问系统 并且执行相应的操作和访问允许访问的数据 Mircrosoft SQL Server 2000 系统具有强大的网上功能 可以在 Internet 上发布数 据库中的数据 在 Mircrosoft SQL Server 2000 系统中 允许用户简单的使用一些向 导和工具把数据库的数据发布到网络上 并且可以根据需要来调度修改已经发布的 数据 从历史的发展来看 Mircrosoft SQL Server 2000 系统的产生就是为了开发在 Mircrosoft Windows NT 操作系统上运行的关系型数据库管理系统 9 第第 3 章章 过程论述过程论述 3 1 概要设计概要设计 本多功能理财系统主要目的就是为用户提供方便 快捷的服务 方便管理人员 对财务的收支 债务关系 借贷关系 各种工具 基础信息以及系统信息进行管理 本系统具体功能如下 主程序界面 主程序是程序控制的核心 操作权限 程序功能调用等都要通过主程序调用实 现 本程序通过菜单和工具栏两种方式调用系统 收支管理 收入管理是多功能理财系统中重要的部分 可以高效地完成财务收入信息的录 入工作 本模块主要包括收入的添加 查询 删除和报表输出 支出管理是多功能理财系统中重要的部分 可以高效地完成财务的支出工作 可同时录入多条记录 并设置了灵活多样的录入方式 录入一条信息只需在下拉列 表框中选择对应信息 再录入其他信息点击保存完成录入 本模块主要包括支出的 添加 查询和删除和报表输出 债务管理 债务管理是多功能理财系统中重要的部分 它主要包括债务管理 债权管理和 贷款管理三个部分 债权管理为它记录了借出去的财产 使理财者不必时刻牢记财务的借出情况 债务管理它记录了向其他人借的财产 使理财者不会再有忘记还钱的尴尬 贷款管理是多功能理财系统中重要的部分 它记录了向银行的贷款情况 使理 财者对每月的还款额做到心中有数 减少疲劳 本模块同样包括债务信息的添加 查询和删除 系统工具管理 系统工具管理是多功能理财系统的必要部分 它包括系统必备的计算器 日历 记事本 通讯录以及轻松娱乐的 MP3 播放器 基础信息管理 基础信息管理是多功能理财系统的基础部分 可以管理成员 银行机构 账户 的信息 对其进行增删改查的操作 系统信息管理 系统信息管理是多功能理财系统的必要部分 可以管理管理员的信息 对其进 行密码修改等操作 对数据库进行备份和恢复 使数据不至于在损坏时丢失 帮助 信息帮助用户快速学会使用该软件 10 多功能理财系统的功能模块图如图 3 1 所示 图 3 1 多功能理财系统功能模块图 3 2 数据库设计数据库设计 3 2 1 概念模型 根据上面数据库需求分析的数据项 给出系统的相关实体 管理员 用户 银 行机构 账户 用户的用例图 如图 3 2 所示 多功能理财系统 基础信息管理 系统信息管理 用户 信息 管理 操作 员管 理 账户 信息 管理 银行 信息 管理 收支管理 收入 管理 收支 报表 支出 管理 数据库 备份 债务管理 债权 管理 债务 管理 贷款 管理 系统工具管理 计算器 日历 通讯录 记事本 MP3 播放器 数据库 恢复 帮助 11 图 3 2 用户用例图 用户的时序图 如图 3 3 所示 图 3 3 用户时序图 管理员的实体属性图 如图 3 4 所示 图 3 4 管理员的实体属性图 收支管理 贷款管理 用户 债务管理 工具管理 基础信息管理 系统管理 3 进行操作 2 登录成功 用户 1 登录 登录界面主界面操作 权限 密码 用户名 管理员 12 用户的实体属性图 如图 3 5 所示 图 3 5 用户的实体属性图 账户的实体属性图 如下图 3 6 所示 图 3 6 账户的实体属性图 银行机构的实体属性图 如图 3 7 所示 图 3 7 银行机构的实体属性图 出生日期 联系方式 用户名 用户 备注工作地点 开户日期 账户余额 账户名 账户 备注账号 备注 银行简介 银行名称 银行机构 13 实体之间关系的 E R 图 如图 3 8 所示 图 3 8 实体之间关系的 E R 图 图中实体的属性如下所示 管理员信息的属性包括数据项 用户名 密码 权限等 用户的属性包括数据项 用户名 出生日期 工作地点 联系方式 备注等 银行机构的属性包括数据项 银行名称 银行简介 备注等 账户的属性包括数据项 账户名 账号 开户日期 余额 备注等 收入信息的属性包括数据项 收入编号 发生日期 原因 收入人员 所属账 户 金额 备注 支出信息的属性包括数据项 支出编号 发生日期 原因 支出人员 所属账 户 金额 备注 债务信息的属性包括数据项 债务编号 债务人 债权人 日期 金额 所属 账户 备注 债权信息的属性包括数据项 债权编号 债权人 债务人 日期 金额 所属 账户 备注 贷款信息的属性包括数据项 贷款编号 贷款人 合同号 贷款机构 贷款额 日期 期限 还款账户 每月还款额 备注 3 2 2 逻辑模型 将 E R 图转化为关系模型实际上就是要将实体型 实体的属性和实体型之间的 联系转换为关系模式 根据一个实体型转化为一个关系模式 实体的属性就是关系 的属性 实体的码就是关系的码的转化原则 关系模式用户 银行机构 账户 收 1 1 n 管理员 用户 开户 账户 维护 贷款 银行 收支 维护 n 1 n n n m m 14 支 开户 管理员中 不存在非主属性对主属性的部分函数依赖 也不存在传递函 数依赖 已经达到了 3NF 5 可以将上图的全局 E R 图转化为如下关系模型 实体 的码用下划线标出 1 用户 用户名 出生日期 工作地点 联系方式 备注 2 银行机构 银行名称 银行简介 备注 3 账户 账户名 开户银行 账号 开户日期 余额 备注 4 收入 收入编号 收入人员 所属账户 发生日期 原因 金额 备注 5 支出 收入编号 收入人员 所属账户 发生日期 原因 金额 备注 6 债务 债务编号 债务人 债权人 日期 金额 所属账户 备注 7 贷款 贷款编号 贷款机构 贷款人 还款账户 合同号 贷款额 日期 期限 每月还款额 备注 8 管理员 用户名 密码 权限 15 第第 4 章章 详细设计与系统实现详细设计与系统实现 4 1 数据库详细设计与实现数据库详细设计与实现 本系统采用了大型的 SQL Server2000 数据库 数据库名称为 lcxt 数据库 lcxt 包含以下 9 个表 用户信息表 银行机构表 账户表 收入表 支出表 债 务表 债权表 贷款表 管理员表 4 1 1 创建数据库 在 SQL Sever 服务器节点右击 在弹出的快捷菜单中选择 新建数据库 命令 打开 创建数据库 对话框 在 新数据库名 文本框中输入 lcxt 选择使用 Windows NT 集成安全性 访问方式 6 在管理工具中创建数据库的数据源 如图 4 1 所示 图 4 1 创建数据库图 16 测试数据源成功图如图 4 2 所示 图 4 2 测试数据源成功图 4 1 2 创建表和字段 在明确了系统的详细功能后 根据系统的功能要求理清了其中的数据关系并提炼 出其中的数据关系 结合需求分析中的 E R 图可以规划出客户关系系统的具体表单 根据分析结果 详细表单的设计如下 1 用户信息表 用户信息表用来保存用户的基础信息 该数据库设计如表 4 1 所示 表 4 1 用户信息表 字段名称字段名称数据类型数据类型字段大小字段大小备注备注 用户姓名char10描述用户姓名 出生日期datetime8描述用户的出生日期 工作地点char20描述用户的工作地点 联系电话char20描述用户的联系电话 备注char50描述用户没有列出的问题 2 银行机构表 入银行机构表用来保存银行机构的信息 该数据库设计如表 4 2 所示 17 表 4 2 银行机构表 字段名称字段名称数据类型数据类型字段大小字段大小备注备注 银行名char20描述银行名称 银行简介char30描述银行简介 备注char50描述银行没有列出的内容 3 账户信息表 账户信息表用来保存账户的基础信息 该数据库设计如表 4 3 所示 表 4 3 账户信息表 字段名称字段名称数据类型数据类型字段大小字段大小备注备注 账户名称char20描述账户名称 帐号char20描述账户的编号 开户银行char40描述开户银行的名称 开户日期datetime8描述在银行开户的日期 账户余额char10描述账户的余额 备注char50描述账户没有列出的内容 4 收入信息表 收入信息表用来保存收入的基础信息 该数据库设计如表 4 4 所示 表 4 4 收入信息表 字段名称字段名称数据类型数据类型字段大小字段大小备注备注 收入编号char8描述收入的编号 收入日期datetime8描述收入的日期 收入原因char20描述收入的原因 收入用户char50描述收入者的名称 账户名称char30描述收入账户的名称 收入金额char10描述收入的金额 备注char50描述收入没有列出的内容 5 支出信息表 支出信息表用来保存支出的基础信息 该数据库设计如表 4 5 所示 18 表 4 5 支出信息表 字段名称字段名称数据类型数据类型字段大小字段大小备注备注 支出编号char8描述支出的编号 支出日期datetime8描述支出的日期 支出原因char20描述支出的原因 支出用户char50描述支出用户的名称 账户名称char30描述支出账户的名称 支出金额char10描述支出的金额 备注char50描述支出没有列出的内容 6 债务表 债务表用来保存债务的详细信息 该数据库设计如表 4 6 所示 表 4 6 债务表 字段名称字段名称数据类型数据类型字段大小字段大小备注备注 债务编号char30描述债务的编号 债务人char10描述债务人的名称 债权人char10描述债权人的名称 日期datetime8描述借债的日期 账户名称char40描述借债的账户名称 备注char50描述债务没有列出的内容 7 债权表 债务表用来保存债务的详细信息 该数据库设计如表 4 7 所示 表 4 7 债权表 字段名称字段名称数据类型数据类型字段大小字段大小备注备注 债权编号char30描述债权的编号 债权人char10描述债权人的名称 债务人char10描述债务人的名称 日期datetime8描述债权的日期 账户名称char40描述债权的账户名称 备注char50描述债权没有列出的内容 8 贷款表 贷款表用来保存贷款的详细信息 该数据库设计如表 4 8 所示 19 表 4 8 贷款表 字段名称字段名称数据类型数据类型字段大小字段大小备注备注 贷款编号char20描述贷款的编号 贷款机构char50描述贷款的银行名称 贷款人char20描述贷款人的名称 还款账户char40描述贷款还款的账户名称 合同号char50描述贷款的合同号 贷款额char10描述贷款的数额 日期datetime8描述贷款的日期 期限char10描述贷款还款的期限 每月还款char10描述贷款每月还款的金额号 备注char50描述贷款中没有列出的内容 9 管理员表 管理员表用来保存管理员的详细信息 该数据库设计如表 4 9 所示 表 4 9 管理员表 字段名称字段名称数据类型数据类型字段大小字段大小备注备注 姓名char10描述管理员姓名 密码char20描述管理员密码 级别char8描述管理员级别 4 1 3 创建触发器 由于收入 支出是对某个特定的账户进行金额的操作 当收入表中插入数据时 收入的金额会是账户的总数额发送改变 因此使特定账户的余额增加 而当删除收 入表中的记录时 特定账户的数额就要减少 而支出表中对其插入 删除操作恰好 与收入表相反 于是在收入表和支出表中都建立了两个触发器 7 在记录插入 删 除后自动对账户表进行修改 如下是收入表中的 insert 触发器和 delete 触发器的定义 1 触发器 zh sr insert CREATE TRIGGER zh sr insert ON dbo sr FOR DELETE AS update zh set zh moneys zh moneys sr moneys from zh inserted sr where zh zhname inserted zhname 2 触发器 zh sr delete CREATE TRIGGER zh sr delete ON dbo sr 20 FOR DELETE AS update zh set zh moneys zh moneys sr moneys from zh deleted sr where zh zhname deleted zhname 4 2 系统模块的设计系统模块的设计 主要模块有登录模块 等待界面模块 主界面模块 基础信息管理模块 收支 管理模块 债务管理模块 系统管理模块等 详细介绍如下 4 2 1 登录窗口 登录窗口 8 是为了保证系统的安全性而制作的 在本系统中赋予操作员有三种 权限 系统最高管理员拥有全部权限 低级别的管理员只拥有部分权限 级别越低 权限越低 当管理员选择自己的名字 输入相应的密码后 只有当密码正确后才能 成功进入等待界面 继而进入主界面 否则就会提示密码错误 请重新输入 在这 个登录界面上 系统已经根据数据库里管理员的名字存放在下拉列表中 因此管理 员不必输入自己的用户名 只需在下拉列表中选择就可以了 这样使操作简单快捷 省去了繁琐的输入 在系统最高管理员的登录流程图如图 4 3 所示 图 4 3 登录界面流程图 成功 开始 输入用户名密码 身份验证 跳转等待界面 结束 21 登录界面图如图 4 4 所示 图 4 4 登录界面图 关键技术 登录验证 if czy99 then messagebox 请选择操作员 else if pwd99 then messagebox 请输入密码 else select pwd into pwd100 from czy tab where czy czy99 pwd200 trim pwd100 if pwd200 pwd99 then czyvar trim czy99 open hy win close parent else messagebox 密码有误 sle 1 text sle 1 setfocus end if end if end if 4 2 2 等待界面 为了显示此系统的名称及制作人的一些信息 在此设计了一个等待窗口 9 这 个窗口在经过一段时间后会自动关闭 如果用户觉得等待时间过长可单击鼠标结束 22 等待 此窗口是通过 Timer 函数的触发 来控制窗口自动关闭的时间 等待界面图如图 4 5 所示 图 4 5 等待窗口图 关键技术 Timer interval windowname 其中 interval 是指两次触发 timer 事件之间的时间间隔 有效值在 0 65 之间 如 果该参数的值设置为 0 则关闭计时器 不再触发窗口的 Timer 事件 Windowname 指的是窗口名 指定时间间隔到时要触发哪个窗口 4 2 3 主程序界面 主程序 10 是程序控制的核心 操作权限 程序功能调用等都要通过主程序调用 实现 另外主程序界面还要实现权限设置 菜单调用 工具栏调用等功能 在等待 界面结束后就进入了此界面 本程序通过菜单和工具栏两种方式调用系统 主程序 的开发流程如图 4 6 所示 23 图 4 6 主程序开发流程图 主界面图如图 4 7 所示 图 4 7 主界面图 关键技术 声明 API 函数 窗口初始化 function ulong LoadImageA ulong hintance string filename uint utype int x1 int y1 uint fload LIBRARY USER32 DLL function boolean SetMenuItemBitmaps ulong hmenu uint upos uint flags ulong handle bm1 ulong handle bm2 LIBRARY USER32 DLL 用户 主程序 用户权限 菜单 执行子程序 工具栏 执行子程序 24 function int GetSystemMetrics int nindex LIBRARY USER32 DLL function ulong GetMenuItemID ulong hMenu uint uItem LIBRARY USER32 DLL function int GetSubMenu ulong hMenu int pos LIBRARY USER32 DLL function ulong GetMenu ulong hWindow LIBRARY USER32 DLL function boolean ModifyMenu ulong hMnu ulong uposition ulong uFlags ulong uIDNewItem long lpNewI alias for ModifyMenuA LIBRARY USER32 DLL Function Long GetVolumeInformation string lpRootPathName declare cursor7 cursor for select distinct peoplename from people open cursor7 ddlb 3 reset fetch cursor7 into peoplename do while sqlca sqlcode 0 ddlb 3 additem peoplename fetch cursor7 into peoplename loop close cursor7 4 2 5 收入管理 收入管理是多功能理财系统中重要的部分 可以高效地完成对财务收入记录工 作 本模块支持鼠标和键盘两种输入方式 可同时录入多条记录 并设置了灵活多 样的录入方式 录入一条信息时部分内容需要填写 另一部分只需要选择就可以完 成 在功能中可以实现收入编号的自动生成 当数据库中没有数据时则自动添加编 号 00000001 如果存在记录则选择记录的编号 在此编号的基础上自动加 1 来生 成此次要添加的记录 11 当在菜单或者工具栏中点击收入管理时 弹出下图界面 首先对数据库中的收 入表进行检索 将收入表中的第一条记录显示在控件中 当点 下一个 按钮时 向下检索记录并显示在控件中 直到最后一条时提示 已是最后一条记录 查询时可按照多种查询条件 本模块是可以按照 收入编号 收入人员 所属账户 和 收入金额 来查询 在此模块中涉及到收入金额和账户余额的关系 因此设计了 insert 触发器和 delete 触发器 在添加记录时 insert 触发器会将收入金额加上原来的账户余额生成 新的账户余额 并更新账户表 收入管理图如图 4 9 所示 26 图 4 9 收入管理图 关键技术 收入编号自动生成 string srbh srbh1 srbh2 int srbh3 select srbh into srbh from sr if srbh then em 2 text 00000001 else declare cursor1 cursor for select srbh from sr open cursor1 fetch cursor1 into srbh1 srbh2 00000001 do while sqlca sqlcode 0 if srbh1 srbh2 then srbh2 srbh1 else srbh2 srbh2 end if 27 fetch cursor1 into srbh1 loop close cursor1 srbh3 integer srbh2 1 srbh2 string srbh3 em 2 text srbh2 end if 4 2 6 支出管理 支出管理是多功能理财系统中重要的部分 可以高效地完成对财务支出的记录 工作 本模块支持鼠标和键盘两种输入方式 可同时录入多条记录 并设置了灵活 多样的录入方式 录入一条信息时部分内容需要填写 另一部分只需要选择就可以 完成 在此功能中同样实现编号的自动生成 当数据库中没有数据时则自动添加编号 00000001 如果存在记录则选择记录的编号 在此编号的基础上自动加 1 来生成 此次要添加的记录 当在菜单或者工具栏中点击收入管理时 弹出下图界面 首先对数据库中的支 出表进行检索 将支出表中的第一条记录显示在控件中 将所有记录显示到数据窗 口中 可以点击 第一个 上一个 下一个 最后一个 按钮来实现查询 到第一条记录时点击 第一个 直到最后一条时点击 最后一个 分别提示 已 是第一条记录 和 已是最后一条记录 查询时可按照多种查询条件 12 本模块是可以按照 支出编号 支出人员 所属账户 和 支出金额 来查询 以方便用户的进行查找 在此模块中涉及到支出金额和账户余额的关系 因此在支出表设计了 insert 触 发器和 delete 触发器 在添加支出记录时 insert 触发器会将原来的账户余额减去支 出金额生成新的账户余额
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 肾病综合征患者的护理查房
- 2025标准版农村住宅购买合同协议书
- 国家施工标准合同范本
- 酒店维修合同范本简单
- 配件合同范本模板
- 奶粉店打工合同范本
- 租赁小屋合同范本
- 植物工厂购买合同范本
- 酒店转让合同范本
- 材料业绩合同范本
- 校园基孔肯雅热防控措施课件
- (2025年标准)离职手协议书
- 2025年团场人员考试题库
- 班组质量管理
- 2025年四川省建筑施工企业安管人员考试(企业主要负责人·A类)历年参考题库含答案详解(5卷)
- 实战能力评估模型-洞察及研究
- 超声引导髂筋膜阻滞技术
- 铁路建设工程质量安全监督管理办法
- 数字经济与市场结构-洞察及研究
- DB42T 1496-2019 公路边坡监测技术规程
- 学校餐厅试吃活动方案
评论
0/150
提交评论