Um in der neuen FHEM Statistik die automatische Auswertung nach dem verwendeten Datenbanktyp (sqlite, mysql, ...) zu vereinfachen, müsste ein DbLog-device ein Internal namens "model" bereitstellen. Die gesuchte Information befindet sich derzeit in einem Internal DBMODEL - dessen Auswertung erfordert aber für die Statistik derzeit eine Sonderbehandlung, die ich gerne wieder loswerden möchte.
Vielleicht wäre der einfachste Weg, das Internal 'model' in DbLog_readCfg() zusätzlich anzulegen. Dann muss nicht das komplette Modul nach Verwendungsstellen von DBMODEL durchforstet werden.
Hallo betateilchen,
ZitatVielleicht wäre der einfachste Weg, das Internal 'model' in DbLog_readCfg() zusätzlich anzulegen.
Ja, kann ich machen. Wäre dir Groß/Kleinschreibung egal oder
muß es klein geschrieben sein ?
Grüße,
Heiko
In den Internals bitte entweder "model" oder "MODEL" - das wird beides erkannt.
Vorschlag:
} else {
$hash->{DBMODEL}="unknown";
Log3 $hash->{NAME}, 3, "Unknown dbmodel type in configuration file $configfilename.";
Log3 $hash->{NAME}, 3, "Only Mysql, Postgresql, Oracle, SQLite are fully supported.";
Log3 $hash->{NAME}, 3, "It may cause SQL-Erros during generating plots.";
}
+++ $hash->{MODEL}=$hash->{DBMODEL}; # used in FHEM statistics
if($hash->{DBMODEL} eq "MYSQL") {
$hash->{UTF8} = defined($dbconfig{utf8})?$dbconfig{utf8}:0;
}
Danke für die schnelle Umsetzung.