![]() |
Datenbank: IBLite • Version: 2020 • Zugriff über: FDConnection
TTtime Felder im Grid werden immer aktualisiert
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo,
ich habe immer noch ein merkwürdiges Verhalten in einem Grid Die folgenden Datenbankfelder sind vorhanden: - Id String - MitarbeiterId String - Datum TDate - Anfang TDateTime - Ende TDateTime - Start TTime - Ende TTime usw. Bei einem ButtonClick wird ein Eintrag in die Datenbank geschrieben nun werden alle Felder werden in der Datenbank korrekt gespeichert und ändern sich nicht bis auf die TTime Felder die werden im Grid ständig aktualisiert sobald der Mauszeiger das Grid berührt oder ein neuer Eintrag getätigt wird. Das ist zum verzweifeln, wie gesagt in der DB ist es richtig alle anderen Felder nicht betroffen! |
AW: TTtime Felder im Grid werden immer aktualisiert
Code wäre nicht schlecht. Augenschonende Farben auch.
|
AW: TTtime Felder im Grid werden immer aktualisiert
Hallo ja Farben mach ich noch ist ja ein Test
Also es gibt nur diesen CODE!!! procedure TfraMain.btnArbeitClick(Sender: TObject); var vGuid : TGuid; begin CreateGuid(vGuid); ZeitenEdit.Open; ZeitenEdit.Insert; ZeitenEditId.Value := GuidToString(vGuid); ZeitenEditIDMITARBEITER.AsString := vMitarbeiterId; ZeitenEditBUCHUNGSART.Astring := 'AZ'; ZeitenEditDatum.asDateTime := DateOf( Now ); ZeitenEditANFANGZEIT.AsDateTime := Now ZeitenEditJAHR.Value := YearOf(Now); ZeitenEditMONAT.Value := IntToStr(MonthOf(Now)); ZeitenEditTAG.Value := IntToStr(DayOf(Now)); ZeitenEditSTART.AsDateTime := TimeOf( vStartArbeit ); ZeitenEdit.Post; ZeitenEdit.Close; end Es muss irgendwie an dem Grid bzw FMX liegen, da die Daten in der DB richtig stehen. |
AW: TTtime Felder im Grid werden immer aktualisiert
Vielleicht könnte mal wer im Debugger nachsehn, ob das OnClick oder z.B. BeforeInsert/AfterInsert/BeforePost/AfterPost wirlich nicht aufgerufen werden?
Wenn du sofort eine Close machst, warum bleiben dann die Anzeigen im Grid bestehen? Bzw. WIE kommen die Daten ins Grid? (über ein DataBinding von ZeitenEdit wohl eher nicht) zusätzliche Tipps: * ein [DELPHI] ... [/DELPHI] um deinen Code drumrum (du hättest noch dreiviertel Tag zum Editieren) * und
Delphi-Quellcode:
TGUID.NewGuid.ToString
|
AW: TTtime Felder im Grid werden immer aktualisiert
Ein kleines Beispielprojekt würde hier auch deutlich mehr Informationen liefern als ein einzelner Event-Handler. Die Ursache für ein Problem steckt oft an einer ganz anderen Stelle als man vermutet.
|
AW: TTtime Felder im Grid werden immer aktualisiert
Zitat:
Zitat:
Delphi-Quellcode:
ZeitenEditANFANGZEIT.AsDateTime := Now
Fehlt da nicht ein TimeOf? Fehlt dahinter nicht ein ; Fragen zum Datenbank-Design würden sich auch noch stellen. (aber das ist eine andere Angelegenheit) Warum sind die Daten doppelt mehrfach in der Tabelle? * Ein Feld reicht. (Das dann für die Anzeige im SELECT aufzuteilen, ist eine andere Sache) * das mehrfache
Delphi-Quellcode:
kann sich zur Laufzeit ändern. (z.B. einen Hauch vor Mitternacht gecklickt, kann das letzte
Now
Delphi-Quellcode:
nach Mitternacht sein und schon passen die Daten nicht mehr zusammen)
Now
* und wenn man die Daten bearbeitet, aber irgendwo ein Feld vergisst, war's das auch wieder, mit der Konsistenz Warum
Delphi-Quellcode:
ZeitenEditTAG.Value := IntToStr(DayOf(Now));
anstatt
Delphi-Quellcode:
ZeitenEditTAG.AsString := IntToStr(DayOf(Now));
oder gar
Delphi-Quellcode:
ZeitenEditTAG.AsInteger := DayOf(Now);
|
AW: TTtime Felder im Grid werden immer aktualisiert
Danke für eure Antworten!
die Felder sind doppelt um verschiedene Feldtypen auszuprobieren, manches hatte ich zur Vereinfachung gekürzt um nur das Problem zu schildern. Ein Problem mit dem keiner gerechnet hat. Inzwischen weiß ich, das es am FMXGrid liegt! Sobald dort (und nur dort) eine Spalte unter dem Punkt ColumnStyle "TimeColumn" erhält wird die 'Uhrzeit' bei jeder nur erdenklichen Aktion aktualisiert. Trotzdem nochmal DANKE |
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:03 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