Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. [Gelöst]SQL Logging auswerten

    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

    [Gelöst]SQL Logging auswerten

    This topic has been deleted. Only users with topic management privileges can see it.
    • T
      thomasSC last edited by

      Hallo,

      ich logge in eine SQL Datenbank. Damit mache ich aktuell eigentlich nur FLOT Anzeigen bzw. Graphen.

      Ist es möglich mir von einem Wert einen MAX wert des Aktuellen Tages anzeigen zu lassen?

      Bin leider nicht wirklich Firm mit SQL.

      Danke für Eure Hilfe

      Gruß Thomas

      1 Reply Last reply Reply Quote 0
      • paul53
        paul53 last edited by

        Siehe https://github.com/ioBroker/ioBroker.sql.

        1 Reply Last reply Reply Quote 0
        • T
          thomasSC last edited by

          super danke

          nun taucht aber gleich ein Problem auf.

          Ich habe ein neues Javascript angelegt

          dann den Code eingefügt.

          die ID habe ich ersetzt durch die ID des wertes den ich haben möchte?

          wo kommt die Anzeige raus?

          hier mien code

          `var end = new Date().getTime();
          sendTo('sql.0', 'getHistory', {
              id: '"modbus.0.holdingRegisters.557_I_Batt"/*Ladestrom in A*/',
              options: {
                  start:      end - 3600000,
                  end:        end,
                  aggregate: 'minmax' // or 'none' to get raw values
              }
          }, function (result) {
              for (var i = 0; i < result.result.length; i++) {
                  console.log(result.result[i].id + ' ' + new Date(result.result[i].ts).toISOString());
              }
          });`
          
          Danke nochmal.
          
          Gruß Thomas[/i][/i]
          
          1 Reply Last reply Reply Quote 0
          • paul53
            paul53 last edited by

            `function maxStrom() {
              var end = new Date().getTime();
              sendTo('sql.0', 'getHistory', {
                id: "modbus.0.holdingRegisters.557_I_Batt"/*Ladestrom in A*/,
                options: {
                    start:      end - 24 * 3600000,
                    end:        end,
                    aggregate: 'none'
                }
              }, function (result) {
                var max = 0;
                for (var i = 0; i < result.result.length; i++) {
                    if(result.result[i].val > max) max = result.result[i].val;
                }
                log('Maximaler Ladestrom: ' + max + ' A'); // oder, wenn Datenpunkt vorhanden: setState(idMaxStrom, max, true);
              });
            }
            
            maxStrom(); // Skriptstart
            
            schedule('0 0 * * *', maxStrom); // täglich um Mitternacht` [/i][/i]
            
            1 Reply Last reply Reply Quote 0
            • T
              thomasSC last edited by

              hab mir das setstate noch eingebaut. ist das so richtig? habe den datenpunkt als gemischt erstell.

              `function maxStrom() {
                var end = new Date().getTime();
                sendTo('sql.0', 'getHistory', {
                  id: "modbus.0.holdingRegisters.557_I_Batt"/*Ladestrom in A*/,
                  options: {
                      start:      end - 24 * 3600000,
                      end:        end,
                      aggregate: 'none'
                  }
                }, function (result) {
                  var max = 0;
                  for (var i = 0; i < result.result.length; i++) {
                      if(result.result[i].val > max) max = result.result[i].val;
                  }
                  log('Maximaler Ladestrom: ' + max + ' A'); // oder, wenn Datenpunkt vorhanden:
                  setState("javascript.0.MaxLadestrom", max, true);
                });
              }
              
              maxStrom(); // Skriptstart
              
              schedule('0 0 * * *', maxStrom); // täglich um Mitternacht` 
              
              danke für deine Hilfe![/i][/i]
              
              1 Reply Last reply Reply Quote 0
              • paul53
                paul53 last edited by

                @thomasSC:

                habe den datenpunkt als gemischt erstell. `
                Besser als Zahl (number) mit unit: 'A'.

                Bitte noch das Thema im Betreff des ersten Beitrags als [gelöst] markieren.

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

                Support us

                ioBroker
                Community Adapters
                Donate

                824
                Online

                31.7k
                Users

                79.9k
                Topics

                1.3m
                Posts

                2
                6
                561
                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