📄 skkdunit.pas
字号:
unit SKKDUnit;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, SUIButton, StdCtrls, SUIListBox, SUIEdit, SUIComboBox,
SUIPageControl, SUITabControl, ExtCtrls, SUIImagePanel, ComCtrls,
SUIGroupBox, Grids, DBGrids, DB, DBClient, Menus;
type
TSKKDForm = class(TForm)
suiPanel1: TsuiPanel;
stat1: TStatusBar;
Label15: TLabel;
suiComboBox1: TsuiComboBox;
Label1: TLabel;
suiEdit6: TsuiEdit;
Label16: TLabel;
suiEdit1: TsuiEdit;
Label7: TLabel;
Label8: TLabel;
suiComboBox2: TsuiComboBox;
suiEdit2: TsuiEdit;
suiEdit3: TsuiEdit;
Label18: TLabel;
suiComboBox7: TsuiComboBox;
Label3: TLabel;
Label17: TLabel;
suiEdit4: TsuiEdit;
Label4: TLabel;
suiEdit5: TsuiEdit;
suiButton1: TsuiButton;
suiButton2: TsuiButton;
suiGroupBox1: TsuiGroupBox;
Label2: TLabel;
suiEdit7: TsuiEdit;
Label6: TLabel;
suiComboBox4: TsuiComboBox;
Label23: TLabel;
suiEdit9: TsuiEdit;
Label10: TLabel;
suiEdit16: TsuiEdit;
btn1: TsuiButton;
btn2: TsuiButton;
Label9: TLabel;
suiEdit8: TsuiEdit;
suiComboBox3: TsuiComboBox;
suiButton3: TsuiButton;
suiListBox2: TsuiListBox;
suiGroupBox2: TsuiGroupBox;
Label22: TLabel;
suiComboBox8: TsuiComboBox;
suiEdit15: TsuiEdit;
Label21: TLabel;
suiEdit14: TsuiEdit;
Label20: TLabel;
suiEdit12: TsuiEdit;
Label14: TLabel;
suiCheckBox1: TsuiCheckBox;
btn3: TsuiButton;
btn4: TsuiButton;
Label5: TLabel;
dbgrd1: TDBGrid;
DBGrid1: TDBGrid;
ds1: TDataSource;
ds2: TDataSource;
ds3: TClientDataSet;
ClientDataSet1: TClientDataSet;
lbl1: TLabel;
pm1: TPopupMenu;
N1: TMenuItem;
N2: TMenuItem;
ClientDataSet2: TClientDataSet;
procedure suiButton2Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormActivate(Sender: TObject);
procedure suiEdit6KeyPress(Sender: TObject; var Key: Char);
procedure suiEdit1KeyPress(Sender: TObject; var Key: Char);
procedure suiEdit2KeyPress(Sender: TObject; var Key: Char);
procedure suiEdit3KeyPress(Sender: TObject; var Key: Char);
procedure suiEdit4KeyPress(Sender: TObject; var Key: Char);
procedure suiComboBox1KeyPress(Sender: TObject; var Key: Char);
procedure suiComboBox2KeyPress(Sender: TObject; var Key: Char);
procedure suiComboBox7KeyPress(Sender: TObject; var Key: Char);
procedure suiEdit8KeyPress(Sender: TObject; var Key: Char);
procedure suiEdit9KeyPress(Sender: TObject; var Key: Char);
procedure suiEdit7KeyPress(Sender: TObject; var Key: Char);
procedure suiComboBox3KeyPress(Sender: TObject; var Key: Char);
procedure suiComboBox4KeyPress(Sender: TObject; var Key: Char);
procedure suiComboBox1DropDown(Sender: TObject);
procedure suiComboBox7DropDown(Sender: TObject);
procedure suiComboBox4DropDown(Sender: TObject);
procedure suiComboBox8DropDown(Sender: TObject);
procedure suiEdit12KeyPress(Sender: TObject; var Key: Char);
procedure suiEdit14KeyPress(Sender: TObject; var Key: Char);
procedure suiEdit15KeyPress(Sender: TObject; var Key: Char);
procedure suiComboBox8KeyPress(Sender: TObject; var Key: Char);
procedure suiButton1Click(Sender: TObject);
procedure suiEdit16KeyPress(Sender: TObject; var Key: Char);
procedure suiCheckBox1Click(Sender: TObject);
procedure btn3Click(Sender: TObject);
procedure btn4Click(Sender: TObject);
procedure btn1Click(Sender: TObject);
procedure suiButton3Click(Sender: TObject);
procedure btn2Click(Sender: TObject);
procedure ds3AfterScroll(DataSet: TDataSet);
procedure DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect;
DataCol: Integer; Column: TColumn; State: TGridDrawState);
procedure dbgrd1DrawColumnCell(Sender: TObject; const Rect: TRect;
DataCol: Integer; Column: TColumn; State: TGridDrawState);
procedure N1Click(Sender: TObject);
procedure N2Click(Sender: TObject);
procedure ClientDataSet1AfterScroll(DataSet: TDataSet);
private
{ Private declarations }
public
{ Public declarations }
ifguest,ifsave:boolean;
id,guestid:string;
ifguestselect:boolean;
end;
var
SKKDForm: TSKKDForm;
implementation
uses MainUnit, LoginUnit, SysSetUnit, GuestSelectUnit;
{$R *.dfm}
procedure TSKKDForm.suiButton2Click(Sender: TObject);
begin
close;
end;
procedure TSKKDForm.FormCreate(Sender: TObject);
begin
suiEdit1.Clear;
suiEdit2.Clear;
suiEdit3.Clear;
suiEdit4.Clear;
suiEdit5.Clear;
suiEdit6.Clear;
suiEdit7.Clear;
suiEdit8.Clear;
suiEdit9.Clear;
suiEdit12.Clear;
suiEdit14.Clear;
suiEdit15.Clear;
suiEdit16.Clear;
suiComboBox1.Clear;
suiComboBox2.ItemIndex:=0;
suiComboBox3.ItemIndex:=0;
suiComboBox4.Clear;
suiComboBox7.Clear;
suiComboBox8.Clear;
suiPanel1.Caption:='散单单号:SD'+FormatDateTime('yyyymmddhhnnss',now);
id:=suiPanel1.Caption;
delete(id,1,10);
ifsave:=false;
ifguest:=false;
ifguestselect:=false;
suiEdit12.Text:='1.0';
suiEdit14.Text:='1';
suiEdit15.Text:=FormatFloat('0.00',StrToFloat(mainform.roomdeposit));
suiComboBox8.Text:='现金';
if (mainform.roomhour='Y') or (mainform.roomhour='y') then
suiCheckBox1.Enabled:=true
else
suiCheckBox1.Enabled:=false;
suiListBox2.Items.Clear;
suiListBox2.Items.BeginUpdate;
loginform.ExecuteSQL('select roomtype.type_mc,room.room_num from room,roomtype '+
'where room.room_type=roomtype.type_xh and room.room_state=''可供'' and '+
'room.room_num<>'''+mainform.roomnum+''' and '+
'roomtype.type_mc='''+mainform.roomtype+''''+
'order by room.room_num');
LoginForm.dsQuery.First;
while not LoginForm.dsQuery.Eof do
begin
suiListBox2.Items.Add(LoginForm.dsQuery.Fields[0].AsString+':'+LoginForm.dsQuery.Fields[1].AsString);
LoginForm.dsQuery.Next;
end;
suiListBox2.Items.EndUpdate;
LoginForm.dsQuery.Close;
loginform.ExecuteSQL('delete from roomselect');
loginform.ExecuteSQL('insert into roomselect '+
'values(''1'','''+MainForm.roomtype+''','''+mainform.roomnum+
''','''+formatfloat('¥0.00',strtofloat(mainform.roomprice))+
''',''1.0'','''+formatfloat('¥0.00',strtofloat(mainform.roomprice))+
''','''+formatfloat('¥0.00',strtofloat(mainform.roomdeposit))+''')');
ClientDataSet1.Close;
ClientDataSet1.Open;
end;
procedure TSKKDForm.FormClose(Sender: TObject; var Action: TCloseAction);
begin
if not ifsave then
begin
loginform.ExecuteSQL('delete from roompeople where id='''+id+'''');
LoginForm.ExecuteSQL('delete from roomselect')
end;
ds3.Close;
ClientDataSet2.Close;
ClientDataSet1.Close;
MainForm.RefrushRoomState(0);
mainform.Enabled:=true;
end;
procedure TSKKDForm.FormActivate(Sender: TObject);
begin
if self.ifguestselect then
begin
ifguestselect:=false;
suiEdit7.Text:=suiEdit6.Text;
suiComboBox2.SetFocus;
end
else
suiComboBox1.SetFocus;
end;
procedure TSKKDForm.suiEdit6KeyPress(Sender: TObject; var Key: Char);
var
count:integer;
begin
if key=#13 then
begin
self.ClientDataSet2.Close;
self.ClientDataSet2.Open;
self.ClientDataSet2.Filter:='name='''+suiEdit6.Text+'''';
self.ClientDataSet2.Filtered:=True;
count:=ClientDataSet2.RecordCount;
self.ClientDataSet2.Close;
if count=0 then
begin
stat1.Panels[0].Text:='宾客【'+suiEdit6.Text+'】首次光临!';
self.suiComboBox2.SetFocus;
suiEdit7.Text:=suiEdit6.Text;
end
else
begin
ifguest:=true;
ifguestselect:=True;
application.CreateForm(TGuestSelectForm,GuestSelectForm);
GuestSelectForm.Show;
SELF.Enabled:=False;
end;
end;
end;
procedure TSKKDForm.suiEdit1KeyPress(Sender: TObject; var Key: Char);
begin
if not (key in [#48..#57,#13,#8]) then
key:=#0
else
if key=#13 then
suiEdit2.SetFocus;
end;
procedure TSKKDForm.suiEdit2KeyPress(Sender: TObject; var Key: Char);
begin
if not (key in [#48..#57,#45,#13,#8]) then
key:=#0
else
if key=#13 then
begin
suiEdit16.Text:=suiEdit2.Text;
suiComboBox7.SetFocus;
end;
end;
procedure TSKKDForm.suiEdit3KeyPress(Sender: TObject; var Key: Char);
begin
if not (key in [#48..#57,#13,#8]) then
key:=#0
else
if key=#13 then
begin
loginform.ExecuteSQL('select dq from idcard where bm='''+copy(suiEdit3.Text,1,6)+'''');
suiEdit4.Text:=loginform.dsQuery.Fields[0].AsString;
loginform.dsQuery.Close;
suiEdit8.Text:=suiEdit3.Text;
suiEdit4.SetFocus;
end;
end;
procedure TSKKDForm.suiEdit4KeyPress(Sender: TObject; var Key: Char);
begin
if key=#13 then
begin
suiEdit9.Text:=suiEdit4.Text;
btn1.Click;
suiEdit5.Text:='散客开单:'+mainform.roomnum+';';
suiEdit5.SetFocus;
end;
end;
procedure TSKKDForm.suiComboBox1KeyPress(Sender: TObject; var Key: Char);
begin
if key=#13 then
suiEdit6.SetFocus;
end;
procedure TSKKDForm.suiComboBox2KeyPress(Sender: TObject; var Key: Char);
begin
if key=#13 then
begin
suiComboBox3.Text:=suiComboBox2.Text;
suiEdit1.SetFocus;
end;
end;
procedure TSKKDForm.suiComboBox7KeyPress(Sender: TObject; var Key: Char);
begin
if key=#13 then
begin
suiComboBox4.Text:=suiComboBox7.Text;
suiEdit3.SetFocus;
end;
end;
procedure TSKKDForm.suiEdit8KeyPress(Sender: TObject; var Key: Char);
begin
if not (key in [#48..#57,#13,#8]) then
key:=#0
else
if key=#13 then
begin
loginform.ExecuteSQL('select dq from idcard where bm='''+copy(suiEdit8.Text,1,6)+'''');
suiEdit9.Text:=loginform.dsQuery.Fields[0].AsString;
loginform.dsQuery.Close;
suiEdit9.SetFocus;
end;
end;
procedure TSKKDForm.suiEdit9KeyPress(Sender: TObject; var Key: Char);
begin
if key=#13 then
btn1.SetFocus;
end;
procedure TSKKDForm.suiEdit7KeyPress(Sender: TObject; var Key: Char);
begin
if key=#13 then
suiComboBox3.SetFocus;
end;
procedure TSKKDForm.suiComboBox3KeyPress(Sender: TObject; var Key: Char);
begin
if key=#13 then
suiEdit16.SetFocus;
end;
procedure TSKKDForm.suiComboBox4KeyPress(Sender: TObject; var Key: Char);
begin
if key=#13 then
suiEdit8.SetFocus;
end;
procedure TSKKDForm.suiComboBox1DropDown(Sender: TObject);
begin
loginform.AddCombobox(suiComboBox1,'select name from guestsource');
suiComboBox1.ItemIndex:=0;
end;
procedure TSKKDForm.suiComboBox7DropDown(Sender: TObject);
begin
loginform.AddCombobox(suiComboBox7,'select name from paper');
suiComboBox7.ItemIndex:=0;
end;
procedure TSKKDForm.suiComboBox4DropDown(Sender: TObject);
begin
loginform.AddCombobox(suiComboBox4,'select name from paper');
suiComboBox4.ItemIndex:=0;
end;
procedure TSKKDForm.suiComboBox8DropDown(Sender: TObject);
begin
loginform.AddCombobox(suiComboBox8,'select name from paymode');
suiComboBox8.ItemIndex:=0;
end;
procedure TSKKDForm.suiEdit12KeyPress(Sender: TObject; var Key: Char);
begin
if not (key in [#48..#57,#46,#13,#8]) then
key:=#0
else
if key=#13 then
begin
try
loginform.ExecuteSQL('update roomselect '+
'set salce='''+formatfloat('0.00',StrToFloat(SUIEdit12.Text))+''','+
'factprice='''+formatfloat('¥0.00',strtofloat(mainform.roomprice)*StrToFloat(SUIEdit12.Text))+'''');
ClientDataSet1.Close;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -