procedure Tform.gdPrnDrawFooterCell(Sender: TObject; Canvas: TCanvas;
FooterCellRect: TRect; Field: TField; var FooterText: String;
var DefaultDrawing: Boolean);
var
AddUp:TAggregate;
fSum : Double;
SumTotal : Double;
PrevRecord : TBookmark;
TC : TClientDataSet;
begin
if (Assigned(Field) and (
(Field is TFMTBCDField) or
(Field is TSmallintField) or
(Field is TIntegerField) or
(Field is TBCDField))) then begin
TC :=TClientDataSet((Sender as TSMDBGrid).DataSource.DataSet);
TC.AggregatesActive := True;
Addup:=TAggregate.Create(TC.Aggregates,TC);
Addup.Expression := 'Sum(['+Field.FieldName+'])';
Addup.active:=True;
if Addup.Value = null then begin
fSum := 0;
end else begin
fSum := Addup.Value;
end;
FooterText := FormatFloat('#,0.00',fSum);
Addup.Free;
end;
end;
- Apr 29 Sun 2012 00:37
-
[delphi] Grid Footer 合計


請先 登入 以發表留言。