Statusdauer einer Variable loggen und als Balkendiagramm ausgeben?

Hallo zusammen,

ich habe mir eine Aufgabenstellung ausgedacht welche ich einfach nicht umsetzen kann.

Ich möchte die Zeit die eine Boolean Variable auf „true“ mit loggen und diese dann in einem Balkendiagramm (Tag, Monat, Jahr,…) auswerten.

Irgendwie weiß ich nicht wie ich überhaupt anfangen soll. Gibts vielleicht schon so etwas in der Art? Über die Forensuche bin ich leider nicht fündig geworden.

Danke und LG
Michi

Mach eine Hilfsvariable vom Typ Float. Dazu ein Script, welches per Trigger ein mal pro Minute ausgeführt wird. In diesem Script prüfst Du, ob die Variable auf true steht und zählst in diesem Fall 1/60stel zur Hilfsvariable hinzu. Diese dann als Zähler loggen lassen und fertig [emoji4]

Hallo squeeezer,

das ist der vielleicht schon der zündende Funke, der mir bei der Logik gefehlt hat.
Weiß zwar noch nicht ganz genau wie ich das jetzt in PHP umsetze, aber das finde ich schon noch heraus. :slight_smile:

Danke für den Tipp!

LG Michi

Der Anfang ist gemacht. Die Minuten kann ich schon mal sauber mitzählen! :slight_smile:


<?

$HVHour = 36832 /*[Hardware\Gewerke\Wohnbereich\Wohnzimmer\Fernseher\Wohnzimmer:TV:Statistik\HV:Hour]*/;
$HVHourValue = GetValue(36832 /*[Hardware\Gewerke\Wohnbereich\Wohnzimmer\Fernseher\Wohnzimmer:TV:Statistik\HV:Hour]*/);
$StatusTV = GetValue(37370 /*[Hardware\Gewerke\Wohnbereich\Wohnzimmer\Fernseher\Status:TV:AUSLESEN\Aktiv]*/); 

if ($StatusTV == true)
	{
	$HVHourValue += 1;
	SetValueFloat ( $HVHour, $HVHourValue );	
	}

?>

Ich habe es jetzt hin bekommen, dass die Minuten in den entsprechenden Tagesvariablen gespeichert werden. :slight_smile:

Es sieht also im Moment so aus.

Nur wie bekomme ich die Variablenwerte jetzt in ein Balkendiagramm? :confused:

Das ist der völlig falsche Ansatz. Es gehört alles in EINE Variable.
Du hast bisher bestimmt viel mit Excel gemacht ?! Eine Datenbank hat eine etwas andere Struktur
Auswertungen über hunderte von Varis sind so nicht möglich

Ooh … da hast Du mich wohl missverstanden … wie Axel schon schrieb, nur eine Variable nehmen … im Script dann immer erst mit GetValue den alten Wert holen, dann 1/60stel dazuzählen und mit SetValue wieder auf der gleichen Variable speichern … hab gerade leider keinen ScriptEditor zur Hand, aber das schaffst Du schon [emoji6]

Again what learned! :wink: :smiley:

Ja, viel einfacher und mit viel weniger Aufwand.
Stelle gerade mein Skript um. Danke!

Ich habs hinbekommen! :slight_smile:
…und es war so einfach. Danke für die Tipps. Ich hatte das mit der Aggregation „Zähler“ beim Logging nicht gekannt.:stuck_out_tongue:

LG
Michi

Na siehste, alles gut [emoji4]