?? unit26.pas
字號:
unit Unit26;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Grids, DBGrids, DB, ADODB, StdCtrls, ComCtrls, Buttons;
type
TShouFenJinEr = class(TForm)
Label3: TLabel;
DTP1: TDateTimePicker;
Label4: TLabel;
DTP2: TDateTimePicker;
Button3: TButton;
ADOQuery1: TADOQuery;
DataSource1: TDataSource;
DBGrid1: TDBGrid;
Label1: TLabel;
Label2: TLabel;
Edit1: TEdit;
Edit2: TEdit;
Label5: TLabel;
BitBtn2: TBitBtn;
BitBtn1: TBitBtn;
BitBtn3: TBitBtn;
procedure FormShow(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure FormCanResize(Sender: TObject; var NewWidth,
NewHeight: Integer; var Resize: Boolean);
procedure BitBtn1Click(Sender: TObject);
procedure BitBtn2Click(Sender: TObject);
procedure BitBtn3Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
ShouFenJinEr: TShouFenJinEr;
implementation
uses Unit11, Unit1, Unit16;
{$R *.dfm}
procedure TShouFenJinEr.FormShow(Sender: TObject);
begin
if trim(opcase)='管理員' then
BitBtn1.Enabled:=true
else
BitBtn1.Enabled:=false;
BitBtn2.Enabled:=false;
BitBtn3.Enabled:=false;
dtp1.DateTime:=now;
dtp2.DateTime:=now;
edit1.Clear;
edit2.Clear;
adoquery1.Close;
adoquery1.SQL.Clear;
adoquery1.SQL.Add('select sum(money) as 總收費金額,count(*) as 收費次數 from recharge where opname=:opname');
adoquery1.Parameters.ParamByName('opname').Value:=trim(user);
adoquery1.Open;
edit1.Text:=inttostr(adoquery1.Fields[1].Value); //顯示所有的收費次數
edit2.Text:=floattostr(adoquery1.Fields[0].Value); //顯示所有的總收費金額
adoquery1.Close;
adoquery1.SQL.Clear;
adoquery1.SQL.Add('select cardid as 卡號,money as 收費,chargetime as 收費時間 from recharge where opname=:opname');
adoquery1.Parameters.ParamByName('opname').Value:=trim(user);
adoquery1.Open;
self.Caption:='收費金額 - '+trim(user);
end;
procedure TShouFenJinEr.Button3Click(Sender: TObject);
begin
BitBtn2.Enabled:=false;
BitBtn3.Enabled:=false; //個人收費不能打印和刪除
adoquery1.Close;
adoquery1.SQL.Clear;
adoquery1.SQL.Add('select sum(money) as 總收費金額,count(*) as 收費次數 from recharge where chargetime between :time1 and :time2 and opname=:opname');
adoquery1.Parameters.ParamByName('opname').Value:=trim(user);
adoquery1.Parameters.ParamByName('time1').Value:=dtp1.DateTime;
adoquery1.Parameters.ParamByName('time2').Value:=dtp2.DateTime;
adoquery1.Open;
if (adoquery1.Fields[0].Value<>null)and(adoquery1.Fields[1].Value<>null) then
begin
edit1.Text:=inttostr(adoquery1.Fields[1].Value); //顯示某個時間段的收費次數
edit2.Text:=floattostr(adoquery1.Fields[0].Value); //顯示某個時間段的總收費金額
end
else
begin
edit1.Text:='0';
edit2.Text:='0';
end;
adoquery1.Close;
adoquery1.SQL.Clear;
adoquery1.SQL.Add('select cardid as 卡號,money as 收費,chargetime as 收費時間 from recharge where chargetime between :time1 and :time2 and opname=:opname');
adoquery1.Parameters.ParamByName('opname').Value:=trim(user);
adoquery1.Parameters.ParamByName('time1').Value:=dtp1.DateTime;
adoquery1.Parameters.ParamByName('time2').Value:=dtp2.DateTime;
adoquery1.Open;
self.Caption:='收費金額 - '+trim(user);
end;
procedure TShouFenJinEr.FormCanResize(Sender: TObject; var NewWidth,
NewHeight: Integer; var Resize: Boolean);
begin
Resize:=false;
end;
procedure TShouFenJinEr.BitBtn1Click(Sender: TObject);
begin
BitBtn2.Enabled:=true;
BitBtn3.Enabled:=true;
ADOQuery1.Close;
adoquery1.SQL.Clear;
adoquery1.SQL.Add('select opname as 操作員,sum(money)as 收費總額,count(*) as 收費次數 from recharge where chargetime between :time1 and :time2 group by opname');
adoquery1.Parameters.ParamByName('time1').Value:=dtp1.DateTime;
adoquery1.Parameters.ParamByName('time2').Value:=dtp2.DateTime;
adoquery1.Open;
edit1.Clear;
edit2.Clear;
self.Caption:='所以用戶的收費統計';
end;
procedure TShouFenJinEr.BitBtn2Click(Sender: TObject);
begin
if messagedlg('您確定要刪除收費記錄?'+#13+'刪除后將不能恢復。',mtconfirmation,[mbok,mbno],0)=mrok then
begin
ADOQuery1.Close;
adoquery1.SQL.Clear;
adoquery1.SQL.Add('delete from recharge where chargetime between :time1 and :time2');
adoquery1.Parameters.ParamByName('time1').Value:=dtp1.DateTime;
adoquery1.Parameters.ParamByName('time2').Value:=dtp2.DateTime;
adoquery1.ExecSQL;
end
end;
procedure TShouFenJinEr.BitBtn3Click(Sender: TObject);
begin
with czysf do
begin
adoquery1.Open;
quickrep1.DataSet:=adoquery1;
qrdbtext1.DataSet:=adoquery1;
qrdbtext1.DataField:='操作員';
qrdbtext2.DataSet:=adoquery1;
qrdbtext2.DataField:='收費總額';
qrdbtext3.DataSet:=adoquery1;
qrdbtext3.DataField:='收費次數';
qrlabel5.Caption:=datetostr(dtp1.DateTime);
qrlabel7.Caption:=datetostr(dtp2.DateTime);
qrlabel9.Caption:=trim(user);
quickrep1.Preview;
end
end;
end.
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -