Das Event
OnCalcFields wird ausschlieslich dazu benutzt berechnete Felder
zu bestücken.
Delphi-Quellcode:
// hier ein Beispiel
procedure TFrmAbholung.QryPaketCalcFields(DataSet: TDataSet);
var
l,b, h : Double;
begin
l := DataSet.fieldbyname('Laenge').AsFloat * 10.0;
b := DataSet.fieldbyname('Breite').AsFloat * 10.0;
h := DataSet.fieldbyname('Hoehe').AsFloat * 10.0;
// berechendes Feld mit Daten befüllen
DataSet['Abmasse'] := Format('%3.0f x %3.0f x %3.0f', [l,b,h]);
end;
Um Datenfelder zu bestücken sind die Events
- AfterEdit
- AfterInsert
- BeforePost
- BeforeCancel (nur begrenzt sinnvoll)
zu verwenden. Denn nur innerhalb diesen Events befindet sich die Datenmenge
im Zustand dsEdit oder dsInsert.