Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Einsteigerfragen
    4. SQL-Adapter speichert keine Werte von Alias-Datenpunkten

    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

    SQL-Adapter speichert keine Werte von Alias-Datenpunkten

    This topic has been deleted. Only users with topic management privileges can see it.
    • B
      bfit @Homoran last edited by

      @homoran Keine Ahnung, wieso "null". Das Alias ist wie folgt definiert – also als "number":

      {
        "type": "state",
        "common": {
          "name": "Temperatur",
          "role": "value.temperature",
          "type": "number",
          "unit": "°C",
          "read": true,
          "write": true,
          "alias": {
            "id": "bshb.0.roomClimateControl_hz_9.TemperatureLevel.temperature"
          },
          "custom": {
            "lovelace.0": {
              "enabled": true,
              "entity": "sensor",
              "name": "raum_technik_temperature",
              "attr_mode": "box",
              "attr_unit_of_measurement": "°C",
              "attr_device_class": "temperature"
            },
            "sql.0": {
              "enabled": true,
              "storageType": "",
              "counter": false,
              "aliasId": "",
              "debounceTime": 0,
              "blockTime": 0,
              "changesOnly": false,
              "changesRelogInterval": 0,
              "changesMinDelta": 0,
              "ignoreBelowNumber": "",
              "disableSkippedValueLogging": false,
              "retention": 0,
              "customRetentionDuration": 365,
              "maxLength": 0,
              "enableDebugLogs": false,
              "debounce": 1000
            }
          }
        },
        "_id": "alias.0.raum.technik.temperature",
        "native": {},
        "acl": {
          "object": 1636,
          "state": 1636,
          "owner": "system.user.admin",
          "ownerGroup": "system.group.administrator"
        },
        "from": "system.adapter.admin.0",
        "user": "system.user.admin",
        "ts": 1701293808998
      }
      
      Homoran 2 Replies Last reply Reply Quote 0
      • Homoran
        Homoran Global Moderator Administrators @bfit last edited by

        @bfit sagte in SQL-Adapter speichert keine Werte von Alias-Datenpunkten:

        "sql.0": {
        storageType": "",

        B 1 Reply Last reply Reply Quote 0
        • B
          bfit @Homoran last edited by bfit

          @homoran Hm, ok. Was sollte da drin stehen? Ich hab gerade mal stichprobenartig nachgeprüft: Bei allen anderen "normalen" Datenpunkten, die der SQL-Adapter erfolgreich wegschreibt, ist der storageType auch leer 🤔

          David G. 1 Reply Last reply Reply Quote 0
          • David G.
            David G. @bfit last edited by

            @bfit

            Bei mir sind die auch leer, vermutlich wenn der Typ auf Automatisch steht.

            Schau doch mal, ob der Datenpunkt in der Datenbank aufgeführt ist.
            Es gibt eine Tabelle "datapoints" da müsste er drinnen stehen.

            Screenshot_20231201_083928_RemoDB.jpg

            Hatte was ähnliches mal, als ich Daten per Skript in die DB schreiben wollte.

            B 1 Reply Last reply Reply Quote 0
            • B
              bfit @David G. last edited by

              @david-g Ja, die Datenpunkte gibt es in der MySQL-DB:
              Bildschirmfoto 2023-12-01 um 14.07.19.png

              In der Tabelle ts_numbers zeigt sich allerdings das selbe Bild, wie im ioBroker: Nur eine Handvoll null-Werte:
              Bildschirmfoto 2023-12-01 um 14.09.02.png

              Ich habe mittlerweile noch ein weiteres Alias (Zirkulationspumpe.Power) angelegt und dabei auch explizit darauf geachtet, dass von vornherein alle Types richtig gesetzt sind. Das holt sich die Werte aus einem Shelly-Messgerät. Auch dort gibt es einen ominösen null-Wert, allerdings auch einen richtigen:
              Bildschirmfoto 2023-12-01 um 14.12.27.png

              Dabei ist mir etwas kurioses aufgefallen: Solange ich den Reiter "Verlaufsdaten" offen habe, tauchen dort auch neue Zeilen mit Werten auf (siehe nächster Screenshot oberste Zeile). Sie sind allerdings wieder verschwunden, sobald ich auf einen anderen Reiter gehe und zurück. Auch in der MySQL-DB landen sie nicht:
              7a5afe7c-ad5f-41b5-9e91-df421a00fe9c-image.png
              Bildschirmfoto 2023-12-01 um 14.17.14.png

              1 Reply Last reply Reply Quote 0
              • Homoran
                Homoran Global Moderator Administrators @bfit last edited by

                @bfit sagte in SQL-Adapter speichert keine Werte von Alias-Datenpunkten:

                Das Alias ist wie folgt definiert – also als "number":

                das heisst aber nicht, dass der Wert der da hinein geschrieben wird auch vom selben Typ ist.

                B 1 Reply Last reply Reply Quote 0
                • B
                  bfit @Homoran last edited by

                  @homoran Ich steh gerade auf dem Schauch – worauf willst du hinaus?

                  Mein neues Alias "Zirkulationspumpe.Power" hat folgende Objektdaten:

                  {
                    "type": "state",
                    "common": {
                      "name": "Power",
                      "role": "value.power",
                      "type": "number",
                      "unit": "W",
                      "read": true,
                      "write": false,
                      "alias": {
                        "id": "shelly.0.shellyplusplugs#d4d4daf51a80#1.Relay0.Power"
                      },
                      "custom": {
                        "lovelace.0": {
                          "enabled": true,
                          "entity": "sensor",
                          "name": "Zirkulationspumpe_Power",
                          "attr_unit_of_measurement": "W",
                          "attr_device_class": "power"
                        },
                        "sql.0": {
                          "enabled": true,
                          "storageType": "",
                          "counter": false,
                          "aliasId": "",
                          "debounceTime": 0,
                          "blockTime": 0,
                          "changesOnly": true,
                          "changesRelogInterval": 0,
                          "changesMinDelta": 0,
                          "ignoreBelowNumber": "",
                          "disableSkippedValueLogging": false,
                          "retention": 1209600,
                          "customRetentionDuration": 365,
                          "maxLength": 0,
                          "enableDebugLogs": false,
                          "debounce": 1000
                        }
                      }
                    },
                    "_id": "alias.0.Zirkulationspumpe.Power",
                    "native": {},
                    "acl": {
                      "object": 1636,
                      "state": 1636,
                      "owner": "system.user.admin",
                      "ownerGroup": "system.group.administrator"
                    },
                    "from": "system.adapter.admin.0",
                    "user": "system.user.admin",
                    "ts": 1701438899399
                  }
                  

                  Und das Objekt des Originalgerätes (Shelly Plus Plug S) sieht folgendermaßen aus (hier kann ich die Objektdaten so nicht öffnen, da das Objekt vom Shelly-Adapter erstellt wird):

                  2e2ab808-800e-44e9-bd6d-dfea0da54620-image.png

                  Die sind doch beides "Number", oder? Bei diesem Alias hat er ja sogar (siehe oben) schon einmal einen Zahlenwert in die Datenbank geschrieben – nur leider seitdem keinen weiteren, obwohl er sich mehrfach geändert hat.

                  Homoran 1 Reply Last reply Reply Quote 0
                  • B
                    bfit last edited by

                    Ich glaube, ich komme langsam dahinter: Wenn bisher der Wert des "Original"-Objekts per SQL-Adapter protokolliert wurde, und künftig nur noch der Wert des Alias-Objekts, dann braucht der SQL-Adapter einen Neustart. Die ersten Alias-Werte bekomme ich mittlerweile protokolliert. Ich beobachte weiter.

                    S 1 Reply Last reply Reply Quote -1
                    • Homoran
                      Homoran Global Moderator Administrators @bfit last edited by

                      @bfit sagte in SQL-Adapter speichert keine Werte von Alias-Datenpunkten:

                      Die sind doch beides "Number", oder?

                      wie gesagt, den Typ den du dem Datenpunkt gibst muss nicht der Typ sein, der dort hineingeschrieben wird.
                      So kann ein "Zahlenwert" per MQTT trotzdem als String kommen. Oder per Skript das selbe.

                      Dies wird allerdings seit einiger Zeit im Log angemeckert.

                      1 Reply Last reply Reply Quote 0
                      • S
                        seb Developer @bfit last edited by

                        @bfit Ich hatte eben das gleiche Problem. Ich hatte aber am originalen Datenpunkt kein Logging an. Ich musste aber auch erst den SQL-Adapter neu starten, damit er loggt.

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

                        Support us

                        ioBroker
                        Community Adapters
                        Donate

                        549
                        Online

                        31.9k
                        Users

                        80.2k
                        Topics

                        1.3m
                        Posts

                        4
                        12
                        538
                        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