mein Projekt: SQLite DUG Tool

Hallo Tobias,

hmmm… man müßte IPS irgendwie sagen, dass es einen „Variable hat sich geändert“ Ereignis auslösen soll. Frage an die Experten hier: Gibts eine Möglichkeit ein solches Ereignis auszulösen?

entweder verstehe ich dich jetzt falsch oder Du meinst bei „Variablenaktualisierung“. Derzeit verwendest Du ja „Variablenänderung“. Aktualisierung hat nur den Nachteil das die DB noch größer wird.

siehe Anhang Punkt 2.

Ereignis.png

Hi Tobias,

würde es ausreichen in IPS der Trigger-Ereignis von „Variable hat sich geändert“ auf „Variable wurde aktualisiert“ umzustellen ???

Kannst mir ja mal per Mail ein par Infos zukommen lassen, wegen dem Mittelwert"filter" … ich überleg mir mal ob man da nicht direkt im SQL was machen könnte … weil php ist nicht gerade meine Stärke :wink:

VG

Andreas

Hallo Tobias,

habe da etwas seltsames entdeckt.

Habe mehrere Bargraphen angelegt die auch im Admintool von DUG wunderbar angezeigt werden (siehe Bargraph_OK.png).

Wird nun durch IPS selbst der Graph generiert kommt das (siehe Bargraph_Fehler.png) raus.

Bevor ich auf die Suche gehe, hast Du da eine schnelle Idee?

Hallo Werner,

dafür gibt es eine einfache Erklärung.

Die Schlieren sind deine Datensätze, welche als Value(Werte) dargestellt werden. Bei mehr als 20 wird es undeutlich. :smiley:

Servus Rainer,

kann irgendwie nicht sein.

Beide Graphen die Du siehst sind, wie soll ich sagen, die Gleichen nur 2 Minuten unterschied.

Der eine ist nur im DugTool über Graphen sofort anzeigen generiert, der Fehlerhafte wurde durch die Graphenupdate.php aus IPS getriggert erstellt.

Gehe ich wieder in DugTools und klicke auf „Graphen sofort erstellen“ ist der Graph wieder in Ordnung, bis zu dem Zeitpunkt wo der Graph durch IPS getriggert wird.

Das einzige was mir dazu einfällt ist, der Graph wurde nicht komplett neu erstellt sondern nur in den DugTools von Linie auf BarGraph geändert. Ich habe noch einen weiteren Bargraphen bei dem alles klappt.

Vielleicht hilft dieses Fehlerbild bei der Suche.

Hi Werner,

ok, dann war das ein Mistverständniss :slight_smile:

also ein spontane Idee woher das kommt hab ich nicht. Ich schau mal in meinen Sourcecode, ob ich da was finden kann.

Bis später, gruß Tobias

edit
hmmm… es könnte daran liegen, dass eine Variable nicht richtig initialisiert wird. Schau doch mal bitte nach, ob beim getriggerten Erstellen der Graphen aus IPS heraus zu diesem Zeitpunkt noch andere Graphen automatisch erstellt werden. Und wenn ja, dann wähle mal alle diese Graphen im DUG Tool aus und lass sie in einem Rutsch „sofort erstellen“.
Tritt der Fehler dann auch auf, dann stimmt meine Vermutung.

Hallo Tobias,

leider nicht.

DUG_aus_Backend.png war „Graphen sofort erstellen“. Alles in Ordnung, siehe Graph 2 und 5.

DUG_aus_Backend_Fehler.png mit „Bereits erstellte Graphen anzeigen“ erstellt nachdem IPS aktualisiert hat. Hier sind 2 und 5 wieder falsch.

Ergänzung: Der Graph nur 5 im Anhang wurde alleine erstellt, nicht im Zusammenhang mit einem anderen Graphen.

Hallo!
Respekt, Tolle Arbeit, habs auch installiert.:slight_smile:

Wenn z.B. ein Sollwert von 15 Grad auf 20 Grad verstellt wird, wird aus der Linie eine Schräge gezeichnet.

Sieht irgendwie komisch aus.:confused:

Kann man da was machen?

Schönen Abend noch:)
Egon

Hallo Egon,

das liegt daran dass

  1. nur die Änderungen in die DB geschrieben werden. Das Tool welches die GRaphen erstellt hat also deinen ersten Soll-Wert 15° um 10Uhr und den nächsten 20° um 11Uhr.

wenn es dann

  1. noch eine Float-Variable ist, dann werden die 2 Punkte direkt verbunden.

Abhilfe: und Graph erweiter bearbeiten das Häckchen bei Ganzzahldarst. aktivieren. Dann zeichnet es die Punkte als Treppen …

VG

Andreas

hallo,
habe nach dem treffen in nidda auch das dugtool installiert. es geht auch recht gut.

die daten werden aufgezeichnet nur bei DBupdate.php gibt es folgende fehlermeldung

Warning: Variable #0 existiert nicht in C:\IP-Symcon\scripts\DBupdate.php on line 23

Warning: sqlite_query() [function.sqlite-query]: near " ": syntax error in C:\IP-Symcon\scripts\DBupdate.php on line 36

Warning: sqlite_fetch_array() expects parameter 1 to be resource, boolean given in C:\IP-Symcon\scripts\DBupdate.php on line 37

Warning: sqlite_query() [function.sqlite-query]: column IPSID is not unique in C:\IP-Symcon\scripts\DBupdate.php on line 56

Warning: sqlite_query() [function.sqlite-query]: near " ": syntax error in C:\IP-Symcon\scripts\DBupdate.php on line 63

Warning: sqlite_fetch_array() expects parameter 1 to be resource, boolean given in C:\IP-Symcon\scripts\DBupdate.php on line 64

Meldung Variable #0 kommt aus folgendem Befehl $IPS_VarID = $_SERVER[„IPS_VARIABLE“];
wo muß die variable IPS_VARIABLE herkommen
oder muß ich sie durch eine id ersetzen

Graph wird erstelt usw… nur in dug media-verzeichnis werden lauter fehler meldungen aufgezeichnet.

gruß karlheinz

ja, wenn die Variable regelmäßig aktualisiert wird müsste das reichen. Allerdings füllt sich die Datenbank dann auch dementsprechend schneller. Ist es nicht auch irgendwie überflüssig die Variable abzuspeichern, wenn sie sich überhaupt nicht verändert hat?
Aber letztendlich, wenn du das so willst, sollte es so gehen.

Gruß Tobias

Hallo Kalrheinz,

Das find ich ja toll, dass ihr in Nidda Werbung für das kleine Tool gemacht habt. Bin begeistert!

Die Datenaufzeichnung findet in der DBupdate.php statt. Wenn also Daten in die DB geschrieben werden, dann muss das DBupdate Script soweit funktionieren.

Da, wie du sagst, dass Script ja meistens funktioniert, muss dieser Fehler,

durch irgendeine Variable, oder ein Ereignis ausgelöst werden.
Kurz zur Erklärung: Ich habe die Codezeile

$IPS_VarID = $_SERVER["IPS_VARIABLE"];

hier im Forum entdeckt. Es soll wohl so sein, dass in $_SERVER die Werte des aufrufenden Ereignisses an das Script übergeben werden. Hier muss also nichts eingetragen werden.

Um dem Fehler mal etwas näher zu kommen: Wurden alle Ereignisse, die mit dem DBupdate Script verbunden sind vom DUG Tool angelegt ( über die Web Steuerung), oder hast du auch manuell Ereignisse mit dem Script verbunden? Und handelt es sich bei allen Ereignisse um Ereignisse vom Typ „onChange“?

Wie gesagt, wenn Graphen erstellt weden (hoffentlich auch mit Daten drin), dann funktioniert das DBupdate Script soweit.
Was du jetzt mit „nur in dug media-verzeichnis werden lauter fehler meldungen aufgezeichnet.“ meinst, kann ich mir nicht so richtig verstellen. Im DUG Media Vereichnis sollten eigentlich nur Bilder liegen. Vielleicht hängst du mal nen Screenshot an.

Bis später dann, Gruß Tobias

Achtung

In der DUG Tool Version 1.51 gibt es einen Bug, der dafür sorgt, dass Balkengraphen aus IPS heraus falsch erstellt werden, oder gar das Erstellungsscript so lange laufen lässt, bis die Maximale Ausführungszeit erreicht ist und PHP abbricht.
Dies betrifft nur das automatische Erstellen der Graphen aus IPS heraus.
Ich arbeite daran!

Bis später

Wie kann ich Dugtool und sqlite komplett löschen damit ich es neu installieren kann.
habe von v1.4 update auf v1.5 installiert und wieder zurück.
aber es sind immer noch dir fehlermeldungen vorhanden.
auch das automatisch anlegen eines onchange der variable geht nicht, der onchange-befaehl wird nicht der variable zugeordnet.
Fehlermeldungen in media-ordner?

Karlheinz

HI, löschen geht so: In IPS den .DUG Ordner mit allen Unterverzeichnissen löschen. Dann im Script Ordner von IPS die Dateien „DBupdate.php“, „Graphenupdate.php“ und „DUGToolbasis.php“ löschen, sowie die Datenbank im IPS Hauptordner.

Danach kannst du das DUG Tool neu installieren. Wenn es nach der Neuinstallation noch Probleme gibt, sag bescheid.

Gruß Tobias

MANN was ein geniales Tool Du da baust !!!
Riesenrespekt !!!

Habe gerade auf 1.5.1. upgedatet und ist alles sauber rübergezogen worden.

Das mit dem Bug bei Balken habe ich gelesen, aber das hat mich nicht davon abgehalten :slight_smile:

Die Balkendiagramme sind für Mittelwertbetrachtungen der Temperaturen und der Luftfeuchte einfach ideal und ich freue mich schon auf Eure nächsten Ideen :slight_smile:

Gruss
B71

Hallo Tobias,

ich hatte gestern zum ersten mal den gleichen Fehler wie Werner hier -> https://92.201.13.190/index.php?q=aHR0cDovL3d3dy5pcC1zeW1jb24uZGUvZm9ydW0vNjA2NjEtcG9zdDE2My5odG1s

beschrieben hatte. Ich lass mir eigentlich nur die max. Aussen Temp. über 31 Tage als Balkendiagramm anzeigen. Dies geschiet alle 24 h (also um 2 Uhr morgens) Gestern abend hatte ich dann zum ersten mal dieses „verrauschte“ Bild. Habe dann das gleiche Diagramm neu , über das DUGTool erstellt, und alles war wieder sauber. Was macht denn gernerell der Bug-Fix in sachen Balkendiagramm?

Hallo obicom,

Fehler ist indentifiziert und wird mit dem kommenden Update beseitigt sein. Da auch Tobias Zeit begrenzt ist kann man noch nicht genau sagen bis wann, aber mit diesem Fehler kann man ja leben.

Hallo Tobias,

ich hätte da einmal eine Frage zu den Bargraphen.

Ich habe einen Graphen der mir den aktuellen Wert meiner PV anzeigen soll. Angezeigt wird mir nur der abgeschlossene Vortag.

Bei einem Graphen über eine Woche wird mir auch nicht der aktuelle Tag angezeigt.

Kurz gesagt, egal welchen Zeitraum ich wähle es wird mir nur der gestrige Tag als letzter angezeigt.

Ist das so gewollt oder nicht anders möglich oder evtl. ein Bug :rolleyes: oder habe ich nur ein Verständnisproblem :smiley:

Anbei die Screenshots zur Einstellung des Graphen und des Graphen selbst.

Heute ist Mittwoch (super morgen Feiertag) und im Graphen ist der Dienstag angezeigt.