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.8k

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

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

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.
  • OliverIOO OliverIO

    @mickym
    leider nein, moments kann differenzen bei schaltjahren nicht genau berechnen.

    https://codepen.io/oweitman/pen/WNXNdXJ

    siehe auch den issue oben

    mickymM Online
    mickymM Online
    mickym
    Most Active
    schrieb am zuletzt editiert von
    #7

    @oliverio Bei mir hatte das funktioniert.
    Ich habe wie Du in dem Beispiel siehst die Differenz zwischen dem 9.12.2021, 21:51:50 und dem 23.2.2027, 1:39:18 berechnen lassen. Bekanntlich ist da ja 2024 ein Schaltjahr dabei.

    Es kam wie gesagt in dem Duration Objekt:

    {
        "years": 5,
        "months": 2,
        "days": 13,
        "hours": 3,
        "minutes": 47,
        "seconds": 28
    }
    
    

    raus.

    Das habe ich nachvollzogen;

    9.12.2021 + 5 Jahre = 9.12.2026
    9.12.2026 + 2 Monate = 9.2.2027
    9.2.2027 + 13 Tage = 22.2.2027 21:51:50
    22.2.2027 21:51:50 + 3 Std. = 23.2.2027 0:51:50
    23.2.2027 0:51:50 + 47 Minuten = 23.2.2027 1:38:50
    23.2.2027 1:38:50 + 28 Sekunden = 23.2.2027 1:39:18

    Also ich konnte das Issue nicht nachvollziehen.

    Ich habe aber das duration object benutzt. Ich werde die beiden Daten mal in meine Nodes eingeben und das nochmals überprüfen.

    Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

    OliverIOO 1 Antwort Letzte Antwort
    0
    • mickymM mickym

      @oliverio Bei mir hatte das funktioniert.
      Ich habe wie Du in dem Beispiel siehst die Differenz zwischen dem 9.12.2021, 21:51:50 und dem 23.2.2027, 1:39:18 berechnen lassen. Bekanntlich ist da ja 2024 ein Schaltjahr dabei.

      Es kam wie gesagt in dem Duration Objekt:

      {
          "years": 5,
          "months": 2,
          "days": 13,
          "hours": 3,
          "minutes": 47,
          "seconds": 28
      }
      
      

      raus.

      Das habe ich nachvollzogen;

      9.12.2021 + 5 Jahre = 9.12.2026
      9.12.2026 + 2 Monate = 9.2.2027
      9.2.2027 + 13 Tage = 22.2.2027 21:51:50
      22.2.2027 21:51:50 + 3 Std. = 23.2.2027 0:51:50
      23.2.2027 0:51:50 + 47 Minuten = 23.2.2027 1:38:50
      23.2.2027 1:38:50 + 28 Sekunden = 23.2.2027 1:39:18

      Also ich konnte das Issue nicht nachvollziehen.

      Ich habe aber das duration object benutzt. Ich werde die beiden Daten mal in meine Nodes eingeben und das nochmals überprüfen.

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

      @mickym
      ich hatte ja ein Beispiel angefügt, bei dem es falsch rechnet.
      das Schaltjahr bei deinem Beispiel ist mittendrin und verschwindet in den Jahren, weil moment einfach nur die Jahreszahlen voneinander abzieht.

      wenn aber der Start im Februar vor dem 29. eines Schaltjahres liegt und du die Tage bis in den märz berechnen möchtest bzw. oder über einen längeren zeitraum nur die anzahl der tage,
      dann passt es nicht mehr.

      Wie gesagt, dann sind wir bei den Näherungen von oben, was ich schon geschrieben habe.
      Es mag sein das die Lösung für die Kinder oben passen mag, weil sie nicht im Februar eines Schaltjahres geboren sind. Aber eine problemlose Lösung für alle ist es nicht

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

      mickymM 1 Antwort Letzte Antwort
      0
      • OliverIOO OliverIO

        @mickym
        ich hatte ja ein Beispiel angefügt, bei dem es falsch rechnet.
        das Schaltjahr bei deinem Beispiel ist mittendrin und verschwindet in den Jahren, weil moment einfach nur die Jahreszahlen voneinander abzieht.

        wenn aber der Start im Februar vor dem 29. eines Schaltjahres liegt und du die Tage bis in den märz berechnen möchtest bzw. oder über einen längeren zeitraum nur die anzahl der tage,
        dann passt es nicht mehr.

        Wie gesagt, dann sind wir bei den Näherungen von oben, was ich schon geschrieben habe.
        Es mag sein das die Lösung für die Kinder oben passen mag, weil sie nicht im Februar eines Schaltjahres geboren sind. Aber eine problemlose Lösung für alle ist es nicht

        mickymM Online
        mickymM Online
        mickym
        Most Active
        schrieb am zuletzt editiert von mickym
        #9

        @oliverio Na das glaube ich gerade nicht. Für die Momentsgenerierung wird ein Array verwendet. Da werden die Monate aber bei 0 gezählt.

        675f14b0-56a7-4a42-b7fe-ea07e2691ab7-image.png

        und da sind die 5 Tage korrekt!!!

        So funktioniert es:

        44d6ccd8-c0b6-4712-ac19-0e2a10f6d1ef-image.png

        2020 : 3 Tage
        2021: 2 Tage

        Wie gesagt - meine Berechnung unten - geht über 6 Jahre und stimmt auf die Sekunde genau!!!

        Ich weiß ich bin da am Anfang auch darauf reingefallen, aber ein Beispiel in der Beschreibung zur moments Bibliothek - schafft hier auch Klarheit:

        ef3a44a3-99e6-4032-996b-dd6ec1dac3c8-image.png

        Bei Monat ist auch beschrieben, dass dieser 0 indiziert ist:

        12f38c4f-ced3-458e-aad2-42333fdd68b3-image.png

        Fazit: Rechnet genau und berücksichtigt Schaltjahre!

        Und wenn man das Datum richtig eingibt - dann funktioniert es auch korrekt:

        7e8f7966-735e-4e63-bb77-614bfb8f4092-image.png

        EDIT: Sorry war nicht böse - gemeint - wahrscheinlich warst Du derjenige mit dem Code. Bitte entschuldige :anguished: - über den anfänglichen Tonfall - habe mal die unpassenden Stellen im Text editiert! Ich bin ja sonst ein Fan von Dir und wünschte ich hätte Deine JS und HTML Kenntnisse. :)

        Noch eine Ergänzung - es wird sogar die Sommerzeit mit berücksichtigt:

        Wenn man die Zeitspanne vom 27.2. - 1.4 verglicht sieht man dass es nicht 1 Monat und 2 Tage sind, sondern 1 Monat, 1 Tag und 23 Stunden

        Ein kleinen Wermutstropfen gibt es dennoch. Es wird zwar nicht falsch gerechnet, aber die exakte Ausgabe der Monate wird nicht wieder gegeben. In dem unteren Beispiel hat das nur geklappt, da beide Monate 31 Tage hatten.

        4479cfa4-d117-441b-a507-f88bdf5a3fa5-image.png

        Monate werden dabei immer als 31 Tage gerechnet und dann die Tage entsprechend korrigiert.

        Bei einer Zeitspanne vom 31.12.2020 bis 31.3.2021 ist die Ausgabe 2 Monate, 28 Tage und 23 Stunden, anstelle von 3 Monaten. Das heißt die duration Zeitspanne ist prinzipiell korrekt - die Monate entsprechen aber nicht dem Sprachgebrauch. Wenn man die humanize Funktion verwendet, wird entsprechend gerundet und es werden 3 Monate ausgegeben.

        Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

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

          @OliverIO
          @mickym

          Ui,
          was habe ich denn hier jetzt losgetreten 😅
          Dass das so komplex ist, hätte ich nicht gedacht....

          Leider übersteigt es, wenn es nicht "nur" blockly ist meinem Horizont.
          JS ist mir mal noch zu hoch.
          NodeRed hatte ich bisher keinen Kontakt mit.
          Für diese Spielerei müssen sich jetzt nicht andere im Forum den Kopf zerbrechen.

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

          Meine Tabellen für eure Visualisierung klick

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

            @OliverIO
            @mickym

            Ui,
            was habe ich denn hier jetzt losgetreten 😅
            Dass das so komplex ist, hätte ich nicht gedacht....

            Leider übersteigt es, wenn es nicht "nur" blockly ist meinem Horizont.
            JS ist mir mal noch zu hoch.
            NodeRed hatte ich bisher keinen Kontakt mit.
            Für diese Spielerei müssen sich jetzt nicht andere im Forum den Kopf zerbrechen.

            G Offline
            G Offline
            Gutscho
            schrieb am zuletzt editiert von
            #11

            @david-g
            Hier mein Vorschlag für den Monat. Ich habe das nur schnell mal zusammengezimmert und kurz überflogen. Theoretisch dürfte ich keinen Fehler gemacht haben, kann mich aber auch täuschen (Vorzeichenfehler oder ähnliches)
            So ähnlich musst du das dann auch bei den Tagen oder Jahren machen. Bitte auch immer die Klammern beachten (die Mathematischen Ausdrücke richtig zusammensetzen - jeder Block ist wie ich das gesehen habe umklammert)
            aed3bfe5-b856-4cd5-9ba8-2e0ee77e7e3a-image.png

            Solltest du noch Probleme haben gib Bescheid dann versuch ich dir auch noch bei Tagen und Jahren zu helfen. Schön ist das dann wenn man das ganze umkehrt und einen "Counter" für die Geburtstage realisiert. Ich habe auch nicht ausprobiert wie es mit den Tagen und mit übergang Februar auf März aussieht. Dazu haben meine Vorredner aber schon genügend gefachsimpelt ;)

            Gruß

            Gutscho

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

              @oliverio Na das glaube ich gerade nicht. Für die Momentsgenerierung wird ein Array verwendet. Da werden die Monate aber bei 0 gezählt.

              675f14b0-56a7-4a42-b7fe-ea07e2691ab7-image.png

              und da sind die 5 Tage korrekt!!!

              So funktioniert es:

              44d6ccd8-c0b6-4712-ac19-0e2a10f6d1ef-image.png

              2020 : 3 Tage
              2021: 2 Tage

              Wie gesagt - meine Berechnung unten - geht über 6 Jahre und stimmt auf die Sekunde genau!!!

              Ich weiß ich bin da am Anfang auch darauf reingefallen, aber ein Beispiel in der Beschreibung zur moments Bibliothek - schafft hier auch Klarheit:

              ef3a44a3-99e6-4032-996b-dd6ec1dac3c8-image.png

              Bei Monat ist auch beschrieben, dass dieser 0 indiziert ist:

              12f38c4f-ced3-458e-aad2-42333fdd68b3-image.png

              Fazit: Rechnet genau und berücksichtigt Schaltjahre!

              Und wenn man das Datum richtig eingibt - dann funktioniert es auch korrekt:

              7e8f7966-735e-4e63-bb77-614bfb8f4092-image.png

              EDIT: Sorry war nicht böse - gemeint - wahrscheinlich warst Du derjenige mit dem Code. Bitte entschuldige :anguished: - über den anfänglichen Tonfall - habe mal die unpassenden Stellen im Text editiert! Ich bin ja sonst ein Fan von Dir und wünschte ich hätte Deine JS und HTML Kenntnisse. :)

              Noch eine Ergänzung - es wird sogar die Sommerzeit mit berücksichtigt:

              Wenn man die Zeitspanne vom 27.2. - 1.4 verglicht sieht man dass es nicht 1 Monat und 2 Tage sind, sondern 1 Monat, 1 Tag und 23 Stunden

              Ein kleinen Wermutstropfen gibt es dennoch. Es wird zwar nicht falsch gerechnet, aber die exakte Ausgabe der Monate wird nicht wieder gegeben. In dem unteren Beispiel hat das nur geklappt, da beide Monate 31 Tage hatten.

              4479cfa4-d117-441b-a507-f88bdf5a3fa5-image.png

              Monate werden dabei immer als 31 Tage gerechnet und dann die Tage entsprechend korrigiert.

              Bei einer Zeitspanne vom 31.12.2020 bis 31.3.2021 ist die Ausgabe 2 Monate, 28 Tage und 23 Stunden, anstelle von 3 Monaten. Das heißt die duration Zeitspanne ist prinzipiell korrekt - die Monate entsprechen aber nicht dem Sprachgebrauch. Wenn man die humanize Funktion verwendet, wird entsprechend gerundet und es werden 3 Monate ausgegeben.

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

              @mickym
              hups, das mit dem array ist tückisch.
              ja moments funktioniert.

              wenn wir ihm noch helfen moments von blockly aufzurufen, dann hat er alles was er braucht.

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

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

                @david-g
                Hier mein Vorschlag für den Monat. Ich habe das nur schnell mal zusammengezimmert und kurz überflogen. Theoretisch dürfte ich keinen Fehler gemacht haben, kann mich aber auch täuschen (Vorzeichenfehler oder ähnliches)
                So ähnlich musst du das dann auch bei den Tagen oder Jahren machen. Bitte auch immer die Klammern beachten (die Mathematischen Ausdrücke richtig zusammensetzen - jeder Block ist wie ich das gesehen habe umklammert)
                aed3bfe5-b856-4cd5-9ba8-2e0ee77e7e3a-image.png

                Solltest du noch Probleme haben gib Bescheid dann versuch ich dir auch noch bei Tagen und Jahren zu helfen. Schön ist das dann wenn man das ganze umkehrt und einen "Counter" für die Geburtstage realisiert. Ich habe auch nicht ausprobiert wie es mit den Tagen und mit übergang Februar auf März aussieht. Dazu haben meine Vorredner aber schon genügend gefachsimpelt ;)

                Gruß

                Gutscho

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

                @gutscho

                Das ist ja wie mein Ansatz.
                Nur noch was ausgefuchster.
                Werde ich mal testen.
                Bei den Tagen bin ich vermutlich trotzdem wieder ratlos ^^.

                Da kann man ja nicht pauschal 11 nehmen. Gibt ja noch mehr Varianten.

                @OliverIO
                Wenn man das in Blockly bekommt mit einem JS Block wäre ja klasse. Am besten die Variable mit dem Geburtstag direkt in Blockly hinterlegbar.

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

                Meine Tabellen für eure Visualisierung klick

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

                  @gutscho

                  Das ist ja wie mein Ansatz.
                  Nur noch was ausgefuchster.
                  Werde ich mal testen.
                  Bei den Tagen bin ich vermutlich trotzdem wieder ratlos ^^.

                  Da kann man ja nicht pauschal 11 nehmen. Gibt ja noch mehr Varianten.

                  @OliverIO
                  Wenn man das in Blockly bekommt mit einem JS Block wäre ja klasse. Am besten die Variable mit dem Geburtstag direkt in Blockly hinterlegbar.

                  G Offline
                  G Offline
                  Gutscho
                  schrieb am zuletzt editiert von Gutscho
                  #14

                  @david-g
                  Wenn ich was wegen den Tagen zusammenbasteln soll sag Bescheid. Ist ja nix anderes wie ne Programmiersprache nur eben als GUI. Also ich denke dass das ganze auch bzw. noch besser in .js umgesetzt werden kann.

                  Kann man eigentlich anstatt .js auch mit typescript in iobroker arbeiten? Bin noch ziemlich neu hier.

                  paul53P 1 Antwort Letzte Antwort
                  0
                  • G Gutscho

                    @david-g
                    Wenn ich was wegen den Tagen zusammenbasteln soll sag Bescheid. Ist ja nix anderes wie ne Programmiersprache nur eben als GUI. Also ich denke dass das ganze auch bzw. noch besser in .js umgesetzt werden kann.

                    Kann man eigentlich anstatt .js auch mit typescript in iobroker arbeiten? Bin noch ziemlich neu hier.

                    paul53P Offline
                    paul53P Offline
                    paul53
                    schrieb am zuletzt editiert von
                    #15

                    @gutscho sagte: Kann man eigentlich anstatt .js auch mit typescript in iobroker arbeiten?

                    Ja.

                    Bild_2022-01-26_131318.png

                    Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                    Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                    1 Antwort Letzte Antwort
                    0
                    • OliverIOO OliverIO

                      @mickym
                      hups, das mit dem array ist tückisch.
                      ja moments funktioniert.

                      wenn wir ihm noch helfen moments von blockly aufzurufen, dann hat er alles was er braucht.

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

                      @oliverio

                      Moments war jetzt JS?
                      Ein JS kann es ja auch sein. Da bekomme auch ich die 4 Datenpunkte (Geburtstag, Alter in Jahren, Monaten und Tagen (oder zusammen in einem als json)) angepasst.
                      Aber eben nicht mehr um selber noch was dran rumzuspielen.

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

                      Meine Tabellen für eure Visualisierung klick

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

                        @oliverio

                        Moments war jetzt JS?
                        Ein JS kann es ja auch sein. Da bekomme auch ich die 4 Datenpunkte (Geburtstag, Alter in Jahren, Monaten und Tagen (oder zusammen in einem als json)) angepasst.
                        Aber eben nicht mehr um selber noch was dran rumzuspielen.

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

                        @david-g
                        Ich werde mein Widget was ich oben erwähnt habe auf Moments umstellen. Dann kannst du direkt das Widget verwenden.

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

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

                          @david-g
                          Ich werde mein Widget was ich oben erwähnt habe auf Moments umstellen. Dann kannst du direkt das Widget verwenden.

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

                          @oliverio

                          Danke.
                          Aber "leider" nutze ich kein VIS.
                          Meine Visualisierung läuft über lovelace, da kann ich die Widgets nicht einbinden (Meistens baue ich auch alles selber zusammen soweit es geht. Auch in Lovelace (Da gibt es als Gegenstück die custom cards). Widgets geben oft ja schon ein Layout vor) .....

                          Kannst es ja in MyTime einbauen 😉

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

                          Meine Tabellen für eure Visualisierung klick

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

                            @oliverio

                            Danke.
                            Aber "leider" nutze ich kein VIS.
                            Meine Visualisierung läuft über lovelace, da kann ich die Widgets nicht einbinden (Meistens baue ich auch alles selber zusammen soweit es geht. Auch in Lovelace (Da gibt es als Gegenstück die custom cards). Widgets geben oft ja schon ein Layout vor) .....

                            Kannst es ja in MyTime einbauen 😉

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

                            @david-g

                            mit javascript kannst du dich ja an dem beispiel des codepen links bedienen und rumprobieren
                            da du dich nicht so auskennst hier ein paar erklärungen

                            1. du musst in den instanz-einstellungen des javascripts-adapter das Zusätzlich NPM-Modul moment hinzufügen
                              der folgende code enthält 2 funktionen
                            • getFormat(a,b) zieht die Differenz der beiden Datums-Objekte a und b zu jahre,monate und tage und gibt das ergebnis als text zurück
                            • xxx erzeugt für 2 Beispiele das jeweilige Datum und speichert diese in a und b und ruft dann die getFormat Funktion auf. Das Ergebnis wird mit einer jQuery Hilfsfunktion in 2 angelegte HTML-Elemente geschrieben, so das es bei codepen direkt angezeigt wird. Da das natürlich im js adapter nicht geht, ist das die Stelle an der du den Wert in einen Datenpunkt schreibst.
                              Die enthaltene Funktion moment() ruft die hinzugefügte Bibliothek auf und erzeugt ein neues Datumsobjekt. Eine umfangreiche Doku mit Beispiele ist hier zu finden: https://momentjs.com/docs/#/parsing/

                            pbrigens in dem codepen kannst du direkt rumspielen und wenn du keinen fehler einbaust, wird nach kurzer zeit das fenster automatisch mit den Ergebnissen aktualisiert. so kannst du javascript ausprobieren und gleich das ergebnis sehen.

                            https://codepen.io/oweitman/pen/WNXNdXJ

                            function getFormat(a,b) {
                              var years = a.diff(b, 'year');
                              b.add(years, 'years');
                              var months = a.diff(b, 'months');
                              b.add(months, 'months');
                              var days = a.diff(b, 'days');
                              return years + ' years ' + months + ' months ' + days + ' days';
                            }
                            function xxx() {
                              var a = moment("2022-03-01");
                              var b = moment();
                            //  $("#x1").html(getFormat(a,b));
                              setState("javascript.0.Kind1",getFormat(a,b));
                              a = moment("2022-02-01");
                              b = moment();
                              // $("#x2").html(getFormat(a,b));
                              setState("javascript.0.Kind2",getFormat(a,b));
                            }
                            
                            xxx(); 
                            
                            

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

                            David G.D 1 Antwort Letzte Antwort
                            1
                            • OliverIOO OliverIO

                              @david-g

                              mit javascript kannst du dich ja an dem beispiel des codepen links bedienen und rumprobieren
                              da du dich nicht so auskennst hier ein paar erklärungen

                              1. du musst in den instanz-einstellungen des javascripts-adapter das Zusätzlich NPM-Modul moment hinzufügen
                                der folgende code enthält 2 funktionen
                              • getFormat(a,b) zieht die Differenz der beiden Datums-Objekte a und b zu jahre,monate und tage und gibt das ergebnis als text zurück
                              • xxx erzeugt für 2 Beispiele das jeweilige Datum und speichert diese in a und b und ruft dann die getFormat Funktion auf. Das Ergebnis wird mit einer jQuery Hilfsfunktion in 2 angelegte HTML-Elemente geschrieben, so das es bei codepen direkt angezeigt wird. Da das natürlich im js adapter nicht geht, ist das die Stelle an der du den Wert in einen Datenpunkt schreibst.
                                Die enthaltene Funktion moment() ruft die hinzugefügte Bibliothek auf und erzeugt ein neues Datumsobjekt. Eine umfangreiche Doku mit Beispiele ist hier zu finden: https://momentjs.com/docs/#/parsing/

                              pbrigens in dem codepen kannst du direkt rumspielen und wenn du keinen fehler einbaust, wird nach kurzer zeit das fenster automatisch mit den Ergebnissen aktualisiert. so kannst du javascript ausprobieren und gleich das ergebnis sehen.

                              https://codepen.io/oweitman/pen/WNXNdXJ

                              function getFormat(a,b) {
                                var years = a.diff(b, 'year');
                                b.add(years, 'years');
                                var months = a.diff(b, 'months');
                                b.add(months, 'months');
                                var days = a.diff(b, 'days');
                                return years + ' years ' + months + ' months ' + days + ' days';
                              }
                              function xxx() {
                                var a = moment("2022-03-01");
                                var b = moment();
                              //  $("#x1").html(getFormat(a,b));
                                setState("javascript.0.Kind1",getFormat(a,b));
                                a = moment("2022-02-01");
                                b = moment();
                                // $("#x2").html(getFormat(a,b));
                                setState("javascript.0.Kind2",getFormat(a,b));
                              }
                              
                              xxx(); 
                              
                              
                              David G.D Online
                              David G.D Online
                              David G.
                              schrieb am zuletzt editiert von
                              #20

                              @oliverio

                              Danke, werde ich testen.
                              Mal sehen wann ich zu komme.
                              Meine Frau wurde eben vom Krankenwagen ins Krankenhaus gefahren.

                              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.

                                @oliverio

                                Danke, werde ich testen.
                                Mal sehen wann ich zu komme.
                                Meine Frau wurde eben vom Krankenwagen ins Krankenhaus gefahren.

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

                                @david-g

                                Alles gute, das ist wichtiger

                                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.

                                  @oliverio

                                  Danke, werde ich testen.
                                  Mal sehen wann ich zu komme.
                                  Meine Frau wurde eben vom Krankenwagen ins Krankenhaus gefahren.

                                  sten-torS Offline
                                  sten-torS Offline
                                  sten-tor
                                  schrieb am zuletzt editiert von
                                  #22

                                  @david-g Erstmal gute Besserung deiner Frau! Hoffentlich nichts schlimmes.

                                  Mit der Altersberechnung insbesondere der Schaltjahreproblematik hatte ich mich auch schon mal befasst und habe dann als mögliche Blockly-Lösung das iterative Erhöhen des Datumswert gefunden. Kannst ja mal ausprobieren:
                                  Datum.jpg

                                  Hier auch zum direkt importieren:

                                  <xml xmlns="https://developers.google.com/blockly/xml">
                                    <variables>
                                      <variable id="@bu3RD+iB=]PdKAxZ?wn">startdatum</variable>
                                      <variable id="k!jWl+=eJy!gO#:Eh-*S">enddatum</variable>
                                      <variable id="EVPb:UkCB@Z0Qd644};@">jahre</variable>
                                      <variable id="IoPINO{]qIk%XgKYvn)R">monate</variable>
                                      <variable id="ooZPRbdvyzkIQ.$#xv#,">tage</variable>
                                      <variable id="@;idhSG;Ux^aS!Kaj/Z.">tempdatum</variable>
                                      <variable id=",6Z_W4f.-wfh[$qa|l_h">failcounter</variable>
                                    </variables>
                                    <block type="variables_set" id="6m-PTLu:+[^.eX,a:K51" x="-838" y="-262">
                                      <field name="VAR" id="@bu3RD+iB=]PdKAxZ?wn">startdatum</field>
                                      <value name="VALUE">
                                        <block type="convert_to_date" id="lz#v,fRj*tYwy-=f{wR(">
                                          <value name="VALUE">
                                            <block type="text" id="KYj#x]9cr}2x9|H6H+Lg">
                                              <field name="TEXT">2020,2,29</field>
                                            </block>
                                          </value>
                                        </block>
                                      </value>
                                      <next>
                                        <block type="variables_set" id="n/InM:.oKm|KnI^9$zz/">
                                          <field name="VAR" id="k!jWl+=eJy!gO#:Eh-*S">enddatum</field>
                                          <value name="VALUE">
                                            <block type="convert_to_date" id="=V}a50G|tJSTk9yq:Vkn">
                                              <value name="VALUE">
                                                <block type="text" id="O:UWi*+xlz?).bu^V_7c">
                                                  <field name="TEXT">2023,3,1</field>
                                                </block>
                                              </value>
                                            </block>
                                          </value>
                                          <next>
                                            <block type="variables_set" id="EB+?-?KclHGF/0OwlU;N">
                                              <field name="VAR" id="EVPb:UkCB@Z0Qd644};@">jahre</field>
                                              <value name="VALUE">
                                                <block type="math_number" id="VL:?eRTLv~sR,pJdx(r/">
                                                  <field name="NUM">0</field>
                                                </block>
                                              </value>
                                              <next>
                                                <block type="variables_set" id=",|M3`E*bUW/!kBMUyAU]">
                                                  <field name="VAR" id="IoPINO{]qIk%XgKYvn)R">monate</field>
                                                  <value name="VALUE">
                                                    <block type="math_number" id="s2IKF4-U1rxEM{i$SzA7">
                                                      <field name="NUM">0</field>
                                                    </block>
                                                  </value>
                                                  <next>
                                                    <block type="variables_set" id="$!(iH.}w)S)=O{B!}]Q3">
                                                      <field name="VAR" id="ooZPRbdvyzkIQ.$#xv#,">tage</field>
                                                      <value name="VALUE">
                                                        <block type="math_number" id="KHz;Y1Be~2t!v@k4nP4T">
                                                          <field name="NUM">0</field>
                                                        </block>
                                                      </value>
                                                      <next>
                                                        <block type="controls_if" id="gZoOB;++6mF^G;;~{!Mt">
                                                          <value name="IF0">
                                                            <block type="logic_compare" id="ZzR#(%}Y[b=5}fw^NjBR">
                                                              <field name="OP">GT</field>
                                                              <value name="A">
                                                                <block type="variables_get" id="rcwK0CWMad%whp$1,+l#">
                                                                  <field name="VAR" id="k!jWl+=eJy!gO#:Eh-*S">enddatum</field>
                                                                </block>
                                                              </value>
                                                              <value name="B">
                                                                <block type="variables_get" id="@Y%lX,];d_mAPP)H!z7@">
                                                                  <field name="VAR" id="@bu3RD+iB=]PdKAxZ?wn">startdatum</field>
                                                                </block>
                                                              </value>
                                                            </block>
                                                          </value>
                                                          <statement name="DO0">
                                                            <block type="comment" id="IDC3n{u(Oxj0y%iUU/l`">
                                                              <field name="COMMENT">Datum-Objekte auf Tagesanfang setzen</field>
                                                              <next>
                                                                <block type="variables_set" id="ik[8fz[FkW*jTGb@+_:*">
                                                                  <field name="VAR" id="@bu3RD+iB=]PdKAxZ?wn">startdatum</field>
                                                                  <value name="VALUE">
                                                                    <block type="convert_to_date" id="Sj{+dt6LmU;@y-_R0icX">
                                                                      <value name="VALUE">
                                                                        <block type="convert_from_date" id="]Ol=%4zep24:dbr!wsRf">
                                                                          <mutation xmlns="http://www.w3.org/1999/xhtml" format="false" language="false"></mutation>
                                                                          <field name="OPTION">YYYY.MM.DD</field>
                                                                          <value name="VALUE">
                                                                            <block type="variables_get" id="ZNINw{hj34/AZv/?({z!">
                                                                              <field name="VAR" id="@bu3RD+iB=]PdKAxZ?wn">startdatum</field>
                                                                            </block>
                                                                          </value>
                                                                        </block>
                                                                      </value>
                                                                    </block>
                                                                  </value>
                                                                  <next>
                                                                    <block type="variables_set" id="9.X8|I;l@E`:b].LWEYy">
                                                                      <field name="VAR" id="k!jWl+=eJy!gO#:Eh-*S">enddatum</field>
                                                                      <value name="VALUE">
                                                                        <block type="convert_to_date" id="4imVT^],uFs(qKIT//E8">
                                                                          <value name="VALUE">
                                                                            <block type="convert_from_date" id="|o8?mL@Gc6AG%DioEpkB">
                                                                              <mutation xmlns="http://www.w3.org/1999/xhtml" format="false" language="false"></mutation>
                                                                              <field name="OPTION">YYYY.MM.DD</field>
                                                                              <value name="VALUE">
                                                                                <block type="variables_get" id="BEwa|^=R*tDL^pLrul?+">
                                                                                  <field name="VAR" id="k!jWl+=eJy!gO#:Eh-*S">enddatum</field>
                                                                                </block>
                                                                              </value>
                                                                            </block>
                                                                          </value>
                                                                        </block>
                                                                      </value>
                                                                      <next>
                                                                        <block type="comment" id="#(kHBo#+(Jk4h$y=LQzT">
                                                                          <field name="COMMENT">Jahre berechnen</field>
                                                                          <next>
                                                                            <block type="variables_set" id="[}h|@;ivFjl!ydXN~ReA">
                                                                              <field name="VAR" id="EVPb:UkCB@Z0Qd644};@">jahre</field>
                                                                              <value name="VALUE">
                                                                                <block type="math_arithmetic" id=";L]/9o|V^Wsf8ThF6`LX">
                                                                                  <field name="OP">MINUS</field>
                                                                                  <value name="A">
                                                                                    <shadow type="math_number" id="R_*u3^X2qNQ*R4RuBq^q">
                                                                                      <field name="NUM">1</field>
                                                                                    </shadow>
                                                                                    <block type="convert_from_date" id="Alv-W(-w][/g^?IUb*Pp">
                                                                                      <mutation xmlns="http://www.w3.org/1999/xhtml" format="false" language="false"></mutation>
                                                                                      <field name="OPTION">fy</field>
                                                                                      <value name="VALUE">
                                                                                        <block type="variables_get" id="c:f:gDsdaz^?1LM.[WNa">
                                                                                          <field name="VAR" id="k!jWl+=eJy!gO#:Eh-*S">enddatum</field>
                                                                                        </block>
                                                                                      </value>
                                                                                    </block>
                                                                                  </value>
                                                                                  <value name="B">
                                                                                    <shadow type="math_number" id="fL@AosMBh8JEHC6,K@NH">
                                                                                      <field name="NUM">1</field>
                                                                                    </shadow>
                                                                                    <block type="convert_from_date" id="v})RiDaO|I@Y3uMD_1nU">
                                                                                      <mutation xmlns="http://www.w3.org/1999/xhtml" format="false" language="false"></mutation>
                                                                                      <field name="OPTION">fy</field>
                                                                                      <value name="VALUE">
                                                                                        <block type="variables_get" id="$o4BAD~MfGElI(BUOz23">
                                                                                          <field name="VAR" id="@bu3RD+iB=]PdKAxZ?wn">startdatum</field>
                                                                                        </block>
                                                                                      </value>
                                                                                    </block>
                                                                                  </value>
                                                                                </block>
                                                                              </value>
                                                                              <next>
                                                                                <block type="variables_set" id="h.-l8a;u9o*=3_/amA3A">
                                                                                  <field name="VAR" id="EVPb:UkCB@Z0Qd644};@">jahre</field>
                                                                                  <value name="VALUE">
                                                                                    <block type="math_constrain" id="jOc{jUA$WU-[r3|dFsoh">
                                                                                      <value name="VALUE">
                                                                                        <shadow type="math_number">
                                                                                          <field name="NUM">50</field>
                                                                                        </shadow>
                                                                                        <block type="math_arithmetic" id="{=`uwJfBqC~X,LV_w0Gz">
                                                                                          <field name="OP">MINUS</field>
                                                                                          <value name="A">
                                                                                            <shadow type="math_number">
                                                                                              <field name="NUM">1</field>
                                                                                            </shadow>
                                                                                            <block type="variables_get" id="kNP5;H;qwxGLwC7ZfFBA">
                                                                                              <field name="VAR" id="EVPb:UkCB@Z0Qd644};@">jahre</field>
                                                                                            </block>
                                                                                          </value>
                                                                                          <value name="B">
                                                                                            <shadow type="math_number" id="%w5Oxt`m1=WgzJ`j-rw_">
                                                                                              <field name="NUM">1</field>
                                                                                            </shadow>
                                                                                          </value>
                                                                                        </block>
                                                                                      </value>
                                                                                      <value name="LOW">
                                                                                        <shadow type="math_number" id="FG-lEJa2.~5LKjB7+rL%">
                                                                                          <field name="NUM">0</field>
                                                                                        </shadow>
                                                                                      </value>
                                                                                      <value name="HIGH">
                                                                                        <shadow type="math_number" id="?1{$Nl(TQh?U|$7b$b,H">
                                                                                          <field name="NUM">1000000</field>
                                                                                        </shadow>
                                                                                      </value>
                                                                                    </block>
                                                                                  </value>
                                                                                  <next>
                                                                                    <block type="variables_set" id=":%Ji_pj@y9S0-H=]yOb|">
                                                                                      <field name="VAR" id="@;idhSG;Ux^aS!Kaj/Z.">tempdatum</field>
                                                                                      <value name="VALUE">
                                                                                        <block type="convert_to_date" id="R.l?w_M6.{8]]9fb._DU">
                                                                                          <value name="VALUE">
                                                                                            <block type="text_join" id="=.hb#Cbsv?kg{)o4P`40">
                                                                                              <mutation items="5"></mutation>
                                                                                              <value name="ADD0">
                                                                                                <block type="math_arithmetic" id="fo7UX|K9Bb]9;7k-UBxr">
                                                                                                  <field name="OP">ADD</field>
                                                                                                  <value name="A">
                                                                                                    <shadow type="math_number" id="M5mWT9g=+V[ZXMg}y{!e">
                                                                                                      <field name="NUM">1</field>
                                                                                                    </shadow>
                                                                                                    <block type="convert_from_date" id="k()/{aUzfU;b0!V_L.FW">
                                                                                                      <mutation xmlns="http://www.w3.org/1999/xhtml" format="false" language="false"></mutation>
                                                                                                      <field name="OPTION">fy</field>
                                                                                                      <value name="VALUE">
                                                                                                        <block type="variables_get" id="SCdG7uKuw0Fm2HTSH$WQ">
                                                                                                          <field name="VAR" id="@bu3RD+iB=]PdKAxZ?wn">startdatum</field>
                                                                                                        </block>
                                                                                                      </value>
                                                                                                    </block>
                                                                                                  </value>
                                                                                                  <value name="B">
                                                                                                    <shadow type="math_number" id="(Yeo}ODi`v%k]G+^N|O5">
                                                                                                      <field name="NUM">1</field>
                                                                                                    </shadow>
                                                                                                    <block type="variables_get" id="@@+tl6v.YN4A(_G?h;O9">
                                                                                                      <field name="VAR" id="EVPb:UkCB@Z0Qd644};@">jahre</field>
                                                                                                    </block>
                                                                                                  </value>
                                                                                                </block>
                                                                                              </value>
                                                                                              <value name="ADD1">
                                                                                                <block type="text" id="Y=z/TY@c0v}f4})|qxPA">
                                                                                                  <field name="TEXT">,</field>
                                                                                                </block>
                                                                                              </value>
                                                                                              <value name="ADD2">
                                                                                                <block type="convert_from_date" id="_fBafy:FtEYPl?3;|Obv">
                                                                                                  <mutation xmlns="http://www.w3.org/1999/xhtml" format="false" language="false"></mutation>
                                                                                                  <field name="OPTION">M</field>
                                                                                                  <value name="VALUE">
                                                                                                    <block type="variables_get" id="j`x]LIN4BH}c6j*;,=A_">
                                                                                                      <field name="VAR" id="@bu3RD+iB=]PdKAxZ?wn">startdatum</field>
                                                                                                    </block>
                                                                                                  </value>
                                                                                                </block>
                                                                                              </value>
                                                                                              <value name="ADD3">
                                                                                                <block type="text" id="C65;1^Ac(ob{29SjK@!D">
                                                                                                  <field name="TEXT">,</field>
                                                                                                </block>
                                                                                              </value>
                                                                                              <value name="ADD4">
                                                                                                <block type="convert_from_date" id="L?s)gWzhdYdspC!W5o+N">
                                                                                                  <mutation xmlns="http://www.w3.org/1999/xhtml" format="false" language="false"></mutation>
                                                                                                  <field name="OPTION">d</field>
                                                                                                  <value name="VALUE">
                                                                                                    <block type="variables_get" id="NU.:WS1Y+sJK%B)n-SLD">
                                                                                                      <field name="VAR" id="@bu3RD+iB=]PdKAxZ?wn">startdatum</field>
                                                                                                    </block>
                                                                                                  </value>
                                                                                                </block>
                                                                                              </value>
                                                                                            </block>
                                                                                          </value>
                                                                                        </block>
                                                                                      </value>
                                                                                      <next>
                                                                                        <block type="comment" id="F~6hcZnWmJt-VXo*O3!=">
                                                                                          <field name="COMMENT">Monate/Tage</field>
                                                                                          <next>
                                                                                            <block type="controls_whileUntil" id="OZB.hc}RXNyJ[bqs_1MD">
                                                                                              <field name="MODE">UNTIL</field>
                                                                                              <value name="BOOL">
                                                                                                <block type="logic_compare" id="`B!Ad8~KwhE38Bd0GA05">
                                                                                                  <field name="OP">GTE</field>
                                                                                                  <value name="A">
                                                                                                    <block type="variables_get" id="ist`ENx1`_hS?dDaA-=V">
                                                                                                      <field name="VAR" id="@;idhSG;Ux^aS!Kaj/Z.">tempdatum</field>
                                                                                                    </block>
                                                                                                  </value>
                                                                                                  <value name="B">
                                                                                                    <block type="variables_get" id="O*/9Cqi5U^uf+*S!:QdZ">
                                                                                                      <field name="VAR" id="k!jWl+=eJy!gO#:Eh-*S">enddatum</field>
                                                                                                    </block>
                                                                                                  </value>
                                                                                                </block>
                                                                                              </value>
                                                                                              <statement name="DO">
                                                                                                <block type="math_change" id="R^iR$L#6vH?mqJtOJYAO">
                                                                                                  <field name="VAR" id=",6Z_W4f.-wfh[$qa|l_h">failcounter</field>
                                                                                                  <value name="DELTA">
                                                                                                    <shadow type="math_number" id="]ttwSt1~{C9#R26lG~fT">
                                                                                                      <field name="NUM">1</field>
                                                                                                    </shadow>
                                                                                                  </value>
                                                                                                  <next>
                                                                                                    <block type="math_change" id="Ap]x?1D0@B$W-Jfv})]h">
                                                                                                      <field name="VAR" id="ooZPRbdvyzkIQ.$#xv#,">tage</field>
                                                                                                      <value name="DELTA">
                                                                                                        <shadow type="math_number" id="97XSEqrL){VN)]@caH,-">
                                                                                                          <field name="NUM">1</field>
                                                                                                        </shadow>
                                                                                                      </value>
                                                                                                      <next>
                                                                                                        <block type="variables_set" id="wfYyQ9aTwCvU4SwmzE5r">
                                                                                                          <field name="VAR" id="@;idhSG;Ux^aS!Kaj/Z.">tempdatum</field>
                                                                                                          <value name="VALUE">
                                                                                                            <block type="math_arithmetic" id="COjJaM:7e]e6DbLY^DnK">
                                                                                                              <field name="OP">ADD</field>
                                                                                                              <value name="A">
                                                                                                                <shadow type="math_number" id="?Q{D{cL-1hc;:@,6eT#m">
                                                                                                                  <field name="NUM">1</field>
                                                                                                                </shadow>
                                                                                                                <block type="variables_get" id="-%.{-$J,W%Vic53rn-:N">
                                                                                                                  <field name="VAR" id="@;idhSG;Ux^aS!Kaj/Z.">tempdatum</field>
                                                                                                                </block>
                                                                                                              </value>
                                                                                                              <value name="B">
                                                                                                                <shadow type="math_number" id="k?RWeG*h}Dx`j-w32~9(">
                                                                                                                  <field name="NUM">86400000</field>
                                                                                                                </shadow>
                                                                                                              </value>
                                                                                                            </block>
                                                                                                          </value>
                                                                                                          <next>
                                                                                                            <block type="controls_if" id="FRL:Yl!iS}%4m77|yX/q">
                                                                                                              <value name="IF0">
                                                                                                                <block type="logic_operation" id="{Dpz4+}YA_T^fg$.yGqd">
                                                                                                                  <field name="OP">OR</field>
                                                                                                                  <value name="A">
                                                                                                                    <block type="logic_compare" id="{*$|a1:+_*No21CPG!At">
                                                                                                                      <field name="OP">GTE</field>
                                                                                                                      <value name="A">
                                                                                                                        <block type="variables_get" id="/)t_Cz}v*#rGICp^o1k]">
                                                                                                                          <field name="VAR" id="ooZPRbdvyzkIQ.$#xv#,">tage</field>
                                                                                                                        </block>
                                                                                                                      </value>
                                                                                                                      <value name="B">
                                                                                                                        <block type="math_number" id="4MAFDH;r*2;77^#%aMap">
                                                                                                                          <field name="NUM">31</field>
                                                                                                                        </block>
                                                                                                                      </value>
                                                                                                                    </block>
                                                                                                                  </value>
                                                                                                                  <value name="B">
                                                                                                                    <block type="logic_compare" id="QuBKQCHRrm^#l/n=K@j;">
                                                                                                                      <field name="OP">EQ</field>
                                                                                                                      <value name="A">
                                                                                                                        <block type="convert_from_date" id="X]L2PsC,;DzfNMl^G+54">
                                                                                                                          <mutation xmlns="http://www.w3.org/1999/xhtml" format="false" language="false"></mutation>
                                                                                                                          <field name="OPTION">d</field>
                                                                                                                          <value name="VALUE">
                                                                                                                            <block type="variables_get" id="7oqyTdB60XEn5sng3fJY">
                                                                                                                              <field name="VAR" id="@;idhSG;Ux^aS!Kaj/Z.">tempdatum</field>
                                                                                                                            </block>
                                                                                                                          </value>
                                                                                                                        </block>
                                                                                                                      </value>
                                                                                                                      <value name="B">
                                                                                                                        <block type="convert_from_date" id="=):;ET?to`{1/@|E(IMj">
                                                                                                                          <mutation xmlns="http://www.w3.org/1999/xhtml" format="false" language="false"></mutation>
                                                                                                                          <field name="OPTION">d</field>
                                                                                                                          <value name="VALUE">
                                                                                                                            <block type="variables_get" id="A`;d)o/yQB~UMmVZ1{n~">
                                                                                                                              <field name="VAR" id="@bu3RD+iB=]PdKAxZ?wn">startdatum</field>
                                                                                                                            </block>
                                                                                                                          </value>
                                                                                                                        </block>
                                                                                                                      </value>
                                                                                                                    </block>
                                                                                                                  </value>
                                                                                                                </block>
                                                                                                              </value>
                                                                                                              <statement name="DO0">
                                                                                                                <block type="math_change" id="3|8R$DnBotsy]k-7W1{p">
                                                                                                                  <field name="VAR" id="IoPINO{]qIk%XgKYvn)R">monate</field>
                                                                                                                  <value name="DELTA">
                                                                                                                    <shadow type="math_number" id="):)7+)-LYxa%Lh=xt^6y">
                                                                                                                      <field name="NUM">1</field>
                                                                                                                    </shadow>
                                                                                                                  </value>
                                                                                                                  <next>
                                                                                                                    <block type="variables_set" id="U:-dW@rS%g=s1U]wg^9E">
                                                                                                                      <field name="VAR" id="ooZPRbdvyzkIQ.$#xv#,">tage</field>
                                                                                                                      <value name="VALUE">
                                                                                                                        <block type="math_number" id="Sx?,ok98RQh![.ZBlT4W">
                                                                                                                          <field name="NUM">0</field>
                                                                                                                        </block>
                                                                                                                      </value>
                                                                                                                    </block>
                                                                                                                  </next>
                                                                                                                </block>
                                                                                                              </statement>
                                                                                                              <next>
                                                                                                                <block type="controls_if" id="wRdAa}H0CUphTuG0mFyU">
                                                                                                                  <value name="IF0">
                                                                                                                    <block type="logic_compare" id="@b}/p5|ein5nyu)Y/}^.">
                                                                                                                      <field name="OP">EQ</field>
                                                                                                                      <value name="A">
                                                                                                                        <block type="variables_get" id="];pzykj8*abE=7)TJC}K">
                                                                                                                          <field name="VAR" id="IoPINO{]qIk%XgKYvn)R">monate</field>
                                                                                                                        </block>
                                                                                                                      </value>
                                                                                                                      <value name="B">
                                                                                                                        <block type="math_number" id="a8YZ:ZZwCs%VD_)}cP55">
                                                                                                                          <field name="NUM">12</field>
                                                                                                                        </block>
                                                                                                                      </value>
                                                                                                                    </block>
                                                                                                                  </value>
                                                                                                                  <statement name="DO0">
                                                                                                                    <block type="math_change" id="Fas=M6X2.NR37]g7P?er">
                                                                                                                      <field name="VAR" id="EVPb:UkCB@Z0Qd644};@">jahre</field>
                                                                                                                      <value name="DELTA">
                                                                                                                        <shadow type="math_number" id="tmC0?tz)3*.au[,U:]iJ">
                                                                                                                          <field name="NUM">1</field>
                                                                                                                        </shadow>
                                                                                                                      </value>
                                                                                                                      <next>
                                                                                                                        <block type="variables_set" id="r=wy+S_wbu{4v|R%.LKB">
                                                                                                                          <field name="VAR" id="IoPINO{]qIk%XgKYvn)R">monate</field>
                                                                                                                          <value name="VALUE">
                                                                                                                            <block type="math_number" id="Jz%DphoC4pivKim*.Zr8">
                                                                                                                              <field name="NUM">0</field>
                                                                                                                            </block>
                                                                                                                          </value>
                                                                                                                          <next>
                                                                                                                            <block type="variables_set" id="Ci6T+R{X;Z2?4NQ#uUcN">
                                                                                                                              <field name="VAR" id="ooZPRbdvyzkIQ.$#xv#,">tage</field>
                                                                                                                              <value name="VALUE">
                                                                                                                                <block type="math_number" id="Qu|S{P-EG85YPZpTgM}Q">
                                                                                                                                  <field name="NUM">0</field>
                                                                                                                                </block>
                                                                                                                              </value>
                                                                                                                            </block>
                                                                                                                          </next>
                                                                                                                        </block>
                                                                                                                      </next>
                                                                                                                    </block>
                                                                                                                  </statement>
                                                                                                                </block>
                                                                                                              </next>
                                                                                                            </block>
                                                                                                          </next>
                                                                                                        </block>
                                                                                                      </next>
                                                                                                    </block>
                                                                                                  </next>
                                                                                                </block>
                                                                                              </statement>
                                                                                              <next>
                                                                                                <block type="comment" id="45S$%ITY,V5rIq5(2@P-">
                                                                                                  <field name="COMMENT">Ausgabe</field>
                                                                                                  <next>
                                                                                                    <block type="debug" id="ax1|9SCoe7[wAhsABu@X">
                                                                                                      <field name="Severity">log</field>
                                                                                                      <value name="TEXT">
                                                                                                        <shadow type="text">
                                                                                                          <field name="TEXT">test</field>
                                                                                                        </shadow>
                                                                                                        <block type="text_join" id="8d-CvB,N8WFWW(z,(#4q" inline="true">
                                                                                                          <mutation items="3"></mutation>
                                                                                                          <value name="ADD0">
                                                                                                            <block type="convert_from_date" id="9sEmp?c:C$T*Czdb-5T)">
                                                                                                              <mutation xmlns="http://www.w3.org/1999/xhtml" format="false" language="false"></mutation>
                                                                                                              <field name="OPTION">DD.MM.YYYY</field>
                                                                                                              <value name="VALUE">
                                                                                                                <block type="variables_get" id="JpkRbQrHlVWRA{Kk%mF:">
                                                                                                                  <field name="VAR" id="@bu3RD+iB=]PdKAxZ?wn">startdatum</field>
                                                                                                                </block>
                                                                                                              </value>
                                                                                                            </block>
                                                                                                          </value>
                                                                                                          <value name="ADD1">
                                                                                                            <block type="text" id="S%-(Q/6(QRJ|[/R7|5l(">
                                                                                                              <field name="TEXT"> -&gt; </field>
                                                                                                            </block>
                                                                                                          </value>
                                                                                                          <value name="ADD2">
                                                                                                            <block type="convert_from_date" id="o$MkD:e7~=%}zJWB@xXz">
                                                                                                              <mutation xmlns="http://www.w3.org/1999/xhtml" format="false" language="false"></mutation>
                                                                                                              <field name="OPTION">DD.MM.YYYY</field>
                                                                                                              <value name="VALUE">
                                                                                                                <block type="variables_get" id="(j3S`L#Sl8HO/44!w[Q{">
                                                                                                                  <field name="VAR" id="k!jWl+=eJy!gO#:Eh-*S">enddatum</field>
                                                                                                                </block>
                                                                                                              </value>
                                                                                                            </block>
                                                                                                          </value>
                                                                                                        </block>
                                                                                                      </value>
                                                                                                      <next>
                                                                                                        <block type="debug" id="16Rh9a8-h=yjg#%yKQ,?">
                                                                                                          <field name="Severity">log</field>
                                                                                                          <value name="TEXT">
                                                                                                            <shadow type="text">
                                                                                                              <field name="TEXT">test</field>
                                                                                                            </shadow>
                                                                                                            <block type="text_join" id="Fa`Xb)h1G7?Iob#;:gT!" inline="true">
                                                                                                              <mutation items="6"></mutation>
                                                                                                              <value name="ADD0">
                                                                                                                <block type="variables_get" id="~oMWQ;:#r9CP!f,k4JM{">
                                                                                                                  <field name="VAR" id="EVPb:UkCB@Z0Qd644};@">jahre</field>
                                                                                                                </block>
                                                                                                              </value>
                                                                                                              <value name="ADD1">
                                                                                                                <block type="text" id="{`iVE{zUQ69/K^@UanWw">
                                                                                                                  <field name="TEXT"> Jahre </field>
                                                                                                                </block>
                                                                                                              </value>
                                                                                                              <value name="ADD2">
                                                                                                                <block type="variables_get" id="~23T5P6e}z)gy|-pU#P3">
                                                                                                                  <field name="VAR" id="IoPINO{]qIk%XgKYvn)R">monate</field>
                                                                                                                </block>
                                                                                                              </value>
                                                                                                              <value name="ADD3">
                                                                                                                <block type="text" id="yDdMVR*5vREZ~i:J:xFF">
                                                                                                                  <field name="TEXT"> Monate </field>
                                                                                                                </block>
                                                                                                              </value>
                                                                                                              <value name="ADD4">
                                                                                                                <block type="variables_get" id="/:pUzk*PpgojI{7XftSM">
                                                                                                                  <field name="VAR" id="ooZPRbdvyzkIQ.$#xv#,">tage</field>
                                                                                                                </block>
                                                                                                              </value>
                                                                                                              <value name="ADD5">
                                                                                                                <block type="text" id="P~KD@M{kZ9Dt%HkCEI}e">
                                                                                                                  <field name="TEXT"> Tage </field>
                                                                                                                </block>
                                                                                                              </value>
                                                                                                            </block>
                                                                                                          </value>
                                                                                                        </block>
                                                                                                      </next>
                                                                                                    </block>
                                                                                                  </next>
                                                                                                </block>
                                                                                              </next>
                                                                                            </block>
                                                                                          </next>
                                                                                        </block>
                                                                                      </next>
                                                                                    </block>
                                                                                  </next>
                                                                                </block>
                                                                              </next>
                                                                            </block>
                                                                          </next>
                                                                        </block>
                                                                      </next>
                                                                    </block>
                                                                  </next>
                                                                </block>
                                                              </next>
                                                            </block>
                                                          </statement>
                                                        </block>
                                                      </next>
                                                    </block>
                                                  </next>
                                                </block>
                                              </next>
                                            </block>
                                          </next>
                                        </block>
                                      </next>
                                    </block>
                                  </xml>
                                  
                                  David G.D 1 Antwort Letzte Antwort
                                  0
                                  • sten-torS sten-tor

                                    @david-g Erstmal gute Besserung deiner Frau! Hoffentlich nichts schlimmes.

                                    Mit der Altersberechnung insbesondere der Schaltjahreproblematik hatte ich mich auch schon mal befasst und habe dann als mögliche Blockly-Lösung das iterative Erhöhen des Datumswert gefunden. Kannst ja mal ausprobieren:
                                    Datum.jpg

                                    Hier auch zum direkt importieren:

                                    <xml xmlns="https://developers.google.com/blockly/xml">
                                      <variables>
                                        <variable id="@bu3RD+iB=]PdKAxZ?wn">startdatum</variable>
                                        <variable id="k!jWl+=eJy!gO#:Eh-*S">enddatum</variable>
                                        <variable id="EVPb:UkCB@Z0Qd644};@">jahre</variable>
                                        <variable id="IoPINO{]qIk%XgKYvn)R">monate</variable>
                                        <variable id="ooZPRbdvyzkIQ.$#xv#,">tage</variable>
                                        <variable id="@;idhSG;Ux^aS!Kaj/Z.">tempdatum</variable>
                                        <variable id=",6Z_W4f.-wfh[$qa|l_h">failcounter</variable>
                                      </variables>
                                      <block type="variables_set" id="6m-PTLu:+[^.eX,a:K51" x="-838" y="-262">
                                        <field name="VAR" id="@bu3RD+iB=]PdKAxZ?wn">startdatum</field>
                                        <value name="VALUE">
                                          <block type="convert_to_date" id="lz#v,fRj*tYwy-=f{wR(">
                                            <value name="VALUE">
                                              <block type="text" id="KYj#x]9cr}2x9|H6H+Lg">
                                                <field name="TEXT">2020,2,29</field>
                                              </block>
                                            </value>
                                          </block>
                                        </value>
                                        <next>
                                          <block type="variables_set" id="n/InM:.oKm|KnI^9$zz/">
                                            <field name="VAR" id="k!jWl+=eJy!gO#:Eh-*S">enddatum</field>
                                            <value name="VALUE">
                                              <block type="convert_to_date" id="=V}a50G|tJSTk9yq:Vkn">
                                                <value name="VALUE">
                                                  <block type="text" id="O:UWi*+xlz?).bu^V_7c">
                                                    <field name="TEXT">2023,3,1</field>
                                                  </block>
                                                </value>
                                              </block>
                                            </value>
                                            <next>
                                              <block type="variables_set" id="EB+?-?KclHGF/0OwlU;N">
                                                <field name="VAR" id="EVPb:UkCB@Z0Qd644};@">jahre</field>
                                                <value name="VALUE">
                                                  <block type="math_number" id="VL:?eRTLv~sR,pJdx(r/">
                                                    <field name="NUM">0</field>
                                                  </block>
                                                </value>
                                                <next>
                                                  <block type="variables_set" id=",|M3`E*bUW/!kBMUyAU]">
                                                    <field name="VAR" id="IoPINO{]qIk%XgKYvn)R">monate</field>
                                                    <value name="VALUE">
                                                      <block type="math_number" id="s2IKF4-U1rxEM{i$SzA7">
                                                        <field name="NUM">0</field>
                                                      </block>
                                                    </value>
                                                    <next>
                                                      <block type="variables_set" id="$!(iH.}w)S)=O{B!}]Q3">
                                                        <field name="VAR" id="ooZPRbdvyzkIQ.$#xv#,">tage</field>
                                                        <value name="VALUE">
                                                          <block type="math_number" id="KHz;Y1Be~2t!v@k4nP4T">
                                                            <field name="NUM">0</field>
                                                          </block>
                                                        </value>
                                                        <next>
                                                          <block type="controls_if" id="gZoOB;++6mF^G;;~{!Mt">
                                                            <value name="IF0">
                                                              <block type="logic_compare" id="ZzR#(%}Y[b=5}fw^NjBR">
                                                                <field name="OP">GT</field>
                                                                <value name="A">
                                                                  <block type="variables_get" id="rcwK0CWMad%whp$1,+l#">
                                                                    <field name="VAR" id="k!jWl+=eJy!gO#:Eh-*S">enddatum</field>
                                                                  </block>
                                                                </value>
                                                                <value name="B">
                                                                  <block type="variables_get" id="@Y%lX,];d_mAPP)H!z7@">
                                                                    <field name="VAR" id="@bu3RD+iB=]PdKAxZ?wn">startdatum</field>
                                                                  </block>
                                                                </value>
                                                              </block>
                                                            </value>
                                                            <statement name="DO0">
                                                              <block type="comment" id="IDC3n{u(Oxj0y%iUU/l`">
                                                                <field name="COMMENT">Datum-Objekte auf Tagesanfang setzen</field>
                                                                <next>
                                                                  <block type="variables_set" id="ik[8fz[FkW*jTGb@+_:*">
                                                                    <field name="VAR" id="@bu3RD+iB=]PdKAxZ?wn">startdatum</field>
                                                                    <value name="VALUE">
                                                                      <block type="convert_to_date" id="Sj{+dt6LmU;@y-_R0icX">
                                                                        <value name="VALUE">
                                                                          <block type="convert_from_date" id="]Ol=%4zep24:dbr!wsRf">
                                                                            <mutation xmlns="http://www.w3.org/1999/xhtml" format="false" language="false"></mutation>
                                                                            <field name="OPTION">YYYY.MM.DD</field>
                                                                            <value name="VALUE">
                                                                              <block type="variables_get" id="ZNINw{hj34/AZv/?({z!">
                                                                                <field name="VAR" id="@bu3RD+iB=]PdKAxZ?wn">startdatum</field>
                                                                              </block>
                                                                            </value>
                                                                          </block>
                                                                        </value>
                                                                      </block>
                                                                    </value>
                                                                    <next>
                                                                      <block type="variables_set" id="9.X8|I;l@E`:b].LWEYy">
                                                                        <field name="VAR" id="k!jWl+=eJy!gO#:Eh-*S">enddatum</field>
                                                                        <value name="VALUE">
                                                                          <block type="convert_to_date" id="4imVT^],uFs(qKIT//E8">
                                                                            <value name="VALUE">
                                                                              <block type="convert_from_date" id="|o8?mL@Gc6AG%DioEpkB">
                                                                                <mutation xmlns="http://www.w3.org/1999/xhtml" format="false" language="false"></mutation>
                                                                                <field name="OPTION">YYYY.MM.DD</field>
                                                                                <value name="VALUE">
                                                                                  <block type="variables_get" id="BEwa|^=R*tDL^pLrul?+">
                                                                                    <field name="VAR" id="k!jWl+=eJy!gO#:Eh-*S">enddatum</field>
                                                                                  </block>
                                                                                </value>
                                                                              </block>
                                                                            </value>
                                                                          </block>
                                                                        </value>
                                                                        <next>
                                                                          <block type="comment" id="#(kHBo#+(Jk4h$y=LQzT">
                                                                            <field name="COMMENT">Jahre berechnen</field>
                                                                            <next>
                                                                              <block type="variables_set" id="[}h|@;ivFjl!ydXN~ReA">
                                                                                <field name="VAR" id="EVPb:UkCB@Z0Qd644};@">jahre</field>
                                                                                <value name="VALUE">
                                                                                  <block type="math_arithmetic" id=";L]/9o|V^Wsf8ThF6`LX">
                                                                                    <field name="OP">MINUS</field>
                                                                                    <value name="A">
                                                                                      <shadow type="math_number" id="R_*u3^X2qNQ*R4RuBq^q">
                                                                                        <field name="NUM">1</field>
                                                                                      </shadow>
                                                                                      <block type="convert_from_date" id="Alv-W(-w][/g^?IUb*Pp">
                                                                                        <mutation xmlns="http://www.w3.org/1999/xhtml" format="false" language="false"></mutation>
                                                                                        <field name="OPTION">fy</field>
                                                                                        <value name="VALUE">
                                                                                          <block type="variables_get" id="c:f:gDsdaz^?1LM.[WNa">
                                                                                            <field name="VAR" id="k!jWl+=eJy!gO#:Eh-*S">enddatum</field>
                                                                                          </block>
                                                                                        </value>
                                                                                      </block>
                                                                                    </value>
                                                                                    <value name="B">
                                                                                      <shadow type="math_number" id="fL@AosMBh8JEHC6,K@NH">
                                                                                        <field name="NUM">1</field>
                                                                                      </shadow>
                                                                                      <block type="convert_from_date" id="v})RiDaO|I@Y3uMD_1nU">
                                                                                        <mutation xmlns="http://www.w3.org/1999/xhtml" format="false" language="false"></mutation>
                                                                                        <field name="OPTION">fy</field>
                                                                                        <value name="VALUE">
                                                                                          <block type="variables_get" id="$o4BAD~MfGElI(BUOz23">
                                                                                            <field name="VAR" id="@bu3RD+iB=]PdKAxZ?wn">startdatum</field>
                                                                                          </block>
                                                                                        </value>
                                                                                      </block>
                                                                                    </value>
                                                                                  </block>
                                                                                </value>
                                                                                <next>
                                                                                  <block type="variables_set" id="h.-l8a;u9o*=3_/amA3A">
                                                                                    <field name="VAR" id="EVPb:UkCB@Z0Qd644};@">jahre</field>
                                                                                    <value name="VALUE">
                                                                                      <block type="math_constrain" id="jOc{jUA$WU-[r3|dFsoh">
                                                                                        <value name="VALUE">
                                                                                          <shadow type="math_number">
                                                                                            <field name="NUM">50</field>
                                                                                          </shadow>
                                                                                          <block type="math_arithmetic" id="{=`uwJfBqC~X,LV_w0Gz">
                                                                                            <field name="OP">MINUS</field>
                                                                                            <value name="A">
                                                                                              <shadow type="math_number">
                                                                                                <field name="NUM">1</field>
                                                                                              </shadow>
                                                                                              <block type="variables_get" id="kNP5;H;qwxGLwC7ZfFBA">
                                                                                                <field name="VAR" id="EVPb:UkCB@Z0Qd644};@">jahre</field>
                                                                                              </block>
                                                                                            </value>
                                                                                            <value name="B">
                                                                                              <shadow type="math_number" id="%w5Oxt`m1=WgzJ`j-rw_">
                                                                                                <field name="NUM">1</field>
                                                                                              </shadow>
                                                                                            </value>
                                                                                          </block>
                                                                                        </value>
                                                                                        <value name="LOW">
                                                                                          <shadow type="math_number" id="FG-lEJa2.~5LKjB7+rL%">
                                                                                            <field name="NUM">0</field>
                                                                                          </shadow>
                                                                                        </value>
                                                                                        <value name="HIGH">
                                                                                          <shadow type="math_number" id="?1{$Nl(TQh?U|$7b$b,H">
                                                                                            <field name="NUM">1000000</field>
                                                                                          </shadow>
                                                                                        </value>
                                                                                      </block>
                                                                                    </value>
                                                                                    <next>
                                                                                      <block type="variables_set" id=":%Ji_pj@y9S0-H=]yOb|">
                                                                                        <field name="VAR" id="@;idhSG;Ux^aS!Kaj/Z.">tempdatum</field>
                                                                                        <value name="VALUE">
                                                                                          <block type="convert_to_date" id="R.l?w_M6.{8]]9fb._DU">
                                                                                            <value name="VALUE">
                                                                                              <block type="text_join" id="=.hb#Cbsv?kg{)o4P`40">
                                                                                                <mutation items="5"></mutation>
                                                                                                <value name="ADD0">
                                                                                                  <block type="math_arithmetic" id="fo7UX|K9Bb]9;7k-UBxr">
                                                                                                    <field name="OP">ADD</field>
                                                                                                    <value name="A">
                                                                                                      <shadow type="math_number" id="M5mWT9g=+V[ZXMg}y{!e">
                                                                                                        <field name="NUM">1</field>
                                                                                                      </shadow>
                                                                                                      <block type="convert_from_date" id="k()/{aUzfU;b0!V_L.FW">
                                                                                                        <mutation xmlns="http://www.w3.org/1999/xhtml" format="false" language="false"></mutation>
                                                                                                        <field name="OPTION">fy</field>
                                                                                                        <value name="VALUE">
                                                                                                          <block type="variables_get" id="SCdG7uKuw0Fm2HTSH$WQ">
                                                                                                            <field name="VAR" id="@bu3RD+iB=]PdKAxZ?wn">startdatum</field>
                                                                                                          </block>
                                                                                                        </value>
                                                                                                      </block>
                                                                                                    </value>
                                                                                                    <value name="B">
                                                                                                      <shadow type="math_number" id="(Yeo}ODi`v%k]G+^N|O5">
                                                                                                        <field name="NUM">1</field>
                                                                                                      </shadow>
                                                                                                      <block type="variables_get" id="@@+tl6v.YN4A(_G?h;O9">
                                                                                                        <field name="VAR" id="EVPb:UkCB@Z0Qd644};@">jahre</field>
                                                                                                      </block>
                                                                                                    </value>
                                                                                                  </block>
                                                                                                </value>
                                                                                                <value name="ADD1">
                                                                                                  <block type="text" id="Y=z/TY@c0v}f4})|qxPA">
                                                                                                    <field name="TEXT">,</field>
                                                                                                  </block>
                                                                                                </value>
                                                                                                <value name="ADD2">
                                                                                                  <block type="convert_from_date" id="_fBafy:FtEYPl?3;|Obv">
                                                                                                    <mutation xmlns="http://www.w3.org/1999/xhtml" format="false" language="false"></mutation>
                                                                                                    <field name="OPTION">M</field>
                                                                                                    <value name="VALUE">
                                                                                                      <block type="variables_get" id="j`x]LIN4BH}c6j*;,=A_">
                                                                                                        <field name="VAR" id="@bu3RD+iB=]PdKAxZ?wn">startdatum</field>
                                                                                                      </block>
                                                                                                    </value>
                                                                                                  </block>
                                                                                                </value>
                                                                                                <value name="ADD3">
                                                                                                  <block type="text" id="C65;1^Ac(ob{29SjK@!D">
                                                                                                    <field name="TEXT">,</field>
                                                                                                  </block>
                                                                                                </value>
                                                                                                <value name="ADD4">
                                                                                                  <block type="convert_from_date" id="L?s)gWzhdYdspC!W5o+N">
                                                                                                    <mutation xmlns="http://www.w3.org/1999/xhtml" format="false" language="false"></mutation>
                                                                                                    <field name="OPTION">d</field>
                                                                                                    <value name="VALUE">
                                                                                                      <block type="variables_get" id="NU.:WS1Y+sJK%B)n-SLD">
                                                                                                        <field name="VAR" id="@bu3RD+iB=]PdKAxZ?wn">startdatum</field>
                                                                                                      </block>
                                                                                                    </value>
                                                                                                  </block>
                                                                                                </value>
                                                                                              </block>
                                                                                            </value>
                                                                                          </block>
                                                                                        </value>
                                                                                        <next>
                                                                                          <block type="comment" id="F~6hcZnWmJt-VXo*O3!=">
                                                                                            <field name="COMMENT">Monate/Tage</field>
                                                                                            <next>
                                                                                              <block type="controls_whileUntil" id="OZB.hc}RXNyJ[bqs_1MD">
                                                                                                <field name="MODE">UNTIL</field>
                                                                                                <value name="BOOL">
                                                                                                  <block type="logic_compare" id="`B!Ad8~KwhE38Bd0GA05">
                                                                                                    <field name="OP">GTE</field>
                                                                                                    <value name="A">
                                                                                                      <block type="variables_get" id="ist`ENx1`_hS?dDaA-=V">
                                                                                                        <field name="VAR" id="@;idhSG;Ux^aS!Kaj/Z.">tempdatum</field>
                                                                                                      </block>
                                                                                                    </value>
                                                                                                    <value name="B">
                                                                                                      <block type="variables_get" id="O*/9Cqi5U^uf+*S!:QdZ">
                                                                                                        <field name="VAR" id="k!jWl+=eJy!gO#:Eh-*S">enddatum</field>
                                                                                                      </block>
                                                                                                    </value>
                                                                                                  </block>
                                                                                                </value>
                                                                                                <statement name="DO">
                                                                                                  <block type="math_change" id="R^iR$L#6vH?mqJtOJYAO">
                                                                                                    <field name="VAR" id=",6Z_W4f.-wfh[$qa|l_h">failcounter</field>
                                                                                                    <value name="DELTA">
                                                                                                      <shadow type="math_number" id="]ttwSt1~{C9#R26lG~fT">
                                                                                                        <field name="NUM">1</field>
                                                                                                      </shadow>
                                                                                                    </value>
                                                                                                    <next>
                                                                                                      <block type="math_change" id="Ap]x?1D0@B$W-Jfv})]h">
                                                                                                        <field name="VAR" id="ooZPRbdvyzkIQ.$#xv#,">tage</field>
                                                                                                        <value name="DELTA">
                                                                                                          <shadow type="math_number" id="97XSEqrL){VN)]@caH,-">
                                                                                                            <field name="NUM">1</field>
                                                                                                          </shadow>
                                                                                                        </value>
                                                                                                        <next>
                                                                                                          <block type="variables_set" id="wfYyQ9aTwCvU4SwmzE5r">
                                                                                                            <field name="VAR" id="@;idhSG;Ux^aS!Kaj/Z.">tempdatum</field>
                                                                                                            <value name="VALUE">
                                                                                                              <block type="math_arithmetic" id="COjJaM:7e]e6DbLY^DnK">
                                                                                                                <field name="OP">ADD</field>
                                                                                                                <value name="A">
                                                                                                                  <shadow type="math_number" id="?Q{D{cL-1hc;:@,6eT#m">
                                                                                                                    <field name="NUM">1</field>
                                                                                                                  </shadow>
                                                                                                                  <block type="variables_get" id="-%.{-$J,W%Vic53rn-:N">
                                                                                                                    <field name="VAR" id="@;idhSG;Ux^aS!Kaj/Z.">tempdatum</field>
                                                                                                                  </block>
                                                                                                                </value>
                                                                                                                <value name="B">
                                                                                                                  <shadow type="math_number" id="k?RWeG*h}Dx`j-w32~9(">
                                                                                                                    <field name="NUM">86400000</field>
                                                                                                                  </shadow>
                                                                                                                </value>
                                                                                                              </block>
                                                                                                            </value>
                                                                                                            <next>
                                                                                                              <block type="controls_if" id="FRL:Yl!iS}%4m77|yX/q">
                                                                                                                <value name="IF0">
                                                                                                                  <block type="logic_operation" id="{Dpz4+}YA_T^fg$.yGqd">
                                                                                                                    <field name="OP">OR</field>
                                                                                                                    <value name="A">
                                                                                                                      <block type="logic_compare" id="{*$|a1:+_*No21CPG!At">
                                                                                                                        <field name="OP">GTE</field>
                                                                                                                        <value name="A">
                                                                                                                          <block type="variables_get" id="/)t_Cz}v*#rGICp^o1k]">
                                                                                                                            <field name="VAR" id="ooZPRbdvyzkIQ.$#xv#,">tage</field>
                                                                                                                          </block>
                                                                                                                        </value>
                                                                                                                        <value name="B">
                                                                                                                          <block type="math_number" id="4MAFDH;r*2;77^#%aMap">
                                                                                                                            <field name="NUM">31</field>
                                                                                                                          </block>
                                                                                                                        </value>
                                                                                                                      </block>
                                                                                                                    </value>
                                                                                                                    <value name="B">
                                                                                                                      <block type="logic_compare" id="QuBKQCHRrm^#l/n=K@j;">
                                                                                                                        <field name="OP">EQ</field>
                                                                                                                        <value name="A">
                                                                                                                          <block type="convert_from_date" id="X]L2PsC,;DzfNMl^G+54">
                                                                                                                            <mutation xmlns="http://www.w3.org/1999/xhtml" format="false" language="false"></mutation>
                                                                                                                            <field name="OPTION">d</field>
                                                                                                                            <value name="VALUE">
                                                                                                                              <block type="variables_get" id="7oqyTdB60XEn5sng3fJY">
                                                                                                                                <field name="VAR" id="@;idhSG;Ux^aS!Kaj/Z.">tempdatum</field>
                                                                                                                              </block>
                                                                                                                            </value>
                                                                                                                          </block>
                                                                                                                        </value>
                                                                                                                        <value name="B">
                                                                                                                          <block type="convert_from_date" id="=):;ET?to`{1/@|E(IMj">
                                                                                                                            <mutation xmlns="http://www.w3.org/1999/xhtml" format="false" language="false"></mutation>
                                                                                                                            <field name="OPTION">d</field>
                                                                                                                            <value name="VALUE">
                                                                                                                              <block type="variables_get" id="A`;d)o/yQB~UMmVZ1{n~">
                                                                                                                                <field name="VAR" id="@bu3RD+iB=]PdKAxZ?wn">startdatum</field>
                                                                                                                              </block>
                                                                                                                            </value>
                                                                                                                          </block>
                                                                                                                        </value>
                                                                                                                      </block>
                                                                                                                    </value>
                                                                                                                  </block>
                                                                                                                </value>
                                                                                                                <statement name="DO0">
                                                                                                                  <block type="math_change" id="3|8R$DnBotsy]k-7W1{p">
                                                                                                                    <field name="VAR" id="IoPINO{]qIk%XgKYvn)R">monate</field>
                                                                                                                    <value name="DELTA">
                                                                                                                      <shadow type="math_number" id="):)7+)-LYxa%Lh=xt^6y">
                                                                                                                        <field name="NUM">1</field>
                                                                                                                      </shadow>
                                                                                                                    </value>
                                                                                                                    <next>
                                                                                                                      <block type="variables_set" id="U:-dW@rS%g=s1U]wg^9E">
                                                                                                                        <field name="VAR" id="ooZPRbdvyzkIQ.$#xv#,">tage</field>
                                                                                                                        <value name="VALUE">
                                                                                                                          <block type="math_number" id="Sx?,ok98RQh![.ZBlT4W">
                                                                                                                            <field name="NUM">0</field>
                                                                                                                          </block>
                                                                                                                        </value>
                                                                                                                      </block>
                                                                                                                    </next>
                                                                                                                  </block>
                                                                                                                </statement>
                                                                                                                <next>
                                                                                                                  <block type="controls_if" id="wRdAa}H0CUphTuG0mFyU">
                                                                                                                    <value name="IF0">
                                                                                                                      <block type="logic_compare" id="@b}/p5|ein5nyu)Y/}^.">
                                                                                                                        <field name="OP">EQ</field>
                                                                                                                        <value name="A">
                                                                                                                          <block type="variables_get" id="];pzykj8*abE=7)TJC}K">
                                                                                                                            <field name="VAR" id="IoPINO{]qIk%XgKYvn)R">monate</field>
                                                                                                                          </block>
                                                                                                                        </value>
                                                                                                                        <value name="B">
                                                                                                                          <block type="math_number" id="a8YZ:ZZwCs%VD_)}cP55">
                                                                                                                            <field name="NUM">12</field>
                                                                                                                          </block>
                                                                                                                        </value>
                                                                                                                      </block>
                                                                                                                    </value>
                                                                                                                    <statement name="DO0">
                                                                                                                      <block type="math_change" id="Fas=M6X2.NR37]g7P?er">
                                                                                                                        <field name="VAR" id="EVPb:UkCB@Z0Qd644};@">jahre</field>
                                                                                                                        <value name="DELTA">
                                                                                                                          <shadow type="math_number" id="tmC0?tz)3*.au[,U:]iJ">
                                                                                                                            <field name="NUM">1</field>
                                                                                                                          </shadow>
                                                                                                                        </value>
                                                                                                                        <next>
                                                                                                                          <block type="variables_set" id="r=wy+S_wbu{4v|R%.LKB">
                                                                                                                            <field name="VAR" id="IoPINO{]qIk%XgKYvn)R">monate</field>
                                                                                                                            <value name="VALUE">
                                                                                                                              <block type="math_number" id="Jz%DphoC4pivKim*.Zr8">
                                                                                                                                <field name="NUM">0</field>
                                                                                                                              </block>
                                                                                                                            </value>
                                                                                                                            <next>
                                                                                                                              <block type="variables_set" id="Ci6T+R{X;Z2?4NQ#uUcN">
                                                                                                                                <field name="VAR" id="ooZPRbdvyzkIQ.$#xv#,">tage</field>
                                                                                                                                <value name="VALUE">
                                                                                                                                  <block type="math_number" id="Qu|S{P-EG85YPZpTgM}Q">
                                                                                                                                    <field name="NUM">0</field>
                                                                                                                                  </block>
                                                                                                                                </value>
                                                                                                                              </block>
                                                                                                                            </next>
                                                                                                                          </block>
                                                                                                                        </next>
                                                                                                                      </block>
                                                                                                                    </statement>
                                                                                                                  </block>
                                                                                                                </next>
                                                                                                              </block>
                                                                                                            </next>
                                                                                                          </block>
                                                                                                        </next>
                                                                                                      </block>
                                                                                                    </next>
                                                                                                  </block>
                                                                                                </statement>
                                                                                                <next>
                                                                                                  <block type="comment" id="45S$%ITY,V5rIq5(2@P-">
                                                                                                    <field name="COMMENT">Ausgabe</field>
                                                                                                    <next>
                                                                                                      <block type="debug" id="ax1|9SCoe7[wAhsABu@X">
                                                                                                        <field name="Severity">log</field>
                                                                                                        <value name="TEXT">
                                                                                                          <shadow type="text">
                                                                                                            <field name="TEXT">test</field>
                                                                                                          </shadow>
                                                                                                          <block type="text_join" id="8d-CvB,N8WFWW(z,(#4q" inline="true">
                                                                                                            <mutation items="3"></mutation>
                                                                                                            <value name="ADD0">
                                                                                                              <block type="convert_from_date" id="9sEmp?c:C$T*Czdb-5T)">
                                                                                                                <mutation xmlns="http://www.w3.org/1999/xhtml" format="false" language="false"></mutation>
                                                                                                                <field name="OPTION">DD.MM.YYYY</field>
                                                                                                                <value name="VALUE">
                                                                                                                  <block type="variables_get" id="JpkRbQrHlVWRA{Kk%mF:">
                                                                                                                    <field name="VAR" id="@bu3RD+iB=]PdKAxZ?wn">startdatum</field>
                                                                                                                  </block>
                                                                                                                </value>
                                                                                                              </block>
                                                                                                            </value>
                                                                                                            <value name="ADD1">
                                                                                                              <block type="text" id="S%-(Q/6(QRJ|[/R7|5l(">
                                                                                                                <field name="TEXT"> -&gt; </field>
                                                                                                              </block>
                                                                                                            </value>
                                                                                                            <value name="ADD2">
                                                                                                              <block type="convert_from_date" id="o$MkD:e7~=%}zJWB@xXz">
                                                                                                                <mutation xmlns="http://www.w3.org/1999/xhtml" format="false" language="false"></mutation>
                                                                                                                <field name="OPTION">DD.MM.YYYY</field>
                                                                                                                <value name="VALUE">
                                                                                                                  <block type="variables_get" id="(j3S`L#Sl8HO/44!w[Q{">
                                                                                                                    <field name="VAR" id="k!jWl+=eJy!gO#:Eh-*S">enddatum</field>
                                                                                                                  </block>
                                                                                                                </value>
                                                                                                              </block>
                                                                                                            </value>
                                                                                                          </block>
                                                                                                        </value>
                                                                                                        <next>
                                                                                                          <block type="debug" id="16Rh9a8-h=yjg#%yKQ,?">
                                                                                                            <field name="Severity">log</field>
                                                                                                            <value name="TEXT">
                                                                                                              <shadow type="text">
                                                                                                                <field name="TEXT">test</field>
                                                                                                              </shadow>
                                                                                                              <block type="text_join" id="Fa`Xb)h1G7?Iob#;:gT!" inline="true">
                                                                                                                <mutation items="6"></mutation>
                                                                                                                <value name="ADD0">
                                                                                                                  <block type="variables_get" id="~oMWQ;:#r9CP!f,k4JM{">
                                                                                                                    <field name="VAR" id="EVPb:UkCB@Z0Qd644};@">jahre</field>
                                                                                                                  </block>
                                                                                                                </value>
                                                                                                                <value name="ADD1">
                                                                                                                  <block type="text" id="{`iVE{zUQ69/K^@UanWw">
                                                                                                                    <field name="TEXT"> Jahre </field>
                                                                                                                  </block>
                                                                                                                </value>
                                                                                                                <value name="ADD2">
                                                                                                                  <block type="variables_get" id="~23T5P6e}z)gy|-pU#P3">
                                                                                                                    <field name="VAR" id="IoPINO{]qIk%XgKYvn)R">monate</field>
                                                                                                                  </block>
                                                                                                                </value>
                                                                                                                <value name="ADD3">
                                                                                                                  <block type="text" id="yDdMVR*5vREZ~i:J:xFF">
                                                                                                                    <field name="TEXT"> Monate </field>
                                                                                                                  </block>
                                                                                                                </value>
                                                                                                                <value name="ADD4">
                                                                                                                  <block type="variables_get" id="/:pUzk*PpgojI{7XftSM">
                                                                                                                    <field name="VAR" id="ooZPRbdvyzkIQ.$#xv#,">tage</field>
                                                                                                                  </block>
                                                                                                                </value>
                                                                                                                <value name="ADD5">
                                                                                                                  <block type="text" id="P~KD@M{kZ9Dt%HkCEI}e">
                                                                                                                    <field name="TEXT"> Tage </field>
                                                                                                                  </block>
                                                                                                                </value>
                                                                                                              </block>
                                                                                                            </value>
                                                                                                          </block>
                                                                                                        </next>
                                                                                                      </block>
                                                                                                    </next>
                                                                                                  </block>
                                                                                                </next>
                                                                                              </block>
                                                                                            </next>
                                                                                          </block>
                                                                                        </next>
                                                                                      </block>
                                                                                    </next>
                                                                                  </block>
                                                                                </next>
                                                                              </block>
                                                                            </next>
                                                                          </block>
                                                                        </next>
                                                                      </block>
                                                                    </next>
                                                                  </block>
                                                                </next>
                                                              </block>
                                                            </statement>
                                                          </block>
                                                        </next>
                                                      </block>
                                                    </next>
                                                  </block>
                                                </next>
                                              </block>
                                            </next>
                                          </block>
                                        </next>
                                      </block>
                                    </xml>
                                    
                                    David G.D Online
                                    David G.D Online
                                    David G.
                                    schrieb am zuletzt editiert von David G.
                                    #23

                                    @sten-tor

                                    Ich sage mal, es wird.
                                    Sind noch an der Ursachenforschung.....

                                    Das sieht auch sehr interessant aus.
                                    Verstehe es sogar teilweise 🤣

                                    Werde ich mal importieren und testen.
                                    Kann ja die Ergebnisse mal mit den Testdaten von oben vergleichen.

                                    Vielen Dank

                                    EDIT

                                    Hab es grad mal importiert und in eine Funktion gepackt. So kann man mehrere Personen abarbeiten ^^.
                                    Klappt sehr gut.

                                    Top.
                                    (Telegram wird noch duch einen Datenpunkt ersetzt, grad zum testen.)

                                    Screenshot_20220127-203200_Firefox.jpg

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

                                    Meine Tabellen für eure Visualisierung klick

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

                                      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)

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

                                      Meine Tabellen für eure Visualisierung klick

                                      sten-torS 1 Antwort Letzte Antwort
                                      0
                                      • rtwlR Online
                                        rtwlR Online
                                        rtwl
                                        schrieb am zuletzt editiert von
                                        #25

                                        könnte man nicht einfach 3 Datenpunkte anlegen. Jahre, Monate und Tage.
                                        Angenommen der Geburtstag ist am 6. Jänner

                                        Man rechnet jeden 6. Jänner beim Jahr +1
                                        Jeden 6. des Monats das Monat +1
                                        Jeden Tag den den Tag +1
                                        sowie setzt jeden 6. des Monats den Tag auf 0 zurück
                                        und jeden 6. Jänner das Monat auf 0 zurück.

                                        Ich hab das mit Tasker auf meinem Smartphone genau so gemacht und funktioniert seit 2 Jahren perfekt. Wird sicher mit Blockly auch irgendwie gehen.

                                        -Peter

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

                                          könnte man nicht einfach 3 Datenpunkte anlegen. Jahre, Monate und Tage.
                                          Angenommen der Geburtstag ist am 6. Jänner

                                          Man rechnet jeden 6. Jänner beim Jahr +1
                                          Jeden 6. des Monats das Monat +1
                                          Jeden Tag den den Tag +1
                                          sowie setzt jeden 6. des Monats den Tag auf 0 zurück
                                          und jeden 6. Jänner das Monat auf 0 zurück.

                                          Ich hab das mit Tasker auf meinem Smartphone genau so gemacht und funktioniert seit 2 Jahren perfekt. Wird sicher mit Blockly auch irgendwie gehen.

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

                                          @rtwl

                                          Das wäre eine Möglichkeit.
                                          Wüsste ich aber nicht, wie ich das mache.....

                                          Mit moments in JS wäre denke wirklich das leichteste.

                                          Bekomme es in Blockly aber nicht als JS Baustein mit Ergebnis umgesetzt.

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

                                          Meine Tabellen für eure Visualisierung klick

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


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          482

                                          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