Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. Systemvariable mit Werteliste in Iobroker

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    Systemvariable mit Werteliste in Iobroker

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

      @semmy sagte: Es tut sich nichts.

      Ist der Trigger-Datenpunkt die SV und wurde deren Wert einmal geändert (sonst triggerts nicht)?

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

        @paul53 Ja, kommen immer Error Meldungen:
        00:17:48.394 error javascript.0 (25467) script.js.Haus.Pelletofen: ReferenceError: obj is not defined
        00:17:48.397 error javascript.0 (25467) at stateText (script.js.Haus.Pelletofen:5:5)
        00:17:48.399 error javascript.0 (25467) at Object.<anonymous> (script.js.Haus.Pelletofen:12:22)

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

          @semmy sagte: kommen immer Error Meldungen:

          Poste bitte den vom Blockly erzeugten Javascript-Code ohne die letzte Zeile in Code tags.

          EDIT: Ich meine diesen:

          var dp, obj;
          
          // Beschreibe diese Funktion …
          async function stateText(dp) {
              return dp.common.states[dp.state.val];
          }
          
          
          on({id: 'default', change: "ne"}, async function (obj) {
            var value = obj.state.val;
            var oldValue = obj.oldState.val;
            console.log((await stateText(obj)));
          });
          
          S 1 Reply Last reply Reply Quote 0
          • S
            Semmy @paul53 last edited by

            @paul53 Steht doch schon oben

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

              @semmy
              Wo?

              Ändere mal die Funktion in eine mit Parameter dp:

              Blockly_temp.JPG

              Die Variable obj muss genau so geschrieben werden. Funktion stateText(dp):

              return dp.common.states[dp.state.val];
              
              S 1 Reply Last reply Reply Quote 0
              • S
                Semmy @paul53 last edited by

                @paul53 ```Hat sich nichts geändert
                27.11.2021, 10:37:14.835 [error]: javascript.0 (25467) script.js.Haus.Pelletofen: ReferenceError: dp is not defined
                27.11.2021, 10:37:14.836 [error]: javascript.0 (25467) at stateText (script.js.Haus.Pelletofen:5:5)
                27.11.2021, 10:37:14.837 [error]: javascript.0 (25467) at Object.<anonymous> (script.js.Haus.Pelletofen:12:22)

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

                  @semmy sagte: ReferenceError: dp is not defined

                  Bild_2021-11-27_104001.png

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

                    @paul53 Ok, das war es, jetzt funktioniert es. Vielen Dank

                    Viele Grüße
                    Semmy

                    S 1 Reply Last reply Reply Quote 0
                    • S
                      Semmy @Semmy last edited by

                      @semmy Noch eine Frage. Was muss geändert werden für eine 2. Werteliste?

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

                        @semmy sagte: Was muss geändert werden für eine 2. Werteliste?

                        Was meinst Du mit 2. Werteliste?
                        Ein weiterer Datenpunkt mit Werteliste? Dann muss nichts geändert werden, wenn jeder Datenpunkt einen eigenen Trigger erhält, in dem jeweils die JS-Funktion stateText(dp) aufgerufen wird.

                        Bild_2021-11-27_121201.png

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

                          @paul53 Genau, jetzt passt es. Danke

                          Gruß
                          Semmy

                          S 1 Reply Last reply Reply Quote 0
                          • S
                            Semmy @Semmy last edited by Semmy

                            @semmy Hallo
                            Ist das folgende Blockly so in Ordnung, kommt immer mal vor, dass sich der Ofen nicht ab- oder anschaltet
                            Ofen.jpg
                            Mit diesen Einstellungen funktioniert es immer
                            Ofen1.jpg
                            Viele Grüße
                            Semmy

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

                              @semmy
                              Die beiden Grenzwertvariablen müssen bei Skriptstart initialisiert werden. Dafür benötigt man eine andere JS-Funktion getStateText(id) mit folgendem Inhalt:

                              return getObject(id).common.states[getState(id).val];
                              

                              Blockly_temp.JPG

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

                                @paul53 Hallo
                                Was muss bei Objekt ID default stehen?

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

                                  @semmy sagte: Was muss bei Objekt ID default stehen?

                                  Dort müssen die Datenpunkte "Ofen Automatik Wert unten" bzw. "... Wert oben" zugewiesen werden, die auch zum Triggern verwendet werden.

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

                                    @paul53 Ok, vielen Dank. Ich werde es testen.

                                    Viele Grüße
                                    Semmy

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

                                    Support us

                                    ioBroker
                                    Community Adapters
                                    Donate

                                    435
                                    Online

                                    32.0k
                                    Users

                                    80.5k
                                    Topics

                                    1.3m
                                    Posts

                                    3
                                    24
                                    999
                                    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