HeishaMon icon indicating copy to clipboard operation
HeishaMon copied to clipboard

Rules elseif function not possible

Open blb4github opened this issue 2 years ago • 1 comments

Hi,

I try to use elseif in rules (version 3.2.2) but it's not accepted. e.g. My current WAR function:

on Calculate_WAR then
 $Ta1 = @Z1_Heat_Curve_Target_Low_Temp;
 $Tb1 = @Z1_Heat_Curve_Outside_High_Temp;
 $Ta2 = 37;
 $Tb2 = @Z1_Heat_Curve_Outside_Low_Temp;
if @Outside_Temp >= $Tb1 then
  #maxTa = $Ta1;
 else
  if @Outside_Temp <= $Tb2 then
   #maxTa = $Ta2;
  else
   #maxTa = floor($Ta1 + (($Tb1 - @Outside_Temp) * ($Ta2 - $Ta1) / ($Tb1 - $Tb2)));
  end
 end
 ?maxTSet = #maxTa;
end

If I try to change it into:

on Calculate_WAR then
 $Ta1 = @Z1_Heat_Curve_Target_Low_Temp;
 $Tb1 = @Z1_Heat_Curve_Outside_High_Temp;
 $Ta2 = 37;
 $Tb2 = @Z1_Heat_Curve_Outside_Low_Temp;
 if @Outside_Temp >= $Tb1 then
  #maxTa = $Ta1;
 elseif @Outside_Temp <= $Tb2 then
  #maxTa = $Ta2;
 else
  #maxTa = floor($Ta1 + (($Tb1 - @Outside_Temp) * ($Ta2 - $Ta1) / ($Tb1 - $Tb2)));
 end
 ?maxTSet = #maxTa;
end

but this is not accepted. If I try to do this via the GUI the page isn't refreshing after pressing the SAVE button. If I reload manually Heishamon did reboot.

If I try to load via curl Heishamon crashes immediately. curl -vvv http://XX.XX.XX.XX/saverules -F rules=@./Heishamon_rules20231025b.txt;

Heishamon_rules20231025b.txt

blb4github avatar Oct 25 '23 20:10 blb4github

I have the same issue: elseif doesn't work.

SirIcy avatar Nov 08 '23 07:11 SirIcy