![](styles/elise/misc/quote_24x24.png)
Zitat von
haentschman:
... habe ich einfach Angst, daß bei der Berechnung die Performance in den Keller geht.
Die Daten werden doch über die GROUP BY Klausel verdichtet - pro Tag nur ein Datensatz.
Das Grid zeigt davon vielleicht 30 Datensätze auf dem Bildschirm an; also wird bei jedem Scrollen 30 Mal das Event OnCalcFields aufgerufen.
Selbst leistungsschwache Rechner haben mit der einfachen Prozentberechnung kein Problem.
Delphi-Quellcode:
// ungetestet
procedure TForm1.QuerySummeCalcFields(Dataset:TDataset);
const
WORKING_HOURS_PER_DAY = 8.0;
begin
Dataset['Auslastung'] := Dataset.FieldByName('WorkingHours').AsFloat / (Dataset.FieldByName('WorkersCount').AsFloat * WORKING_HOURS_PER_DAY) * 100.0;
end;