[vz-users] Gesamtverbrauch Gaszähler mit Nachkommastellen

Frank Richter frank.richter83 at gmail.com
So Mär 29 18:14:45 CEST 2020


Sorry, stimmt natürlich nicht. Trotzdem würde ich das die Middleware
erledigen lassen, die nutzt dafür aggregierte Daten und kann das deutlich
schneller.

Grüße
Frank

Frank Richter <frank.richter83 at gmail.com> schrieb am So., 29. März 2020,
18:11:

> 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.lehr at 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 rgb at nord-com.net:
>>
>> Hmm, bei mir funkioniert es…
>>
>> pi at 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-bounces at demo.volkszaehler.org
>> <volkszaehler-users-bounces at demo.volkszaehler.org>] *On Behalf Of *Tobias
>> Lehr
>> *Sent:* Sunday, March 29, 2020 5:34 PM
>> *To:* 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 rgb at 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-
>> bounces at 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
>>
>>
>>
-------------- nächster Teil --------------
Ein Dateianhang mit HTML-Daten wurde abgetrennt...
URL: <http://demo.volkszaehler.org/pipermail/volkszaehler-users/attachments/20200329/6eaed3e3/attachment-0001.html>


More information about the volkszaehler-users mailing list