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

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. [gelöst] SQL getHistory Abfrage

NEWS

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

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

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

[gelöst] SQL getHistory Abfrage

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
58 Beiträge 4 Kommentatoren 4.8k Aufrufe 4 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.
  • O ostseeskipper

    Guten Abend,

    ich wollte gern die get Historyfunktion des SQL Adapters nutzen und habe mir das Beispiel aus https://github.com/ioBroker/ioBroker.sql/blob/master/README.md kopiert und meinen Datenpunkt eingetragen.

    Allerdings gibt es einen Fehler undefined für Zeile 14

    var end = Date.now();
    log(new Date());
    
    sendTo('sql.0', 'getHistory', {
        id: 'smartmeter.0.1-0:1_8_0__100.value',
        options: {
            start:      end - 60000,
            end:        end,
            aggregate: 'minmax' // or 'none' to get raw values
        }
    }, function (result) {
        for (var i = 0; i < result.result.length; i++) {
            console.log(i);
            console.log(result.result[i].id);
            console.log(new Date(result.result[i].ts).toISOString());
            //console.log(result.result[i].id + ' hhh ' + new Date(result.result[i].ts).toISOString());
        }
    });
    

    Was mache ich falsch?
    bekomme folgende Logausgabe

    20:06:43.678	info	javascript.0 (27918) Stop script script.js.Logik.GleitDurchschnitt
    20:06:43.679	info	javascript.1 (29175) Stop script script.js.Logik.GleitDurchschnitt
    20:06:43.684	info	javascript.0 (27918) Start javascript script.js.Logik.GleitDurchschnitt
    20:06:43.705	info	javascript.0 (27918) script.js.Logik.GleitDurchschnitt: Wed Mar 30 2022 20:06:43 GMT+0200 (Mitteleuropäische Sommerzeit)
    20:06:43.706	info	javascript.0 (27918) script.js.Logik.GleitDurchschnitt: registered 0 subscriptions and 0 schedules
    20:06:43.727	info	javascript.0 (27918) script.js.Logik.GleitDurchschnitt: 0
    20:06:43.727	info	javascript.0 (27918) script.js.Logik.GleitDurchschnitt: undefined
    20:06:43.727	info	javascript.0 (27918) script.js.Logik.GleitDurchschnitt: 2022-03-30T18:05:43.705Z
    20:06:43.728	info	javascript.0 (27918) script.js.Logik.GleitDurchschnitt: 1
    20:06:43.728	info	javascript.0 (27918) script.js.Logik.GleitDurchschnitt: undefined
    20:06:43.728	info	javascript.0 (27918) script.js.Logik.GleitDurchschnitt: 2022-03-30T18:05:57.342Z
    20:06:43.728	info	javascript.0 (27918) script.js.Logik.GleitDurchschnitt: 2
    20:06:43.728	info	javascript.0 (27918) script.js.Logik.GleitDurchschnitt: undefined
    20:06:43.728	info	javascript.0 (27918) script.js.Logik.GleitDurchschnitt: 2022-03-30T18:06:12.344Z
    20:06:43.728	info	javascript.0 (27918) script.js.Logik.GleitDurchschnitt: 3
    20:06:43.728	info	javascript.0 (27918) script.js.Logik.GleitDurchschnitt: undefined
    20:06:43.728	info	javascript.0 (27918) script.js.Logik.GleitDurchschnitt: 2022-03-30T18:06:27.344Z
    20:06:43.728	info	javascript.0 (27918) script.js.Logik.GleitDurchschnitt: 4
    20:06:43.728	info	javascript.0 (27918) script.js.Logik.GleitDurchschnitt: undefined
    20:06:43.729	info	javascript.0 (27918) script.js.Logik.GleitDurchschnitt: 2022-03-30T18:06:42.345Z
    

    Und BTW: warum steht an einigen Logzeilen am Ende eine Uhrzeit die 2Std abweicht?

    paul53P Offline
    paul53P Offline
    paul53
    schrieb am zuletzt editiert von
    #2

    @ostseeskipper sagte: warum steht an einigen Logzeilen am Ende eine Uhrzeit die 2Std abweicht?

    Das ist UTC (sieht man am "Z" hinten).

    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

    O 1 Antwort Letzte Antwort
    0
    • paul53P paul53

      @ostseeskipper sagte: warum steht an einigen Logzeilen am Ende eine Uhrzeit die 2Std abweicht?

      Das ist UTC (sieht man am "Z" hinten).

      O Offline
      O Offline
      ostseeskipper
      schrieb am zuletzt editiert von
      #3

      @paul53 Danke,
      das ist aber unschön da ich ja die Einträge der letzten 10 Minuten brauche und das mit Date GMT+0200 nicht passt. Oder macht der History das allein?
      Daher vielleicht undefined oder warum liefert mir Zeile 14 :

      console.log(result.result[i].id);
      

      ??

      paul53P 1 Antwort Letzte Antwort
      0
      • O ostseeskipper

        @paul53 Danke,
        das ist aber unschön da ich ja die Einträge der letzten 10 Minuten brauche und das mit Date GMT+0200 nicht passt. Oder macht der History das allein?
        Daher vielleicht undefined oder warum liefert mir Zeile 14 :

        console.log(result.result[i].id);
        

        ??

        paul53P Offline
        paul53P Offline
        paul53
        schrieb am zuletzt editiert von paul53
        #4

        @ostseeskipper sagte: Daher vielleicht undefined oder warum liefert mir Zeile 14

        Nein. Enthält result.result[i] das Attribut "id"?

        @ostseeskipper sagte in SQL getHistory Abfrage:

        Oder macht der History das allein?

        Ja.

        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

        O 1 Antwort Letzte Antwort
        0
        • paul53P paul53

          @ostseeskipper sagte: Daher vielleicht undefined oder warum liefert mir Zeile 14

          Nein. Enthält result.result[i] das Attribut "id"?

          @ostseeskipper sagte in SQL getHistory Abfrage:

          Oder macht der History das allein?

          Ja.

          O Offline
          O Offline
          ostseeskipper
          schrieb am zuletzt editiert von ostseeskipper
          #5

          @paul53 said in SQL getHistory Abfrage:

          @ostseeskipper sagte: Daher vielleicht undefined oder warum liefert mir Zeile 14

          Nein. Enthält result.result[i] das Attribut "id"?

          Der Datenpunkt den ich auslsen möchte (id?) ist in zeile 5 definiert, der Rest war nur Copy Paste

          Daher bin ich irritiert das ein Beispiel aus der Adapterbeschreibung so nicht funktioniert.

          O 1 Antwort Letzte Antwort
          0
          • O ostseeskipper

            @paul53 said in SQL getHistory Abfrage:

            @ostseeskipper sagte: Daher vielleicht undefined oder warum liefert mir Zeile 14

            Nein. Enthält result.result[i] das Attribut "id"?

            Der Datenpunkt den ich auslsen möchte (id?) ist in zeile 5 definiert, der Rest war nur Copy Paste

            Daher bin ich irritiert das ein Beispiel aus der Adapterbeschreibung so nicht funktioniert.

            O Offline
            O Offline
            ostseeskipper
            schrieb am zuletzt editiert von
            #6

            @apollon77 könntest du mir eventuell auf den richtigen weg helfen?

            1 Antwort Letzte Antwort
            0
            • apollon77A Offline
              apollon77A Offline
              apollon77
              schrieb am zuletzt editiert von
              #7

              Ich denke das das Example falsch ist.

              mach mal in die options von dem call ein `addIr: true´ dazu ... ist Sie dann da? Wenn ja muss ich das example fixen.

              Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

              • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
              • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
              O 1 Antwort Letzte Antwort
              0
              • apollon77A apollon77

                Ich denke das das Example falsch ist.

                mach mal in die options von dem call ein `addIr: true´ dazu ... ist Sie dann da? Wenn ja muss ich das example fixen.

                O Offline
                O Offline
                ostseeskipper
                schrieb am zuletzt editiert von
                #8

                @apollon77 said in SQL getHistory Abfrage:

                `addIr: true´

                var end = Date.now();
                log(new Date());
                
                sendTo('sql.0', 'getHistory', {
                    id: 'smartmeter.0.1-0:16_7_0__255.value',
                    options: {
                        addIr: true,
                        start:      end - 60000,
                        end:        end,
                        aggregate: 'minmax' // or 'none' to get raw values
                    }
                }, function (result) {
                    for (var i = 0; i < result.result.length; i++) {
                        console.log(i);
                        console.log(result.result[i].id);
                        console.log(new Date(result.result[i].ts).toISOString());
                        //console.log(result.result[i].id + ' ' + new Date(result.result[i].ts).toISOString());
                    }
                });
                

                Das ändert leider nichts.

                20:28:33.439	info	javascript.0 (149) Stop script script.js.Logik.GleitDurchschnitt
                20:28:33.439	info	javascript.1 (16606) Stop script script.js.Logik.GleitDurchschnitt
                20:28:33.442	info	javascript.0 (149) Start javascript script.js.Logik.GleitDurchschnitt
                20:28:33.447	info	javascript.0 (149) script.js.Logik.GleitDurchschnitt: Thu Mar 31 2022 20:28:33 GMT+0200 (Mitteleuropäische Sommerzeit)
                20:28:33.448	info	javascript.0 (149) script.js.Logik.GleitDurchschnitt: registered 0 subscriptions and 0 schedules
                20:28:33.458	info	javascript.0 (149) script.js.Logik.GleitDurchschnitt: 0
                20:28:33.458	info	javascript.0 (149) script.js.Logik.GleitDurchschnitt: undefined
                20:28:33.458	info	javascript.0 (149) script.js.Logik.GleitDurchschnitt: 2022-03-31T18:27:33.447Z
                20:28:33.459	info	javascript.0 (149) script.js.Logik.GleitDurchschnitt: 1
                20:28:33.459	info	javascript.0 (149) script.js.Logik.GleitDurchschnitt: undefined
                20:28:33.459	info	javascript.0 (149) script.js.Logik.GleitDurchschnitt: 2022-03-31T18:27:37.042Z
                

                Was bewirkt diese Option, finde auch keine weitere Doku dazu.

                O 1 Antwort Letzte Antwort
                0
                • O ostseeskipper

                  @apollon77 said in SQL getHistory Abfrage:

                  `addIr: true´

                  var end = Date.now();
                  log(new Date());
                  
                  sendTo('sql.0', 'getHistory', {
                      id: 'smartmeter.0.1-0:16_7_0__255.value',
                      options: {
                          addIr: true,
                          start:      end - 60000,
                          end:        end,
                          aggregate: 'minmax' // or 'none' to get raw values
                      }
                  }, function (result) {
                      for (var i = 0; i < result.result.length; i++) {
                          console.log(i);
                          console.log(result.result[i].id);
                          console.log(new Date(result.result[i].ts).toISOString());
                          //console.log(result.result[i].id + ' ' + new Date(result.result[i].ts).toISOString());
                      }
                  });
                  

                  Das ändert leider nichts.

                  20:28:33.439	info	javascript.0 (149) Stop script script.js.Logik.GleitDurchschnitt
                  20:28:33.439	info	javascript.1 (16606) Stop script script.js.Logik.GleitDurchschnitt
                  20:28:33.442	info	javascript.0 (149) Start javascript script.js.Logik.GleitDurchschnitt
                  20:28:33.447	info	javascript.0 (149) script.js.Logik.GleitDurchschnitt: Thu Mar 31 2022 20:28:33 GMT+0200 (Mitteleuropäische Sommerzeit)
                  20:28:33.448	info	javascript.0 (149) script.js.Logik.GleitDurchschnitt: registered 0 subscriptions and 0 schedules
                  20:28:33.458	info	javascript.0 (149) script.js.Logik.GleitDurchschnitt: 0
                  20:28:33.458	info	javascript.0 (149) script.js.Logik.GleitDurchschnitt: undefined
                  20:28:33.458	info	javascript.0 (149) script.js.Logik.GleitDurchschnitt: 2022-03-31T18:27:33.447Z
                  20:28:33.459	info	javascript.0 (149) script.js.Logik.GleitDurchschnitt: 1
                  20:28:33.459	info	javascript.0 (149) script.js.Logik.GleitDurchschnitt: undefined
                  20:28:33.459	info	javascript.0 (149) script.js.Logik.GleitDurchschnitt: 2022-03-31T18:27:37.042Z
                  

                  Was bewirkt diese Option, finde auch keine weitere Doku dazu.

                  O Offline
                  O Offline
                  ostseeskipper
                  schrieb am zuletzt editiert von
                  #9

                  @apollon77
                  jetzt habe ich das Beispiel "copy paste" aus Github probiert

                  sendTo('sql.0', 'query', 'SELECT id FROM datapoints WHERE name="system.adapter.admin.0.memRss"', function (result) {
                      if (result.error) {
                          console.error(result.error);
                      } else {
                          // show result
                          console.log('Rows: ' + JSON.stringify(result.result));
                          var now = new Date();
                          now.setHours(-1);
                          sendTo('sql.0', 'query', 'SELECT * FROM ts_number WHERE ts >= ' + now.getTime() + ' AND id=' + result.result[0].id, function (result) {
                              console.log('Rows: ' + JSON.stringify(result.result));
                          });
                      }
                  });
                  

                  Das sagt mir

                  21:07:56.462	info	javascript.0 (149) script.js.Logik.GleitDurchschnitt: registered 0 subscriptions and 0 schedules
                  21:07:56.469	error	javascript.0 (149) script.js.Logik.GleitDurchschnitt: Error: ER_NO_DB_ERROR: No database selected
                  
                  1 Antwort Letzte Antwort
                  0
                  • apollon77A Offline
                    apollon77A Offline
                    apollon77
                    schrieb am zuletzt editiert von
                    #10

                    sorry hatte ein Type drin: addId: true ...

                    Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

                    • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
                    • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
                    O 1 Antwort Letzte Antwort
                    0
                    • apollon77A apollon77

                      sorry hatte ein Type drin: addId: true ...

                      O Offline
                      O Offline
                      ostseeskipper
                      schrieb am zuletzt editiert von ostseeskipper
                      #11

                      @apollon77

                      wenn die Beispiele schon nicht funktionieren was kann soll man dann tun?
                      Der SQL Adapter zeichnet Datenpunkte wie gewünscht auf und stellt die Infos auch bereit, also muss er doch eine Datenbank haben.
                      1c1c22c2-dede-48f2-b62b-72c1e3843b31-grafik.png

                      5b607f42-3f2e-4d73-b131-d2387cc0f0e1-grafik.png

                      Könnt Ihr bitte euer Beispiel fixen damit man das nutzen und daran lernen kann.
                      lieben Dank

                      O apollon77A 2 Antworten Letzte Antwort
                      0
                      • O ostseeskipper

                        @apollon77

                        wenn die Beispiele schon nicht funktionieren was kann soll man dann tun?
                        Der SQL Adapter zeichnet Datenpunkte wie gewünscht auf und stellt die Infos auch bereit, also muss er doch eine Datenbank haben.
                        1c1c22c2-dede-48f2-b62b-72c1e3843b31-grafik.png

                        5b607f42-3f2e-4d73-b131-d2387cc0f0e1-grafik.png

                        Könnt Ihr bitte euer Beispiel fixen damit man das nutzen und daran lernen kann.
                        lieben Dank

                        O Offline
                        O Offline
                        ostseeskipper
                        schrieb am zuletzt editiert von
                        #12

                        @apollon77

                        auch mit addId: true ... gibt es undefined :cry:

                        1 Antwort Letzte Antwort
                        0
                        • O ostseeskipper

                          @apollon77

                          wenn die Beispiele schon nicht funktionieren was kann soll man dann tun?
                          Der SQL Adapter zeichnet Datenpunkte wie gewünscht auf und stellt die Infos auch bereit, also muss er doch eine Datenbank haben.
                          1c1c22c2-dede-48f2-b62b-72c1e3843b31-grafik.png

                          5b607f42-3f2e-4d73-b131-d2387cc0f0e1-grafik.png

                          Könnt Ihr bitte euer Beispiel fixen damit man das nutzen und daran lernen kann.
                          lieben Dank

                          apollon77A Offline
                          apollon77A Offline
                          apollon77
                          schrieb am zuletzt editiert von
                          #13

                          @ostseeskipper bitte ganz locker bleiben. Was denkst du was wir in dieser Konversation gerade tun?! Du hast auf ein Problem hingewiesen und ich versuche zu helfen das wir die Beispiele fixen können und ich hab noch nicht mal um ein github issue gebeten.

                          Ich nehme also jetzt mit das es auch mit addId nicht geht. Dann muss ich wohl mal genauer schauen.

                          Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

                          • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
                          • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
                          O 1 Antwort Letzte Antwort
                          0
                          • apollon77A apollon77

                            @ostseeskipper bitte ganz locker bleiben. Was denkst du was wir in dieser Konversation gerade tun?! Du hast auf ein Problem hingewiesen und ich versuche zu helfen das wir die Beispiele fixen können und ich hab noch nicht mal um ein github issue gebeten.

                            Ich nehme also jetzt mit das es auch mit addId nicht geht. Dann muss ich wohl mal genauer schauen.

                            O Offline
                            O Offline
                            ostseeskipper
                            schrieb am zuletzt editiert von ostseeskipper
                            #14

                            @apollon77
                            ich bleib locker :+1: :blush: und hab gesucht
                            hab den Fehler gefunden und auf Github was geschrieben

                            edit: Sorry wenn es zu emotional rüber kam, Ihr macht schon tolle arbeit:+1:

                            apollon77A 1 Antwort Letzte Antwort
                            0
                            • O ostseeskipper

                              @apollon77
                              ich bleib locker :+1: :blush: und hab gesucht
                              hab den Fehler gefunden und auf Github was geschrieben

                              edit: Sorry wenn es zu emotional rüber kam, Ihr macht schon tolle arbeit:+1:

                              apollon77A Offline
                              apollon77A Offline
                              apollon77
                              schrieb am zuletzt editiert von
                              #15

                              @ostseeskipper Hi,

                              ok, aber das was Du jetzt af GitHub hast ist was anderes ... oder ist es quasi kombiniert?

                              Weil "query" ist was anderes als "getHistory"

                              Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

                              • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
                              • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
                              O 1 Antwort Letzte Antwort
                              0
                              • F Offline
                                F Offline
                                fastfoot
                                schrieb am zuletzt editiert von
                                #16
                                • Bei query fehlt die Angabe der Datenbank vor den Tabellennamen, steht auch so im Readme. Also SELECT id FROM iobroker.datapoints....
                                • Bei getHistory wird id nicht mit zurück geliefert, allerdings würde ich mich fragen wozu, denn die Id ist ja Bestandteil der Abfrage. Es werden nur ts und val geliefert.
                                • addId hat tatsächlich keinen Effekt, habe es im source auch nur einmal gefunden, genutzt scheint es nicht zu werden.

                                iobroker läuft unter Docker auf QNAP TS-451+
                                SkriptRecovery: https://forum.iobroker.net/post/930558

                                apollon77A 1 Antwort Letzte Antwort
                                0
                                • apollon77A apollon77

                                  @ostseeskipper Hi,

                                  ok, aber das was Du jetzt af GitHub hast ist was anderes ... oder ist es quasi kombiniert?

                                  Weil "query" ist was anderes als "getHistory"

                                  O Offline
                                  O Offline
                                  ostseeskipper
                                  schrieb am zuletzt editiert von
                                  #17

                                  @apollon77

                                  Es ist kombiniert, da ja query und gethistory BuildIn Funktionen sind

                                  Da ich mit gethistory nicht weitergekommen bin hatte ich query versucht und auch da fehler bekommen
                                  Query sagte mir das die Datenbank nicht angegeben ist.
                                  also die Datenbank im ersten sendto für die id's hinzugefügt,

                                  dann ging es weiter, aber nun kam wieder diese 'undefined' Fehlermeldung wie aus der gethistory funktion

                                  dann habe ich im 2ten sendto der 'query' funktion zum holen der values auch die Datenbank hinzugefügt.

                                  Wenn es in der internen gethistory Funktion auch so abläuft nur halt intern im programmcode, vermute ich, das da der Datenbankname nicht sauber aus den Adaptereinstellungen ermittelt wird oder in die integrierten BuildIn-Funktionen wie gethistory übergeben werden.

                                  F 1 Antwort Letzte Antwort
                                  0
                                  • O ostseeskipper

                                    @apollon77

                                    Es ist kombiniert, da ja query und gethistory BuildIn Funktionen sind

                                    Da ich mit gethistory nicht weitergekommen bin hatte ich query versucht und auch da fehler bekommen
                                    Query sagte mir das die Datenbank nicht angegeben ist.
                                    also die Datenbank im ersten sendto für die id's hinzugefügt,

                                    dann ging es weiter, aber nun kam wieder diese 'undefined' Fehlermeldung wie aus der gethistory funktion

                                    dann habe ich im 2ten sendto der 'query' funktion zum holen der values auch die Datenbank hinzugefügt.

                                    Wenn es in der internen gethistory Funktion auch so abläuft nur halt intern im programmcode, vermute ich, das da der Datenbankname nicht sauber aus den Adaptereinstellungen ermittelt wird oder in die integrierten BuildIn-Funktionen wie gethistory übergeben werden.

                                    F Offline
                                    F Offline
                                    fastfoot
                                    schrieb am zuletzt editiert von fastfoot
                                    #18

                                    @ostseeskipper sagte in SQL getHistory Abfrage:

                                    Wenn es in der internen gethistory Funktion auch so abläuft nur halt intern im programmcode, vermute ich, das da der Datenbankname nicht sauber aus den Adaptereinstellungen ermittelt wird oder in die integrierten BuildIn-Funktionen wie gethistory übergeben werden.

                                    Schmarrn. Deine Abfrage funktionierte doch für das Datum, id ist einfach nicht im Resultset vorhanden. Weshalb erwartest du das überhaupt? logge mal val statt id

                                            console.log(result.result[i].id);
                                            console.log(new Date(result.result[i].ts).toISOString());
                                    
                                    

                                    iobroker läuft unter Docker auf QNAP TS-451+
                                    SkriptRecovery: https://forum.iobroker.net/post/930558

                                    O 1 Antwort Letzte Antwort
                                    0
                                    • F fastfoot

                                      @ostseeskipper sagte in SQL getHistory Abfrage:

                                      Wenn es in der internen gethistory Funktion auch so abläuft nur halt intern im programmcode, vermute ich, das da der Datenbankname nicht sauber aus den Adaptereinstellungen ermittelt wird oder in die integrierten BuildIn-Funktionen wie gethistory übergeben werden.

                                      Schmarrn. Deine Abfrage funktionierte doch für das Datum, id ist einfach nicht im Resultset vorhanden. Weshalb erwartest du das überhaupt? logge mal val statt id

                                              console.log(result.result[i].id);
                                              console.log(new Date(result.result[i].ts).toISOString());
                                      
                                      
                                      O Offline
                                      O Offline
                                      ostseeskipper
                                      schrieb am zuletzt editiert von
                                      #19

                                      @fastfoot
                                      ich hatte erst mal nur erwartet das das Beispiel in der readme funktioniert, :innocent:

                                              console.log(result.result[i].id + ' ' + new Date(result.result[i].ts).toISOString());
                                      

                                      für jemanden der nicht aus der JS Sprache kommt und lernen will etwas frustriend.

                                      Auch im anderen Beispiel zu queries ist die Datenbank im Beispielscript nicht enthalten, aber ja du hast Recht es steht ein paar zeilen drunter.

                                      Was ich möchte, ist von einem Datenpunkt den gleitenden Durchschnitt der letzten x Minuten in eine Variable bzw. einen Datenpunkt schreiben.
                                      .ts muss ich vermutlich durch .val ersetzen um den Wert zu bekommen

                                      console.log(new Date(result.result[i].ts).toISOString());
                                      
                                      1 Antwort Letzte Antwort
                                      0
                                      • apollon77A Offline
                                        apollon77A Offline
                                        apollon77
                                        schrieb am zuletzt editiert von
                                        #20

                                        Naja, schau mal hier https://github.com/ioBroker/ioBroker.sql#structure-of-the-dbs ... da steht elche Tabelle für welchen DB Typ wie heisst ... Ja ich kann gern in der Doku darauf hinweisen das das Beispiel zB für ne PostGres bzw sqlite ist und ggf andere Tabellennamen genutzt werden müssen.

                                        .ts muss ich vermutlich durch .val ersetzen um den Wert zu bekommen

                                        ts ist der Timestamp ... und val ist was anderes.

                                        Logge doch einfach mal console.log(JSON.stringify(result.result[i])) dann sehen wir was wirklich zurückommt und raten nicht rum

                                        Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

                                        • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
                                        • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
                                        O F 2 Antworten Letzte Antwort
                                        0
                                        • F fastfoot
                                          • Bei query fehlt die Angabe der Datenbank vor den Tabellennamen, steht auch so im Readme. Also SELECT id FROM iobroker.datapoints....
                                          • Bei getHistory wird id nicht mit zurück geliefert, allerdings würde ich mich fragen wozu, denn die Id ist ja Bestandteil der Abfrage. Es werden nur ts und val geliefert.
                                          • addId hat tatsächlich keinen Effekt, habe es im source auch nur einmal gefunden, genutzt scheint es nicht zu werden.
                                          apollon77A Offline
                                          apollon77A Offline
                                          apollon77
                                          schrieb am zuletzt editiert von
                                          #21

                                          @fastfoot sagte in SQL getHistory Abfrage:

                                          addId hat tatsächlich keinen Effekt, habe es im source auch nur einmal gefunden, genutzt scheint es nicht zu werden.

                                          Jupp scheint so zu sein, dann wäre das ein Bug

                                          Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

                                          • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
                                          • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
                                          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

                                          524

                                          Online

                                          32.4k

                                          Benutzer

                                          81.5k

                                          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