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) ID Selektoren bei True in Datenpunkt schreiben

    NEWS

    • Neues Video über Aliase, virtuelle Geräte und Kategorien

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    (GELÖST) ID Selektoren bei True in Datenpunkt schreiben

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

      @djmarc75 sagte: Alle, auch die auf FALSE sind.

      Das verhindert

      falls Wert vom Objekt ID id
      

      Oder ist "false" ein String?

      Poste mal den erzeugten Javascript-Code ohne die letzte Zeile in Code tags.

      DJMarc75 2 Replies Last reply Reply Quote 0
      • DJMarc75
        DJMarc75 @paul53 last edited by DJMarc75

        @paul53

        var Liste, Futterliste, i;
        
        
        Liste = Array.prototype.slice.apply($("*(functions=pepper)"));
        on({id: Liste, change: "ne"}, async function (obj) {
          var value = obj.state.val;
          var oldValue = obj.oldState.val;
          Futterliste = [];
          for (var i_index in Liste) {
            i = Liste[i_index];
            if (getState(i).val == true) {
              Futterliste.push((obj.common ? obj.common.name : ""));
            }
          }
          setState("0_userdata.0.Pepper.Aufgaben.Frischfutter.Futterliste"/*Futterliste*/, (Futterliste.join(',')), true);
        });
        
        paul53 1 Reply Last reply Reply Quote 0
        • DJMarc75
          DJMarc75 @paul53 last edited by DJMarc75

          @paul53

          Es verhält sich im Moment so, dass, immer wenn ich einen Datenpunkt auf ändere, die Anzahl der auf True gesetzten stimmt, aber es wird, als Beispiel dann dreimal "Tomate" angezeigt, obwohl Gurke, Tomate und Karotte ausgewählt sind. Quasi immer der zuletzt geänderte wird dann angezeigt.

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

            @djmarc75 sagte: dreimal "Tomate" angezeigt, obwohl Gurke, Tomate und Karotte ausgewählt sind.

            Sorry, mein Fehler: Name enthält den Namen des Trigger-Datenpunktes, der sich in der Schleife nicht ändert. Du benötigst anstelle von Name eine JS-Funktion getName(id) mit Ergebnis mit folgendem Inhalt:

            return getObject(id).common.name;
            

            Bild_2022-04-12_192711354.png

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

              @paul53
              Du bist spitze !!!
              Vielen Dank und ich setzte den Post gleich mal auf gelöst !!!!

              MERCI

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

                @paul53
                Muss nochmal was nachfragen...

                Gibt es auch die Möglichkeit den ganzen Objektpfad auszulesen und diesen dann in einen Datenpunkt zu schreiben ?

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

                  @djmarc75 sagte: Gibt es auch die Möglichkeit den ganzen Objektpfad auszulesen und diesen dann in einen Datenpunkt zu schreiben ?

                  Mit Objektpfad meinst Du die ID? Die liegt ja bereits als Variable id vor.

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

                    @paul53 said in (GELÖST) ID Selektoren bei True in Datenpunkt schreiben:

                    Mit Objektpfad meinst Du die ID? Die liegt ja bereits als Variable id vor.

                    0_userdata.0.Spotify.Variablen_zur_Steuerung.Headset
                    

                    z.B. diesen kompletten Pfad wenn Wert true in einen Datenpunkt schreiben.

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

                      @djmarc75 sagte: z.B. diesen kompletten Pfad wenn Wert true in einen Datenpunkt schreiben.

                      Das ist der Inhalt der Variablen id. Also einfach die Funktion getName(id) weglassen und id in die Liste schreiben.

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

                        @paul53
                        Perfekt, wie immer.
                        Danke

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

                        Support us

                        ioBroker
                        Community Adapters
                        Donate

                        836
                        Online

                        32.0k
                        Users

                        80.5k
                        Topics

                        1.3m
                        Posts

                        2
                        15
                        319
                        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