Dann hab ich dich doch richtig verstanden?! Du willst alle Variablen löschen, die dass Logging in der Variable ausgeschaltet haben, aber im Archiv aufgelistet werden, weil das Logging irgendwann mal eingeschaltet war?!
Dann müsste man ein Skript schreiben, welches alle Variablen im Archiv in ein Array schreibt. Dann alle Variablen im IPS durchlaufen, jeweils prüfen ob das Logging ausgeschaltet ist, wenn das Logging ausgeschaltet ist, dann prüfen ob die Variable im Archiv-Array auftaucht. Dann gegebenenfalls noch erweitern um > hat dieser Archiveintrag geloggte Werte. Am Ende löschen.
werde mich da mal an einem Script versuchen. Ich hatte allerdings angenommen, dass die Löschfunktion im Modul Archiv das auch kann - tut es aber zur Zeit (noch) nicht.
Nein, im Archiv kann man nur komplette Einträge löschen (mit allen Werten), oder Werte in einer bestimmten Zeitspanne.
Starte mal das Skript bei dir, dann sieht du, ob überhaupt Variablen im Archiv sind, bei denen das Logging ausgeschaltet ist. Keine Sorge, ist nur eine AUSGABE, da wird nichts gelöscht!
<?
$ArchiveHandlerID = IPS_GetInstanceListByModuleID('{43192F0B-135B-4CE7-A0A7-1475603F3060}')[0];
$Logged_Vars_AR = AC_GetAggregationVariables($ArchiveHandlerID,false);
foreach ($Logged_Vars_AR as $Logged_Var) {
$Logged_VarsID_AR[] = $Logged_Var['VariableID'];
}
$IPS_VarID_AR = IPS_GetVariableList();
foreach ($IPS_VarID_AR as $IPS_VarID) {
$LogStatus = AC_GetLoggingStatus($ArchiveHandlerID, $IPS_VarID);
if ($LogStatus === false) { // 0 = Logging AUS, 1 = Logging AN
if (in_array($IPS_VarID, $Logged_VarsID_AR)) {
$LoggingAUS_ImArchiv_AR[] = $IPS_VarID;
}
}
}
if (isset($LoggingAUS_ImArchiv_AR)) {
$count = count($LoggingAUS_ImArchiv_AR);
echo "Es wurden $count Variablen im Archiv gefunden, bei denen das Logging ausgeschaltet ist!".PHP_EOL;
print_r($LoggingAUS_ImArchiv_AR);
}
else {
echo "Es wurden keine Variablen im Archiv gefunden, bei denen das Logging ausgeschaltet ist!";
}
?>
Du meinst beim Umzug von IPS 3.4 auf IPS 4? Ja, die Daten werden in bei der Installation in das neue Datenbankformat konvertiert. Wird auch in den entsprechenden IPS4-Threads erwähnt.