基于powerbuilder90小区收费管理系统设计报告.docx
《基于powerbuilder90小区收费管理系统设计报告.docx》由会员分享,可在线阅读,更多相关《基于powerbuilder90小区收费管理系统设计报告.docx(25页珍藏版)》请在冰豆网上搜索。
基于powerbuilder90小区收费管理系统设计报告
xxxx大学本科专业实习报告
小区收费系统的分析与设计
学号:
学生姓名:
院部:
专业:
年级:
指导教师
及其职称:
完成日期:
摘要
随着我国市场经济的迅速发展和人们生活水平的不断提高,人们对住宅小区的管理提出更高的要求。
简单的社区服务已不能满足人们日常生活的需求。
而要更加高效、规范地进行物业管理,就必需引进计算机技术实现小区管理系统化,从而提高工作效率和服务水平。
本系统主要是XX小区的实际需求,开发一个小区收费管理系统,为有关办公人员提供必要的帮助,使XX小区走上物业管理信息化之路。
本系统是根据XX小区的实际管理工作流程设计的,它的工作流程也是与现实保持一致。
XX小区物业管理信息系统简单实用,从较大程度上缓解了管理人员的工作压力。
通过利用powerbuilder9.0软件和数据库技术,应用sqlca代码和数据库系统来实现小区收费管理系统,它运用方便、操作简单、效率比较高。
本系统主要实现住户信息管理功能、费用浏览功能、缴费管理功能等,实现管理的信息化,规范收费管理。
将以前零散的、被动的、传统的管理模式转变为系统的、主动的、先进的管理模式。
关键词:
计算机技术;信息管理系统;小区收费;Powerbuilder9.0,数据库
目录
1前言1
1.1背景1
1.2主要内容2
2系统分析3
2.1需求分析3
2.2业务流程图4
2.3数据流程图5
3系统设计8
3.1总体设计8
3.2数据库设计9
3.2.1概念模型9
3.2.2逻辑模型10
4系统实现12
5总结17
1前言
1.1背景
科学技术日新月异,信息化时代的来临,以计算机为基础的信息科学在经济和社会生活各个领域得到了极为广泛的应用,尤其在信息管理方面,计算机已是必不可少的管理工具
目前,信息已成为继劳动-1-力、土地、资本之后的又一大资源。
谁控制的信息越多,谁利用信息资源的效率越高,谁就会在各方面的竞争中占有一席之地,谁就会有更多的优势。
从微观上讲,建立一套管理信息系统能够加快信息的周转速度,提高生产效率,从而加强了管理的信息化手段,提高了本单位的经济效益。
从宏观上讲,顺应了社会的信息化、社会化潮流,加快了社会的发展速度。
据统计,美国在信息管理管理方面80-100%的信息处理由计算机完成;计划管理是80—90%;在计算机应用发展较快的国家中,计算机应用于经济管理的占80%;用于科技计算的占8%,用于生产过程控制的占12%;由此可以看出,信息管理是计算机应用的主要领域。
由于种种原因,我国的信息资源建设水平远远落后于信息基础设施的建设的水平。
长期以来,我国信息资源的开发管理未能与信息资源的增长同步进行。
我国的计算机应用要比西方国家落后十几年。
因此,现在信息资源的开发和利用已被确立为国民经济信息的核心内容,利用现有的信息基础设施,重点开发和推广应用于各类科技、经济等数据库和网络资源服务系统,已经取得巨大的社会效益和经济效益。
对于小区物业管理来说,其工作流程的繁杂性、多样化、管理复杂、收缴费用与设备维护繁琐。
计算机已完全能够胜任物业管理工作,而且更加准确、方便、快捷、高效、清晰、透明,它完全可以克服以上所述的不足之处。
这将给项目查询和管理带来很大的方便,从而给物业管理工作带来更高的效率,这也是物业管理正规化、现代化的重要标志。
因此,开发一套高效率、无差错的小区物业管理系统软件十分必要。
本系统的主要目的是告别帐本,安全、快捷的保存数据信息。
由于小区物业管理涉及到费用问题,为了增强系统的保密性,使业主利益不受损害,本系统具有仅管理员式的保密功能,还有查询、录入、修改、删除、以及对物业设备统计等功能,使业主能够对自家的物业费用和投诉等情况提供透明化、直观的了解。
1.2主要内容
我的任务是完成该系统整体结构的设计及各子系统功能的开发。
使其能基本满足小区日常管理所需的常规操作和相关数据的分析、处理、维护。
该系统应具有界面友好美观,操作简单易行,查询灵活方便,数据存储安全可靠等特点。
2
系统分析
2.1需求分析
需求性分析是软件定义时期的最后一个阶段,它的基本任务是准确的回答:
系统必须做什么!
。
根据该小区的具体情况,各主要部分功能设计模块有:
1.基本信息:
业主信息、业主详细信息浏览、业主信息登记、修改与删除、业主信息的查询,物业费单价及日期、水电费单价及日期。
2.收费登记:
物业费用登记、水电费用登记。
3.收费修改:
应缴物业费用修改、应缴水电费用修改。
4.收费查询:
根据业主编号查询应缴金额、根据业主编号查询应缴日期。
5.系统管理:
关闭所有子窗口、退出程序、重登系统管理
6.帮助:
关于作者的简介信息
2.2业务流程图
图1.全局业务流程图
2.3数据流程图
2.3.1总体系统流程
2.3.2收费项目管理
小区的收费人员在进行收费项目管理时以管理员的身份登录,通过正确的用户名和密码进入系统后,对收费项目进行管理,可以添加新的收费项目,删除和修改以前的收费项目。
流程分析如下图所示:
图2.1收费项目图
管理员输入正确的用户名和密码,进入登录模块后,与管理员表中的用户名、密码进行比较,若信息正确,管理员登录成功。
若用户名或密码出错,则重新输入用户名和密码,连续三次输入错误后,则30分钟内不能再登录。
登录成功后,管理员可以对小区物业管理系统中的各项收费项目进行管理,例如可以添加新的收费项目,包括收费编号、收费名称、收费说明的添加操作,还可以删除和修改以前的收费项目。
2.3.3住户信息管理
图2.2住户信息图
管理员输入正确的用户名和密码,进入登录模块后,与管理员表中的用户名、密码进行比较,若信息正确,管理员登录成功。
若用户名或密码出错,则重新输入用户名和密码,连续三次输入错误后,则30分钟内不能再登录。
登录成功后将用户名和密码返还到住户确认模块,然后管理员输入住户编号,从住户表中核对是否有此住户信息,如果没有,进行住户信息管理中的添加住户操作,将新的住户信息添加到住户表中。
如果有此住户信息,那么可以对其进行查询、修改和删除等操作。
管理员还可以输入住户信息,如住户编号、住户姓名、联系电话、住房地址、房屋编号、住房面积、车位编号对住户信息进行管理,然后将修改后的住户信息更新到住户表中。
2.3.4住户缴费管理
小区的收费人员在进住户缴费管理时以管理员的身份登录,通过正确的用户名和密码进入系统后,对住户缴费信息进行管理,可以登记住户新的缴费信息,对住户缴费信息进行修改和删除操作。
流程分析如下图所示:
图2.1住户缴费图
管理员输入正确的用户名和密码,进入登录模块后,与管理员表中的用户名、密码进行比较,若信息正确,管理员登录成功。
若用户名或密码出错,则重新输入用户名和密码,连续三次输入错误后,则30分钟内不能再登录。
登录成功后将用户名和密码返还到住户确认模块,然后管理员输入住户编号,从住户表中核对是否有此住户信息,如果没有,进行住户信息管理中的添加住户操作,将新的住户信息添加到住户表中。
如果有此住户信息,进行收费登记操作,输入收费编号、金额等就可以进行收费登记。
最后将登记的内容保存到住户-缴费表中。
收费人员在进行收费登记之后,填写收据单,收据一式两份,然后填写的收据由收费人员给住户。
同时还可以对已经保存在住户-缴费表中的缴费详细信息进行查询、删除和修改操作。
最后将修改后的内容保存到住户-缴费表中。
收费人员就是当前登录成功的管理员。
2.3.5管理员管理
小区的物业经理以管理员的身份登录,通过正确的用户名和密码进入系统,流程分析如下:
3系统设计
3.1总体设计
图3.1功能结构图
3.2数据库设计
3.2.1概念模型
管理员实体图
缴费实体图
3.2.1逻辑模型
(1)住户表:
该数据库表是住户的详细信息,包括住户编号、住户姓名、联系电话。
字段名
数据类型
可否为空
业主编号(主键)
Integer(10)
NOTNULL
业主姓名
Char(10)
NOTNULL
联系电话
Char(20)
NULL
(2)收费表:
该数据库表是收费表的详细信息,包括缴费金额、缴费项目、缴费日期。
字段名
数据类型
可否为空
缴费项目
Char(10)
NOTNULL
缴费金额
Intrger(100)
NOTNULL
缴费日期(主键)(外键)
Datetime
NOTNULL
物业费金额
Intrger(100)
NOTNULL
水电费金额
Intrger(100)
NOTNULL
(3)缴费记录表:
该数据库表是缴费记录的详细信息,包括缴费人编号、缴费项目、缴费金额、缴费日期。
字段名
数据类型
可否为空
缴费人编号
Integer(10)
NOTNULL
缴费金额
Intrger(100)
NOTNULL
缴费日期(主键)(外键)
Datetime
NOTNULL
缴费项目
Char(10)
NOTNULL
(4)缴费记录表2:
该数据库表是住户应缴费的详细信息,包括业主编号、收费项目、收费金额、收费日期。
字段名
数据类型
可否为空
缴费人编号(主键)
Integer(10)
NOTNULL
缴费金额
Intrger(100)
NOTNULL
缴费日期(外键)
Datetime
NOTNULL
缴费项目
Char(10)
NOTNULL
(5)管理员登录表:
该数据库表是管理员的详细信息,包括用户名和密码
字段名
数据类型
可否为空
用户名(主键)
Char(10)
NOTNULL
密码
Int
NOTNULL
4系统实现
我们要开发应用程序时,首先要对它进行分析。
无论哪种、哪方面的应用程序,都要先建立一个应用对象。
下面我们介绍以下PowerBuilder9应用程序开发的基本步骤:
(1)首先要建立应用对象。
(2)创建窗口。
在窗口里放置各种控件和编写事件响应的脚本。
(3)创建菜单。
窗口里的菜单可包括菜单条,下拉式菜单,级联菜单和弹出式菜单为菜单编写事件响应的脚本。
(4)创建用户对象。
如果想要重复使用某个控件的功能,可以把窗口上经常放置的控件定义为用户对象。
(5)创建数据窗口。
数据窗口可以检索数据库中的数据,可以建立各种报或统计表,可以修改数据库。
(6)创建函数、结构、事件。
为了能够更好地支持脚本,编写自定义的函数,定义结构类型变量,也可以为对象和控件定义自己的事件。
(7)运行与调试。
可以在开发环境中随时运行应用程序,发现错误后,可以用调试工具进行调试。
(8)当应用程序开发完毕后,可以把它编译成可执行的文件,让用户比较容易地建立应用系统的运行环境。
4.1.登录窗口
在登入按钮下
stringpsw,name
name=trim(sle_1.text)
SELECT"user"."psw"
INTO:
psw
FROM"user"
WHERE"user"."name"=:
name;
ifsqlca.sqlcode=100then
messagebox("提示","用户名不存在!
")
elseifsqlca.sqlcode=0then
ifpsw=trim(sle_2.text)then
open(w_main)
close(parent)
else
messagebox("提示","密码错误!
")
endif
else
messagebox("提示",sqlca.sqlerrtext)
endif
在退出按钮下
close(w_1)
4.2.主窗口
在主菜单下系统管理子菜单退出系统的代码为
close(w_main)
在主菜单下系统管理子菜单重新登入的代码为
Open(w_1)
在主菜单下基本信息子菜单业主信息的代码为
Open(w_2)
在主菜单下基本信息子菜单物业费信息查询的代码为
Open(w_3)
4.3业主信息窗口
登记业主信息按钮代码
longc_row
c_row=dw_1.insertrow(0)
dw_1.scrolltorow(c_row)
dw_1.setcolumn
(1)
dw_1.setfocus()
保存业主信息代码为
ifdw_1.update()=1then
commitusingsqlca;
messagebox("提示","业主信息数据录入成功!
")
else
rollbackusingsqlca;
messagebox("提示","业主信息数据录入失败!
")
endif
删除业主信息代码为
ifmessagebox("确认","你确定删除该记录么?
",Question!
YesNo!
2)=1then
dw_1.deleterow(0)
endif
4.4物业费水电费浏览窗口
窗口代码为
dw_1.dataobject="d_3"
dw_1.settransobject(SQLCA)
dw_1.retrieve()
4.5在水电费物业费登记查询窗口下的代码
窗口代码为
dw_1.dataobject="d_4"
dw_1.settransobject(SQLCA)
dw_1.retrieve()
显示金额按钮代码为
integercid
stringname
cid=integer(trim(sle_3.text))
select"缴费记录"."缴费金额"
into:
name
from"缴费记录"
where"缴费记录"."缴费人编号"=:
cid;
ifsqlca.sqlcode=0then
sle_1.text=name
else
messagebox("错误","查询错误"+sqlca.sqlerrtext)
endif
截止日期按钮代码为
integercid
stringname
cid=integer(trim(sle_3.text))
select"缴费记录"."缴费日期"
into:
name
from"缴费记录"
where"缴费记录"."缴费人编号"=:
cid;
ifsqlca.sqlcode=0then
sle_2.text=name
else
messagebox("错误","该用户未交费"+sqlca.sqlerrtext)
endif
显示缴费种类按钮代码为
integercid
stringname
cid=integer(trim(sle_3.text))
select"缴费记录"."缴费项目"
into:
name
from"缴费记录"
where"缴费记录"."缴费人编号"=:
cid;
ifsqlca.sqlcode=0then
sle_4.text=name
else
messagebox("错误","该用户未交费"+sqlca.sqlerrtext)
endif
登记按钮代码为
stringa,b,c,d
a=trim(sle_3.text)
b=trim(sle_1.text)
c=trim(sle_2.text)
d=trim(sle_4.text)
insertinto"缴费记录2"("缴费人编号","缴费金额","缴费日期","缴费项目")
values(:
a,:
b,:
c,:
d);
ifSQLCA.sqlcode=0then
messagebox("提示","数据保存成功")
dw_1.retrieve()
else
messagebox("错误",sqlca.sqlerrtext)
endif
保存按钮代码为
ifdw_1.update()=1then
commitusingsqlca;
messagebox("提示","业主信息数据录入成功!
")
else
rollbackusingsqlca;
messagebox("提示","业主信息数据录入失败!
")
endif
删除代码为
ifmessagebox("确认","你确定删除该记录么?
",Question!
YesNo!
2)=1then
dw_1.deleterow(0)
endif
4.6应缴费查询窗口
窗口代码为
dw_1.settransobject(SQLCA)
dw_1.retrieve()
在根据业主编号查询金额按钮下代码为
integercid
stringname
cid=integer(trim(sle_1.text))
select"缴费记录"."缴费金额"
into:
name
from"缴费记录"
where"缴费记录"."缴费人编号"=:
cid;
ifsqlca.sqlcode=0then
sle_2.text=name
else
messagebox("错误","查询错误"+sqlca.sqlerrtext)
endif
在根据业主编号查询日期按钮下代码为
integercid
stringname
cid=integer(trim(sle_1.text))
select"缴费记录"."缴费日期"
into:
name
from"缴费记录"
where"缴费记录"."缴费人编号"=:
cid;
ifsqlca.sqlcode=0then
sle_3.text=name
else
messagebox("错误","该用户未交费"+sqlca.sqlerrtext)
endif
5总结
至此,小区物业管理系统设计与实现顺利完成。
在几天的试运行的过程中,在连接数据库时一度出现过错误,经过调试改正后错误点全部清楚,此系统可以按着设计思想和需求功能正常运行。
由于当今的物业管理部门还不能有一个很统一的模式化,所以本系统仅考虑到一般小区所需要的物业管理的基本和主要的几项功能,一个完好的小区物业管理系统还需要更多更复杂的功能要求。
由于开发周期短和开发人员等局限性,不能将本套系统尽善尽美。
希望在以后能够对小区的物业做更深一步的调研,在原由系统的基础上不断添加新功能。
最终能够开发出一套完善的小区物业管理系统。
本系统在开发过程中,在固定的物业管理要求的模式下还添加了一些人性化的,个人的构思和创意。
本套小区物业管理系统符合基本需求功能,易于操作,应该可以在简单化模式下的小区内应用,存在要改进的地方再以后会进一步完善。
希望本系统能够给用户带来方便。
在此我由衷的向我的负责人及指导老师再次的说一声谢谢!
并要向那些给予我极大帮助和支持的同学和老师表示感谢。
今后我会以此次的实习设计为起点迈向更远的未来。
参考文献
[1]沈良忠.PowerBuilder数据库开发教程,电子工业出版社,2008年
[2]孙秋冬.PowerBuilder应用开发实用教程.高等教育出版社,2004
[3]王晟.PowerBuilder数据库开发经典案例解析.清华大学出版社,2005
[4]郑阿奇.PowerBuilder实用教程.电子工业出版社,2004
[5]陈磊.PowerBuilder数据库高级教程.清华大学出版社,2004
[6]王冠.PowerBuilder8.0时尚编程百例.机械工业出版社,2002
[7]张振坤.PowerBuilder精彩编程200例.机械工业出版社,2004
[8]何旭洪.PowerBuilder9.0信息管理系统开发实例导航.人民邮电出版社,2005
[9]张海藩.PowerBuilder数据库管理系统.清华大学出版社,2003
[10]王珊.数据库系统概论.高等教育出版社,2002
[11]APUnitedStatesHistoryPowerBuilder.Publisher.Research&EducationAssn,2008
[12]SpanishFalseFriendsandOtherTraps(PB),2008
[13]BruceArmstrong.PowerBuilder9AdvancedClient/ServerDevelopment,2008
1论文基本格式说明
1.1.论文格式基本要求
论文格式基本要求:
(1)纸型:
A4纸,双面打印(封面、摘要单面打印);
(2)页边距:
上3.5cm,下2.5cm,左2.5cm、右2.5cm;
(3)页眉:
2.5cm,页脚:
2cm,左侧装订。
(4)字体:
正文全部宋体、小四;
(5)行距:
1.5倍行距,段前、段后均为0,取消网格对齐选项。
1.2.论文页眉页脚的编排
将摘要、Abstract、目录等前置部分单独编排页码。
其余一律用阿拉伯数字连续编页码。
页码应由绪论首页开始,作为第1页。
封一、封二和封底不编入页码。
页码必须标注在每页页脚底部居中位置,宋体,小五。
页眉,宋体,五号,居中。
填写内容为“新疆财经大学本科毕业论文”。
1.3.论文正文格式
正文选用模板中的样式所定义的“正文”,每段落首行缩进2字;或者手动设置成每段落首行缩进2字,字体:
宋体,字号:
小四,行距:
1.5倍行距,间距:
前段、后段均为0行,取消网格对齐选项。
1.4.章节标题格式
(1)每章的章标题选用模板中的样式所定义的“标题1”,居左;或者手动设置成字体:
黑体,居左,字号:
三号,1.5倍行距,段后11磅,段前为0。
每章另起一页。
章序号为阿拉伯数字。
在输入章标题之后,按回车键,即可直接输入每章正文。
(2)每节的节标题选用模板中的样式所定义的“标题2”,居左;或者手动设置成字体:
黑体,居左,字号:
四号,1.5倍行距,段后为0,段前0.5行。
(3)节中的一级标题选用模板中的样式所定义的“标题3”,居左;或者手动设置成字体:
黑体,居左,字号:
小四,1.5倍行距,段后为0,段前0.5行。
(4)第四级标题,居左,宋体,加粗,字号:
小四,1.5倍行距,段后为0,段前0.5行。
1.5.各章之间的分隔符设置
各章之间应重新分页,每章另起一页。
1.6.正文中的编号
正文中的图、表、附注、公式一律采用阿拉伯数字分章编号。
如图1.2,表2.3,附注4.5,式6.7等。
如“图1.2”就是指本论文第1章的第2个图。
文中参考文献采用阿拉伯数字根据全文统一编号,如文献[3],文献[3,4],文献[6-10]等,在正文中引用时用右上角标标出。
附录中的图、表、附注、参考文献、公式另行编号,如图A1,表B2,附注B3,或文献[A3]。
2图表的说明
2.1图的格式示例
图在正文中的格式示例如图1所示。
图12004年某市人口的产业分布图
图1显示了论文模板中所定义的样式选择方法,图应居中。
2.2.表的格式示例
表在正文中的常用格