Marcus1@@@ hat geschrieben:dh. ich muss noch mit einer extra Variablem im Script arbeiten und erst im nachgang dieses ergebnis der systemvariablen übergeben.
so?
Code: Alles auswählen
var wds = dom.GetObject("AG_Gar-Wetterstation-1:1");
var curRain = wds.DPByHssDP("RAIN_COUNTER");
var helpRain = dom.GetObject("Regen Zwischenspeicher");
var monthRain = dom.GetObject("Regen letzter Monat");
real Rain;
Rain = helpRain - curRain;
curRain.Variable(helpRain.Value());
Rain.Variable(monthRain.Value());
Nein.
Das heißt nur, dass Du keine Objekte voneinander abziehen kannst, sondern nur die Werte der Objekte. Du hast einfach vergessen, von den Ojekten die Werte zu übergeben, damit er etwas berechnen kann.
"helpRain" ist ein Objekt (Systemvariable) und nicht der Wert, welcher dort hinterlegt ist.
"curRain" ist ein Objekt (Datenpunkt) und nicht der Wert, welcher dort hinterlegt ist.
mit "helpRain.Variable()" bekommst Du den Wert in der Systemvariable "Regen Zwischenspeicher" zurück und mit "curRain.Value()" den Wert des "RAIN_COUNTER" in Deinem Geräte-Kanal 1 "AG_Gar-Wetterstation-1:1"
Bitte unbedingt die Doku aufmerksam lesen.
.