FHEM Forum

FHEM => Frontends => Thema gestartet von: FhemPiUser am 19 Mai 2016, 21:43:22

Titel: [gelöst] Wie Tabelle mit get-FileLog-Einträgen im FHEMWEB darstellen?
Beitrag von: FhemPiUser am 19 Mai 2016, 21:43:22
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?
Titel: Antw:Wie Tabelle mit get-FileLog-Einträgen im FHEMWEB darstellen?
Beitrag von: rudolfkoenig am 20 Mai 2016, 09:37:14
Ich fuerchte, da muss man selbst was programmieren.
Entweder ein weblink, was eine Funktion aus 99_myUtils.pm aufruft, oder noch aufwendiger, als Modul
Titel: Antw:Wie Tabelle mit get-FileLog-Einträgen im FHEMWEB darstellen?
Beitrag von: FhemPiUser am 20 Mai 2016, 19:35:52
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...
Titel: Antw:[gelöst] Wie Tabelle mit get-FileLog-Einträgen im FHEMWEB darstellen?
Beitrag von: justme1968 am 20 Mai 2016, 19:44:00
list TYPE=weblink und anklicken.

gruss
  andre
Titel: Antw:[gelöst] Wie Tabelle mit get-FileLog-Einträgen im FHEMWEB darstellen?
Beitrag von: FhemPiUser am 20 Mai 2016, 20:44:57
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?
Titel: Antw:[gelöst] Wie Tabelle mit get-FileLog-Einträgen im FHEMWEB darstellen?
Beitrag von: justme1968 am 20 Mai 2016, 20:50:41
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
Titel: Antw:[gelöst] Wie Tabelle mit get-FileLog-Einträgen im FHEMWEB darstellen?
Beitrag von: FhemPiUser am 20 Mai 2016, 21:01:28
stimmt, danke  ;)