Seite 8 von 8

Re: Systemvariable loggen mit CUxD und Highcharts

Verfasst: 06.01.2019, 19:33
von alchy
Du wendest Methoden auf die falschen Objekte an und dadurch werden entsprechende Fehler erzeugt.

Alchy

Re: Systemvariable loggen mit CUxD und Highcharts

Verfasst: 06.01.2019, 20:04
von Gut-Drauf
Verstehe ich nicht ganz. Es wird doch der Status der im WebUI-Programm abgefragten Systemvariablen für CUxD unter der im Script angegebenen "CUxD.CUX2801001:1.LOGIT" mitgeschrieben.

Re: Systemvariable loggen mit CUxD und Highcharts

Verfasst: 06.01.2019, 21:20
von alchy
Gut-Drauf hat geschrieben:
06.01.2019, 20:04
Es wird doch der Status der im WebUI-Programm abgefragten Systemvariablen für CUxD unter der im Script angegebenen "CUxD.CUX2801001:1.LOGIT" mitgeschrieben.
Das ist de Theorie, aber dein Script macht das eben nicht, weil es fehlerhaft ist.
Dein Script funktioniert so nur bei einem Gerätedatenpunkt (unter bestimmten Voraussetzungen) und nicht bei einer Systemvariablen als Programmtrigger.

Alchy

Re: Systemvariable loggen mit CUxD und Highcharts

Verfasst: 07.01.2019, 09:22
von uwe111
Gut-Drauf hat geschrieben:
06.01.2019, 20:04
Verstehe ich nicht ganz. Es wird doch der Status der im WebUI-Programm abgefragten Systemvariablen für CUxD unter der im Script angegebenen "CUxD.CUX2801001:1.LOGIT" mitgeschrieben.
Nein, wird er nicht.
Gut-Drauf hat geschrieben:
06.01.2019, 18:55
Was mache ich falsch?
Schau Dir mal die Beispiele in den ersten Beiträgen dieses Themas an. Dann solltest Du den Unterschied erkennen.

Viele Grüße

Uwe

Re: Systemvariable loggen mit CUxD und Highcharts

Verfasst: 07.01.2019, 09:26
von manolo
Gut-Drauf hat geschrieben:
06.01.2019, 18:55
Hallo,
ich bekomme vom "Rainyman" div. Werte in verschiedene Systemvariable eingetragen. Jetzt möchte ich diese mit CUxD und Highchart loggen. Ich habe in der WebUI ein Programm erstellt, welches bei Aktualisierung einer Variablen (Ein oder Aus) folgendes Script auslöst:

object o = dom.GetObject("$src$");
if (o) {
dom.GetObject("CUxD.CUX2801001:1.LOGIT").State( (dom.GetObject((o.Channel()))).Name() #";"#(o.Value().ToInteger() * 10));
}

In CUxD wird zwar etwas gelogged, aber da steht dann immer:

2019-01-06T18:23:22 null
2019-01-06T18:24:28 null

Was mache ich falsch?

Code: Alles auswählen

object o = dom.GetObject("$src$");
if (o)
{ if (o.Value() <> o.LastValue()) 
  { dom.GetObject("CUxD.CUX2801001:1.LOGIT").State(o.Name()#";"#o.Value());
  }
}

}

Re: Systemvariable loggen mit CUxD und Highcharts

Verfasst: 05.05.2019, 09:37
von NilsG
Moin zusammen!

Wie löst ihr denn das Script zuverlässig aus, auch wenn die CCU mal neugestartet wurde?!

Wie löst ihr das Script genrell aus? Welchen Trigger nehmt ihr da?

Wenn ich auf die Aktualisierung der jeweiligen Variable trigger, geht das ja nur solange die sich auch ändert :|
Bin ich im Urlaub, und Wasser z.B. läuft nicht, klappt das nicht!

DANKE!

Gruß,
Nils

Re: Systemvariable loggen mit CUxD und Highcharts

Verfasst: 01.11.2020, 21:27
von joesch
Wie muss ich das Skript

Code: Alles auswählen

object o = dom.GetObject("$src$");
if (o) {
dom.GetObject("CUxD.CUX2801003:1.LOGIT").State(o.Name()#";"#o.Value());
}
ändern bzw. wodurch muss ich das Attribut "Name" ersetzen, um statt des Namens der Systemvariable deren Beschreibung in den Charts dargestellt zu bekommen?

VG, joesch

Re: Systemvariable loggen mit CUxD und Highcharts

Verfasst: 01.11.2020, 21:55
von alchy
.DPInfo() verwenden statt .Name()

Alchy

Re: Systemvariable loggen mit CUxD und Highcharts

Verfasst: 02.11.2020, 08:06
von MathiasZ
Ich hatte das gleiche Problem.
Die Systemvariablen lassen sich einfach nicht loggen.
Nun bin ich auf CCU-Historian umgestiegen und es läuft prima!
Nur so am Rande bemerkt.

Re: Systemvariable loggen mit CUxD und Highcharts

Verfasst: 02.11.2020, 08:33
von joesch
Hallo Matthias,
MathiasZ hat geschrieben:
02.11.2020, 08:06
Ich hatte das gleiche Problem...
das Problem hatte ich hier nicht. Ich wollte nur eine andere Bezeichnung im Diagramm. Das hat dann auch wie von alchy beschrieben gut geklappt.

Zugegebnermaßen musste ich davor auch erst etwas "basteln". Da es erst nicht klappte, habe ich nach dem Lesen im Forum einfach mal "resettet" ;-)
- ein leeres Programm erstellt
- o.g. Skript hineinkopiert
- als Auslöser zum Testen erst einmal nur eine Systemvariable "auf Aktualisieren" gewählt
- geprüft, ob das CuxD-Gerät mit dem angegebenen Kanal tatsächlich im System existiert
- im CUuxD-Setup die Zeile "LOGIT=xyz" ergänzt (zum Starten von HighChart)

Und was soll ich sagen - es hat geklappt. Von diesem Punkt aus habe ich dann nach und nach die zu loggenden Sysvar's ergänzt.

VG, Jörg