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.
    • DJMarc75
      DJMarc75 @paul53 last edited by

      @paul53
      Habs jetzt mal 1:1 nachgebaut mit dem Ergebniss dass bei jedem Klick einfach nur alle Datenpunkte in das Objekt geschrieben werden... ABER mit Komma dazwischen 👍
      Habe auch schon ein bissle mit dem "ids vom Selektor-Block" rumgespielt aber ohne Erfolg.

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

        @djmarc75 sagte: bei jedem Klick einfach nur alle Datenpunkte in das Objekt geschrieben werden.

        Alle Datenpunkte mit dem Wert true, die "enum.functions.pepper" zugeordnet sind?

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

          @paul53 said in ID Selektoren bei True in Datenpunkt schreiben:

          Alle Datenpunkte mit dem Wert true, die "enum.functions.pepper" zugeordnet sind?

          Alle, auch die auf FALSE sind.

          paul53 1 Reply Last reply Reply Quote 0
          • 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

                              543
                              Online

                              32.1k
                              Users

                              80.6k
                              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