Weiter zum Inhalt
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Hell
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dunkel
  • 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. Blockly
  5. Problem mit internen Blockly Variablen (gelöst)

NEWS

  • Neuer ioBroker-Blog online: Monatsrückblick März/April 2026
    BluefoxB
    Bluefox
    8
    1
    473

  • Verwendung von KI bitte immer deutlich kennzeichnen
    HomoranH
    Homoran
    10
    1
    394

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    18
    1
    979

Problem mit internen Blockly Variablen (gelöst)

Geplant Angeheftet Gesperrt Verschoben Blockly
20 Beiträge 4 Kommentatoren 828 Aufrufe 3 Beobachtet
  • Ä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.
  • CodierknechtC Codierknecht

    @philipp-pionier
    In Deinem Eingangspost wolltest Du wohl sowas hier:
    05092d8b-47a2-47c5-bf39-eec971f9b7d1-image.png
    Auch wenn das relativ sinnbefreit ist (außer natürlich um etwas auszutesten)

    Philipp PionierP Offline
    Philipp PionierP Offline
    Philipp Pionier
    schrieb am zuletzt editiert von
    #11

    @codierknecht

    Wenn ich die Variable Zahl am Skript Anfang auf "10" setzte und diese 10 auslesen, addieren, usw möchte, bekomme ich jedes mal einen Fehler bzw es funktioniert nicht.

    CodierknechtC HomoranH 2 Antworten Letzte Antwort
    0
    • Philipp PionierP Philipp Pionier

      @homoran

      ich habe schon ein paar Skripte mit Blockly erstellt.

      Manchmal tritt der Fall ein, dass ich nur für ein Skript extra ObjektID´s anlagen muss (Hilfsmerker).
      Jetzt wäre mein Gedankte gewesen, das ich hierfür die Variablen nutzen könnte. (wie ich auch schon ein paar mal in anderen Skripts gesehen habe). Um keine ObjektID´s anlegen zu müssen.

      CodierknechtC Offline
      CodierknechtC Offline
      Codierknecht
      Developer Most Active
      schrieb am zuletzt editiert von
      #12

      @philipp-pionier
      Nur als "Hilfsmerker" muss man keine DP anlegen.
      Zumindest nicht, wenn man die Werte ausschließlich im Script benutzt.
      Das macht man mit Variablen, so wie in Deinem Eingangspost.

      Man greift auf diese Variablen aber nicht über "Wert von XXX" zu.
      Die kann man direkt weiterverwenden.
      Objekte haben mehr als eine Eigenschaft (Wert, Name, Zeitstempel usw.) - da muss man schon sagen, was man haben will.

      Hier mal ein Beispiel von heute früh:
      8c576b78-306f-4abf-b74b-f9eece1e9db3-image.png
      Hier werden Variablen gesetzt und deren Werte geprüft.
      An anderen Stellen werden sehr wohl die Werte von Objekten gelesen und auch Objekte gesteuert.

      "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

      Proxmox 9.1.1 LXC|8 GB|Core i7-6700
      HmIP|ZigBee|Tasmota|Unifi
      Zabbix Certified Specialist
      Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

      1 Antwort Letzte Antwort
      0
      • Philipp PionierP Philipp Pionier

        @codierknecht

        Wenn ich die Variable Zahl am Skript Anfang auf "10" setzte und diese 10 auslesen, addieren, usw möchte, bekomme ich jedes mal einen Fehler bzw es funktioniert nicht.

        CodierknechtC Offline
        CodierknechtC Offline
        Codierknecht
        Developer Most Active
        schrieb am zuletzt editiert von
        #13

        @philipp-pionier
        Weil Du das mit "Wert von" machst.

        Mit Variablen ist das nicht nötig (oder besser: Falsch!)

        259925ca-3c05-49e7-a915-f86edd652e7c-image.png
        Die werden direkt verwendet!

        "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

        Proxmox 9.1.1 LXC|8 GB|Core i7-6700
        HmIP|ZigBee|Tasmota|Unifi
        Zabbix Certified Specialist
        Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

        Philipp PionierP 1 Antwort Letzte Antwort
        0
        • Philipp PionierP Philipp Pionier

          @codierknecht

          Wenn ich die Variable Zahl am Skript Anfang auf "10" setzte und diese 10 auslesen, addieren, usw möchte, bekomme ich jedes mal einen Fehler bzw es funktioniert nicht.

          HomoranH Nicht stören
          HomoranH Nicht stören
          Homoran
          Global Moderator Administrators
          schrieb am zuletzt editiert von
          #14

          @philipp-pionier sagte in Problem mit internen Blockly Variablen:

          bekomme ich jedes mal einen Fehler

          und welchen?
          üblicherweise sagt dir der Fehler was du falsch machst.

          Natürlich kann man Wert von nur bei IDs verwenden, das hat dir @Codierknecht schon geschrieben.
          ich vermute zwar auch, dass das der Grund sein wird, aber

          @philipp-pionier sagte in Problem mit internen Blockly Variablen:

          es funktioniert nicht.

          ist keine Fehlerbeschreibung!

          bitte mehr Infos, dann ist das hier flugs erledigt!

          kein Support per PN! - Fragen im Forum stellen -
          Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
          Das Forum freut sich über eine Spende. Benutzt dazu den Spendenbutton oben rechts. Danke!
          der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

          Philipp PionierP 1 Antwort Letzte Antwort
          0
          • CodierknechtC Codierknecht

            @philipp-pionier
            Weil Du das mit "Wert von" machst.

            Mit Variablen ist das nicht nötig (oder besser: Falsch!)

            259925ca-3c05-49e7-a915-f86edd652e7c-image.png
            Die werden direkt verwendet!

            Philipp PionierP Offline
            Philipp PionierP Offline
            Philipp Pionier
            schrieb am zuletzt editiert von
            #15

            @codierknecht

            danke danke

            habs jetzt gecheckt.

            Wert von .. braucht man nicht, außerdem darf man nur "setze" und "erhöhe" verwenden und nicht schreibe usw.

            nochmal vielen Dank

            CodierknechtC 1 Antwort Letzte Antwort
            0
            • Philipp PionierP Philipp Pionier

              @codierknecht

              danke danke

              habs jetzt gecheckt.

              Wert von .. braucht man nicht, außerdem darf man nur "setze" und "erhöhe" verwenden und nicht schreibe usw.

              nochmal vielen Dank

              CodierknechtC Offline
              CodierknechtC Offline
              Codierknecht
              Developer Most Active
              schrieb am zuletzt editiert von
              #16

              @philipp-pionier sagte in Problem mit internen Blockly Variablen:

              Wert von .. braucht man nicht, außerdem darf man nur "setze" und "erhöhe" verwenden und nicht schreibe usw.

              Dafür gibt's diese praktische Farbunterscheidung ;-)

              "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

              Proxmox 9.1.1 LXC|8 GB|Core i7-6700
              HmIP|ZigBee|Tasmota|Unifi
              Zabbix Certified Specialist
              Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

              1 Antwort Letzte Antwort
              0
              • HomoranH Homoran

                @philipp-pionier sagte in Problem mit internen Blockly Variablen:

                bekomme ich jedes mal einen Fehler

                und welchen?
                üblicherweise sagt dir der Fehler was du falsch machst.

                Natürlich kann man Wert von nur bei IDs verwenden, das hat dir @Codierknecht schon geschrieben.
                ich vermute zwar auch, dass das der Grund sein wird, aber

                @philipp-pionier sagte in Problem mit internen Blockly Variablen:

                es funktioniert nicht.

                ist keine Fehlerbeschreibung!

                bitte mehr Infos, dann ist das hier flugs erledigt!

                Philipp PionierP Offline
                Philipp PionierP Offline
                Philipp Pionier
                schrieb am zuletzt editiert von
                #17

                @homoran

                hier ist ein Ausschnitt aus einem Skript von mir.

                Skript 1.PNG Skript 2.PNG

                hier wollt ich eigentlich bei der Variable Temperatur Untergrenze bzw Obergrenze faul sein, und keine Objektid anlagen.

                CodierknechtC HomoranH 2 Antworten Letzte Antwort
                0
                • Philipp PionierP Philipp Pionier

                  @homoran

                  hier ist ein Ausschnitt aus einem Skript von mir.

                  Skript 1.PNG Skript 2.PNG

                  hier wollt ich eigentlich bei der Variable Temperatur Untergrenze bzw Obergrenze faul sein, und keine Objektid anlagen.

                  CodierknechtC Offline
                  CodierknechtC Offline
                  Codierknecht
                  Developer Most Active
                  schrieb am zuletzt editiert von
                  #18

                  @philipp-pionier
                  Du mischt da fleißig Objekte und Einzelwerte.

                  Variablen können prinzipiell erstmal alles beinhalten - sowohl ganze Objekte als auch einzelne Werte.
                  Für mich ein großer Nachteil von JS, dass es nicht typsicher ist.
                  Du musst Dir an den entsprechenden Stellen genau überlegen, was in die Variable rein soll:
                  Der Wert des Objektes (z.B. eine Temperatur) oder der Name, um damit später das Objekt ansprechen zu können.
                  Zweiteres macht für mich nicht viel Sinn - das geht genau so einfach mit dem passenden Block ("steuere" oder "aktualisiere").
                  Wenn Du mit Ersterem auch noch rechnen willst, musst Du die Variable wie folgt besetzen:
                  19cb6018-98e4-4754-a21e-e4a8745bbbd6-image.png

                  An Trigger werden grundsätzlich nur Objekte gebunden - keine Variablen!
                  Also nicht
                  4377daba-7434-46e0-b9e9-ff2475bd570c-image.png sondern 266f03b4-e714-4634-bd5e-d736cf8229b4-image.png
                  Und zum Ändern existierender Datenpunkte nimmt man (zumindest ich) das hier:
                  6f784811-af36-41c2-875a-aa01d1c3cb28-image.png

                  Ich sehe da noch was von "Grafana" und vermute mal, dass Du dafür DP angelegt hast, über die ein History-Adapter läuft.
                  Das müssen logischerweise Datenpunkte sein - sonst funktioniert das nicht.

                  "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

                  Proxmox 9.1.1 LXC|8 GB|Core i7-6700
                  HmIP|ZigBee|Tasmota|Unifi
                  Zabbix Certified Specialist
                  Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

                  Philipp PionierP 1 Antwort Letzte Antwort
                  0
                  • Philipp PionierP Philipp Pionier

                    @homoran

                    hier ist ein Ausschnitt aus einem Skript von mir.

                    Skript 1.PNG Skript 2.PNG

                    hier wollt ich eigentlich bei der Variable Temperatur Untergrenze bzw Obergrenze faul sein, und keine Objektid anlagen.

                    HomoranH Nicht stören
                    HomoranH Nicht stören
                    Homoran
                    Global Moderator Administrators
                    schrieb am zuletzt editiert von
                    #19

                    @philipp-pionier bei Arbeiten über einen Datenpunkt kannst du Ruckzuck in die Asynchron-Falle laufen.
                    Wenn du den Wert wieder brauchst kann es sein, dass er noch nicht fertig geschrieben ist.
                    Deswegen sind Merker, die nur innerhalb eines Skripts benötigt werden, immer als Variablen anzulegen.

                    was du mir jetzt hier sagen willst

                    @philipp-pionier sagte in Problem mit internen Blockly Variablen (gelöst):

                    hier wollt ich eigentlich bei der Variable Temperatur Untergrenze bzw Obergrenze faul sein

                    erschließt sich mir nicht

                    kein Support per PN! - Fragen im Forum stellen -
                    Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
                    Das Forum freut sich über eine Spende. Benutzt dazu den Spendenbutton oben rechts. Danke!
                    der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                    1 Antwort Letzte Antwort
                    0
                    • CodierknechtC Codierknecht

                      @philipp-pionier
                      Du mischt da fleißig Objekte und Einzelwerte.

                      Variablen können prinzipiell erstmal alles beinhalten - sowohl ganze Objekte als auch einzelne Werte.
                      Für mich ein großer Nachteil von JS, dass es nicht typsicher ist.
                      Du musst Dir an den entsprechenden Stellen genau überlegen, was in die Variable rein soll:
                      Der Wert des Objektes (z.B. eine Temperatur) oder der Name, um damit später das Objekt ansprechen zu können.
                      Zweiteres macht für mich nicht viel Sinn - das geht genau so einfach mit dem passenden Block ("steuere" oder "aktualisiere").
                      Wenn Du mit Ersterem auch noch rechnen willst, musst Du die Variable wie folgt besetzen:
                      19cb6018-98e4-4754-a21e-e4a8745bbbd6-image.png

                      An Trigger werden grundsätzlich nur Objekte gebunden - keine Variablen!
                      Also nicht
                      4377daba-7434-46e0-b9e9-ff2475bd570c-image.png sondern 266f03b4-e714-4634-bd5e-d736cf8229b4-image.png
                      Und zum Ändern existierender Datenpunkte nimmt man (zumindest ich) das hier:
                      6f784811-af36-41c2-875a-aa01d1c3cb28-image.png

                      Ich sehe da noch was von "Grafana" und vermute mal, dass Du dafür DP angelegt hast, über die ein History-Adapter läuft.
                      Das müssen logischerweise Datenpunkte sein - sonst funktioniert das nicht.

                      Philipp PionierP Offline
                      Philipp PionierP Offline
                      Philipp Pionier
                      schrieb am zuletzt editiert von
                      #20

                      @codierknecht

                      also es funktioniert :D
                      Wichtig war für mich, dass das Skript für jeden Raum benutzt werden kann.
                      Deshalb versuchte ich das Skript so aufzubauen, dass ich nur oben meine ObjektIDs an den Variablen zuweisen muss und nicht im Skript meine ObjektIDs finden muss.

                      ich hätte oben gleich der Variable den Wert zuweisen können und nicht den Namen, dann hätte ich unten nicht jedes mal "wert von" benutzen müssen. --Verstehe--

                      Bin froh das es mit dem Trigger so auch funktioniert, wie aus oben genannten Gründen.

                      Und ja für Grafana habe ich extra DP angelegt, hier wandle ich ein Bool in eine Zahl um (false = 0 true = 10).
                      Grafana hat bei mir mit den Boolen Werten nicht funktioniert.

                      try and error

                      1 Antwort Letzte Antwort
                      0

                      Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.

                      Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.

                      Mit deinem Input könnte dieser Beitrag noch besser werden 💗

                      Registrieren Anmelden
                      Antworten
                      • In einem neuen Thema antworten
                      Anmelden zum Antworten
                      • Älteste zuerst
                      • Neuste zuerst
                      • Meiste Stimmen


                      Support us

                      ioBroker
                      Community Adapters
                      Donate

                      513

                      Online

                      32.8k

                      Benutzer

                      82.8k

                      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