酒店管理delphi

上传人:博****1 文档编号:572654029 上传时间:2024-08-13 格式:PDF 页数:38 大小:1.41MB
返回 下载 相关 举报
酒店管理delphi_第1页
第1页 / 共38页
酒店管理delphi_第2页
第2页 / 共38页
酒店管理delphi_第3页
第3页 / 共38页
酒店管理delphi_第4页
第4页 / 共38页
酒店管理delphi_第5页
第5页 / 共38页
点击查看更多>>
资源描述

《酒店管理delphi》由会员分享,可在线阅读,更多相关《酒店管理delphi(38页珍藏版)》请在金锄头文库上搜索。

1、K1+478K1+478K1+5888K1+5888 段左侧片石混凝土挡土墙第段左侧片石混凝土挡土墙第 1 1 部分部分经济管理学院实验报告经济管理学院实验报告姓名:诸男班级:姓名:诸男班级:1111 信管信管(1)(1)班学号:班学号:20113335401142011333540114 实验成绩:实验成绩:课程名称:信息系统开发平台课程设计指导教师:祝锡永课程名称:信息系统开发平台课程设计指导教师:祝锡永实验名称:信息系统开发平台课程设计实验名称:信息系统开发平台课程设计20132013 年年 1 1 月月 2424 日日实验目的:实验目的:1)1) 掌握基于掌握基于 win32win32

2、 和和 C/SC/S 结构的信息系统基本构成及其架构的知识,与软件设计和软件实现相关结构的信息系统基本构成及其架构的知识,与软件设计和软件实现相关的知识;同时具备自主学习和掌握其它基于的知识;同时具备自主学习和掌握其它基于 Win32Win32 和和 c/sc/s 结构的信息系统开发工具的能力。结构的信息系统开发工具的能力。2)2) 掌握数据库管理系统与信息系统开发平台之间的集成方法;具备综合运用数据库应用和信息系掌握数据库管理系统与信息系统开发平台之间的集成方法;具备综合运用数据库应用和信息系统开发平台对已有信息系统进行剖析的能力;将数据库应用与信息系统开发平台结合,能独立完成开统开发平台对

3、已有信息系统进行剖析的能力;将数据库应用与信息系统开发平台结合,能独立完成开发管理信息系统。发管理信息系统。实验环境:实验环境: ;软件开发平台;软件开发平台 Delphi2010+Delphi2010+数据库管理系统数据库管理系统 SQL Server2008SQL Server2008 等等实验内容与步骤:实验内容与步骤:一、软件主要功能介绍一、软件主要功能介绍本系统全名叫本系统全名叫 Z Z 酒店信息管理系统,酒店信息管理系统,主要是提供给酒店前台人员使用的。进入系统后主要是提供给酒店前台人员使用的。进入系统后主界面的显示主要是四部分,其中业务中心包括:前台中心,客务中心,预订管理;报表

4、主界面的显示主要是四部分,其中业务中心包括:前台中心,客务中心,预订管理;报表中心包括房费日报表;系统设置包括账号设置;个人中心包括修改密码。其中业务中心是中心包括房费日报表;系统设置包括账号设置;个人中心包括修改密码。其中业务中心是最重要的部分。下面是关于各项目内容的简介。最重要的部分。下面是关于各项目内容的简介。1 1)前台中心)前台中心功能较多,主要有功能较多,主要有4 4 块,已入住包括查看和退房、已预定包括查看和更改、未块,已入住包括查看和退房、已预定包括查看和更改、未入住包括查看和入住、脏房包括查看和更改。入住包括查看和入住、脏房包括查看和更改。2 2)客务中心)客务中心主要是查询

5、客户信息主要是查询客户信息3 3)预订管理)预订管理主要是进行预订和查询主要是进行预订和查询4 4)报表中心)报表中心主要是对金额的分析和查询主要是对金额的分析和查询5 5)系统设置)系统设置主要是员工信息的查看和增删改。主要是员工信息的查看和增删改。6 6)个人中心)个人中心主要是当前操作者的密码修改。主要是当前操作者的密码修改。1 1页脚内容页脚内容K1+478K1+478K1+5888K1+5888 段左侧片石混凝土挡土墙第段左侧片石混凝土挡土墙第 1 1 部分部分二、数据库设计二、数据库设计1. 1. 建立数据库的建立数据库的 SQLSQL 代码代码数据库名称:数据库名称:myhote

6、lmyhotel,主要包含,主要包含 9 9 个表,各个表结构如下:个表,各个表结构如下:建房间表建房间表if ifOBJECT_IDOBJECT_ID( (roomsrooms)isnotnull)isnotnulldroptabledroptableroomsroomsgogocreatetablecreatetableroomsrooms( (roomidroomidnvarcharnvarchar( (5 5)notnull)notnullprimarykeyclusteredcheckprimarykeyclusteredcheck( (roomidroomidlikelikeA-Z

7、0-90-90-9A-Z0-90-90-9), ),categoryidcategoryidncharnchar( (1 1)notnull,)notnull,floorsfloorsncharnchar( (1 1) )constraintconstraintck_rooms_floorsck_rooms_floorscheckcheck( (floorsfloors 0 0), ),isemptyisemptyncharnchar( (1 1) )constraintconstraintdf_rooms_isemptydf_rooms_isemptydefaultdefault( (1 1

8、), ),isusingisusingncharnchar( (1 1) )constraintconstraintdf_rooms_isusingdf_rooms_isusingdefaultdefault( (0 0), ),isdirtyisdirtyncharnchar( (1 1) )constraintconstraintdf_rooms_isdirtydf_rooms_isdirtydefaultdefault( (0 0) )gogoinsertintoinsertintoroomsroomsvaluesvalues( (A101A101, ,11, ,11, ,11, ,00

9、, ,00) )insertintoinsertintoroomsroomsvaluesvalues( (A102A102, ,22, ,11, ,11, ,00, ,00) )insertintoinsertintoroomsroomsvaluesvalues( (B201B201, ,22, ,22, ,11, ,00, ,00) )insertintoinsertintoroomsroomsvaluesvalues( (B202B202, ,33, ,22, ,11, ,00, ,00) )insertintoinsertintoroomsroomsvaluesvalues( (C301

10、C301, ,33, ,33, ,11, ,00, ,00) )insertintoinsertintoroomsroomsvaluesvalues( (C302C302, ,44, ,33, ,11, ,00, ,00) )gogo建房间种类表建房间种类表if ifOBJECT_IDOBJECT_ID( (roomcategoriesroomcategories)isnotnull)isnotnulldroptabledroptableroomcategoriesroomcategoriesgogocreatetablecreatetableroomcategoriesroomcategor

11、ies( (categoryidcategoryidncharnchar( (1 1)notnull)notnullprimarykeyprimarykey, ,categorynamecategorynamenvarcharnvarchar( (2020), ),unitpriceunitpricemoneycheckmoneycheck( (unitpriceunitprice 0 0) )gogoinsertintoinsertintoroomcategoriesroomcategoriesvaluesvalues( (11, , 标准单人间标准单人间 , ,100100) )inser

12、tintoinsertintoroomcategoriesroomcategoriesvaluesvalues( (22, , 标准双人间标准双人间 , ,150150) )insertintoinsertintoroomcategoriesroomcategoriesvaluesvalues( (33, , 豪华单人间豪华单人间 , ,150150) )insertintoinsertintoroomcategoriesroomcategoriesvaluesvalues( (44, , 豪华双人间豪华双人间 , ,200200) )gogo建员工表建员工表if ifOBJECT_IDOBJ

13、ECT_ID( (hotelemployeeshotelemployees)isnotnull)isnotnulldroptabledroptablehotelemployeeshotelemployeesgogocreatetablecreatetablehotelemployeeshotelemployees( (employeeidemployeeidnvarcharnvarchar( (1010)notnull)notnullprimarykeycheckprimarykeycheck( (employeeidemployeeidlikelikeFM0-90-90-9FM0-90-90

14、-9), ),employeenameemployeenamenvarcharnvarchar( (2020), ),sexsexncharnchar( (1 1) )checkcheck( (sexsexin(in(FF, ,MM),),countrycountrynvarcharnvarchar( (100100), ),provinceprovincenvarcharnvarchar( (100100), ),citycitynvarcharnvarchar( (100100), ),addressnvarcharaddressnvarchar( (100100) )gogo2 2页脚内

15、容页脚内容K1+478K1+478K1+5888K1+5888 段左侧片石混凝土挡土墙第段左侧片石混凝土挡土墙第 1 1 部分部分insertintoinsertintohotelemployeeshotelemployeesvaluesvalues( (F001F001, , 小丹小丹 , ,FF, , 中国中国 , , 浙江浙江 , , 杭州杭州 , , 西湖路号西湖路号 ) )insertintoinsertintohotelemployeeshotelemployeesvaluesvalues( (F002F002, , 小丽小丽 , ,FF, , 中国中国 , , 浙江浙江 , ,

16、杭州杭州 , , 西湖路号西湖路号 ) )insertintoinsertintohotelemployeeshotelemployeesvaluesvalues( (F003F003, , 小黄小黄 , ,FF, , 中国中国 , , 江苏江苏 , , 南京南京 , , 南京路号南京路号 ) )insertintoinsertintohotelemployeeshotelemployeesvaluesvalues( (M001M001, , 小陈小陈 , ,MM, , 中国中国 , , 上海上海 , , 宝山宝山 , , 宝山路号宝山路号 ) )insertintoinsertintohot

17、elemployeeshotelemployeesvaluesvalues( (M002M002, , 小吴小吴 , ,MM, , 中国中国 , , 浙江浙江 , , 杭州杭州 , , 西湖路号西湖路号 ) )gogo建客户表建客户表if ifOBJECT_IDOBJECT_ID( (hotelcustomershotelcustomers)isnotnull)isnotnulldroptabledroptablehotelcustomershotelcustomersgogocreatetablecreatetablehotelcustomershotelcustomers( (custom

18、eridcustomeridncharnchar( (1010)notnull)notnullprimarykeyprimarykey, ,customernamecustomernamenvarcharnvarchar( (100100), ),sexsexncharnchar( (1 1) )checkcheck( (sexsexin(in(FF, ,MM),),birthdatebirthdatedatetimedatetime, ,countrycountrynvarcharnvarchar( (100100), ),provinceprovincenvarcharnvarchar(

19、(100100), ),citycitynvarcharnvarchar( (100100), ),addressnvarcharaddressnvarchar( (100100), ),isvipisvipncharnchar( (1 1) )constraintconstraintdf_hotelcustomers_isvipdf_hotelcustomers_isvipdefaultdefault( (0 0) )gogo建订单表建订单表if ifOBJECT_IDOBJECT_ID( (hotelordershotelorders)isnotnull)isnotnulldroptabl

20、edroptablehotelordershotelordersgogocreatetablecreatetablehotelordershotelorders( (orderidorderidncharnchar( (1010) )primarykeyprimarykey, ,orderdateorderdatedatetimedatetime, ,customeridcustomeridncharnchar( (1010), ),employeeidemployeeidnvarcharnvarchar( (1010) )constraintconstraintfk_hotelorders_

21、employeeidfk_hotelorders_employeeidreferencesreferenceshotelemployeeshotelemployees( (employeeidemployeeid) )gogo建订单详细表建订单详细表if ifOBJECT_IDOBJECT_ID( (hotelorderitemshotelorderitems)isnotnull)isnotnulldroptabledroptablehotelorderitemshotelorderitemsgogocreatetablecreatetablehotelorderitemshotelorder

22、items( (orderidorderidncharnchar( (1010) )primarykeyconstraintprimarykeyconstraintfk_hotelorderitems_orderidfk_hotelorderitems_orderidreferencesreferenceshotelordershotelorders( (orderidorderid), ),roomidroomidnvarcharnvarchar( (5 5) )constraintconstraintfk_hotelorderitems_roomidfk_hotelorderitems_r

23、oomidreferencesreferencesroomsrooms( (roomidroomid), ),timeintchecktimeintcheck( (timetime 0 0), ),unitpriceunitpricemoneymoney, ,discountdiscountdecimalconstraintdecimalconstraintdf_hotelorderitems_discountdf_hotelorderitems_discountdefaultdefault( (0.120.12), ),amountamountasascastcast( (timetime*

24、 *unitpriceunitprice*(*(1 1- -discountdiscount) )asdecimalasdecimal( (1212, ,2 2)gogo建历史表建历史表if ifobject_idobject_id( (historyhistory)isnotnull)isnotnulldroptabledroptablehistoryhistorygogocreatetablecreatetablehistoryhistory( (customeridcustomeridncharnchar( (1010)notnull)notnullprimarykeyprimaryke

25、y, ,customernamecustomernamenvarcharnvarchar( (100100), ),3 3页脚内容页脚内容K1+478K1+478K1+5888K1+5888 段左侧片石混凝土挡土墙第段左侧片石混凝土挡土墙第 1 1 部分部分sexsexncharnchar( (1 1) )checkcheck( (sexsexin(in(FF, ,MM),),indateindatedatetimedatetime, ,offdateoffdatedatetimedatetime, ,countrycountrynvarcharnvarchar( (100100), ),pr

26、ovinceprovincenvarcharnvarchar( (100100), ),citycitynvarcharnvarchar( (100100), ),addressnvarcharaddressnvarchar( (100100), ),isvipisvipncharnchar( (1 1) )constraintconstraintdf_history_isvipdf_history_isvipdefaultdefault( (0 0) )gogo建定金表建定金表if ifobject_idobject_id( (earnestearnest)isnotnull)isnotnu

27、lldroptabledroptableearnestearnestgogocreatetablecreatetableearnestearnest( (customeridcustomeridncharnchar( (1010)notnull)notnullprimarykeyprimarykey, ,customernamecustomernamenvarcharnvarchar( (100100), ),roomidroomidnvarcharnvarchar( (5 5) )constraintconstraintfk_earnest_roomidfk_earnest_roomidre

28、ferencesreferencesroomsrooms( (roomidroomid), ),emoneyemoneymoneymoney) )gogo建预订表建预订表if ifOBJECT_IDOBJECT_ID( (reservereserve)isnotnull)isnotnulldroptabledroptablereservereservegogocreatetablecreatetablereservereserve( (roomidroomidnvarcharnvarchar( (5 5) )constraintconstraintfk_reserve_roomidfk_res

29、erve_roomidreferencesreferencesroomsrooms( (roomidroomid), ),customeridcustomeridncharnchar( (1010), ),customernamecustomernamenvarcharnvarchar( (100100), ),intimeintimedatetimedatetime, ,timeinttimeint) )gogo三、程序功能、实现界面及其代码三、程序功能、实现界面及其代码1. 1. 数据模块数据模块1 1)功能介绍及设计说明:)功能介绍及设计说明:数据连接和全局变量数据连接和全局变量2 2)

30、程序运行界面)程序运行界面3 3)程序代码)程序代码varvarDataModule2: TDataModule2;DataModule2: TDataModule2;flag,f,f1,f2:integer;flag,f,f1,f2:integer;dl,roomid11,roomid1,r,r1,r2,r3,r4:string;dl,roomid11,roomid1,r,r1,r2,r3,r4:string;r91:string;r91:string;close3:integer;close3:integer;r10,r101:string;r10,r101:string;yd:integ

31、er;yd:integer;注:在后面的表单中,若用到数据模块,则必须在uses 中添加数据模块的文件名(unit2) 。4 4页脚内容页脚内容K1+478K1+478K1+5888K1+5888 段左侧片石混凝土挡土墙第段左侧片石混凝土挡土墙第 1 1 部分部分2. 2. 主菜单程序主菜单程序(1 1) 、主页、主页其中上面的工具栏依次为主页、前台中心、客务中心、预订管理、锁屏离开,为快捷其中上面的工具栏依次为主页、前台中心、客务中心、预订管理、锁屏离开,为快捷键,方便操作员操作。点击前四个为直接跳到相应界面,程序为:键,方便操作员操作。点击前四个为直接跳到相应界面,程序为:/主页按钮主页按

32、钮procedure TForm1.ToolButton1Click(Sender: TObject);procedure TForm1.ToolButton1Click(Sender: TObject);varvari,j:integer;i,j:integer;s:string;s:string;beginbegin/showmessage(inttostr(panel2.ControlCount);/showmessage(inttostr(panel2.ControlCount);if (panel2.ControlCount1) thenif (panel2.ControlCount

33、1) thenbeginbegin/释放原有窗体释放原有窗体for j := 0 to panel2.controlcount-2 dofor j := 0 to panel2.controlcount-2 dobeginbeginfor i:=1 to panel2.ControlCount dofor i:=1 to panel2.ControlCount dobeginbegins:=lowercase(panel2.Controlsi.ClassName);s:=lowercase(panel2.Controlsi.ClassName);/showmessage(s);/showmes

34、sage(s);/showmessage(inttostr(i);/showmessage(inttostr(i);if (copy(s,1,5)=tform) thenif (copy(s,1,5)=tform) thenbeginbeginpanel2.Controlsi.Free;panel2.Controlsi.Free;break;break;end;end;end;end;end;end;end;end;end;end;/其余三个按钮其余三个按钮procedure TForm1.ToolButton6Click(Sender: TObject);procedure TForm1.T

35、oolButton6Click(Sender: TObject);var i:integer;var i:integer;s:string;s:string;beginbeginNewFormClass:=nil;NewFormClass:=nil;NewForm:=TForm(application.FindComponent(lowercase(formNewForm:=TForm(application.FindComponent(lowercase(form 客务中客务中););if NewFormnil then NewFormClass:=TFormClass(NewForm.Cl

36、assType);if NewFormnil then NewFormClass:=TFormClass(NewForm.ClassType);if NewFormClassnil thenif NewFormClassnil thenbeginbeginNewForm := NewFormClass.Create(Self);NewForm := NewFormClass.Create(Self);NewForm.Hide;NewForm.Hide;if isshowmodal=1 thenif isshowmodal=1 thenNewForm.ShowmodalNewForm.Showm

37、odalelseelsebeginbeginNewForm.BorderStyle:=bsNone;NewForm.BorderStyle:=bsNone;NewForm.Parent:=panel2;NewForm.Parent:=panel2;NewForm.Align:=alclient;NewForm.Align:=alclient;NewForm.Show;NewForm.Show;end;end;end;end;/锁屏离开按钮锁屏离开按钮procedure TForm1.ToolButton7Click(Sender: TObject);procedure TForm1.ToolB

38、utton7Click(Sender: TObject);var i,j:integer;var i,j:integer;s:string;s:string;beginbeginif (panel2.ControlCount1) thenif (panel2.ControlCount1) thenbeginbegin/释放原有窗体释放原有窗体5 5页脚内容页脚内容K1+478K1+478K1+5888K1+5888 段左侧片石混凝土挡土墙第段左侧片石混凝土挡土墙第 1 1 部分部分for j := 0 to panel2.controlcount-2 dofor j := 0 to panel

39、2.controlcount-2 dobeginbeginfor i:=1 to panel2.ControlCount dofor i:=1 to panel2.ControlCount dobeginbegins:=lowercase(panel2.Controlsi.ClassName);s:=lowercase(panel2.Controlsi.ClassName);/showmessage(s);/showmessage(s);/showmessage(inttostr(i);/showmessage(inttostr(i);if (copy(s,1,5)=tform) thenif

40、 (copy(s,1,5)=tform) thenbeginbeginpanel2.Controlsi.Free;panel2.Controlsi.Free;break;break;end;end;end;end;end;end;end;end;form12.showmodal;form12.showmodal;end;end;/其中其中 form12form12procedure TForm12.Button1Click(Sender: TObject);procedure TForm12.Button1Click(Sender: TObject);var s,c:string;var s,

41、c:string;beginbegins:=edit1.text;s:=edit1.text;with adoquery1 dowith adoquery1 dobeginbeginclose;close;sql.clear;sql.clear;sql.text:=select code from hotelemployees where employeename=+dl+;sql.text:=select code from hotelemployees where employeename=+dl+;open;open;c:=fieldbyname(code).asstring;c:=fi

42、eldbyname(code).asstring;end;end;if sc thenif sc thenbeginbeginshowmessage(showmessage(密码错误密码错误 请重新输入!请重新输入!););edit1.setfocus;edit1.setfocus;endendelseelseclose;close;end;end;procedure TForm12.FormShow(Sender: TObject);procedure TForm12.FormShow(Sender: TObject);beginbeginedit1.text:=;edit1.text:=;

43、edit1.setfocus;edit1.setfocus;label1.caption:=dl+label1.caption:=dl+ 离开离开; ;label2.caption:=label2.caption:=请输入密码登陆请输入密码登陆; ;end;end;左边部分为树,自己可视化界面输的。树的代码:左边部分为树,自己可视化界面输的。树的代码:procedure TForm1.TreeView1Change(Sender: TObject; Node: TTreeNode);procedure TForm1.TreeView1Change(Sender: TObject; Node:

44、TTreeNode);varvari,x:integer;i,x:integer;s1,s2,s:string;s1,s2,s:string;beginbegins:=trim(node.Text);s:=trim(node.Text);s1:=form+copy(s,1,3);s1:=form+copy(s,1,3);/showmessage(s1);/showmessage(s1);if not (node.HasChildren) thenif not (node.HasChildren) thenbeginbeginif (panel2.ControlCount1) thenif (p

45、anel2.ControlCount1) thenbeginbegin/释放原有窗体释放原有窗体for i:=1 to panel2.ControlCount dofor i:=1 to panel2.ControlCount dobeginbegins:=lowercase(panel2.Controlsi-1.ClassName);s:=lowercase(panel2.Controlsi-1.ClassName);6 6页脚内容页脚内容K1+478K1+478K1+5888K1+5888 段左侧片石混凝土挡土墙第段左侧片石混凝土挡土墙第 1 1 部分部分if (copy(s,1,5)=t

46、form) thenif (copy(s,1,5)=tform) thenbeginbeginpanel2.Controlsi-1.Free;panel2.Controlsi-1.Free;break;break;end;end;end;end;end;end;NewFormClass:=nil;NewFormClass:=nil;NewForm:=TForm(application.FindComponent(lowercase(s1);NewForm:=TForm(application.FindComponent(lowercase(s1);if NewFormnil then NewF

47、ormClass:=TFormClass(NewForm.ClassType);if NewFormnil then NewFormClass:=TFormClass(NewForm.ClassType);if NewFormClassnil thenif NewFormClassnil thenbeginbeginNewForm := NewFormClass.Create(Self);NewForm := NewFormClass.Create(Self);NewForm.Hide;NewForm.Hide;if isshowmodal=1 thenif isshowmodal=1 the

48、nNewForm.ShowmodalNewForm.ShowmodalelseelsebeginbeginNewForm.BorderStyle:=bsNone;NewForm.BorderStyle:=bsNone;NewForm.Parent:=panel2;NewForm.Parent:=panel2;NewForm.Align:=alclient;NewForm.Align:=alclient;NewForm.Show;NewForm.Show;end;end;end;end;end;end;end;end;(2 2) 、前台中心、前台中心1 1)查看已入住的房间)查看已入住的房间pr

49、ocedure TFormprocedure TForm 前台中前台中.Button3Click(Sender: TObject);.Button3Click(Sender: TObject);var s,s1:string;var s,s1:string;i:integer;i:integer;beginbeginf:=1;f:=1;with dbgrid1 dowith dbgrid1 dobeginbegincolumns.Clear;columns.Clear;for I := 0 to 4 dofor I := 0 to 4 docolumns.Add;columns.Add;col

50、umns0.Title.caption:=columns0.Title.caption:=房间号房间号; ;columns1.Title.caption:=columns1.Title.caption:=房间类型房间类型; ;columns2.Title.caption:=columns2.Title.caption:=客户名称客户名称; ;columns3.Title.caption:=columns3.Title.caption:=性别性别; ;columns4.Title.caption:=columns4.Title.caption:=入住日期入住日期; ;columns0.Width

51、:=20*10;columns0.Width:=20*10;columns1.Width:=20*10;columns1.Width:=20*10;columns2.Width:=20*10;columns2.Width:=20*10;columns3.Width:=20*5;columns3.Width:=20*5;columns4.Width:=20*10;columns4.Width:=20*10;for I := 0 to 4 dofor I := 0 to 4 docolumnsi.Title.Alignment:=tacenter;columnsi.Title.Alignment:

52、=tacenter;columns0.FieldName:=roomid;columns0.FieldName:=roomid;columns1.FieldName:=categoryname;columns1.FieldName:=categoryname;columns2.FieldName:=customername;columns2.FieldName:=customername;columns3.FieldName:=sex;columns3.FieldName:=sex;columns4.FieldName:=orderdate;columns4.FieldName:=orderd

53、ate;end;end;s:=if object_id(y)is not null drop table y;s:=if object_id(y)is not null drop table y;s:=s+ select a.roomid,categoryname,customername,sex,orderdate into y from rooms as a;s:=s+ select a.roomid,categoryname,customername,sex,orderdate into y from rooms as a;s:=s+ join roomcategories as b o

54、n a.categoryid=b.categoryid;s:=s+ join roomcategories as b on a.categoryid=b.categoryid;s:=s+ join hotelorderitems as c on a.roomid=c.roomid;s:=s+ join hotelorderitems as c on a.roomid=c.roomid;s:=s+ join hotelorders as d on c.orderid=d.orderid;s:=s+ join hotelorders as d on c.orderid=d.orderid;s:=s

55、+ join hotelcustomers as e on d.customerid=e.customerid where isusing=1 ;s:=s+ join hotelcustomers as e on d.customerid=e.customerid where isusing=1 ;xx:=s;xx:=s;7 7页脚内容页脚内容K1+478K1+478K1+5888K1+5888 段左侧片石混凝土挡土墙第段左侧片石混凝土挡土墙第 1 1 部分部分mandtext:=s;mandtext:=s;adocommand1.execute;adocommand1.execute;wit

56、h adotable1 dowith adotable1 dobeginbeginclose;close;tablename:=y;tablename:=y;open;open;end;end;end;end;/其中双击其中双击 DBGRIDDBGRID 可以查看客户详细信息,也可以修改可以查看客户详细信息,也可以修改procedure TFormprocedure TForm 前台中前台中.DBGrid1DblClick(Sender: TObject);.DBGrid1DblClick(Sender: TObject);var s:string;var s:string;beginbegi

57、nif f=1 thenif f=1 thenbeginbeginroomid11:=trim(dbgrid1.SelectedField.Text);roomid11:=trim(dbgrid1.SelectedField.Text);form5.showmodal;form5.showmodal;/datasource1.dataset:=adotable1;/datasource1.dataset:=adotable1;mandtext:=xx;mandtext:=xx;adocommand1.execute;adocommand1.execute;with adotable1 dowi

58、th adotable1 dobeginbeginclose;close;tablename:=y;tablename:=y;open;open;end;end;end;end;end;end;/修改按钮修改按钮procedure TForm5.Button3Click(Sender: TObject);procedure TForm5.Button3Click(Sender: TObject);beginbeginedit2.Enabled:=true;edit2.Enabled:=true;edit3.Enabled:=true;edit3.Enabled:=true;/edit4.Ena

59、bled:=true;/edit4.Enabled:=true;edit5.Enabled:=true;edit5.Enabled:=true;combobox1.Enabled:=true;combobox1.Enabled:=true;combobox2.Enabled:=true;combobox2.Enabled:=true;combobox3.Enabled:=true;combobox3.Enabled:=true;combobox4.Enabled:=true;combobox4.Enabled:=true;combobox5.enabled:=true;combobox5.en

60、abled:=true;end;end;/保存按钮保存按钮procedure TForm5.Button2Click(Sender: TObject);procedure TForm5.Button2Click(Sender: TObject);beginbeginwith adoquery3 dowith adoquery3 dobeginbeginclose;close;sql.text:=select * from hotelcustomers;sql.text:=select * from hotelcustomers;open;open;edit;edit;fieldbyname(c

61、ustomername).asstring:=trim(edit2.text);fieldbyname(customername).asstring:=trim(edit2.text);fieldbyname(birthdate).asstring:=trim(edit5.text);fieldbyname(birthdate).asstring:=trim(edit5.text);fieldbyname(address).asstring:=trim(edit3.text);fieldbyname(address).asstring:=trim(edit3.text);fieldbyname

62、(sex).asstring:=trim(combobox1.text);fieldbyname(sex).asstring:=trim(combobox1.text);fieldbyname(province).asstring:=trim(combobox2.text);fieldbyname(province).asstring:=trim(combobox2.text);fieldbyname(country).asstring:=trim(combobox3.text);fieldbyname(country).asstring:=trim(combobox3.text);field

63、byname(city).asstring:=trim(combobox4.text);fieldbyname(city).asstring:=trim(combobox4.text);if trim(combobox5.text)=if trim(combobox5.text)=否否 then thenfieldbyname(isvip).asstring:=0fieldbyname(isvip).asstring:=0elseelsefieldbyname(isvip).asstring:=1;fieldbyname(isvip).asstring:=1;post;post;end;end

64、;8 8页脚内容页脚内容K1+478K1+478K1+5888K1+5888 段左侧片石混凝土挡土墙第段左侧片石混凝土挡土墙第 1 1 部分部分showmessage(showmessage(保存成功!保存成功!););end;end;2 2)退房)退房/退房按钮的退房按钮的 clickclick 事件事件procedure TFormprocedure TForm 前台中前台中.Button1Click(Sender: TObject);.Button1Click(Sender: TObject);beginbeginroomid1:=dbgrid1.selectedfield.text;r

65、oomid1:=dbgrid1.selectedfield.text;form8.showmodal;form8.showmodal;mandtext:=xx;mandtext:=xx;adocommand1.execute;adocommand1.execute;with adotable1 dowith adotable1 dobeginbeginclose;close;tablename:=y;tablename:=y;open;open;end;end;end;end;/结账表单的代码结账表单的代码procedure TForm8.FormShow(Sender: TObject);p

66、rocedure TForm8.FormShow(Sender: TObject);var s,s1,s2,rdate,yf,dj:string;var s,s1,s2,rdate,yf,dj:string;amount1,amount:integer;amount1,amount:integer;beginbeginwith adoquery1 dowith adoquery1 dobeginbeginclose;close;s:=select customername,roomid from hotelcustomers as a join hotelorders as b on a.cu

67、stomerid=b.customerid;s:=select customername,roomid from hotelcustomers as a join hotelorders as b on a.customerid=b.customerid;s:=s+ join hotelorderitems as c on b.orderid=c.orderid where roomid=+roomid1+;s:=s+ join hotelorderitems as c on b.orderid=c.orderid where roomid=+roomid1+;/roomid1/roomid1

68、 是是 dbgriddbgrid 选中行的房间编码选中行的房间编码sql.text:=s;sql.text:=s;open;open;s1:=fieldbyname(customername).asstring;s1:=fieldbyname(customername).asstring;s2:=fieldbyname(roomid).asstring;s2:=fieldbyname(roomid).asstring;end;end;edit1.text:=s1;edit1.text:=s1;edit2.text:=s2;edit2.text:=s2;with adoquery1 dowith

69、 adoquery1 dobeginbeginclose;close;sql.clear;sql.clear;sql.text:=select * from y;sql.text:=select * from y;open;open;rdate:=fieldbyname(orderdate).asstring;rdate:=fieldbyname(orderdate).asstring;edit3.text:=rdate;edit3.text:=rdate;datetimetostring(s,yyyy-mm-dd,now();/datetimetostring(s,yyyy-mm-dd,no

70、w();/当前时间当前时间edit4.text:=s;edit4.text:=s;end;end;d1:=strtoint(copy(edit3.text,9,2);/d1:=strtoint(copy(edit3.text,9,2);/取出入住的日期取出入住的日期d2:=strtoint(copy(edit4.text,9,2);/d2:=strtoint(copy(edit4.text,9,2);/取出当前的日期取出当前的日期with adoquery1 dowith adoquery1 dobeginbeginclose;close;sql.clear;sql.clear;sql.tex

71、t:=select unitprice from roomcategories as a join rooms as b on a.categoryid=b.categoryid wheresql.text:=select unitprice from roomcategories as a join rooms as b on a.categoryid=b.categoryid whereroomid=+roomid1+;roomid=+roomid1+;open;open;s:=fieldbyname(unitprice).asstring;s:=fieldbyname(unitprice

72、).asstring;end;end;amount:=(d2-d1)*strtoint(s);/amount:=(d2-d1)*strtoint(s);/算出应收账款算出应收账款edit5.text:=inttostr(amount);edit5.text:=inttostr(amount);with adoquery1 dowith adoquery1 dobeginbeginclose;close;9 9页脚内容页脚内容K1+478K1+478K1+5888K1+5888 段左侧片石混凝土挡土墙第段左侧片石混凝土挡土墙第 1 1 部分部分sql.clear;sql.clear;s:=sel

73、ect a.customerid,sum(emoney) as dj from earnest as a join hotelcustomers as b;s:=select a.customerid,sum(emoney) as dj from earnest as a join hotelcustomers as b;s:=s+ on a.customerid=b.customerids:=s+ on a.customerid=b.customeridwhere a.customername=+s1+ group by a.customerid;where a.customername=+

74、s1+ group by a.customerid;sql.text:=s;sql.text:=s;open;open;dj:=fieldbyname(dj).asstring;/dj:=fieldbyname(dj).asstring;/定金定金close;close;sql.clear;sql.clear;s:=select b.customerid,sum(amount)as m from hotelorderitems as a join hotelorders as b on a.orderid=b.orderid;s:=select b.customerid,sum(amount)

75、as m from hotelorderitems as a join hotelorders as b on a.orderid=b.orderid;s:=s+ join hotelcustomers as c on b.customerid=c.customerid where customername=+s1+ group by b.customerid;s:=s+ join hotelcustomers as c on b.customerid=c.customerid where customername=+s1+ group by b.customerid;sql.text:=s;

76、sql.text:=s;open;open;yf:=fieldbyname(m).asstring;/yf:=fieldbyname(m).asstring;/房钱房钱end;end;amount1:=strtoint(dj)+strtoint(yf);/amount1:=strtoint(dj)+strtoint(yf);/已付金额已付金额edit6.text:=inttostr(amount1);edit6.text:=inttostr(amount1);edit7.text:=inttostr(amount-amount1);/edit7.text:=inttostr(amount-am

77、ount1);/结账时应收金额结账时应收金额end;end;3 3)查看已预订房间)查看已预订房间procedure TFormprocedure TForm 前台中前台中.Button7Click(Sender: TObject);.Button7Click(Sender: TObject);var i:integer;var i:integer;s:string;s:string;beginbeginwith dbgrid1 dowith dbgrid1 dobeginbegincolumns.Clear;columns.Clear;for I := 0 to 3 dofor I := 0

78、 to 3 docolumns.Add;columns.Add;columns0.Title.caption:=columns0.Title.caption:=房间号房间号; ;columns1.Title.caption:=columns1.Title.caption:=客户名称客户名称; ;columns2.Title.caption:=columns2.Title.caption:=房间类型房间类型; ;columns3.title.caption:=columns3.title.caption:=入住时间入住时间; ;columns0.fieldname:=roomid1;column

79、s0.fieldname:=roomid1;columns1.fieldname:=customername;columns1.fieldname:=customername;columns2.fieldname:=categoryname;columns2.fieldname:=categoryname;columns3.fieldname:=intime;columns3.fieldname:=intime;columns0.Width:=20*10;columns0.Width:=20*10;columns1.Width:=20*10;columns1.Width:=20*10;colu

80、mns2.Width:=20*10;columns2.Width:=20*10;columns3.Width:=20*10;columns3.Width:=20*10;for I := 0 to 3 dofor I := 0 to 3 docolumnsi.Title.Alignment:=tacenter;columnsi.Title.Alignment:=tacenter;end;end;s:=if object_id(yd)is not null drop table yd;s:=if object_id(yd)is not null drop table yd;s:=s+ select

81、 a.roomid as roomid1,customername,categoryname,intime into yd from reserve as a ;s:=s+ select a.roomid as roomid1,customername,categoryname,intime into yd from reserve as a ;s:=s+ join rooms as b on a.roomid=b.roomid;s:=s+ join rooms as b on a.roomid=b.roomid;s:=s+ join roomcategories as c on b.cate

82、goryid=c.categoryid;s:=s+ join roomcategories as c on b.categoryid=c.categoryid;x3:=s;x3:=s;mandtext:=s;mandtext:=s;adocommand1.execute;adocommand1.execute;with adotable1 dowith adotable1 dobeginbeginclose;close;tablename:=yd;tablename:=yd;open;open;end;end;end;end;4)4) 更改预订状态更改预订状态跳出来其实就是登记入住的窗口,稍微

83、改动一下。跳出来其实就是登记入住的窗口,稍微改动一下。procedure TFormprocedure TForm 前台中前台中.Button8Click(Sender: TObject);.Button8Click(Sender: TObject);1010页脚内容页脚内容K1+478K1+478K1+5888K1+5888 段左侧片石混凝土挡土墙第段左侧片石混凝土挡土墙第 1 1 部分部分beginbeginyd:=1;yd:=1;r:=dbgrid1.selectedfield.text;r:=dbgrid1.selectedfield.text;form6.showmodal;form

84、6.showmodal;mandtext:=x3;mandtext:=x3;adocommand1.execute;adocommand1.execute;with adotable1 dowith adotable1 dobeginbeginclose;close;tablename:=yd;tablename:=yd;open;open;end;end;end;end;/其中其中 form6form6procedure TForm6.FormShow(Sender: TObject);procedure TForm6.FormShow(Sender: TObject);var s,s1,s

85、2:string;var s,s1,s2:string;i:integer;i:integer;beginbeginii:=0;ii:=0;edit1.SetFocus;edit1.SetFocus;f1:=0;f1:=0;edit1.Text:=;edit1.Text:=;edit2.Text:=;edit2.Text:=;edit3.Text:=;edit3.Text:=;edit4.text:=;edit4.text:=;edit8.Text:=;edit8.Text:=;edit10.Text:=;edit10.Text:=;edit11.Text:=;edit11.Text:=;ed

86、it12.Text:=;edit12.Text:=;combobox3.Text:=;combobox3.Text:=;combobox4.Text:=;combobox4.Text:=;combobox1.items.add(M);combobox1.items.add(M);combobox1.items.add(F);combobox1.items.add(F);combobox1.itemindex:=0;combobox1.itemindex:=0;combobox5.clear;combobox5.clear;combobox5.Items.Add(combobox5.Items.

87、Add(会员会员););combobox5.items.add(combobox5.items.add(非会员非会员););combobox5.itemindex:=0;combobox5.itemindex:=0;with adoquery1 dowith adoquery1 dobeginbeginclose;close;sql.text:=select * from Dict_Countries;sql.text:=select * from Dict_Countries;open;open;while not eof dowhile not eof dobeginbegins1:=fi

88、eldbyname(country).asstring;s1:=fieldbyname(country).asstring;combobox2.Items.Add(s1);combobox2.Items.Add(s1);next;next;end;end;end;end;combobox2.ItemIndex:=0;combobox2.ItemIndex:=0;with dbgrid1 dowith dbgrid1 dobeginbegincolumns.Clear;columns.Clear;for I := 0 to 3 dofor I := 0 to 3 docolumns.Add;co

89、lumns.Add;columns0.Title.caption:=columns0.Title.caption:=房间号房间号; ;columns1.Title.caption:=columns1.Title.caption:=房间类型房间类型; ;columns2.title.caption:=columns2.title.caption:=价格价格; ;columns3.Title.caption:=columns3.Title.caption:=楼层楼层; ;columns0.fieldname:=roomid;columns0.fieldname:=roomid;columns1.f

90、ieldname:=categoryname;columns1.fieldname:=categoryname;columns2.fieldname:=unitprice;columns2.fieldname:=unitprice;1111页脚内容页脚内容K1+478K1+478K1+5888K1+5888 段左侧片石混凝土挡土墙第段左侧片石混凝土挡土墙第 1 1 部分部分columns3.fieldname:=floors;columns3.fieldname:=floors;columns0.Width:=131;columns0.Width:=131;columns1.Width:=13

91、1;columns1.Width:=131;columns2.Width:=131;columns2.Width:=131;columns3.width:=131;columns3.width:=131;for I := 0 to 3 dofor I := 0 to 3 dobeginbegincolumnsi.Title.Alignment:=tacenter;columnsi.Title.Alignment:=tacenter;columnsi.alignment:=taleftjustify;columnsi.alignment:=taleftjustify;end;end;end;en

92、d;if yd=0 then/if yd=0 then/判断是直接登记还是由预订更改的判断是直接登记还是由预订更改的beginbegins:=if object_id(rz)is not null drop table rz;s:=if object_id(rz)is not null drop table rz;s:=s+ select roomid,categoryname,unitprice,floors into rz from rooms as a ;s:=s+ select roomid,categoryname,unitprice,floors into rz from room

93、s as a ;s:=s+ join roomcategories as b on a.categoryid=b.categoryid where roomid=+r+;s:=s+ join roomcategories as b on a.categoryid=b.categoryid where roomid=+r+;mandtext:=s;mandtext:=s;adocommand1.execute;adocommand1.execute;with adotable1 dowith adotable1 dobeginbeginclose;close;tablename:=rz;tabl

94、ename:=rz;open;open;end;end;endendelseelsebeginbegins:=if object_id(yddj)is not null drop table yddj;s:=if object_id(yddj)is not null drop table yddj;s:=s+ select a.roomid,categoryname,unitprice,floors into yddj from reserve as a ;s:=s+ select a.roomid,categoryname,unitprice,floors into yddj from re

95、serve as a ;s:=s+ join rooms as b on a.roomid=b.roomid;s:=s+ join rooms as b on a.roomid=b.roomid;s:=s+ join roomcategories as c on b.categoryid=c.categoryid where a.roomid=+r+;s:=s+ join roomcategories as c on b.categoryid=c.categoryid where a.roomid=+r+;mandtext:=s;mandtext:=s;adocommand1.execute;

96、adocommand1.execute;with adotable1 dowith adotable1 dobeginbeginclose;close;tablename:=yddj;tablename:=yddj;open;open;end;end;with adoquery4 dowith adoquery4 dobeginbeginclose;close;sql.clear;sql.clear;sql.text:=select * from reserve where roomid=+r+;sql.text:=select * from reserve where roomid=+r+;

97、open;open;edit1.text:=fieldbyname(customername).asstring;edit1.text:=fieldbyname(customername).asstring;edit2.text:=fieldbyname(customerid).asstring;edit2.text:=fieldbyname(customerid).asstring;end;end;end;end;/添加按钮添加按钮procedure TForm6.Button1Click(Sender: TObject);procedure TForm6.Button1Click(Send

98、er: TObject);beginbeginform7.showmodal;form7.showmodal;if f1=1 thenif f1=1 thenbeginbeginwith adotable1 dowith adotable1 dobeginbeginappend;append;edit;edit;fieldbyname(roomid).asstring:=r1;fieldbyname(roomid).asstring:=r1;fieldbyname(categoryname).asstring:=r2;fieldbyname(categoryname).asstring:=r2

99、;fieldbyname(unitprice).asstring:=r3;fieldbyname(unitprice).asstring:=r3;fieldbyname(floors).asstring:=r4;fieldbyname(floors).asstring:=r4;1212页脚内容页脚内容K1+478K1+478K1+5888K1+5888 段左侧片石混凝土挡土墙第段左侧片石混凝土挡土墙第 1 1 部分部分post;post;end;end;end;end;end;end;/添加窗口的代码添加窗口的代码procedure TForm7.Button1Click(Sender: TO

100、bject);procedure TForm7.Button1Click(Sender: TObject);beginbeginr1:=adotable1.fieldbyname(roomid).asstring;r1:=adotable1.fieldbyname(roomid).asstring;r2:=adotable1.fieldbyname(categoryname).asstring;r2:=adotable1.fieldbyname(categoryname).asstring;r3:=adotable1.fieldbyname(unitprice).asstring;r3:=ad

101、otable1.fieldbyname(unitprice).asstring;r4:=adotable1.fieldbyname(floors).asstring;r4:=adotable1.fieldbyname(floors).asstring;close;close;f1:=1;f1:=1;end;end;procedure TForm7.Button2Click(Sender: TObject);procedure TForm7.Button2Click(Sender: TObject);beginbeginclose;close;f1:=0;f1:=0;end;end;proced

102、ure TForm7.ComboBox1Change(Sender: TObject);procedure TForm7.ComboBox1Change(Sender: TObject);var s,s1:string;var s,s1:string;beginbegins:=combobox1.text;s:=combobox1.text;if s=ALL thenif s=ALL thenbeginbegins1:=if object_id(fj)is not null drop table fj;s1:=if object_id(fj)is not null drop table fj;

103、s1:=s1+ select roomid,categoryname,unitprice,floors into fj from rooms as a ;s1:=s1+ select roomid,categoryname,unitprice,floors into fj from rooms as a ;s1:=s1+ join roomcategories as b on a.categoryid=b.categoryid where isempty=1 and roomid+r+;s1:=s1+ join roomcategories as b on a.categoryid=b.cat

104、egoryid where isempty=1 and roomid+r+;endendelseelsebeginbegins1:=if object_id(fj)is not null drop table fj;s1:=if object_id(fj)is not null drop table fj;s1:=s1+ select roomid,categoryname,unitprice,floors into fj from rooms as a ;s1:=s1+ select roomid,categoryname,unitprice,floors into fj from room

105、s as a ;s1:=s1+ join roomcategories as b on a.categoryid=b.categoryid where isempty=1 and categoryname=+s+ands1:=s1+ join roomcategories as b on a.categoryid=b.categoryid where isempty=1 and categoryname=+s+androomid+r+;roomid+r+;end;end;mandtext:=s1;mandtext:=s1;adocommand1.execute;adocommand1.exec

106、ute;with adotable1 dowith adotable1 dobeginbeginclose;close;tablename:=fj;tablename:=fj;open;open;end;end;end;end;procedure TForm7.FormShow(Sender: TObject);procedure TForm7.FormShow(Sender: TObject);var i:integer;var i:integer;s:string;s:string;beginbegincombobox1.items.add(ALL);combobox1.items.add

107、(ALL);with adoquery1 dowith adoquery1 dobeginbeginclose;close;sql.text:=select * from roomcategories;sql.text:=select * from roomcategories;open;open;while not eofwhile not eofdodobeginbegincombobox1.items.add(trim(fieldbyname(categoryname).asstring);combobox1.items.add(trim(fieldbyname(categoryname

108、).asstring);next;next;end;end;end;end;combobox1.itemindex:=0;combobox1.itemindex:=0;1313页脚内容页脚内容K1+478K1+478K1+5888K1+5888 段左侧片石混凝土挡土墙第段左侧片石混凝土挡土墙第 1 1 部分部分with dbgrid1 dowith dbgrid1 dobeginbegincolumns.Clear;columns.Clear;for I := 0 to 3 dofor I := 0 to 3 docolumns.Add;columns.Add;columns0.Title.c

109、aption:=columns0.Title.caption:=房间号房间号; ;columns1.Title.caption:=columns1.Title.caption:=房间类型房间类型; ;columns2.title.caption:=columns2.title.caption:=价格价格; ;columns3.Title.caption:=columns3.Title.caption:=楼层楼层; ;columns0.fieldname:=roomid;columns0.fieldname:=roomid;columns1.fieldname:=categoryname;col

110、umns1.fieldname:=categoryname;columns2.fieldname:=unitprice;columns2.fieldname:=unitprice;columns3.fieldname:=floors;columns3.fieldname:=floors;columns0.Width:=115;columns0.Width:=115;columns1.Width:=115;columns1.Width:=115;columns2.Width:=115;columns2.Width:=115;columns3.width:=115;columns3.width:=

111、115;for I := 0 to 3 dofor I := 0 to 3 dobeginbegincolumnsi.Title.Alignment:=tacenter;columnsi.Title.Alignment:=tacenter;columnsi.alignment:=taleftjustify;columnsi.alignment:=taleftjustify;end;end;s:=if object_id(fj)is not null drop table fj;s:=if object_id(fj)is not null drop table fj;s:=s+ select r

112、oomid,categoryname,unitprice,floors into fj from rooms as a ;s:=s+ select roomid,categoryname,unitprice,floors into fj from rooms as a ;s:=s+ join roomcategories as b on a.categoryid=b.categoryid where roomid+r+;s:=s+ join roomcategories as b on a.categoryid=b.categoryid where roomid+r+;mandtext:=s;

113、mandtext:=s;adocommand1.execute;adocommand1.execute;with adotable1 dowith adotable1 dobeginbeginclose;close;tablename:=fj;tablename:=fj;open;open;end;end;end;end;end;end;/删除按钮删除按钮procedure TForm6.Button3Click(Sender: TObject);procedure TForm6.Button3Click(Sender: TObject);var s:string;var s:string;b

114、eginbegins:=trim(dbgrid1.SelectedField.text);s:=trim(dbgrid1.SelectedField.text);if application.MessageBox(pchar(if application.MessageBox(pchar(确定删除?确定删除?),caption,4+32)=6 then),caption,4+32)=6 thenadotable1.delete;adotable1.delete;end;end;/合计按钮合计按钮procedure TForm6.Button4Click(Sender: TObject);pro

115、cedure TForm6.Button4Click(Sender: TObject);var isvip,s:string;var isvip,s:string;days,unitprice:integer;days,unitprice:integer;x:real;x:real;beginbeginisvip:=combobox5.text;isvip:=combobox5.text;unitprice:=0;unitprice:=0;days:=strtoint(edit4.text);days:=strtoint(edit4.text);with adoquery2 dowith ad

116、oquery2 dobeginbeginclose;close;sql.text:=select * from rz;sql.text:=select * from rz;open;open;while not eofwhile not eofdodobeginbeginunitprice:=unitprice+fieldbyname(unitprice).asinteger;unitprice:=unitprice+fieldbyname(unitprice).asinteger;next;next;end;end;end;end;if isvip=if isvip=会员会员 then th

117、en1414页脚内容页脚内容K1+478K1+478K1+5888K1+5888 段左侧片石混凝土挡土墙第段左侧片石混凝土挡土墙第 1 1 部分部分x:=unitprice*0.88x:=unitprice*0.88elseelsex:=unitprice*days;x:=unitprice*days;edit10.text:=floattostr(x*days);edit10.text:=floattostr(x*days);edit11.text:=floattostr(x);edit11.text:=floattostr(x);edit12.text:=floattostr(x+x*da

118、ys);edit12.text:=floattostr(x+x*days);end;end;/登记按钮登记按钮procedure TForm6.Button5Click(Sender: TObject);procedure TForm6.Button5Click(Sender: TObject);varvarerror,s1,s2,s3,s4,s5,rid,cid,oid,odate,uprice,eid,s:string;error,s1,s2,s3,s4,s5,rid,cid,oid,odate,uprice,eid,s:string;tax,t1,t2,count:integer;tax

119、,t1,t2,count:integer;beginbegintax:=0;tax:=0;/验证数据验证数据if edit1.text= thenif edit1.text= thenbeginbeginerror:=error:=姓名不能为空!姓名不能为空!; ;tax:=1;tax:=1;end;end;t1:=0;t1:=0;t2:=0;t2:=0;if length(edit2.text)4 thenif length(edit2.text)4 thenbeginbegint1:=1;t1:=1;tax:=1;tax:=1;end;end;if not trystrtoint(edit

120、2.text,tax) thenif not trystrtoint(edit2.text,tax) thenbeginbegint2:=1;t2:=1;tax:=1;tax:=1;end;end;if (t1=0)and (t2=0) thenif (t1=0)and (t2=0) thenelseelseerror:=error+char(13)+error:=error+char(13)+证件号码输入错误!证件号码输入错误!; ;if strtoint(edit4.text)0 thenif strtoint(edit4.text)0 thenif count0 thenbeginbeg

121、ins:=update rooms set isreserve=0 where roomid=+rid+;s:=update rooms set isreserve=0 where roomid=+rid+;s:=s+ delete reserve where roomid=+rid+;s:=s+ delete reserve where roomid=+rid+;mandtext:=s;mandtext:=s;adocommand1.execute;adocommand1.execute;end;end;next;next;end;end;1616页脚内容页脚内容K1+478K1+478K1

122、+5888K1+5888 段左侧片石混凝土挡土墙第段左侧片石混凝土挡土墙第 1 1 部分部分end;end;/earnest/earnestwith adoquery3 dowith adoquery3 dobeginbeginclose;close;sql.clear;sql.clear;sql.text:=select * from earnest;sql.text:=select * from earnest;open;open;append;append;edit;edit;fieldbyname(customerid).asstring:=trim(edit2.text);field

123、byname(customerid).asstring:=trim(edit2.text);fieldbyname(customername).asstring:=trim(edit1.text);fieldbyname(customername).asstring:=trim(edit1.text);fieldbyname(roomid).asstring:=rid;fieldbyname(roomid).asstring:=rid;fieldbyname(emoney).asstring:=trim(edit11.text);fieldbyname(emoney).asstring:=tr

124、im(edit11.text);post;post;end;end;/hotelcustomers/hotelcustomerswith adoquery3 dowith adoquery3 dobeginbeginclose;close;sql.clear;sql.clear;sql.text:=select * from hotelcustomers;sql.text:=select * from hotelcustomers;open;open;append;append;edit;edit;fieldbyname(customername).asstring:=trim(edit1.t

125、ext);fieldbyname(customername).asstring:=trim(edit1.text);fieldbyname(customerid).asstring:=trim(edit2.text);fieldbyname(customerid).asstring:=trim(edit2.text);fieldbyname(birthdate).asstring:=trim(edit3.text);fieldbyname(birthdate).asstring:=trim(edit3.text);fieldbyname(address).asstring:=trim(edit

126、8.text);fieldbyname(address).asstring:=trim(edit8.text);fieldbyname(sex).asstring:=trim(combobox1.text);fieldbyname(sex).asstring:=trim(combobox1.text);fieldbyname(country).asstring:=trim(combobox2.text);fieldbyname(country).asstring:=trim(combobox2.text);fieldbyname(province).asstring:=trim(combobo

127、x3.text);fieldbyname(province).asstring:=trim(combobox3.text);fieldbyname(city).asstring:=trim(combobox4.text);fieldbyname(city).asstring:=trim(combobox4.text);if trim(combobox5.text)=if trim(combobox5.text)=会员会员 then thenfieldbyname(isvip).asstring:=1fieldbyname(isvip).asstring:=1elseelsefieldbynam

128、e(isvip).asstring:=0;fieldbyname(isvip).asstring:=0;post;post;end;end;showmessage(showmessage(登记成功!登记成功!););end;end;/键盘控制聚焦键盘控制聚焦procedure TForm6.FormKeyDown(Sender: TObject; var Key: Word;procedure TForm6.FormKeyDown(Sender: TObject; var Key: Word;Shift: TShiftState);Shift: TShiftState);beginbegini

129、f (key=13) or (key=40) thenif (key=13) or (key=40) thenbeginbeginkey:=0;key:=0;selectnext(activecontrol,true,true);selectnext(activecontrol,true,true);end;end;if key=38 thenif key=38 thenbeginbeginkey:=0;key:=0;selectnext(activecontrol,false,true);selectnext(activecontrol,false,true);end;end;end;end

130、;5)5) 未入住查看未入住查看procedure TFormprocedure TForm 前台中前台中.Button4Click(Sender: TObject);.Button4Click(Sender: TObject);var i:integer;var i:integer;s:string;s:string;beginbeginf:=0;f:=0;1717页脚内容页脚内容K1+478K1+478K1+5888K1+5888 段左侧片石混凝土挡土墙第段左侧片石混凝土挡土墙第 1 1 部分部分with dbgrid1 dowith dbgrid1 dobeginbegincolumns

131、.Clear;columns.Clear;for I := 0 to 2 dofor I := 0 to 2 docolumns.Add;columns.Add;columns0.Title.caption:=columns0.Title.caption:=房间号房间号; ;columns1.Title.caption:=columns1.Title.caption:=房间类型房间类型; ;columns2.Title.caption:=columns2.Title.caption:=楼层楼层; ;columns0.fieldname:=roomid;columns0.fieldname:=r

132、oomid;columns1.fieldname:=categoryname;columns1.fieldname:=categoryname;columns2.fieldname:=floors;columns2.fieldname:=floors;columns0.Width:=20*10;columns0.Width:=20*10;columns1.Width:=20*10;columns1.Width:=20*10;columns2.Width:=20*10;columns2.Width:=20*10;for I := 0 to 2 dofor I := 0 to 2 docolumn

133、si.Title.Alignment:=tacenter;columnsi.Title.Alignment:=tacenter;end;end;s:=if object_id(w)is not null drop table w;s:=if object_id(w)is not null drop table w;s:=s+ select roomid,categoryname,floors into w from rooms as a ;s:=s+ select roomid,categoryname,floors into w from rooms as a ;s:=s+ join roo

134、mcategories as b on a.categoryid=b.categoryid where isempty=1;s:=s+ join roomcategories as b on a.categoryid=b.categoryid where isempty=1;x1:=s;x1:=s;mandtext:=s;mandtext:=s;adocommand1.execute;adocommand1.execute;with adotable1 dowith adotable1 dobeginbeginclose;close;tablename:=w;tablename:=w;open

135、;open;end;end;end;end;6)6) 入住入住procedure TFormprocedure TForm 前台中前台中.Button2Click(Sender: TObject);.Button2Click(Sender: TObject);beginbeginr:=dbgrid1.selectedfield.text;r:=dbgrid1.selectedfield.text;form6.showmodal;form6.showmodal;mandtext:=x1;mandtext:=x1;adocommand1.execute;adocommand1.execute;wi

136、th adotable1 dowith adotable1 dobeginbeginclose;close;tablename:=w;tablename:=w;open;open;end;end;end;end;其中其中 form6form6 的代码已展示过,则不显示。的代码已展示过,则不显示。7)7) 脏房查看脏房查看procedure TFormprocedure TForm 前台中前台中.Button5Click(Sender: TObject);.Button5Click(Sender: TObject);var i:integer;var i:integer;s:string;s:s

137、tring;beginbeginf:=0;f:=0;with dbgrid1 dowith dbgrid1 dobeginbegincolumns.Clear;columns.Clear;for I := 0 to 2 dofor I := 0 to 2 docolumns.Add;columns.Add;columns0.Title.caption:=columns0.Title.caption:=房间号房间号; ;columns1.Title.caption:=columns1.Title.caption:=房间类型房间类型; ;columns2.Title.caption:=column

138、s2.Title.caption:=楼层楼层; ;columns0.fieldname:=roomid;columns0.fieldname:=roomid;columns1.fieldname:=categoryname;columns1.fieldname:=categoryname;columns2.fieldname:=floors;columns2.fieldname:=floors;1818页脚内容页脚内容K1+478K1+478K1+5888K1+5888 段左侧片石混凝土挡土墙第段左侧片石混凝土挡土墙第 1 1 部分部分columns0.Width:=20*10;columns

139、0.Width:=20*10;columns1.Width:=20*10;columns1.Width:=20*10;columns2.Width:=20*10;columns2.Width:=20*10;for I := 0 to 2 dofor I := 0 to 2 docolumnsi.Title.Alignment:=tacenter;columnsi.Title.Alignment:=tacenter;end;end;s:=if object_id(d)is not null drop table d;s:=if object_id(d)is not null drop table

140、 d;s:=s+ select roomid,categoryname,floors into d from rooms as a ;s:=s+ select roomid,categoryname,floors into d from rooms as a ;s:=s+ join roomcategories as b on a.categoryid=b.categoryid where isdirty=1;s:=s+ join roomcategories as b on a.categoryid=b.categoryid where isdirty=1;x2:=s;x2:=s;mandt

141、ext:=s;mandtext:=s;adocommand1.execute;adocommand1.execute;with adotable1 dowith adotable1 dobeginbeginclose;close;tablename:=d;tablename:=d;open;open;end;end;end;end;8)8)脏房更改按钮脏房更改按钮procedure TFormprocedure TForm 前台中前台中.Button6Click(Sender: TObject);.Button6Click(Sender: TObject);beginbeginr91:=dbg

142、rid1.selectedfield.text;r91:=dbgrid1.selectedfield.text;form9.showmodal;form9.showmodal;mandtext:=x2;mandtext:=x2;adocommand1.execute;adocommand1.execute;with adotable1 dowith adotable1 dobeginbeginclose;close;tablename:=d;tablename:=d;open;open;end;end;end;end;/form9/form9procedure TForm9.Button1Cl

143、ick(Sender: TObject);procedure TForm9.Button1Click(Sender: TObject);var s:string;var s:string;beginbegin/rooms/roomss:=update rooms set isempty=1,isdirty=0 where roomid=+r91+;s:=update rooms set isempty=1,isdirty=0 where roomid=+r91+;mandtext:=s;mandtext:=s;adocommand1.execute;adocommand1.execute;cl

144、ose;close;end;end;procedure TForm9.Button2Click(Sender: TObject);procedure TForm9.Button2Click(Sender: TObject);beginbeginclose;close;end;end;procedure TForm9.FormShow(Sender: TObject);procedure TForm9.FormShow(Sender: TObject);beginbeginlabel1.caption:=label1.caption:=确定确定+r91+r91+已打扫?已打扫?; ;end;en

145、d;/房间状态房间状态每隔每隔 1s1s 刷新一次刷新一次procedure TFormprocedure TForm 前台中前台中.Timer1Timer(Sender: TObject);.Timer1Timer(Sender: TObject);var c1,c2,c3:integer;var c1,c2,c3:integer;beginbeginwith adoquery1 dowith adoquery1 dobeginbeginclose;close;1919页脚内容页脚内容K1+478K1+478K1+5888K1+5888 段左侧片石混凝土挡土墙第段左侧片石混凝土挡土墙第 1

146、1 部分部分sql.Text:=select * from rooms where isusing=1 ;sql.Text:=select * from rooms where isusing=1 ;open;open;end;end;c1:=adoquery1.recordcount;c1:=adoquery1.recordcount;edit1.Text:=inttostr(c1);edit1.Text:=inttostr(c1);with adoquery1 dowith adoquery1 dobeginbeginclose;close;sql.Clear;sql.Clear;sql.

147、Text:=select * from rooms where isempty=1;sql.Text:=select * from rooms where isempty=1;open;open;end;end;c2:=adoquery1.recordcount;c2:=adoquery1.recordcount;edit2.Text:=inttostr(c2);edit2.Text:=inttostr(c2);with adoquery1 dowith adoquery1 dobeginbeginclose;close;sql.Clear;sql.Clear;sql.Text:=select

148、 * from rooms where isdirty=1;sql.Text:=select * from rooms where isdirty=1;open;open;end;end;c3:=adoquery1.recordcount;c3:=adoquery1.recordcount;edit3.Text:=inttostr(c3);edit3.Text:=inttostr(c3);end;end;(2 2)、客务中心)、客务中心主要功能是查询主要功能是查询procedure TFormprocedure TForm 客务中客务中.Button1Click(Sender: TObject

149、);.Button1Click(Sender: TObject);var s,ss,d1,d2,s1:string;var s,ss,d1,d2,s1:string;beginbegins:=combobox2.text;s:=combobox2.text;s1:=combobox1.text;s1:=combobox1.text;if s=if s=自选自选 then thenbeginbegind1:=edit1.text;d1:=edit1.text;d2:=edit2.text;d2:=edit2.text;if s1=if s1=按登记时间按登记时间 then thenbeginbe

150、ginss:=if object_id(kw)is not null drop table kw;ss:=if object_id(kw)is not null drop table kw;ss:=ss+ select a.customerid,customername,sex,country,province,city,address,isvip;ss:=ss+ select a.customerid,customername,sex,country,province,city,address,isvip;ss:=ss+ into kw from hotelcustomers as a jo

151、in hotelorders as b on a.customerid=b.customerid;ss:=ss+ into kw from hotelcustomers as a join hotelorders as b on a.customerid=b.customerid;ss:=ss+ where orderdate between+d1+ and +d2+;ss:=ss+ where orderdate between+d1+ and +d2+;end;end;if s1=if s1=按结账时间按结账时间 then thenbeginbeginss:=if object_id(kw

152、)is not null drop table kw;ss:=if object_id(kw)is not null drop table kw;ss:=ss+ select customerid,customername,sex,country,province,city,address,isvip into kw ;ss:=ss+ select customerid,customername,sex,country,province,city,address,isvip into kw ;ss:=ss+ from history where offdate between+d1+ and

153、+d2+;ss:=ss+ from history where offdate between+d1+ and +d2+;end;end;end;end;mandtext:=ss;mandtext:=ss;adocommand1.execute;adocommand1.execute;with adotable1 dowith adotable1 dobeginbeginclose;close;tablename:=kw;tablename:=kw;open;open;end;end;end;end;procedure TFormprocedure TForm 客务中客务中.ComboBox1

154、Change(Sender: TObject);.ComboBox1Change(Sender: TObject);var s,s1,ss:string;var s,s1,ss:string;beginbegin2020页脚内容页脚内容K1+478K1+478K1+5888K1+5888 段左侧片石混凝土挡土墙第段左侧片石混凝土挡土墙第 1 1 部分部分s:=combobox1.text;s:=combobox1.text;if (s=if (s=按登记时间按登记时间)or(s=)or(s=按结账时间按结账时间) then) thenbeginbegincombobox2.visible:=t

155、rue;combobox2.visible:=true;combobox2.itemindex:=0;combobox2.itemindex:=0;edit1.visible:=true;edit1.visible:=true;edit2.visible:=true;edit2.visible:=true;label2.visible:=true;label2.visible:=true;button1.visible:=true;button1.visible:=true;endendelseelsebeginbegincombobox2.visible:=false;combobox2.v

156、isible:=false;combobox2.ItemIndex:=0;combobox2.ItemIndex:=0;edit1.visible:=false;edit1.visible:=false;edit2.visible:=false;edit2.visible:=false;label2.visible:=false;label2.visible:=false;button1.visible:=false;button1.visible:=false;end;end;if (s=if (s=按在用房间按在用房间)or(s=)or(s=按曾住房间按曾住房间) then) thenbe

157、ginbegincombobox3.visible:=true;combobox3.visible:=true;endendelseelsecombobox3.visible:=false;combobox3.visible:=false;/按在用房间按在用房间if s=if s=按在用房间按在用房间 then thenbeginbegincombobox3.clear;combobox3.clear;with adoquery1 dowith adoquery1 dobeginbeginclose;close;ss:=select roomid from rooms where isusin

158、g=1;ss:=select roomid from rooms where isusing=1;sql.text:=ss;sql.text:=ss;open;open;while not eofwhile not eofdodobeginbegins1:=fieldbyname(roomid).asstring;s1:=fieldbyname(roomid).asstring;combobox3.items.add(s1);combobox3.items.add(s1);next;next;end;end;end;end;combobox3.itemindex:=0;combobox3.it

159、emindex:=0;end;end;/按曾住房间按曾住房间if s=if s=按曾住房间按曾住房间 then thenbeginbegincombobox3.clear;combobox3.clear;with adoquery1 dowith adoquery1 dobeginbeginclose;close;sql.clear;sql.clear;ss:=select distinct roomid from hotelorders as a join hotelorderitems as b on a.orderid=b.orderid;ss:=select distinct room

160、id from hotelorders as a join hotelorderitems as b on a.orderid=b.orderid;ss:=ss+ join history as c on a.customerid=c.customerid;ss:=ss+ join history as c on a.customerid=c.customerid;sql.text:=ss;sql.text:=ss;open;open;while not eofwhile not eofdodobeginbegins1:=fieldbyname(roomid).asstring;s1:=fie

161、ldbyname(roomid).asstring;combobox3.items.add(s1);combobox3.items.add(s1);next;next;end;end;end;end;combobox3.itemindex:=0;combobox3.itemindex:=0;end;end;2121页脚内容页脚内容K1+478K1+478K1+5888K1+5888 段左侧片石混凝土挡土墙第段左侧片石混凝土挡土墙第 1 1 部分部分if s=if s=未结账客单未结账客单 then thenbeginbeginss:=if object_id(kw)is not null dr

162、op table kw;ss:=if object_id(kw)is not null drop table kw;ss:=ss+ select customerid,customername,sex,country,province,city,address,isvip into kw from hotelcustomers;ss:=ss+ select customerid,customername,sex,country,province,city,address,isvip into kw from hotelcustomers;mandtext:=ss;mandtext:=ss;ad

163、ocommand1.execute;adocommand1.execute;with adotable1 dowith adotable1 dobeginbeginclose;close;tablename:=kw;tablename:=kw;open;open;end;end;end;end;end;end;procedure TFormprocedure TForm 客务中客务中.ComboBox2Change(Sender: TObject);.ComboBox2Change(Sender: TObject);var s,s1,d1,d2,ss,tody:string;var s,s1,

164、d1,d2,ss,tody:string;beginbegindatetimetostring(tody,yyyy-mm-dd,now();datetimetostring(tody,yyyy-mm-dd,now();s:=combobox2.text;s:=combobox2.text;s1:=combobox1.text;s1:=combobox1.text;if s=if s=自选自选 then thenbeginbegin/ss:=;/ss:=;edit1.visible:=true;edit1.visible:=true;edit2.visible:=true;edit2.visib

165、le:=true;label2.visible:=true;label2.visible:=true;button1.visible:=true;button1.visible:=true;endendelseelsebeginbeginedit1.visible:=false;edit1.visible:=false;edit2.visible:=false;edit2.visible:=false;label2.visible:=false;label2.visible:=false;button1.visible:=false;button1.visible:=false;end;end

166、;if s=if s=今天今天 then thenbeginbeginedit1.visible:=false;edit1.visible:=false;edit2.visible:=false;edit2.visible:=false;label1.visible:=false;label1.visible:=false;button1.visible:=false;button1.visible:=false;if s1=if s1=按登记时间按登记时间 then thenbeginbeginss:=if object_id(kw)is not null drop table kw;ss:

167、=if object_id(kw)is not null drop table kw;ss:=ss+ select a.customerid,customername,sex,country,province,city,address,isvip;ss:=ss+ select a.customerid,customername,sex,country,province,city,address,isvip;ss:=ss+ into kw from hotelcustomers as a join hotelorders as b on a.customerid=b.customerid;ss:

168、=ss+ into kw from hotelcustomers as a join hotelorders as b on a.customerid=b.customerid;ss:=ss+ where orderdate=+tody+;ss:=ss+ where orderdate=+tody+;end;end;if s1=if s1=按结账时间按结账时间 then thenbeginbeginss:=if object_id(kw)is not null drop table kw;ss:=if object_id(kw)is not null drop table kw;ss:=ss+

169、 select customerid,customername,sex,country,province,city,address,isvip into kw ;ss:=ss+ select customerid,customername,sex,country,province,city,address,isvip into kw ;ss:=ss+ from history where offdate=+tody+;ss:=ss+ from history where offdate=+tody+;end;end;mandtext:=ss;mandtext:=ss;adocommand1.e

170、xecute;adocommand1.execute;with adotable1 dowith adotable1 dobeginbeginclose;close;tablename:=kw;tablename:=kw;open;open;end;end;end;end;if s=if s=昨天昨天 then then2222页脚内容页脚内容K1+478K1+478K1+5888K1+5888 段左侧片石混凝土挡土墙第段左侧片石混凝土挡土墙第 1 1 部分部分beginbegintody:=datetostr(strtodate(tody)-1);tody:=datetostr(strtod

171、ate(tody)-1);edit1.visible:=false;edit1.visible:=false;edit2.visible:=false;edit2.visible:=false;label1.visible:=false;label1.visible:=false;button1.visible:=false;button1.visible:=false;if s1=if s1=按登记时间按登记时间 then thenbeginbeginss:=if object_id(kw)is not null drop table kw;ss:=if object_id(kw)is no

172、t null drop table kw;ss:=ss+ select a.customerid,customername,sex,country,province,city,address,isvip;ss:=ss+ select a.customerid,customername,sex,country,province,city,address,isvip;ss:=ss+ into kw from hotelcustomers as a join hotelorders as b on a.customerid=b.customerid;ss:=ss+ into kw from hote

173、lcustomers as a join hotelorders as b on a.customerid=b.customerid;ss:=ss+ where orderdate=+tody+;ss:=ss+ where orderdate=+tody+;end;end;if s1=if s1=按结账时间按结账时间 then thenbeginbeginss:=if object_id(kw)is not null drop table kw;ss:=if object_id(kw)is not null drop table kw;ss:=ss+ select customerid,cus

174、tomername,sex,country,province,city,address,isvip into kw ;ss:=ss+ select customerid,customername,sex,country,province,city,address,isvip into kw ;ss:=ss+ from history where offdate=+tody+;ss:=ss+ from history where offdate=+tody+;end;end;mandtext:=ss;mandtext:=ss;adocommand1.execute;adocommand1.exe

175、cute;with adotable1 dowith adotable1 dobeginbeginclose;close;tablename:=kw;tablename:=kw;open;open;end;end;end;end;end;end;procedure TFormprocedure TForm 客务中客务中.ComboBox3Change(Sender: TObject);.ComboBox3Change(Sender: TObject);var s,s1,ss:string;i:integer;var s,s1,ss:string;i:integer;beginbegins:=c

176、ombobox3.text;s:=combobox3.text;s1:=combobox1.text;s1:=combobox1.text;if s1=if s1=按在用房间按在用房间 then thenbeginbeginss:=if object_id(kw)is not null drop table kw;ss:=if object_id(kw)is not null drop table kw;ss:=ss+ select a.customerid,customername,sex,country,province,city,address,isvip;ss:=ss+ select

177、a.customerid,customername,sex,country,province,city,address,isvip;ss:=ss+ into kw from hotelcustomers as a join hotelorders as b on a.customerid=b.customerid;ss:=ss+ into kw from hotelcustomers as a join hotelorders as b on a.customerid=b.customerid;ss:=ss+ join hotelorderitems as c on b.orderid=c.o

178、rderid where roomid=+s+;ss:=ss+ join hotelorderitems as c on b.orderid=c.orderid where roomid=+s+;end;end;if s1=if s1=按曾住房间按曾住房间 then thenbeginbeginss:=if object_id(kw)is not null drop table kw;ss:=if object_id(kw)is not null drop table kw;ss:=ss+ select a.customerid,customername,sex,country,provinc

179、e,city,address,isvip into kw from history as a;ss:=ss+ select a.customerid,customername,sex,country,province,city,address,isvip into kw from history as a;ss:=ss+ join hotelorders as b on a.customerid=b.customerid;ss:=ss+ join hotelorders as b on a.customerid=b.customerid;ss:=ss+ join hotelorderitems

180、 as c on b.orderid=c.orderid where roomid=+s+;ss:=ss+ join hotelorderitems as c on b.orderid=c.orderid where roomid=+s+;end;end;mandtext:=ss;mandtext:=ss;adocommand1.execute;adocommand1.execute;with adotable1 dowith adotable1 dobeginbeginclose;close;tablename:=kw;tablename:=kw;open;open;end;end;end;

181、end;procedure TFormprocedure TForm 客务中客务中.DBGrid1DblClick(Sender: TObject);.DBGrid1DblClick(Sender: TObject);beginbeginr101:=combobox1.text;r101:=combobox1.text;if r101=if r101=按登记时间按登记时间 then then2323页脚内容页脚内容K1+478K1+478K1+5888K1+5888 段左侧片石混凝土挡土墙第段左侧片石混凝土挡土墙第 1 1 部分部分elseelsebeginbeginr10:=dbgrid1.

182、selectedfield.text;r10:=dbgrid1.selectedfield.text;form11.showmodal;form11.showmodal;end;end;end;end;procedure TFormprocedure TForm 客务中客务中.FormKeyDown(Sender: TObject; var Key: Word;.FormKeyDown(Sender: TObject; var Key: Word;Shift: TShiftState);Shift: TShiftState);beginbeginif (key=13) or (key=40)

183、thenif (key=13) or (key=40) thenbeginbeginkey:=0;key:=0;selectnext(activecontrol,true,true);selectnext(activecontrol,true,true);end;end;if key=38 thenif key=38 thenbeginbeginkey:=0;key:=0;selectnext(activecontrol,false,true);selectnext(activecontrol,false,true);end;end;end;end;procedure TFormprocedu

184、re TForm 客务中客务中.FormShow(Sender: TObject);.FormShow(Sender: TObject);var s:string;i:integer;var s:string;i:integer;beginbeginedit1.text:=;edit1.text:=;edit2.text:=;edit2.text:=;combobox3.text:=;combobox3.text:=;edit1.visible:=false;edit1.visible:=false;edit2.visible:=false;edit2.visible:=false;label

185、2.visible:=false;label2.visible:=false;button1.visible:=false;button1.visible:=false;combobox1.items.add(combobox1.items.add(按在用房间按在用房间););combobox1.items.add(combobox1.items.add(按曾住房间按曾住房间););combobox1.items.add(combobox1.items.add(按登记时间按登记时间););combobox1.items.add(combobox1.items.add(按结账时间按结账时间);)

186、;combobox1.items.add(combobox1.items.add(未结账客单未结账客单););combobox1.itemindex:=0;combobox1.itemindex:=0;combobox2.items.add(combobox2.items.add(自选自选););combobox2.items.add(combobox2.items.add(今天今天););combobox2.items.add(combobox2.items.add(昨天昨天););combobox2.itemindex:=0;combobox2.itemindex:=0;combobox2

187、.visible:=false;combobox2.visible:=false;with dbgrid1 dowith dbgrid1 dobeginbegincolumns.clear;columns.clear;for i := 0 to 7 dofor i := 0 to 7 docolumns.add;columns.add;columns0.title.caption:=columns0.title.caption:=客户编码客户编码; ;columns1.title.caption:=columns1.title.caption:=客户名称客户名称; ;columns2.titl

188、e.caption:=columns2.title.caption:=性别性别; ;columns3.title.caption:=columns3.title.caption:=国家国家; ;columns4.title.caption:=columns4.title.caption:=省市省市; ;columns5.title.caption:=columns5.title.caption:=市县市县; ;columns6.title.caption:=columns6.title.caption:=地址地址; ;columns7.title.caption:=columns7.title

189、.caption:=是否为会员是否为会员; ;for I := 0 to 7 dofor I := 0 to 7 docolumnsi.title.alignment:=tacenter;columnsi.title.alignment:=tacenter;columns0.fieldname:=customerid;columns0.fieldname:=customerid;columns1.fieldname:=customername;columns1.fieldname:=customername;columns2.fieldname:=sex;columns2.fieldname:

190、=sex;columns3.fieldname:=country;columns3.fieldname:=country;columns4.fieldname:=province;columns4.fieldname:=province;columns5.fieldname:=city;columns5.fieldname:=city;columns6.fieldname:=address;columns6.fieldname:=address;2424页脚内容页脚内容K1+478K1+478K1+5888K1+5888 段左侧片石混凝土挡土墙第段左侧片石混凝土挡土墙第 1 1 部分部分col

191、umns7.fieldname:=isvip;columns7.fieldname:=isvip;for I := 0 to 7 dofor I := 0 to 7 docolumnsi.width:=100;columnsi.width:=100;end;end;end;end;/form11/form11procedure TForm11.FormShow(Sender: TObject);procedure TForm11.FormShow(Sender: TObject);var s:string;var s:string;beginbeginedit1.readonly:=true;

192、edit1.readonly:=true;edit2.readonly:=true;edit2.readonly:=true;edit3.readonly:=true;edit3.readonly:=true;edit4.readonly:=true;edit4.readonly:=true;edit5.readonly:=true;edit5.readonly:=true;edit6.readonly:=true;edit6.readonly:=true;with adoquery1 dowith adoquery1 dobeginbeginclose;close;if (r101=if (

193、r101=未结账客单未结账客单)or (r101=)or (r101=按在用房间按在用房间) then) thenbeginbegins:=select customername,sex,roomid,orderdate ,amount from hotelcustomers as a;s:=select customername,sex,roomid,orderdate ,amount from hotelcustomers as a;s:=s+ join hotelorders as b on a.customerid=b.customerid;s:=s+ join hotelorders

194、 as b on a.customerid=b.customerid;s:=s+ join hotelorderitems as c on b.orderid=c.orderid where a.customerid=+r10+;s:=s+ join hotelorderitems as c on b.orderid=c.orderid where a.customerid=+r10+;sql.text:=s;sql.text:=s;open;open;edit1.text:=fieldbyname(customername).asstring;edit1.text:=fieldbyname(

195、customername).asstring;edit2.text:=fieldbyname(sex).asstring;edit2.text:=fieldbyname(sex).asstring;edit3.text:=fieldbyname(roomid).asstring;edit3.text:=fieldbyname(roomid).asstring;edit4.text:=fieldbyname(orderdate).asstring;edit4.text:=fieldbyname(orderdate).asstring;edit5.text:=;edit5.text:=;edit6

196、.text:=;edit6.text:=;end;end;if (r101=if (r101=按曾住房间按曾住房间)or( r101=)or( r101=按结账时间按结账时间) then) thenbeginbegins:=select customername,sex,roomid,indate,offdate,amount from history as a;s:=select customername,sex,roomid,indate,offdate,amount from history as a;s:=s+ join hotelorders as b on a.customerid

197、=b.customerid;s:=s+ join hotelorders as b on a.customerid=b.customerid;s:=s+ join hotelorderitems as c on b.orderid=c.orderid where a.customerid=+r10+;s:=s+ join hotelorderitems as c on b.orderid=c.orderid where a.customerid=+r10+;sql.clear;sql.clear;sql.text:=s;sql.text:=s;open;open;edit1.text:=fie

198、ldbyname(customername).asstring;edit1.text:=fieldbyname(customername).asstring;edit2.text:=fieldbyname(sex).asstring;edit2.text:=fieldbyname(sex).asstring;edit3.text:=fieldbyname(roomid).asstring;edit3.text:=fieldbyname(roomid).asstring;edit4.text:=fieldbyname(indate).asstring;edit4.text:=fieldbynam

199、e(indate).asstring;edit5.text:=fieldbyname(offdate).asstring;edit5.text:=fieldbyname(offdate).asstring;edit6.text:=fieldbyname(amount).asstring;edit6.text:=fieldbyname(amount).asstring;end;end;end;end;end;end;(3 3)、预订管理)、预订管理1)1)查询查询procedure TFormprocedure TForm 预订管预订管.Button2Click(Sender: TObject)

200、;.Button2Click(Sender: TObject);var ss:string;var ss:string;beginbeginss:=edit1.text;ss:=edit1.text;with adoquery1 dowith adoquery1 dobeginbeginclose;close;sql.clear;sql.clear;2525页脚内容页脚内容K1+478K1+478K1+5888K1+5888 段左侧片石混凝土挡土墙第段左侧片石混凝土挡土墙第 1 1 部分部分sql.text:=select * from reserve where intime=+ss+;sq

201、l.text:=select * from reserve where intime=+ss+;open;open;end;end;end;end;procedure TFormprocedure TForm 预订管预订管.ComboBox1Change(Sender: TObject);.ComboBox1Change(Sender: TObject);var s,ss:string;var s,ss:string;s1,s2,s3,s4:string;s1,s2,s3,s4:string;beginbegins:=combobox1.Text;s:=combobox1.Text;if s=

202、if s=自选自选 then thenbeginbeginedit1.visible:=true;edit1.visible:=true;button2.visible:=truebutton2.visible:=trueendendelseelsebeginbeginedit1.visible:=false;edit1.visible:=false;button2.visible:=false;button2.visible:=false;end;end;if s=if s=所有所有 then thenbeginbeginwith adoquery1 dowith adoquery1 dob

203、eginbeginclose;close;sql.clear;sql.clear;sql.text:=select * from reserve;sql.text:=select * from reserve;open;open;end;end;end;end;datetimetostring(s1,yyyy-mm-dd,now();datetimetostring(s1,yyyy-mm-dd,now();if s=if s=今天今天 then thenbeginbeginwith adoquery1 dowith adoquery1 dobeginbeginclose;close;sql.c

204、lear;sql.clear;sql.text:=select * from reserve where intime=+s1+;sql.text:=select * from reserve where intime=+s1+;open;open;end;end;end;end;s2:=datetostr(strtodate(s1)+1);s2:=datetostr(strtodate(s1)+1);if s=if s=明天明天 then thenbeginbeginwith adoquery1 dowith adoquery1 dobeginbeginclose;close;sql.cle

205、ar;sql.clear;sql.text:=select * from reserve where intime=+s2+;sql.text:=select * from reserve where intime=+s2+;open;open;end;end;end;end;s2:=datetostr(startoftheweek(now();s2:=datetostr(startoftheweek(now();s3:=datetostr(endoftheweek(now();s3:=datetostr(endoftheweek(now();if s=if s=本周本周 then thenb

206、eginbeginwith adoquery1 dowith adoquery1 dobeginbeginclose;close;sql.clear;sql.clear;sql.text:=select * from reserve where intime between+s2+ and +s3+;sql.text:=select * from reserve where intime between+s2+ and +s3+;/showmessage(sql.text);/showmessage(sql.text);open;open;end;end;end;end;2626页脚内容页脚内

207、容K1+478K1+478K1+5888K1+5888 段左侧片石混凝土挡土墙第段左侧片石混凝土挡土墙第 1 1 部分部分s3:=datetostr(startofthemonth(now();s3:=datetostr(startofthemonth(now();s4:=datetostr(endofthemonth(now();s4:=datetostr(endofthemonth(now();if s=if s=本月本月 then thenbeginbeginwith adoquery1 dowith adoquery1 dobeginbeginclose;close;sql.clear

208、;sql.clear;sql.text:=select * from reserve where intime between+s3+ and +s4+;sql.text:=select * from reserve where intime between+s3+ and +s4+;open;open;end;end;end;end;end;end;procedure TFormprocedure TForm 预订管预订管.FormShow(Sender: TObject);.FormShow(Sender: TObject);var i:integer;var i:integer;begi

209、nbegincombobox1.items.add(combobox1.items.add(所有所有););combobox1.items.add(combobox1.items.add(自选自选););combobox1.Items.Add(combobox1.Items.Add(今天今天););combobox1.items.add(combobox1.items.add(明天明天););combobox1.items.add(combobox1.items.add(本周本周););combobox1.items.add(combobox1.items.add(本月本月););combob

210、ox1.ItemIndex:=0;combobox1.ItemIndex:=0;edit1.visible:=false;edit1.visible:=false;edit1.text:=;edit1.text:=;button2.visible:=false;button2.visible:=false;with dbgrid1 dowith dbgrid1 dobeginbegincolumns.clear;columns.clear;for I := 0 to 3 dofor I := 0 to 3 docolumns.add;columns.add;columns0.title.cap

211、tion:=columns0.title.caption:=房间号房间号; ;columns1.title.caption:=columns1.title.caption:=客户姓名客户姓名; ;columns2.title.caption:=columns2.title.caption:=入住时间入住时间; ;columns3.title.caption:=columns3.title.caption:=天数天数; ;for I := 0 to 3 dofor I := 0 to 3 dobeginbegincolumnsi.width:=150;columnsi.width:=150;co

212、lumnsi.title.alignment:=tacenter;columnsi.title.alignment:=tacenter;columnsi.alignment:=taleftjustify;columnsi.alignment:=taleftjustify;end;end;columns0.fieldname:=roomid;columns0.fieldname:=roomid;columns1.fieldname:=customername;columns1.fieldname:=customername;columns2.fieldname:=intime;columns2.

213、fieldname:=intime;columns3.fieldname:=time;columns3.fieldname:=time;with adoquery1 dowith adoquery1 dobeginbeginclose;close;sql.clear;sql.clear;sql.text:=select * from reserve;sql.text:=select * from reserve;open;open;end;end;end;end;end;end;2)2)新增新增procedure TFormprocedure TForm 预订管预订管.Button1Click

214、(Sender: TObject);.Button1Click(Sender: TObject);beginbeginform13.showmodal;form13.showmodal;combobox1.text:=combobox1.text:=所有所有; ;with adoquery1 dowith adoquery1 dobeginbegin2727页脚内容页脚内容K1+478K1+478K1+5888K1+5888 段左侧片石混凝土挡土墙第段左侧片石混凝土挡土墙第 1 1 部分部分close;close;sql.clear;sql.clear;sql.text:=select * f

215、rom reserve;sql.text:=select * from reserve;open;open;end;end;end;end;/form13/form13procedure TForm13.Button1Click(Sender: TObject);procedure TForm13.Button1Click(Sender: TObject);var s,ss,s1,s2,s3,s4,intime1,error:string;var s,ss,s1,s2,s3,s4,intime1,error:string;t1,t2,tax1:integer;t1,t2,tax1:intege

216、r;beginbegins:=combobox1.text;s:=combobox1.text;if s=if s=今天今天 then thenintime1:=datetostr(now();intime1:=datetostr(now();if s=if s=明天明天 then thenintime1:=datetostr(now()+1);intime1:=datetostr(now()+1);if s=if s=自选自选 then thenintime1:=edit1.text;intime1:=edit1.text;tax1:=0;tax1:=0;if edit3.text= the

217、nif edit3.text= thenbeginbeginerror:=error:=姓名不能为空!姓名不能为空!; ;tax1:=1;tax1:=1;end;end;t1:=0;t1:=0;t2:=0;t2:=0;if length(edit4.text)4 thenif length(edit4.text)4 thenbeginbegint1:=1;t1:=1;tax1:=1;tax1:=1;end;end;if not trystrtoint(edit4.text,tax1) thenif not trystrtoint(edit4.text,tax1) thenbeginbegint

218、2:=1;t2:=1;tax1:=1;tax1:=1;end;end;if (t1=0)and (t2=0) thenif (t1=0)and (t2=0) thenelseelseerror:=error+char(13)+error:=error+char(13)+证件号码输入错误!证件号码输入错误!; ;if strtoint(edit5.text)0 thenif strtoint(edit5.text)0 thenbeginbeginerror:=error+char(13)+error:=error+char(13)+天数输入错误!天数输入错误!; ;tax1:=1;tax1:=1

219、;end;end;if tax1=1 thenif tax1=1 thenshowmessage(error)showmessage(error)elseelsebeginbeginwith adoquery1 dowith adoquery1 dobeginbeginclose;close;sql.clear;sql.clear;sql.text:=select * from ydfj;sql.text:=select * from ydfj;open;open;while not eofwhile not eofdodobeginbegins1:=fieldbyname(roomid).a

220、sstring;s1:=fieldbyname(roomid).asstring;/rooms/roomswith adoquery2 dowith adoquery2 dobeginbeginclose;close;sql.clear;sql.clear;sql.text:=select * from rooms where roomid=+s1+;sql.text:=select * from rooms where roomid=+s1+;2828页脚内容页脚内容K1+478K1+478K1+5888K1+5888 段左侧片石混凝土挡土墙第段左侧片石混凝土挡土墙第 1 1 部分部分ope

221、n;open;edit;edit;fieldbyname(isempty).asstring:=0;fieldbyname(isempty).asstring:=0;fieldbyname(isreserve).asstring:=1;fieldbyname(isreserve).asstring:=1;post;post;end;end;/reserve/reservewith adoquery2 dowith adoquery2 dobeginbeginclose;close;sql.clear;sql.clear;sql.text:=select * from reserve;sql.t

222、ext:=select * from reserve;open;open;append;append;edit;edit;fieldbyname(roomid).asstring:=s1;fieldbyname(roomid).asstring:=s1;fieldbyname(customerid).asstring:=edit4.text;fieldbyname(customerid).asstring:=edit4.text;fieldbyname(customername).asstring:=edit3.text;fieldbyname(customername).asstring:=

223、edit3.text;fieldbyname(intime).asstring:=intime1;fieldbyname(intime).asstring:=intime1;fieldbyname(time).asstring:=edit5.text;fieldbyname(time).asstring:=edit5.text;post;post;end;end;next;next;end;end;end;end;end;end;showmessage(showmessage(预订成功!预订成功!););end;end;procedure TForm13.Button2Click(Sender

224、: TObject);procedure TForm13.Button2Click(Sender: TObject);beginbeginclose;close;end;end;procedure TForm13.Button3Click(Sender: TObject);procedure TForm13.Button3Click(Sender: TObject);beginbegincombobox2.itemindex:=0;combobox2.itemindex:=0;combobox3.text:=;combobox3.text:=;/ss:=combobox3.text;/ss:=

225、combobox3.text;tax:=1;tax:=1;end;end;procedure TForm13.Button4Click(Sender: TObject);procedure TForm13.Button4Click(Sender: TObject);var s:string;var s:string;beginbegins:=trim(dbgrid1.SelectedField.text);s:=trim(dbgrid1.SelectedField.text);if application.MessageBox(pchar(if application.MessageBox(p

226、char(确定删除?确定删除?),caption,4+32)=6 then),caption,4+32)=6 thenadotable1.delete;adotable1.delete;end;end;procedure TForm13.Button5Click(Sender: TObject);procedure TForm13.Button5Click(Sender: TObject);beginbeginmonthcalendar1.visible:=true;monthcalendar1.visible:=true;end;end;procedure TForm13.ComboBox1

227、Change(Sender: TObject);procedure TForm13.ComboBox1Change(Sender: TObject);var s:string;var s:string;beginbegins:=combobox1.text;s:=combobox1.text;if s=if s=自选自选 then thenbeginbeginedit1.visible:=true;edit1.visible:=true;button5.visible:=true;button5.visible:=true;endend2929页脚内容页脚内容K1+478K1+478K1+58

228、88K1+5888 段左侧片石混凝土挡土墙第段左侧片石混凝土挡土墙第 1 1 部分部分elseelsebeginbeginedit1.visible:=false;edit1.visible:=false;button5.visible:=false;button5.visible:=false;end;end;end;end;procedure TForm13.ComboBox2Change(Sender: TObject);procedure TForm13.ComboBox2Change(Sender: TObject);var s,ss,sss:string;var s,ss,sss:

229、string;beginbegins:=combobox2.text;s:=combobox2.text;combobox3.Clear;combobox3.Clear;with adoquery1 dowith adoquery1 dobeginbeginclose;close;sql.clear;sql.clear;ss:=select roomid from rooms as a ;ss:=select roomid from rooms as a ;ss:=ss+ join roomcategories as b on a.categoryid=b.categoryid where i

230、sempty=1 and categoryname=+s+;ss:=ss+ join roomcategories as b on a.categoryid=b.categoryid where isempty=1 and categoryname=+s+;sql.text:=ss;sql.text:=ss;open;open;while not eofwhile not eofdodobeginbeginsss:=fieldbyname(roomid).asstring;sss:=fieldbyname(roomid).asstring;combobox3.items.add(sss);co

231、mbobox3.items.add(sss);next;next;end;end;end;end;combobox3.itemindex:=0;combobox3.itemindex:=0;end;end;procedure TForm13.ComboBox3Change(Sender: TObject);procedure TForm13.ComboBox3Change(Sender: TObject);var s,ss,s1,s2,s3,s4:string;var s,ss,s1,s2,s3,s4:string;beginbeginss:=combobox3.text;ss:=combob

232、ox3.text;if tax=0 thenif tax=0 thenbeginbegins:=if object_id(ydfj)is not null drop table ydfj;s:=if object_id(ydfj)is not null drop table ydfj;s:=s+ select roomid,categoryname,unitprice,floors into ydfj from rooms as a ;s:=s+ select roomid,categoryname,unitprice,floors into ydfj from rooms as a ;s:=

233、s+ join roomcategories as b on a.categoryid=b.categoryid where roomid=+ss+;s:=s+ join roomcategories as b on a.categoryid=b.categoryid where roomid=+ss+;mandtext:=s;mandtext:=s;adocommand1.execute;adocommand1.execute;with adotable1 dowith adotable1 dobeginbeginclose;close;tablename:=ydfj;tablename:=

234、ydfj;open;open;end;end;endendelseelsebeginbeginwith adoquery1 dowith adoquery1 dobeginbeginclose;close;sql.clear;sql.clear;s:= select roomid,categoryname,unitprice,floorss:= select roomid,categoryname,unitprice,floorsfrom rooms as a ;from rooms as a ;s:=s+ join roomcategories as b on a.categoryid=b.

235、categoryid where roomid=+ss+;s:=s+ join roomcategories as b on a.categoryid=b.categoryid where roomid=+ss+;sql.text:=s;sql.text:=s;open;open;s1:=fieldbyname(roomid).asstring;s1:=fieldbyname(roomid).asstring;s2:=fieldbyname(categoryname).asstring;s2:=fieldbyname(categoryname).asstring;s3:=fieldbyname

236、(unitprice).asstring;s3:=fieldbyname(unitprice).asstring;s4:=fieldbyname(floors).asstring;s4:=fieldbyname(floors).asstring;end;end;3030页脚内容页脚内容K1+478K1+478K1+5888K1+5888 段左侧片石混凝土挡土墙第段左侧片石混凝土挡土墙第 1 1 部分部分with adotable1 dowith adotable1 dobeginbeginappend;append;edit;edit;fieldbyname(roomid).asstring:

237、=s1;fieldbyname(roomid).asstring:=s1;fieldbyname(categoryname).asstring:=s2;fieldbyname(categoryname).asstring:=s2;fieldbyname(unitprice).asstring:=s3;fieldbyname(unitprice).asstring:=s3;fieldbyname(floors).asstring:=s4;fieldbyname(floors).asstring:=s4;post;post;end;end;end;end;end;end;procedure TFo

238、rm13.FormShow(Sender: TObject);procedure TForm13.FormShow(Sender: TObject);var i:integer;var i:integer;s,ss:string;s,ss:string;beginbegintax:=0;tax:=0;combobox1.items.add(combobox1.items.add(自选自选););combobox1.Items.Add(combobox1.Items.Add(今天今天););combobox1.items.add(combobox1.items.add(明天明天););combo

239、box1.itemindex:=0;combobox1.itemindex:=0;edit1.text:=;edit1.text:=;edit3.text:=;edit3.text:=;edit4.text:=;edit4.text:=;edit5.text:=;edit5.text:=;monthcalendar1.visible:=false;monthcalendar1.visible:=false;combobox2.items.add(combobox2.items.add(标准单人间标准单人间););combobox2.items.add(combobox2.items.add(标

240、准双人间标准双人间););combobox2.items.add(combobox2.items.add(豪华单人间豪华单人间););combobox2.items.add(combobox2.items.add(豪华双人间豪华双人间););combobox2.itemindex:=0;combobox2.itemindex:=0;combobox3.text:=;combobox3.text:=;with dbgrid1 dowith dbgrid1 dobeginbegincolumns.Clear;columns.Clear;for I := 0 to 3 dofor I := 0 to

241、 3 docolumns.Add;columns.Add;columns0.Title.caption:=columns0.Title.caption:=房间号房间号; ;columns1.Title.caption:=columns1.Title.caption:=房间类型房间类型; ;columns2.title.caption:=columns2.title.caption:=价格价格; ;columns3.Title.caption:=columns3.Title.caption:=楼层楼层; ;columns0.fieldname:=roomid;columns0.fieldname

242、:=roomid;columns1.fieldname:=categoryname;columns1.fieldname:=categoryname;columns2.fieldname:=unitprice;columns2.fieldname:=unitprice;columns3.fieldname:=floors;columns3.fieldname:=floors;columns0.Width:=94;columns0.Width:=94;columns1.Width:=94;columns1.Width:=94;columns2.Width:=94;columns2.Width:=

243、94;columns3.width:=94;columns3.width:=94;for I := 0 to 3 dofor I := 0 to 3 dobeginbegincolumnsi.Title.Alignment:=tacenter;columnsi.Title.Alignment:=tacenter;columnsi.alignment:=taleftjustify;columnsi.alignment:=taleftjustify;end;end;s:= if object_id(ydfj)is not null drop table ydfj;s:= if object_id(

244、ydfj)is not null drop table ydfj;mandtext:=s;mandtext:=s;adocommand1.execute;adocommand1.execute;end;end;end;end;procedure TForm13.MonthCalendar1Click(Sender: TObject);procedure TForm13.MonthCalendar1Click(Sender: TObject);var s:string;var s:string;beginbegin3131页脚内容页脚内容K1+478K1+478K1+5888K1+5888 段左

245、侧片石混凝土挡土墙第段左侧片石混凝土挡土墙第 1 1 部分部分s:=datetostr(monthcalendar1.date);s:=datetostr(monthcalendar1.date);/showmessage(s);/showmessage(s);edit1.text:=s;edit1.text:=s;monthcalendar1.visible:=false;monthcalendar1.visible:=false;end;end;这里新增的功能跳出窗口的有所不同。当这里新增的功能跳出窗口的有所不同。当 dbgriddbgrid 中已有一条记录后,点击新增按钮,中已有一条记录

246、后,点击新增按钮,房间类型和房间号又能重新选择,再次选择的房间再填入房间类型和房间号又能重新选择,再次选择的房间再填入 dbgriddbgrid 中。中。(4 4)、房费收入日报表)、房费收入日报表查看每天的收入。查看每天的收入。procedure TFormprocedure TForm 房费收房费收.Button1Click(Sender: TObject);.Button1Click(Sender: TObject);/var s:string;/var s:string;beginbeginmonthcalendar1.visible:=true;monthcalendar1.visi

247、ble:=true;end;end;procedure TFormprocedure TForm 房费收房费收.Button2Click(Sender: TObject);.Button2Click(Sender: TObject);var s,s1:string;var s,s1:string;beginbeginwith adoquery1 dowith adoquery1 dobeginbeginclose;close;sql.text:=select sum(unitprice) as sum from ffr;sql.text:=select sum(unitprice) as su

248、m from ffr;open;open;s1:=fieldbyname(sum).asstring;s1:=fieldbyname(sum).asstring;end;end;edit2.text:=s1;edit2.text:=s1;end;end;procedure TFormprocedure TForm 房费收房费收.ComboBox1Change(Sender: TObject);.ComboBox1Change(Sender: TObject);var s,ss,s1:string;var s,ss,s1:string;t:tdate;t:tdate;beginbegins:=c

249、ombobox1.text;s:=combobox1.text;t:=now();t:=now();if s=if s=自选自选 then thenbeginbeginedit1.visible:=true;edit1.visible:=true;button1.visible:=true;button1.visible:=true;endendelseelsebeginbeginedit1.visible:=false;edit1.visible:=false;button1.visible:=false;button1.visible:=false;end;end;if s=if s=今天

250、今天 then thenbeginbegins1:=if object_id(ffr)is not null drop table ffr;s1:=if object_id(ffr)is not null drop table ffr;s1:=s1+ select a.roomid,orderdate,b.unitprice into ffr from rooms as a join roomcategories as b ons1:=s1+ select a.roomid,orderdate,b.unitprice into ffr from rooms as a join roomcate

251、gories as b ona.categoryid=b.categoryid ;a.categoryid=b.categoryid ;s1:=s1+s1:=s1+join hotelorderitems as c on a.roomid=c.roomid;join hotelorderitems as c on a.roomid=c.roomid;s1:=s1+ join hotelorders as d on c.orderid=d.orderid where orderdate=getdate() and isusing=1;s1:=s1+ join hotelorders as d o

252、n c.orderid=d.orderid where orderdate=getdate() and isusing=1;mandtext:=s1;mandtext:=s1;adocommand1.execute;adocommand1.execute;with adotable1 dowith adotable1 dobeginbeginclose;close;tablename:=ffr;tablename:=ffr;open;open;end;end;end;end;3232页脚内容页脚内容K1+478K1+478K1+5888K1+5888 段左侧片石混凝土挡土墙第段左侧片石混凝土挡

253、土墙第 1 1 部分部分if s=if s=昨天昨天 then thenbeginbegins1:=if object_id(ffr)is not null drop table ffr;s1:=if object_id(ffr)is not null drop table ffr;s1:=s1+ select a.roomid,orderdate,b.unitprice into ffr from rooms as a join roomcategories as b ons1:=s1+ select a.roomid,orderdate,b.unitprice into ffr from

254、rooms as a join roomcategories as b ona.categoryid=b.categoryid ;a.categoryid=b.categoryid ;s1:=s1+s1:=s1+join hotelorderitems as c on a.roomid=c.roomid;join hotelorderitems as c on a.roomid=c.roomid;s1:=s1+ join hotelorders as d on c.orderid=d.orderid where orderdate=dateadd(dd,-1,getdate() and isu

255、sing=1;s1:=s1+ join hotelorders as d on c.orderid=d.orderid where orderdate=dateadd(dd,-1,getdate() and isusing=1;/showmessage(s1);/showmessage(s1);mandtext:=s1;mandtext:=s1;adocommand1.execute;adocommand1.execute;with adotable1 dowith adotable1 dobeginbeginclose;close;tablename:=ffr;tablename:=ffr;

256、open;open;end;end;end;end;end;end;procedure TFormprocedure TForm 房费收房费收.FormShow(Sender: TObject);.FormShow(Sender: TObject);var i:integer;var i:integer;s1:string;s1:string;beginbeginedit2.text:=;edit2.text:=;combobox1.items.add(combobox1.items.add(今天今天););combobox1.items.add(combobox1.items.add(昨天昨

257、天););combobox1.items.add(combobox1.items.add(自选自选););combobox1.itemindex:=0;combobox1.itemindex:=0;edit1.text:=;edit1.text:=;edit1.visible:=false;edit1.visible:=false;button1.visible:=false;button1.visible:=false;monthcalendar1.visible:=false;monthcalendar1.visible:=false;with dbgrid1 dowith dbgrid1

258、 dobeginbegincolumns.clear;columns.clear;for I := 0 to 2 dofor I := 0 to 2 dobeginbegincolumns.add;columns.add;columnsi.width:=100;columnsi.width:=100;columnsi.title.alignment:=tacenter;columnsi.title.alignment:=tacenter;end;end;columns0.title.caption:=columns0.title.caption:=房间号房间号; ;columns1.title

259、.caption:=columns1.title.caption:=入住日期入住日期; ;columns2.title.caption:=columns2.title.caption:=金额金额; ;columns0.fieldname:=roomid;columns0.fieldname:=roomid;columns1.fieldname:=orderdate;columns1.fieldname:=orderdate;columns2.fieldname:=unitprice;columns2.fieldname:=unitprice;end;end;s1:=if object_id(f

260、fr)is not null drop table ffr;s1:=if object_id(ffr)is not null drop table ffr;s1:=s1+ select a.roomid,orderdate,b.unitprice into ffr from rooms as a join roomcategories as b ons1:=s1+ select a.roomid,orderdate,b.unitprice into ffr from rooms as a join roomcategories as b ona.categoryid=b.categoryid

261、;a.categoryid=b.categoryid ;s1:=s1+s1:=s1+join hotelorderitems as c on a.roomid=c.roomid;join hotelorderitems as c on a.roomid=c.roomid;s1:=s1+ join hotelorders as d on c.orderid=d.orderid where orderdate=getdate() and isusing=1;s1:=s1+ join hotelorders as d on c.orderid=d.orderid where orderdate=ge

262、tdate() and isusing=1;mandtext:=s1;mandtext:=s1;adocommand1.execute;adocommand1.execute;with adotable1 dowith adotable1 dobeginbeginclose;close;tablename:=ffr;tablename:=ffr;open;open;end;end;end;end;procedure TFormprocedure TForm 房费收房费收.MonthCalendar1Click(Sender: TObject);.MonthCalendar1Click(Send

263、er: TObject);3333页脚内容页脚内容K1+478K1+478K1+5888K1+5888 段左侧片石混凝土挡土墙第段左侧片石混凝土挡土墙第 1 1 部分部分var s,s1:string;var s,s1:string;beginbegins:=datetostr(monthcalendar1.date);s:=datetostr(monthcalendar1.date);edit1.text:=s;edit1.text:=s;monthcalendar1.visible:=false;monthcalendar1.visible:=false;s1:=if object_id(

264、ffr)is not null drop table ffr;s1:=if object_id(ffr)is not null drop table ffr;s1:=s1+ select a.roomid,orderdate,b.unitprice into ffr from rooms as a join roomcategories as b ons1:=s1+ select a.roomid,orderdate,b.unitprice into ffr from rooms as a join roomcategories as b ona.categoryid=b.categoryid

265、 ;a.categoryid=b.categoryid ;s1:=s1+s1:=s1+join hotelorderitems as c on a.roomid=c.roomid;join hotelorderitems as c on a.roomid=c.roomid;s1:=s1+ join hotelorders as d on c.orderid=d.orderid where orderdate=+s+ and isusing=1;s1:=s1+ join hotelorders as d on c.orderid=d.orderid where orderdate=+s+ and

266、 isusing=1;/showmessage(s1);/showmessage(s1);mandtext:=s1;mandtext:=s1;adocommand1.execute;adocommand1.execute;with adotable1 dowith adotable1 dobeginbeginclose;close;tablename:=ffr;tablename:=ffr;open;open;end;end;end;end;(5 5)、账号设置)、账号设置DbgridDbgrid 滚动时下面信息随之变化,滚动时下面信息随之变化,按修改按钮可以修改员工信息,按修改按钮可以修改员

267、工信息,按增加按钮可增加按增加按钮可增加员工,按删除按钮可删除员工。员工,按删除按钮可删除员工。procedure TFormprocedure TForm 账号设账号设.ADOTable1AfterScroll(DataSet: TDataSet);.ADOTable1AfterScroll(DataSet: TDataSet);var s:string;var s:string;beginbegins:=adotable1.fieldbyname(employeename).asstring;s:=adotable1.fieldbyname(employeename).asstring;w

268、ith adoquery1 dowith adoquery1 dobeginbeginclose;close;sql.text:=select * from hotelemployees where employeename=+s+;sql.text:=select * from hotelemployees where employeename=+s+;open;open;edit1.text:=fieldbyname(employeeid).asstring;edit1.text:=fieldbyname(employeeid).asstring;edit3.text:=fieldbyna

269、me(employeename).asstring;edit3.text:=fieldbyname(employeename).asstring;combobox4.text:=fieldbyname(sex).asstring;combobox4.text:=fieldbyname(sex).asstring;edit6.text:=fieldbyname(address).asstring;edit6.text:=fieldbyname(address).asstring;combobox1.text:=fieldbyname(country).asstring;combobox1.tex

270、t:=fieldbyname(country).asstring;combobox2.text:=fieldbyname(province).asstring;combobox2.text:=fieldbyname(province).asstring;combobox3.text:=fieldbyname(city).asstring;combobox3.text:=fieldbyname(city).asstring;edit1.enabled:=false;edit1.enabled:=false;combobox4.enabled:=false;combobox4.enabled:=f

271、alse;edit3.enabled:=false;edit3.enabled:=false;edit6.enabled:=false;edit6.enabled:=false;combobox1.Enabled:=false;combobox1.Enabled:=false;combobox2.Enabled:=false;combobox2.Enabled:=false;combobox3.Enabled:=false;combobox3.Enabled:=false;end;end;end;end;procedure TFormprocedure TForm 账号设账号设.Button1

272、Click(Sender: TObject);.Button1Click(Sender: TObject);beginbeginedit1.text:=;edit1.text:=;combobox4.itemindex:=0;combobox4.itemindex:=0;edit3.text:=;edit3.text:=;edit6.text:=;edit6.text:=;combobox1.itemindex:=0;combobox1.itemindex:=0;/combobox2.text:=;/combobox2.text:=;/combobox3.text:=;/combobox3.t

273、ext:=;edit1.enabled:=true;edit1.enabled:=true;combobox4.enabled:=true;combobox4.enabled:=true;edit3.enabled:=true;edit3.enabled:=true;edit6.enabled:=true;edit6.enabled:=true;3434页脚内容页脚内容K1+478K1+478K1+5888K1+5888 段左侧片石混凝土挡土墙第段左侧片石混凝土挡土墙第 1 1 部分部分combobox1.Enabled:=true;combobox1.Enabled:=true;combob

274、ox2.Enabled:=true;combobox2.Enabled:=true;combobox3.Enabled:=true;combobox3.Enabled:=true;/edit1.setfocus;/edit1.setfocus;tax:=1;tax:=1;end;end;procedure TFormprocedure TForm 账号设账号设.Button2Click(Sender: TObject);.Button2Click(Sender: TObject);var s:string;var s:string;beginbegins:=dbgrid1.selectedfi

275、eld.text;s:=dbgrid1.selectedfield.text;if application.messagebox(pchar(if application.messagebox(pchar(是否删除该员工?是否删除该员工?),caption,4+32)=6 then),caption,4+32)=6 thenadotable1.delete;adotable1.delete;end;end;procedure TFormprocedure TForm 账号设账号设.Button4Click(Sender: TObject);.Button4Click(Sender: TObje

276、ct);beginbegin/edit1.enabled:=true;/edit1.enabled:=true;/combobox4.enabled:=true;/combobox4.enabled:=true;xxx:=1;xxx:=1;edit3.enabled:=true;edit3.enabled:=true;edit6.enabled:=true;edit6.enabled:=true;combobox1.Enabled:=true;combobox1.Enabled:=true;combobox2.Enabled:=true;combobox2.Enabled:=true;comb

277、obox3.Enabled:=true;combobox3.Enabled:=true;end;end;procedure TFormprocedure TForm 账号设账号设.Button5Click(Sender: TObject);.Button5Click(Sender: TObject);var s,s1,s2,s3,s4:string;var s,s1,s2,s3,s4:string;beginbeginwith adotable1 dowith adotable1 dobeginbeginif tax=1 thenif tax=1 thenif xxx=0 thenif xxx

278、=0 thenappend;append;edit;edit;fieldbyname(employeeid).asstring:=edit1.text;fieldbyname(employeeid).asstring:=edit1.text;fieldbyname(employeename).AsString:=edit3.Text;fieldbyname(employeename).AsString:=edit3.Text;fieldbyname(sex).AsString:=combobox4.Text;fieldbyname(sex).AsString:=combobox4.Text;f

279、ieldbyname(country).AsString:=combobox1.Text;fieldbyname(country).AsString:=combobox1.Text;fieldbyname(province).AsString:=combobox2.Text;fieldbyname(province).AsString:=combobox2.Text;fieldbyname(city).AsString:=combobox3.Text;fieldbyname(city).AsString:=combobox3.Text;fieldbyname(address).AsString

280、:=edit6.Text;fieldbyname(address).AsString:=edit6.Text;post;post;end;end;showmessage(showmessage(保存成功!保存成功!););end;end;procedure TFormprocedure TForm 账号设账号设.ComboBox1Change(Sender: TObject);.ComboBox1Change(Sender: TObject);var s,ss:string;var s,ss:string;beginbegins:=combobox1.Text;s:=combobox1.Tex

281、t;combobox2.items.clear;combobox2.items.clear;with adoquery2 dowith adoquery2 dobeginbeginclose;close;sql.Text:=select * from dict_provinces as a join dict_countries as b on a.country_id=b.country_id wheresql.Text:=select * from dict_provinces as a join dict_countries as b on a.country_id=b.country_

282、id wherecountry=+s+;country=+s+;open;open;while not eofwhile not eofdodobeginbeginss:=fieldbyname(province).AsString;ss:=fieldbyname(province).AsString;combobox2.Items.Add(ss);combobox2.Items.Add(ss);next;next;end;end;3535页脚内容页脚内容K1+478K1+478K1+5888K1+5888 段左侧片石混凝土挡土墙第段左侧片石混凝土挡土墙第 1 1 部分部分end;end;co

283、mbobox2.itemindex:=0;combobox2.itemindex:=0;end;end;procedure TFormprocedure TForm 账号设账号设.ComboBox2Change(Sender: TObject);.ComboBox2Change(Sender: TObject);var s,ss:string;var s,ss:string;beginbegins:=combobox2.Text;s:=combobox2.Text;combobox3.items.clear;combobox3.items.clear;with adoquery2 dowith

284、 adoquery2 dobeginbeginclose;close;sql.Clear;sql.Clear;sql.Text:=select * from dict_cities as a join dict_provinces as b on a.province_id=b.Province_ID wheresql.Text:=select * from dict_cities as a join dict_provinces as b on a.province_id=b.Province_ID whereProvince=+s+;Province=+s+;open;open;while

285、 not eofwhile not eofdodobeginbeginss:=fieldbyname(city).AsString;ss:=fieldbyname(city).AsString;combobox3.Items.add(ss);combobox3.Items.add(ss);next;next;end;end;end;end;combobox3.ItemIndex:=0;combobox3.ItemIndex:=0;end;end;procedure TFormprocedure TForm 账号设账号设.FormShow(Sender: TObject);.FormShow(S

286、ender: TObject);var i:integer;var i:integer;s:string;s:string;beginbegintax:=0;tax:=0;xxx:=0;xxx:=0;with dbgrid1 dowith dbgrid1 dobeginbegincolumns.clear;columns.clear;for I := 0 to 3 dofor I := 0 to 3 docolumns.add;columns.add;columns0.title.caption:=columns0.title.caption:=员工姓名员工姓名; ;columns1.titl

287、e.caption:=columns1.title.caption:=性别性别; ;columns2.title.caption:=columns2.title.caption:=省市省市; ;columns3.title.caption:=columns3.title.caption:=市县市县; ;for I := 0 to 3 dofor I := 0 to 3 dobeginbegincolumnsi.title.alignment:=taleftjustify;columnsi.title.alignment:=taleftjustify;columnsi.width:=180;co

288、lumnsi.width:=180;end;end;columns0.fieldname:=employeename;columns0.fieldname:=employeename;columns1.fieldname:=sex;columns1.fieldname:=sex;columns2.fieldname:=province;columns2.fieldname:=province;columns3.fieldname:=city;columns3.fieldname:=city;end;end;with adotable1 dowith adotable1 dobeginbegin

289、close;close;tablename:=hotelemployees;tablename:=hotelemployees;open;open;end;end;with adoquery2 dowith adoquery2 dobeginbeginclose;close;sql.Text:=select * from dict_countries;sql.Text:=select * from dict_countries;open;open;while not eofwhile not eofdodobeginbegins:=fieldbyname(country).AsString;s

290、:=fieldbyname(country).AsString;3636页脚内容页脚内容K1+478K1+478K1+5888K1+5888 段左侧片石混凝土挡土墙第段左侧片石混凝土挡土墙第 1 1 部分部分combobox1.Items.Add(s);combobox1.Items.Add(s);next;next;end;end;end;end;combobox1.ItemIndex:=0;combobox1.ItemIndex:=0;combobox4.items.add(F);combobox4.items.add(F);combobox4.items.add(M);combobox4

291、.items.add(M);end;end;(6 6)、修改密码)、修改密码procedure TFormprocedure TForm 修改密修改密.Button1Click(Sender: TObject);.Button1Click(Sender: TObject);var s,s1,s2,s3,s4:string;var s,s1,s2,s3,s4:string;count:integer;count:integer;beginbegins:=edit1.text;s:=edit1.text;with adoquery1 dowith adoquery1 dobeginbeginclo

292、se;close;sql.text:=select * from hotelemployees where employeename=+dl+;sql.text:=select * from hotelemployees where employeename=+dl+;open;open;s1:=fieldbyname(code).asstring;s1:=fieldbyname(code).asstring;end;end;if ss1 thenif ss1 thenshowmessage(showmessage(密码输入错误密码输入错误!)!)elseelsebeginbegins2:=e

293、dit2.text;s2:=edit2.text;s3:=edit3.text;s3:=edit3.text;if s2=s3 thenif s2=s3 mandtext:=update hotelemployees set code=+s3+ where employeename=+dl+;mandtext:=update hotelemployees set code=+s3+ where employeename=+dl+;adocommand1.execute;adocommand1.execute;showmessage(showmessage(密码修改成功!密码修改成功!););e

294、ndendelseelseshowmessage(showmessage(请重新输入新密码请重新输入新密码););end;end;end;end;procedure TFormprocedure TForm 修改密修改密.FormShow(Sender: TObject);.FormShow(Sender: TObject);beginbeginlabel1.caption:=dl;label1.caption:=dl;edit1.text:=;edit1.text:=;edit2.text:=;edit2.text:=;edit3.text:=;edit3.text:=;edit1.setf

295、ocus;edit1.setfocus;end;end;四、系统的特色四、系统的特色功能齐全、方便快捷。功能齐全、方便快捷。五、课程设计总结五、课程设计总结这个学期没有把心思都扑在学习上,心情一直不好,然后没有学习的劲头。主要是周这个学期没有把心思都扑在学习上,心情一直不好,然后没有学习的劲头。主要是周末的时候在寝室又学不进去,去图书馆没位置,也没同学陪我一起去,然后就回家多了,末的时候在寝室又学不进去,去图书馆没位置,也没同学陪我一起去,然后就回家多了,百般聊赖中度过。在暑假的自学百般聊赖中度过。在暑假的自学 delphidelphi 的时候,觉得代码不怎么看得懂,感觉挺麻烦的。的时候,觉得

296、代码不怎么看得懂,感觉挺麻烦的。后来上课了也就觉得这门课也就这么回事,后来上课了也就觉得这门课也就这么回事,没什么意思。没什么意思。最深的感悟就是写代码真是一个最深的感悟就是写代码真是一个不费脑的活,不费脑的活,只要你知道要实现这个功能的代码就行了,只要你知道要实现这个功能的代码就行了,最重要的应该是自己解决问题的最重要的应该是自己解决问题的能力。运行的时候多小的一个差错都要不断地调试,把根源找出来,一个个击破。当所有能力。运行的时候多小的一个差错都要不断地调试,把根源找出来,一个个击破。当所有的程序运行没有问题的时候就感觉很有成就感。的程序运行没有问题的时候就感觉很有成就感。 还有一点要注意

297、的就是光复制黏贴代码是还有一点要注意的就是光复制黏贴代码是远远不够的,远远不够的,不然下次再用到的时候你写不出来或者根本不会灵活应用。不然下次再用到的时候你写不出来或者根本不会灵活应用。这次的课程设计这次的课程设计3737页脚内容页脚内容K1+478K1+478K1+5888K1+5888 段左侧片石混凝土挡土墙第段左侧片石混凝土挡土墙第 1 1 部分部分算是一个完整的过程。本来我打算跟别人合作的,后来自己着手之后感觉这是我的成果,算是一个完整的过程。本来我打算跟别人合作的,后来自己着手之后感觉这是我的成果,如果跟别人合作会产生矛盾分歧,如果跟别人合作会产生矛盾分歧,一个人做比较靠谱。一个人做

298、比较靠谱。于是乎我第一天的时候只是在网上于是乎我第一天的时候只是在网上找有关酒店管理的程序下载,找有关酒店管理的程序下载, 熟悉这个系统的功能和流程。熟悉这个系统的功能和流程。 再就是建数据库之前,再就是建数据库之前, 我在想,我在想,酒店管理系统里面涉及有房间、员工、客户、订单和订单详情。后来建房间表的时候又把酒店管理系统里面涉及有房间、员工、客户、订单和订单详情。后来建房间表的时候又把房间类型另外又做了一个表。至于后面的历史表、定金表、预订表是后来一些功能需要。房间类型另外又做了一个表。至于后面的历史表、定金表、预订表是后来一些功能需要。然后就建了表插了些数据。然后就建了表插了些数据。我认

299、为这个系统主要是给前台人员用的,我认为这个系统主要是给前台人员用的,所以在做前台花了好所以在做前台花了好几天。几天。做表单之前把需要的界面和功能和流程都完完全全想好才开始着手做。做表单之前把需要的界面和功能和流程都完完全全想好才开始着手做。做的时候也做的时候也不是很难,几个表联啊联。总之我觉得我做的不好的就是几个全局变量乱七八糟的,幸好不是很难,几个表联啊联。总之我觉得我做的不好的就是几个全局变量乱七八糟的,幸好没有什么差错。然后可视化界面很重要,要把数据库里的信息及时反馈给操作人员,因此没有什么差错。然后可视化界面很重要,要把数据库里的信息及时反馈给操作人员,因此刷新又是一个麻烦的事。刷新又

300、是一个麻烦的事。 后来总结了一下没想到有好几种刷新方法,后来总结了一下没想到有好几种刷新方法, 算是一个进步的地方。算是一个进步的地方。遇到的第一个棘手的就是在状态栏里显示时间。其实我对遇到的第一个棘手的就是在状态栏里显示时间。其实我对 timertimer 不是很熟悉,以前没不是很熟悉,以前没怎么弄过,怎么弄过, 然后一运行就跳出错误看看代码又感觉没什么不对,然后一运行就跳出错误看看代码又感觉没什么不对, 很郁闷。很郁闷。 我用我用 showmessageshowmessage一直在看程序是进行到哪里了,后来才发现原来一直在看程序是进行到哪里了,后来才发现原来 timertimer 运行是在

301、创建运行是在创建 formform 的时候就开始的时候就开始了,了,于是我在于是我在 formform 的的 createcreate 事件中先禁用了,事件中先禁用了,然后再在然后再在 formform 创建好之后启用,创建好之后启用,然后问题然后问题就解决了。就解决了。做程序就是这样每一个控件你都要熟悉,做程序就是这样每一个控件你都要熟悉,就像你要跟别人相处就要先摸清他的就像你要跟别人相处就要先摸清他的品性。很多时候遇到问题,我不喜欢问老师问同学,自己解决感觉很有成就感,而且下次品性。很多时候遇到问题,我不喜欢问老师问同学,自己解决感觉很有成就感,而且下次碰到就能轻松解决了。再说说外观,我承

302、认做得有点难看。可能是我这个程序把功能藏得碰到就能轻松解决了。再说说外观,我承认做得有点难看。可能是我这个程序把功能藏得太深了,所以进去时候的界面有点过于简单,然后就有点空旷的感觉。就个人看来,这种太深了,所以进去时候的界面有点过于简单,然后就有点空旷的感觉。就个人看来,这种酒店管理的系统不能做得很花哨,更正经一点比较好。我就插了酒店管理的系统不能做得很花哨,更正经一点比较好。我就插了 3 3 个图片,都是自己用个图片,都是自己用photoshopphotoshop 搞的,由于技术不是很好,有点拿不出手,但是看看还可以吧。再还有头疼的搞的,由于技术不是很好,有点拿不出手,但是看看还可以吧。再还有头疼的就是入住要交多少钱,结账的时候要交多少钱,退房的时候要根据时间是退钱还是交钱,就是入住要交多少钱,结账的时候要交多少钱,退房的时候要根据时间是退钱还是交钱,这些算出来有点麻烦。总而言之,还是这样乱搞搞做好了,我一个人做有点吃力,花了好这些算出来有点麻烦。总而言之,还是这样乱搞搞做好了,我一个人做有点吃力,花了好多时间,但要是能得到别人肯定,就值了。多时间,但要是能得到别人肯定,就值了。你脸上云淡风轻,谁也不知道你牙咬得多紧。你笑得没心没肺,没人知道你哭起来只能无声落泪。3838页脚内容页脚内容

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号