Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. [gelöst] Tageszähler

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    SOLVED [gelöst] Tageszähler

    This topic has been deleted. Only users with topic management privileges can see it.
    • paul53
      paul53 @Aphofis last edited by

      @Aphofis sagte:

      ab einem angegebenen Datum die Tage bis Heute

      Blockly_temp.JPG

      1 Reply Last reply Reply Quote 1
      • bahnuhr
        bahnuhr Forum Testing Most Active last edited by

        https://forum.iobroker.net/topic/8203/beispiel-skript-errechnet-tage-bis-termin

        1 Reply Last reply Reply Quote 0
        • Aphofis
          Aphofis last edited by Aphofis

          Ergebnis ist 0
          Was ist denn da falsch !?

          on({id: "Aqua_Control.0.System.Test"/*Test*/, change: "ne"}, function (obj) {
            var value = obj.state.val;
            var oldValue = obj.oldState.val;
            if (getState("Aqua_Control.0.System.Test").val == true) {
              setState("alexa2.0.Echo-Devices.G090LV0371040175.Commands.speak"/*speak*/, (String(Math.floor(86400000 / ((new Date().getTime()) - getDateObject('2019-07-28').getTime()))) + ''));
            }
          });
          
          paul53 1 Reply Last reply Reply Quote 0
          • Aphofis
            Aphofis last edited by

            Warum sind deine Blöcke eigentlich immer untereinander!? Meine sind immer nebeneinander, kann man das irgendwie umstellen?

            1 Reply Last reply Reply Quote 0
            • paul53
              paul53 @Aphofis last edited by

              @Aphofis sagte in Tageszähler:

              Was ist denn da falsch !?

              Nicht 86400000 / Zeitdifferenz, sondern so wie im Blockly zu sehen: Zeitdifferenz / 86400000.

              @Aphofis sagte in Tageszähler:

              kann man das irgendwie umstellen?

              Mauszeiger über dem Block - rechte Maustaste - externe Eingänge auswählen

              Aphofis 1 Reply Last reply Reply Quote 1
              • Aphofis
                Aphofis @paul53 last edited by Aphofis

                @paul53
                Ja jetzt versteht man die Bausteine auch besser wenn sie übereinander sind!
                So ist es viel Besser!
                Danke

                1 Reply Last reply Reply Quote 0
                • Aphofis
                  Aphofis last edited by Aphofis

                  Hab den Zähler eingebaut und er funktioniert! Vielen Dank @paul53

                  1 Reply Last reply Reply Quote 0
                  • Aphofis
                    Aphofis last edited by Aphofis

                    @paul53
                    noch ein kleiner Nachtrag !?
                    Kann man auch ein Datum im Format 01.02.2019 das in einem Datenpunkt steht als gemischt
                    als Ausgangsdatum nehmen und dann das Aktuelle Datum und die vergangenen Tage zählen und ausgeben lassen !?
                    Ich hab es versucht es wird immer NaN angeben.

                    paul53 1 Reply Last reply Reply Quote 0
                    • paul53
                      paul53 @Aphofis last edited by

                      @Aphofis sagte:

                      ein Datum im Format 01.02.2019 das in einem Datenpunkt

                      Blockly_temp.JPG

                      Aphofis 1 Reply Last reply Reply Quote 1
                      • Aphofis
                        Aphofis @paul53 last edited by Aphofis

                        @paul53
                        Das schon mal sehr geil !?
                        Jedes mal wie Weihnachten, man stellt dir eine Frage und kurze Zeit später.
                        Hast Du eine Steuerug gebastelt.
                        Ist es so möglich, Alexa diesen Datums Datenpunkt & Den Rollenverbrauch aktuallisierungen zu lassen per sprachbefehl!?

                        In dieser Form !?

                        var Vliesrollen_L_C3_A4nge;
                        
                        
                        Vliesrollen_L_C3_A4nge = getState("Aqua_Control.0.Vliesfilter.Vlies_Rollenlänge").val;
                        on({id: 'Aqua_Control.0.Vliesfilter.Vliesfilter_Vlies_&_Datum_Reset', change: "ne"}, function (obj) {
                          var value = obj.state.val;
                          var oldValue = obj.oldState.val;
                          if (getState("Aqua_Control.0.Vliesfilter.Vliesfilter_Vlies_&_Datum_Reset").val == true) {
                            // Datums Reset
                            setState("Aqua_Control.0.Vliesfilter.Vliesrolle_eingesetzt"/*Vliesrolle_eingesetzt*/, formatDate(new Date(), "DD.MM.YYYY"), true);
                            // 100 Meter Reset
                            setState("Aqua_Control.0.Vliesfilter.Vliesrolle"/*Vliesrolle*/, Vliesrollen_L_C3_A4nge, true);
                            setStateDelayed("Aqua_Control.0.Vliesfilter.Vliesfilter_Vlies_&_Datum_Reset"/*Vliesfilter_Vlies_&_Datum_Reset*/, false, 10000, false);
                          }
                        });
                        

                        Alexa Sprachsteuerung auf dem Datenpunkt
                        IMG_5887.jpg

                        Datenpunkte:

                        Bildschirmfoto 2019-09-22 um 07.01.40.png

                        paul53 1 Reply Last reply Reply Quote 0
                        • paul53
                          paul53 @Aphofis last edited by

                          @Aphofis sagte:

                          Alexa diesen Datums Datenpunkt & Den Rollenverbrauch aktuallisierungen zu lassen per sprachbefehl!?

                          Mit Alexa kenne ich mich nicht aus.

                          @Aphofis sagte in [gelöst] Tageszähler:

                          In dieser Form !?

                          Die Variable Vliesrollen_Länge sollte innerhalb des Triggers auf den Wert des entsprechenden Datenpunktes gesetzt werden, da sie sonst praktisch eine Konstante ist. Die Verzögerung im letzten Befehl ist nicht erforderlich.

                          Aphofis 1 Reply Last reply Reply Quote 0
                          • Aphofis
                            Aphofis @paul53 last edited by

                            @paul53
                            Du meinst so?
                            Das ist gut zu wissen, das keine Zeitverzögerung da rein muss!
                            Ich habe einige Steuerungen die auch sehr umfangreich aber simpel sind, wo mehrere Geräte gesteuert werden sollen und Steuerungen ein oder ausgeschaltet werden müssen. da habe ich sowas auch drin. Vielleicht, müssen die ja garnicht sein. Nur kommt es manchmal zu fehl schaltungen.

                            var Vliesrollen_Laenge;
                            
                            
                            Vliesrollen_Laenge = getState("Aqua_Control.0.Vliesfilter.Vlies_Rollenlänge").val;
                            on({id: 'Aqua_Control.0.Vliesfilter.Vliesfilter_Vlies_&_Datum_Reset', change: "ne"}, function (obj) {
                              var value = obj.state.val;
                              var oldValue = obj.oldState.val;
                              if (getState("Aqua_Control.0.Vliesfilter.Vliesfilter_Vlies_&_Datum_Reset").val == true) {
                                Vliesrollen_Laenge = Vliesrollen_Laenge;
                                // Datums Reset
                                setState("Aqua_Control.0.Vliesfilter.Vliesrolle_eingesetzt"/*Vliesrolle_eingesetzt*/, formatDate(new Date(), "DD.MM.YYYY"), true);
                                // 100 Meter Reset
                                setState("Aqua_Control.0.Vliesfilter.Vliesrolle"/*Vliesrolle*/, Vliesrollen_Laenge, true);
                                setState("alexa2.0.Echo-Devices.G090LV0371040175.Commands.speak"/*speak*/, ('Ich habe,, das Vliesfilter Datum und den Vliesrollenverbrauch,, zurückgesetzt'));
                                sendTo("telegram.0", "send", {
                                    text: (['Vliesfilter Datum und Vliesrollenverbrauch','\n','wurden auf das heutige Datum und ',getState("Aqua_Control.0.Vliesfilter.Vlies_Rollenlänge").val / 100,'Meter Rolle zurückgesetzt'].join(''))
                                });
                                console.log("telegram: " + (['Vliesfilter Datum und Vliesrollenverbrauch','\n','wurden auf das heutige Datum und ',getState("Aqua_Control.0.Vliesfilter.Vlies_Rollenlänge").val / 100,'Meter Rolle zurückgesetzt'].join('')));
                                setState("Aqua_Control.0.Vliesfilter.Vliesfilter_Vlies_&_Datum_Reset"/*Vliesfilter_Vlies_&_Datum_Reset*/, false);
                              }
                            });
                            
                            paul53 1 Reply Last reply Reply Quote 0
                            • paul53
                              paul53 @Aphofis last edited by

                              @Aphofis sagte:

                              Du meinst so?

                              Nein, die ehemalige Zeile 4 muss in die neue Zeile 9.
                              setze Vliesrollen_Laenge auf Wert von Objekt Vlies_Rollenlänge

                              Aphofis 1 Reply Last reply Reply Quote 0
                              • Aphofis
                                Aphofis @paul53 last edited by

                                @paul53
                                Korregt ?

                                var Vliesrollen_Laenge;
                                
                                
                                Vliesrollen_Laenge = getState("Aqua_Control.0.Vliesfilter.Vlies_Rollenlänge").val;
                                on({id: 'Aqua_Control.0.Vliesfilter.Vliesfilter_Vlies_&_Datum_Reset', change: "ne"}, function (obj) {
                                  var value = obj.state.val;
                                  var oldValue = obj.oldState.val;
                                  if (getState("Aqua_Control.0.Vliesfilter.Vliesfilter_Vlies_&_Datum_Reset").val == true) {
                                    Vliesrollen_Laenge = getState("Aqua_Control.0.Vliesfilter.Vlies_Rollenlänge").val;
                                    // Datums Reset
                                    setState("Aqua_Control.0.Vliesfilter.Vliesrolle_eingesetzt"/*Vliesrolle_eingesetzt*/, formatDate(new Date(), "DD.MM.YYYY"), true);
                                    // 100 Meter Reset
                                    setState("Aqua_Control.0.Vliesfilter.Vliesrolle"/*Vliesrolle*/, Vliesrollen_Laenge, true);
                                    setState("alexa2.0.Echo-Devices.G090LV0371040175.Commands.speak"/*speak*/, ('Ich habe,, das Vliesfilter Datum und den Vliesrollenverbrauch,, zurückgesetzt'));
                                    sendTo("telegram.0", "send", {
                                        text: (['Vliesfilter Datum und Vliesrollenverbrauch','\n','wurden auf das heutige Datum und ',getState("Aqua_Control.0.Vliesfilter.Vlies_Rollenlänge").val / 100,'Meter Rolle zurückgesetzt'].join(''))
                                    });
                                    console.log("telegram: " + (['Vliesfilter Datum und Vliesrollenverbrauch','\n','wurden auf das heutige Datum und ',getState("Aqua_Control.0.Vliesfilter.Vlies_Rollenlänge").val / 100,'Meter Rolle zurückgesetzt'].join('')));
                                    setState("Aqua_Control.0.Vliesfilter.Vliesfilter_Vlies_&_Datum_Reset"/*Vliesfilter_Vlies_&_Datum_Reset*/, false);
                                  }
                                });
                                
                                
                                paul53 1 Reply Last reply Reply Quote 0
                                • paul53
                                  paul53 @Aphofis last edited by

                                  @Aphofis
                                  Korrekt.

                                  Aphofis 1 Reply Last reply Reply Quote 0
                                  • Aphofis
                                    Aphofis @paul53 last edited by

                                    @paul53
                                    Dann kanns ja los gehen.
                                    Hatte die Sprachsteuerung mal getestet Datenpunkte werden korregt gesetzt.
                                    Prima 👍 👍 👍
                                    Vielen Dank

                                    1 Reply Last reply Reply Quote 0
                                    • First post
                                      Last post

                                    Support us

                                    ioBroker
                                    Community Adapters
                                    Donate

                                    760
                                    Online

                                    31.9k
                                    Users

                                    80.3k
                                    Topics

                                    1.3m
                                    Posts

                                    blockly
                                    3
                                    17
                                    1334
                                    Loading More Posts
                                    • Oldest to Newest
                                    • Newest to Oldest
                                    • Most Votes
                                    Reply
                                    • Reply as topic
                                    Log in to reply
                                    Community
                                    Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                    The ioBroker Community 2014-2023
                                    logo