Beispiel 9 - Werte aus Speicher wiederherstellen
Aufgabe:
Ein angeschlossenes Gerät schickt vorübergehend während des Bootvorgangs anstelle des letzten Kilometerstand 0km. Diese Abweichung soll nicht in den Messdaten erfasst werden.
Lösung:
$'CALC.ZSG_KM_STAND' = dLatch($'MVB.ZSG_KM_STAND' < 100.0, $'MVB.ZSG_KM_STAND', {storage:'lastValid_km_stand'});
Verwendete Funktionen:
Erläuterung:
dLatch(hold, value)
lässt mithold=false
den value „passieren” und speichert diesen intern ab – hier auch persistent durch die Angabe des Storage. Sobaldhold=true
wird, wir der zuletzt gespeicherte Wert weitergegeben. Dies passiert beim Start des angeschlossenem Gerätes, da der Kilometerstand unter 100 fällt.