资源描述
学士学位毕业论文
目 录
摘要 1
Abstract 1
引言 2
1. 绪论 2
1.1 家庭理财基本概念 2
1.2 Delphi的基本概念 3
1.3 BDE 与 ODBC 概述 3
1.3.1 BDE 简介 3
1.3.2 ODBC 简介 4
1.3.3 BDE 与 ODBC 的相互关系 4
2. 家庭理财系统的系统规划 5
3. 家庭理财系统的系统分析与设计 5
3.1 家庭理财系统的特点 5
3.3 家庭理财系统数据库设计 6
3.4 家庭理财系统的功能设计 8
3.5 家庭理财系统的总体系统结构设计 9
4. 部分子系统模块的实现 10
4.1 帐务项目管理模块 10
4.2 日常收支模块 11
4.3 银行存取模块 13
4.4 证券投资模块 16
4.5 统计分析模块 17
4.6 数据模块 19
5. 家庭理财系统的测试与维护 23
5.1 系统测试 23
5.2 系统维护 23
6. 结束语 23
7. 致谢 24
参考资料
家庭理财系统设计与开发
【摘要】
在经济飞速发展的今天,家庭理财已成为人们普遍关注的问题之一;而在面向对象可视化编程技术中,Delphi 凭借着其强大的功能和快速开发的特点,应用越来越广泛。本文首先介绍了家庭理财的概念及 Delphi 的有关技术,并探讨了家庭理财系统的设计思路和构成,然后详细分析了部分子模块(帐务项目管理、日常收支、银行储蓄、证券投资、统计分析和数据模块)的实现过程,并给出了用 Delphi 实现的关键代码。该家庭理财系统能够完成数据的输入、修改、删除、查询与统计等基本功能,适用于现代普通家庭的财务管理。
【关键词】Delphi,家庭理财系统
Design & Development of Household-finance-administration System
【Abstract】
With the rapid development of economy nowadays, household-finance-administration has risen up into people's general sight. Also in the field of objectoriented & visual programing technique, Delphi has gained more and more application by its powerful capacity and typical of rapid development. This article first introduced the concept of household-finance-administration and the relevant technique of Delphi, studied the Household-finance-administration System, then analyzed implement of some submodules in detail (e.g. Accounts Entry Administration, Daily Receipt and Expenditure, Bank Savings, Portfolio Investment, Statistic Analysis and Data Module), including the code concerned. This system can fulfil the function such as data recording, modification, removing, querying and statistics. It is applicable to finance administration of modern general families.
【Keywords】Delphi, Household-finance-administration System
引言
随着现代经济的飞速发展,人民的生活水平大幅度提高,因此对生活质量的要求也达到了高标准、精密度、多样化水准。如何使手中的钱既保值又增值,这是家庭理财最为关注的问题。本文介绍的家庭理财系统就是基于普通家庭在理财方面的一个应用程序。本系统采用Delphi 6.0作为开发工具,通过形象、生动、易懂的界面,使普通用户能轻松快速上手。与传统模式下开发的理财系统相比,该产品在通用性、易用性、稳定性、安全性和易扩展性等有了进一步的提高,且能有效的实现家庭成员对财务的管理。该系统人机交互界面友好,操作简单,功能强大,能够很好的完成现代普通家庭对家庭财务的管理。
1. 绪论
1.1 家庭理财基本概念
近几年来,随着我国城乡居民收入的增加和生活水平的提高,家庭理财已成为人们居家过日子的重要内容。社会学家细心的观察到,时下家庭的“小九九”比之计划经济年代,开始发生微妙的变化。现在的城乡家庭生活发生了明显的变化,人们的收入逐渐拉开档次,消费水平也高了。大多数家庭关注的是提高生活质量,一方面精打细算,量入为出,把钱用在刀刃上;另一方面保证适当的娱乐活动、社会交际、智力开发等方面的开支。为此,不少家庭就有中长期财务预算,有基本建设规划。
总的说来,家庭理财必须以量入为出为原则,以财产保值增值为目标,处理好积累和消费的关系。因此,应树立以下四个观念:
第一,资金运动质量观。资金(包括现金,有价证券,存款等)运动,是家庭经济活动的价值反应,家庭理财应管好用活资金,加速资金周转,提高资金利用效果,力争做到结构合理、偿债能力强、经济效益高,家庭财务做为资金的载体,应力争实现其保值增值。
第二,资金使用责任观。家庭财产作为社会资源的一部分,有责任创造社会财富,履行社会责任,为适应我国经济发展的要求,家庭可根据自身状况,适当投资,适度超前消费。
第三,经济效益观。家庭经济生活的基本目标,是在满足生活最佳需要的基础上,实现家庭财力的最大化。因此家庭理财要与经济效益挂钩,必须处理好投入与产出的关系,规避各种经济风险,堵塞各种经济漏洞,增收节支,当好家理好财,不断提高经济效益。
第四,利益协调观。家庭作为社会的细胞,它无疑又是一个利益结合体。从该意义上讲,家庭理财实质就是处理协调家庭内部及与各有关的经济方面的经济利益关系。在理财实践中,要坚持公正、公平、诚实和守信的原则,妥善处理好家庭内部利益关系、家庭与国家及有关经济单位的利益关系,维护各方合法权益;同时要处理好眼前利益和长远利益的关系,确保家庭经济持续稳定发展。
通过对家庭理财深入的调查,在满足家庭成员能方便、简捷的对家庭财产进行管理,我们开发了这个家庭理财系统。本系统包括了普通家庭财务方面所涉及的日常收入与支出、子女上学、银行活期与定期存款、借入借出款、投保险、股票与债券的交易、买车买房分期付款等多方面的功能,同时为了方便用户的管理,该系统还有统计、计划,提示等辅助功能。另外,本系统允许不同用户在单机上使用本系统,要求对数据库有合理的设计和一定的安全性,使得每个用户(除了系统管理员)只能操作自己的数据。
1.2 Delphi的基本概念
Delphi是由Inprise(原Borland)公司推出的一种功能强大、使用灵活的快速应用开发工具(RAD,Rapid Application Developer)。
Delphi是全新的可视化编程环境,为我们提供了一种方便、简捷的Windows应用程序开发工具。使用Delphi我们可以快速开发出Windows 9X&2K的应用程序。同时,Delphi提供了一系列开发、测试和调试的先进工具,包括大量可以重复使用的VCL组件库、各种Form模板等。使用Delphi 无疑会大大地提高编程效率。
Delphi一经推出,就取得了不同凡响的效果,赢得了空前的赞誉。Delphi的设计原则就是使一切复杂的东西变得简单易用。它速度快,具有强大且容易使用的可视化开发环境,并采用了具有弹性和可重用的完整的面向对象程序语言---Object Pascal,使得编写Windows程序不再是一件苦差事,而是充满乐趣的,且效率极高。
Delphi采用了目前世界上最快的编译器、领先的数据库技术、灵活多变的多媒体开发环境以及对分布式应用的强大支持,使你轻松胜任复杂应用的开发。
特别是在开发数据库应用程序方面,Delphi 更有着众多的优越性,它提供了强大的开发基于C/S模式的数据库应用程序的能力。在数据库访问方面,配有BDE(Borland Database Engine),可以通过SQL Links、ODBC等技术访问多种数据库,另外还可以利用ADO来访问各种数据库。使得数据库程序的开发功能强大且方便快捷。
1.3 BDE 与 ODBC 概述
1.3.1 BDE 简介
在利用可视化开发工具做数据库应用程序开发时,通常应用程序不能直接访问数据源,而要通过数据库驱动器。由于数据库种类繁多,数据库驱动器种类也形形色色。数据库引擎就是这众多数据库驱动器的管理者。程序员在编程时不必调用具体的数据库驱动器,而以统一的方式与数据库引擎交互,数据库引擎会自动去操作具体的数据库驱动器,这样就大大化简了数据库应用程序的开发。
BDE(Borland Database Engine)就是Inprise 公司推出的一个数据库引擎,它能连接到其他类型的数据库,还能将应用从本地上传到C/S系统服务器,同时有很高的效率。Delphi 数据库应用程序绝大多数是通过BDE来完成对数据库的访问。它能访问的数据可分为两大类,一类是本地数据,另一类是C/S体系的异地数据(如图1-1所示)。Delphi 在数据库开发方面见长,很大程度上是BDE 的功劳。
图1 -1 Delphi 6 的数据库体系
1.3.2 ODBC 简介
ODBC(Open Database Connection),中文意思为开放数据库连接。它是微软推出的一种数据库驱动器的接口标准,一种开放的独立于厂商的API应用程序接口,可以跨平台访问各种个人计算机、小型机以及主机系统。正如ISO的OSI一样,ODBC的重点在于OPEN(即开放),它不局限于特定的厂商,只要能提供ODBC支持,就能被用户以ODBC的方式访问。所以绝大多数数据库厂商、大多数应用软件和工具软件厂商都为自己的产品提供了ODBC接口或提供了ODBC支持,这其中包括常用的SQL Server、Oracle、Informix、Sybase 等,当然也包括了Access。客观的说,ODBC的确是一个技术含量较高的东西,也顺应了时代发展的潮流,在软件标准化的道路上进行了开创性的、大胆的、有益的尝试。但是ODBC的问题也很多,主要是使用不便、效率不高、功能有限,特别是在今天的可视化时代,直接使用ODBC的市场已经很小了。
1.3.3 BDE 与 ODBC 的相互关系
在图1-1中可以看出,BDE是ODBC的管理者,BDE可以通过ODBC访问数据源(可以是本地的,也可以是远程的)。然而,BDE管理的东西很多,不仅仅是ODBC;另一方面,ODBC也不一定要在BDE的管理下工作,事实上,在VC++、VB等开发工具中,尽管不见BDE的影子,也照样可以用ODBC。
2. 家庭理财系统的系统规划
本家庭理财系统能够完成数据的查询、录入、修改、删除、统计等基本功能,符合现代家庭的基本要求,能帮助一般的家庭进行方便、快速、有效的财务管理。
3. 家庭理财系统的系统分析与设计
3.1 家庭理财系统的特点
该家庭理财系统最大的特点就是运行本系统前不用预先进行任何的设置,也不须要预先安装任何的驱动程序(本系统自带BDE驱动程序),直接点击EXE文件即可自由的运行。本系统在初始阶段动态的添加临时ODBC数据源,并在结束阶段动态的删除。本系统还自动检查用户计算机上的BDE的驱动程序是否已正确安装,若BDE的驱动程序没有安装或安装不正确,则使用本系统自带的驱动程序。本系统的另一个特点就是用户界面友好、操作简便,极具通用性,适合于现代普通家庭。同时,本系统具有一定的安全性,普通用户只具有操作自己数据的权限,系统管理员(SA)则具有删除用户的权力。系统具有很高的稳定性和兼容性,能在Windows 9X、2K & XP 下自由的运行。
3.2 家庭理财系统的数据流图
图3-1 家庭理财系统第0层数据流图
图3-2 家庭理财系统第1层数据流图
3.3 家庭理财系统数据库设计
数据库设计是建立数据库及其应用系统的技术,是信息系统开发和建设中的核心技术。具体说,数据库设计是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效的存储数据,满足各种用户的应用需求(信息要求和处理要求)。一个系统的好坏,很大程度上取决于数据库设计的好坏。我们的家庭理财系统数据库部分表如表3-1:
表3-1 家庭理财系统部分数据表
(1)USER (用户信息表)
字段名
数据类型
是否可空
说明
ID
LONG
NOT NULL
用户编号 (主键)
NAME
CHAR(20)
NOT NULL
用户名
PASSWORD
VARCHAR(20)
YES
密码
(2)DAILY (日常收支信息表)
字段名
数据类型
是否可空
说明
ID
LONG
NOT NULL
记录编号 (主键)
PERSON
CHAR(20)
NOT NULL
人员
SUM
DOUBLE
NOT NULL
金额
FROM_TO
VARCHAR(50)
YES
来源/去向
FLAG
CHAR(1)
NOT NULL
收支标记(I-收入,E-支出)
ENTRY_NAME
VARCHAR(50)
NOT NULL
收支项目名称
MODE
VARCHAR(50)
YES
方式
DATE
DATE
NOT NULL
日期
REMARK
VARCHAR(200)
YES
备注
USER_ID
LONG
NOT NULL
用户编号
(3)CURRENT_ACCOUNT (银行活期帐户信息表)
字段名
数据类型
是否可空
说明
ID
LONG
NOT NULL
帐户编号 (主键)
BANK_NAME
VARCHAR(50)
NOT NULL
银行名称
ADDRESS
VARCHAR(50)
YES
开户银行地址
ACCOUNT_NUMBER
CHAR(50)
NOT NULL
帐号
ESTABLISH_DATE
DATE
NOT NULL
开户日期
ESTABLISH_SUM
DOUBLE
NOT NULL
开户金额
PERSON
CHAR(20)
NOT NULL
开户人
CARD_NUMBER
VARCHAR(50)
YES
卡号
REMARK
VARCHAR(200)
YES
备注
USR_ID
LONG
NOT NULL
用户编号
(4)CURRENT_RECORD (银行活期存取记录信息表)
字段名
数据类型
是否可空
说明
ID
LONG
NOT NULL
记录编号 (主键)
ACCOUNT_ID
LONG
NOT NULL
帐户编号
FLAG
CHAR(1)
NOT NULL
标记(D-存入,W-取款)
DATE
DATE
NOT NULL
存取日期
SUM_IN
DOUBLE
YES
存入金额
SUM_OUT
DOUBLE
YES
取出金额
BALANCE
DOUBLE
NOT NULL
余额
PERSON
CHAR(20)
NOT NULL
经手人
REMARK
VARCHAR(200)
YES
备注
(5)STOCK _TRADING (股票交易信息表)
字段名
数据类型
是否可空
说明
ID
LONG
NOT NULL
记录编号 (主键)
DATE
DATE
NOT NULL
交易日期
STOCK_CODE
CHAR(10)
NOT NULL
股票代码
STOCK_NAME
VARCHAR(50)
NOT NULL
股票名称
PRICE
DOUBLE
NOT NULL
交易价格
AMOUNT
LONG
NOT NULL
交易数量
EXPLOIT
REMARK
YES
公司业绩
FLAG
CHAR(4)
NOT NULL
买卖标记(“买进”,“卖出”)
REMARK
VARCHAR(200)
YES
备注
USR_ID
LONG
NOT NULL
用户编号
3.4 家庭理财系统的功能设计
1)功能划分:
帐务项目管理、家庭成员、日常收支、银行存取、证券投资、借入借出款、子女上学、保险、分期付款、理财计划、帐务提示、收支统计、理财助手、系统登录、退出系统、背景音乐、修改密码、删除用户。
2)功能描述:
(1)帐务项目管理:用户可以添加、修改与删除自己的帐务项目。
(2)家庭成员:用户可以添加、修改与删除自己的家庭成员。
(3)日常收支:用户可以添加、修改与删除自己的日常收支记录。
(4)银行存取:用户可以添加、修改与删除自己的银行活期帐户和活期存取记录以及定期存款记录。
(5)证券投资:用户可以添加、修改与删除自己的股票及债券的交易记录。
(6)借入借出款:用户可以添加、修改与删除自己的借入及借出债款。
(7)子女上学:用户可以添加、修改与删除自己的子女上学所用费用的记录。
(8)保险:用户可以添加、修改与删除自己的投保记录。
(9)分期付款:用户可以添加、修改与删除自己的买车买房等的分期付款记录。
(10)理财计划:用户可以制订、修改与删除自己的收支计划。
(11)帐务提示:包括应收款和应付款。其中,应收款又包括借出款且未归还的记录、银行定期存款且还未取出的记录、收入计划且仍未实现的记录;应付款包括借入且未归还的记录、仍未付款的子女上学记录以及仍未实现的支出计划。
(12)收支统计:用户可以按人员或项目统计自己设定的统计时间段内的收入与支出情况,并可以饼图或柱状图显示。
(13)理财助手:包括计算器和日记本的功能。用户可以通过计算器进行数值计算,通过日记本来写日记、修改日记或删除日记。
(14)系统登录:包括初始登录、重新登录及新建用户的功能。在程序启动时可以通过已存在的用户名进行初始登录系统,或新建用户名登录系统。进入系统后,用户仍可以另一用户的身份重新登录系统。
(15)退出系统:退出该家庭理财系统。
(16)背景音乐:用户可以开启或关闭背景音乐。
(17)修改密码:用户可以修改自己的登录密码。
(18)删除用户:系统管理员(SA)登录系统后,可以凭借系统管理员的密码删除其余的任何用户及其相关记录。
3.5 家庭理财系统的总体系统结构设计
家庭理财系统的总体系统结构如图3-3:
图3-3 家庭理财系统的总体结构图
4. 部分子系统模块的实现
4.1 帐务项目管理模块
1)功能描述:帐务项目管理模块的功能是使用户具有添加、修改、删除该用户自己设置的帐务项目。
2)与之相应的窗体文件为EntryForm.dfm ;原代码文件为EntryForm.pas。
3)所涉及的数据库表: STOCK_ENTRY, TERMLY_PERIOD_ENTRY,INSTALLMENT_TYPE_ENTRY, INSURANCE_ENTRY, CHILDREN_ENTRY, DAILY_ENTRY, BOND_PERIOD_ENTRY, INSTALLMENT_CYCLE_ENTRY, INSTALLMENT_PERIOD_ENTRY, BOND_ENTRY。
4)输入输出项目:
输入项目:收入项目名称、支出项目名称、子女上学费用项目名称、定期存款期限项目名称及年月值、分期付款类型项目名称、分期付款期限项目名称及年月值、分期付款周期项目名称及年月值、保险类型项目名称及是否一次性投保、股票代码和股票名称、债券类型名称、债券期限名称及年月值。
输出项目:无。
5)过程说明:
procedure TFomEntry.FormCreate(Sender: TObject);
窗体创建事件,初始化部分值,并设置各个表的过滤器。
procedure TFomEntry.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
判断是否满足关闭窗体的条件。如不满足,则询问用户。
procedure TFomEntry.FormClose(Sender: TObject; var Action: TCloseAction);
关闭窗体并释放窗体所占空间。
procedure TFomEntry.FormDestroy(Sender: TObject);
在销毁窗体前关闭各个数据库表及其他相应处理。
procedure TFomEntry.PCtlEntryChanging(Sender: TObject;
在改变当前页面前判断是否满足改变条件。
procedure TFomEntry.PCtlEntryChange(Sender: TObject);
在换页后进行按钮的可用性处理。
procedure TFomEntry.BtnCloseClick(Sender: TObject);
响应用户点击“关闭”按钮的事件。
procedure TFomEntry.BtnAddClick(Sender: TObject);
响应用户点击“添加”按钮的事件。置当前页面对应的数据库表为dsInsert状态,并处理其余控件的相应状态。
procedure TFomEntry.BtnModifyClick(Sender: TObject);
响应用户点击“修改”按钮的事件。置当前页面对应的数据库表为dsEdit状态,并处理其余控件的相应状态。
procedure TFomEntry.BtnDeleteClick(Sender: TObject);
响应用户点击“删除”按钮的事件。删除当前页当前记录。
procedure TFomEntry.BtnYesClick(Sender: TObject);
响应用户点击“确定”按钮的事件。添加或将当前记录修改为用户所输入的数据。
procedure TFomEntry.BtnNoClick(Sender: TObject);
响应用户点击“取消”按钮的事件。取消用户添加或修改的记录,并恢复控件的相应状态。
6)窗体界面设计(如图4-1):
图4-1 项目管理窗体
4.2 日常收支模块
1)功能描述:使用户具有添加、修改、删除自己的日常收支记录的功能。
2)与之相应的窗体文件为IncomeForm.dfm,ExpenseForm.dfm;原代码文件为IncomeForm.pas,ExpenseForm.pas。
3)所涉及的数据库表:DAILY,DAILY_ENTRY。
4)输入输出项目:
输入项目:日期、项目、人员、金额、方式、来源/去向、备注。
输出项目:无。
5)过程说明:(以日常收入窗体过程为例)
procedure TFomIncome.FormCreate(Sender: TObject);
窗体创建事件,进行部分初始化。
procedure TFomIncome.FormActivate(Sender: TObject);
激活窗体时响应的事件,在人员和项目组合框中加入条目。
procedure TFomIncome.FormCloseQuery(Sender: TObject;
判断是否满足关闭窗体的条件。如不满足,则询问用户。
Procedure TFomIncome.FormClose(Sender: TObject; var Action: TCloseAction);
关闭窗体并释放窗体所占空间。
procedure TFomIncome.FormDestroy(Sender: TObject);
在销毁窗体前关闭数据库表及其他相应处理。
procedure TFomIncome.BtnCloseClick(Sender: TObject);
响应用户点击“关闭”按钮的事件。
procedure TFomIncome.BtnDelClick(Sender: TObject);
响应用户点击“删除”按钮的事件。删除当前记录。
procedure TFomIncome.BtnAddClick(Sender: TObject);
响应用户点击“添加”按钮的事件。置相应的数据库表为dsInsert状态,并处理其余控件的相应状态。
procedure TFomIncome.BtnModifyClick(Sender: TObject);
响应用户点击“修改”按钮的事件。置相应的数据库表为dsEdit状态,并处理其余控件的相应状态。
procedure TFomIncome.BtnYesClick(Sender: TObject);
响应用户点击“确定”按钮的事件。添加或将当前记录修改为用户所输入的数据。
procedure TFomIncome.BtnNoClick(Sender: TObject);
响应用户点击“取消”按钮的事件。取消用户添加或修改的记录,并恢复控件的相应状态。
6)窗体界面设计(如图4-2):
图4-2 日常收支窗体
4.3 银行存取模块
1)功能描述:用户可以新开活期帐户、修改活期帐户信息、删除活期帐户,并且可以添加、修改、删除活期存取记录(存款余额由系统自动计算,用户不用手动修改);用户还能够添加、修改、删除银行定期存款记录。
2)相应的窗体文件为CurrentForm.dfm,TermlyForm.dfm;原代码文件为CurrentForm.pas ,TermlyForm.pas 。
3)所涉及的数据库表:CURRENT_ACCOUNT,CURRENT_RECORD,TERMLY_RECORD,TERMLY_PERIOD_ENTRY。
4)输入输出项目:
活期帐户输入项目:银行名称、开户地址、开户金额、开户人、开户日期、帐号、卡号、备注。
活期存取记录输入项目:银行名称、帐号、日期、金额、人员、备注。
定期存款输入项目:银行名称、银行地址、存款日期、存单帐号、存款期限、金额、存款人、年利率、是否已取(取款人、取款日期)、备注。
输出项目:无。
5)过程说明:
(1)CurrentForm.pas(活期储蓄窗体)
procedure TFomCurrent.FormCreate(Sender: TObject);
窗体创建事件,进行部分初始化。
procedure TFomCurrent.FormActivate(Sender: TObject);
激活窗体时响应的事件,在开户人和存取人组合框中加入条目。
procedure TFomCurrent.BtnCloseCrrtClick(Sender: TObject);
响应用户点击“关闭”按钮的事件。
procedure TFomCurrent.FormCloseQuery(Sender: TObject;
判断是否满足关闭窗体的条件。如不满足,则询问用户。
procedure TFomCurrent.FormClose(Sender: TObject; var Action: TCloseAction);
关闭窗体并释放窗体所占空间。
procedure TFomCurrent.FormDestroy(Sender: TObject);
在销毁窗体前关闭数据库表及其他相应处理。
procedure TFomCurrent.PCtlCurrentChange(Sender: TObject);
在用户换页后,初始化当前页上控件的状态。
procedure TFomCurrent.PCtlCurrentChanging(Sender: TObject;
在换页前判断是否满足换页条件。
procedure TFomCurrent.CmbBankNameSelect(Sender: TObject);
响应用户在活期记录页上选择银行名称的事件,在帐号组合框中加入所选银行下的帐号。
procedure TFomCurrent.CmbAccountSelect(Sender: TObject);
响应用户在活期记录页上选择银行帐号的事件,筛选出该用户在所选银行和帐号下的存取记录。
procedure TFomCurrent.BtnInRecClick(Sender: TObject);
响应用户在活期记录页上点击“存款”按钮的事件。
procedure TFomCurrent.BtnOutRecClick(Sender: TObject);
响应用户在活期记录页上点击“取款”按钮的事件。
procedure TFomCurrent.BtnModifyRecClick(Sender: TObject);
响应用户在活期记录页上点击“修改记录”按钮的事件。
procedure TFomCurrent.BtnDelRecClick(Sender: TObject);
响应用户在活期记录页上点击“删除记录”按钮的事件。
procedure TFomCurrent.BtnYesRecClick(Sender: TObject);
响应用户在活期记录页上点击“确定”按钮的事件。添加或修改存取记录。
procedure TFomCurrent.BtnNoRecClick(Sender: TObject);
响应用户在活期记录页上点击“取消”按钮的事件。取消用户所添加或修改的存取记录。
procedure TFomCurrent.BtnNewAcctClick(Sender: TObject);
响应用户在活期帐户页上点击“新开帐户”按钮的事件。
procedure TFomCurrent.BtnModifyAcctClick(Sender: TObject);
响应用户在活期帐户页上点击“修改帐户信息”按钮的事件。
procedure TFomCurrent.BtnDelAcctClick(Sender: TObject);
响应用户在活期帐户页上点击“删除帐户”按钮的事件。删除指定帐户及其相关的所有存取记录。
procedure TFomCurrent.BtnYesAcctClick(Sender: TObject);
响应用户在活期帐户页上点击“确定”按钮的事件。添加或修改帐户信息。
procedure TFomCurrent.BtnNoAcctClick(Sender: TObject);
响应用户在活期帐户页上点击“取消”按钮的事件。取消用户的添加或修改操作。
(2)TermlyForm.pas(定期储蓄窗体)
procedure TFomTermly.FormCreate(Sender: TObject);
窗体创建事件,进行部分初始化。
procedure TFomTermly.FormActivate(Sender: TObject);
激活窗体时响应的事件,在存款人、取款人和存款期限组合框中加入条目。
procedure TFomTermly.FormCloseQuery(Sender: TObject;
判断是否满足关闭窗体的条件。如不满足,则询问用户。
procedure TFomTermly.FormClose(Sender: TObject; var Action: TCloseAction);
关闭窗体并释放窗体所占空间。
procedure TFomTermly.FormDestroy(Sender: TObject);
在销毁窗体前关闭数据库表及其他相应处理。
procedure TFomTermly.BtnCloseClick(Sender: TObject);
响应用户点击“关闭”按钮的事件。
procedure TFomTermly.BtnDelClick(Sender: TObject);
响应用户点击“删除”按钮的事件。
procedure TFomTermly.BtnAddClick(Sender: TObject);
响应用户点击“添加”按钮的事件。
procedure TFomTermly.BtnModifyClick(Sender: TObject);
响应用户点击“修改”按钮的事件。
procedure TFomTermly.BtnYesClick(Sender: TObject);
响应用户点击“确定”按钮的事件。提交用户添加或修改的数据。
procedure TFomTermly.BtnNoClick(Sender: TObject);
响应用户点击“取消”按钮的事件。取消用户添加或修改的数据。
procedure TFomTermly.DBChBIsOutClick(Sender: TObject);
响应用户点击“是否已取”复选框的事件。改变部分控件的状态。
6)窗体界面设计(如图4-3):
图4-3 银行活期储蓄及定期储蓄窗体
4.4 证券投资模块
1)功能描述:该模块分为股票和债券交易两部分。用户可以添加、修改、删除股票和债券交易记录。
2)相应的窗体文件为StockForm.dfm 和BondForm.dfm ;原代码文件为StockForm.pas和 BondForm.pas 。
3)所涉及的数据库表有STOCK_TRADING,STOCK_ENTRY,BOND_TRADING,BOND_ENTRY,BOND_PERIOD_ENTRY。
4)输入输出项目:
股票交易输入项目:交易日期、股票代码、股票名称、交易价格、交易数量、公司业绩、操作类型、备注。
债券交易输入项目:交易日期、债券名称、债券类型、债券期限、交易数量、交易价格、面值、利息、操作类型、备注。
展开阅读全文