Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • 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

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Blockly
  5. JSON mit Blockly erstellen

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    16
    1
    1.9k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    917

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.2k

JSON mit Blockly erstellen

Scheduled Pinned Locked Moved Blockly
24 Posts 4 Posters 7.2k Views 3 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • paul53P paul53

    @jerzimeik sagte: Ich habe Datenobjekte für einen Wert Januar bis Dezember.

    Hättest Du in der Datenpunkt-ID eine führende 0 für Januar bis September verwendet, würde der Selektor schon richtig sortieren.

    Da man mit Blockly keine Objekte erzeugen kann, benötigt man dafür eine JS-Funktion mit Ergebnis. Inhalt der Funktion monat_anzahl(id):

    return {Monat: getObject(id).common.name.substring(0, 7), Anzahl: getState(id).val};
    

    Blockly_temp.JPG

    <xml xmlns="https://developers.google.com/blockly/xml">
     <variables>
       <variable id="Bo~tGR5:/kUi:%hJI@J|">id</variable>
       <variable id="ViRHFqM2[LYzECku2Kxn">Liste</variable>
     </variables>
     <block type="schedule" id="V-O[P~`9nRu|91{agd=q" x="138" y="212">
       <field name="SCHEDULE">*/20 * * * * *</field>
       <statement name="STATEMENT">
         <block type="variables_set" id="rum8(?e?6L~+z7cct^YY">
           <field name="VAR" id="ViRHFqM2[LYzECku2Kxn">Liste</field>
           <value name="VALUE">
             <block type="lists_create_with" id=",?eod49;2jOZb(),+BV?">
               <mutation items="0"></mutation>
             </block>
           </value>
           <next>
             <block type="controls_forEach" id="He@fMA`t532R5BD!+|]y">
               <field name="VAR" id="Bo~tGR5:/kUi:%hJI@J|">id</field>
               <value name="LIST">
                 <block type="selector" id="N.v[Iq2Fk7F$5e%S=_7Y">
                   <field name="TEXT">*.Anzahl(functions=rennrad_anzahl)</field>
                 </block>
               </value>
               <statement name="DO">
                 <block type="lists_setIndex" id="(Mh$*_Rdr_Y/c=nnS97/">
                   <mutation at="false"></mutation>
                   <field name="MODE">INSERT</field>
                   <field name="WHERE">LAST</field>
                   <value name="LIST">
                     <block type="variables_get" id="/+)oXd(`PqT~UCl@,3zH">
                       <field name="VAR" id="ViRHFqM2[LYzECku2Kxn">Liste</field>
                     </block>
                   </value>
                   <value name="TO">
                     <block type="procedures_callcustomreturn" id="#:t4wK:jUVIL4fEZ=fTV" inline="true">
                       <mutation name="monat_anzahl">
                         <arg name="id"></arg>
                       </mutation>
                       <value name="ARG0">
                         <block type="variables_get" id="DY,W+iip?A^(fL,7vA((">
                           <field name="VAR" id="Bo~tGR5:/kUi:%hJI@J|">id</field>
                         </block>
                       </value>
                     </block>
                   </value>
                 </block>
               </statement>
               <next>
                 <block type="update" id=")kVm,vM]qdBsyITfSZv]">
                   <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                   <field name="OID">Object ID</field>
                   <field name="WITH_DELAY">FALSE</field>
                   <value name="VALUE">
                     <block type="convert_object2json" id="lhe98_uP[tcPS1d`Or42">
                       <field name="PRETTIFY">FALSE</field>
                       <value name="VALUE">
                         <block type="variables_get" id="sA`Fp6(Vo%~EDa:SR/p)">
                           <field name="VAR" id="ViRHFqM2[LYzECku2Kxn">Liste</field>
                         </block>
                       </value>
                     </block>
                   </value>
                 </block>
               </next>
             </block>
           </next>
         </block>
       </statement>
     </block>
     <block type="procedures_defcustomreturn" id="@,34^k0|W;sA~juA.PPn" x="388" y="213">
       <mutation statements="false">
         <arg name="id" varid="Bo~tGR5:/kUi:%hJI@J|"></arg>
       </mutation>
       <field name="NAME">monat_anzahl</field>
       <field name="SCRIPT">cmV0dXJuIHtNb25hdDogZ2V0T2JqZWN0KGlkKS5jb21tb24ubmFtZS5zdWJzdHJpbmcoMCwgNyksIEFuemFobDogZ2V0U3RhdGUoaWQpLnZhbH07</field>
       <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
     </block>
    </xml>
    

    Der Datenpunkt ist für die JSON-Tabelle in Vis geeignet (Überschriften: Monat, Anzahl).

    J Offline
    J Offline
    jerzimeik
    wrote on last edited by
    #21

    @paul53 Ich hatte gehofft, dass der nachträglich zugefügte Objekt Name ausreicht, um das sauber sortieren zu können :-(

    So muss ich die Datenpunkte wohl noch mal neu anlegen.

    paul53P 1 Reply Last reply
    0
    • paul53P paul53

      @homoran sagte: heisst also dass das auch nur über eine js-Funktion geht?

      Ja.

      HomoranH Offline
      HomoranH Offline
      Homoran
      Global Moderator Administrators
      wrote on last edited by
      #22

      @paul53 DANKE!
      dann mache ich für heute damit Schluss und gehe das morgen an

      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 Reply Last reply
      0
      • J jerzimeik

        @paul53 Ich hatte gehofft, dass der nachträglich zugefügte Objekt Name ausreicht, um das sauber sortieren zu können :-(

        So muss ich die Datenpunkte wohl noch mal neu anlegen.

        paul53P Offline
        paul53P Offline
        paul53
        wrote on last edited by
        #23

        @jerzimeik sagte: Ich hatte gehofft, dass der nachträglich zugefügte Objekt Name ausreicht, um das sauber sortieren zu können

        Ja, da aber die Blockly-Sortierfunktion nur Zahlen und Strings sortieren kann, aber keine Objekte, benötigt man dafür auch wieder eine Javascript-Funktion.

        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

        J 1 Reply Last reply
        0
        • paul53P paul53

          @jerzimeik sagte: Ich hatte gehofft, dass der nachträglich zugefügte Objekt Name ausreicht, um das sauber sortieren zu können

          Ja, da aber die Blockly-Sortierfunktion nur Zahlen und Strings sortieren kann, aber keine Objekte, benötigt man dafür auch wieder eine Javascript-Funktion.

          J Offline
          J Offline
          jerzimeik
          wrote on last edited by
          #24

          @paul53
          Ich habe jetzt mal alle Datenpunkte über den "raw-Modus" umgeschrieben. Scheint auch alles zu funktionieren.

          Wie kann ich das ganze denn sonst "charmanter" in Javascript umsetzten, vor allem, wenn ich noch weitere Datenpunkte abfragen will und in json schreiben will?

          1 Reply Last reply
          0
          Reply
          • Reply as topic
          Log in to reply
          • Oldest to Newest
          • Newest to Oldest
          • Most Votes


          Support us

          ioBroker
          Community Adapters
          Donate

          408

          Online

          32.6k

          Users

          82.2k

          Topics

          1.3m

          Posts
          Community
          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
          ioBroker Community 2014-2025
          logo
          • Login

          • Don't have an account? Register

          • Login or register to search.
          • First post
            Last post
          0
          • Home
          • Recent
          • Tags
          • Unread 0
          • Categories
          • Unreplied
          • Popular
          • GitHub
          • Docu
          • Hilfe