Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. [Gelöst] Math.round auf 2 Nachkommastellen

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    [Gelöst] Math.round auf 2 Nachkommastellen

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

      Hallo Zusammen,

      ich habe folgendes Script laufen was auch funktioniert.

      Allerdings hat es einen Schönheitsfehler, der Ausdruck in Telegram

      der Kosten in Euro hat 3 Nachkommastellen.

      z.B.

      Kosten 0.681 Euro

      Gesamt 2.434 kWh

      Wie kann ich den Ausdruck der Kosten auf 2 Nachkommastellen begrenzen?

      // Wert ENERGY_COUNTER 2433 Watt
      // Kosten 1 kWh = 0,28 Euro
      
      on({id: "hm-rpc.0.GEQ0209632.1.STATE", val: true}, function (obj) {
      
          //schedule('*/2 7-22 * * *', function () {
      
          var idgesamt = "hm-rpc.0.OEQ0947977.2.ENERGY_COUNTER";
          var gesamt = Math.round (getState (idgesamt).val)/1000;
          var kosten = Math.round ((getState (idgesamt).val)*0.28)/1000;
      
              sendTo("telegram.0", "send", {
              text: 'Kosten '+kosten+' Euro'+
              '\nGesamt '+gesamt+ ' kWh',
              disable_notification:   true
      
              });
          //});
      });
      
      // Als Ausdruck in Telegram kommt dann:
      // Kosten 0.681 Euro
      // Gesamt 2.434 kWh
      
      1 Reply Last reply Reply Quote -1
      • E
        eXTreMe last edited by

        mit ".toFixed(2)" kannst du die variable auf 2 nachkommastellen reduzieren

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

          Danke, aber wo komm das genau hin?

          Edit:

          Hab es hinbekommen.

          sendTo("telegram.0", "send", {
                  text: 'Kosten '+kosten.toFixed(2)+' Euro'+
                  '\nGesamt '+gesamt+ ' kWh',
                  disable_notification:   true
          

          Danke für die schnelle Hilfe.

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

          Support us

          ioBroker
          Community Adapters
          Donate

          1.1k
          Online

          31.7k
          Users

          79.7k
          Topics

          1.3m
          Posts

          2
          3
          2938
          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