📄 moneyfromhunit1.~pas
字号:
unit MoneyFromHUnit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Grids, DBGrids, Buttons, ImgList, Spin, StdCtrls, ComCtrls,
ToolWin, ExtCtrls, DB, DBTables, DBActns, ActnList;
type
TFrmMoney_1 = class(TForm)
ToolBar1: TToolBar;
AddTButton: TToolButton;
DelTButton: TToolButton;
ToolButton7: TToolButton;
ToolButton3: TToolButton;
ToolButton5: TToolButton;
ToolButton6: TToolButton;
ImageList1: TImageList;
Panel1: TPanel;
DateTimePicker1: TDateTimePicker;
Label5: TLabel;
AdaySB: TSpeedButton;
AMonthSB: TSpeedButton;
AllSB: TSpeedButton;
Panel2: TPanel;
DBGrid1: TDBGrid;
AddGB: TGroupBox;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label6: TLabel;
Label7: TLabel;
Label8: TLabel;
Shape1: TShape;
FeeEdit1: TEdit;
FeeEdit2: TEdit;
FeeEdit3: TEdit;
FeeEdit4: TEdit;
FeeEdit5: TEdit;
FeeEdit0: TEdit;
AYearSB: TSpeedButton;
PeriodSB: TSpeedButton;
InputDateGB: TGroupBox;
Label10: TLabel;
Label11: TLabel;
StartDTP: TDateTimePicker;
EndDTP: TDateTimePicker;
DateOkSB: TSpeedButton;
Label4: TLabel;
KindCB: TComboBox;
SumL: TLabel;
TotalSBClose: TSpeedButton;
CloseTB: TToolButton;
DBGrid2: TDBGrid;
Splitter1: TSplitter;
ActionList1: TActionList;
DataSetFirst1: TDataSetFirst;
DataSetPrior1: TDataSetPrior;
DataSetNext1: TDataSetNext;
DataSetLast1: TDataSetLast;
DataSetDelete1: TDataSetDelete;
Panel4: TPanel;
Panel3: TPanel;
DelDateGB: TGroupBox;
Label9: TLabel;
Label12: TLabel;
DelSB: TSpeedButton;
DelStartDTP: TDateTimePicker;
DelEndDTP: TDateTimePicker;
DelCancelSP: TSpeedButton;
procedure FormCreate(Sender: TObject);
procedure AddOkButtonClick(Sender: TObject);
procedure AddTButtonClick(Sender: TObject);
procedure AddCancelButtonClick(Sender: TObject);
procedure AdaySBClick(Sender: TObject);
procedure AllSBClick(Sender: TObject);
procedure AMonthSBClick(Sender: TObject);
procedure AYearSBClick(Sender: TObject);
procedure PeriodSBClick(Sender: TObject);
procedure InputDateGBClick(Sender: TObject);
procedure DateOkSBClick(Sender: TObject);
procedure TotalSBCloseClick(Sender: TObject);
procedure CloseTBClick(Sender: TObject);
procedure DelTButtonClick(Sender: TObject);
procedure DelSBClick(Sender: TObject);
procedure DelCancelSPClick(Sender: TObject);
private
ConStr,Str:String;
{ Private declarations }
public
{ Public declarations }
end;
var
FrmMoney_1: TFrmMoney_1;
implementation
uses DataModuleUnit;
{$R *.dfm}
procedure TFrmMoney_1.FormCreate(Sender: TObject);
begin
Str:='';
ConStr:='';
AdaySB.OnClick(self);
end;
procedure TFrmMoney_1.AddOkButtonClick(Sender: TObject);
begin
AddGB.Visible:=false;
end;
procedure TFrmMoney_1.AddTButtonClick(Sender: TObject);
var
Sum,Fee0,Fee1,Fee2,Fee3,Fee4,Fee5:Currency;
begin
Fee0:=0;Fee1:=0;Fee2:=0;Fee3:=0;Fee4:=0;Fee5:=0.0;
with DBGrid1.DataSource.DataSet do
begin
First;
while not eof do
begin
Fee0:=Fee0+FieldByName('客房费').AsCurrency;
Fee1:=Fee1+FieldByName('商务费').AsCurrency;
Fee2:=Fee2+FieldByName('餐饮费').AsCurrency;
Fee3:=Fee3+FieldByName('娱乐费').AsCurrency;
Fee4:=Fee4+FieldByName('购物费').AsCurrency;
Fee5:=Fee5+FieldByName('其它费用').AsCurrency;
Next;
end;
end;
with DBGrid2.DataSource.DataSet do
begin
First;
while not eof do
begin
Fee1:=Fee1+FieldByName('商务费').AsCurrency;
Fee2:=Fee2+FieldByName('餐饮费').AsCurrency;
Fee3:=Fee3+FieldByName('娱乐费').AsCurrency;
Fee4:=Fee4+FieldByName('购物费').AsCurrency;
Fee5:=Fee5+FieldByName('其它费用').AsCurrency;
Next;
end;
end;
Sum:=Fee0+Fee1+Fee2+Fee3+Fee4+Fee5;
SumL.Caption:=Format('合计:%7.2f',[Sum]);
FeeEdit0.Text:=FloatToStr(Fee0)+' 元';
FeeEdit1.Text:=FloatToStr(Fee1)+' 元';
FeeEdit2.Text:=FloatToStr(Fee2)+' 元';
FeeEdit3.Text:=FloatToStr(Fee3)+' 元';
FeeEdit4.Text:=FloatToStr(Fee4)+' 元';
FeeEdit5.Text:=FloatToStr(Fee5)+' 元';
AddGB.Visible:=true;
end;
procedure TFrmMoney_1.AddCancelButtonClick(Sender: TObject);
begin
AddGB.Visible:=false;
end;
procedure TFrmMoney_1.AdaySBClick(Sender: TObject);
var
MyToday:String;
begin
MyToday:=DateTimeToStr(Int(DateTimePicker1.DateTime));
with DataModule1.qHGuestInCome do
begin
Close;
SQL.Clear;
sql.Add('SELECT GuestName 客户姓名, LeaveDateTime 结算日期, FeeBed 客房费, FeeOffice 商务费,');
sql.Add('FeeDinner 餐饮费,FeePlay 娱乐费,FeeShop 购物费,FeeOther 其它费用,');
sql.Add('PayMode 付款方式 from tbHGuestInCome ');
sql.Add('where GuestID>=0 AND LeaveDateTime>="'+MyToday+'"');
sql.Add('AND PayMode like "%'+KindCB.Text +'%"');
Open;
end;
with DataModule1.qGHotelFee do
begin
Close;
SQL.Clear;
SQL.Add('select GuestName AS 支付方式,PayDateTime as 消费时间,');
SQL.Add('FeeOffice as 商务费, FeeDinner as 餐饮费,FeePlay as 娱乐费,');
SQL.Add(' FeeShop as 购物费,FeeOther as 其它费用');
SQL.Add('from tbGHotelFee where GuestID<0 and PayDateTime>="'+MyToday+'"');
SQL.Add('AND GuestName like "%'+KindCB.Text+'%"');
Open;
end;
end;
procedure TFrmMoney_1.AllSBClick(Sender: TObject);
begin
with DataModule1.qHGuestInCome do
begin
Close;
SQL.Clear;
sql.Add('SELECT GuestName 客户姓名, LeaveDateTime 结算日期, FeeBed 客房费, FeeOffice 商务费,');
sql.Add('FeeDinner 餐饮费,FeePlay 娱乐费,FeeShop 购物费,FeeOther 其它费用,');
sql.Add('PayMode 付款方式 from tbHGuestInCome where GuestID>=0 and ');
sql.Add('PayMode like "%'+KindCB.Text +'%"');
Open;
end;
with DataModule1.qGHotelFee do
begin
Close;
SQL.Clear;
SQL.Add('select GuestName AS 支付方式 ,PayDateTime as 消费时间,');
SQL.Add('FeeOffice as 商务费, FeeDinner as 餐饮费,FeePlay as 娱乐费,');
SQL.Add(' FeeShop as 购物费,FeeOther as 其它费用');
SQL.Add('from tbGHotelFee where GuestID<0 and ');
SQL.Add('GuestName Like "%'+KindCB.Text+'%"');
Open;
end;
end;
procedure TFrmMoney_1.AMonthSBClick(Sender: TObject);
var
Present: TDateTime;
Year, Month, Day: Word;
MM:String;
begin
Present:=DateTimePicker1.Date;
DecodeDate(Present, Year, Month, Day);
Present:=EncodeDate(Year,Month,1);
MM:=DateTimeToStr(Present);
with DataModule1.qHGuestInCome do
begin
Close;
SQL.Clear;
sql.Add('SELECT GuestName 客户姓名, LeaveDateTime 结算日期, FeeBed 客房费, FeeOffice 商务费,');
sql.Add('FeeDinner 餐饮费,FeePlay 娱乐费,FeeShop 购物费,FeeOther 其它费用,');
sql.Add('PayMode 付款方式 from tbHGuestInCome');
sql.Add('where GuestID>=0 and LeaveDateTime>="'+MM+'"');
sql.Add('AND PayMode like "%'+KindCB.Text +'%"');
Open;
end;
with DataModule1.qGHotelFee do
begin
Close;
SQL.Clear;
SQL.Add('select GuestName AS 支付方式,PayDateTime as 消费时间,');
SQL.Add('FeeOffice as 商务费, FeeDinner as 餐饮费,FeePlay as 娱乐费,');
SQL.Add(' FeeShop as 购物费,FeeOther as 其它费用');
SQL.Add('from tbGHotelFee where GuestID<0 and PayDateTime>="'+MM+'"');
SQL.Add('AND GuestName like "%'+KindCB.Text+'%"');
Open;
end;
end;
procedure TFrmMoney_1.AYearSBClick(Sender: TObject);
var
Present: TDateTime;
Year, Month, Day: Word;
YY:String;
begin
Present:=DateTimePicker1.Date;
DecodeDate(Present, Year, Month, Day);
Present:=EncodeDate(Year,1,1);
YY:=DateTimeToStr(Present);
with DataModule1.qHGuestInCome do
begin
Close;
SQL.Clear;
sql.Add('SELECT GuestName 客户姓名, LeaveDateTime 结算日期, FeeBed 客房费, FeeOffice 商务费,');
sql.Add('FeeDinner 餐饮费,FeePlay 娱乐费,FeeShop 购物费,FeeOther 其它费用,');
sql.Add('PayMode 付款方式 from tbHGuestInCome');
sql.Add('where GuestID>=0 and LeaveDateTime>="'+YY+'"');
sql.Add('AND PayMode like "%'+KindCB.Text +'%"');
Open;
end;
with DataModule1.qGHotelFee do
begin
Close;
SQL.Clear;
SQL.Add('select GuestName AS 支付方式,PayDateTime as 消费时间,');
SQL.Add('FeeOffice as 商务费, FeeDinner as 餐饮费,FeePlay as 娱乐费,');
SQL.Add(' FeeShop as 购物费,FeeOther as 其它费用');
SQL.Add('from tbGHotelFee where GuestID<0 and PayDateTime>="'+YY+'"');
SQL.Add('AND GuestName like "%'+KindCB.Text+'%"');
Open;
end;
end;
procedure TFrmMoney_1.PeriodSBClick(Sender: TObject);
begin
InputDateGB.Visible:=PeriodSB.Down;
end;
procedure TFrmMoney_1.InputDateGBClick(Sender: TObject);
begin
InputDateGB.Visible:=false;
PeriodSB.Down:=false;
end;
procedure TFrmMoney_1.DateOkSBClick(Sender: TObject);
var
StartDT,EndDT:string;
begin
StartDT:=DateTimeToStr(StartDTP.DateTime);
EndDT:=DateTimeToStr(EndDTP.DateTime);
with DataModule1.qHGuestInCome do
begin
Close;
SQL.Clear;
sql.Add('SELECT GuestName 客户姓名, LeaveDateTime 结算日期, FeeBed 客房费, FeeOffice 商务费,');
sql.Add('FeeDinner 餐饮费,FeePlay 娱乐费,FeeShop 购物费,FeeOther 其它费用,');
sql.Add('PayMode 付款方式 from tbHGuestInCome');
sql.Add('where GuestID>=0 and LeaveDateTime>="'+StartDT+'" AND LeaveDateTime<="'+EndDT+'"');
sql.Add('AND PayMode like "%'+KindCB.Text +'%"');
Open;
end;
with DataModule1.qGHotelFee do
begin
Close;
SQL.Clear;
SQL.Add('select GuestName AS 支付方式,PayDateTime as 消费时间,');
SQL.Add('FeeOffice as 商务费, FeeDinner as 餐饮费,FeePlay as 娱乐费,');
SQL.Add('FeeShop as 购物费,FeeOther as 其它费用 from tbGHotelFee');
SQL.Add('where GuestID<0 and PayDateTime>="'+StartDT+'" AND PayDateTime<="'+EndDT+'"');
SQL.Add('AND GuestName like "%'+KindCB.Text+'%"');
Open;
end;
InputDateGB.Visible:=false;
PeriodSB.Down:=false;
end;
procedure TFrmMoney_1.TotalSBCloseClick(Sender: TObject);
begin
AddGB.Visible:=false;
end;
procedure TFrmMoney_1.CloseTBClick(Sender: TObject);
begin
Close;
end;
procedure TFrmMoney_1.DelTButtonClick(Sender: TObject);
begin
DelDateGB.Visible:=True;
end;
procedure TFrmMoney_1.DelSBClick(Sender: TObject);
var
StartDT,EndDT:string;
begin
StartDT:=DateTimeToStr(DelStartDTP.DateTime);
EndDT:=DateTimeToStr(DelEndDTP.DateTime);
with DataModule1.qHGuestInCome do
begin
Close;
SQL.Clear;
sql.Add('DELETE tbHGuestInCome');
sql.Add('where LeaveDateTime>="'+StartDT+'" AND LeaveDateTime<="'+EndDT+'"');
ExecSQL;
end;
with DataModule1.qGHotelFee do
begin
Close;
SQL.Clear;
SQL.Add('DELETE tbGHotelFee');
SQL.Add('where PayDateTime>="'+StartDT+'" AND PayDateTime<="'+EndDT+'"');
ExecSQL;
end;
DelDateGB.Visible:=false;
end;
procedure TFrmMoney_1.DelCancelSPClick(Sender: TObject);
begin
DelDateGB.Visible:=false;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -