![]() |
Re: Letzte Änderung eines Datensatzes speichern
Hi Lombi,
die Dimensionierung des Array hat nichts mit der Anzahl der Edits auf der Form zu tun, sondern eher mit der Anzahl der Felder im DataSet. Für den Insert-Mode musst du noch eine Erweiterung im Ereignis OnBeforePost() machen:
Delphi-Quellcode:
Ich habe den Code nicht getestet. Die Schleife soll verlassen werden, sobald eine Änderung entdeckt wird. Bei Neuzugängen soll der Zeitstempel ohne Prüfung geschrieben werden.
procedure TDemoForm.TableBeforePost(DataSet: TDataSet);
var i: Integer; changed: Boolean; begin with DataSet do begin changed := State = dsInsert; i := Low(OldValues); while not changed and (i <= High(OldValues) do begin changed := changed or (OldValues[i] <> Fields[i].Value); Inc(i); end; end; if changed then DataSet['Update'] := Now; end; Grüße vom marabu |
Re: Letzte Änderung eines Datensatzes speichern
Herzlichen Dank marabu für Deine Hilfe. Die Datumsanzeige
funktioniert jetzt so wie ich das wollte. Letzte Frage: Was bedeutet Inc(i);? Danke nochmals! Lombi |
Re: Letzte Änderung eines Datensatzes speichern
Ikrementiere i,
Delphi-Quellcode:
also i := i +1;
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:47 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz