家庭财务管理系统毕业论文_第1页
已阅读1页,还剩41页未读 继续免费阅读

付费下载

下载本文档

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

文档简介

1、摘要随着社会的不断进展及人们生活水平的不断提高,我国大部分家庭的收入有了较大程度的的增长,存款、贷款、股票、债券、投资信托、租赁、保险等各种金融活动无不冲击着每个家庭,阻碍着社会生活的方方面面。如何对家庭的财产(包括收支情况、固定资产情况、债务等)进行科学合理的治理,节约开支并发挥资金的最大的效益,是第一个家庭需要考虑的问题,鉴于对家庭现状进行了解分析,发觉存在的一系列的问题。我决定利用毕业设计的机会,尝试设计开发了本系统家庭财务治理系统。本系统将采纳PowerBuilder 9.0作为前台数据库开发工具,鉴于家庭财务治理系统所需数据量比较小,为方便用户使用,因此使用PowerBuilder9

2、.0自带的ASA数据库。在本系统中,所使用ASA数据库创建应用数据库,并建立一系列的表,利用PowerBuilder9.0前台开发工具,对ASA数据库中的表进行操作,开发一系列功能模块,其中包含了日常收支、存取款、债务、报表统计及基础维护等,因此,家庭财务治理系统的应用将能够给每个家庭带来最大的效益。由于时刻关系和自身的水平,本系统并不完善,其中难免有错误之处,也请各位老师给予批判和指导。关健字:数据窗口用户自定义事件用户对象继承 标准可视对象Abstract with the development of society and peoples life level, in our coun

3、try , which the income of part of family had the bigger degree of growth, wealthy people no longer contented with one of life style, and start to try various new way, the people knew the stock, bond.Savings, loan, stock, bond, investment trust, leasing, various financial activity etc. all kinds of i

4、nsurance all pounds at each family, affecting aspect of the social activities.How to manage the property( include the receipt and expenditure circumstance, fixed assets circumstance, obligation.etc.) of the family carries on the management of science reasonable, economize the biggest performance tha

5、t the expenditure erupts to flick the funds, is the first family needs to be considered the problem, owing to carry on the understanding analysis to the family present condition, discover a series of problem of existent , I decide to make use of the opportunity of graduate the design, and try develo

6、ping this system- the family finance management system .This system will adopt the PowerBuilder 9.0 be the stage database development tool, owing to the amount of data that the family finance management system need is smaller, using for the customer conveniently, the usage PowerBuilder9.0 from the d

7、atabase of ASA that take.In this system, we use the database of ASA to establish the applied database, and build up the form of a series, making use of the PowerBuilder9.0 stage development tool, carrying on the operation to the watch in the database of ASA, developping a series of function mold pie

8、ce, among them including usually the receipt and expenditure, the access style, obligation, various type statement statistics and the foundation support the etc., so, the family finance manage the application of the system and will can bring biggest performance for each family.Because of the limited

9、 of time, our design is not perfect,it must appear some mistakes, also ask each teacher to give some advice and correct it.KeyWord:DataWindows UserEvent UserObject Inherit Standard Visual目录 TOC o 1-3 h z u HYPERLINK l _Toc105433247 前言 PAGEREF _Toc105433247 h 4 HYPERLINK l _Toc105433248 第一章 绪论 PAGERE

10、F _Toc105433248 h 5 HYPERLINK l _Toc105433249 第二章 开发工具及数据库概述 PAGEREF _Toc105433249 h 6 HYPERLINK l _Toc105433250 2.1 PowerBuilder概述 PAGEREF _Toc105433250 h 6 HYPERLINK l _Toc105433251 2.2 ASA数据库简介 PAGEREF _Toc105433251 h 7 HYPERLINK l _Toc105433253 第三章 系统设计思想 PAGEREF _Toc105433253 h 8 HYPERLINK l _T

11、oc105433254 3.1数据库设计概述 PAGEREF _Toc105433254 h 8 HYPERLINK l _Toc105433255 3.2 需求分析 PAGEREF _Toc105433255 h 8 HYPERLINK l _Toc105433256 3.3 概念结构设计 PAGEREF _Toc105433256 h 10 HYPERLINK l _Toc105433257 3.4 逻辑结构设计 PAGEREF _Toc105433257 h 12 HYPERLINK l _Toc105433258 3.5 物理结构设计及数据库的实施 PAGEREF _Toc105433

12、258 h 13 HYPERLINK l _Toc105433259 第四章 程序设计过程详解 PAGEREF _Toc105433259 h 15 HYPERLINK l _Toc105433260 4.1 应用程序与数据库的连接 PAGEREF _Toc105433260 h 15 HYPERLINK l _Toc105433261 4.2 差不多模块 PAGEREF _Toc105433261 h 16 HYPERLINK l _Toc105433262 4.3 数据处理模块 PAGEREF _Toc105433262 h 20 HYPERLINK l _Toc105433263 4.3

13、.1用户登录模块 PAGEREF _Toc105433263 h 20 HYPERLINK l _Toc105433264 4.3.2日常收支模块 PAGEREF _Toc105433264 h 21 HYPERLINK l _Toc105433265 4.3.3存取款功能模块 PAGEREF _Toc105433265 h 22 HYPERLINK l _Toc105433266 4.3.4家庭财产治理功能模块 PAGEREF _Toc105433266 h 22 HYPERLINK l _Toc105433267 4.3.5借入与借出债务功能模块 PAGEREF _Toc105433267

14、 h 22 HYPERLINK l _Toc105433268 4.3.6借入与借出债务归还功能模块 PAGEREF _Toc105433268 h 23 HYPERLINK l _Toc105433269 4.4 查询功能模块 PAGEREF _Toc105433269 h 24 HYPERLINK l _Toc105433270 4.5数据的备份模块 PAGEREF _Toc105433270 h 24 HYPERLINK l _Toc105433271 4.6 统计报表模块 PAGEREF _Toc105433271 h 25 HYPERLINK l _Toc105433272 4.6.

15、1基础窗口 PAGEREF _Toc105433272 h 25 HYPERLINK l _Toc105433273 4.6.2打印报表 PAGEREF _Toc105433273 h 26 HYPERLINK l _Toc105433274 4.7 基础设置模块 PAGEREF _Toc105433274 h 26 HYPERLINK l _Toc105433275 4.7.1家庭成员治理模块 PAGEREF _Toc105433275 h 26 HYPERLINK l _Toc105433276 4.7.2其它模块 PAGEREF _Toc105433276 h 27 HYPERLINK

16、l _Toc105433277 4.8 关心模块 PAGEREF _Toc105433277 h 27 HYPERLINK l _Toc105433278 第五章 家庭财务治理系统的开发总结 PAGEREF _Toc105433278 h 27 HYPERLINK l _Toc105433279 参考文献: PAGEREF _Toc105433279 h 29 HYPERLINK l _Toc105433281 致谢 PAGEREF _Toc105433281 h 31 HYPERLINK l _Toc105433282 附录 PAGEREF _Toc105433282 h 31前言进入二十一

17、世纪以来,随着社会的不断进步和科学技术的飞速进展,计算机在人们的生活工作中起着越来越重要的作用。打算经济时期,社会经济表现的是一种“短缺经济”形态,人们的收入只能牵强维持差不多生活需要,全然没有余钞票用作其他用途。然而,随着社会的不断进展,人们生活水平的不断提高,我国大部分家庭的收入有了较大的增长,今天的老百姓不但有能力“穿金戴银”,个人可支配的收入也达到了数万元。富裕的人们不再满足于单一的生活方式,而是开始尝试各种新的方式,人们认识了股票、债券。存款、贷款、股票、债券、投资信托、租赁、保险等各种金融活动无不冲击着每个家庭,阻碍着社会生活的方方面面。毋庸置疑,现在许多家庭财务差不多上东一榔头西

18、一棒,缺少整体考虑、合理规化,与此同时,家庭财产的收入、支出类型也变的多种多样,如何对家庭的财产(包括收支情况、固定资产情况、债务等)进行科学合理的治理,节约开支并发挥资金的最大的效益,是第一个家庭需要考虑的问题,鉴于对家庭现状进行了解分析,发觉存在的一系列的问题。因此决定利用毕业设计的机会,尝试设计开发了本系统家庭财务治理系统。本系统将采纳PowerBuilder 9.0作为前台数据库开发工具,鉴于关于家庭财务治理系统,数据量比较小,并方便用户使用,关于数据库,使用PowerBuilder9.0自带的ASA数据库。ASA数据库能够实现和PowerBuilder9.0的无缝对接,关于ASA数据

19、库的操作由PowerBulder9.0所提供的专用接口来完成。ASA数据库治理、数据完整性检查、数据库查询功能、数据库安全性等各方面的功能也专门强大,同时也提供了数据的保密、备份与恢复等功能。PowerBuilder是目前广泛流行的一种面向对象的、具有可视化图形界面的快速交互式数据库前台开发工具,它支持客户/服务器机制、分布式组件开发与因特网应用。利用它既能够开发功能强大的、运行在多个平台的、能够操作多个数据库的应用系统,还能够开发客户/服务器、分布式、因特网应用系统。在本系统中,利用ASA数据库创建应用数据库,建立一系列的表,利用PowerBuilder前台开发工具,对ASA数据库中的表进行

20、操作,关于数据库的连接是本系统的第一个重要环节,PowerBuilder提供了大量的各种数据库的数据库接口驱动程序用于与各种数据库的连接,ASA数据库的专用接口。建立与ASA数据库的连接后,开发一系列功能模块,实现了对数据库数据进行生成、处理、查询、统计及字典维护等一系列功能,并能将新生成的数据制作成报表打印出来,以实现整体的设计思想。通过指导老师的热心关心和我的共同努力,完成了整个系统的设计开发,差不多实现了预期的目的,对现有系统的缺陷进行了必要的补充,同时,也通过这次设计开发过程增加了自身的实践经验,提高了自身的设计开发能力,为今后工作打下了良好的基础。由于时刻关系和自身的水平,本系统并不

21、完善,其中难免有错误之处,也请各位老师给予批判和指导。第一章 绪论人们生活水平的不断提高,我国大部分家庭的收入有了较大的增长,富裕的人们不再满足于单一的生活方式,股票、债券、存款、贷款、股票、债券、投资信托、租赁、保险等各种金融活动无不冲击着每个家庭,阻碍着社会生活的方方面面。对家庭的财产(包括收支情况、固定资产情况、债务等)进行科学合理的治理,节约开支并发挥资金的最大的效益,是第一个家庭需要考虑的问题,鉴于对家庭现状进行了解分析,采纳PowerBuilder 9.0作为前台数据库开发工具,使用PowerBuilder9.0自带的ASA数据库,设计开发了。在本系统中,所使用ASA数据库创建应用

22、数据库,并建立一系列的表,利用PowerBuilder9.0前台开发工具,对ASA数据库中的表进行操作,开发了收支治理、存取款治理、固定资产治理、债务治理、统计报表等几个小模块,能够从现有数据中提取所需数据,对日常收支对比和家庭资金统计生成每日报表、每月报表或者是年度报表;也能够对日常收支、存取款、债务、固定资产等进行各样的条件查询,也能够对一些差不多的参数(数据表)进行设置,也能够对差不多的数据进行备份。下面将分四章详细介绍相关的情况,第二章介绍有关数据库及开发工具的情况;第三章将详细介绍本系统的总体设计思路;第四章详细介绍各功能模块的设计思路和设计方法及过程;第五章是对该系统的总结分析。最

23、后是参考文献、致谢以及附录的程序清单。第二章 开发工具及数据库概述2.1 PowerBuilder概述 PowerBuilder是一种可视化的、面向对象的快速应用程序开发环境,是由美国闻名的PowerSoft公司推出的广泛使用于客户/服务器体系结构下的应用程序开发工具,是一种面向对象的图形化交互式开发工具,它能够快速的可发出面向对象的大型数据库应用系统,关于单机用户来讲,PowerBuilder同样是一种理想的开发环境。它差不多为许多数据库开发人员所熟悉和使用,并获得广泛的好评。与其他应用程序开发工具相比,PowerBuilder具有易于熟悉和掌握、开发速度快、成本低、质量高、功能强等诸多特点

24、。PowerBuilder8进一步增强了编程环境:通过即时提示和自动补充完成功能,减少和幸免了编写应用程序时的键入错误;通过多应用程序的支持,开发人员能够同时开发和调试多个应用程序;通过全新的库治理画笔,开发人员能够更加方便灵活地操纵和治理各种对象;通过剪裁窗口,开发人员能够把自己反复使用的多项内容放入到剪裁窗口中,然后随时能够粘贴到需要的地点;通过输出窗口,开发人员能够看到各种操作的输出结果和状态。PowerBuiler8差不多把PowerSite Web开发工具差不多完全集成在它的里面,现在开发人员能够使用PowerBuiler8来开发Web应用程序了。新增的数据窗口函数、属性和事件使这一

25、工具具备了更强的能力和更高的灵活性;与EAServer的紧密集成让开发人员能够更迅速次开发出多层应用程序;新增和增强的数据库接口使数据库访问更简单有效;PowerScript中新增的例外处理功能让开发人员能够更精巧地操纵错误处理的方式方法;新增和增强的控件和函数进一步提高了PowerBuilder的应用程序开发能力,减少了对API调用的依靠;同时对双字节字符和Ansi字符的支持让开发人员能够更方便地处理中文环境,同时也方便了多过程序的开发。由于PowerBuilder使具有图形界面的数据库前端开发工具,它所采纳的图形界面能够使开发人员快速方便地开发出相互独立的对象,而这些对象可供开发人员共享或

26、重复使用。PowerBuilder应用系统能够在Windows3.X、windows95/98/NT/2000、UNIX等多种操作系统上进行跨平台的开发、运行和分布。PowerBuilder所具有的数据库连接和数据处理功能,PowerBuilder能够作为数据库应用系统开发环境。PowerBuilder提供专用的数据库接口不仅提供了各种数据库的支持,对数据库的访问具有客户/服务器查询处理的高性能。PowerBuilder内置了数据窗口控件,通过该控件可使用户用专门少的代码甚至无需编程,即可迅速创建访问数据库信息的窗口,尤其是访问大型数据库信息的窗口。而在其他的数据库开发工具中往往需要进行复杂的

27、编程。在开发的系统中,数据窗口也是最要紧的开发技术,绝大多数模块中都使用了这一技术,也使我深深体会了数据窗口技术的强大功能和简单灵活的特点。2.2 ASA数据库简介数据库的治理要紧是指对数据库的创建、维护和删除。由于安装PowerBuilder9.0的时,用户可同时安装sybase公司的数据库产品Adative Server Anywhere 8.0,它能够实现与PowerBuilder9.0无缝对接,它能够方便的对数据库进行数据表的创建、删除、及其它的一些工作,Adaptive Server Anywhere8.0数据库系统既能运行在数据库服务器上,又能运行在客户机上作为本地的数据库系统来使

28、用。为了方便系统的使用,因此选用了PowerBuilder9.0所自带的ASA数据库。第三章 系统设计思想 3.1数据库设计概述数据库设计是建立数据库及其应用系统的技术,是信息系统开发和建设中的核心技术,是指关于一个给定的环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效地存储数据,满足各种用户的应用需求。数据库设计既是一项涉及多学科的综合性技术,有时一项庞大的工程项目数据库建设是硬件、软件、和干件的结合;数据库设计应该和应用系统设计相结合,即整个设计过程中要把结构设计和行为设计紧密结合起来。数据库及其应用系统开发全过程可分为六个时期:需求分析;概念结构设计;逻辑结构设计;物理结

29、构设计;数据库实施;数据库运行和维护。下面将逐步分析设计。3.2 需求分析关于第一个家庭,大伙儿都专门了解,差不多上包括日常的收支情况、固定资产情况、债务、债务的归还、银行的存取款。在系统的设计中,数据表的设计是关键,如何依照系统要实现的功能合理的设计数据库将关系到整个系统的运行效率甚至关系到整个系统的成败。依照目前家庭所需数据库的的分析,发觉所用到的数据能够从以下几个表中提取:1、日常收支表(rcsz)其中包含编号(r_id),收支人(r_chengruan),金额(r_jine),收支类型(r_shuozifangshi),项目(r_xiangmu),帐号(r_zhanghao),摘要信息

30、(r_zaiyao),日期(r_riqi),地点(r_didian),备注(r_beizhu);2、项目表(szxm)其中包含编号(s_id),项目名(s_mingcheng),收支(r_shouzhi),备注(s_beizhu);3、付款方式表(zffs)其中包含编号(z_id),名称(z_mingcheng),备注(z_beizhu);4、帐户治理表(yhzh)其中包含编号(y_id),帐户(y_zhanghu),开户人(y_kaihuren),开户银行(y_yinhang),开户日期(y_riqi),金额(y_jine),帐户密码(y_zhanghumima),卡号(y_kahao),卡

31、密码(y_kamima),备注(y_beizhu),目前金额(y_muqianjine);5、存取款记录表(cqk)其中包含编号(c_id),日期(c_riqi),类型(c_inout),帐号(c_zhanghao),金额(c_jine),地点(c_dizhi),备注(c_beizhu),成员(c_chengyuan)6、财产类型表(jtcclx)其中包含编号(j_id),名称(j_mingcheng),备注(j_beizhu);7、家庭财产表(jtcc)其中包含编号(j_id),名称(j_mingcheng),价格(j_jige),数量(anum), 财产类型(j_caichanleixin

32、g),日期(j_riqi),备注(j_beizhu),;8、债务表(zw)。其中包含编号(z_id),日期(z_riqi),借入人(z_inren),借出人(z_outren),金额(z_jine),付款方式(z_fukuanfangsi),帐号(z_zhanghao),已还金额(z_yihunajine);9、债务归还表(zwgh)其中包含编号(z_id),日期(z_riqi),还入还出(in_out),金额(money),家庭成员(member),付款方式(z_fukuanfangsi),还入还出方式(in_outaccount),备注(remark);10、联系人表(lxr)其中包含编号

33、(l_id),姓名(l_xingming),姓不(l_xingbie),手机(l_shuoji),家庭电话(l_jiatingdianhua),公司名称(l_gongsiming),联系地址(l_dizhi),备注(l_beizhu);11、家庭成员表(jtcy)其中包含编号(j_id),姓名(j_xingming),密码(j_mima),金额(j_jine),备注(j_beizhu);12、家庭资金统计表(zjtj)其中包含编号(z_id),姓名(z_xingming),项目(z_xiangmu),期初金额(z_cushijine),收入(z_shuoru),支出(z_zhichu),存入(

34、z_cunru),支取(z_zhicu),向外借入(z_xiangwaijieru),向外借出(z_xiangwaijieru),借出归还(z_jieruguihuan),借入归还(z_jieruguihuan),目前余额(z_yue);如此开发系统的数据库表结构已差不多完成。从而数据流图也差不多建立,数据走向是从原有数据库中通过检索生成本系统所需数据并存储,到对数据进行查询、处理、统计等处理,再到经处理的数据输出。3.3 概念结构设计概念结构设计确实是将需求分析得到的用户需求抽象为信息结构即概念模型的过程。它是整个数据库设计的关键。本系统采纳自底向上方法,即自顶向下进行需求分析,然后在自底向

35、上底设计概念结构。本系统所需实现的功能是对家庭收支、存取款、债务等生成必要的记录、查询、统计、维护等,因此这些就成为动身点。在生成模块中,首先是要从原有数据库数据中提取所需数据,生成新数据库中的数据;然后对新数据进行处理以便生成上报所需的数据,即从项目治理来讲可分为收支、存取款、债务、数据备份等,从时刻来讲分为年度报表、月报表及日期(选择时刻段)报表;在查询模块中可分为收支、存取款、债务等查询;在差不多信息的操作上能够进行成员治理、项目治理、付款方式、财产治理、帐户治理、联系人等操作。3.4 逻辑结构设计逻辑结构设计的任务确实是把概念结构设计时期设计好的差不多E-R图转换为与选用DBMS产品所

36、支持的数据模型相符合的逻辑结构。在这一时期是把上一时期所设计的各实体及属性转换为新数据库中各个表中的记录的数据项。这些工作能够在所用的到的ASA数据库中进行一系统的转换(把差不多数据转换成关系数据库所用到的表),并进行优化。3.5 物理结构设计及数据库的实施数据库在物理设备上的存储结构与存取方法成为数据库的物理结构,为一个给定的逻辑数据模型选取一个最合适应用要求的物理结构的过程,确实是数据库的物理设计。图3.5程序结构图第四章 程序设计过程详解4.1 应用程序与数据库的连接开发本家庭财务治理系统所采纳的操作系统是Windows 2000,是在个人模式下用PowerBuilder8.0开发的,创

37、建工作区、目标、库文件是系统开发的首要工作,首先建立一个目录来放置建立的库文件等,在PowerBuilder9.0增添了两个新概念,工作区(Workspace)和目标(Target),因此首先需建立一个工作区,命名为moneymanager.pwl,再选择标签页“Target”上的“Application”图标,建立一个应用库文件moneyhome.pbl和base.pbl并指明路径存在所建目录下。其中base.pbl用来存放基础类库的对象和函数等,moneyhome用来存放系统窗口、数据窗口对象等。数据库的连接确实是本系统开发的第一个重点。首先创建数据源和数据库描述文件,在主工具栏中单击DB

38、Prodile按钮,打开Data Profiles对话框,那个对话框列出了PowerBuilder9.0当前安装的数据库接口,这些数据库接口中有专用的接口,也有ODBC接口,本系统所使用的确实是ODBC接口,然后依次展开ODBC各个分支,直到出现ODBC Administrator,双击ODBC Administrator,打开“ODBC数据源治理器”对话框。在“ODBC数据源治理器”中激活“用户DSN”选项,单击“添加”按钮,打开“创建数据源”对话框,然后选择Adaptive Server Anywhere8.0,单击完成,在ODBC中的Data Sorce Name中输入moneyhome

39、,在DataBase选择你的数据库所在的位置,然后在Login中输入你的用户名“DBA”和密码“SQL”,单击确定,回到Database Profiles中,单击ODBC,选择New,在Connection中的ProfileName中输入”moneyhme”,在DataSorce中选择moneyhome,在User ID输入“DBA”,在Passwrod中输入“SQL”,选择Preview,单击Test Connetction假如成功,将提供成功信息,否则将返回错误信息提示,假如成功单击Copy复制代码,最后单击OK,那个差不多上把它配置好了,第二步,在moneyhme的OPEN事件中输入你刚

40、才复制的代码,本系统只用到一个数据库因此使用默认的全局事务对象SQLCA,它能够向数据库发送连接信息,并成数据库中返回连接成功或是失败的信息,最后添加连接成功后所要打开的窗口(登录窗口和系统的主窗口),通过这些脚本的添加使得应用库和登录窗口的相互配合,完成了用户与数据库之间的连接。4.2 差不多模块由于系统中经常要用到一系列重复的对象,因此有必要做一系列的差不多模块,以便以后的继承和调用,如此能够大大节约开发所用的时刻。创建基础的列表窗口(w_list_base),因为在系统中会经常用到数据列表的功能,因此有必要创建如此一个窗口。那个窗口与一个编辑菜单(m_edit)相关联,同时放置一个继承u

41、o_dw_grid的数据窗口控件dw_list。在菜单的各项脚本中,采纳了动态调用的方法来调用窗口的事件,PowerBuilder9.0中同意在调用函数或事件时加入关键词Dyanmeic,能够调用在编译代码时并不存在的函数或事件,如此大大的增加了开发的灵活性。创建用户的自定义事件,这些用户自定义事件的事件的编写有一部分是在主列表窗口中编写,但有一部分是在继承那个主窗口的子窗口中编写,其中包括ue_new,那个事件的要紧功能是新增一条新的记录。ue_edit那个事件的功能是编辑一条记录。ue_find,那个事件的要紧功能是打开查询窗口,接收SQL语句并修改数据窗口的Select语句,实现数据的检

42、索。ue_save是的要紧功能是对你新增或编辑的数据进行保存。ue_delete删除数据窗口的当前记录。ue_refresh重新检索数据窗口中的数据实现所谓的刷新。ue_setbarenabled依照数据窗口的结果集设定各个菜单项的所处的状态,确实是所谓的在不同的时刻内可用不可用。ue_settoolbar这些是为了设置菜单工具栏的字体的样式风格。同时还定义了一系列的全局变量及窗口的打开和关闭事件。编写窗口的open事件,首先调用uo_settoolbar自定义事件设置工具栏字体的样式风格,然后是用setrransobject和retrieve事件对数据窗口控件所对应的数据库进行检索刷新,最后

43、调用用户的自定义事件ue_setbarenabled事件,用来设置工具栏按钮所处的状态。这些自定义事件都不带有任何的返回值。创建用户自定义函数f_center,那个函数的功能使窗口的在屏幕的中央显示。代码的实现过程是首先猎取屏幕的象素,然后使窗口的左横坐标为屏幕宽度的一半减去窗口宽度的一半,窗口的左纵坐标为屏幕高度的一半减去窗口高度的一半。用户的自定义函数f_getid那个函数的功能是为了得到dw_list数据窗口控件中数据的ID。实现过程要紧是通过数据窗口控件的getTtemNumber()函数。创建基础的编辑窗口(w_edit_base),因为在本系统中,差不多上所有的弹出窗口差不多上这一

44、类风格,因此编写如此一个编辑窗口的父窗口是有必要的。那个窗口要紧是继承了一个差不多窗口(w_autosize),w_autosize窗口的要紧的功能是使窗口在屏幕的中央显示,功能的实现也是调用了一个用户自定义事件f_center,还能够对窗口中所有的控件进行定位,其中定义了键盘事件,要紧的功能是当用户用户键盘的回车鍵操作时,控件获得焦点时的先后顺序。Resize事件是当窗口改变后所有窗口中的控件将通过相对比例进行更改。Open事件功能是对所有的控件进行初始化,首先调用窗口居中函数,然后再初始化所有控件的位置。ue_setline设置窗口中的四条线的位置。又创建了几个用户自定义的函数,f_cen

45、ter这确实是窗口所调用的居中函数。uf_position,uf_resize。窗口w_eidt_base要紧是由一个继承自uo_dw_freeform用户对象的数据窗口控件dw_edit和两个命令按钮确定和退出组成。创建基础的窗口w_center,创建用户自定义对象ue_dwcz那个自定义对象的要紧功能是通过一个参数as_what,推断事件的类型,假如是提交的话,推断是否差不多保存,假如保存的话,提示已保存信息,否则的话提示用户是否要保存信息。假如是插入的话,定位到所要插入的行。假如是删除的话,将出现提示信息,询问用户是否要确实进行删除。Ue_setline和上面的功能一样差不多上为了设置窗

46、口中的四条线的所在的位置。Ue_showtips显示提示信息。同时还有它的Open、resize事件,功能同上。自定义函数f_center也和上面一样。创建用户自定义对象uo_dw_freeform(自由表格式),那个用户自定义对象要紧是为是为了以后的数据窗口控件继承。由于那个数据窗口用户对象,在以后的开发过程中将会经常用到,因此提早建立一个差不多的对象以便继承,对那个数据窗口的操作一般是记录的新增、记录的删除、数据的保存、窗口的刷新等。首先创建用户的自定义事件shift_er,那个事件的要紧功能是用户在键盘上按下回车或是上下方向鍵时确定输入焦点的后移。还创建了一个用户的自定义函数of_add

47、,要紧是实现用户记录新增,同时返回新增记录的行号。of_del自定义函数的功能是删除用户的当前记录,并提示用户信息是否要删除,假如当前行删除不成功的话,将有一个提示信息,成功的话也返回一个提示信息。of_save那个自定义函数的功能是保存数据窗口的数据,成功的话返回成功信息,不成功的话返回不成功的信息。of_refresh那个自定义函数的功能是对数据库中的信息进行重新的检索,并刷新数据窗口中的数据。of_setcolor自定义事件,那个函数的功能是设置编辑字体的背景色。还有一个自定义事件of_ismodify那个函数通过检索数据库中的记录,假如修改和更新的记录数都大于零的话,将提示保存信息,假

48、如保存不成功的话,也提示保存不成功的信息。创建数据窗口用户对象uo_dw_grid,那个数据窗口对象要紧是针对grid类型的窗口所设计的,那个有一部分是继承了uo_dw_freeform,然而也做了一部分的功能添加,of_asc那个函数的要紧功能是为了当用户单击列名的时,数据窗口中的数据将自动进行数据的升序排列并显示升序箭头图标。of_des那个函数要紧是为了数据窗口中的数据自动子降序排列并显示降序箭头图标。Rowfocuschanged那个用户自定义事件功能是实现选中当前行。uo_dw_grid的clicked事件,当用户单击时进行数据的排列,并进行箭头的显示。创建数据窗口用户对象u_dw_

49、base,其中of_ask_to_save()函数的要紧功能是当closequery时,假如用户操作的数据窗口中的数据已更改,将询问用户是否要进行保存。of_deleterow()函数的功能是提示用户是否确实要删除行记录,假如是的话,将删除,否则不于删除。of_getcoltpye()函数功能是返回所得到的列的类型。of_getheader()得到头文件。of_insertrow()功能是插入一行数据。of_update()更新信息是否成功,成功返回成功信息,否则的话返回更新失败信息。创建可见的用户对象并把相应的代码封装在里面,如此幸免大量重复的代码的编写,也有利于以后系统的维护和升级,假如在

50、系统中使用,选择“insert” 下的“control”下的“userobject”直接引用这些对象。创建不可见的用户对象uo_toolbarfont那个函数能够重新定义窗口工具栏文本和工具栏按钮的宽度,使之更加美观。创建不可见的用户对象uo_settime那个的要紧功能是设定系统的日期和系统的时刻。创建可视的用户对象u_toolbutton,定义工具按钮的显示风格,并添加mousedown,mouseup,mousemove事件。创建可视的用户对象sle_find,定义用户的key_press事件。创建可视的用户对象uo_close,并添加关闭按钮事件来关闭窗口。创建可视的用户对象uo_de

51、le。创建可视的用户对象uo_edit。创建可视的用户对象uo_refresh。创建可视的用户对象uo_help。创建可视的用户对象uo_print。创建可视的用户对象uo_new。创建可视的用户对象uo_save。创建可视的用户对象uo_search。创建可视的用户对象uo_sle。其中Selecttext事件的功能是选中你所选择的文本。创建数据窗口对象,系统中要紧用了两个差不多类型的数据窗口对象,一个是grid(风格)类型,另一个则是freeform(自由表格式)类型。创建grid类型的数据窗口对象d_xmgl_list,首先打开文件菜单中的new子菜单,然后在打开的new对话框中选择da

52、tawindow标签,选择grid单击OK,然后选择SQL select单击Next,选择项目表,双击选择要添加的项,关闭,然后出现select color and border setting,设置好,单击next,在单击finish,grid类型的数据窗口对象就差不多上做好了,然后你还能够设置它的一些属性其中包括一些颜色及内容的位置等。创建freeform类型的数据窗口对象d_qkjl_edit,做法与grid类型的数据窗口对象差不多,不同点是在table layout中,单击design菜单中的retrieval arguments.,在name中输入ID,在类型中选择Number型,然

53、后在Column中选择s_id,operator选择=,value中输入id,单击下一步,下同grid类型的创建。创建基础菜单m_main,菜单定义为m_rcsr日常收入记录,m_rczc日常支出记录,m_ckjl用户存款记录,m_qkjl用户取款记录, m_asset资产记帐,m_jrzw借入债务,m_jczw借出债务,m_jrgh借入归还,m_jcgh借出归还, m_pinouttally日常收支对比表,m_psumall家庭资金汇总表,m_backup数据备份,m_cygl成员治理,m_zhgl帐户治理,m_fkfs付款方式,m_lxr联系人,m_xmgl项目治理,m_ccgl财产治理

54、,m_about关心。每个窗口的差不多事件一般是调用OpenWithPara()函数,并传递一个窗口名称和一个参数。因为专门多窗口都要被共用,比如日常的收入和日常的支出,它们确实是通过那个参数来分不实现不同的功能。创建基础菜单m_edit,菜单定义为新增、编辑、删除、保存、查找、刷新、打印、关闭。它们分不动态的调用用户自定义事件ue_new、ue_edit、ue_delete、ue_save、ue_find、ue_refresh、ue_print、ue_close。有些事件将会在所打开的窗口中重新定义。4.3 数据处理模块数据处理模块是本系统的核心模块,它将实现本系统的大部分的功能。它要紧由用

55、户的登录模块、日常的收支模块、存取款功能模块、固定资产治理的功能模块、借入与借出债务功能模块、借入与借出债务归还功能模块组合而成。具体分析如下:4.3.1用户登录模块创建用户的登录模块,系统登录是为了数据库的安全,防止非法人员的进入,那个窗口也是窗口w_center窗口继承而来,要紧由两个静态文本、一个单行文本、一个dropdownlistbox、两个Button按钮和一条线组成。添加窗口的open事件,要紧的功能是当用户打开那个窗口的时候,将从数据库检索用户信息,并把检索到所有的用户名放到用户名下拉列表中,具体操作是:首先定义一个游标并把从数据库中检索的数据放入其中,然后用一个循环语句把得到

56、的数据一个一个的放入列表中,最后关闭游标并把初始值定位在第一条。添加登录按钮的clicked事件,要紧功能是推断用户是否是合法用户,首先推断用户名是否为空,假如为空的话,提示错误,然后取出信息并推断用户登录的次数,假如大于三次将自动退出,最后推断用户的密码是否正确,假如正确的话将进入系统。创建系统的主界面w_main,那个窗口要紧包含一个数据窗口控件关联一个数据窗口对象d_statbar,那个数据窗口对象的功能是用于在状态栏显示用户的差不多信息及操作日期。4.3.2日常收支模块日常收入与日常支出由两个差不多的窗口组成,一个是用于显示数据列表的收支列表窗口w_rcszgllist和一个用于新增/

57、编辑的收支记录的编辑窗口w_rcszgledit。窗口w_rcszgllist要紧是继承窗口w_list_base,那个窗口由一个datawindow控件关联一个数据窗口对象d_list,那个地点面用到了一个全局结构s_edit,那个结构的作用是传递一组参数给新增或是编辑窗口,编写窗口的open事件,通过所传递过来的参数进行推断,假如是收入的话,则关联d_rcsr_list数据窗口对象,否则的话则是关联d_rczc_list数据窗除事件,先得到行号,然后再获得银行帐号、付款方式、金额的数值,如删除成功的话,推断假如是收入删除的话,则减去所删除的金额,否则的话则增加所删除的金额。编写打印事件,直

58、接通过一个参数打开所需要口对象,然后再调用父窗口的open事件,编写用户的新增事件,直接打开收支编辑窗口,编写用户的编辑事件,首先获得焦点所在的行号,然后再通过它主键的id作为参数进行打开编辑窗口。编写它的删打印的窗口。窗口w_rcszgledit要紧是继承窗口w_edit_base,那个窗口要紧由一个datatwindow控件关联一个数据窗口对象d_rcsr_edit、一个保存按钮和一个退出按钮,编写窗口的open事件,先进行推断是收入依旧支出,然后再推断是窗口的新增依旧窗口的编辑,假如是编辑的话,先得到行号,然后再获得旧的帐号、旧的支付方式、旧的金额,最后再调用全局函数f_setdwchi

59、ld刷新子数据窗口的记录显示。编写dw_edit的itemchanged事件,假如选中成员时,则调用全局函数f_setdwchild函数来刷新字段,假如是银行帐号,在编辑的情况下,改变了帐号,则原来的帐户余额也要变化,在新增的情况下,只显示余额,假如是金额,先推断是否大于零,假如小于零,则出现提示信息,否则的话,推断是不是为转帐,假如是,在新增、收入的情况下,显示金额,在新增、支出的情况下,假如不够的话则出现提示是否透支信息,假如是编辑,则修改金额之差,假如是支出再推断是否透支。保存按钮的事件,先推断收入摘要不能为空、金额大于零、转帐输入帐号,然后调用父窗口的保存事件,最后在收入新增转帐的情况

60、下增加帐户的余额,假如是编辑,假如新的收入方式为转帐支付方式没变,修改了帐号,原帐号的金额减少,新帐户的金额增加,帐号没变,修改金额,假如由其它改变为转帐,新帐户的金额要减少。假如是支出,情况正好相反。4.3.3存取款功能模块存取款也是由二个差不多的窗口组成,分不是存取款列表w_cqklist和用于新增/编辑存取款记录的编辑窗口w_cqkedit。窗口w_cqklist也是继承了窗口w_list_base,它的open事件和w_rcszgllist的open事件差不多,只是数据窗口对象换成了存款列表d_ckjl_list和取款列表w_qkjl_list。Ue_new、ue_edit、ue_de

温馨提示

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

评论

0/150

提交评论