Aller au contenu principal

Getrenntes Datum und Zeit addieren

Commentaires

1 commentaire

  • Zendesk API User
    Author: matthiasforberg - 4/22/2015 9:52

    Zur Info, ich habe eine Lösung gefunden (aber besonders elegant finde ich die immer noch nicht).

    Folgender Vergleich des "Null-Datums" hat mich auf die Idee gebracht. Ich erzeuge mir ein Datum, von dem ich erwarte, dass es in Millisekunden ausgegeben Null sein muss:

    $CMS_VALUE(class("java.util.Date").new(70,0,1,0,0,0).format("yyyy-MM-dd HH:mm:ss"))$

    $CMS_VALUE(class("java.util.Date").new(70,0,1,0,0,0).milliseconds)$

    Ausgabe:

    1970-01-01 00:00:00

    -3600000

    Obwohl das formatierte Datum richtig mit 0:00 Uhr ausgegeben wird, haben die Millisekunden einen Offset von -1 Stunde.

    Lösung:

    Ich setze ganau diesen Offset als Konstante (in den Projekteinstellungen):

    $CMS_SET(psMillisecondsOffset, -(class("java.util.Date").new(70,0,1,0,0,0).milliseconds))$

    Und beim Addieren von Datum und Uhrzeiten gebe ich den noch dazu:

    $CMS_SET(setDateTimeNew, stDate.plus(stTime.milliseconds + psMillisecondsOffset))$

    Jetzt weiß ich zwar immer noch nicht, warum dieser Offset entsteht, aber immerhin korrigiere ich ihn mit sich selbst. Sollte er also doch mal 0 sein, passt es hoffentlich auch.

    (Im Internet habe ich übrigens Java-Forumseinträge von genau diesem Problem gefunden. Die haben aber keine Lösung gefunden, deswegen verweise ich hier nicht darauf.)

    Viele Grüße

    Matthias

    0

Vous devez vous connecter pour laisser un commentaire.