Bei Aktuallisierung der Prognose werden die alten Daten leider nicht gelöscht.
Konkret bedeutet das heute am 06.12.2020 bekomme ich Werte für 07.12.2020 - 17 Uhr.
Wenn die Prognose sich nun ändert und ich am 07.12.2020 dann nur noch Werte bis 16 Uhr bekomme bleibt leider der falsche 17 Uhr Wert in der InfluxDB bestehen.
Das macht dann Probleme wenn man den Vorhersagebetrag für den heutigen Tag abfragen möchte wenn die Vorhersage nach unten korrigiert wurde.
Code: Alles auswählen
SELECT max("Prognose_Wh") FROM "Wetterprognose" WHERE ("Datum" = '${__from:date:DD.MM.YYYY}') AND $timeFilter
Kann man in die "wetterdaten.php" noch was einbauen dass die Werte der übermittelten Tage vor dem schreiben löscht?
So was in der Art.
1. Das Array Daten um den Typ "QueryArt" erweitern.
2. In der Funktion "wetterdaten_speichern" den neuen Parameter hier einbauen
Code: Alles auswählen
$ch = curl_init('https://'.$daten["InfluxAdresse"].'/'.$daten["QueryArt"].'?db='.$daten["InfluxDBName"].'&precision=s');
}
else {
$ch = curl_init('http://'.$daten["InfluxAdresse"].'/'.$daten["QueryArt"].'?db='.$daten["InfluxDBName"].'&precision=s');
}
Code: Alles auswählen
$aktuelleDaten["Query"] = "";
$aktuelleDaten["QueryArt"] = "query"
$aktuelleDaten["Query"] ="DELTE FROM 'Wetterprognose' WHERE ('Datum' = '${__from:date:DD.MM.YYYY}')"
$rc = wetterdaten_speichern($aktuelleDaten);
$aktuelleDaten["Query"] = "";
$aktuelleDaten["QueryArt"] = "write"
for($i=0; $i < count($Einzelwerte["data"]); $i++) {
$aktuelleDaten["Prognose_Watt"] = $Einzelwerte["data"][$Keys[$i]][0]*1000;
$aktuelleDaten["Prognose_kWh"] = $Einzelwerte["data"][$Keys[$i]][1]*1000;
Grüße
Eric