📄 selectlbxxunit.pas
字号:
unit SelectLBXXUnit;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, SUIButton, SUIEdit, StdCtrls, SUIComboBox, Mask, ComCtrls,
Grids, DBGrids, SUIDBCtrls, ExtCtrls, SUIImagePanel, DB, DBClient;
type
TSelectLBXXForm = class(TForm)
suiPanel1: TsuiPanel;
sdbgrd1: TsuiDBGrid;
dtp1: TDateTimePicker;
suiMaskEdit1: TsuiMaskEdit;
Label1: TLabel;
DateTimePicker1: TDateTimePicker;
suiMaskEdit2: TsuiMaskEdit;
suiMaskEdit3: TsuiMaskEdit;
DateTimePicker2: TDateTimePicker;
Label2: TLabel;
suiMaskEdit4: TsuiMaskEdit;
DateTimePicker3: TDateTimePicker;
suiRadioButton1: TsuiRadioButton;
suiComboBox1: TsuiComboBox;
suiRadioButton2: TsuiRadioButton;
edt1: TsuiEdit;
suiRadioButton3: TsuiRadioButton;
suiRadioButton4: TsuiRadioButton;
suiRadioButton5: TsuiRadioButton;
suiRadioButton6: TsuiRadioButton;
suiRadioButton7: TsuiRadioButton;
btn1: TsuiButton;
btn2: TsuiButton;
ds1: TClientDataSet;
ds2: TDataSource;
ds3: TClientDataSet;
wdstrngfldds1id: TWideStringField;
wdstrngfldds1guest: TWideStringField;
wdstrngfldds1peopelnum: TWideStringField;
wdstrngfldds1memozs: TWideStringField;
wdstrngfldds1room: TWideStringField;
ds1price: TFloatField;
wdstrngfldds1ifclock: TWideStringField;
ds1clock: TFloatField;
ds1scale: TFloatField;
ds1factprice: TFloatField;
wdstrngfldds1days: TWideStringField;
ds1deposit: TFloatField;
wdstrngfldds1paymode: TWideStringField;
wdstrngfldds1entertime: TWideStringField;
wdstrngfldds1leavetime: TWideStringField;
ds1name: TStringField;
ds1source: TStringField;
ds1sex: TStringField;
ds1phone: TStringField;
ds1cardtype: TStringField;
ds1cardnum: TStringField;
ds1address: TStringField;
lbl1: TLabel;
suiEdit1: TsuiEdit;
suiRadioButton8: TsuiRadioButton;
procedure btn2Click(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormCreate(Sender: TObject);
procedure ds1AfterScroll(DataSet: TDataSet);
procedure btn1Click(Sender: TObject);
procedure suiComboBox1DropDown(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
SelectLBXXForm: TSelectLBXXForm;
implementation
uses LoginUnit, MainUnit, YYCXUnit;
{$R *.dfm}
procedure TSelectLBXXForm.btn2Click(Sender: TObject);
begin
Close;
end;
procedure TSelectLBXXForm.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
Self.ds3.Close;
Self.ds1.Close;
YYCXForm.Enabled:=true;
end;
procedure TSelectLBXXForm.FormCreate(Sender: TObject);
begin
self.edt1.Clear;
self.suiEdit1.Clear;
self.suiComboBox1.Clear;
Self.dtp1.DateTime:=Now;
self.DateTimePicker1.DateTime:=Self.dtp1.DateTime;
self.DateTimePicker2.DateTime:=Self.dtp1.DateTime;
self.DateTimePicker3.DateTime:=Self.dtp1.DateTime;
Self.ds1.Close;
Self.ds1.CommandText:='select * from house';
self.ds1.Open;
end;
procedure TSelectLBXXForm.ds1AfterScroll(DataSet: TDataSet);
begin
self.lbl1.Caption:=ds1.fieldbyname('memozs').AsString;
end;
procedure TSelectLBXXForm.btn1Click(Sender: TObject);
var
sql:string;
startime,endtime:string;
temp:string;
begin
if self.suiRadioButton5.Checked then
sql:='select * from house';
if self.suiRadioButton6.Checked then
sql:='select * from house where id in (select distinct room_id from room where room_id<>'''')';
if self.suiRadioButton7.Checked then
sql:='select * from house where not (id in (select distinct room_id from room where room_id<>''''))';
if self.suiRadioButton1.Checked then
begin
LoginForm.ExecuteSQL('select id from guest where source='''+self.suiComboBox1.Text+'''');
LoginForm.dsQuery.First;
while not LoginForm.dsQuery.Eof do
begin
temp:=temp+loginform.dsQuery.Fields[0].AsString+'@';
LoginForm.dsQuery.Next;
end;
LoginForm.dsQuery.Close;
sql:='select * from house where';
while Pos('@',temp)>0 do
begin
sql:=sql+' guest='''+copy(temp,1,Pos('@',temp)-1)+''' or';
Delete(temp,1,Pos('@',temp));
end;
Delete(sql,Length(sql)-2,3);
end;
if self.suiRadioButton2.Checked then
sql:='select * from house where room='''+self.edt1.Text+'''';
if self.suiRadioButton8.Checked then
begin
LoginForm.ExecuteSQL('select id from guest where name='''+self.suiEdit1.Text+'''');
LoginForm.dsQuery.First;
while not LoginForm.dsQuery.Eof do
begin
temp:=temp+loginform.dsQuery.Fields[0].AsString+'@';
LoginForm.dsQuery.Next;
end;
LoginForm.dsQuery.Close;
sql:='select * from house where';
while Pos('@',temp)>0 do
begin
sql:=sql+' guest='''+copy(temp,1,Pos('@',temp)-1)+''' or';
Delete(temp,1,Pos('@',temp));
end;
Delete(sql,Length(sql)-2,3);
end;
if self.suiRadioButton3.Checked then
begin
startime:=FormatDateTime('yyyy-mm-dd',self.dtp1.Date)+' '+self.suiMaskEdit1.Text;
endtime:=FormatDateTime('yyyy-mm-dd',self.DateTimePicker1.Date)+' '+self.suiMaskEdit2.Text;
sql:='select * from house where entertime>='''+startime+''' and entertime<='''+endtime+'''';
end;
if self.suiRadioButton4.Checked then
begin
startime:=FormatDateTime('yyyy-mm-dd',self.DateTimePicker3.Date)+' '+self.suiMaskEdit4.Text;
endtime:=FormatDateTime('yyyy-mm-dd',self.DateTimePicker2.Date)+' '+self.suiMaskEdit3.Text;
sql:='select * from house where leavetime>='''+startime+''' and leavetime<='''+endtime+'''';
end;
Self.ds1.Close;
Self.ds1.CommandText:=sql;
self.ds1.Open;
end;
procedure TSelectLBXXForm.suiComboBox1DropDown(Sender: TObject);
begin
LoginForm.AddCombobox(Self.suiComboBox1,'select name from guestsource');
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -