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. ForEach mit Blockly

NEWS

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    11
    1
    343

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.6k

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    9.5k

ForEach mit Blockly

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
14 Beiträge 4 Kommentatoren 3.7k Aufrufe
  • Ä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.
  • rantanplanR Online
    rantanplanR Online
    rantanplan
    schrieb am zuletzt editiert von
    #4

    Na klar. Wie soll ich wissen was Du machen willst.

    In Deinem Beispiel wird das Array durchlaufen und i bekommt den Inhalt von Array(x).

    Was willst Du denn erreichen?

    Grüße

    Rantanplan

    CCU3 / MS Server 2019(VM) / Scripten mit Blockly

    1 Antwort Letzte Antwort
    0
    • P Offline
      P Offline
      Pumbadinho
      schrieb am zuletzt editiert von
      #5

      @rantanplan:

      Na klar. Wie soll ich wissen was Du machen willst.

      In Deinem Beispiel wird das Array durchlaufen und i bekommt den Inhalt von Array(x).

      Was willst Du denn erreichen?

      Grüße `

      var Array = ["hm-rpc.0.XXXXXXXXXX.1.STATE","hm-rpc.0.XXXXXXXXXY.1.STATE"];
      
      Array.forEach(function(i, index, array){                                     
         setState(i,true);   
      );
      

      Ich dachte das wird hieraus deutlich. Ich habe ein Array mit Aktoren, die alle auf true gesetzt werden sollen.

      1 Antwort Letzte Antwort
      0
      • rantanplanR Online
        rantanplanR Online
        rantanplan
        schrieb am zuletzt editiert von
        #6

        "Array" ist bei Dir eine lokale Variable.

        Die kannst Du nicht bei "Objekt ID" einsetzen.

        Du musst in ioBroker/Objekte ein Objekt anlegen und dies benutzen.

        Grüße

        Rantanplan

        CCU3 / MS Server 2019(VM) / Scripten mit Blockly

        1 Antwort Letzte Antwort
        0
        • P Offline
          P Offline
          Pumbadinho
          schrieb am zuletzt editiert von
          #7

          @rantanplan:

          "Array" ist bei Dir eine lokale Variable.

          Die kannst Du nicht bei "Objekt ID" einsetzen.

          Du musst in ioBroker/Objekte ein Objekt anlegen und dies benutzen.

          Grüße `

          Also, ich habe jetzt bereits Objekte und der Code so wie er oben steht funktioniert bei mir in einem anderen Skript.

          Genau das will ich nachbauen.

          Das kann dich nciht so schwer sein…

          1 Antwort Letzte Antwort
          0
          • P Offline
            P Offline
            Pumbadinho
            schrieb am zuletzt editiert von
            #8

            Also das ist vielleicht etwas unglücklich gewählt, aber Array hieß vorher anders. Nur dummerweise habe ich den Namen für das Array in blockly so gewählt um schnell den Screen zu machen. blockly hat die danach automatisch umbenannt, da Array ja ein definierter Begriff ist.

            Gesendet von meinem Nexus 6P mit Tapatalk

            1 Antwort Letzte Antwort
            0
            • rantanplanR Online
              rantanplanR Online
              rantanplan
              schrieb am zuletzt editiert von
              #9

              Hi Pumbadinho

              Blockly ist immer noch Beta.

              Somit ist noch nicht alles möglich und Bugs können auch noch vorkommen.

              Ich wollte Dir ein Beispiel zusammen bauen und bin da wohl auf einen Bug gestoßen.

              Muss ich aber noch validieren. (das aber erst nach den Feiertagen)

              Wenn Du schnell eine Lösungs braucht, setze doch einfach ein paar "steuere…" untereinander.

              Dein Array war ja nicht dynamisch geplant. Der Arbeitsaufwand ist also ähnlich aber einfacher.

              Grüße und Frohe Festtage

              Rantanplan

              CCU3 / MS Server 2019(VM) / Scripten mit Blockly

              1 Antwort Letzte Antwort
              0
              • P Offline
                P Offline
                Pumbadinho
                schrieb am zuletzt editiert von
                #10

                Eine schnelle Lösung brauche ich da nicht. Habe das so wie du gelöst. Nur wenn man intelligente Skripte bauen will, dann wäre das schon eine wünschenswerte Funktion.

                Ist auch nichts ohne das ich nicht leben kann…

                Gesendet von meinem Nexus 6P mit Tapatalk

                1 Antwort Letzte Antwort
                0
                • P Offline
                  P Offline
                  Pumbadinho
                  schrieb am zuletzt editiert von
                  #11

                  Gibt es hier ein Update?

                  Gesendet von meinem Nexus 6P mit Tapatalk

                  1 Antwort Letzte Antwort
                  0
                  • BluefoxB Offline
                    BluefoxB Offline
                    Bluefox
                    schrieb am zuletzt editiert von
                    #12

                    @Pumbadinho:

                    Hallo,

                    ich möchte gerne in ein Skript welches mit Blockly gebaut wurde folgendes einfügen:

                    var Array = ["hm-rpc.0.XXXXXXXXXX.1.STATE","hm-rpc.0.XXXXXXXXXY.1.STATE"];
                    
                    Array.forEach(function(i, index, array){                                     
                    	setState(i,true);   
                    );
                    
                    

                    Wie kann ich das umsetzen?

                    So habe ich es versucht, aber leider habe ich jetzt keine Ahnung, was ich als Objekt auswählen muss.

                    Da müsste jetzt ja ein "i" rein.

                    Blockly.JPG

                    Kann mir da jemand weiterhelfen? `
                    So?
                    48_2017-01-05_10_46_50-iobroker.admin.png

                    var myIDs, i;
                    
                    myIDs = ['default', 'default', 'default'];
                    for (var i_index in myIDs) {
                      i = myIDs[i_index];
                      setStateDelayed(i, true, false, parseInt(0, 10), false);
                    }
                    

                    Array is vordefiniertes Wort. Bitte nicht benutzen.

                    1 Antwort Letzte Antwort
                    0
                    • P Offline
                      P Offline
                      Pumbadinho
                      schrieb am zuletzt editiert von
                      #13

                      Oh, das Update ist mir wohl irgendwie durchgegangen, werde ich Mal versuchen.

                      Gesendet von meinem Nexus 6P mit Tapatalk

                      1 Antwort Letzte Antwort
                      0
                      • madjack84M Offline
                        madjack84M Offline
                        madjack84
                        schrieb am zuletzt editiert von
                        #14

                        Ich finde leider das Blockly äquivalent für getState der Object ID nicht.

                        Man müsste im Blockly die Object ID, also Variable i, einfügen können.

                        …

                        for (var i_index in BatteryArray) {

                        i = BatteryArray[i_index];

                        var value = getState(i).val;

                        …

                        Übersehe ich da was?

                        oder gibts es nur Schreiben?

                        nuc i3, Proxmox, raspimatic (PI3), 15 shellies, shelly 4pro/25/RGB, wled sonoff, 7x xiaomi sensoren, 4xEchos, 4 Tasmota Steckdosen, motionEye, nspanel, Ring, hoymiles usw

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


                        Support us

                        ioBroker
                        Community Adapters
                        Donate

                        730

                        Online

                        32.5k

                        Benutzer

                        81.7k

                        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