showgroomfeeunit.pas
来自「很好地delphi书籍源码」· PAS 代码 · 共 136 行
PAS
136 行
unit ShowGRoomFeeUnit;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Grids, ValEdit, StdCtrls, Buttons, ComCtrls, DBGrids, ExtCtrls;
type
TFrmLookGRoomFee = class(TForm)
Panel1: TPanel;
BedDBGrid: TDBGrid;
SpeedButton1: TSpeedButton;
PrintSB: TSpeedButton;
LookUpIDSB: TSpeedButton;
Label1: TLabel;
GuestIDCB: TComboBox;
SumSB: TSpeedButton;
procedure SpeedButton1Click(Sender: TObject);
procedure PrintSBClick(Sender: TObject);
procedure LookUpIDSBClick(Sender: TObject);
procedure GuestIDCBChange(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure SumSBClick(Sender: TObject);
private
{ Private declarations }
public
GID:integer;
GName:string;
{ Public declarations }
end;
var
FrmLookGRoomFee: TFrmLookGRoomFee;
implementation
uses DataModuleUnit, QRRoomFeeUnit, GetYourInputUnit;
{$R *.dfm}
procedure TFrmLookGRoomFee.SpeedButton1Click(Sender: TObject);
begin
Close;
end;
procedure TFrmLookGRoomFee.PrintSBClick(Sender: TObject);
begin
with QReport1 do
begin
DataSet:=BedDBGrid.DataSource.DataSet;
GuestID.DataField:='客户编号';
GName.DataField :='客户姓名';
RoomID.DataField:='房间号';
BedID.DataField:='床位号';
Price.DataField:='床位价格';
Days.DataField:='使用天数';
StartTime.DataField:='启用时间';
EndTime.DataField:='停用时间';
BedFee.DataField:='床位费';
Preview;
end;
end;
procedure TFrmLookGRoomFee.LookUpIDSBClick(Sender: TObject);
var
GName:string;
begin
GName:=GetYourString;
with DataModule1.qGInfo do
begin
Close;
sql.Clear;
SQL.Add('SELECT GuestID From tbGInfo where GuestName="'+GName+'"');
Open;
GuestIDCB.Clear;
First;
while not eof do
begin
GuestIDCB.Items.Add(Fields[0].Value);
Next;
end;
GuestIDCB.ItemIndex:=0;
if RecordCount=1 then GuestIDCB.OnChange(self)
else Showmessage('存在同名客户,请利用客户编号确定是哪一位!');
end;
end;
procedure TFrmLookGRoomFee.GuestIDCBChange(Sender: TObject);
begin
if GuestIDCB.Text='' then exit;
if Not IsInteger(GuestIDCB.Text) then
begin
Showmessage('客户编号是一个整数,您再检查一下,好吗?');
exit;
end;
with DataModule1.qGRoomFee do
begin
Close;
SQL.Clear;
SQL.Add('select 编号=GuestID, 姓名=GuestName ,CardID as 证件号码,');
SQL.Add('房间号=RoomID, 床位号=BedID,');
SQL.Add('BedStartDateTime as 床位启用时间,BedEndDateTime as 床位停用时间');
SQL.Add('From tbGRoomFee where GuestID='+GuestIDCB.Text);
Open;
end;
SumSB.Enabled:=true;
end;
procedure TFrmLookGRoomFee.FormCreate(Sender: TObject);
begin
GuestIDCB.Items:=FindGuestID;
end;
procedure TFrmLookGRoomFee.SumSBClick(Sender: TObject);
begin
if Not IsInteger(GuestIDCB.Text) then exit;
with DataModule1.qGRoomFee do
begin
Close;
SQL.Clear;
SQL.Add('select GuestID as 客户编号 ,GuestName as 客户姓名,');
SQL.Add('RoomID as 房间号,BedID as 床位号,BedPrice as 床位价格,');
SQL.Add('BedDays as 使用天数,');
SQL.Add('BedStartDateTime as 启用时间,BedEndDateTime as 停用时间,');
SQL.Add('BedDays*BedPrice 床位费');
SQL.Add('from tbGRoomFee where GuestID='+GuestIDCB.Text);
Open;
end;
PrintSB.Enabled:=true;
end;
end.
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?