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. JSON Wert mit Blockly schreiben

NEWS

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.3k

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

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    14
    1
    2.6k

JSON Wert mit Blockly schreiben

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
41 Beiträge 10 Kommentatoren 3.8k Aufrufe 7 Watching
  • Ä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.
  • paul53P paul53

    @jr28

    Bild_2022-11-17_145209484.png

    J Offline
    J Offline
    jr28
    schrieb am zuletzt editiert von
    #27

    @paul53

    da ich mir sicher sein wollte alles richtig zu machen habe ich folgendes gemacht:

    fab2bff5-0fc8-4d21-95e5-026acefb6b4b-image.png

    Wieso schlägt der Vergleich fehl?
    Ich will absolut sicher sein bevor ich in den Tiefen meines Tesla was schreibe.

    paul53P 1 Antwort Letzte Antwort
    0
    • L Lucky_ESA

      @jr28 sagte in JSON Wert mit Blockly schreiben:

      @paul53

      das heißt, dass ich das json immer erst komplett zusammenbauen muss, um es dann als Text in das Objekt zu schreiben?

      Das Blockly ist für dich gedacht.

      @paul53
      Wie man die Function und die Variablen benennt ist jedem selber überlassen. Jeder hat sein eigenes System wie man was wie schreibt. Ein return dient bei großen Blocklys zur besseren Übersicht. Aber auch das ist jedem selber überlassen.

      Gruß//Lucky

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

      @lucky_esa sagte in JSON Wert mit Blockly schreiben:

      Wie man die Function und die Variablen benennt ist jedem selber überlassen

      Klar, aber Code wird zum allergrößten Teil gelesen. Alte Weisheit: "Jeder Code muss irgendwann gewartet werden".
      Dann sitzt man davor und denkt sich "welcher Horst hat das denn verbrochen?" ... um dann nach mehr oder langem Sinnieren festzustellen ... "Upps, ist ja mein Code" :grin:

      Choose descriptive and unambiguous names
      "Clean Code" (Robert C. Martin)

      "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
      • mickymM Offline
        mickymM Offline
        mickym
        Most Active
        schrieb am zuletzt editiert von mickym
        #29

        Blockly, Objekte und JSON einfach nur grauslig. :grimacing:

        Verstehe nicht warum man Eigenschaften von Objekten lesen kann

        fc9e3c08-4664-4d1e-9cd4-54f2d64ce150-image.png

        JSONs in Objekte und umgekehrt wandeln kann.

        b92c7205-5966-49d5-985d-627bf6587d03-image.png

        aber man nicht in der Lage ist Attribute in einem Objekt zu beschreiben. Einfach schlimm. ;)

        Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

        1 Antwort Letzte Antwort
        0
        • J jr28

          @paul53

          da ich mir sicher sein wollte alles richtig zu machen habe ich folgendes gemacht:

          fab2bff5-0fc8-4d21-95e5-026acefb6b4b-image.png

          Wieso schlägt der Vergleich fehl?
          Ich will absolut sicher sein bevor ich in den Tiefen meines Tesla was schreibe.

          paul53P Offline
          paul53P Offline
          paul53
          schrieb am zuletzt editiert von paul53
          #30

          @jr28 sagte: Wieso schlägt der Vergleich fehl?

          So ein String-Vergleich ist problematisch, da schon ein Leerzeichen mehr oder weniger oder ein unsichtbares Sonderzeichen zu einem negativen Ergebnis führen. Dabei spielen Leerzeichen im JSON keine Rolle.
          Deshalb mache mal - nur für den Vergleich - eine doppelte Konvertierung JSON --> Objekt --> JSON.

          Bild_2022-11-17_225450634.png

          Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
          Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

          1 Antwort Letzte Antwort
          0
          • K Offline
            K Offline
            kalle-r
            schrieb am zuletzt editiert von
            #31

            hmmm.... bei mir klappt das irgendwie nicht:

            hab einen Datenpunkt "test" vom Typ JSON

            [
              {
                "Art": "A1",
                "Tag": "A2"
              },
              {
                "Art": "B1",
                "Tag": "B2"
              },
              {
                "Art": "C1",
                "Tag": "C2"
              }
            ]
            

            Blockly von oben:

            1.jpg

            Result:

            2.jpg

            hat jemand eine Idee wo das hängt?

            DJMarc75D paul53P 2 Antworten Letzte Antwort
            0
            • K kalle-r

              hmmm.... bei mir klappt das irgendwie nicht:

              hab einen Datenpunkt "test" vom Typ JSON

              [
                {
                  "Art": "A1",
                  "Tag": "A2"
                },
                {
                  "Art": "B1",
                  "Tag": "B2"
                },
                {
                  "Art": "C1",
                  "Tag": "C2"
                }
              ]
              

              Blockly von oben:

              1.jpg

              Result:

              2.jpg

              hat jemand eine Idee wo das hängt?

              DJMarc75D Offline
              DJMarc75D Offline
              DJMarc75
              schrieb am zuletzt editiert von
              #32

              @kalle-r Warum sollte das auch funktionieren ?! Wo bitte gibt es in Deinem Json das Attribute "1.Tag" ?

              Lehrling seit 1975 !!!
              Beitrag geholfen ? dann gerne ein upvote rechts unten im Beitrag klicken ;)
              https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge

              K 1 Antwort Letzte Antwort
              0
              • K kalle-r

                hmmm.... bei mir klappt das irgendwie nicht:

                hab einen Datenpunkt "test" vom Typ JSON

                [
                  {
                    "Art": "A1",
                    "Tag": "A2"
                  },
                  {
                    "Art": "B1",
                    "Tag": "B2"
                  },
                  {
                    "Art": "C1",
                    "Tag": "C2"
                  }
                ]
                

                Blockly von oben:

                1.jpg

                Result:

                2.jpg

                hat jemand eine Idee wo das hängt?

                paul53P Offline
                paul53P Offline
                paul53
                schrieb am zuletzt editiert von
                #33

                @kalle-r sagte: klappt das irgendwie nicht

                Wie soll man das beurteilen, wenn der Inhalt der JS-Funktion verschwiegen wird?

                Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                K 1 Antwort Letzte Antwort
                0
                • DJMarc75D DJMarc75

                  @kalle-r Warum sollte das auch funktionieren ?! Wo bitte gibt es in Deinem Json das Attribute "1.Tag" ?

                  K Offline
                  K Offline
                  kalle-r
                  schrieb am zuletzt editiert von
                  #34

                  @djmarc75
                  sorry, bin nur so ein halbwissender :sunglasses:
                  also nach meinem bisherigen Ermittlungen kann ich mit
                  0.xxx
                  1.xxx
                  2.xxx
                  auf die jeweiligen Einträge zugreifen.
                  0.Tag liefert A2
                  1.Tag liefert B2
                  2.Tag liefert C2
                  1.Art liefert entsprechend B1
                  das funktioniert so weit.
                  Ich möchte jetzt z.B. aus B2 einen anderen Text machen und habe gehofft daß das mit dem Skript
                  von weiter oben klappt....

                  1 Antwort Letzte Antwort
                  0
                  • paul53P paul53

                    @kalle-r sagte: klappt das irgendwie nicht

                    Wie soll man das beurteilen, wenn der Inhalt der JS-Funktion verschwiegen wird?

                    K Offline
                    K Offline
                    kalle-r
                    schrieb am zuletzt editiert von
                    #35

                    @paul53
                    ja Du hast Recht, hier der Inhalt:

                    3.jpg

                    paul53P 1 Antwort Letzte Antwort
                    0
                    • K kalle-r

                      @paul53
                      ja Du hast Recht, hier der Inhalt:

                      3.jpg

                      paul53P Offline
                      paul53P Offline
                      paul53
                      schrieb am zuletzt editiert von paul53
                      #36

                      @kalle-r sagte: hier der Inhalt

                      Versuche es mal mit dieser JS-Funktion (ohne Ergebnis, denn ein Array wird ohnehin per Referenz übergeben):

                      att = att.split('.');
                      arr[att[0]][att[1]] = value;
                      

                      Bild_2022-12-08_180119672.png

                      Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                      Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                      K 1 Antwort Letzte Antwort
                      0
                      • paul53P paul53

                        @kalle-r sagte: hier der Inhalt

                        Versuche es mal mit dieser JS-Funktion (ohne Ergebnis, denn ein Array wird ohnehin per Referenz übergeben):

                        att = att.split('.');
                        arr[att[0]][att[1]] = value;
                        

                        Bild_2022-12-08_180119672.png

                        K Offline
                        K Offline
                        kalle-r
                        schrieb am zuletzt editiert von
                        #37

                        @paul53
                        das schaut gut aus :+1:
                        kannst Du mir erklären warum das in Deinem Beispiel weiter oben mit dem original-Skript funktioniert hat
                        und in meinem Beispiel nicht?
                        ich will ja schliesslich was dazu lernen ;-)

                        paul53P 1 Antwort Letzte Antwort
                        0
                        • K kalle-r

                          @paul53
                          das schaut gut aus :+1:
                          kannst Du mir erklären warum das in Deinem Beispiel weiter oben mit dem original-Skript funktioniert hat
                          und in meinem Beispiel nicht?
                          ich will ja schliesslich was dazu lernen ;-)

                          paul53P Offline
                          paul53P Offline
                          paul53
                          schrieb am zuletzt editiert von paul53
                          #38

                          @kalle-r sagte: warum das in Deinem Beispiel weiter oben mit dem original-Skript funktioniert hat

                          Im Original wird das Attribut eines Objektes geändert und nicht das Attribut eines Objektes in einem Array von Objekten.

                          Anmerkung: Den Zugriff auf ein Array-Element per Punkt-Notation kennt Javascript nicht. Das kann nur die speziell für Blockly entwickelte Funktion getAttr().

                          Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                          Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                          K 1 Antwort Letzte Antwort
                          0
                          • paul53P paul53

                            @kalle-r sagte: warum das in Deinem Beispiel weiter oben mit dem original-Skript funktioniert hat

                            Im Original wird das Attribut eines Objektes geändert und nicht das Attribut eines Objektes in einem Array von Objekten.

                            Anmerkung: Den Zugriff auf ein Array-Element per Punkt-Notation kennt Javascript nicht. Das kann nur die speziell für Blockly entwickelte Funktion getAttr().

                            K Offline
                            K Offline
                            kalle-r
                            schrieb am zuletzt editiert von
                            #39

                            @paul53
                            jetzt ist's klar, danke!
                            Noch eine doofe? Frage:
                            wie kommt man zu dem Funktionsaufruf den ich ohne debug verwenden kann?

                            Screenshot 2022-12-08 200316.jpg

                            ich hab nur den den ich nach links andocken muss

                            Screenshot 2022-12-08 200358.jpg

                            paul53P 1 Antwort Letzte Antwort
                            0
                            • K kalle-r

                              @paul53
                              jetzt ist's klar, danke!
                              Noch eine doofe? Frage:
                              wie kommt man zu dem Funktionsaufruf den ich ohne debug verwenden kann?

                              Screenshot 2022-12-08 200316.jpg

                              ich hab nur den den ich nach links andocken muss

                              Screenshot 2022-12-08 200358.jpg

                              paul53P Offline
                              paul53P Offline
                              paul53
                              schrieb am zuletzt editiert von paul53
                              #40

                              @kalle-r sagte: wie kommt man zu dem Funktionsaufruf den ich ohne debug verwenden kann?

                              Javascript-Funktion (ohne Ergebnis).

                              @paul53 sagte in JSON Wert mit Blockly schreiben:

                              (ohne Ergebnis, denn ein Array wird ohnehin per Referenz übergeben)

                              Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                              Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                              K 1 Antwort Letzte Antwort
                              0
                              • paul53P paul53

                                @kalle-r sagte: wie kommt man zu dem Funktionsaufruf den ich ohne debug verwenden kann?

                                Javascript-Funktion (ohne Ergebnis).

                                @paul53 sagte in JSON Wert mit Blockly schreiben:

                                (ohne Ergebnis, denn ein Array wird ohnehin per Referenz übergeben)

                                K Offline
                                K Offline
                                kalle-r
                                schrieb am zuletzt editiert von
                                #41

                                @paul53
                                und nochmal was gelernt, vielen Dank!!

                                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

                                602

                                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