Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Blockly
  5. Alter berechnen

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.7k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.2k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    16
    1
    3.2k

Alter berechnen

Geplant Angeheftet Gesperrt Verschoben Blockly
57 Beiträge 10 Kommentatoren 6.1k Aufrufe 7 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • David G.D David G.

    Hey,

    melde mich nach ewigen nochmal zu dem Thread.
    Ich wollte das Blockly jetzt anstatt zum berechnen des Alters zum errechnen eines Countdowns bis zum Geburtstag verwenden.

    Bei Start das aktuelle Datum rein und bei Ende den Geburtstag.

    Allerdings liege ich dort daneben.
    Kann ich die Funktion für die "Richtung" nicht nehmen? Oder habe ich einen Fehler beim nachrechnen?

    Von heute dem 16.6 bis zum 6.8 komme ich auf 1 Monat und 20 Tage.
    Hab es mii hier mal visualisiert. An welchem Tag er wie viele Tage anzeigen müsste:

    06.08.2023	0 Geburtstag 
    05.08.2023	1
    04.08.2023	2
    03.08.2023	3
    02.08.2023	4
    01.08.2023	5
    31.07.2023	
    30.07.2023	
    29.07.2023	
    28.07.2023	
    27.07.2023	
    26.07.2023	
    25.07.2023	
    24.07.2023	
    23.07.2023	
    22.07.2023	
    21.07.2023	
    20.07.2023	
    19.07.2023	
    18.07.2023	
    17.07.2023	
    16.07.2023	
    15.07.2023	
    14.07.2023	
    13.07.2023	
    12.07.2023	
    11.07.2023	
    10.07.2023	
    09.07.2023	
    08.07.2023	
    07.07.2023	
    06.07.2023	
    05.07.2023	
    04.07.2023	
    03.07.2023	
    02.07.2023	
    01.07.2023	
    30.06.2023	6
    29.06.2023	7
    28.06.2023	8
    27.06.2023	9
    26.06.2023	10
    25.06.2023	11
    24.06.2023	12
    23.06.2023	13
    22.06.2023	14
    21.06.2023	15
    20.06.2023	16
    19.06.2023	17
    18.06.2023	18
    17.06.2023	19
    16.06.2023	20
    

    Beim Skript komme ich jedoch auf 21 Tage.

    sten-torS Online
    sten-torS Online
    sten-tor
    schrieb am zuletzt editiert von
    #47

    @david-g sagte in Alter berechnen:

    Beim Skript komme ich jedoch auf 21 Tage.

    ...was meines Erachtens auch stimmt. Vom 16.6. bis 16.7. ist es 1 Monat. Und dann muss dein Sohnemann noch 21 Tage auf seinen Geburtstag warten. Geh das gern mal auf einem Kalender durch. Oder auch hier nachzuvollziehen: https://www.timeanddate.de/datum/zeitspanne-ergebnis?d1=16&m1=6&y1=2023&d2=06&m2=08&y2=2023

    David G.D 1 Antwort Letzte Antwort
    0
    • David G.D David G.

      Hallo,

      melde mich nochmal zu dem Script.
      Leider scheint es doch nicht ganz zu klappen.

      Mein Sohn wird am 6.8.22 4 Jahre alt.
      Im Skript hab ich demnach den 6.8.18 als Geburtstag angegeben.

      Jedoch kommt heute (am 28.7.22) als alter 4 Jahre 0 Monate und 22 Tage raus.

      Hat jemand eine Idee woran das liegt?

      EDIT
      Hab grad gesehen, dass er bei meinem Geburtstag am 19.9 auch einen Monat zu weit ist (Tage habe ich nicht nachgerechnet)

      sten-torS Online
      sten-torS Online
      sten-tor
      schrieb am zuletzt editiert von
      #48

      @david-g sagte in Alter berechnen:

      Hat jemand eine Idee woran das liegt?

      Zu deinem alten Post vom letzten Jahr: Da hast du bestimmt einen Dreher in deinem Funktionsaufruf drin. Denn in meiner Originalversion stimmts:
      IMG_20230617_002404.jpg

      1 Antwort Letzte Antwort
      0
      • sten-torS sten-tor

        @david-g sagte in Alter berechnen:

        Beim Skript komme ich jedoch auf 21 Tage.

        ...was meines Erachtens auch stimmt. Vom 16.6. bis 16.7. ist es 1 Monat. Und dann muss dein Sohnemann noch 21 Tage auf seinen Geburtstag warten. Geh das gern mal auf einem Kalender durch. Oder auch hier nachzuvollziehen: https://www.timeanddate.de/datum/zeitspanne-ergebnis?d1=16&m1=6&y1=2023&d2=06&m2=08&y2=2023

        David G.D Online
        David G.D Online
        David G.
        schrieb am zuletzt editiert von David G.
        #49

        @sten-tor

        Habe ich hier dann einen Fehler für die anzuzeigenden Tage (Den Monat habe ich nicht gezahlt, eben 1 Monat)?

        Datum.           Tage verbleibend 
        
        06.08.2023	0 Geburtstag 
        05.08.2023	1
        04.08.2023	2
        03.08.2023	3
        02.08.2023	4
        01.08.2023	5
        31.07.2023	
        30.07.2023	
        29.07.2023	
        28.07.2023	
        27.07.2023	
        26.07.2023	
        25.07.2023	
        24.07.2023	
        23.07.2023	
        22.07.2023	
        21.07.2023	
        20.07.2023	
        19.07.2023	
        18.07.2023	
        17.07.2023	
        16.07.2023	
        15.07.2023	
        14.07.2023	
        13.07.2023	
        12.07.2023	
        11.07.2023	
        10.07.2023	
        09.07.2023	
        08.07.2023	
        07.07.2023	
        06.07.2023	
        05.07.2023	
        04.07.2023	
        03.07.2023	
        02.07.2023	
        01.07.2023	
        30.06.2023	6
        29.06.2023	7
        28.06.2023	8
        27.06.2023	9
        26.06.2023	10
        25.06.2023	11
        24.06.2023	12
        23.06.2023	13
        22.06.2023	14
        21.06.2023	15
        20.06.2023	16
        19.06.2023	17
        18.06.2023	18
        17.06.2023	19
        16.06.2023	20
        

        @sten-tor sagte in Alter berechnen:

        @david-g sagte in Alter berechnen:

        Hat jemand eine Idee woran das liegt?

        Zu deinem alten Post vom letzten Jahr: Da hast du bestimmt einen Dreher in deinem Funktionsaufruf drin. Denn in meiner Originalversion stimmts:
        IMG_20230617_002404.jpg

        Beim Alter kommt es hin, aber nicht bei der Zeit von heute bis zum Geburtstag.

        Zeigt eure Lovelace-Visualisierung klick
        (Auch ideal um sich Anregungen zu holen)

        Meine Tabellen für eure Visualisierung klick

        1 Antwort Letzte Antwort
        0
        • sten-torS Online
          sten-torS Online
          sten-tor
          schrieb am zuletzt editiert von
          #50

          @david-g sagte in Alter berechnen:

          @sten-tor
          Habe ich hier dann einen Fehler für die anzuzeigenden Tage (Den Monat habe ich nicht gezahlt, eben 1 Monat)?

          Üblicherweise wird von der größten Einheit zur kleinsten gerechnet und alle Einheiten abgerundet und nur die kleinste Einheit aufgerundet.
          Du müsstest mit Monaten anfangen und dann schauen, wie viel Tage noch übrig bleiben. Also: 16.6. + 1 Monat = 16.7.
          ...und dann von diesem Datum aus die verbleibenden Tage zählen: 21.
          Da Tage die kleinste Einheit ist, wird aufgerundet, so dass z.B. am 5.8. 23:00 immer noch "1 Tag" herauskommt.

          David G.D 1 Antwort Letzte Antwort
          0
          • sten-torS sten-tor

            @david-g sagte in Alter berechnen:

            @sten-tor
            Habe ich hier dann einen Fehler für die anzuzeigenden Tage (Den Monat habe ich nicht gezahlt, eben 1 Monat)?

            Üblicherweise wird von der größten Einheit zur kleinsten gerechnet und alle Einheiten abgerundet und nur die kleinste Einheit aufgerundet.
            Du müsstest mit Monaten anfangen und dann schauen, wie viel Tage noch übrig bleiben. Also: 16.6. + 1 Monat = 16.7.
            ...und dann von diesem Datum aus die verbleibenden Tage zählen: 21.
            Da Tage die kleinste Einheit ist, wird aufgerundet, so dass z.B. am 5.8. 23:00 immer noch "1 Tag" herauskommt.

            David G.D Online
            David G.D Online
            David G.
            schrieb am zuletzt editiert von
            #51

            @sten-tor

            In meinem Beispiel habe ich ja am 5.8 noch 1 Tag da stehen. Wenn ich das durchzähle und den ganzen Monat weg lasse komme ich am 16.6 auf genau 20 Tage.

            Ich denke das stimmt auch.

            Der Countdown Adapter sieht es auch wie ich. Der zeigt mit jetzt einen Tag später 18 Tage und 12h an (die 18, da nicht wie du auch gesagt hast aufgerundet wird weil die h noch kommen).

            Zeigt eure Lovelace-Visualisierung klick
            (Auch ideal um sich Anregungen zu holen)

            Meine Tabellen für eure Visualisierung klick

            OliverIOO sten-torS 2 Antworten Letzte Antwort
            0
            • David G.D David G.

              @sten-tor

              In meinem Beispiel habe ich ja am 5.8 noch 1 Tag da stehen. Wenn ich das durchzähle und den ganzen Monat weg lasse komme ich am 16.6 auf genau 20 Tage.

              Ich denke das stimmt auch.

              Der Countdown Adapter sieht es auch wie ich. Der zeigt mit jetzt einen Tag später 18 Tage und 12h an (die 18, da nicht wie du auch gesagt hast aufgerundet wird weil die h noch kommen).

              OliverIOO Offline
              OliverIOO Offline
              OliverIO
              schrieb am zuletzt editiert von
              #52

              @david-g
              Ich habe bei mir auf die Berechnung der Jahre und Monate verzichtet, da es einiges an Aufwand benötigt, diese richtig zu berechnen.

              Meine Adapter und Widgets
              TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
              Links im Profil

              1 Antwort Letzte Antwort
              0
              • David G.D David G.

                @sten-tor

                In meinem Beispiel habe ich ja am 5.8 noch 1 Tag da stehen. Wenn ich das durchzähle und den ganzen Monat weg lasse komme ich am 16.6 auf genau 20 Tage.

                Ich denke das stimmt auch.

                Der Countdown Adapter sieht es auch wie ich. Der zeigt mit jetzt einen Tag später 18 Tage und 12h an (die 18, da nicht wie du auch gesagt hast aufgerundet wird weil die h noch kommen).

                sten-torS Online
                sten-torS Online
                sten-tor
                schrieb am zuletzt editiert von
                #53

                @david-g Vielleicht kann ich dich damit überzeugen:

                Wenn heute der 16.06.2023 ist, dann beträgt die...

                ...Dauer bis zum 16.06.2023: 0 Monate und 0 Tage
                ...Dauer bis zum 17.06.2023: 0 Monate und 1 Tag
                ...Dauer bis zum 18.06.2023: 0 Monate und 2 Tage
                ...Dauer bis zum 19.06.2023: 0 Monate und 3 Tage
                ...Dauer bis zum 20.06.2023: 0 Monate und 4 Tage
                ...Dauer bis zum 21.06.2023: 0 Monate und 5 Tage
                ...Dauer bis zum 22.06.2023: 0 Monate und 6 Tage
                ...Dauer bis zum 23.06.2023: 0 Monate und 7 Tage
                ...Dauer bis zum 24.06.2023: 0 Monate und 8 Tage
                ...Dauer bis zum 25.06.2023: 0 Monate und 9 Tage
                ...Dauer bis zum 26.06.2023: 0 Monate und 10 Tage
                ...Dauer bis zum 27.06.2023: 0 Monate und 11 Tage
                ...Dauer bis zum 28.06.2023: 0 Monate und 12 Tage
                ...Dauer bis zum 29.06.2023: 0 Monate und 13 Tage
                ...Dauer bis zum 30.06.2023: 0 Monate und 14 Tage
                ...Dauer bis zum 01.07.2023: 0 Monate und 15 Tage
                ...Dauer bis zum 02.07.2023: 0 Monate und 16 Tage
                ...Dauer bis zum 03.07.2023: 0 Monate und 17 Tage
                ...Dauer bis zum 04.07.2023: 0 Monate und 18 Tage
                ...Dauer bis zum 05.07.2023: 0 Monate und 19 Tage
                ...Dauer bis zum 06.07.2023: 0 Monate und 20 Tage
                ...Dauer bis zum 07.07.2023: 0 Monate und 21 Tage
                ...Dauer bis zum 08.07.2023: 0 Monate und 22 Tage
                ...Dauer bis zum 09.07.2023: 0 Monate und 23 Tage
                ...Dauer bis zum 10.07.2023: 0 Monate und 24 Tage
                ...Dauer bis zum 11.07.2023: 0 Monate und 25 Tage
                ...Dauer bis zum 12.07.2023: 0 Monate und 26 Tage
                ...Dauer bis zum 13.07.2023: 0 Monate und 27 Tage
                ...Dauer bis zum 14.07.2023: 0 Monate und 28 Tage
                ...Dauer bis zum 15.07.2023: 0 Monate und 29 Tage
                ...Dauer bis zum 16.07.2023: 1 Monat und 0 Tage
                ...Dauer bis zum 17.07.2023: 1 Monat und 1 Tag
                ...Dauer bis zum 18.07.2023: 1 Monat und 2 Tage
                ...Dauer bis zum 19.07.2023: 1 Monat und 3 Tage
                ...Dauer bis zum 20.07.2023: 1 Monat und 4 Tage
                ...Dauer bis zum 21.07.2023: 1 Monat und 5 Tage
                ...Dauer bis zum 22.07.2023: 1 Monat und 6 Tage
                ...Dauer bis zum 23.07.2023: 1 Monat und 7 Tage
                ...Dauer bis zum 24.07.2023: 1 Monat und 8 Tage
                ...Dauer bis zum 25.07.2023: 1 Monat und 9 Tage
                ...Dauer bis zum 26.07.2023: 1 Monat und 10 Tage
                ...Dauer bis zum 27.07.2023: 1 Monat und 11 Tage
                ...Dauer bis zum 28.07.2023: 1 Monat und 12 Tage
                ...Dauer bis zum 29.07.2023: 1 Monat und 13 Tage
                ...Dauer bis zum 30.07.2023: 1 Monat und 14 Tage
                ...Dauer bis zum 31.07.2023: 1 Monat und 15 Tage
                ...Dauer bis zum 01.08.2023: 1 Monat und 16 Tage
                ...Dauer bis zum 02.08.2023: 1 Monat und 17 Tage
                ...Dauer bis zum 03.08.2023: 1 Monat und 18 Tage
                ...Dauer bis zum 04.08.2023: 1 Monat und 19 Tage
                ...Dauer bis zum 05.08.2023: 1 Monat und 20 Tage
                ...Dauer bis zum 06.08.2023: 1 Monat und 21 Tage

                1 Antwort Letzte Antwort
                0
                • David G.D Online
                  David G.D Online
                  David G.
                  schrieb am zuletzt editiert von
                  #54

                  @sten-tor

                  Wenn man deins liest, klingt es auch plausibel.
                  Wenn ich meins lese aber genau so.

                  Was jetzt stimmt.... Keine Ahnung 🤣

                  Mich würde interessieren, was @jackblackson zu meint. Sein Adapter kommt meiner Rechnung nach. Das hier entwickelte Skript deiner Rechnung.

                  Zeigt eure Lovelace-Visualisierung klick
                  (Auch ideal um sich Anregungen zu holen)

                  Meine Tabellen für eure Visualisierung klick

                  jackblacksonJ 1 Antwort Letzte Antwort
                  0
                  • David G.D David G.

                    @sten-tor

                    Wenn man deins liest, klingt es auch plausibel.
                    Wenn ich meins lese aber genau so.

                    Was jetzt stimmt.... Keine Ahnung 🤣

                    Mich würde interessieren, was @jackblackson zu meint. Sein Adapter kommt meiner Rechnung nach. Das hier entwickelte Skript deiner Rechnung.

                    jackblacksonJ Offline
                    jackblacksonJ Offline
                    jackblackson
                    schrieb am zuletzt editiert von
                    #55

                    @david-g Ich hab es mir grad angesehen, und bin zu diesem Ergebnis gekommen (am 20.Juni um 20:14:)23f7c913-db81-489f-adf3-6cf1f39f49d8-image.png

                    Und hätte jetzt eher gesagt, das es am 20.7. ein Monat und 1 Stunde sein sollte, und nicht am 21.7...

                    1 Antwort Letzte Antwort
                    0
                    • jackblacksonJ Offline
                      jackblacksonJ Offline
                      jackblackson
                      schrieb am zuletzt editiert von
                      #56

                      Ich habe mich noch etwas länger damit beschäftigt, und bei meinem Adapter auch eine Verbesserung eingebaut - es geht nun ganz auf die Logik der Datumsberechnung von Moment.

                      Wo es jedoch schwierig werden kann ist am Monatsende - wenn man wie heute am 30. ist, der nächste Monat jedoch 31 Tage hat, oder umgekehrt. Hier ist für Moment der letzte des Monats ausschlaggebend - sprich vom 30. Juni auf den 30. Juli ist es 1 Monat, und vom 30. Juni auf den 31. Juli ist es einen Monat. Damit muss man vermutlich leben. Generell ist natürlich die Frage, was definiert einen Monat - der selbe Kalendertag?

                      Ich habe das mal ausprobiert (Stichpunkt 30.6., 12:00):
                      5b9d2657-b011-435b-a4e0-166b9b850e69-image.png
                      Die Korrektur zum obigen Post werde ich bald freigeben, in Version 2.0.2 des Countdown Adapters.

                      OliverIOO 1 Antwort Letzte Antwort
                      0
                      • jackblacksonJ jackblackson

                        Ich habe mich noch etwas länger damit beschäftigt, und bei meinem Adapter auch eine Verbesserung eingebaut - es geht nun ganz auf die Logik der Datumsberechnung von Moment.

                        Wo es jedoch schwierig werden kann ist am Monatsende - wenn man wie heute am 30. ist, der nächste Monat jedoch 31 Tage hat, oder umgekehrt. Hier ist für Moment der letzte des Monats ausschlaggebend - sprich vom 30. Juni auf den 30. Juli ist es 1 Monat, und vom 30. Juni auf den 31. Juli ist es einen Monat. Damit muss man vermutlich leben. Generell ist natürlich die Frage, was definiert einen Monat - der selbe Kalendertag?

                        Ich habe das mal ausprobiert (Stichpunkt 30.6., 12:00):
                        5b9d2657-b011-435b-a4e0-166b9b850e69-image.png
                        Die Korrektur zum obigen Post werde ich bald freigeben, in Version 2.0.2 des Countdown Adapters.

                        OliverIOO Offline
                        OliverIOO Offline
                        OliverIO
                        schrieb am zuletzt editiert von OliverIO
                        #57

                        @jackblackson

                        wie ich ja oben schon geschrieben habe, ist die berechnung nicht so einfach.
                        auch bekannte, viel verwendete bibliotheken haben/hatten probleme
                        https://github.com/moment/moment/pull/571

                        dennoch, um nicht alle lernprozesse nochmal neu durchzumachen, würd ich da nur eine etablierte bibliothek nehmen um so eine berechnung durchzuführen.
                        vorteil von node/javascript ist ja, das man auf wirklich viel verschiedene bibliotheken zurückgreifen kann
                        https://www.npmjs.com/package/moment (20 Mio wöchentliche downloads)
                        https://www.npmjs.com/package/luxon (~6 Mio wöchentliche downloads, ist sozusagen der nachfolger von moment)

                        und dann wird da mal noch Temporal kommen. Das neue Top-level object in javascript, in dem vieles behoben wird, was im Date object schrott ist.
                        aber ist erst in der proposal phase von javascript
                        https://tc39.es/proposal-temporal/docs/index.html

                        Meine Adapter und Widgets
                        TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                        Links im Profil

                        1 Antwort Letzte Antwort
                        0
                        Antworten
                        • In einem neuen Thema antworten
                        Anmelden zum Antworten
                        • Älteste zuerst
                        • Neuste zuerst
                        • Meiste Stimmen


                        Support us

                        ioBroker
                        Community Adapters
                        Donate

                        903

                        Online

                        32.4k

                        Benutzer

                        81.5k

                        Themen

                        1.3m

                        Beiträge
                        Community
                        Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                        ioBroker Community 2014-2025
                        logo
                        • Anmelden

                        • Du hast noch kein Konto? Registrieren

                        • Anmelden oder registrieren, um zu suchen
                        • Erster Beitrag
                          Letzter Beitrag
                        0
                        • Home
                        • Aktuell
                        • Tags
                        • Ungelesen 0
                        • Kategorien
                        • Unreplied
                        • Beliebt
                        • GitHub
                        • Docu
                        • Hilfe