Die Abfrage hat aber funktioniert, auch wenn die Ausführung 20 sec gedauert hat.
Bei der precision bin ich auch nicht weiter, habe diese auf 8 genommen, und für kWh in maxprecsision 2 definiert, hat aber nicht funktioniert, komischerweise haben damit auch Temperaturen mehr nachkommastellen, obwohl das vorher funktioniert hat precision: 8, // TODO update from middleware capabilities? maxPrecision:[ { // override precision for certain units '°C': 1 },{ 'kWh': 2 } ], Gruß Tobias > Am 29.03.2020 um 18:11 schrieb Frank Richter <frank.richte...@gmail.com>: > > Die SQL-Abfrage hilft nur bei einem Zählerstand-Kanal. Bei Impulsen müssen > sämtliche Impulse aufsummiert werden, um den Gesamtverbrauch zu erhalten. > > Grüße > Frank > > Tobias Lehr <tobias.l...@me.com <mailto:tobias.l...@me.com>> schrieb am So., > 29. März 2020, 18:06: > Hm also dann habe ich da falsch herum gedacht. Das hieße ich müsste die > precision auf 8 stellen und bei maxPrecision für alle anderen werte dann die > entsprechende Zahl vorgeben? Etwas kompliziert. mal testen. > > Die Datenbankabfrage habe ich jetzt auch hinbekommen, es lag an zwei > doppelten Leerzeichen. Hab mir die korrekte Syntax jetzt mal abgespeichert, > nur für den Fall. > > Gruß Tobias >> Am 29.03.2020 um 17:43 schrieb r...@nord-com.net <mailto:r...@nord-com.net>: >> >> Hmm, bei mir funkioniert es… >> >> pi@avz:~:(1)> mysql -uvz -pyourpassword >> Welcome to the MariaDB monitor. Commands end with ; or \g. >> Your MariaDB connection id is 76 >> Server version: 10.3.13-MariaDB-1 Raspbian testing-staging >> >> Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others. >> >> Type 'help;' or '\h' for help. Type '\c' to clear the current input >> statement. >> >> MariaDB [(none)]> SELECT id FROM `volkszaehler`.`entities` >> -> WHERE UUID = 'b12dfd80-111c-11ea-8e1a-c9616b442377' INTO @CHANNEL; >> Query OK, 1 row affected (0.002 sec) >> >> MariaDB [(none)]> SELECT channel_id AS Kanal,(SELECT VALUE FROM >> `volkszaehler`.`properties` >> -> WHERE `entity_id` = @CHANNEL AND `pkey` = 'title') AS Name, >> -> ROUND(sum(VALUE/100)+(SELECT VALUE FROM `volkszaehler`.`properties` >> -> WHERE `entity_id` = @CHANNEL AND `pkey` = 'initialconsumption'),2) >> AS Zählerstand >> -> FROM `volkszaehler`.`data` >> -> WHERE `channel_id` = @CHANNEL ; >> +-------+-------------+--------------+ >> | Kanal | Name | Zählerstand | >> +-------+-------------+--------------+ >> | 10 | Zähler Gas | 7346.64 | >> +-------+-------------+--------------+ >> 1 row in set (1.501 sec) >> >> MariaDB [(none)]> >> >> From: volkszaehler-users >> [mailto:volkszaehler-users-boun...@demo.volkszaehler.org >> <mailto:volkszaehler-users-boun...@demo.volkszaehler.org>] On Behalf Of >> Tobias Lehr >> Sent: Sunday, March 29, 2020 5:34 PM >> To: volkszaehler.org <http://volkszaehler.org/> - users >> Subject: Re: [vz-users] Gesamtverbrauch Gaszähler mit Nachkommastellen >> >> Vielen Dank für die Anregungen, ABER… >> >> precision in der options.js habe ich gefunden, aber noch nicht so genau >> verstanden. Standardmäßig ist precision ja auf 2 eingestellt. Ich habe jetzt >> aber verschiedene Nachkommastellen. Temperaturen sind alle mit 1 >> NAchkommastelle, es sei denn diese wäre 0, dann haben sie keine >> nachkommastellen. >> >> Alle Werte mit 3 Stellen, haben gar keine Nachkommastellen. Werte kleiner 1 >> haben 1, 2 oder 3 Nachkommastellen. >> >> Die Werte unter Gesamt sind immer ohne, die haben aber auch 5 oder 6 Stellen. >> >> ich habe jetzt precision auf 8 hochgenommen, weil mein Gaszähler 5 Stellen >> vor dem Komma hat. Das funktioniert, dann hat der Gaszähler gesamt 3 >> Nachkommastellen, allerdings sehr unschön daran, Werte mit nur einer Stelle >> vor dem Komma haben dann plötzlich 7 NAchkommastellen. >> >> Also habe ich versucht eine Ausnahme einzufügen wie bei der für °C, das >> funktioniert aber nicht, ich vermute es liegt an der hochgestellten 3 in m3. >> >> maxPrecision:[ >> { // override >> precision for certain units >> '°C': 1 >> },{ >> 'm³': 8 >> } >> ], >> >> >> so habe ich versucht es zu erweitern. die hochgestellt 3 habe ich mir >> einfach reinkopiert. Aber auch die Angabe m3 oder m^3 funktionieren nicht. >> >> >> >> >> Zu der SQL Abfrage, ich würde zwar gerne den Wert fest im Frontend angezeigt >> bekommen aber so eine Abfrage kann ja hilfreich oder zumindest lehrreich >> sein. Ich muss dazu sagen ich bin absoluter Laie was SQL angeht. >> >> >> Wo muss ich die absetzen? In mysql direkt? phpmyAdmin habe ich nicht >> installiert. Habe ich probiert, aber bekomme einen Fehler wenn ich folgendes >> eingebe, also per copy&paste. >> >> >>> SELECT id FROM `volkszaehler`.`entities` >>> WHERE UUID = 'b12dfd80-111c-11ea-8e1a-c9616b442377' INTO @CHANNEL; >> >> >> Der Fehler lautet: ERROR 1064 (42000): You have an error in your SQL syntax; >> check the manual that corresponds to your MariaDB server version for the >> right syntax to use near 'UUID = '01e03ee0-3241-11e9-991f-856a034c5015' INTO >> @CHANNEL' at line 2 >> >> ich habe selbstverständlich die UUID auf die meines Gaszählers geändert. >> >> Gruß Tobias >> >> >> >> >>> Am 29.03.2020 um 16:23 schrieb r...@nord-com.net <mailto:r...@nord-com.net>: >>> >>> Hallo, >>> >>> Folgende SQL-Abfrage könnte als Vorlage für die Berechnung des genauen >>> Verbrauches dienen... müsstest Du für Deine Gegebenheiten entsprechend >>> anpassen... >>> >>> SELECT id FROM `volkszaehler`.`entities` >>> WHERE UUID = 'b12dfd80-111c-11ea-8e1a-c9616b442377' INTO @CHANNEL; >>> >>> SELECT channel_id AS Kanal,(SELECT VALUE FROM `volkszaehler`.`properties` >>> WHERE `entity_id` = @CHANNEL AND `pkey` = 'title') AS Name, >>> ROUND(sum(VALUE/100)+(SELECT VALUE FROM >>> `volkszaehler`.`properties` >>> WHERE `entity_id` = @CHANNEL AND `pkey` = 'initialconsumption'),2) AS >>> Zählerstand >>> FROM `volkszaehler`.`data` >>> WHERE `channel_id` = @CHANNEL ; >>> >>> Gruss, >>> Alex >>> >>> >>> -----Original Message----- >>> From: volkszaehler-users [mailto:volkszaehler-users- >>> <mailto:volkszaehler-users-> >>> boun...@demo.volkszaehler.org <mailto:boun...@demo.volkszaehler.org>] On >>> Behalf Of Tobias Lehr >>> Sent: Sunday, March 29, 2020 3:25 PM >>> To: volkszaehler-users >>> Subject: [vz-users] Gesamtverbrauch Gaszähler mit Nachkommastellen >>> >>> Hallo, >>> >>> ich logge meinen Gasverbrauch per S0 in den Volkszaehler. Die Werte für >>> min., max., aktuell und Verbrauch werden mit Nachkommastellen >>> angezeigt. Der Gesamtverbrauch wird aber nur mit ganzer Zahl angezeigt. >>> Mein Gaszähler hat aber 3 Nachkommastellen und mein Gasversorger >>> möchte den Zählerstand mit Nachkommastellen angegeben haben. Und da >>> ich gerade den Zählerstand für die Abrechnung angeben musste, wollte ich >>> wissen ob man den Gesamtverbrauch, der ja der Zählerstand ist, auch mit >>> Nachkommastellen anzeigen lassen kann. Ich habe da was in Erinnerung das >>> es eventuell durch Änderung der options.js Datei gehen könnte. Aber ich >>> habe leider überhaupt keine Idee wie. Liege ich da richtig? Und könnte mir >>> da jemand Unterstützung geben. >>> >>> Gruß Tobias >