@HarmonyFan
Ich hatte das mal seinerzeit mit @Dr.Niels in einem anderen Kontext diskutiert.
Das Problem ist, das ein Property nicht weis, welchen Typ es hat. Man muss daher das dazu passende Konfigurationsformular auslesen und interpretieren - dann weis man ja, welches Property welchen Typ hat.
Ist aber wirklich nicht unaufwendig, insbesondere, wenn man (verschachtelte) Listen hat; daher hatte ich das nicht weiter verfolgt.
Nebenbei: das das Element in der Action SCRIPT heisst, ist auch nicht in Stein gemeisselt. Wenn man eigene Actions in einem Modul macht, kann die Variable mit dem PHP-Code ja heissen, wie man will. Man müsste daher auch die Definition der jew. Action parsen.
Ich überprüfen ja die Aktionen in Ereignissen und in Ablaufplänen und die darin enthaltenen Scripte; hier gehe ich der Handhabbarkeit halber davon aus, das Scripte auch SCRIPT heissen …
Nur für Instanzen habe ich mir das aus diesem Grund geklemmt. Ich überprüfe ja auch aus gleichem Grund nicht jedes Integer-Property darauf, ob das ein (gültiges) Objekt ist
Hi,
schade das es keinen sicheren Weg gibt. Gerade da ist es sehr schwer einen Fehler zu finden. Bei meinem „Fehler“ im Anrufmonitor brauchte ich Wochen bis das AHA-Erlebnis kam.
ich verwende mehr und mehr Ablaufpläne. Oft für Dinge wie klassische „Treppenhauslicht-Timer“. Diese Ablaufpläne laufen dann recht lange, 5 Minuten und mehr. Das löst dann im Integrity Check immer eine Warnung aus bzgl. zu lange laufendem Skript.
Leider hilft es auch nicht, die betroffenen Ablaufpläne in die Liste der zu ignorierenden Objekte hinzuzufügen. An der Stelle wäre es toll, wenn es eine zusätzliche Kategorie in den Settings gäbe, um bestimmte Skripte & Ablaufpläne von der Threads Prüfung auszuschließen. Oder gar im Ablaufplan selbst einen Kommentar zu hinterlassen, dass dieser bitte ausgeschlossen werden soll.
Schau mal die 1.14 (Modulstore/Beta), da kann man Script-IDs bei im Panel Threads angeben.
Sollte helfen.
Das funktioniert aber nur bei Scripten und Ablaufplänen, langlaufende Funktionen von Modulen kann man so nicht ausblenden, weil in den Thread-Informationen kein Verweis auf eine bestimmte Instanz (Instanz-ID) vorhanden ist, sondern nur eine Funktionsaufruf - und bestimmte Funktionsname sind nicht so selten
@Dr.Niels : wäre es nicht denkbar, das man die Instanz-ID mit in den Thread-Informationen (IPS_GetScriptThread()) unterbringt?