Variable Schrittweise ändern

Hi? So aus dem Bauch raus würde ich sagen ersetze %f (float) durch %d (integer)

Gesendet von iPhone mit Tapatalk

Hallo,

vielen Dank für den Tip - hat mich einen Schritt nach vorne gebracht und leider auch wieder zwei zurück.

Das Thermostat ist eine Float-Variable.

Hab das jetzt nochmal aufgeräumt - jetzt habe ich zwar die Soll-Temperatur angezeigt, aber dafür werden mir die +1 / - 1 Schaltflächen nicht mehr angezeigt.

Könntest Du mir nochmal helfen.

So sieht das Variablenprofil jetzt aus:

Und so siehts im Webfront aus - nur leider fehlt eben jetzt die +1/-1 Schaltflächen, die im Testbetrieb (da hatte ich noch das integer-Variablenprofil) angezeigt worden sind.

Bildschirmfoto 2017-12-26 um 11.33.06.png

Hallo,

hier mal der Lösungsweg :wink:

Als erstes setze erweiter mal das ‚%f‘ im Profil auf ‚%.1f‘ - so wird nur noch eine Nachkommastelle verwendet.


<?
$Step = 0.5;
$TempMin = 10;
$TempMax = 25;


if($_IPS['SENDER'] == "WebFront") 
    switch($_IPS['VALUE']) {
    
        case -1:
              $_IPS['VALUE'] = GetValue($_IPS['VARIABLE']) - $Step;
              
              if($_IPS['VALUE'] <= $TempMin) {
           
                $_IPS['VALUE']=$TempMin;
              }
              break;
           case 121:
              $_IPS['VALUE'] = GetValue($_IPS['VARIABLE']) + $Step;
              if($_IPS['VALUE'] >= $TempMax) {
           
                $_IPS['VALUE']=$TempMax;
              }
             break;
        default:
            return;
    }
  // EIB_Value(IPS_GetParent($_IPS['VARIABLE' ]), $_IPS['VALUE']);
 HM_WriteValueFloat(IPS_GetParent($_IPS['VARIABLE' ]),"SET_TEMPERATURE",$_IPS['VALUE']);  

?>

Ich habe keine Ahnung von diesem HomeMaticZeug, deswegen die letzte Zeile ohne Gewähr.

Das Skript kannst Du jetzt dieser einen Variable zu ordnen - und auch allen weiteren Soll-Temperatur-Auswahlfeldern. Du musst dafür keine weiteren Skripte erzeugen. Es sollte universell sein.

Viel Spaß,
Jörg

Guten Morgen,

ersteinal vielen Dank für Deine / Eure Hilfe.

Leider funktioniert das immer noch nicht so richtig mit der Darstellung im Webfront.

So sieht es jetzt aus:

Bildschirmfoto 2017-12-27 um 09.54.11.png

Die Dezimalstellenanzeige funktioniert jetzt also prima, aber leider werden die +1/-1 Button immer noch nicht angezeigt.

Hast Du / Ihr noch einen Tip für mich?

Gruß
Nic

Na klar.

Du mußt noch aus dem Profil oben die Min/Max (und glaube Schrittweite) entfernen.

Viel Spaß,
Jörg

hmmm.

daraufhin erscheint folgendes:

schreib doch einfach ne 0 rein :wink:

Klasse, Danke! Das funktioniert sehr gut!

Vielen lieben Dank!

Darf ich, interessehalber nachfragen, was es mit den min/max-werten und der Schrittweite auf sich hat, warum diese die Anzeige der Buttons verhindern?

Damit bekommst Du halt diese Art von Auswahl:

Warum da bei mir dieser Auswahl-Dialog am Ende kommt, ist mir schleierhaft. Gefallen tuts mir auch nicht.

@Paresy
Vielleicht kannst Du mir das beantworten?