酒店客房餐饮管理系统实现酒店客房餐饮管理系统功能完善,能管理普通酒店的客房住宿和餐饮等服务。本系统采纳 DELPHI 和 SQL SERVER 工具开发,分为前台和后台管理。前台与后台管理程序相对独立,均共用一个数据库。下面对该系统的部份功能和模块以及代码进行分析。一.前台管理1. 数据模块该模块是整个程序数据的提供者,以及包括大部分的处理函数和实现功能。单元文件名:u_data.pas,数据模块名:DM_main。部分代码分析:返回指表中某字段的最大值,返回值为整型。因此该函数只能应用字段为整型的表。function TDM_main.GetMaxId(aTable,aField:string):integer;var sSql:string;begin Result:=0; sSql:='select max(%s) from %s'; with Q_getmax do begin SQL.Text:=Format(sSql,[aField,aTable]); Open; if not IsEmpty then Result:=Fields[0].AsInteger+1; Close; end;end;接下来这个函数也是返回最大值,但是其为一个订单的最大编号为字符型。function TDM_main.GetMaxOrderId:string;var id:String; count:Integer;begin with Q_count_order do begin Open; count:=Fields[0].Value; Close; end; id:='000'+IntToStr(count); id:=Copy(id, length(id)-3, 4); id:='F'+FormatDateTime('yymmdd',now)+id; Result:=id;end;系统登陆函数:在进行系统的操作处理时,必须登陆。该函数对用户输入的用户名和密码数据库验证。其密码是进行加密的(加密模块稍后分析)function TDM_main.Login(user, passwd:String):String;var Flag:Boolean;begin if Database.Connected=false then Database.Connected:=True; passwd:=Copy(passwd+passwd, 1, 10);//加密处理 passwd:=Encrypt(passwd, 111); with Q_login do begin Close; Params.ParamValues['ID']:=user; Params.ParamValues['PASSWD']:=passwd; Open;//在用户请中查询该用户和密码是否存在 Flag:=( not IsEmpty); if Flag then begin Login:=FieldValues['NAME']; IsPass:=Flag; end else begin Login:=''; Application.MessageBox('请重新输入!', '登录失败', MB_OK); end; Close; end;end;系统登出:procedure TDM_main.Logout;begin Database.Connected:=False;//断开数据库的连接end;2. 加密模块:单元文件名:crypt.pas。简单的加密算法。const C1 = 52845; C2 = 22719;function Encrypt(...