$AnzahlF_Wartung=0 $AnzahlDNF_Wartung=0 $AnzahlF_Publish=0 $AnzahlDNF_Publish=0 $AnzahlLog=0 $keinDatum=[00000000] $DatumOM=$keinDatum $DatumNM=$keinDatum $DatumF=$keinDatum $DatumDNF=$keinDatum $TageOM=9999 $maxTageOM=100 $maxTageF=50 $maxF_Wartung=20 $maxDNF_Wartung=2 # Alter des Cache $Alter=$_today - $d_PlacedDate $DatumOM=$d_PlacedDate # Braucht der Cache Wartung $FlagNM=false Table Active=Logs Scope=Parent goto position=bottom while not ($_eol) # Loop durch alle Logs, beim ältesten beginnen $AnzahlLog=$AnzahlLog+1 if $d_lType="Owner Maintenance" $DatumOM=$d_lDate $AnzahlF_Wartung=0 $AnzahlDNF_Wartung=0 $FlagNM=false endif if $d_lType="Needs Maintenance" $DatumNM=$d_lDate $FlagNM=true endif if $d_lType="Found it" $DatumF=$d_lDate $AnzahlF_Wartung=$AnzahlF_Wartung+1 $AnzahlF_Publish=$AnzahlF_Publish+1 endif if $d_lType="Didn't find it" $DatumDNF=$d_lDate $AnzahlDNF_Wartung=$AnzahlDNF_Wartung+1 $AnzahlDNF_Publish=$AnzahlDNF_Publish+1 endif if $d_lType="Write Note" endif goto position=previous endwhile table Active=Caches #Debuggen $text = "*** Debug ***" $text = $text + $_newline + "$d_name: $Alter alt ($d_Placedby)" $text = $text + $_newline + "OM: $DatumOM, NM: $DatumNM, Notwendig: $FlagNM" $text = $text + $_newline + "F: letzter am $DatumF, seit Wartung ($DatumOM) $AnzahlF_Wartung, gesamt $AnzahlF_Publish" $text = $text + $_newline + "DNF: letzter am $DatumDNF, seit Wartung ($DatumOM) $AnzahlDNF_Wartung, gesamt $AnzahlDNF_Publish" clip Data=$text # Kriterien erstellen $TageOM=datediff($DatumOM,$_today) $TageF =datediff($DatumF,$_today) # Kriterien prüfen # Gibts ein NM seit der letzten Wartung? $kritNM=$FlagNM # Gibt es zu viele F seit der letzten Wartung? if $AnzahlF_Wartung > $maxF_Wartung $kritF=true else $kritF=false endif # Gibt es zu viele DNF seit der letzten Wartung? if $AnzahlDNF_Wartung > $maxDNF_Wartung $kritDNF=true else $kritDNF=false endif # Ist die letzte Wartung zulange her? if $TageOM > $maxTageOM $kritOM=true else $kritOM=false endif # Ist der letzte Fund zulange her? if $TageF > $maxTageF $kritTageF=true else $kritTageF=false endif # Soll-Daten berechnen $NaechstWartOM=$DatumOM + $maxTageOM $NaechstWartF=$DatumF + $maxTageF $NaechstWart=$NaechstWartOM if $NaechstWartF<$NaechstWartOM $NaechstWart=$NaechstWartF endif $outW="" $outKritNM="ok" if $kritNM=true $outKritNM="!!!" endif $outKritF="$AnzahlF_Wartung
(max $maxF_Wartung)" if $kritF=true $outKritF="$AnzahlF_Wartung
(>$maxF_Wartung)" endif $outKritDNF="$AnzahlDNF_Wartung
(max $maxDNF_Wartung)" if $kritDNF=true $outKritDNF="$AnzahlDNF_Wartung
(>$maxDNF_Wartung)" endif $outKritOM="$DatumOM ($TageOM)
(max $maxTageOM)" if $kritOM=true $outKritOM="$DatumOM ($TageOM)
(>$maxTageOM)" endif $outKritTageF="$DatumF ($TageF)
(max $maxTageF)" if $kritTageF=true $outKritOM="$DatumF ($TageF)
(>$maxTageF)" endif $d=$d+1