Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Error/Bug
    4. rechnen im html-Widget geht nicht mehr

    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

    rechnen im html-Widget geht nicht mehr

    This topic has been deleted. Only users with topic management privileges can see it.
    • bahnuhr
      bahnuhr Forum Testing Most Active @OliverIO last edited by

      @oliverio sagte in rechnen im html-Widget geht nicht mehr:

      parseInt() oder parseFloat()

      Er zeigt immer 0

      parseInt und parseFloat hab ich alles schon probiert: klappt nicht.

      OliverIO 1 Reply Last reply Reply Quote 0
      • OliverIO
        OliverIO @bahnuhr last edited by

        @bahnuhr

        dann bitte mal in einem html widget einen datenpunkt anhand folgendem schema eintragen und das ergebnis hier zeigen

        {val1:0_userdata.0.test.test1;typeof val1}
        {val1:0_userdata.0.test.test1;val1}
        
        
        bahnuhr 1 Reply Last reply Reply Quote 0
        • bahnuhr
          bahnuhr Forum Testing Most Active @OliverIO last edited by

          @oliverio sagte in rechnen im html-Widget geht nicht mehr:

          {val1:0_userdata.0.test.test1;typeof val1} {val1:0_userdata.0.test.test1;val1}

          Dieses:

          {v1:javascript.0.Geräte.Photovoltaik.Auswertung.Monat.Haus_Verbrauch_aufgelaufen;typeof v1}
          {v1:javascript.0.Geräte.Photovoltaik.Auswertung.Monat.Haus_Verbrauch_aufgelaufen;v1}
          {v2:javascript.0.Geräte.Photovoltaik.Auswertung.Monat.Leistung_alt_aufgelaufen;typeof v2}
          {v2:javascript.0.Geräte.Photovoltaik.Auswertung.Monat.Leistung_alt_aufgelaufen;v2}
          

          liefert dies:
          a4b132e7-bf21-4fd3-9d81-69769e8d61bf-image.png

          Nur rechnen geht nicht.

          1 Reply Last reply Reply Quote 0
          • bahnuhr
            bahnuhr Forum Testing Most Active last edited by

            @oliverIO

            Und dies:

            {v1:javascript.0.Geräte.Photovoltaik.Auswertung.Monat.Haus_Verbrauch_aufgelaufen;v2:javascript.0.Geräte.Photovoltaik.Auswertung.Monat.Leistung_alt_aufgelaufen;parseInt(v1)+parseInt(v2)}
            

            liefert:
            0f113a72-14ee-4b26-b5d6-187d3644c68f-image.png

            1 Reply Last reply Reply Quote 0
            • bahnuhr
              bahnuhr Forum Testing Most Active last edited by bahnuhr

              @OliverIO

              Jetzt kommst ganz dicke.

              Habe mal das ganze probiert in userdata.
              Da funktioniert es !!!

              Warum geht das nicht mehr mit Variablen/DP in javascript.0.

              @apollon77
              @Homoran

              Könnt ihr dies mal nachstellen.
              Ist das ein bewusster bug in javascript.0 ?

              1 Reply Last reply Reply Quote 0
              • bahnuhr
                bahnuhr Forum Testing Most Active last edited by

                So, unter javascript.0 geht es auch.

                Aber nicht mit meinen o.g. DP.
                Offensichtlich stören die Umlaute !!!

                Kann das jemand bestätigen.

                Hatte eigentlich mit den Umlauten bisher keine Probleme.
                Nur halt jetzt.

                OliverIO 1 Reply Last reply Reply Quote 0
                • OliverIO
                  OliverIO @bahnuhr last edited by

                  @bahnuhr

                  also normal funktioniert es
                  9451d463-be69-42e4-82de-dd0526c85af3-image.png

                  mit umlaut funktioniert es nicht
                  c24d7c6f-f5c8-4321-96e1-668cae4b5aa4-image.png

                  gibts auch schon ein issue
                  https://github.com/ioBroker/ioBroker.vis/issues/423

                  liv-in-sky created this issue in ioBroker/ioBroker.vis

                  open binding formel hat umlaut problem #423

                  bahnuhr 1 Reply Last reply Reply Quote 1
                  • bahnuhr
                    bahnuhr Forum Testing Most Active @OliverIO last edited by

                    @oliverio sagte in rechnen im html-Widget geht nicht mehr:

                    gibts auch schon ein issue

                    Und dieses ist schon fast 2 Jahre alt.
                    Folglich wird sich da nix mehr tun.
                    Schade

                    liv-in-sky 2 Replies Last reply Reply Quote 0
                    • liv-in-sky
                      liv-in-sky @bahnuhr last edited by

                      @bahnuhr vis1 wird nicht mehr gepflegt - soweit ich weiß

                      1 Reply Last reply Reply Quote 0
                      • liv-in-sky
                        liv-in-sky @bahnuhr last edited by

                        @bahnuhr

                        ich glaube, ich hatte auch mal das problem, das die dp nur unter userdata funktionierten - irgendwas war da - ist zu lange her 😞

                        bahnuhr Homoran 2 Replies Last reply Reply Quote 0
                        • bahnuhr
                          bahnuhr Forum Testing Most Active @liv-in-sky last edited by

                          @liv-in-sky

                          Hast du auch schon vis2 drauf ?
                          Läuft das jetzt zufriedenstellend ?

                          liv-in-sky 1 Reply Last reply Reply Quote 0
                          • liv-in-sky
                            liv-in-sky @bahnuhr last edited by

                            @bahnuhr nee - da brauch ich wohl urlaub - um mich da einzuarbeiten - auch die inventwo widgets funktionieren noch nicht richtig - die brauch ich
                            was ich im mometn in der vis1 brauche läuft - große änderungen mach ich da im moment nicht

                            vielleicht nächstes jahr

                            bahnuhr 1 Reply Last reply Reply Quote 0
                            • bahnuhr
                              bahnuhr Forum Testing Most Active @liv-in-sky last edited by

                              @liv-in-sky
                              sehe ich ähnlich.
                              Hatte mal am Anfang von vis2 diese drauf.
                              War aber schnell wieder deinstalliert (es klappte zu wenig).

                              Und seitdem bleib ich erst einmal bei vis 1

                              liv-in-sky 1 Reply Last reply Reply Quote 0
                              • liv-in-sky
                                liv-in-sky @bahnuhr last edited by

                                @bahnuhr

                                genau so bei mir - zusätzlich hatte die vis2 dann den fehler meine daten unter iobroker folder auf über 1 GB zu erhöhen - da war wohl ein fehler - also wieder deinstalliert 🙂

                                1 Reply Last reply Reply Quote 0
                                • Homoran
                                  Homoran Global Moderator Administrators @liv-in-sky last edited by Homoran

                                  @liv-in-sky sagte in rechnen im html-Widget geht nicht mehr:

                                  @bahnuhr

                                  ich glaube, ich hatte auch mal das problem, das die dp nur unter userdata funktionierten - irgendwas war da - ist zu lange her 😞

                                  da war was!
                                  war das mit dem maps-widget mit eigenen Koordinaten?
                                  das ging aber nur in js, nicht in userdata, glaube ich...
                                  ...zu lange her

                                  liv-in-sky 1 Reply Last reply Reply Quote 0
                                  • liv-in-sky
                                    liv-in-sky @Homoran last edited by

                                    @homoran ja genau - du hast recht - es war mit dem maps widget - respect - brain-leistung 🙂

                                    1 Reply Last reply Reply Quote 0
                                    • OliverIO
                                      OliverIO last edited by OliverIO

                                      Ich habe einen fix für das umlaut/raute-Zeichen Problem für vis
                                      welches aber man zuvor erst mal noch testen sollte, da man für den test manuell in den vis dateien eine zeile ändern muss

                                      verwendet habe ich vis version 1.4.16
                                      die folgenden Anweisungen gelten nur für diese version

                                      geändert werden muss die Datei:
                                      /op/iobroker/node_modules/iobroker.vis/www/js/visUtils.js

                                      in Zeile 107 sollte genau so aussehen:

                                      if (parts[u].trim().match(/^[\w_]+:\s?[-.\w_]+$/)) {//parts[u].includes(':') && !parts[u].includes('::')) {
                                      

                                      diese muss gegen die folgende Zeile ersetzt werden

                                      if (parts[u].trim().match(/^[\d\w_]+:\s?[._\-\/ :!#$%&()+=@^{}|~\p{Ll}\p{Lu}\p{Nd}]+$/u)) {//parts[u].indexOf(':') !== -1 && parts[u].indexOf('::') === -1) {
                                      

                                      Dann ist vis auch in der Lage bindings mit Datenpunkten zu erkennen, welche auch die Zeichen #öäüÖÄÜ enthalten. Die ergänzten Zeichen sind der einzige Unterschied zwischen den beiden Zeilen. Dadurch wird das regex erweitert, so das er auch diese Zeichen noch akzeptiert, die er vorher nicht akzeptiert hat.

                                      Da vis nicht immer so optimal programmiert wurde und grundlegendere reengineerings auch nicht mehr gemacht werden, sollte man soche Änderungen ausführlich auf Seiteneffekte untersuchen, die so nicht absehbar sind.

                                      Daher, wer eine iobroker Testinstanz hat, kann das mal mit einer umfangreicheren Visualisierung mal testen.
                                      Wer die bisherige Zeile nur mit // am Anfang auskommentiert und die neue Zeile einfach nur darunter kopiert, kann auch den ursprünglichen Zustand wieder herstellen, ohne den vis adapter neu zu installieren.

                                      Wenn die Änderung vorgenommen wurde,
                                      muss man zwingend noch den folgenden Befehl auf der Konsole ausführen:

                                      iobroker upload all
                                      

                                      Ich bin gespannt auf die Ergebnisse.
                                      Wenn das erfolgreich verläuft, würde ich auch ein PR einreichen.
                                      Leider ist, wegen vis-2 der vis-Adapter nicht mehr in dem Zustand, das man da einen PR einreichen kann. Aber das klären wir dannach.

                                      Nachtrag: Das Regex wurde nochmal angepasst um alle gültigen Zeichen für einen Datenpunkt mit einzuschließen

                                      bahnuhr OliverIO 3 Replies Last reply Reply Quote 3
                                      • bahnuhr
                                        bahnuhr Forum Testing Most Active @OliverIO last edited by

                                        @oliverio
                                        Hallo,

                                        du schreibst die Zeile 107 sieht so aus:

                                        if (parts[u].trim().match(/^[\w_]+:\s?[-.\w_]+$/)) {//parts[u].includes(':') && !parts[u].includes('::')) {
                                        

                                        Habe auch 1.4.16.
                                        Bei mir sieht die 107 aber so aus:

                                        if (parts[u].trim().match(/^[\d\w_]+:\s?[-.\d\w_]+$/)) {//parts[u].indexOf(':') !== -1 && parts[u].indexOf('::') === -1) {
                                        

                                        Kann ich trotzdem deine Zeile nehmen ?

                                        1 Reply Last reply Reply Quote 0
                                        • bahnuhr
                                          bahnuhr Forum Testing Most Active @OliverIO last edited by

                                          @oliverio
                                          so ausprobiert.
                                          Habe den neue Zeile eingefügt und upload gemacht.
                                          Dann im html Widget:

                                          {v1:javascript.0.Geräte.Photovoltaik.Auswertung.Monat.Haus_Verbrauch_aufgelaufen;parseInt(v1)}<br>
                                          {v2:javascript.0.Geräte.Photovoltaik.Auswertung.Monat.Meter_bezogen_aufgelaufen;parseInt(v2)}<br>
                                          {v1:javascript.0.Geräte.Photovoltaik.Auswertung.Monat.Haus_Verbrauch_aufgelaufen;v2:javascript.0.Geräte.Photovoltaik.Auswertung.Monat.Meter_bezogen_aufgelaufen;parseInt(v1)+parseInt(v2)}
                                          

                                          Als Ergebnis kommt wieder 0 bei der Berechnung:
                                          80cbf16a-cd58-4a39-98ff-58f70070d6c6-image.png

                                          Fazit:
                                          Bei hat es noch nicht geklappt !

                                          OliverIO 1 Reply Last reply Reply Quote 0
                                          • OliverIO
                                            OliverIO @bahnuhr last edited by

                                            @bahnuhr

                                            kannst du bitte mal folgendes überprüfen:

                                            mit F12 in die Browser developer Tools gehen
                                            dann den Sources/Quellen-Tab dort anwählen und die Datei visUtil.js
                                            gemäß dem folgenden Pfad auswählen und in die Zeile 107 schauen

                                            Wenn dort die veränderte Zeile sichtbar ist. dann muss ich weiterschauen.
                                            wenn nicht, dann nochmal iobroker upload all machen bzw. iobroker komplett neu starten. Dann ist diese Zeile dort nicht angekommen.
                                            d559cd38-e9bf-44cc-a32a-d8e2e5fe4569-image.png

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            915
                                            Online

                                            31.8k
                                            Users

                                            80.0k
                                            Topics

                                            1.3m
                                            Posts

                                            binding rechnen widget
                                            5
                                            30
                                            1320
                                            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