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

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

NEWS

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

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.0k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    15
    1
    2.4k

JSON mit Blockly erstellen

Geplant Angeheftet Gesperrt Verschoben Blockly
24 Beiträge 4 Kommentatoren 6.8k Aufrufe 3 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

    @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
    schrieb am zuletzt editiert von
    #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 Antwort Letzte Antwort
    0
    • paul53P paul53

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

      Ja.

      HomoranH Nicht stören
      HomoranH Nicht stören
      Homoran
      Global Moderator Administrators
      schrieb am zuletzt editiert von
      #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 Antwort Letzte Antwort
      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
        schrieb am zuletzt editiert von
        #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 Antwort Letzte Antwort
        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
          schrieb am zuletzt editiert von
          #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 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

          698

          Online

          32.4k

          Benutzer

          81.4k

          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