FHEM Forum

FHEM => Frontends => TabletUI => Thema gestartet von: killah78 am 17 Juni 2020, 08:40:12

Titel: data-factor bei label-widget
Beitrag von: killah78 am 17 Juni 2020, 08:40:12
Hi,
ich würde gerne einen Wert, den ich als Label ausgebe mit einem Faktor "0.001" (kW anstatt W) ausgeben.
Leider scheint FTUI von data-factor absolut unbeeindruckt.
Was kann das sein?

So sieht das im Detail aus:
<div class="col-1-5">
<div data-type="label"
data-device="du_Solar"
data-get="ZZZ_Hausverbrauch_today"
data-factor="0.001"
class="cell tall">
</div>
<div data-type="label" class="top-narrow">Hausverbrauch heute kWh
</div>
</div>


Gruss
killah78
Titel: Antw:data-factor bei label-widget
Beitrag von: amenomade am 17 Juni 2020, 19:26:41
Was enthält genau [du_Solar:ZZZ_Hausverbrauch_today] ?
Wenn nicht numerisch (z.B. weil Einheit im Reading), geht es nicht.
Titel: Antw:data-factor bei label-widget
Beitrag von: killah78 am 22 Juni 2020, 12:03:32
Hallo amenomade,
im Reading steht "5926.53". Also Wert mit Punkt. Ist der Punkt vielleicht das Problem?
Titel: Antw:data-factor bei label-widget
Beitrag von: amenomade am 22 Juni 2020, 18:19:48
Habe gerade den Test gemacht: dummy definiert:
Internals:
   CFGFN     
   FUUID      5ef0d8b0-f33f-fe91-6b72-67732e79a121feb7
   NAME       du_Solar
   NR         172
   STATE      ???
   TYPE       dummy
   .attraggr:
   .attrminint:
   READINGS:
     2020-06-22 18:14:06   ZZZ_Hausverbrauch_today 5926.53
Attributes:


Und folgendes in FTUI hinzugefügt:
           <div data-type="label"
data-device="du_Solar"
data-get="ZZZ_Hausverbrauch_today"
data-factor="0.001"
class="cell tall">
          </div>


Und es geht. Siehe Bild.

Kannst Du ein "list du_Solar" bitte liefern?


Titel: Antw:data-factor bei label-widget
Beitrag von: killah78 am 28 Juni 2020, 17:36:24
Hallo amenomade,
sorry für die Verzögerungen, bin derzeit nur wenig am Rechner.

Hier ein List vom du_Solar. Es handelt sich um ein Dummy Device, welches von anderen Devices per userReadings die Werte sammelt.
Ich habe mal andere Werte rausgeschmissen, damit es übersichtlicher ist.

Danke für deine Hilfe.

Internals:
   FUUID      5edfcb80-f33f-86d0-6c37-ba7d5aee1a94848d
   NAME       du_Solar
   NR         819
   STATE      load
   TYPE       dummy
   READINGS:
     2020-06-28 17:30:00   ZZZ_Hausverbrauch_today 10429.49
     2020-06-28 17:30:00   state           load
Attributes:
   room       Photovoltaik
   userReadings ZZZ_Hausverbrauch_today { my $v1 = ReadingsVal($NAME,"statZZZ_Yield_Total",0) =~ m/Day:\s([\d\.]+)/ ? $1 : "0"; my $v2 = ReadingsVal($NAME,"statKSEM_Active_Energy_total_N_Wh",0) =~ m/Day:\s([\d\.]+)/ ? $1 : "0"; my $v3 = ReadingsVal($NAME,"statKSEM_Active_Energy_total_P_Wh",0) =~ m/Day:\s([\d\.]+)/ ? $1 : "0"; my $v9 = $v1 - $v2 + $v3; $v9}
Titel: Antw:data-factor bei label-widget
Beitrag von: amenomade am 28 Juni 2020, 18:26:16
Na dann sollte es gehen. Wie alt ist dein widget_label.js ?

Titel: Antw:data-factor bei label-widget
Beitrag von: killah78 am 28 Juni 2020, 20:05:35
Gute Frage, wo sehe ich das? Ich habe aber mal reingeschaut und sehe nicht mit "factor".
Wie kann ich das updaten?
Titel: Antw:data-factor bei label-widget
Beitrag von: amenomade am 28 Juni 2020, 20:16:04
https://wiki.fhem.de/wiki/FHEM_Tablet_UI#Update

            val = me.substitution(val, elem.data('substitution'));
            val = me.map(elem.data('map-get'), val, val);
            //val = me.round(val, elem.data('round'));
            //val = formatValue(elem, val);
            val = me.factor(val, elem.data('factor'));   /* hier ist es (u.a.)*/
            val = me.fix(val, elem.data('fix'));
            val = elem.data('pre-text') + val + elem.data('post-text');
Titel: Antw:data-factor bei label-widget
Beitrag von: killah78 am 28 Juni 2020, 21:50:16
Ja das war es. Nach dem Update funktioniert es prima.
Danke für die Hilfe.
Titel: Antw:data-factor bei label-widget
Beitrag von: brucky@freenet.de am 17 April 2021, 22:23:42
Hallo Zusammen,

ich würde gerne meinen Wert von Label-Widget negieren, ich dachte es müsste einfach mit data-factor="-1" funktionieren. Leider geht das aber nicht.

Weiß zufällig jemand eine Lösung?

Danke,
Simon
Titel: Antw:data-factor bei label-widget
Beitrag von: brucky@freenet.de am 26 April 2021, 22:36:32
Hallo Zusammen,

ich habs gefunden.... die Javascript funktion hinter dem "data-Factor" ist auf ">=0" begrenzt. Warum das so ist, weiß ich nicht, ich habe es nun auf ">=-1 geändert und schon wird negiert.
Wer das bei sich ändern will, muss in der Datei /opt/fhem/www/tablet/js/fhem-tablet-ui.js  nach der Zeile "return ($.isNumeric(value) && fac >= 0) ? Number(value) * fac : value;" suchen und sie auf "return ($.isNumeric(value) && fac >= -1) ? Number(value) * fac : value;" ändern.

Viele Grüße,
Simon