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. Blockly
  5. [gelöst] JSON in Blockly zerlegen

NEWS

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.6k

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

[gelöst] JSON in Blockly zerlegen

Geplant Angeheftet Gesperrt Verschoben Blockly
22 Beiträge 5 Kommentatoren 5.7k Aufrufe 4 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.
  • RaspiUserR Offline
    RaspiUserR Offline
    RaspiUser
    schrieb am zuletzt editiert von RaspiUser
    #1

    50817aed-d812-4a3d-9039-9391b8e40a09-grafik.png

    ... beim parsen der o.g. JSON betrete ich Neuland und komme in Blockly nicht (richtig) weiter. Das hier klappt mit Ergebnis="v0.4.2" ...
    b9964c64-807a-46ae-87e2-d75b6a79f492-grafik.png

    Wenn ich z.B. "box.energyP" eingebe bekomme ich nix. Wenn ich "box" statt "wbec.version" eingebe bekomme ich als Ergebnis den komletten Inhalt des ARRAY's und kein einzelnes OBJEKT.
    Danke für's anschieben ...

    paul53P BananaJoeB 2 Antworten Letzte Antwort
    0
    • RaspiUserR RaspiUser

      50817aed-d812-4a3d-9039-9391b8e40a09-grafik.png

      ... beim parsen der o.g. JSON betrete ich Neuland und komme in Blockly nicht (richtig) weiter. Das hier klappt mit Ergebnis="v0.4.2" ...
      b9964c64-807a-46ae-87e2-d75b6a79f492-grafik.png

      Wenn ich z.B. "box.energyP" eingebe bekomme ich nix. Wenn ich "box" statt "wbec.version" eingebe bekomme ich als Ergebnis den komletten Inhalt des ARRAY's und kein einzelnes OBJEKT.
      Danke für's anschieben ...

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

      @raspiuser sagte: anschieben ...

      Bild_2022-01-10_111211.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

      RaspiUserR 1 Antwort Letzte Antwort
      1
      • RaspiUserR RaspiUser

        50817aed-d812-4a3d-9039-9391b8e40a09-grafik.png

        ... beim parsen der o.g. JSON betrete ich Neuland und komme in Blockly nicht (richtig) weiter. Das hier klappt mit Ergebnis="v0.4.2" ...
        b9964c64-807a-46ae-87e2-d75b6a79f492-grafik.png

        Wenn ich z.B. "box.energyP" eingebe bekomme ich nix. Wenn ich "box" statt "wbec.version" eingebe bekomme ich als Ergebnis den komletten Inhalt des ARRAY's und kein einzelnes OBJEKT.
        Danke für's anschieben ...

        BananaJoeB Offline
        BananaJoeB Offline
        BananaJoe
        Most Active
        schrieb am zuletzt editiert von BananaJoe
        #3

        @raspiuser Ich nutze dafür gerne den JSON-Pathfinder: https://jsonpathfinder.com/
        Da kopierts du den JSON rein, Beautify schadet nicht und dann rechts den Wert auswählen den man haben will.

        Oben rechts steht dann der richtige Pfad. Je nachdem wohin du das übernimmst musst du das erste x. weglassen.
        wbec.version funktionierte, da kannst du dir dann die Umsetzung abschauen.

        ioBroker@Ubuntu 24.04 LTS (VMware) für: >260 Geräte, 5 Switche, 7 AP, 9 IP-Cam, 1 NAS 42TB, 1 ESXi 15TB, 4 Proxmox 1TB, 1 Hyper-V 48TB, 14 x Echo, 5x FireTV, 5 x Tablett/Handy VIS || >=160 Tasmota/Shelly || >=95 ZigBee || PV 8.1kW / Akku 14kWh || 2x USV 750W kaskadiert || Creality CR-10 SE 3D-Drucker

        RaspiUserR 1 Antwort Letzte Antwort
        1
        • BananaJoeB BananaJoe

          @raspiuser Ich nutze dafür gerne den JSON-Pathfinder: https://jsonpathfinder.com/
          Da kopierts du den JSON rein, Beautify schadet nicht und dann rechts den Wert auswählen den man haben will.

          Oben rechts steht dann der richtige Pfad. Je nachdem wohin du das übernimmst musst du das erste x. weglassen.
          wbec.version funktionierte, da kannst du dir dann die Umsetzung abschauen.

          RaspiUserR Offline
          RaspiUserR Offline
          RaspiUser
          schrieb am zuletzt editiert von
          #4

          @bananajoe
          OK, grundsätzlich ein Weg der besser zu meinem ursprünglichen Ansatz paßt (die Adresse merke ich mir). Aber egal ob ich "x.box[0].energyP" oder "box[0].energyP" oder andere Kombinationen aus dem "box[0]. ..."-Pfad verwende bekomme ich kein Ergebnis (Mit z.B. "wbec.version" oder "wifi.mac" sehe ich das Passende).
          1c14acae-0ff0-4ad8-b859-da88f41769a5-grafik.png

          Muss wohl irgendwie mit den ARRAY und OBJEKT Klammern zusammenhängen ...
          Eine Erklärung !? :confused:

          HomoranH BananaJoeB 2 Antworten Letzte Antwort
          0
          • RaspiUserR RaspiUser

            @bananajoe
            OK, grundsätzlich ein Weg der besser zu meinem ursprünglichen Ansatz paßt (die Adresse merke ich mir). Aber egal ob ich "x.box[0].energyP" oder "box[0].energyP" oder andere Kombinationen aus dem "box[0]. ..."-Pfad verwende bekomme ich kein Ergebnis (Mit z.B. "wbec.version" oder "wifi.mac" sehe ich das Passende).
            1c14acae-0ff0-4ad8-b859-da88f41769a5-grafik.png

            Muss wohl irgendwie mit den ARRAY und OBJEKT Klammern zusammenhängen ...
            Eine Erklärung !? :confused:

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

            @raspiuser sagte in JSON in Blockly zerlegen:

            Muss wohl irgendwie mit den ARRAY und OBJEKT Klammern zusammenhängen ...

            richtig!
            box ist ein array, dass du nicht einfach über box.Item zerlegen kannst.
            Dazu musst du erst das Array "finden", und anschließend dieses zerlegen

            und die eckigen "Array-Klammern) funktionieren nicht beim zerlegen eines JSON

            kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

            Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

            der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

            1 Antwort Letzte Antwort
            0
            • paul53P paul53

              @raspiuser sagte: anschieben ...

              Bild_2022-01-10_111211.png

              RaspiUserR Offline
              RaspiUserR Offline
              RaspiUser
              schrieb am zuletzt editiert von
              #6

              @paul53

              OK, dass ist jetzt "Blockly für Fortgeschrittene", also nix für mich. :face_with_head_bandage:
              Das ich bei "url" meine Adresse eintrage (oder?) ist ja noch klar. Für "Object ID" muss ich (wahrscheinlich) einen Datenpunkt anlegen (aber wie?). Und den Rest der Elemente hab ich noch nie verwendet.
              Und wie binde ich jetzt "debug" ein damit ich sehe was passiert ?
              Wäre prima, wenn Du dazu noch ein paar Worte für einen Anfänger verlierst ... :face_with_rolling_eyes:
              Danke

              1 Antwort Letzte Antwort
              0
              • RaspiUserR RaspiUser

                @bananajoe
                OK, grundsätzlich ein Weg der besser zu meinem ursprünglichen Ansatz paßt (die Adresse merke ich mir). Aber egal ob ich "x.box[0].energyP" oder "box[0].energyP" oder andere Kombinationen aus dem "box[0]. ..."-Pfad verwende bekomme ich kein Ergebnis (Mit z.B. "wbec.version" oder "wifi.mac" sehe ich das Passende).
                1c14acae-0ff0-4ad8-b859-da88f41769a5-grafik.png

                Muss wohl irgendwie mit den ARRAY und OBJEKT Klammern zusammenhängen ...
                Eine Erklärung !? :confused:

                BananaJoeB Offline
                BananaJoeB Offline
                BananaJoe
                Most Active
                schrieb am zuletzt editiert von Homoran
                #7

                @raspiuser @Homoran öhm ja. Ich nutze den Path Finder in vielen anderen Programmen, da kann ich in der Regel das Element tatsächlich in [x] angeben. Bei Blockly musste ich das noch nicht nutzen

                Also, wie im Beispiel von @paul53 noch den in der Liste Block um zu an deren Ende du das Element auswählen kannst

                Ich meine nativ in JavaScript funktioniert auch die Schreibweise vom JSON Path Finder, müsste aber in meinen Skripten suchen ob ich da überhaupt den Fall mit mehreren Elementen gleichen Names hatte

                ioBroker@Ubuntu 24.04 LTS (VMware) für: >260 Geräte, 5 Switche, 7 AP, 9 IP-Cam, 1 NAS 42TB, 1 ESXi 15TB, 4 Proxmox 1TB, 1 Hyper-V 48TB, 14 x Echo, 5x FireTV, 5 x Tablett/Handy VIS || >=160 Tasmota/Shelly || >=95 ZigBee || PV 8.1kW / Akku 14kWh || 2x USV 750W kaskadiert || Creality CR-10 SE 3D-Drucker

                HomoranH 1 Antwort Letzte Antwort
                0
                • BananaJoeB BananaJoe

                  @raspiuser @Homoran öhm ja. Ich nutze den Path Finder in vielen anderen Programmen, da kann ich in der Regel das Element tatsächlich in [x] angeben. Bei Blockly musste ich das noch nicht nutzen

                  Also, wie im Beispiel von @paul53 noch den in der Liste Block um zu an deren Ende du das Element auswählen kannst

                  Ich meine nativ in JavaScript funktioniert auch die Schreibweise vom JSON Path Finder, müsste aber in meinen Skripten suchen ob ich da überhaupt den Fall mit mehreren Elementen gleichen Names hatte

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

                  @bananajoe hab dich mal editiert ;-)
                  ohne code-tags wurde das sinnenstellt

                  kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                  Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                  der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                  BananaJoeB 1 Antwort Letzte Antwort
                  0
                  • HomoranH Homoran

                    @bananajoe hab dich mal editiert ;-)
                    ohne code-tags wurde das sinnenstellt

                    BananaJoeB Offline
                    BananaJoeB Offline
                    BananaJoe
                    Most Active
                    schrieb am zuletzt editiert von
                    #9

                    @homoran und ich habe mich gerade gefragt wie das [x] rot wurde ...

                    ioBroker@Ubuntu 24.04 LTS (VMware) für: >260 Geräte, 5 Switche, 7 AP, 9 IP-Cam, 1 NAS 42TB, 1 ESXi 15TB, 4 Proxmox 1TB, 1 Hyper-V 48TB, 14 x Echo, 5x FireTV, 5 x Tablett/Handy VIS || >=160 Tasmota/Shelly || >=95 ZigBee || PV 8.1kW / Akku 14kWh || 2x USV 750W kaskadiert || Creality CR-10 SE 3D-Drucker

                    HomoranH 1 Antwort Letzte Antwort
                    0
                    • BananaJoeB BananaJoe

                      @homoran und ich habe mich gerade gefragt wie das [x] rot wurde ...

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

                      @bananajoe Das war vorher eine Checkbox. Und alles davor war weg

                      kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                      Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                      der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                      RaspiUserR 1 Antwort Letzte Antwort
                      0
                      • HomoranH Homoran

                        @bananajoe Das war vorher eine Checkbox. Und alles davor war weg

                        RaspiUserR Offline
                        RaspiUserR Offline
                        RaspiUser
                        schrieb am zuletzt editiert von
                        #11

                        @homoran @BananaJoe

                        ... ich hatte bereits erwähnt, dass ich "Blockly Neuland" betreten habe. Über einfache "IF ... THEN" Skripte (Sozusagen Kreisliga) bin ich (noch) nicht hinaus gekommen.
                        Wenn ihr Beide (Champions League) euch unterhaltet kann ich nur mit offenem Mund zuhören. Ich habe probiert der Diskussion zu folgen aber es gelingt mir nicht wirklich ... sorry. :cry:

                        Könnt ihr mal eine Antwort ("Kochrezept") zu meiner Frage so formulieren das ich eine Chance habe ... ?! :cold_sweat:

                        Und: Ich habe eine Doku zu blockly ...https://hobbyblogging.de/iobroker-blockly
                        Die werde ich mir mal "unter das Kopfkissen" legen. Habt ihr da noch eine weitere Empfehlung ?

                        HomoranH AsgothianA 2 Antworten Letzte Antwort
                        0
                        • RaspiUserR RaspiUser

                          @homoran @BananaJoe

                          ... ich hatte bereits erwähnt, dass ich "Blockly Neuland" betreten habe. Über einfache "IF ... THEN" Skripte (Sozusagen Kreisliga) bin ich (noch) nicht hinaus gekommen.
                          Wenn ihr Beide (Champions League) euch unterhaltet kann ich nur mit offenem Mund zuhören. Ich habe probiert der Diskussion zu folgen aber es gelingt mir nicht wirklich ... sorry. :cry:

                          Könnt ihr mal eine Antwort ("Kochrezept") zu meiner Frage so formulieren das ich eine Chance habe ... ?! :cold_sweat:

                          Und: Ich habe eine Doku zu blockly ...https://hobbyblogging.de/iobroker-blockly
                          Die werde ich mir mal "unter das Kopfkissen" legen. Habt ihr da noch eine weitere Empfehlung ?

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

                          @raspiuser sagte in JSON in Blockly zerlegen:

                          Wenn ihr Beide (Champions League)

                          Danke für die Blumen, aber ich bin auch nur ein einfacher User (vielleicht extended Mode)

                          Dann nimm mal deine Antwort (result) und kopiere sie bei http://jsonviewer.stack.hu/ rein und sieh dir mal die Struktur an.
                          Ich hätte das gerne für dich gemacht, aber ein Screenshot lässt sich nicht als Text kopieren :-(

                          @raspiuser sagte in JSON in Blockly zerlegen:

                          Könnt ihr mal eine Antwort ("Kochrezept") zu meiner Frage so formulieren das ich eine Chance habe ... ?!

                          Dein Ansatz war ja für ein reines json vollkommen richtig.
                          Nur ein Element (box) dieses JSON ist ein Array.

                          Dieses musst du anders behandeln.

                          kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                          Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                          der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                          1 Antwort Letzte Antwort
                          1
                          • RaspiUserR RaspiUser

                            @homoran @BananaJoe

                            ... ich hatte bereits erwähnt, dass ich "Blockly Neuland" betreten habe. Über einfache "IF ... THEN" Skripte (Sozusagen Kreisliga) bin ich (noch) nicht hinaus gekommen.
                            Wenn ihr Beide (Champions League) euch unterhaltet kann ich nur mit offenem Mund zuhören. Ich habe probiert der Diskussion zu folgen aber es gelingt mir nicht wirklich ... sorry. :cry:

                            Könnt ihr mal eine Antwort ("Kochrezept") zu meiner Frage so formulieren das ich eine Chance habe ... ?! :cold_sweat:

                            Und: Ich habe eine Doku zu blockly ...https://hobbyblogging.de/iobroker-blockly
                            Die werde ich mir mal "unter das Kopfkissen" legen. Habt ihr da noch eine weitere Empfehlung ?

                            AsgothianA Offline
                            AsgothianA Offline
                            Asgothian
                            Developer
                            schrieb am zuletzt editiert von
                            #13

                            @raspiuser sagte in JSON in Blockly zerlegen:

                            Könnt ihr mal eine Antwort ("Kochrezept") zu meiner Frage so formulieren das ich eine Chance habe ... ?! :cold_sweat:

                            Und: Ich habe eine Doku zu blockly ...https://hobbyblogging.de/iobroker-blockly
                            Die werde ich mir mal "unter das Kopfkissen" legen. Habt ihr da noch eine weitere Empfehlung ?

                            Das ist schon einmal ein guter Anfang. Allerdings fürchte ich das Du bei dem Verständnis weniger am Blockly und mehr an der vorhandenen Datenstruktur knabberst:

                            nehmen wir einfach mal das folgende Objekt:

                            { 
                               "wbec": {
                                 "inhalt1":"1",
                                "inhalt2":"2",
                               },
                               "data": [
                                 {
                                   "i1": 1,
                                   "i2":2,
                                 },
                                 {
                                   "i1": 55,
                                   "i2":56,
                                 } 
                               ],
                               "raw":"somerawtexthere:"
                            }
                            

                            Auf der obersten Ebene hat dieses Objekt 3 Properties, auf die du mit Namen zugreifen kannst. Das sind wbec, data und raw.

                            Die Property raw ist einfach - dahinter steht nur ein Text.
                            Die Property wbec ist etwas komplexer - dieses ist wieder ein JSON Objekt mit den Properties inhalt1 und inhalt2. Auf diese kannst du direkt (Attribut wbec.inhalt1 vom Objekt ...) zugreifen. Alternativ weist du den Wert von Attribut wbec vom Objekt ... einer Variable zu, und nutzt dann Attribut Inhalt1 vom Objekt... nochmal, wobei du die Variable als Objekt andockst.
                            Die Property data ist noch eine ebene komplexer. Dabei handelt es sich um ein array - ein Feld von verschiedenen Objekten. Erkennbar ist das an [ und ] die Anfang und Ende des Arrays bezeichnen. Auf den Inhalt des Arrays kannst du nur über einen Index zugreifen. Dieser beginnt mit 0, sprich wenn die Variable meinFeld ein Array ist, dann ist meinFeld[0] der erste Eintrag im Array, meinFeld[1] dann der 2. und so weiter. In dem oben stehenden Beispiel ist also unter der Property data ein Array mit 2 Einträgen eingetragen.
                            Problematisch ist das der Baustein Attribut ... vom Objekt ... nur auf reines JSON angewendet werden kann. Dementsprechend funktioniert Attribut wbec.box[0].energyP ... nicht. In so einem Fall musst du erst das Array extrahieren:
                            BoxArray = Attribut wbec.box vom Objekt...
                            um dann davon den entsprechenden Eintrag zu holen.

                            Jetzt wird es leider hässlich. Irgendjemand hat beschlossen dass

                            • Arrays in Blockly als Listen geführt werden
                            • Listen einträge von 1 bis n haben, nicht 0 bis n-1 wie Arrays in JS.

                            Dementsprechend bekommst Du also deine Objekt in dem du den Baustein `aus der Liste BoxArray nimm den 1. Eintrag' nutzt.

                            Der Baustein mit dem du letztendlich auf das Attribut energyP kommst lautet also:
                            Attribut EnergyP vom Objekt aus der Liste BoxArray nimm den 1. Eintrag

                            Ich habe leider aktuell keinen Zugriff auf Blockly, daher kann ich das nicht direkt als Blockly darstellen.

                            Ich hoffe es hat trotzdem geholfen.

                            A.

                            ioBroker auf RPi4 - Hardware soweit wie möglich via Zigbee.
                            "Shit don't work" ist keine Fehlermeldung, sondern ein Fluch.

                            RaspiUserR 1 Antwort Letzte Antwort
                            3
                            • AsgothianA Asgothian

                              @raspiuser sagte in JSON in Blockly zerlegen:

                              Könnt ihr mal eine Antwort ("Kochrezept") zu meiner Frage so formulieren das ich eine Chance habe ... ?! :cold_sweat:

                              Und: Ich habe eine Doku zu blockly ...https://hobbyblogging.de/iobroker-blockly
                              Die werde ich mir mal "unter das Kopfkissen" legen. Habt ihr da noch eine weitere Empfehlung ?

                              Das ist schon einmal ein guter Anfang. Allerdings fürchte ich das Du bei dem Verständnis weniger am Blockly und mehr an der vorhandenen Datenstruktur knabberst:

                              nehmen wir einfach mal das folgende Objekt:

                              { 
                                 "wbec": {
                                   "inhalt1":"1",
                                  "inhalt2":"2",
                                 },
                                 "data": [
                                   {
                                     "i1": 1,
                                     "i2":2,
                                   },
                                   {
                                     "i1": 55,
                                     "i2":56,
                                   } 
                                 ],
                                 "raw":"somerawtexthere:"
                              }
                              

                              Auf der obersten Ebene hat dieses Objekt 3 Properties, auf die du mit Namen zugreifen kannst. Das sind wbec, data und raw.

                              Die Property raw ist einfach - dahinter steht nur ein Text.
                              Die Property wbec ist etwas komplexer - dieses ist wieder ein JSON Objekt mit den Properties inhalt1 und inhalt2. Auf diese kannst du direkt (Attribut wbec.inhalt1 vom Objekt ...) zugreifen. Alternativ weist du den Wert von Attribut wbec vom Objekt ... einer Variable zu, und nutzt dann Attribut Inhalt1 vom Objekt... nochmal, wobei du die Variable als Objekt andockst.
                              Die Property data ist noch eine ebene komplexer. Dabei handelt es sich um ein array - ein Feld von verschiedenen Objekten. Erkennbar ist das an [ und ] die Anfang und Ende des Arrays bezeichnen. Auf den Inhalt des Arrays kannst du nur über einen Index zugreifen. Dieser beginnt mit 0, sprich wenn die Variable meinFeld ein Array ist, dann ist meinFeld[0] der erste Eintrag im Array, meinFeld[1] dann der 2. und so weiter. In dem oben stehenden Beispiel ist also unter der Property data ein Array mit 2 Einträgen eingetragen.
                              Problematisch ist das der Baustein Attribut ... vom Objekt ... nur auf reines JSON angewendet werden kann. Dementsprechend funktioniert Attribut wbec.box[0].energyP ... nicht. In so einem Fall musst du erst das Array extrahieren:
                              BoxArray = Attribut wbec.box vom Objekt...
                              um dann davon den entsprechenden Eintrag zu holen.

                              Jetzt wird es leider hässlich. Irgendjemand hat beschlossen dass

                              • Arrays in Blockly als Listen geführt werden
                              • Listen einträge von 1 bis n haben, nicht 0 bis n-1 wie Arrays in JS.

                              Dementsprechend bekommst Du also deine Objekt in dem du den Baustein `aus der Liste BoxArray nimm den 1. Eintrag' nutzt.

                              Der Baustein mit dem du letztendlich auf das Attribut energyP kommst lautet also:
                              Attribut EnergyP vom Objekt aus der Liste BoxArray nimm den 1. Eintrag

                              Ich habe leider aktuell keinen Zugriff auf Blockly, daher kann ich das nicht direkt als Blockly darstellen.

                              Ich hoffe es hat trotzdem geholfen.

                              A.

                              RaspiUserR Offline
                              RaspiUserR Offline
                              RaspiUser
                              schrieb am zuletzt editiert von
                              #14

                              @asgothian said in JSON in Blockly zerlegen:

                              Ich hoffe es hat trotzdem geholfen.

                              UND WIE !!!! :+1:

                              Dank deinen ausfürhrlichen Erläuterungen :clap: konnte ich es gut nachvollziehen (ob ich es verstanden und erneut anwenden kann wird sich noch zeigen). Und mit dem Blockly-Hinweisen von @paul53 (Danke!) sieht es jetzt so aus und funktioniert.

                              46695fac-cbd9-443a-92fc-caacfe7b9ac9-grafik.png

                              Danke auch an @BananaJoe und @Homoran

                              paul53P 1 Antwort Letzte Antwort
                              0
                              • RaspiUserR RaspiUser

                                @asgothian said in JSON in Blockly zerlegen:

                                Ich hoffe es hat trotzdem geholfen.

                                UND WIE !!!! :+1:

                                Dank deinen ausfürhrlichen Erläuterungen :clap: konnte ich es gut nachvollziehen (ob ich es verstanden und erneut anwenden kann wird sich noch zeigen). Und mit dem Blockly-Hinweisen von @paul53 (Danke!) sieht es jetzt so aus und funktioniert.

                                46695fac-cbd9-443a-92fc-caacfe7b9ac9-grafik.png

                                Danke auch an @BananaJoe und @Homoran

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

                                @raspiuser sagte: ob ich es verstanden

                                Anscheinend noch nicht so richtig: Die Variable boxarray enthält kein Array, sondern ein Objekt.

                                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

                                RaspiUserR 1 Antwort Letzte Antwort
                                0
                                • paul53P paul53

                                  @raspiuser sagte: ob ich es verstanden

                                  Anscheinend noch nicht so richtig: Die Variable boxarray enthält kein Array, sondern ein Objekt.

                                  RaspiUserR Offline
                                  RaspiUserR Offline
                                  RaspiUser
                                  schrieb am zuletzt editiert von
                                  #16

                                  @paul53 said in [gelöst] JSON in Blockly zerlegen:

                                  Die Variable boxarray enthält kein Array, sondern ein Objekt.

                                  OK, aber dieses Objekt enthält jetzt über "in der Liste..." weitere Objekte die ich mit "Attribut ... vom Objekt" auslesen kann, so richtig ?

                                  paul53P AsgothianA RaspiUserR 3 Antworten Letzte Antwort
                                  0
                                  • RaspiUserR RaspiUser

                                    @paul53 said in [gelöst] JSON in Blockly zerlegen:

                                    Die Variable boxarray enthält kein Array, sondern ein Objekt.

                                    OK, aber dieses Objekt enthält jetzt über "in der Liste..." weitere Objekte die ich mit "Attribut ... vom Objekt" auslesen kann, so richtig ?

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

                                    @raspiuser sagte: enthält jetzt über "in der Liste..." weitere Objekte

                                    Die Liste "box" enthält ein Objekt, weshalb ich die Variable mit box1 (1. Element der Liste) bezeichnet hatte.
                                    Ein Objekt enthält mehrere Attribute, auf die über ihren Bezeichner (z.B. "energyP") zugegriffen werden kann.

                                    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
                                    • RaspiUserR RaspiUser

                                      @paul53 said in [gelöst] JSON in Blockly zerlegen:

                                      Die Variable boxarray enthält kein Array, sondern ein Objekt.

                                      OK, aber dieses Objekt enthält jetzt über "in der Liste..." weitere Objekte die ich mit "Attribut ... vom Objekt" auslesen kann, so richtig ?

                                      AsgothianA Offline
                                      AsgothianA Offline
                                      Asgothian
                                      Developer
                                      schrieb am zuletzt editiert von
                                      #18

                                      @raspiuser sagte in [gelöst] JSON in Blockly zerlegen:

                                      @paul53 said in [gelöst] JSON in Blockly zerlegen:

                                      Die Variable boxarray enthält kein Array, sondern ein Objekt.

                                      OK, aber dieses Objekt enthält jetzt über "in der Liste..." weitere Objekte die ich mit "Attribut ... vom Objekt" auslesen kann, so richtig ?

                                      Prinzipiell, ja. Besser wäre aber die Konstruktion so:

                                      Screen Shot 2022-01-11 at 17.48.37 .png

                                      Sprich so wie @paul53 es geschrieben hat.

                                      Das verstehst du dann auch in einem Jahr noch.

                                      ioBroker auf RPi4 - Hardware soweit wie möglich via Zigbee.
                                      "Shit don't work" ist keine Fehlermeldung, sondern ein Fluch.

                                      RaspiUserR 1 Antwort Letzte Antwort
                                      0
                                      • RaspiUserR RaspiUser

                                        @paul53 said in [gelöst] JSON in Blockly zerlegen:

                                        Die Variable boxarray enthält kein Array, sondern ein Objekt.

                                        OK, aber dieses Objekt enthält jetzt über "in der Liste..." weitere Objekte die ich mit "Attribut ... vom Objekt" auslesen kann, so richtig ?

                                        RaspiUserR Offline
                                        RaspiUserR Offline
                                        RaspiUser
                                        schrieb am zuletzt editiert von
                                        #19

                                        @paul53

                                        OK, aber dieses Objekt enthält jetzt über "in der Liste..." weitere Objekte die ich mit "Attribut ... vom Objekt" auslesen kann, so richtig ?

                                        Das Array wird über "in der Liste..." in ein Objekt zerlegt und enthält die Attribute, die ich mit "Attribut ... vom Objekt" auslesen kann.
                                        So richtig formuliert ?

                                        paul53P 1 Antwort Letzte Antwort
                                        0
                                        • AsgothianA Asgothian

                                          @raspiuser sagte in [gelöst] JSON in Blockly zerlegen:

                                          @paul53 said in [gelöst] JSON in Blockly zerlegen:

                                          Die Variable boxarray enthält kein Array, sondern ein Objekt.

                                          OK, aber dieses Objekt enthält jetzt über "in der Liste..." weitere Objekte die ich mit "Attribut ... vom Objekt" auslesen kann, so richtig ?

                                          Prinzipiell, ja. Besser wäre aber die Konstruktion so:

                                          Screen Shot 2022-01-11 at 17.48.37 .png

                                          Sprich so wie @paul53 es geschrieben hat.

                                          Das verstehst du dann auch in einem Jahr noch.

                                          RaspiUserR Offline
                                          RaspiUserR Offline
                                          RaspiUser
                                          schrieb am zuletzt editiert von
                                          #20

                                          @asgothian said in [gelöst] JSON in Blockly zerlegen:

                                          Das verstehst du dann auch in einem Jahr noch.

                                          Schaun'mer mal ... aber wie immer ... es gibt verschiede Lösungswege

                                          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

                                          783

                                          Online

                                          32.5k

                                          Benutzer

                                          81.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