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. Blockly
  5. wrong type of...

NEWS

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

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

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

wrong type of...

Geplant Angeheftet Gesperrt Verschoben Blockly
blockly
22 Beiträge 5 Kommentatoren 1.9k 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.
  • HomoranH Homoran

    @paul53 sagte in wrong type of...:

    Das wäre ausreichend.

    Danke!
    Da war ich mir eben nicht sicher, ob die States, in denen er das Ergebnis aus einer "Text-Addition" eingetragen hatte nicht auch den falschen Typ haben.
    Mit diesen Werten rechnet er ja nachher weiter.

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

    @Homoran sagte:

    States, in denen er das Ergebnis aus einer "Text-Addition" eingetragen hatte nicht auch den falschen Typ haben.

    Ja, das muss einmalig korrigiert werden.

    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

    HomoranH 1 Antwort Letzte Antwort
    1
    • paul53P paul53

      @Homoran sagte:

      States, in denen er das Ergebnis aus einer "Text-Addition" eingetragen hatte nicht auch den falschen Typ haben.

      Ja, das muss einmalig korrigiert werden.

      HomoranH Nicht stören
      HomoranH Nicht stören
      Homoran
      Global Moderator Administrators
      schrieb am zuletzt editiert von
      #14

      @paul53
      Dann setze ich alles auf 0 und beginne von vorn.
      Da stimmt sowie so etwas nicht ;-)
      Die potentiellen Tagesmittelwerte sind unplausibel.

      kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

      Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

      der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

      paul53P 1 Antwort Letzte Antwort
      0
      • HomoranH Homoran

        @paul53
        Dann setze ich alles auf 0 und beginne von vorn.
        Da stimmt sowie so etwas nicht ;-)
        Die potentiellen Tagesmittelwerte sind unplausibel.

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

        @Homoran sagte:

        Die potentiellen Tagesmittelwerte sind unplausibel.

        Wenn bisher eine String-Verkettung anstelle einer Addition erfolgte, können die Werte nicht stimmen.

        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

        HomoranH SBorgS 2 Antworten Letzte Antwort
        0
        • paul53P paul53

          @Homoran sagte:

          Die potentiellen Tagesmittelwerte sind unplausibel.

          Wenn bisher eine String-Verkettung anstelle einer Addition erfolgte, können die Werte nicht stimmen.

          HomoranH Nicht stören
          HomoranH Nicht stören
          Homoran
          Global Moderator Administrators
          schrieb am zuletzt editiert von
          #16

          @paul53
          Das habe ich mir auch gedacht

          kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

          Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

          der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

          1 Antwort Letzte Antwort
          0
          • paul53P paul53

            @Homoran sagte:

            Die potentiellen Tagesmittelwerte sind unplausibel.

            Wenn bisher eine String-Verkettung anstelle einer Addition erfolgte, können die Werte nicht stimmen.

            SBorgS Offline
            SBorgS Offline
            SBorg
            Forum Testing Most Active
            schrieb am zuletzt editiert von
            #17

            @paul53 sagte in wrong type of...:

            @Homoran sagte:

            Die potentiellen Tagesmittelwerte sind unplausibel.

            Wenn bisher eine String-Verkettung anstelle einer Addition erfolgte, können die Werte nicht stimmen.

            Das war wohl schon immer String:

            self.setState(path + 'SDS_' + obj.value_type, {val: obj.value, ack: true});
            

            Ich finde aber nix was obj.value prüft oder als Zahl konvertiert. Mein JS ist "so naja", aber was ich dabei nicht verstehe, die Funktion ist für 2.5 + 10, warum meckert er nur die 2.5 an (10 ist, wie es die Funktion ja auch vorgibt, ebenfalls String)?

            LG SBorg ( SBorg auf GitHub)
            Projekte: Lebensmittelwarnung.de | WLAN-Wetterstation | PimpMyStation

            HomoranH paul53P 2 Antworten Letzte Antwort
            0
            • SBorgS SBorg

              @paul53 sagte in wrong type of...:

              @Homoran sagte:

              Die potentiellen Tagesmittelwerte sind unplausibel.

              Wenn bisher eine String-Verkettung anstelle einer Addition erfolgte, können die Werte nicht stimmen.

              Das war wohl schon immer String:

              self.setState(path + 'SDS_' + obj.value_type, {val: obj.value, ack: true});
              

              Ich finde aber nix was obj.value prüft oder als Zahl konvertiert. Mein JS ist "so naja", aber was ich dabei nicht verstehe, die Funktion ist für 2.5 + 10, warum meckert er nur die 2.5 an (10 ist, wie es die Funktion ja auch vorgibt, ebenfalls String)?

              HomoranH Nicht stören
              HomoranH Nicht stören
              Homoran
              Global Moderator Administrators
              schrieb am zuletzt editiert von
              #18

              @SBorg
              er hatte beides angemeckert.
              Ich hatte nur das eine als Beispiel genommen

              kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

              Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

              der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

              SBorgS 1 Antwort Letzte Antwort
              0
              • HomoranH Homoran

                @SBorg
                er hatte beides angemeckert.
                Ich hatte nur das eine als Beispiel genommen

                SBorgS Offline
                SBorgS Offline
                SBorg
                Forum Testing Most Active
                schrieb am zuletzt editiert von
                #19

                @Homoran Ok, danke, dann raff ich das auch ^^
                Muss Matthias fixen... :)

                LG SBorg ( SBorg auf GitHub)
                Projekte: Lebensmittelwarnung.de | WLAN-Wetterstation | PimpMyStation

                1 Antwort Letzte Antwort
                0
                • SBorgS SBorg

                  @paul53 sagte in wrong type of...:

                  @Homoran sagte:

                  Die potentiellen Tagesmittelwerte sind unplausibel.

                  Wenn bisher eine String-Verkettung anstelle einer Addition erfolgte, können die Werte nicht stimmen.

                  Das war wohl schon immer String:

                  self.setState(path + 'SDS_' + obj.value_type, {val: obj.value, ack: true});
                  

                  Ich finde aber nix was obj.value prüft oder als Zahl konvertiert. Mein JS ist "so naja", aber was ich dabei nicht verstehe, die Funktion ist für 2.5 + 10, warum meckert er nur die 2.5 an (10 ist, wie es die Funktion ja auch vorgibt, ebenfalls String)?

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

                  @SBorg sagte:

                  Das war wohl schon immer String:

                  Ist der Code aus dem Adapter ?
                  Wenn es eine Zahl sein soll, wie es common.type = 'number' vorgibt, muss gewandelt werden.

                  self.setState(path + 'SDS_' + obj.value_type, {val: parseFloat(obj.value), ack: true});
                  

                  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

                  SBorgS 1 Antwort Letzte Antwort
                  0
                  • paul53P paul53

                    @SBorg sagte:

                    Das war wohl schon immer String:

                    Ist der Code aus dem Adapter ?
                    Wenn es eine Zahl sein soll, wie es common.type = 'number' vorgibt, muss gewandelt werden.

                    self.setState(path + 'SDS_' + obj.value_type, {val: parseFloat(obj.value), ack: true});
                    
                    SBorgS Offline
                    SBorgS Offline
                    SBorg
                    Forum Testing Most Active
                    schrieb am zuletzt editiert von
                    #21

                    @paul53 sagte in wrong type of...:

                    Wenn es eine Zahl sein soll, wie es common.type = 'number' vorgibt, muss gewandelt werden.

                    self.setState(path + 'SDS_' + obj.value_type, {val: parseFloat(obj.value), ack: true});
                    

                    Ja, und genau so sieht meine Änderung auch aus (war mir nicht zu 100% sicher) :)
                    Resultat:

                    16:30:46.076	info	javascript.0 (31077) script.js.Skript_1: number
                    16:30:46.077	info	javascript.0 (31077) script.js.Skript_1: registered 0 subscriptions and 0 schedules
                    

                    LG SBorg ( SBorg auf GitHub)
                    Projekte: Lebensmittelwarnung.de | WLAN-Wetterstation | PimpMyStation

                    1 Antwort Letzte Antwort
                    0
                    • HomoranH Homoran

                      Jetzt hat es mich auch erwischt.

                      ich habe

                      javascript.0	2019-12-26 13:42:02.610	warn	(1053) at processImmediate (timers.js:658:5)
                      javascript.0	2019-12-26 13:42:02.610	warn	(1053) at tryOnImmediate (timers.js:676:5)
                      javascript.0	2019-12-26 13:42:02.610	warn	(1053) at runCallback (timers.js:705:18)
                      javascript.0	2019-12-26 13:42:02.610	warn	(1053) at Immediate.setImmediate (/opt/iobroker/node_modules/iobroker.js-controller/lib/states/statesInRedis.js:226:41)
                      javascript.0	2019-12-26 13:42:02.610	warn	(1053) at change (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:4745:37)
                      javascript.0	2019-12-26 13:42:02.609	warn	(1053) at Object.stateChange (/opt/iobroker/node_modules/iobroker.javascript/main.js:364:25)
                      javascript.0	2019-12-26 13:42:02.609	warn	(1053) at Object.callback (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:963:38)
                      javascript.0	2019-12-26 13:42:02.609	warn	(1053) at Object.<anonymous> (script.js.Luftdaten_kumulieren:7:3)
                      javascript.0	2019-12-26 13:42:02.608	warn	(1053) at setState (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1258:20)
                      javascript.0	2019-12-26 13:42:02.607	warn	(1053) Wrong type of 0_userdata.0.Umwelt.PM2_5_Summe: "string". Please fix, while deprecated and will not work in next versions.
                      

                      Aber ich habe alles kontrolliert und alles ist "number":

                      {
                        "_id": "0_userdata.0.Umwelt.PM2_5_Summe",
                        "type": "state",
                        "common": {
                          "name": "PM2_5_Summe",
                          "role": "value",
                          "type": "number",
                          "desc": "Manuell erzeugt",
                          "read": true,
                          "write": true,
                          "def": false
                        },
                        "native": {},
                        "from": "system.adapter.admin.0",
                        "user": "system.user.admin",
                        "ts": 1577356159237,
                        "acl": {
                          "object": 1638,
                          "owner": "system.user.admin",
                          "ownerGroup": "system.group.administrator",
                          "state": 1638
                        }
                      }
                      

                      und im Script steht:

                      on({id: 'luftdaten.0.34499.SDS_P1', change: "any"}, function (obj) {
                        var value = obj.state.val;
                        var oldValue = obj.oldState.val;
                        setState("0_userdata.0.Umwelt.PM10_Anzahl"/*PM10_Anzahl*/, (getState("0_userdata.0.Umwelt.PM10_Anzahl").val + 1), true);
                        setState("0_userdata.0.Umwelt.PM10_Summe"/*PM10_Summe*/, (getState("0_userdata.0.Umwelt.PM10_Summe").val + getState("luftdaten.0.34499.SDS_P1").val), true);
                        setState("0_userdata.0.Umwelt.PM2_5_Anzahl"/*PM2_5_Anzahl*/, (getState("0_userdata.0.Umwelt.PM2_5_Anzahl").val + 1), true);
                        setState("0_userdata.0.Umwelt.PM2_5_Summe"/*PM2_5_Summe*/, (getState("luftdaten.0.34499.SDS_P2").val + 1), true);
                      });
                      schedule("59 23 * * *", function () {
                        setState("0_userdata.0.Umwelt.PM10_Tagesmittel"/*PM10_Tagesmittel*/, (getState("0_userdata.0.Umwelt.PM10_Summe").val / getState("0_userdata.0.Umwelt.PM10_Anzahl").val), true);
                        setState("0_userdata.0.Umwelt.PM2_5_Tagesmittel"/*PM2_5_Tagesmittel*/, (getState("0_userdata.0.Umwelt.PM2_5_Summe").val / getState("0_userdata.0.Umwelt.PM2_5_Anzahl").val), true);
                      });
                      

                      Alle diese States sind vom typ number.

                      {
                        "type": "state",
                        "common": {
                          "name": "PM2.5",
                          "type": "number",
                          "role": "value.ppm",
                          "unit": "µg/m³",
                          "read": true,
                          "write": false,
                          "custom": {
                            "history.0": {
                              "enabled": true,
                              "changesOnly": true,
                              "debounce": "1000",
                              "maxLength": "20",
                              "retention": 0,
                              "changesRelogInterval": "1800",
                              "changesMinDelta": 0,
                              "aliasId": ""
                            }
                          }
                        },
                        "native": {},
                        "from": "system.adapter.luftdaten.0",
                        "user": "system.user.admin",
                        "ts": 1577284209810,
                        "_id": "luftdaten.0.34499.SDS_P2",
                        "acl": {
                          "object": 1638,
                          "state": 1638
                        }
                      }
                      

                      muss ich trotzdem eine Konvertierung zu Zahl durchführen?

                      ? Offline
                      ? Offline
                      Ein ehemaliger Benutzer
                      schrieb am zuletzt editiert von
                      #22

                      @Homoran in diesem Thread wurde schonmal ein sehr hilfreiches Skript gebaut um Probleme rund um "wrong type of" zu finden: https://forum.iobroker.net/topic/25796/objekte-aufräumen/

                      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

                      698

                      Online

                      32.5k

                      Benutzer

                      81.6k

                      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