Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Datumswerte vor dem 30.12.1899 (https://www.delphipraxis.net/126952-datumswerte-vor-dem-30-12-1899-a.html)

p80286 5. Jan 2009 15:41


Datumswerte vor dem 30.12.1899
 
Hallo zusammen,

ist Delphi für Datumswerte die vor dem 30.12.1899 liegen eigentlich vollkommen blind?
oder sind die entsprechenden TDateTime-Werte dann negativ?

viele Grüße
K-H

DeddyH 5. Jan 2009 15:44

Re: Datumswerte vor dem 30.12.1899
 
Wie wäre es mit Ausprobieren?
Delphi-Quellcode:
ShowMessage(DateToStr(-365));

nahpets 5. Jan 2009 15:47

Re: Datumswerte vor dem 30.12.1899
 
Hallo,

-1 ist der 29.12.1899, -693593 der 1.1.0001, früher scheint nicht zu gehen.

s.h.a.r.k 5. Jan 2009 15:51

Re: Datumswerte vor dem 30.12.1899
 
was will ich denn bitte auch früher?!

notfalls musst du halt selbst etwas einführen!? einen eigenen datentyp (bsp.: record) mit eigenen funktionen eben. ich weiß eben nur nicht was du vor hast, aber ein problem sollte das nicht sein :mrgreen:

mschnell 5. Jan 2009 15:52

Re: Datumswerte vor dem 30.12.1899
 
Zitat:

Zitat von nahpets
-1 ist der 29.12.1899, -693593 der 1.1.0001, früher scheint nicht zu gehen.

Habe ich vor Jahren 'mal für eine alte Jedi-Version) gebastelt. Das Jahr 0 gibt es nicht. der Tag vor dem 1.1.0001, ist der 31.12.-0001 (wenn man die Jahre "vor Christus" mit Minus kennzeichnen will.

-Michael

mkinzler 5. Jan 2009 15:53

Re: Datumswerte vor dem 30.12.1899
 
Oder einen (negativen) Offset

WInfo 5. Jan 2009 16:07

Re: Datumswerte vor dem 30.12.1899
 
Moin Moin,

es gibt ja auch noch andere Methoden das Datum auszudrücken, z. B. JulianDate ist ebenfalls in der Unit DateUtils deklariert.

p80286 5. Jan 2009 16:24

Re: Datumswerte vor dem 30.12.1899
 
Wow
vielen Dank für die vielen Antworten,
Mein Problem liegt in einer Db in der einige Datumswerte vor 1899 liegen.
In einem Abfrage-Prototypen habe ich einfach mal .asdatetime genutzt und dabei wurde null mit dem 30.12.1899 übersetzt. Was nicht ganz meiner Intention entsprach.
Jetzt weiß (vermute) ich, daß man die Klippe auf die ich gestoßen bin, umschiffen kann.

Die Idee mit dem JulianDate gefällt mir, mal sehen was sich daraus machen läßt.

vielen Dank euch allen.

Gruß
K-H

P.S.
@s.h.a.r.k.
bis 2000 hat sich das bei WinzigWeich auch jeder gefragt.
Nicht oft aber es kommt vor daß man ein Datum aus dem vorletzten Jahrhundert (oder noch früher) braucht.
nichts für ungut ist nicht bös gemeint
K_H

Sunlight7 5. Jan 2009 16:53

Re: Datumswerte vor dem 30.12.1899
 
Zitat:

Zitat von p80286
ist Delphi für Datumswerte die vor dem 30.12.1899 liegen eigentlich vollkommen blind?

Zitat:

Zitat von Delphi Hilfe
Hinweis: Delphi 1.0 berechnete das Datum ausgehend von Jahr 1 statt von 1899. Um ein Datum aus dem Delphi 1.0-Format in das Delphi 2.0-Format umzuwandeln, ziehen Sie 693594.0 vom Delphi 1.0-Datum ab. Das Datumsformat wurde geändert, um kompatibel mit der OLE 2.0-Automatisierung zu sein.


mkinzler 5. Jan 2009 16:55

Re: Datumswerte vor dem 30.12.1899
 
Delphi verwendet das Windows Datumsformat ( Tage seit dem 31.12.1899)


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:41 Uhr.
Seite 1 von 2  1 2      

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