Eine BeforePost-Methode kann man mehreren Datenbankkomponenten zuweisen.
Beispiel:
Delphi-Quellcode:
type
TForm1 = class(TForm)
qryAnschriften: TZQuery; // oder sonstein genutzter Komponententyp
qryRechnungen: TZQuery; // oder sonstein genutzter Komponententyp
...
procedure AnyTableBeforePost(DataSet: TDataSet);
...
procedure TForm1.FormCreate(Sender: TObject);
begin
qryAnschriften.BeforePost := AnyTableBeforePost;
qryRechnungen.BeforePost := AnyTableBeforePost;
...
end;
procedure TForm1.AnyTableBeforePost(DataSet: TDataSet);
begin
DataSet.FieldByName('Username').AsString := DeineGetUserNameFunktionOderVariabelOderSowas;
DataSet.FieldByName('Datum').AsString := Now;
end;
Nachteil: Wird, am Programm vorbei, direkt auf der Datenbank gearbeitet oder mit anderen Clients, fehlen die im BeforePost gesetzten Informationen natürlich.