[GELÖST] Windgeschwindigkeit ohne Nachkommastelle

Begonnen von l05443, 24 Dezember 2016, 15:55:36

Vorheriges Thema - Nächstes Thema

l05443

Hallo,

ich möchte in meinem Proplanta device den Wind ohne Komma. Habe dafür die userReadings genutzt. Meine Idee war:

wind { my $wind = round($wind,0)}

Bekomme aber Fehler:

Error evaluating Ingolstadt.Aktuell userReading wind: Global symbol "$wind" requires explicit package name (did you forget to declare "my $wind"?) at (eval 2460) line 1.


Kann mir jmd. helfen?


Grüße und Frohe Weihnacht :-)

Martin

CoolTux

Du musst das Reading wind einlesen. Das ist Dein $wind in den runden Klammern. Da muss stattdessen ReadingsVal hin. Den Rest findest Du im Einsteiger PDF. Suche nach Readings einlesen, ReadingsVal
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

l05443

Zitat von: CoolTux am 24 Dezember 2016, 16:47:06
Du musst das Reading wind einlesen. Das ist Dein $wind in den runden Klammern. Da muss stattdessen ReadingsVal hin. Den Rest findest Du im Einsteiger PDF. Suche nach Readings einlesen, ReadingsVal

Hi CoolTux,

danke für den Tip, funktioniert jetzt. Hier die Lösung falls jmd. braucht:

wind { my $wind = round(ReadingsVal($name,"wind",0),0)}

Grüße

Martin

CoolTux

Hallo Martin,

Eigentlich vergebe ich sonst nur einen Daumen dafür das ich es gelesen habe. Aber ich wollte Dir mal ein Lob aussprechen. Es kommt nicht oft vor das ein Einsteiger so schnell und ohne e weitere Hilfe so ein Problem löst. Haste super gemacht.


Grüße
Leon
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

justme1968

ja. es ist toll das du selber eine funktionierende version gefunden hast.

aber trozdem ein paar kleine hinweise die dir beim nächsten mal helfen weil deine lösung vermutlich 'zufällig' das machst was du möchtest.

die variable und die zuweisung ist unnötig. du verwendest die variable im folgenden ja gar nicht mehr. und auch das die variable so heisst wie das reading bewirkt nichts weiter. das ganze geht nur weil in perl der wert des ganzen klammer ausdrucks (wenn kein return vorkommt) der wert des letzten ausgetreten teilausdrucks ist. und das ist bei dir zufällig die zuweisung.

d.h.wind { round( ReadingsVal($name,"wind",0),0) }reicht völlig.

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

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