Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. [gelöst] simples addieren mehrerer Datenpunkte

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    [gelöst] simples addieren mehrerer Datenpunkte

    This topic has been deleted. Only users with topic management privileges can see it.
    • paul53
      paul53 @Aphofis last edited by paul53

      @Aphofis
      Wenn die Datenpunkte keine Zahlen enthalten, muss die Wandlung nach Zahl für jeden Wert erfolgen. Du verkettest erst 2 Strings und wandelst dann das Ergebnis in eine Zahl, was keine Addition ist.

      Aphofis 1 Reply Last reply Reply Quote 1
      • Aphofis
        Aphofis @paul53 last edited by Aphofis

        @paul53
        Dei Datenpunkte sind als Zahl deklariert.
        wie werden denn dann die datenpunkte zusammengerechnet wenn nicht addieren?

        Bildschirmfoto 2020-01-02 um 11.59.20.png

        Da macht die steuerung dann 822 ml draus.

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

          @Aphofis sagte in:

          Dei Datenpunkte sind als Zahl deklariert.

          Das bedeutet nicht, dass sie auch wirklich eine Zahl enthalten. Prüfe es durch

          debug output Typ von Wert von Objekt ...
          
          Aphofis 1 Reply Last reply Reply Quote 0
          • Aphofis
            Aphofis @paul53 last edited by

            @paul53
            So ???

            Bildschirmfoto 2020-01-02 um 12.05.19.png

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

              @Aphofis sagte):

              So ???

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

              Blockly_temp.JPG

              Aphofis 1 Reply Last reply Reply Quote 1
              • Aphofis
                Aphofis @paul53 last edited by

                @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
                
                paul53 1 Reply Last reply Reply Quote 0
                • paul53
                  paul53 @Aphofis last edited by paul53

                  @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.

                  Aphofis 1 Reply Last reply Reply Quote 1
                  • Aphofis
                    Aphofis @paul53 last edited by

                    @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.
                    
                    paul53 1 Reply Last reply Reply Quote 0
                    • paul53
                      paul53 @Aphofis last edited by paul53

                      @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 ?

                      Aphofis 1 Reply Last reply Reply Quote 1
                      • Aphofis
                        Aphofis @paul53 last edited by Aphofis

                        @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"
                        }
                        
                        paul53 1 Reply Last reply Reply Quote 0
                        • paul53
                          paul53 @Aphofis last edited by

                          @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.

                          Aphofis 2 Replies Last reply Reply Quote 1
                          • Aphofis
                            Aphofis @paul53 last edited by

                            @paul53
                            ok i will try

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

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

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

                              Support us

                              ioBroker
                              Community Adapters
                              Donate

                              732
                              Online

                              31.9k
                              Users

                              80.3k
                              Topics

                              1.3m
                              Posts

                              blockly
                              2
                              14
                              3884
                              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