EDIT 2020.10.21 Diese Bereinigung und Umstellung wäre dann nun erledigt. Ein späterer Schritt könnte dann noch das weitere Aufräumen der readings im PV_Anlage_1_API Device sein.
Vielen Dank für Euer Gehör
Christian
EDIT 2020.10.21 Das stateFormat wurde nochmals nachgearbeitet
EDIT 2020.10.21 Es wurde im PV_Schedule Device ein 5 Minuten Update für "get PV_Anlage_1_API 04_/auth/me" eingerichtet, damit das stateFormat die Aktuellen Werte häufiger aktualisiert.
EDIT 2020.10.21 Unten sind nun auch SQL zum Löschen in der Datenbank, aber erst einen Backup machen, wenn Ihr nicht sicher seit!
EDIT 2020.10.21 Im Dum.Energie => PV_Anlage_1_Bilanz tauchen jetzt in der Datenbank nur nor die Momentanwerte auf, die in der Form nicht benötigt werden.
Weiter unten in diesem Post habe ich noch eine sql SELECT eingefügt, um diese zu zeigen.
Der nächste Schritt ist nun das Löschen vom Dum.Energie bzw PV_Anlage_1_Bilanz und auch das löschen der restlichen DB Einträge.
Bitte achtet vorher darauf, dass Ihr alle Werte, die noch gewünscht sind zum PV_Anlage_1_API Device migriert habt.
EDIT 2020.10.21 Für die bereits in der DB erzeugten diff und max Werte habe die SQL Statements für die Migration unten hinzugefügt
EDIT 2020.10.21 Das stateFormat und userreading fon PV_Anlage_1API wurde für die Statistic_ der Bilanz angepasst. Ein Bild hängt an.
Momentanwerte werden hier nicht ins Log geschrieben, da sie nur der Übersicht dienen sollen.
EDIT 2020.10.20 Unten findet Ihr jetzt auch die SQL Statements für die Datenbank Änderung der readings.
EDIT 2020.10.20 Das PV_Anlage_1_Bilanz Device ist nun ebenfalls im Wiki aktualisiert. Das userreading holt nun die Werte aus dem _API Device.
Und das Aufräumen geht weiter.
Im Device PV_Anlage_1_Bilanz werden zur Zeit im userreading erweiterte Statistiken berechnet, die zum Device PV_Anlage_1_API gehören, was jedoch historisch bedingt noch nicht existiert hatte. Somit wandern diese readings dann jetzt in das richtige Device.
Betroffen sind zur Zeit folgende readings, die dann auch den Zusatz "Statistic_" bekommen
EDIT: Hierzu gibt es bereits einen aktuelleren Eintrag, damit die Namen besser zu denen vom Plenticore passen!
PVDay
PVMonth
PVYear
GridFeedInDay
GridFeedInMonth
GridFeedInYear
TotalConsumptionDay
TotalConsumptionMonth,
TotalConsumptionYear
Die Berechnungen für die Momentan Werte wird erst einmal bleiben, da diese ja nicht statistisch sind.
Im Device PV_Anlage_1_API sind die oben genannten Werte dann noch in Watt und werden anschließend im PV_Anlage_1_Bilanz Device in Kilowatt dargestellt.
Die Aktualisierung ist bereits im Wiki. Bitte beachtet, dass im Anschluss noch die Änderung im Bilanz Device folgen muss, da ansonsten doppelte werte in der Datenbank sein werden.
Bisherige Werte aus dem Bilanz Device können dann natürlich in der Datenbank später dem neuen Device zugeordnet werden und gehen somit nicht verloren. Die Vorgehensweise dürfte bereits bekannt sein.
Ich habe es natürlich jetzt schon gemacht, aber bitte prüft die SQL Statements vorher und macht auch vorher einen Backup.
EDIT: Achtung, an dieser Stelle kann man auch direkt zu den endgültigen Namen vom 2020.10.22 umziehen.
UPDATE history SET TIMESTAMP=TIMESTAMP, DEVICE='PV_Anlage_1_API', READING='Statistic_TotalConsumptionDay', VALUE=round(VALUE*1000,2)
WHERE DEVICE='PV_Anlage_1_Bilanz' and READING='TotalConsumptionDay' AND TIMESTAMP > '2020-01-01 00:00:00';
UPDATE history SET TIMESTAMP=TIMESTAMP, DEVICE='PV_Anlage_1_API', READING='Statistic_TotalConsumptionMonth', VALUE=round(VALUE*1000,2)
WHERE DEVICE='PV_Anlage_1_Bilanz' and READING='TotalConsumptionMonth' AND TIMESTAMP > '2020-01-01 00:00:00';
UPDATE history SET TIMESTAMP=TIMESTAMP, DEVICE='PV_Anlage_1_API', READING='Statistic_TotalConsumptionYear', VALUE=round(VALUE*1000,2)
WHERE DEVICE='PV_Anlage_1_Bilanz' and READING='TotalConsumptionYear' AND TIMESTAMP > '2020-01-01 00:00:00';
UPDATE history SET TIMESTAMP=TIMESTAMP, DEVICE='PV_Anlage_1_API', READING='Statistic_PVDay', VALUE=round(VALUE*1000,2)
WHERE DEVICE='PV_Anlage_1_Bilanz' and READING='PVDay' AND TIMESTAMP > '2020-01-01 00:00:00';
UPDATE history SET TIMESTAMP=TIMESTAMP, DEVICE='PV_Anlage_1_API', READING='Statistic_PVMonth', VALUE=round(VALUE*1000,2)
WHERE DEVICE='PV_Anlage_1_Bilanz' and READING='PVMonth' AND TIMESTAMP > '2020-01-01 00:00:00';
UPDATE history SET TIMESTAMP=TIMESTAMP, DEVICE='PV_Anlage_1_API', READING='Statistic_PVYear', VALUE=round(VALUE*1000,2)
WHERE DEVICE='PV_Anlage_1_Bilanz' and READING='PVYear' AND TIMESTAMP > '2020-01-01 00:00:00';
UPDATE history SET TIMESTAMP=TIMESTAMP, DEVICE='PV_Anlage_1_API', READING='Statistic_GridFeedInDay', VALUE=round(VALUE*1000,2)
WHERE DEVICE='PV_Anlage_1_Bilanz' and READING='GridFeedInDay' AND TIMESTAMP > '2020-01-01 00:00:00';
UPDATE history SET TIMESTAMP=TIMESTAMP, DEVICE='PV_Anlage_1_API', READING='Statistic_GridFeedInMonth', VALUE=round(VALUE*1000,2)
WHERE DEVICE='PV_Anlage_1_Bilanz' and READING='GridFeedInMonth' AND TIMESTAMP > '2020-01-01 00:00:00';
UPDATE history SET TIMESTAMP=TIMESTAMP, DEVICE='PV_Anlage_1_API', READING='Statistic_GridFeedInYear', VALUE=round(VALUE*1000,2)
WHERE DEVICE='PV_Anlage_1_Bilanz' and READING='GridFeedInYear' AND TIMESTAMP > '2020-01-01 00:00:00';
UPDATE history SET TIMESTAMP=TIMESTAMP, DEVICE='PV_Anlage_1_API', READING='max_month_Statistic_PVMonth'
WHERE DEVICE='PV_Anlage_1_Bilanz' and READING='max_month_PVMonth' AND TIMESTAMP > '2020-01-01 00:00:00';
UPDATE history SET TIMESTAMP=TIMESTAMP, DEVICE='PV_Anlage_1_API', READING='max_month_Statistic_PVTotalMonth'
WHERE DEVICE='PV_Anlage_1_Bilanz' and READING='max_month_PVTotalMonth' AND TIMESTAMP > '2020-01-01 00:00:00';
UPDATE history SET TIMESTAMP=TIMESTAMP, DEVICE='PV_Anlage_1_API', READING='diff_week_Statistic_PVMonth'
WHERE DEVICE='PV_Anlage_1_Bilanz' and READING='diff_week_PVMonth' AND TIMESTAMP > '2020-01-01 00:00:00';
UPDATE history SET TIMESTAMP=TIMESTAMP, DEVICE='PV_Anlage_1_API', READING='diff_week_Statistic_PVTotalMonth'
WHERE DEVICE='PV_Anlage_1_Bilanz' and READING='diff_week_PVTotalMonth' AND TIMESTAMP > '2020-01-01 00:00:00';
###################### Achtung, das ist zum Löschen, also Backup machen oder sich sicher sein :-) ###################
delete FROM history WHERE DEVICE='PV_Anlage_1_Bilanz' AND TIMESTAMP > '2020-01-01 00:00:00';
Die Reste vom Dum.Energie bzw PV_Anlage_1_Bilanz Device in der Datenbank
SELECT TIMESTAMP,DEVICE,READING,VALUE FROM history WHERE DEVICE='PV_Anlage_1_Bilanz' AND TIMESTAMP > '2020-01-01 00:00:00' order BY TIMESTAMP limit 500;
snip ...
| 2020-10-21 10:45:00 | PV_Anlage_1_Bilanz | AutarkyQuote | 90 |
| 2020-10-21 10:45:00 | PV_Anlage_1_Bilanz | GridConsumption | 20 |
| 2020-10-21 10:45:00 | PV_Anlage_1_Bilanz | GridFeedIn | 0 |
| 2020-10-21 10:45:00 | PV_Anlage_1_Bilanz | PV | 641 |
| 2020-10-21 10:45:00 | PV_Anlage_1_Bilanz | PVTotal | 734 |
| 2020-10-21 10:45:00 | PV_Anlage_1_Bilanz | SelfConsumptionQuote | 87 |
| 2020-10-21 10:45:00 | PV_Anlage_1_Bilanz | TotalConsumption | 714 |
snip ...
Der Trigger von diesem Device ist im PV_Schedule enthalten und kann dann auch raus.
Gruß
Christian