AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Datum Uhrzeit im Grid

Ein Thema von tkhandel · begonnen am 20. Mär 2023 · letzter Beitrag vom 21. Mär 2023
Antwort Antwort
tkhandel

Registriert seit: 2. Jan 2022
Ort: Arnsberg im Sauerland
57 Beiträge
 
Delphi 10.4 Sydney
 
#1

Datum Uhrzeit im Grid

  Alt 20. Mär 2023, 09:39
Hallo,

Ich habe eine Interbase Datenbank in der Start und Endzeiten erfasst werden.
Start und Endzeit wird ganz simple per OnClick festgehalten
Es gibt in der DB die Felder Start und Ende = jeweils Timestamp und zusätzlich
Startzeit und Endzeit als Timefield und Datum als Datefield,
wenn ich nun die Daten abspeichere werden alle Felder in der DB ordnungsgemäß
gefüllt, die Werte stimmen alle in der DB!

Im Grid (FMX) allerdings werden in allen Timefield Feldern, in allen Zeilen die
Zeiten beim ButtonClick immer wieder aktualisiert, wie gesagt in der DB steht es richtig!

ich habe schon alles mögliche probiert, was kann das sein ?
Miniaturansicht angehängter Grafiken
zeiten.png  
Jürgen
  Mit Zitat antworten Zitat
bcvs

Registriert seit: 16. Jun 2011
668 Beiträge
 
Delphi 12 Athens
 
#2

AW: Datum Uhrzeit im Grid

  Alt 20. Mär 2023, 10:38
Was machst du denn da genau in dem OnClick? Zeig mal Code.
  Mit Zitat antworten Zitat
tkhandel

Registriert seit: 2. Jan 2022
Ort: Arnsberg im Sauerland
57 Beiträge
 
Delphi 10.4 Sydney
 
#3

AW: Datum Uhrzeit im Grid

  Alt 20. Mär 2023, 20:24
Hallo also hab mich doof ausgedrückt
die Zeiten (TTime Felder) im Grid werden beim click auf das Grid oder beim einfügen eines Datensatzes aktualisiert
soll heißen mit der aktuellen Uhrzeit gefüllt.

Es gibt im ganzen Quellcode (wenig Code überhaupt) nichts was das auslösen könnte da in der Datenbank
selber die echten werte stehen kann es ja nur am Grid, an der Bindung oder an den Einstellungen
der FDConnection liegen, ich finde aber nix. Komischerweise werden die Timestamp Felder nicht aktualisiert.

Der Code zum Einfügen einer Zeit in die Liste sieht so aus:

procedure TfraMain.btnArbeitClick(Sender: TObject);
var
vGuid : TGuid;
vZeit : TTime;
begin
with dmMain do
begin
ZeitenListe.Close;
if vArbeitLauft = False then
begin
vArbeitLauft := true;
vStartArbeit := Now;

btnArbeit.Text := 'STOP';
lblArbeitStart.text := DateTimeToStr(vStartArbeit);
lblArbeitEnde.text := '-';
CreateGuid(vGuid);
vActiveGuid := vGuid;
//Insert neuer Datensatz!
ZeitenEdit.Open;
ZeitenEdit.Insert;
ZeitenEditId.Value := GuidToString(vGuid);
ZeitenEditIDMITARBEITER.AsString := vMitarbeiterId;
ZeitenEditBUCHUNGSART.AsString := 'AZ';

ZeitenEditDatum.asDateTime := DateOf( vStartArbeit );

ZeitenEditANFANGZEIT.AsDateTime := vStartArbeit;
ZeitenEditJAHR.Value := YearOf(vStartArbeit);

if MonthOf(vStartArbeit) < 10 then
ZeitenEditMONAT.Value := '0' + IntToStr(MonthOf(vStartArbeit))
else ZeitenEditMONAT.Value := IntToStr(MonthOf(vStartArbeit));

if DayOf(vStartArbeit) < 10 then
ZeitenEditTag.Value := '0' + IntToStr(DayOf(vStartArbeit))
else ZeitenEditTAG.Value := IntToStr(DayOf(vStartArbeit));

ZeitenEditBEMERKUNG.AsString := 'Testbemerkung';

ZeitenEditSTART.AsDateTime := TimeOf( vStartArbeit );


ZeitenEditGesendet.Value := False;

ZeitenEdit.Post;
ZeitenEdit.Close;
end
else
begin
vArbeitLauft := false;
vEndeArbeit := Now;
btnArbeit.Text := 'START';
lblArbeitEnde.text := DateTimeToStr(vEndeArbeit);
vZeit := vEndeArbeit - vStartArbeit;
Label1.Text := TimeToStr(vZeit);
//Update auf bestehenden Datensatz!
ZeitenEdit.Open;
ZeitenEdit.Filtered := false;
ZeitenEdit.Filter := 'Id = ' + QuotedStr( GUIDToString(vActiveGuid));
ZeitenEdit.Filtered := true;
ZeitenEdit.Edit;
ZeitenEditENDEZEIT.AsDateTime := vEndeArbeit;
ZeitenEditENDE.Value := TimeOf( vEndeArbeit );
ZeitenEdit.Post;
ZeitenEdit.Close;
ZeitenEdit.Filtered := false;
ZeitenEdit.Filter := '';
//ZeitenUpdate.Close;
//ZeitenUpdate.Params[0].Value := vEndeArbeit;
//ZeitenUpdate.Params[1].Value := QuotedStr( GUIDToString(vActiveGuid));
//ZeitenUpdate.ExecSQL;

end;
ZeitenListe.Open;
end;
end;


Es gibt sonst nix mehr an Code außer Application.Terminate
Jürgen
  Mit Zitat antworten Zitat
bcvs

Registriert seit: 16. Jun 2011
668 Beiträge
 
Delphi 12 Athens
 
#4

AW: Datum Uhrzeit im Grid

  Alt 21. Mär 2023, 16:38
In dem Code finde ich jetzt auch nichts, was das auslösen könnte. Das wird auch noch dadurch erschwert, dass dein Code ohne Einrückungen und mit dem With sehr schlecht lesbar ist.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:33 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz