Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. JSON Wert mit Blockly schreiben

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    JSON Wert mit Blockly schreiben

    This topic has been deleted. Only users with topic management privileges can see it.
    • K
      kalle-r last edited by

      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?

      DJMarc75 paul53 2 Replies Last reply Reply Quote 0
      • DJMarc75
        DJMarc75 @kalle-r last edited by

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

        K 1 Reply Last reply Reply Quote 0
        • paul53
          paul53 @kalle-r last edited by

          @kalle-r sagte: klappt das irgendwie nicht

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

          K 1 Reply Last reply Reply Quote 0
          • K
            kalle-r @DJMarc75 last edited by

            @djmarc75
            sorry, bin nur so ein halbwissender 😎
            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 Reply Last reply Reply Quote 0
            • K
              kalle-r @paul53 last edited by

              @paul53
              ja Du hast Recht, hier der Inhalt:

              3.jpg

              paul53 1 Reply Last reply Reply Quote 0
              • paul53
                paul53 @kalle-r last edited by 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 1 Reply Last reply Reply Quote 0
                • K
                  kalle-r @paul53 last edited by

                  @paul53
                  das schaut gut aus 👍
                  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 😉

                  paul53 1 Reply Last reply Reply Quote 0
                  • paul53
                    paul53 @kalle-r last edited by 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 1 Reply Last reply Reply Quote 0
                    • K
                      kalle-r @paul53 last edited by

                      @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

                      paul53 1 Reply Last reply Reply Quote 0
                      • paul53
                        paul53 @kalle-r last edited by 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 1 Reply Last reply Reply Quote 0
                        • K
                          kalle-r @paul53 last edited by

                          @paul53
                          und nochmal was gelernt, vielen Dank!!

                          1 Reply Last reply Reply Quote 0
                          • First post
                            Last post

                          Support us

                          ioBroker
                          Community Adapters
                          Donate

                          608
                          Online

                          31.9k
                          Users

                          80.1k
                          Topics

                          1.3m
                          Posts

                          10
                          41
                          2579
                          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