《DELPHI程序设计》课程设计指导书.docx
- 文档编号:29346599
- 上传时间:2023-07-22
- 格式:DOCX
- 页数:16
- 大小:217.49KB
《DELPHI程序设计》课程设计指导书.docx
《《DELPHI程序设计》课程设计指导书.docx》由会员分享,可在线阅读,更多相关《《DELPHI程序设计》课程设计指导书.docx(16页珍藏版)》请在冰豆网上搜索。
《DELPHI程序设计》课程设计指导书
《DELPHI程序设计》课程设计指导书
本指导书主笔人:
黄伟审核人:
周清平
一、设计的目的与任务
本设计是计算机科学与技术专业最为核心的课程设计之一,通过设计加深对课堂理论学习的理解,增强动手能力,为毕业设计做准备。
边学边练、逐步深入。
,软件工程模拟,强调独立软件编程操作,培养从事应用软件设计与开发工作的能力,达到迅速就业的目的。
软件开发项目实战是为了巩固所学知识和检验学习效果而设置的重要环节。
促使学生将学到的知识能用到实际的软件开发项目中去,在实际的项目开发工作中积累工作经验。
注:
以城镇居民物业管理系统(举例)。
可自选课题。
二、设计的基本要求
通过本设计的实践,学生应达到下列要求:
1、能够自觉运用数据库原理和软件工程等专业课程的理论知识指导DELPHI进行软件设计;
2、学会如何组织或设计软件模块及有关数据结构、数据库结构,
并能对设计结果的优劣进行正确的评价;
3、掌握设计软件系统的全过程及技术与方法;
4、学会如何组织和编写软件设计文档和软件系统的操作说明;
5、具有一定的独立分析问题、解决问题的能力;
6、熟练掌握一种数据库管理系统。
7、根据设计任务,DELPHI与相应数据库如SQLSERVER2000/ACESS/ORACLE等编制程序,在计算机上调试运行,并通过上机考核。
注意:
按课程设计指导书提供的课题,应根据下一节给出的基本需求独立完成八个方面的设计,标有“可选”的部分可根据设计时间的安排及工作量的大小适当选择。
选用其他课题或不同的数据库管理系统,可以组成设计小组,分模块进行,共同协作完成一个应用系统的开发任务。
要求书写详细的设计说明书,对复杂的代码段和程序段,应画出程序流程图。
在界面设计中,画出每个窗口的布局,有多个窗口时,按模块调用的方式画出窗口调用图。
用手工画好报表和标签样式。
严禁相互抄袭。
三、课程设计内容:
〖问题描述〗
利用数据库管理系统SQLSERVER2000和前台开发工具DELPHI实现人员的基本物业管理,使物业管理摆脱过去那种单纯依靠手工进行管理的方法和手段,就需要规划一整套科学、严密、高效、实用的物业管理系统,对人员、设备、服务、信息、财务及各项活动实施全面管理。
〖基本达到目标〗
1、该信息管理系统应有美观友好作界面和简单的操作过程。
2、经分析,该该物业管理系统应当能够实现以下功能:
●房产资料及住户资料初始化:
具体的信息房产资料包括房产的出租、未租及房型等资料,而住户资料包括住户入住情况、住户房屋资料及住户的基本信息等的初始化;
●房产资料及住户管理:
通过授权可随时查询、修改、删除物业、业主(租户)的基本资料,提供各种基本资料的报表;
●收费管理:
单元装表(水表)、抄表,自动计算业主(租户)的各种费用,缴费通知书、催款通知书、收据打印(单个或成批打印),应收、实收、欠收统计(可按时段、楼盘、楼阁、楼层、单元、费项统计),可完成收费、打印收据;
●设备管理:
各种设备台帐录入、修改、统计,制定各种设备的保养计划,各种设备维修记录等;按照各设备的保养计划定期自动提醒保养设备及保养项目;
●维修、报修管理:
房产保养、维修等;
●安防管理:
保安值勤、排班、巡逻管理,消防管理;
●人事管理:
员工基本资料录入、修改、删除、统计等;
●投诉管理:
各种投诉录入、处理记录,投诉统计等;实现ISO9000凡事有据可查,有章可循的精神;
●文档管理:
管理处日常各种文档资料录入、修改、删除、查询等;
●领导查询:
可随时查询单元业主、租户基本信息,单元入住或出租情况、财务情况收款、欠款等查询等;
●社区活动:
小区各种活动管理;
今日工作:
在'今日工作'界面,包含欠费住户、保安执勤、清洁值班、设备保养、合同到期住户、空置单元等今日应处理工作;
3.考虑到系统的安全性和可扩展性,我们采用三层体系结构,并使用DELPHI的MIDAS技术实现本系统
〖系统结构图〗
整个系统包括以下几个模块:
基本数据输入模块、物业管理模块、统计报表与查询模块、物业收费项目管理模块、基本资料查询模块、数据备份模块、系统管理模块。
〖模块设计〗
基本数据输入
基本数据输入模块功能是对个部分数据进行添加、更改、删除等操作。
各输入部分的明细
情况如下:
●房型资料录入编辑:
房型编号、房型、建筑面积、使用面积、备注等.
●小区及房屋资料录入编辑:
小区名称、备注、小区楼宇数。
房屋资料数据包括总数、使用总数、业主购买数、业主使用数、业主出租数、业主空闲数、未出租数、住户租用数、未出售数、未出售房空闲数。
●住户资料录入编辑:
住户编号、住户名称、联系电话、联系地址、预付金额、欠肥金额等。
●物业收费项目管理:
收费名称、收费金额、收费单位、收费周期、备注等。
●停车场车位资料录入编辑:
车位编号、备注。
物业管理模块
物业管理模块的功能是对各部分的数据进行查询管理,进行添加、删除、更新等操作。
各管理部分的明细如下:
●住户投诉管理:
投诉编号、接待人员、投诉住户、住户编号、投诉内容、投宿日期、处理人员、处理日期、处理情况。
●住户报修管理:
保修日期、报修内容、单据编号、维修人员、物料费用、服务费用、住户名称、住户编号、完成日期、费用合计等。
●停车车位管理:
车位编号、住户名称、住户编号、使用日期、备注等。
●物业收费金额生成管理:
收费年月、住户名称、住户编号、收费金额、统计日期、滞纳日期、已交金额、欠费金额、备注等;
●物业缴费管理:
单据编号、住户名称、住户编号、缴费日期、收费人员、缴费方式、备注、缴费金额等。
●住户预付款管理:
单据编号、住户编号、住户名称、预付日期、预付金额、备注。
统计报表与查询
统计报表与查询的各统计部分的明细情况如下:
●户投诉统计报表:
投诉编号、接待人员、投诉用户、用户编号投诉日期、处理日期、处理人员、处理情况、投诉内容等。
●户报修统计报表:
报修年份、统计日期、报修次数、服务费用、物料费用、总维修费用等。
●户物业缴费欠费查询,主要是住户物业费用缴纳明细:
收费年月、住户名称、住户编号、收费金额、滞纳金额、已缴金额、欠费金额等。
系统管理
●系统备份:
由于各种原因,可造成数据库文件破坏,所以每次操作后,都要进行数据备份,已防不测。
●用户管理:
设置操作人员。
系统初试设置一个超级用户名和密码,操作人员可以利用这个、超级用户名和密码登陆,之后,可以设置其他的超级用户名称,也可以设置其他的超级用户,也可以设置权限用户,同时也设置了这个用户可以使用的权限。
用户权限一共分为7个部分,明细如下:
物业投诉报修管理、物业收费管理、统计报表管理、物业费用统计查询、基本数据录入、数据更改、用户管理与数据等。
当某个部分不能被用户所使用是,则其权限的相应位置被设为‘0’。
即登陆用户被赋予了‘0’的权限,那么该用户就不能使用与之相对应的模块,如果登陆用户被赋予了‘1‘的权限,那么该用户可以使用相应模块。
如假设某户只有物业收费管理和用户管理与数据模块可以使用,则其权限应为‘0100001’。
当系统第一次使用的时候,已经给管理员分配了‘1111111’的权限,表示可以使用所有模块。
当管理员新增用户的时候,新用户的初始权限为‘0000000’,表示暂时不能使用所有的模块。
可以让管理员给其分配权限。
此外,系统进入登陆界面,密码与用户名不符三次将自动退出登陆
〖E-R图〗
〖数据库详细设计〗附:
部分表
表1房型资料数据表,字段包括房型编号、房型、建筑面积、使用面积、备注。
表2住户投诉数据表,包括字段:
投诉编号、接待人员、投诉住户、住户编号、投诉日期、处理日期、处理人员、投诉内容、处理情况。
表3住户家庭成员资料表,包括字段:
家庭编号、住户编号、住户名称、姓名、生日日期、性别、称谓、备注。
还有很多就不一一举例了.
(1)联系人电话表(contactphones)
字段名
字段类型
主键
说明
Contactid
Int
yes
联系人编号
Contactphoneid
int
联系人电话编号
H_Phonenumber
Varchar(20)
家庭电话
O_Phonenumber1
Varchar(20)
办公室电话1
O_Phonenumber2
Varchar(20)
办公室电话2
P_Phonenumber1
Varchar(20)
个人电话1
P_Phonenumber2
Varchar(20)
个人电话2
othernumber
Varchar(20)
其它号码
〖功能实现〗
也是部分模块举例
客户端部分模块功能设计
数据模块
本模块是客户端最重要的模块,负责与应用服务器取得连接,并为客户端数据集组件(clientdatasetcomponent)建立一个IappServer的存取接口,本系统中用TCOMCconnection作为客户端连接组件,以DCOM作为通讯协议。
系统主窗体编码设计
本窗体是客户端的主菜单界面,其它所有模块都要由此模块进入,用户要通过系统的验证可方可登陆此界面.如图:
用户管理编码设计
此模块只有管理员才有权进入,其它普通权限用户都不能进入此模块进行编辑。
主要用于对用户进行管理,如新增、删除用户和修改用户权限等,本模块的界面主要组件是一个用户列表和权限选项框,分别用来显示用户和用户的相应权限。
界面如下:
其中部分重要过程如下:
{此过程用于完成当用户管理界面出现时,对用户权限进行查询,并且会显示在组合列表中户的权限,以完成对界面的初始化。
初始化的思想是:
根据用户列表的用户名称,在数据库中查询出用户的相应权限,并在权限选项框中显示,如若某用户的权限为“0010110”,则权限选项框中第三、五、六项就会被选择。
}
procedureTusermanageform.FormShow(Sender:
TObject);
var
i:
integer;
strlen:
integer;
quanxian:
string;
usernamestr:
string;
a:
string;
begin
//遍历用户表,并把用户名称在用户列表显示
dm.user.First;
fori:
=0todm.user.RecordCount-1do
begin
usernamestr:
=dm.user.FieldValues['用户名称'];
userlist.Items.Add(usernamestr);
dm.user.Next;
end;
userlist.ItemIndex:
=1;
quanxian:
=dm.user.FieldValues['用户权限'];
strlen:
=length(quanxian);
a:
='0';
fori:
=1tostrlendo
begin
a:
=copy(quanxian,i,1);
ifa='1'thenqxlist.Checked[i-1]:
=true;
elseqxlist.Checked[i-1]:
=false;
end;
end;
/*********此过程用于实现:
当左边的用户列表改变时,右边的用************/
/*********户权限列表显示应该随之改变,以方便查看用户权限*************/
procedureTusermanageform.userlistClick(Sender:
TObject);
var
i:
integer;
strlen:
integer;
quanxian:
string;
usernamestr:
string;
a:
string;
begin
dm.tempuser.Close;
usernamestr:
=userlist.Items[userlist.itemindex];
dm.tempuser.CommandText:
='select*fromusertablewhere用户名称=:
username';
dm.tempuser.Params.ParamByName('username').AsString:
=usernamestr;
dm.tempuser.Open;
quanxian:
=vartostr(dm.tempuser.FieldValues['用户权限']);
strlen:
=length(quanxian);
fori:
=1tostrlendo
begin
a:
=copy(quanxian,i,1);
ifa='1'thenqxlist.Checked[i-1]:
=true
elseqxlist.Checked[i-1]:
=false;
end;
end;
新增用户编码设计
从用户管理界面点击“新增用户”按钮可进入新增用户界面,新增用户界面提供三个文本框给管理员输入用户名和密码以及密码确认,当退出新增用户界面时,所有的新用户权限为“000000”。
界面如下:
图十六
其中部分重要过程如下:
procedureTnewuserform.BitBtn1Click(Sender:
TObject);
begin
ifusernameedit.Text=''then
begin
showmessage('用户名不能为空,请重新输入!
');
usernameedit.SetFocus;
end
elseifpwdedit.Text=''then
begin
showmessage('密码不能为空,请重新输入!
');
pwdedit.SetFocus;
end
else
begin
ifpwdedit.Text<>pwdedit2.Textthen
begin
showmessage('密码确认不正确,请重新输入!
');
pwdedit.SetFocus;
end
else
begin
usermanageform.userlist.Items.Add(usernameedit.Text);//更新用户管理用户列表
dm.user.FieldByName('用户权限').AsString:
='0000000';//新用户的初始权限为‘000000’,表示用户无可用权限内
dm.user.ApplyUpdates(-1);
close;
end;
end;
end;
还有部分模块编码比如:
删除用户编码设计,
用户密码修改编码设计,
赋予用户权限编码设计,
住户资料查询编码设计,
赋予用户权限编码设计,就不一一详述.
四、课程设计报告格式
1.封面格式:
《DELPHI程序设计》课程设计报告
城镇居民物业管理系统
姓名:
学号:
班级:
级计算机班
完成日期:
2007年6月15日
2、正文格式:
一、开发背景
二、需求分析
说明设计任务及功能要求。
是要分清问题域与系统责任.
三、项目设计相关知识简介(如采取那些技术)
四、体系结构设计
包括确定影响系统设计的约束因素,例如:
本系统应遵循的标准,软硬件环境,协议约束等.
设计策略:
如扩展,复用,折中.系统分解与设计
五、详细设计
1.用户界面设计
2.数据库设计(包括逻辑设计,物理设计,安全性设计,优化)
3.模块设计(包括接口与属性设计,数据结构与算法设计,数据流程图.
功能流程图,模块的具体实现等)
六、系统的实现
利用开发工具DELPHI和SQLSERVER2000实现系统的功能要求。
七、结论
1、调试过程中遇到的问题是如何解决的以及对设计与实现的回顾讨论和分析;
2、经验和体会。
八、用户使用说明:
写出系统的主要操作步骤和注意事项。
九、附录
包括系统的主要界面和重要的代码。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- DELPHI程序设计 DELPHI 程序设计 课程设计 指导书