0

Addition von Datum (today()) mit lfd. Nummer (Zahl) ergibt falschen Wert.

Ich habe eine Tabelle mit Nummern im Bereich 1 - 28 (Tage innerhalb von 4 Wochen). 

 

Die Berechnung lautet today() + 'lfd. Tag (1-28)' und funktioniert nicht zuverlässig.

 

Bspw. bekomme ich für heute, 22.10.2018 sowohl addiert mit 6  als auch addiert mit 7 das Datum 28.20.2018. Ich verstehe nicht, wieso das so ist. Habt ihr eine Idee?

Bildschirmfoto 2018-10-22 um 15.43.40

6 Antworten

null
    • Leonid_Semik
    • vor 6 Jahren
    • Gemeldet - anzeigen

    Ich würde sagen: "Sommerzeit". Von 27 auf 28 ist die Zeitumstellung und viele Systeme spielen verrückt. Versuch mal so:

    ---

    date(year(today()),month(today()),day(today())+'lfd. Tag (1-28)')

    ---

    Leo

    • Ninox-Professional
    • planoxpro
    • vor 6 Jahren
    • Gemeldet - anzeigen

    Könnte an der bevorstehenden Umstellung von Sommer- auf Winterzeit liegen. Um sicher zu gehen, vielleicht mal so probieren:

     

    date(year(today()), month(today()), day(today()) + 'lfd. Tag (1 - 28)')

    • Ninox-Professional
    • planoxpro
    • vor 6 Jahren
    • Gemeldet - anzeigen

    Autsch! Ich geb's auf ... ;)

    • okraftdd
    • vor 6 Jahren
    • Gemeldet - anzeigen

    Warum auch immer. Das funktioniert. Verstehe nur nicht, wieso today() etwas mit Zeitumstellung zu tun hat, wenn es doch ausschließlich das Datum und nicht die Zeit betrifft...

    Wie auch immer: Vielen Dank!

    • Leonid_Semik
    • vor 6 Jahren
    • Gemeldet - anzeigen

    Bei der Konstellation today()+Zahl wandelt Ninox intern das Datum und die Zahl in Millisekunden, addiert diese und wandelt zurück ins Datumformat. Da am 28.10 eine Stunde wegen Zeitunmstellung fehlt, landet Ninox bei 22.10+(7*24*60*60*1000) Millisekunden nicht auf 29.10 sondern auf 28.10. Das Ganze zieht sich bis Sommerzeitumstellung.

    Leo

    • okraftdd
    • vor 6 Jahren
    • Gemeldet - anzeigen

    Danke dir, Leo. 

Content aside

  • vor 6 JahrenZuletzt aktiv
  • 6Antworten
  • 2318Ansichten