酒店管理系统oracle后台+DelphiWord文件下载.docx
《酒店管理系统oracle后台+DelphiWord文件下载.docx》由会员分享,可在线阅读,更多相关《酒店管理系统oracle后台+DelphiWord文件下载.docx(25页珍藏版)》请在冰豆网上搜索。
二、需求分析
1.系统功能结构如下:
2.数据库逻辑设计
根据系统功能进行数据表的设计。
①登记表dj用来保存客人住宿时的住宿登记信息,此表为起初空表,在Delphi中进行数据插入后保存输入的数据信息。
其结构表如下:
字段
类型
字段大小
姓名
Varchar
10
证件
12
证件号码
18
房间号码
联系方式
20
住宿日期
Date
住宿天数
Int
性别
4
createtabledj(姓名varchar(10),性别varchar(4),住宿日期date,证件varchar(12),证件号码varchar(18),房间号码varchar(10),联系方式varchar(20),住宿天数int);
②客房信息表fjxx用来保存客房的基础信息,其结构如下:
大小
房间号
房间类型
价格
float
8
最大居住人数
int
createtablefjxx(房间号varchar(10),房间类型varchar(20),价格float(8),最大居住人数int);
③酒店信息表jdxx用来保存酒店的信息,其结构如下:
公司名
50
电话
建立日期
Email
公司地址
邮箱
createtablejdxx(公司名varchar(50),电话varchar(20),建立日期date,Emailvarchar(50),公司地址varchar(50),邮编int);
④客人信息表用来保存入住客户的信息,用于退房,客人信息查询等操作功能的实现。
其基本结构为:
房间金额
folat
createtablekrxx(姓名varchar(10),性别varchar(4),住宿日期date,证件varchar(12),证件号码varchar(18),房间号码varchar(10),联系方式varchar(20),住宿天数int,房间金额float(8));
三、设计过程
1窗体设计
⑴新建一个标准工程,会出现form1,可以遵循默认格式,也可以更改名称,这里默认。
⑵添加所需控件mainmenu,双击控件在其中加入所要进行的功能如下:
添加控件Image插入图片,选中image控件,在其属性表中选中picture,选择需要的图片:
⑶再建立一个Form2,默认格式即可。
在其中加入客房登记所需控件:
⑷再建立一个Form3,默认格式即可,并且在project-options中设置其为主窗体。
在其中加入客房登记所需控件,8个label,8个Edit,两个bitbtn如图:
可以在bitbtn按钮中添加图片,使其更加生动,,选中按钮,在其属性选择Glyph,选择需要的图片即可,注意图片格式要符合要求,还可以为界面换颜色。
⑸再建立一个Form4,默认格式即可。
在其中加入客人信息查询所需控件,1个label,一个Edit,2个按钮,1个DBGrid:
这里需要链接数据库,与krxx表中的信息进行链接。
连接方式为:
首先添加一个数据模板(datemodule),然后选择ADOQuery控件和datasource控件添加到数据模板,选中ADOQuery控件,在其属性中找到connectionstring,进行数据库的链接,选择
⑹再建立一个Form5,默认格式即可。
在其中加入客房登记所需控件,和上面一样:
这个窗体也要进行数据库链接,过程和上面一样,只是链接的表名不同,这里链接的是kfxx表。
双击确定添加代码如下:
withData3.ADOQuery1do
begin
Close;
SQL.Clear;
SQL.Add('
select*fromfjxxwhere房间号码=:
a'
);
Parameters.ParamByName('
).value:
=Trim(edit1.Text);
Open;
end;
关闭键的代码如下:
form5.close;
form1.show;
这样就完成了房间信息查询的操作。
(7)再建立一个Form6,默认格式即可。
在其中加入查看酒店信息所需控件:
1个label,1个按钮,1个DBGrid:
这里主要就是数据库的链接,改用另外一种方式为:
首先
(8)再建立一个Form7,默认格式即可。
在其中加入查看客房信息所需控件,和(7)一样,不过这里可以采用(5)的方法进行数据库的链接。
(9)再建立一个再建立一个Form8,默认格式即可。
在其中加入退房所需控件:
1个label,1个Edit,两个bitbtn,1个DBGrid,和一个DBNavigator如图:
将其与数据库中表krxx链接后,输入证件号码单击DBNavigator控件上的√可以突出显示选择的信息,然后点击退房可以实现退房功能。
2、进行窗体之间的转换
(1)在form3中进行密码设置,双击登录按钮进行代码输入如下:
var
results:
Variant;
BEGIN
=ADOTable1.Lookup('
姓名'
edit1.text,'
密码'
ifresults=edit2.Textthen
begin
form3.Hide;
form1.Show;
end
else
application.MessageBox('
姓名或密码错误'
'
提示信息'
64);
edit1.SetFocus;
exit;
end;
退出代码为:
close;
(2)在form1中进行剩余各form间的连接,在form1中分别单击要实现的功能菜单按钮,并分别输入代码,得到的最后代码如下:
procedureTForm1.N2Click(Sender:
TObject);
form1.Hide;
form2.showmodal;
procedureTForm1.N3Click(Sender:
form4.showmodal;
procedureTForm1.N4Click(Sender:
form5.ShowModal;
procedureTForm1.N5Click(Sender:
form6.ShowModal;
procedureTForm1.N6Click(Sender:
form1.hide;
form7.ShowModal;
procedureTForm1.N8Click(Sender:
form8.ShowModal;
procedureTForm1.N7Click(Sender:
procedureTForm1.FormCreate(Sender:
并且要在uint1的连接代码上添加:
uses
Windows,Messages,SysUtils,Variants,Classes,Graphics,Controls,Forms,
Dialogs,Menus,DB,ADODB,unit2,unit4,unit5,unit6,unit7,unit8,;
(3)在form2中进行和form1间的转换,代码如下:
双击关闭按钮添加代码:
form2.close;
form1.show;
(4)在form4,form5,form6,form7中进行form1间的转换,代码类似(3)。
3、form1中退出菜单的实现
双击退出菜单进行代码输入:
即可。
至此完成了菜单管理的实现,可以运行后进行各功能的实现。
4、实践感想
本次课程设计,使我进一步巩固了知识我更加深刻地了解了oracle和Delphi的功能,了解到这些软件的强大功能。
不过在学习的过程中遇到了很多困难,比如Delphi和oracle数据库之间的连接。
我还需要进一步了解和学习。
②代码设计
PrivateSubToolbar1_ButtonClick(ByValButtonAsMSComctlLib.Button)
SelectCaseButton.Key
Case"
DJ"
zsdj_Click
TF"
tf_Click
FT"
ftck_Click
CX"
zscx_Click
exit"
IfMsgBox("
确定退出该系统?
"
4,"
系统提示"
)=vbYesThen
End
EndIf
EndSelect
EndSub
PrivateSubsztx_Click()
DimStr
CommonDialog1.Filter="
BMP图片(*.BMP)|*.BMP|JPG图片(*.JPG)|*.JPG|GIF图片(*.GIF)|*.GIF|所有文件(*.*)|*.*"
CommonDialog1.ShowOpen
IfCommonDialog1.FileName<
>
"
Then
Image2.Picture=LoadPicture(CommonDialog1.FileName)
Str=CommonDialog1.FileName
Open(App.Path&
\picture.txt"
)ForOutputAs#1
Print#1,Str
Close#1
Commo