Seite 2 von 2
Re: Mehrere Werte in einer Zeile anzeigen
Verfasst: 11. Okt 2020 13:40
von domi1705
Rules
Code: Alles auswählen
rule "Anzeige Wetter"
when
Item localCurrentTemperature changed or
Item localCurrentHumidity changed
then
val String strTemp = if(localCurrentTemperature.state instanceof Number) String::format("%.1f °C",(localCurrentTemperature.state as Number).floatValue) else "--.- °C"
val String strHum = if(localCurrentHumidity.state instanceof Number) String::format("%.0f %",(localCurrentHumidity.state as Number).floatValue) else "-- %"
Anzeige_Wetter.postUpdate(strTemp + " / "+strHum)
end
Item
Sitemaps
Code: Alles auswählen
Frame label="Wetter" valuecolor=["red"] {
Text item=Anzeige_Wetter label="Wetter [%s]" icon="temperature"
Re: Mehrere Werte in einer Zeile anzeigen
Verfasst: 11. Okt 2020 18:36
von domi1705
Ich habe eigentlich nichts großartig geändert.. wo kann der Fehler sein?
Re: Mehrere Werte in einer Zeile anzeigen
Verfasst: 11. Okt 2020 23:06
von udo1toni
Deine Fehlermeldung passt nicht zum geposteten Code. Es ist nicht so, dass Du nicht selbst probieren sollst, den Fehler zu beseitigen, aber Du musst schon darauf achten, Fehlermeldungen und Code zusammenhängend zu halten.
Der Code sieht auf den ersten Blick gut aus, unter der Voraussetzung, dass das System neu gestartet wurde, nachdem alle Änderungen vorgenommen wurden, sollte die Rule funktionieren.
Re: Mehrere Werte in einer Zeile anzeigen
Verfasst: 14. Okt 2020 18:56
von domi1705
Code: Alles auswählen
[ntime.internal.engine.RuleEngineImpl] - Rule 'Anzeige Wetter': Conversion = '%'
Code: Alles auswählen
The value of the local variable StrTemp is not used
The value of the local variable StrHum is not used
Ja ich habe das ja bisschen geändert... trotzdem wird das angezeigt...
Re: Mehrere Werte in einer Zeile anzeigen
Verfasst: 14. Okt 2020 22:41
von peter-pan
domi1705 hat geschrieben: ↑14. Okt 2020 18:56
[ntime.internal.engine.RuleEngineImpl] - Rule 'Anzeige Wetter': Conversion = '%'
Darauf kann ich mir im Moment keinen Reim machen. Dazu fehlt es mir an den notwendigen Infos, die müsstest du vielleicht noch posten.
domi1705 hat geschrieben: ↑14. Okt 2020 18:56
The value of the local variable StrTemp is not used
The value of the local variable StrHum is not used
Diese Meldung ist nur eine Info und sagt aus, dass diese Variablen zwar in der Rule definiert, aber nicht benutzt werden. Ich habe auch weiter oben in deiner Rule gesehen, dass du die Variablen "strTemp" und "strHum" deklariert hast. Das ist anders als "StrTemp" und "StrHum". Bitte Gross-/Kleinschreibung beachten

Re: Mehrere Werte in einer Zeile anzeigen
Verfasst: 15. Okt 2020 05:59
von domi1705
Habe ich angepasst.
Leider auch das zeigt keine Änderung.
in meiner Oberfläche wird nur
angezeigt
Re: Mehrere Werte in einer Zeile anzeigen
Verfasst: 15. Okt 2020 20:35
von udo1toni
Oh Mann... Da hab ich mal wieder Tomaten auf den Augen gehabt...
Du nutzt String::format für die Humidity. Das Zeichen dafür ist ein % für die relative Luftfeuchte. % ist aber auch das Zeichen, mit dem die Variablen für die Formatierung gekennzeichnet werden (z.B. %d oder %.1f oder %s), somit muss das Zeichen ecaped werden, nämlich mit einem %. Die zweite Zeile muss also so aussehen:
Code: Alles auswählen
val String strHum = if(localCurrentHumidity.state instanceof Number) String::format("%.0f %%",(localCurrentHumidity.state as Number).floatValue) else "-- %"
/\ da...
Kleines %-Zeichen, große Wirkung...
Re: Mehrere Werte in einer Zeile anzeigen
Verfasst: 16. Okt 2020 06:24
von domi1705
Perfekt, da war der Fehler!
Jetzt noch meine Frage, wie ist denn die Rule für die Anzeige wie viele Lampen in einem Bereich an sind
Re: Mehrere Werte in einer Zeile anzeigen
Verfasst: 16. Okt 2020 08:30
von PeterA
domi1705 hat geschrieben: ↑16. Okt 2020 06:24
Perfekt, da war der Fehler!
Jetzt noch meine Frage, wie ist denn die Rule für die Anzeige wie viele Lampen in einem Bereich an sind
Hier ist ggf. gar keine Rule notwendig wenn Du eine "Zählende" Gruppe verwendest:
Code: Alles auswählen
Group:String:COUNT("ON") EingeschalteteLampen "Lampen EIN [%d]" // e.g. "2"
Re: Mehrere Werte in einer Zeile anzeigen
Verfasst: 16. Okt 2020 17:00
von udo1toni
Oder Du nutzt
Alle Switch Items, welche in der Gruppe Lampen Mitglied sind und den Zustand ON haben, werden hierbei gezählt. Die Gruppe selbst hat aber entweder den Zustand ON oder OFF (ON, sobald ein Item den Zustand ON hat)