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. ioBroker Allgemein
  4. Flot-Editor: Tageshöchstwerte anzeigen lassen

NEWS

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

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.4k

Flot-Editor: Tageshöchstwerte anzeigen lassen

Scheduled Pinned Locked Moved ioBroker Allgemein
8 Posts 3 Posters 1.3k Views
  • 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.
  • SegwayS Offline
    SegwayS Offline
    Segway
    wrote on last edited by
    #1

    Hallo,

    benutze den Flot-Editor zum anzeigen von Kurven. Früher konnte ich bei FHEM (siehe Bild) mir in der Überschrift zB die Tagestiefst- und höchstwerte anzeigen lassen. Geht das mit dem Flot-editor auch ?

    1043_bildschirmfoto_2018-08-03_um_09.10.18.png

    Gruß Dirk
    Intel Proxmox Cluster (3x NUC) mit Debian & Proxmox / IoB als VM unter Debian / 60+ Adapter installiert

    1 Reply Last reply
    0
    • SegwayS Offline
      SegwayS Offline
      Segway
      wrote on last edited by
      #2

      Ich habe nun zwei andere Threads gefunden, wo per SQL-Abfrage der Min und Max-Wert ermittelt werden soll. Leider bekomme ich folgenden Fehler:

      sql.0	2018-08-04 20:33:12.901	error	Cannot insert INSERT INTO `iobroker`.datapoints (name, type) VALUES('javascript.0.Statistik_24h_Max_TempAussen', undefined);: Error: ER_BAD_FIELD_ERROR: Unknown column 'undefin
      

      Hier das Javascript dazu - jemand einen Hinweis:

      ! // –---------------------------------------------------------------------------
      ! // ----- Abfragen von Werten aus der Datenbank (SQL) ---------------------------
      ! // -----------------------------------------------------------------------------
      ! // ----- Datenpunkt der ausgelesen werden soll ---------------------------------
      ! var id = "hm-rpc.1.KEQ0054069.1.TEMPERATURE"/Temp_Feuchte_Aussen:1.TEMPERATURE/;
      ! // ----- Datenpunkte in die gespeichert werden soll ----------------------------
      ! var maxid = 'javascript.0.Statistik_24h_Max_TempAussen';
      ! var minid = 'javascript.0.Statistik_24h_Min_TempAussen';
      ! var dt = 24; // Zeitraum in Stunden
      ! dt = dt36001000; // Zeitraum umrechnen in ??
      ! // ----- Datenpunkte anlegen ---------------------------------------------------
      ! createState(maxid, " ");
      ! createState(minid, " ");
      ! log('1. ) Datenpunkte angelegt ');
      ! SQLAbfrage(id);
      ! //----- SQL-Abfrage durchführen
      ! function SQLAbfrage () {
      ! log('2. ) Datenpunkt => ' + id);
      ! log('2a.) Abfrage => SELECT * FROM iobroker.datapoints WHERE name = '' + id + ''');
      ! sendTo('sql.0', 'query', 'SELECT * FROM iobroker.datapoints WHERE name = '' + id + ''', GetResults);
      ! }
      ! //---------------------------------------
      ! function GetResults (dpoint) {
      ! log('3. ) Funktion -> GetResults aufrufen');
      ! var end_time = new Date().getTime();
      ! var start_time = new Date().getTime() - dt;
      ! log('3a.) Startzeit : ' + start_time);
      ! log('3b.) Endzeit : ' + end_time);
      ! log(' Datenpunkt: ' + dpoint.result);
      ! log('3c.) result : ' + JSON.stringify(dpoint.result) + ' -//- ' + start_time);
      ! log(' Datenpunkt: ' + dpoint.result[0].id + ' –-//--- ' + dpoint.result[0].name);
      ! sendTo('sql.0', 'query', 'SELECT Round(Min(val),1) As MinVal FROM iobroker.ts_number WHERE ts >= ' + start_time + ' AND id=' + dpoint.result[0].id + ' GROUP BY id',minimum);
      ! sendTo('sql.0', 'query', 'SELECT Round(Max(val),1) As MaxVal FROM iobroker.ts_number WHERE ts >= ' + start_time + ' AND id=' + dpoint.result[0].id + ' GROUP BY id',maximum);
      ! }
      ! //–--- Werte schreiben (maximum, minimum)
      ! //----- minimum
      ! function minimum(result) {
      ! log('min )Funktion -> ' + JSON.stringify(result.result));
      ! setState(minid, result.result[0].MinVal);
      ! }
      ! //–--- maximum
      ! function maximum(result) {
      ! log('max )Funktion -> ' + JSON.stringify(result.result));
      ! setState(maxid, result.result[0].MaxVal);
      ! log('–-- fertig -----------------------------------------');
      ! }
      ! //---------------------------------------
      ! // ----- Funktion jede Minute aufrufen
      ! schedule("*/1 * * * *", function(){SQLAbfrage(id);});

      Es geht hauptsächlich um diesen Thread https://forum.iobroker.net/viewtopic.php?f=21&t=5663

      Gruß Dirk
      Intel Proxmox Cluster (3x NUC) mit Debian & Proxmox / IoB als VM unter Debian / 60+ Adapter installiert

      1 Reply Last reply
      0
      • SegwayS Offline
        SegwayS Offline
        Segway
        wrote on last edited by
        #3

        Vielleicht bin ich ja schon einen Schritt weiter aber nun habe ich einen Fehler mit Duplicate entry:

        annot insert INSERT INTO `iobroker`.ts_number (id, ts, val, ack, _from, q) VALUES(1885, 1533458884463, 0, 1, 14, 0);: Error: ER_DUP_ENTRY: Duplicate entry '1885-1533458884463' f
        

        Gruß Dirk
        Intel Proxmox Cluster (3x NUC) mit Debian & Proxmox / IoB als VM unter Debian / 60+ Adapter installiert

        1 Reply Last reply
        0
        • SegwayS Offline
          SegwayS Offline
          Segway
          wrote on last edited by
          #4

          Habe nun nach langem hin und her die Lösung gefunden für mein Script warum das nicht läuft.

          Habe https://forum.iobroker.net/viewtopic.php?t=5386 den entscheidenden Hinweis gelesen.

          Schon sehr merkwürdig das man solch wichtige Informationen nicht irgendwo platziert oder in der Hilfe vom Adapter !!! Ich hatte das Script die ganze Zeit im global drin und als ich es daraus genommen hatte kamen auch Meldungen im Log. Schön - hat mich ja nur 4 Tage gekostet.

          Nichts für ungut aber sowas ist schon ärgerlich…...nun bastel ich dann mal weiter.

          Gruß Dirk
          Intel Proxmox Cluster (3x NUC) mit Debian & Proxmox / IoB als VM unter Debian / 60+ Adapter installiert

          1 Reply Last reply
          0
          • cashC Offline
            cashC Offline
            cash
            Most Active
            wrote on last edited by
            #5

            Das man eigene Scripte die nicht global verfügbar sein sollen nicht in den Ordner global packt steht aber nun wirklich an vielen Stellen.

            Evtl wäre es natürlich möglich den Ordner global nur anzuzeigen wenn der User vorher in der Konfiguration eine bestimmte Änderung vornimmt. Somit würden evtl weniger Anfänger in diesen Fehler laufen

            1 Reply Last reply
            0
            • SegwayS Offline
              SegwayS Offline
              Segway
              wrote on last edited by
              #6

              Jo, ich weiß das es schwer ist eine Anleitung für Newbies parat zu haben. Das ist wirklich nicht einfach - gebe ich ja zu.

              ABER dann sollte eben mind. ein Hinweis irgendwo sein oder nicht nur ein Ordner global sondern auch ein Ordner userdefined oder so.

              Oder wie geschrieben hast erstmal den Ordner "verstecken".

              Ich hatte mich die ganze Zeit gewundert warum in dem Log Fenster direkt im Java-Adapter NIE NIE NIE Meldungen drin sind. Da muss doch was faul sein. Als ich einfach mal auf Truescript umgestellt hatte den Internpreter dann kamen aber ganz viele Fehler…..also hab ich den fehler woanders gesucht, da anscheinend ja was im Log kommt.

              Wurde ich aber letztendlich irre geführt. Bis ich den richtigen Hinweis las.

              Naja, 4 Tage waren ja nicht umsonst sondern habe vieles gelernt.....aber ärgerlich ist es trotzdem .-)

              Gruß Dirk
              Intel Proxmox Cluster (3x NUC) mit Debian & Proxmox / IoB als VM unter Debian / 60+ Adapter installiert

              1 Reply Last reply
              0
              • R Offline
                R Offline
                robsdobs
                wrote on last edited by
                #7

                Anfängern würde ich eindeutig Typescript vor Javascript empfehlen.

                Da sieht man sehr viele Fehler die man machen kann schon beim kompilieren und sucht dann nicht erst lange weil ein Programm einfach nicht so läuft wie man denkt.

                Scripte: http://forum.iobroker.net/viewtopic.php?f=23&t=2799&p=119565#p119565,

                1 Reply Last reply
                0
                • SegwayS Offline
                  SegwayS Offline
                  Segway
                  wrote on last edited by
                  #8

                  @Segway:

                  Hier das Javascript dazu - jemand einen Hinweis:

                  ! // –---------------------------------------------------------------------------
                  ! // ----- Abfragen von Werten aus der Datenbank (SQL) ---------------------------
                  ! // -----------------------------------------------------------------------------
                  ! // ----- Datenpunkt der ausgelesen werden soll ---------------------------------
                  ! var id = "hm-rpc.1.KEQ0054069.1.TEMPERATURE"/Temp_Feuchte_Aussen:1.TEMPERATURE/;
                  ! // ----- Datenpunkte in die gespeichert werden soll ----------------------------
                  ! var maxid = 'javascript.0.Statistik_24h_Max_TempAussen';
                  ! var minid = 'javascript.0.Statistik_24h_Min_TempAussen';
                  ! var dt = 24; // Zeitraum in Stunden
                  ! dt = dt36001000; // Zeitraum umrechnen in ??
                  ! // ----- Datenpunkte anlegen ---------------------------------------------------
                  ! createState(maxid, " ");
                  ! createState(minid, " ");
                  ! log('1. ) Datenpunkte angelegt ');
                  ! SQLAbfrage(id);
                  ! //----- SQL-Abfrage durchführen
                  ! function SQLAbfrage () {
                  ! log('2. ) Datenpunkt => ' + id);
                  ! log('2a.) Abfrage => SELECT * FROM iobroker.datapoints WHERE name = '' + id + ''');
                  ! sendTo('sql.0', 'query', 'SELECT * FROM iobroker.datapoints WHERE name = '' + id + ''', GetResults);
                  ! }
                  ! //---------------------------------------
                  ! function GetResults (dpoint) {
                  ! log('3. ) Funktion -> GetResults aufrufen');
                  ! var end_time = new Date().getTime();
                  ! var start_time = new Date().getTime() - dt;
                  ! log('3a.) Startzeit : ' + start_time);
                  ! log('3b.) Endzeit : ' + end_time);
                  ! log(' Datenpunkt: ' + dpoint.result);
                  ! log('3c.) result : ' + JSON.stringify(dpoint.result) + ' -//- ' + start_time);
                  ! log(' Datenpunkt: ' + dpoint.result[0].id + ' –-//--- ' + dpoint.result[0].name);
                  ! sendTo('sql.0', 'query', 'SELECT Round(Min(val),1) As MinVal FROM iobroker.ts_number WHERE ts >= ' + start_time + ' AND id=' + dpoint.result[0].id + ' GROUP BY id',minimum);
                  ! sendTo('sql.0', 'query', 'SELECT Round(Max(val),1) As MaxVal FROM iobroker.ts_number WHERE ts >= ' + start_time + ' AND id=' + dpoint.result[0].id + ' GROUP BY id',maximum);
                  ! }
                  ! //–--- Werte schreiben (maximum, minimum)
                  ! //----- minimum
                  ! function minimum(result) {
                  ! log('min )Funktion -> ' + JSON.stringify(result.result));
                  ! setState(minid, result.result[0].MinVal);
                  ! }
                  ! //–--- maximum
                  ! function maximum(result) {
                  ! log('max )Funktion -> ' + JSON.stringify(result.result));
                  ! setState(maxid, result.result[0].MaxVal);
                  ! log('–-- fertig -----------------------------------------');
                  ! }
                  ! //---------------------------------------
                  ! // ----- Funktion jede Minute aufrufen
                  ! schedule("*/1 * * * *", function(){SQLAbfrage(id);}); `

                  Kurze Frage noch zu dem Script:

                  Schaut das Script im Prinzip IMMER AKTUELL auf die letzten 24 Stunden und macht dann entsprechend des Poll-Script-Aufrufes eine Datenpunktaktualisierung ?also von 19 bis 19 Uhr ? wenn ich um 21Uhr schaue ist es von 21 bis 21 Uhr ?

                  Was wäre zu tun, wenn es immer für den jeweiligen Tag dies machen soll also von 0:00 bis 23:59 ?

                  Gruß Dirk
                  Intel Proxmox Cluster (3x NUC) mit Debian & Proxmox / IoB als VM unter Debian / 60+ Adapter installiert

                  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
                  FAQ Cloud / IOT
                  HowTo: Node.js-Update
                  HowTo: Backup/Restore
                  Downloads
                  BLOG

                  635

                  Online

                  32.7k

                  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