Ich habe das Problem mit der Funktion
DATUM mittlerweile selbst mal genauer untersucht und folgendes festgestellt:
- Die Beschreibung in der Hilfe ist falsch (was den Typ von DATUM betriftt)
Die Beschreibung in der Hilfe ist falsch (was das Format betrifft)
Die Umwandlung in eines Wertes vom Typ [Datum] in eine [Zeichen]-Folge ist bedingt fehlerhaft
Die Funktion
DATUM liefert das aktuelle Datum im
internen Format. Das ist die Zeit in Tagen seit 1899-12-30 00:00:00. Wobei eine Stunde einem 1/24 Tag entspricht, eine Minute einem 1/60 davon etc. (Wie z.B. in Excel, wo allerdings die Bezugsbasis wohl eine andere ist.) Das
externe Darstellungsformat als [Zeichen]-Folge, wie in der Hilfe unter
DATUM absolut irreführend erwähnt, hat damit erst mal überhaupt gar nichts zu tun! Und ist im Übrigen vom eingestellten
Windows System-Datumsformat abhängig.
Werte vom
Typ [Datum], [Zeit] oder [Uhr] unterscheiden sich
nicht in ihrer internen Darstellung (und sind daher auch zuweisungskompatibel).
Folgende lokalen Variablen seien in einem Objekt deklariert:
- d [Datum]
z [Zeit]
u [Uhr]
s [Zeichen]
Im Debugger erkennt man (in einem Beispiel) die unterschiedlichen Typen:
- d: 2012-09-21 14:31:01 [Datum] (Zeit)
z: 2012-09-21 14:31:01 [Zeit] (Zeit)
u: 2012-09-21 14:31:01 [Uhr] (Zeit)
Wobei die für manchen ungewohnte (aber eigentlich einzig vernünftige)
JJJJ-MM-TT HH:mm:ss Darstellung daran liegt, dass bei mir das System-Datumsformat in den Regions- und Sprachoptionen unter Windows so eingestellt ist.
Entscheidend ist der
passende Variablentyp bei der
Umwandlung in eine [Zeichen]folge:
- s:= d (ergibt 2012-021)
s:= z (ergibt 2012-09-21 14:31:01)
s:= u (ergibt 14:31:01)
Bei eingestelltem System-Datumsformat
TT.MM.JJ liefert die Zuweisung s:= d wohl das erwartete Ergebnis. Habe ich aber nicht nachgeprüft. Vermutlich ist die bei der internen Umwandlung benutzte Hilfs-Zeichenvariable nur 8 Zeichen lang, jedes längere System-Datumsformat liefert dann - wie hier - nur Schrott!
Appell an den Hersteller
- 1. Die Hilfe bezüglich DATUM müsste dringendst berichtigt werden!
2. Bei allen Punkten zu Zeitformaten müsste darauf hingewiesen werden, dass die Darstellung vom Windows System-Datumsformat abhängt!
3. Die Unterschiede zwischen den Typen [Datum], [Zeit] oder [Uhr] müssten irgendwo erklärt werden. Insbesondere Anfänger bzw. Nicht-Programmierer blicken's sonst nicht, wozu man welchen Typ verwendet!
4. Der "Sextaner"-Fehler in der Datumskonvertierung müsste beseitigt werden.
btw:
- warum funktioniert
hier eigentlich
die Formatierung mit List= nicht?
FHZ 1000 PC, Homeputer Studio V2.0 Rel. 120301
FHT80b-Raumregler, Windows XP (SP3)
Bugs? - Das sind keine Bugs! Das sind Features!