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. Error/Bug
  4. Funktion formatValue in Beschriftung

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    16
    1
    1.6k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    849

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.1k

Funktion formatValue in Beschriftung

Geplant Angeheftet Gesperrt Verschoben Ungelöst Error/Bug
bug iobroker
12 Beiträge 4 Kommentatoren 1.1k Aufrufe 3 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.
  • B Offline
    B Offline
    BitCoder
    schrieb am zuletzt editiert von
    #1
    Systemdata Bitte Ausfüllen
    Hardwaresystem: Pi4
    Arbeitsspeicher: 8GB
    Festplattenart: SD-Karte
    Betriebssystem: Ubuntu/Windows/Mac
    Node-Version: 12.20.0
    Nodejs-Version: 12.20.0
    NPM-Version: 6.14.8
    Installationsart: Skript/Manuell
    Image genutzt: Nein
    Ort/Name der Imagedatei: Link

    Hallo
    Ich versuche den Temperaturwert mit einer permanenten Nachkommastelle in einem Beschriftungsstring zu formatieren. Kein Erfolg so weit. Andere Funktionen wie min(30) oder *(2) gehen problemlos.

    Hier der Beschriftungsstring:
    {hm-rpc.0.KEQ0579377.4.ACTUAL_TEMPERATURE;formatValue('#.0');} °C

    Eine Idee warum das nicht klappt oder ist es ein Bug?

    Gruß
    Tom

    paul53P 1 Antwort Letzte Antwort
    0
    • B BitCoder
      Systemdata Bitte Ausfüllen
      Hardwaresystem: Pi4
      Arbeitsspeicher: 8GB
      Festplattenart: SD-Karte
      Betriebssystem: Ubuntu/Windows/Mac
      Node-Version: 12.20.0
      Nodejs-Version: 12.20.0
      NPM-Version: 6.14.8
      Installationsart: Skript/Manuell
      Image genutzt: Nein
      Ort/Name der Imagedatei: Link

      Hallo
      Ich versuche den Temperaturwert mit einer permanenten Nachkommastelle in einem Beschriftungsstring zu formatieren. Kein Erfolg so weit. Andere Funktionen wie min(30) oder *(2) gehen problemlos.

      Hier der Beschriftungsstring:
      {hm-rpc.0.KEQ0579377.4.ACTUAL_TEMPERATURE;formatValue('#.0');} °C

      Eine Idee warum das nicht klappt oder ist es ein Bug?

      Gruß
      Tom

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

      @BitCoder sagte:

      mit einer permanenten Nachkommastelle in einem Beschriftungsstring

      val.toFixed(1) // Zahl in String mit einer Nachkommastelle
      

      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

      B 1 Antwort Letzte Antwort
      0
      • paul53P paul53

        @BitCoder sagte:

        mit einer permanenten Nachkommastelle in einem Beschriftungsstring

        val.toFixed(1) // Zahl in String mit einer Nachkommastelle
        
        B Offline
        B Offline
        BitCoder
        schrieb am zuletzt editiert von
        #3

        @paul53
        Danke für die rasche Antwort. Ich bin zu blöd und verstehe deine Lösung nicht. Wie muss ich den String in der Beschriftung anpassen, dass es funktioniert?
        Im Moment sieht der Beschrifungsstring so aus:

        {hm-rpc.0.KEQ0579377.4.ACTUAL_TEMPERATURE} °C

        chrome_8pcdW2kZWu.png

        wo kommt nun das val.toFixed(0) hin?

        Gruss
        Tom

        paul53P liv-in-skyL 2 Antworten Letzte Antwort
        0
        • B BitCoder

          @paul53
          Danke für die rasche Antwort. Ich bin zu blöd und verstehe deine Lösung nicht. Wie muss ich den String in der Beschriftung anpassen, dass es funktioniert?
          Im Moment sieht der Beschrifungsstring so aus:

          {hm-rpc.0.KEQ0579377.4.ACTUAL_TEMPERATURE} °C

          chrome_8pcdW2kZWu.png

          wo kommt nun das val.toFixed(0) hin?

          Gruss
          Tom

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

          @BitCoder sagte:

          wo kommt nun das val.toFixed(0) hin?

          Mit Vis kenne ich mich leider nicht aus.

          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

          1 Antwort Letzte Antwort
          0
          • B BitCoder

            @paul53
            Danke für die rasche Antwort. Ich bin zu blöd und verstehe deine Lösung nicht. Wie muss ich den String in der Beschriftung anpassen, dass es funktioniert?
            Im Moment sieht der Beschrifungsstring so aus:

            {hm-rpc.0.KEQ0579377.4.ACTUAL_TEMPERATURE} °C

            chrome_8pcdW2kZWu.png

            wo kommt nun das val.toFixed(0) hin?

            Gruss
            Tom

            liv-in-skyL Offline
            liv-in-skyL Offline
            liv-in-sky
            schrieb am zuletzt editiert von
            #5

            @BitCoder

            habe es mit einem html widget probiert

            {vart:controll-own.0.AAATEST.TestString1; vart=Number(Math.round(vart*100)/100)}
            

            Image 1.png

            rundet einen teststring auf 2 stellen nach dem komma

            nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

            ice987I 1 Antwort Letzte Antwort
            0
            • liv-in-skyL liv-in-sky

              @BitCoder

              habe es mit einem html widget probiert

              {vart:controll-own.0.AAATEST.TestString1; vart=Number(Math.round(vart*100)/100)}
              

              Image 1.png

              rundet einen teststring auf 2 stellen nach dem komma

              ice987I Offline
              ice987I Offline
              ice987
              schrieb am zuletzt editiert von ice987
              #6

              @liv-in-sky sagte in Funktion formatValue in Beschriftung:

              {vart:controll-own.0.AAATEST.TestString1; vart=Number(Math.round(vart*10)/10)} -> modifiziert

              dies hatte ich bereits in einem anderen Bezug versucht, die Ausgabe ist jedoch bei mehreren Nachkommastellen von vart x.x was funktioniert. Ist vart aber eine Zahl ohne Komastelle (z.b. 6), kommt als Ergebnis 6 statt 6.0 raus.

              @BitCoder möchte jedoch

              (...) einer permanenten Nachkommastelle (...)

              husqvarna-automower, meteoblue, wiserbyfeller, spritmonitor

              paul53P 1 Antwort Letzte Antwort
              0
              • ice987I ice987

                @liv-in-sky sagte in Funktion formatValue in Beschriftung:

                {vart:controll-own.0.AAATEST.TestString1; vart=Number(Math.round(vart*10)/10)} -> modifiziert

                dies hatte ich bereits in einem anderen Bezug versucht, die Ausgabe ist jedoch bei mehreren Nachkommastellen von vart x.x was funktioniert. Ist vart aber eine Zahl ohne Komastelle (z.b. 6), kommt als Ergebnis 6 statt 6.0 raus.

                @BitCoder möchte jedoch

                (...) einer permanenten Nachkommastelle (...)

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

                @ice987 sagte:

                Zahl ohne Komastelle (z.b. 6), kommt als Ergebnis 6 statt 6.0 raus.

                Das ist generell bei Zahlen so. Eine permanente Nachkommastelle kann nur ein String darstellen. In Javascript gibt es dafür zahl.toFixed(1):

                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

                1 Antwort Letzte Antwort
                0
                • liv-in-skyL Offline
                  liv-in-skyL Offline
                  liv-in-sky
                  schrieb am zuletzt editiert von liv-in-sky
                  #8

                  das funktioniert bei mir

                  mit 6 =6.00
                  oder 6.4445 = 6.45

                  {v:controll-own.0.AAATEST.TestString1;(v/1).toFixed(2)}
                  

                  nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                  ice987I paul53P 2 Antworten Letzte Antwort
                  0
                  • liv-in-skyL liv-in-sky

                    das funktioniert bei mir

                    mit 6 =6.00
                    oder 6.4445 = 6.45

                    {v:controll-own.0.AAATEST.TestString1;(v/1).toFixed(2)}
                    
                    ice987I Offline
                    ice987I Offline
                    ice987
                    schrieb am zuletzt editiert von ice987
                    #9

                    @liv-in-sky

                    das funktioniert!

                    v = 6: ergibt Ausgabe: 6.0
                    v = 6.123: ergibt Ausgabe: 6.1

                    Vielen Dank!

                    husqvarna-automower, meteoblue, wiserbyfeller, spritmonitor

                    liv-in-skyL 1 Antwort Letzte Antwort
                    0
                    • ice987I ice987

                      @liv-in-sky

                      das funktioniert!

                      v = 6: ergibt Ausgabe: 6.0
                      v = 6.123: ergibt Ausgabe: 6.1

                      Vielen Dank!

                      liv-in-skyL Offline
                      liv-in-skyL Offline
                      liv-in-sky
                      schrieb am zuletzt editiert von
                      #10

                      @ice987 gerne

                      https://forum.iobroker.net/post/247433

                      nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                      1 Antwort Letzte Antwort
                      0
                      • liv-in-skyL liv-in-sky

                        das funktioniert bei mir

                        mit 6 =6.00
                        oder 6.4445 = 6.45

                        {v:controll-own.0.AAATEST.TestString1;(v/1).toFixed(2)}
                        
                        paul53P Offline
                        paul53P Offline
                        paul53
                        schrieb am zuletzt editiert von paul53
                        #11

                        @liv-in-sky
                        Damit es klarer ist, würde ich es so verwenden:

                        {val:hm-rpc.0.KEQ0579377.4.ACTUAL_TEMPERATURE;Number(val).toFixed(1)} °C
                        

                        Dass die Division durch 1 in eine Zahl wandelt, ist nicht für jeden gleich ersichtlich.
                        Anstelle von Number() kann auch parseFloat() verwendet 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

                        B 1 Antwort Letzte Antwort
                        2
                        • paul53P paul53

                          @liv-in-sky
                          Damit es klarer ist, würde ich es so verwenden:

                          {val:hm-rpc.0.KEQ0579377.4.ACTUAL_TEMPERATURE;Number(val).toFixed(1)} °C
                          

                          Dass die Division durch 1 in eine Zahl wandelt, ist nicht für jeden gleich ersichtlich.
                          Anstelle von Number() kann auch parseFloat() verwendet werden.

                          B Offline
                          B Offline
                          BitCoder
                          schrieb am zuletzt editiert von
                          #12

                          Jetzt bin ich überwältigt, wie viele sich beteiligt haben, sich der Sache anzunehmen.
                          Die Variante von paul53 gefällt mir persönlich am besten. Das mit der Division war mir nicht klar, bis du das mit dem Cast erklärt hast.
                          Besten Dank. Es funktioniert jetzt so, wie ich mir das vorgestellt habe.

                          Trotzdem ist die Geschichte mit der Funktion formatValue(decimals) nicht gelöst. So wie es in der Dokumentation beschrieben ist, funktioniert es meines Erachtens nicht.

                          Gruss an alle Helfer
                          Tom

                          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

                          753

                          Online

                          32.6k

                          Benutzer

                          82.1k

                          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