Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   TDate im Json (https://www.delphipraxis.net/209013-tdate-im-json.html)

Uwe Raabe 14. Okt 2021 09:46

AW: TDate im Json
 
Wenn in dem String kein Datum sondern die Zahl 44298 steht, dann sollte es nicht
Delphi-Quellcode:
dtVal := StrToFloatDef(Arg, 0)
heißen, sondern
Delphi-Quellcode:
dtVal := StrToIntDef(Arg, 0)
.

Edit: Aber das erklärt leider noch nicht den Fehler.

Rollo62 14. Okt 2021 10:03

AW: TDate im Json
 
Zitat:

Zitat von Incocnito (Beitrag 1496054)
Frage: Werden Dates wirklich "2021-10-14T00:00:00.000Z" gespeichert?

Hier ganz gut zusammengefasst
https://www.ionos.de/digitalguide/we...lung/iso-8601/

So sollte es aussehen
Zitat:

2019-09-07T15:50+01:00
Was ich vermute war das Du Date und Zeitanteil getrennt hast, wie auch Uwe schrieb,
wenn die Zahl wirklich Integer ist, dann wird das der "ganzzahlige" Date-Anteil sein.
Die Nachkommastellen der Zeitanteils sind dabei unter den Tisch gefallen ( deshalb T00:00:00.000Z );

Entweder findest Du den Zeitanteil im 2ten DateTime Speicher, oder der wurde nie als Double abgespeichert und ist damit verloren.

Incocnito 14. Okt 2021 10:46

AW: TDate im Json
 
Ah, jetzt weiß ich glaube ich wieso ihr auf den Zeitanteil kommt...
Die Struktur in der Datenbank war vom Prinzip:
Code:
{
 "Wert1":12345,
 "Wert2":"BlaBlub",
 "Wert3":{
  "Wert4":12.45,
  "Wert5":12345
  "Wert6":"BlubTest"
 }
}
Da musste ich nicht nur "Wert1" als [JsonMyDate] definieren, sondern auch "Wert5".
Dabei ist auch tatsächlich nur der Datumswert interessant, den Zeitanteil braucht man in dem Fall überhaubt nicht.
Dass ich statt "ToInt" "ToFloat" genommen habe, war eher so ein Reflex um bei zukünfitgen Änderungen nicht gleich
irgendwas kaputt zu machen. "ToFloat" kann halt mehr verarbeiten als "ToInt", mehr steckte da gar nicht hinter,
reine Vorsichtsmaßnahme. Ich fange öfters mal Fehler ab, die gar nicht sein können.


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:13 Uhr.
Seite 2 von 2     12   

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