NEWS

[gelöst] simples addieren mehrerer Datenpunkte


  • @paul53
    So ???

    Bildschirmfoto 2020-01-02 um 12.05.19.png


  • @Aphofis sagte):

    So ???

    Nein, für jeden Ursprungswert, der addiert werden soll.

    Blockly_temp.JPG


  • @paul53

    Dann kommt eine Ausgabe von:

    javascript.0	2020-01-02 12:20:50.008	info	(865) script.js.Dosierpumpen.Lösung_1.Tagesdosierung_Lösung_1: number
    

  • @Aphofis sagte:

    javascript.0 2020-01-02 12:20:50.008 info (865) script.js.Dosierpumpen.Lösung_1.Tagesdosierung_Lösung_1: number

    Bei allen 6 Werten ist die Ausgabe: number ? Dann ist die Wandlung nach Zahl überflüssig und die Berechnung muss stimmen.


  • @paul53
    OK! dann nehme ich nach Zahl raus!
    nunr bekomme ich jetzt im LOG eine Fehlermeldung:

    javascript.0	2020-01-02 12:29:20.015	warn	(865) at Timer.processTimers (timers.js:223:10)
    javascript.0	2020-01-02 12:29:20.014	warn	(865) at listOnTimeout (timers.js:263:5)
    javascript.0	2020-01-02 12:29:20.013	warn	(865) at tryOnTimeout (timers.js:300:5)
    javascript.0	2020-01-02 12:29:20.011	warn	(865) at ontimeout (timers.js:436:11)
    javascript.0	2020-01-02 12:29:20.010	warn	(865) at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:501:7)
    javascript.0	2020-01-02 12:29:20.009	warn	(865) at /opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:543:11
    javascript.0	2020-01-02 12:29:20.008	warn	(865) at Job.invoke (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:173:10)
    javascript.0	2020-01-02 12:29:20.007	warn	(865) at Job.nodeSchedule.scheduleJob [as job] (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1279:34)
    javascript.0	2020-01-02 12:29:20.005	warn	(865) at Object.<anonymous> (script.js.Dosierpumpen.Lösung_1.Tagesdosierung_Lösung_1:9:3)
    javascript.0	2020-01-02 12:29:20.004	warn	(865) at setState (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1364:20)
    javascript.0	2020-01-02 12:29:20.002	warn	(865) You are assigning a string to the state "Aqua_Control.0.Triton.Lösung_1.Verbrauch.Tagesdosierung" which expects a number. Please fix your code to use a number or change the state type to string.
    javascript.0	2020-01-02 12:29:10.027	warn	(865) at Timer.processTimers (timers.js:223:10)
    javascript.0	2020-01-02 12:29:10.024	warn	(865) at listOnTimeout (timers.js:263:5)
    javascript.0	2020-01-02 12:29:10.022	warn	(865) at tryOnTimeout (timers.js:300:5)
    javascript.0	2020-01-02 12:29:10.020	warn	(865) at ontimeout (timers.js:436:11)
    javascript.0	2020-01-02 12:29:10.018	warn	(865) at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:501:7)
    javascript.0	2020-01-02 12:29:10.016	warn	(865) at /opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:543:11
    javascript.0	2020-01-02 12:29:10.014	warn	(865) at Job.invoke (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:173:10)
    javascript.0	2020-01-02 12:29:10.012	warn	(865) at Job.nodeSchedule.scheduleJob [as job] (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1279:34)
    javascript.0	2020-01-02 12:29:10.010	warn	(865) at Object.<anonymous> (script.js.Dosierpumpen.Lösung_1.Tagesdosierung_Lösung_1:9:3)
    javascript.0	2020-01-02 12:29:10.007	warn	(865) at setState (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1364:20)
    javascript.0	2020-01-02 12:29:10.004	warn	(865) You are assigning a string to the state "Aqua_Control.0.Triton.Lösung_1.Verbrauch.Tagesdosierung" which expects a number. Please fix your code to use a number or change the state type to string.
    

  • @Aphofis sagte:

    im LOG eine Fehlermeldung:

    Dann ist mind. ein Ursprungswert keine Zahl, sondern ein String. Hast Du alle 6 Werte mit "Typ von" geprüft ?


  • @paul53
    in einem Datenpunkt war noch ein Standardwert drin von 3 ml der da nix verloren hat! hab ich raus gelöscht.
    Doch die Steuerung rechnet immer noch 822 ml aus.
    Alle Datenpunkte geprüft, sind alle als Zahl erstellt und auch nix drin was da nix zu suchen hat.

    Bildschirmfoto 2020-01-02 um 12.59.37.png
    Bis auf die Datenpunkt Namen ist im RAW auch nix auffällig! Sehen auch alle gleich aus.

    {
      "from": "system.adapter.admin.1",
      "user": "system.user.admin",
      "ts": 1567993302050,
      "common": {
        "name": "Lösung_1_Faktor_1",
        "role": "value",
        "type": "number",
        "desc": "Manuell erzeugt",
        "unit": "ml",
        "read": true,
        "write": true,
        "def": false
      },
      "native": {},
      "acl": {
        "object": 1632,
        "owner": "system.user.admin",
        "ownerGroup": "system.group.admins",
        "state": 1632
      },
      "_id": "Aqua_Control.0.Triton.Lösung_1.Faktoren.Lösung_1_Faktor_1",
      "type": "state"
    }
    

  • @Aphofis sagte in simples addieren mehrerer Datenpunkte:

    Sehen auch alle gleich aus.

    Das hat nichts zu bedeuten, da man so nicht sieht, ob der Wert als Zahl oder als String enthalten ist. Nur die Prüfung mit "Typ von" zeigt, was tatsächlich enthalten ist. Zur Sicherheit solltes Du auf alle 6 Werte die Wandlung "nach Zahl" ausführen.


  • @paul53
    ok i will try


  • @paul53
    Also das einsetzen bei allen 6 Datenpunkten ergab das erwünschte Ergebnis.!
    Vielen Dank

Suggested Topics

1.9k
Online

38.4k
Users

43.8k
Topics

612.3k
Posts