⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 oldguestunit.pas

📁 很好地delphi书籍源码
💻 PAS
字号:
unit OldGuestUnit;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, ExtCtrls, ImgList, ComCtrls, ToolWin, Grids, DBGrids,
  Buttons, DBActns, ActnList,printers;

type
  TFrmOldGuest = class(TForm)
    DBGrid1: TDBGrid;
    ToolBar1: TToolBar;
    ToolButton7: TToolButton;
    ToolButton3: TToolButton;
    ToolButton5: TToolButton;
    ToolButton6: TToolButton;
    ImageList1: TImageList;
    Splitter1: TSplitter;
    Panel1: TPanel;
    NameCB: TComboBox;
    Label1: TLabel;
    Label3: TLabel;
    Label2: TLabel;
    SexCB: TComboBox;
    Label4: TLabel;
    AgeCB: TComboBox;
    ToolButton1: TToolButton;
    ActionList1: TActionList;
    DataSetFirst1: TDataSetFirst;
    DataSetPrior1: TDataSetPrior;
    DataSetNext1: TDataSetNext;
    DataSetLast1: TDataSetLast;
    DataSetDelete1: TDataSetDelete;
    ToolButton2: TToolButton;
    ToolButton4: TToolButton;
    procedure FormCreate(Sender: TObject);
    procedure NameCBChange(Sender: TObject);
    procedure SexCBChange(Sender: TObject);
    procedure AgeCBChange(Sender: TObject);
    procedure ToolButton1Click(Sender: TObject);
    procedure ToolButton2Click(Sender: TObject);
    procedure ToolButton4Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  FrmOldGuest: TFrmOldGuest;
  function GetMyDateTime : TDateTime; stdcall; external 'MyDll.dll';

implementation

uses DataModuleUnit, Dy_QReport, DynamicFormUnit;

{$R *.dfm}

procedure TFrmOldGuest.FormCreate(Sender: TObject);
begin
  with DataModule1.qOldGInfo do
  begin
    Close;
    SQL.Clear;
    SQL.Add('SELECT GuestID as 客户编号,GuestName as 客户姓名, Age as 年龄,');
    SQL.Add('Sex as 性别, BornPlace as 出生地, CardName as 证件类型,');
    SQL.Add('CardID as 证件号码, Company as 工作单位, Duty as 职务,');
    SQL.Add('PlanDays as 预住天数, Foregift as 预付押金,');
    SQL.Add('EnterDateTime as 入住时间,LeaveDateTime as 结算时间 From tbOldGInfo');
    Open;
  end;
end;

procedure TFrmOldGuest.NameCBChange(Sender: TObject);
begin
 with DataModule1.qOldGInfo do
 begin
    Close;
    SQL.Clear;
    SQL.Add('SELECT GuestID as 客户编号,GuestName as 客户姓名, Age as 年龄,');
    SQL.Add('Sex as 性别, BornPlace as 出生地, CardName as 证件类型,');
    SQL.Add('CardID as 证件号码, Company as 工作单位, Duty as 职务,');
    SQL.Add('PlanDays as 预住天数, Foregift as 预付押金,');
    SQL.Add('EnterDateTime as 入住时间,LeaveDateTime as 结算时间 From tbOldGInfo');
    SQL.Add('where  GuestName like:Str ');
    ParamByName('Str').AsString:='%'+NameCB.Text+'%';
    Open;
  end;

end;

procedure TFrmOldGuest.SexCBChange(Sender: TObject);
begin
  with DataModule1.qOldGInfo do
  begin
    Close;
    SQL.Clear;
    SQL.Add('SELECT GuestID as 客户编号,GuestName as 客户姓名, Age as 年龄,');
    SQL.Add('Sex as 性别, BornPlace as 出生地, CardName as 证件类型,');
    SQL.Add('CardID as 证件号码, Company as 工作单位, Duty as 职务,');
    SQL.Add('PlanDays as 预住天数, Foregift as 预付押金,');
    SQL.Add('EnterDateTime as 入住时间,LeaveDateTime as 结算时间 From tbOldGInfo');
    SQL.Add('where  Sex like:Str ');
    ParamByName('Str').AsString:='%'+SexCB.Text+'%';
    Open;
  end;

end;

procedure TFrmOldGuest.AgeCBChange(Sender: TObject);
begin
  with DataModule1.qOldGInfo do
  begin
    Close;
    SQL.Clear;
    SQL.Add('SELECT GuestID as 客户编号,GuestName as 客户姓名, Age as 年龄,');
    SQL.Add('Sex as 性别, BornPlace as 出生地, CardName as 证件类型,');
    SQL.Add('CardID as 证件号码, Company as 工作单位, Duty as 职务,');
    SQL.Add('PlanDays as 预住天数, Foregift as 预付押金,');
    SQL.Add('EnterDateTime as 入住时间,LeaveDateTime as 结算时间 From tbOldGInfo');
    SQL.Add('where Age<'+AgeCB.Text);
    Open;
  end;

end;

procedure TFrmOldGuest.ToolButton1Click(Sender: TObject);
var
   MyDate:string;
begin
  if Application.MessageBox(
      '允许您删除某时间以前来的所有记录,继续吗!',
      '提示',MB_YesNo+MB_IconExclamation+MB_SystemModal)=IDYES then
  begin
    MyDate:=DatetimeToStr(GetMyDateTime);
    with DataModule1.qOldGInfo do
    begin
      Close;
      SQL.Clear;
      SQL.Add('DELETE  tbOldGInfo where LeaveDateTime<"'+MyDate+'"' );
      ExecSQL ;
     end;
  end;
end;

procedure TFrmOldGuest.ToolButton2Click(Sender: TObject);
begin
  Close;
end;

procedure TFrmOldGuest.ToolButton4Click(Sender: TObject);
var
 DynamicForm:TDynamicForm;
 GridPrint:TGridPrint;
begin
  DynamicForm:=TDynamicForm.Create(Application);
  with DynamicForm do
  begin
    DynamicForm.QuickRep.Page.Orientation:=poLandscape;
    GridPrint:=TGridPrint.Create(QuickRep,DBGrid1,TitleB,HeaderB,DetailB,
                      '宾馆历史客户信息表');
    GridPrint.DoPreview();
    GridPrint.Free;
  end;
end;
end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -