?? cmonth.pas
字號:
unit CMonth;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
ExtCtrls, DBCtrls, Grids, DBGrids, Db, DBTables, StdCtrls, ComCtrls;
type
TMMonth = class(TForm)
Turns: TDataSource;
Turn: TQuery;
DBGrid1: TDBGrid;
Button1: TButton;
GroupBox1: TGroupBox;
Label3: TLabel;
Label5: TLabel;
Label4: TLabel;
Label6: TLabel;
Label1: TLabel;
Label2: TLabel;
Button2: TButton;
Pick1: TDateTimePicker;
SumMon: TRadioButton;
SumDay: TRadioButton;
Bevel1: TBevel;
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormCreate(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure SumClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
MMonth: TMMonth;
implementation
uses XedUser, Data, Printers;
var
St1, St2: Word;
PDate: TDateTime;
{$R *.DFM}
procedure TMMonth.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action := caFree;
end;
procedure TMMonth.FormCreate(Sender: TObject);
begin
PDate := Date;
if Frac(Time) < 9 / 24 then PDate := PDate - 1;
Pick1.DateTime := PDate;
Label5.Caption := '';
Label6.Caption := '';
SumClick(Self);
end;
procedure TMMonth.Button3Click(Sender: TObject);
begin
Close;
end;
procedure TMMonth.Button1Click(Sender: TObject);
var
Prnt: TextFile;
begin
AssignPRN(Prnt);
Rewrite(Prnt);
Printer.Canvas.Font.Name := '宋體';
Printer.Canvas.Font.Style := [];
Printer.Canvas.Font.PixelsPerInch :=
GetDeviceCaps(Printer.Canvas.Handle, LOGPIXELSY);
Printer.Canvas.Font.Size := 16;
Writeln(Prnt, DateToStr(PDate) + '日結(jié)單');
Writeln(Prnt);
Writeln(Prnt, '流水號:', Label5.Caption, ' 至 ', Label6.Caption);
Writeln(Prnt);
Writeln(Prnt, Label1.Caption, Label2.Caption);
CloseFile(Prnt);
end;
procedure TMMonth.SumClick(Sender: TObject);
var
PYear, PMonth, PDay: Word;
Summ: Real;
begin
Turn.DisableControls;
PDate := Pick1.Date;
DecodeDate(PDate, PYear, PMonth, PDay);
if SumMon.Checked then begin
Turn.SQL.Text :=
'SELECT 日期,流水號,娛樂類別,名稱,實收金額 ' +
'From Ball00 A, Ball01 B Where ' +
'A.娛樂類別 = B.娛樂類別 ' +
'And EXTRACT(YEAR FROM B.日期) = :PPYear ' +
'And EXTRACT(MONTH FROM B.日期) = :PPmonth ' +
'And B.結(jié)帳標(biāo)志=True Order By 日期,娛樂類別,流水號';
Turn.ParamByName('PPYear').AsInteger := PYear;
Turn.ParamByName('PPMonth').AsInteger := PMonth;
end;
if SumDay.Checked then begin
Turn.SQL.Text :=
'Select A.名稱 as 項目,B.* From Ball00 A, Ball01 B ' +
'Where A.娛樂類別=B.娛樂類別 and 日期=:PPDate ' +
'and B.結(jié)帳標(biāo)志=True Order By 流水號, 娛樂類別';
Turn.ParamByName('PPDate').asDate := PDate;
Button1.Enabled := True;
end;
Turn.Open;
Turn.First;
Summ := 0.00;
try
St1 := Turn['流水號'];
Label5.Caption := inttostr(St1);
while not Turn.Eof do begin
Summ := Summ + Turn.FieldByName('實收金額').asFloat;
Turn.Next;
end;
St2 := Turn['流水號'];
Label6.Caption := inttostr(St2);
except
end;
Turn.First;
Turn.EnableControls;
Label2.Caption := Format('¥%0.2f 元', [Summ]);
end;
end.
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -