FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: Ascoban am 25 Februar 2017, 15:49:30

Titel: Doif oder if else finde den fehler im code nicht
Beitrag von: Ascoban am 25 Februar 2017, 15:49:30
Hallo im Log steht:

PERL WARNING: Use of uninitialized value in numeric lt (<) at (eval 5105) line 1.

Meine definition sieht so aus:


([GrowBoxDHT22:Tempature]< 27 and [GrowBoxDHT22:Humidty]< 60) (set Abluft off) DOELSE (set Abluft on)

Oder ich versuche das mit einem notify und bekomme dann auch eine Fehler meldung aber das notify wird ausgeführt.

GrowBoxDHT22:Humidity:.* {
   my $hum = ReadingsVal("GrowBoxDHT22","Humidity","0");;
   my $temp = ReadingsVal("GrowBoxDHT22","Temperature","0");;
   if ($hum < 40, $temp < 20) {
         fhem("set Abluft off");;}
   else {
         fhem(" set Abluft on");;}

  }

2017.02.25 16:02:13 1: PERL WARNING: Useless use of numeric lt (<) in void context at (eval 6093) line 7.
2017.02.25 16:02:13 3: eval: my $EVENT='Humidity: 46.3';my $NAME='GrowBoxDHT22';my $EVTPART1='46.3';my $EVTPART0='Humidity:';my $SELF='Abluft_N';my $TYPE='ESPEasy';{
   my $hum = ReadingsVal("GrowBoxDHT22","Humidity","0");;
   my $temp = ReadingsVal("GrowBoxDHT22","Temperature","0");;
   if ($hum < 40, $temp < 20) {
         fhem("set Abluft off");;}
   else {
         fhem(" set Abluft on");;}


Titel: Antw:Doif oder if else finde den fehler im code nicht
Beitrag von: hckoe am 25 Februar 2017, 19:14:45
Schau mal unter:
https://fhem.de/commandref_DE.html#DOIF_Filtern_nach_Zahlen

Gruß
Helmut
Titel: Antw:Doif oder if else finde den fehler im code nicht
Beitrag von: CoolTux am 25 Februar 2017, 19:28:31
Und beim Notify nimmst Du ReadingsNum statt ReadingsVal.
Titel: Antw:Doif oder if else finde den fehler im code nicht
Beitrag von: Ascoban am 25 Februar 2017, 19:52:55
Danke, das mit ReadingsNum hat funktioniert.