Formelberechnung 15000000
Formelberechnung
▸ E1FormelErgebnisA1 ▸
▸ E2Modus1FehlerA2 ▸
▸ E3$x 
▸ E4$a 
▸ E5$b 
▸ E6$c 
▸ E7$d 
▸ E8$e 
Dieser Baustein setzt Variablen bzw. Konstanten in eine beliebige mathematische Formel ein. Dabei ist eine gültige PHP-Syntax zu verwenden. An E1 wird eine gültige mathematische Formel (PHP) erwartet, z.B. "$a-$x+$b" (ohne ""). Sämtliche PHP-Funktionen stehen grundsätzlich zu Verfügung, daher ist mit größter Sorgfalt zu arbeiten (s.u.). Auch Bedingungen wie "(($x>=1)?1:0)" sind möglich. Der Baustein wird bei jeder Änderung an E1 bzw. E3..E8 getriggert und führt eine erneute Berechnung aus. Wird E1 [leer] belassen, wird keine Berechnung ausgeführt. Bei einem Fehler wie "$x/0" wird i.d.R. A1 auf [leer] gesetzt (A2 bleibt unverändert). Ein Fehler in der Formel an E1 führt i.d.R. dazu, dass A2 auf 1 gesetzt wird (z.B. E1=";"). Ein syntaktischer Fehler an E1 wie z.B. "$x+blablabla()" führt je nach Modus (E2) zum Absturz(!) von EDOMI (s.u.). Wird E2 auf 0 gesetzt, arbeitet der Baustein direkt in der Logik-Engine. Eine fehlerhafte Formel an E1 kann daher EDOMI zu Absturz bringen! Wird E2 hingegen auf 1 gesetzt, wird der Baustein in einem eigenen PHP-Prozess (EXEC) ausgeführt. Eine fehlerhafte Formel an E1 führt daher nicht zum Absturz von EDOMI, jedoch arbeitet der Baustein weniger performant. Empfehlung: Um Abstürze während der Entwicklung einer Formel zu vermeiden, kann E2 zunächst auf 1 gesetzt werden. Erst wenn die Berechnung stabil ausgeführt wird, kann E2 auf 0 gesetzt werden. Wichtig: Die Berechnung wird mittels der PHP-Funktion "eval()" ausgeführt, daher sind sämtliche Parameter mit größter Sorgfalt anzugeben. Eine Überprüfung der Angaben findet nicht(!) statt! E1: Formel, z.B. "($x+($a*2))*pow($b,2)" E2: Modus: 0=LBS (performanter), 1=EXEC (sicherer) E3..E8: Variablen $x bzw. $a..$e A1: Ergebnis der Berechnung oder [leer] A2: wird bei einem Fehler auf 1 gesetzt (aber niemals wieder auf 0)