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. Visualisierung
  4. SQL History - (Garagentor) in iobroker.vis tabellarisch darstellen

NEWS

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

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.3k

SQL History - (Garagentor) in iobroker.vis tabellarisch darstellen

Scheduled Pinned Locked Moved Unsolved Visualisierung
vis
25 Posts 5 Posters 4.5k Views 6 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.
  • I I-Punkt

    Jetzt verwirrst du mich wieder. :relaxed: Also doch ALLE Werte im VIS anzeigen und nicht nur die letzten X?
    Falls es doch in Richtung "nur X Elemente" (wobei X < 20 oder so) gehen sollte, es aber Datensätze aus einem beliebigen Zeitraum sein sollen, dann würde ich mir mal getHistory ansehen.
    Oder als User Querie zusammenbauen. Dann ab in ein JSON und mit dem JSON-Table-Widget anzeigen.
    Ansonsten kannst du auch hier vielleicht noch was finden.

    A Offline
    A Offline
    assid
    wrote on last edited by
    #21

    @I-Punkt

    OK, das wird jetzt länger dauern. Ich bekomme nicht einen einzigen Wert herraus, zudem auch nicht korrekt formatiert. Für "History" Skript Beispiele wäre ich dankbar.

    I 1 Reply Last reply
    0
    • A assid

      @I-Punkt

      OK, das wird jetzt länger dauern. Ich bekomme nicht einen einzigen Wert herraus, zudem auch nicht korrekt formatiert. Für "History" Skript Beispiele wäre ich dankbar.

      I Offline
      I Offline
      I-Punkt
      wrote on last edited by
      #22

      @assid
      Versuche mal folgenden Code:

      sendTo('sql.0', 'getHistory', {
          id: 'hm-rpc.0.OEQXXXXXXXXX.1.MOTION',
          options: {
              end:       new Date().getTime(),
              count:     5,
              aggregate: 'onchange'
          }
      }, function (result) {
          Jstring = "[";
          for (var i = 0; i < result.result.length; i++) {
              console.log(result.result[i].val + ' ' + new Date(result.result[i].ts).toISOString());
              Jstring=Jstring + "{\"Wert\":\""+result.result[i].val+"\",\"Zeit\":\""+formatDate(result.result[i].ts, "DD.MM.YYYY hh:mm")+"\"}";
              if (i < result.result.length-1) {
                  Jstring = Jstring +",";
              }
          }
          Jstring = Jstring + "]"
          Jstring=Jstring.replace(/false/g,'Garagentor geschlossen');
          Jstring=Jstring.replace(/true/g,'Garagentor offen');
          setState('javascript.0.Test.JSON-Objekt'/*JSON-Objekt*/,  Jstring);
      });
      

      Geht bestimmt schöner und hübscher, sollte aber erstmal funktionieren.
      Voraussetzung: zu überwachender Datenpunkt wird in SQL geloggt und Datenpunkt für den JSON wurde angelegt
      Sieht im VIS mit diesem Widget
      json2.jpg
      dann so aus:
      json.jpg

      ice987I 1 Reply Last reply
      1
      • I I-Punkt

        @assid
        Versuche mal folgenden Code:

        sendTo('sql.0', 'getHistory', {
            id: 'hm-rpc.0.OEQXXXXXXXXX.1.MOTION',
            options: {
                end:       new Date().getTime(),
                count:     5,
                aggregate: 'onchange'
            }
        }, function (result) {
            Jstring = "[";
            for (var i = 0; i < result.result.length; i++) {
                console.log(result.result[i].val + ' ' + new Date(result.result[i].ts).toISOString());
                Jstring=Jstring + "{\"Wert\":\""+result.result[i].val+"\",\"Zeit\":\""+formatDate(result.result[i].ts, "DD.MM.YYYY hh:mm")+"\"}";
                if (i < result.result.length-1) {
                    Jstring = Jstring +",";
                }
            }
            Jstring = Jstring + "]"
            Jstring=Jstring.replace(/false/g,'Garagentor geschlossen');
            Jstring=Jstring.replace(/true/g,'Garagentor offen');
            setState('javascript.0.Test.JSON-Objekt'/*JSON-Objekt*/,  Jstring);
        });
        

        Geht bestimmt schöner und hübscher, sollte aber erstmal funktionieren.
        Voraussetzung: zu überwachender Datenpunkt wird in SQL geloggt und Datenpunkt für den JSON wurde angelegt
        Sieht im VIS mit diesem Widget
        json2.jpg
        dann so aus:
        json.jpg

        ice987I Offline
        ice987I Offline
        ice987
        wrote on last edited by
        #23

        Hallo zusammen,

        Ich habe den code von @I-Punkt bei mir eingebaut und dieser funktioniert einwandfrei. Vielen Dank.
        Ich versuche nun seit längerem, die Ausgabe umzukehren, so dass der neueste Eintrag zuoberst und nicht zuunterst ausgegeben wird. Laut SQL ist „ORDER BY ts, ... ASC|DESC;“ dafür zuständig.
        Gibts unter dem Befehl „options: {„ evtl. Die Möglichkeit dies direkt einzupflegen, bzw. gibts eine Übersicht, welche Befehle in diesem Abschnitt erlaubt sind? (Unter https://github.com/ioBroker/ioBroker.sql ist nichts zu finden).

        @I-Punkt said in SQL History - (Garagentor) in iobroker.vis tabellarisch darstellen:

        @assid
        Versuche mal folgenden Code:

        sendTo('sql.0', 'getHistory', {
            id: 'hm-rpc.0.OEQXXXXXXXXX.1.MOTION',
            options: {
                end:       new Date().getTime(),
                count:     5,
                aggregate: 'onchange'
            }
        }, function (result) {
            Jstring = "[";
            for (var i = 0; i < result.result.length; i++) {
                console.log(result.result[i].val + ' ' + new Date(result.result[i].ts).toISOString());
                Jstring=Jstring + "{\"Wert\":\""+result.result[i].val+"\",\"Zeit\":\""+formatDate(result.result[i].ts, "DD.MM.YYYY hh:mm")+"\"}";
                if (i < result.result.length-1) {
                    Jstring = Jstring +",";
                }
            }
            Jstring = Jstring + "]"
            Jstring=Jstring.replace(/false/g,'Garagentor geschlossen');
            Jstring=Jstring.replace(/true/g,'Garagentor offen');
            setState('javascript.0.Test.JSON-Objekt'/*JSON-Objekt*/,  Jstring);
        });
        

        Geht bestimmt schöner und hübscher, sollte aber erstmal funktionieren.
        Voraussetzung: zu überwachender Datenpunkt wird in SQL geloggt und Datenpunkt für den JSON wurde angelegt
        Sieht im VIS mit diesem Widget
        json2.jpg
        dann so aus:
        json.jpg

        husqvarna-automower, meteoblue, wiserbyfeller, spritmonitor

        GlasfaserG I 2 Replies Last reply
        0
        • ice987I ice987

          Hallo zusammen,

          Ich habe den code von @I-Punkt bei mir eingebaut und dieser funktioniert einwandfrei. Vielen Dank.
          Ich versuche nun seit längerem, die Ausgabe umzukehren, so dass der neueste Eintrag zuoberst und nicht zuunterst ausgegeben wird. Laut SQL ist „ORDER BY ts, ... ASC|DESC;“ dafür zuständig.
          Gibts unter dem Befehl „options: {„ evtl. Die Möglichkeit dies direkt einzupflegen, bzw. gibts eine Übersicht, welche Befehle in diesem Abschnitt erlaubt sind? (Unter https://github.com/ioBroker/ioBroker.sql ist nichts zu finden).

          @I-Punkt said in SQL History - (Garagentor) in iobroker.vis tabellarisch darstellen:

          @assid
          Versuche mal folgenden Code:

          sendTo('sql.0', 'getHistory', {
              id: 'hm-rpc.0.OEQXXXXXXXXX.1.MOTION',
              options: {
                  end:       new Date().getTime(),
                  count:     5,
                  aggregate: 'onchange'
              }
          }, function (result) {
              Jstring = "[";
              for (var i = 0; i < result.result.length; i++) {
                  console.log(result.result[i].val + ' ' + new Date(result.result[i].ts).toISOString());
                  Jstring=Jstring + "{\"Wert\":\""+result.result[i].val+"\",\"Zeit\":\""+formatDate(result.result[i].ts, "DD.MM.YYYY hh:mm")+"\"}";
                  if (i < result.result.length-1) {
                      Jstring = Jstring +",";
                  }
              }
              Jstring = Jstring + "]"
              Jstring=Jstring.replace(/false/g,'Garagentor geschlossen');
              Jstring=Jstring.replace(/true/g,'Garagentor offen');
              setState('javascript.0.Test.JSON-Objekt'/*JSON-Objekt*/,  Jstring);
          });
          

          Geht bestimmt schöner und hübscher, sollte aber erstmal funktionieren.
          Voraussetzung: zu überwachender Datenpunkt wird in SQL geloggt und Datenpunkt für den JSON wurde angelegt
          Sieht im VIS mit diesem Widget
          json2.jpg
          dann so aus:
          json.jpg

          GlasfaserG Offline
          GlasfaserG Offline
          Glasfaser
          wrote on last edited by Glasfaser
          #24

          @ice987
          Kennst du den Adapter Log Parser , da hast du viel mehr Möglichkeiten !

          1.JPG
          .
          2.jpg

          Synology 918+ 16GB - ioBroker in Docker v9 , VISO auf Trekstor Primebook C13 13,3" , Hikvision Domkameras mit Surveillance Station .. CCU RaspberryMatic in Synology VM .. Zigbee CC2538+CC2592 .. Sonoff .. KNX .. Modbus ..

          1 Reply Last reply
          0
          • ice987I ice987

            Hallo zusammen,

            Ich habe den code von @I-Punkt bei mir eingebaut und dieser funktioniert einwandfrei. Vielen Dank.
            Ich versuche nun seit längerem, die Ausgabe umzukehren, so dass der neueste Eintrag zuoberst und nicht zuunterst ausgegeben wird. Laut SQL ist „ORDER BY ts, ... ASC|DESC;“ dafür zuständig.
            Gibts unter dem Befehl „options: {„ evtl. Die Möglichkeit dies direkt einzupflegen, bzw. gibts eine Übersicht, welche Befehle in diesem Abschnitt erlaubt sind? (Unter https://github.com/ioBroker/ioBroker.sql ist nichts zu finden).

            @I-Punkt said in SQL History - (Garagentor) in iobroker.vis tabellarisch darstellen:

            @assid
            Versuche mal folgenden Code:

            sendTo('sql.0', 'getHistory', {
                id: 'hm-rpc.0.OEQXXXXXXXXX.1.MOTION',
                options: {
                    end:       new Date().getTime(),
                    count:     5,
                    aggregate: 'onchange'
                }
            }, function (result) {
                Jstring = "[";
                for (var i = 0; i < result.result.length; i++) {
                    console.log(result.result[i].val + ' ' + new Date(result.result[i].ts).toISOString());
                    Jstring=Jstring + "{\"Wert\":\""+result.result[i].val+"\",\"Zeit\":\""+formatDate(result.result[i].ts, "DD.MM.YYYY hh:mm")+"\"}";
                    if (i < result.result.length-1) {
                        Jstring = Jstring +",";
                    }
                }
                Jstring = Jstring + "]"
                Jstring=Jstring.replace(/false/g,'Garagentor geschlossen');
                Jstring=Jstring.replace(/true/g,'Garagentor offen');
                setState('javascript.0.Test.JSON-Objekt'/*JSON-Objekt*/,  Jstring);
            });
            

            Geht bestimmt schöner und hübscher, sollte aber erstmal funktionieren.
            Voraussetzung: zu überwachender Datenpunkt wird in SQL geloggt und Datenpunkt für den JSON wurde angelegt
            Sieht im VIS mit diesem Widget
            json2.jpg
            dann so aus:
            json.jpg

            I Offline
            I Offline
            I-Punkt
            wrote on last edited by
            #25

            @ice987
            Im Widget gibt es diesen Schalter. Evtl. reicht der ja schon?
            7c61b676-4fef-4491-9e6d-777b3f6a2dcc-image.png

            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

            687

            Online

            32.6k

            Users

            82.3k

            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