FHEM Forum

FHEM => Automatisierung => DOIF => Thema gestartet von: Damian am 23 April 2021, 22:19:32

Titel: neues Feature: uiTable mit mehreren Tabellen
Beitrag von: Damian am 23 April 2021, 22:19:32
Bisher konnte uiTable nur eine Tabelle darstellen. Das bedeutete, dass man immer die gleiche Anzahl von Spalten hatte. Wollte man innerhalb einer Tabelle zwischendurch  eine andere Anzahl von Spalten haben, dann musste man umständlich mit dem html-Attribut colspan hantieren.

Bsp1:

defmod di_newtable DOIF ##
attr di_newtable uiTable {\
  package ui_Table;;\
  $TABLE='text-align:center;;';;\
}\
icon_temp_hum_ring("temp_outside",[Aussensensor:temperature],[Aussensensor:humidity],undef,undef,130)|\
icon_ring2([Wetter:WindKm] > 0 ? "wind".",1,0,0,".[Wetter:WindrichtungGrad]:"no_wind",[Wetter:WindKm],0,50,120,0,"km/h",130,undef,1,[Wetter:WindboeenKm],0,50,120,0,"km/h",undef,1) |\
icon_ring2("weather_rain_gauge",[Wetter:RegenMm],0,10,180,270,"mm/h",130,undef,1,[Wetter:RegenGesamtMm],0,50,180,270,"mm/d",undef,1)\
\
icon_ring ("sani_solar",[Wetter:UV],0,10,200,0,"UV",0,130)|\
icon_uring ('0,1,1,6',"weather_barometric_pressure",[Wetter:LuftdruckHpa],980,1047,undef,undef,"hPa",0,130,[(1008.5,0,1018.5,270,1047,190)],",40,45,45,,45")


Man kann nun eine Tabelle beenden und eine neue beginnen. Dazu wird am Ende einer Zeile < angegeben, um dieses Verhalten zu erreichen.

Im zweiten Bespiel wird nach dem dritten Ring < angegeben, um die Tabelle zu beenden und eine neue Tabelle zu beginnen:

defmod di_newtable DOIF ##
attr di_newtable uiTable {\
  package ui_Table;;\
  $TABLE='text-align:center;;';;\
}\
icon_temp_hum_ring("temp_outside",[Aussensensor:temperature],[Aussensensor:humidity],undef,undef,130)|\
icon_ring2([Wetter:WindKm] > 0 ? "wind".",1,0,0,".[Wetter:WindrichtungGrad]:"no_wind",[Wetter:WindKm],0,50,120,0,"km/h",130,undef,1,[Wetter:WindboeenKm],0,50,120,0,"km/h",undef,1) |\
icon_ring2("weather_rain_gauge",[Wetter:RegenMm],0,10,180,270,"mm/h",130,undef,1,[Wetter:RegenGesamtMm],0,50,180,270,"mm/d",undef,1)<\
\
icon_ring ("sani_solar",[Wetter:UV],0,10,200,0,"UV",0,130)|\
icon_uring ('0,1,1,6',"weather_barometric_pressure",[Wetter:LuftdruckHpa],980,1047,undef,undef,"hPa",0,130,[(1008.5,0,1018.5,270,1047,190)],",40,45,45,,45")


Ergebnisse siehe Anhang.

Titel: Antw:neues Feature: uiTable mit mehreren Tabellen
Beitrag von: Damian am 25 April 2021, 10:38:08
Die Aufteilung einer Tabelle in mehrere Tabellenbereiche lässt sich gut anwenden. Für das folgende Layout reicht ein globales Tabellen-Style-Attribut  zum Zentrieren aller Felder und für die Aufteilung in zwei Tabellenbereiche ein <

attr di_heizung uiTable {
  package ui_Table;

  ## Alle Zellen sollen zentriert sein
  $TABLE='text-align:center;';
}

## Obere Zeile mit mehreren Ringen und Select-Widgets wird beendet mit <
icon_temp_ring("temp_outside",[vaillant:Aussentemp],-15,40)|
....
widget([vaillant:NachtSolltemp],"selectnumbers,15,1,25,1,lin","set")|icon_temp_mring("scene_night\@#3464eb",[vaillant:NachtSolltemp],undef,undef)<

## Zwei weitere Zeilen mit card-Funktionen
card([vaillant:Aussentemp:col],"Außentemperatur","temp_outside",-15,35,undef,undef,"°C",\&temp_hue)|
...
card([$SELF:diff_hwc:col],"Energie Warmwasser","sani_water_tap",0,15,120,0,"kWh",undef,1)

Titel: Antw:neues Feature: uiTable mit mehreren Tabellen
Beitrag von: Invers am 08 Juni 2021, 18:32:00
Ich finde gerade kein passenderes Thema und poste deshalb mal hier.
Im Wiki steht ein Beispiel für die Steuerung von Rollos.
Leider benötige ich die Symble oder die Schaltwerte (Prozente) in umgekehrter Reihenfolge.
Wie kann ich das erreichen?

Hier mal der Code aus dem Wiki:
defmod ui_Table_shutter DOIF ##
attr ui_Table_shutter uiTable {\
  package ui_Table;;\
}\
shutter([R_Keller:pct],"\@yellow",2)     ## zwei Symbole für 0 % und 100 %\
shutter([R_Wohnzimmer_S:pct])            ## entspricht shutter ([R_Wohnzimmer_S:pct],"\@DarkOrange",3) \
shutter([R_Wohnzimmer_W1:pct],"blue",4)  ## vier Symbole \
shutter([R_Wohnzimmer_W2:pct],"\@red",5) ## fünf Symbole\
shutter([R_Wohnzimmer_W3:pct],"red",6    ## sechs Symbole)


Danke im Voraus für die Antwort.
Titel: Antw:neues Feature: uiTable mit mehreren Tabellen
Beitrag von: Damian am 08 Juni 2021, 18:34:47
siehe: https://forum.fhem.de/index.php/topic,106059.msg1004308.html#msg1004308
Titel: Antw:neues Feature: uiTable mit mehreren Tabellen
Beitrag von: Invers am 08 Juni 2021, 19:19:03
Vielen Dank. Hat geklappt.
Titel: Antw:neues Feature: uiTable mit mehreren Tabellen
Beitrag von: Per am 06 Februar 2023, 10:12:22
Wenn ich mit < eine neue Tabelle anfange, beginnt dann auch die Zählung der Zeilen neu?
$TR{0}
$TR{1..$end}
Titel: Antw:neues Feature: uiTable mit mehreren Tabellen
Beitrag von: Damian am 06 Februar 2023, 16:16:58
Die Zählung ist über alles.
Titel: Antw:neues Feature: uiTable mit mehreren Tabellen
Beitrag von: Per am 06 Februar 2023, 16:36:36
Ist das Absicht oder ließe sich das ändern?
Neue Tabellen haben in der Regel auch neue Köpfe...
Oder gibt es andere Möglichkeiten, ohne rechnen hinzukommen? $lastrow oder sowas?
Titel: Antw:neues Feature: uiTable mit mehreren Tabellen
Beitrag von: Damian am 06 Februar 2023, 17:18:11
Zitat von: Per am 06 Februar 2023, 16:36:36
Ist das Absicht oder ließe sich das ändern?
Neue Tabellen haben in der Regel auch neue Köpfe...
Oder gibt es andere Möglichkeiten, ohne rechnen hinzukommen? $lastrow oder sowas?

Ist schwierig, da intern nur die Zeilen in uiTable gezählt werden und nicht die echten HTML-Tabellen.