[gelöst] Wie Tabelle mit get-FileLog-Einträgen im FHEMWEB darstellen?

Begonnen von FhemPiUser, 19 Mai 2016, 21:43:22

Vorheriges Thema - Nächstes Thema

FhemPiUser

Hallo,

ich möchte gerne die FileLog-Monats-Gasverbrauchswerte von diesem und letzten Jahr als Tabelle im FHEMWEB-Frontend anzeigen.

Man kann die Werte auslesen mit

get FileLog_CUL_EM_9_gesamt CURRENT - 2016-01-01 2016-12-31 5:CUL_EM_9.cum_month\x3a::

Hat jemand eine Idee, wie ich die als Tabelle im FHEMWEB anzeigen kann?

rudolfkoenig

Ich fuerchte, da muss man selbst was programmieren.
Entweder ein weblink, was eine Funktion aus 99_myUtils.pm aufruft, oder noch aufwendiger, als Modul

FhemPiUser

#2
Hi Rudolf,

vielen Dank, habs jetzt wie folgt gelöst, um eine Tabelle der Verbräuche dieses und letztes Jahr zu erhalten:

define wl_gas weblink htmlCode { &printGasverbrauch() }
sub printGasverbrauch() {

  my $year = 1900 + (localtime)[5];
  my $result="";

  my $resultLast="";
  my $yearLast=$year-1;

  my $count=1;
  my %mons = ("1"=>'Jan',"2"=>'Feb',"3"=>'Mar',"4"=>'Apr',"5"=>'May',"6"=>'Jun',"7"=>'Jul',"8"=>'Aug',"9"=>'Sep',"10"=>'Oct',"11"=>'Nov',"12"=>'Dec');

  my $header="<table><tr><td><b>Monat</b></td><td><b>$yearLast</b></td><td><b>$year</b></td></tr>";

  $result=fhem("get FileLog_CUL_EM_9_gesamt CURRENT - $year-01-01 $year-12-31 5:CUL_EM_9.cum_month\\x3a::");
  $resultLast=fhem("get FileLog_CUL_EM_9_gesamt CURRENT - $yearLast-01-01 $yearLast-12-31 5:CUL_EM_9.cum_month\\x3a::");

  my @lines = split(/\n/, $result);
  my @linesLast = split(/\n/, $resultLast);
  pop @lines;  pop @linesLast;
  foreach my $line (@linesLast) {
    $line = sprintf("<tr><td>%s</td><td>%s</td><td>%s</td></tr>",$mons{$count},substr($linesLast[$count-1],20),substr($lines[$count-1],20));
    $count++;
  }
  $result = join('', @linesLast);
 
  return $header.$result."</table>";
}


Frage mich nur, wie ich den den Detaildialog für den weblink reinkomme, wenn ich im room bin, da es keinen Link gibt...

justme1968

hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

FhemPiUser

ahh, danke!

Aber es gibt keine Möglichkeit (z.B. attr für weblink) über der dem weblink bzw. der Tabelle im room einen Link zur Detailansicht zu platzieren, richtig?

justme1968

nein. das geht nicht.

aber wenn du den html code sowieso selber erzeugst kannst du dir doch auch einen solchen link über die tabelle mit einbauen.

gruss
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968