Wie finde ich heraus, ob eine Variable eine Statusvariable ist

Ich habe ein Script, welches neben anderen Aktionen auch den Wert der Variablen verändert.
Dies ist bei Statusvariablen entweder gar nicht (kein Aktionsskript hinterlegt) oder nur mit RequestAction statt SetValue möglich.
Wie kann ich herausfinden, (wenn ich nur die ID der Variable kenne) ob eine Variable eine Statusvariable ist?
Ich möchte eigentlich nur die Warnung im Log vermeiden:

Warning: Variable is marked as read-only and cannot be changed

Gruß Thomas

Was hast du überhaupt vor?

Hilft dir HasAction — IP-Symcon :: Automatisierungssoftware weiter?

Die hat aber einen Grund.
Bei solchen Aussagen verweise ich immer gerne darauf die Grundlagen in der Doku zu Statusvariablen noch einmal zu lesen.
Ansonsten, wie @tobiasr schon fragte:
Was hast du überhaupt vor?
Michael

Was habe ich vor:
Ich habe ein Script das mit dem Inhalt von Variablen arbeitet, u.a. das Archiv bearbeitet und eben auch manchmal den Inhalt der Variablen ändert.
Bis auf das Schreiben in die Variable funktionieren alle anderen Aktionen sowohl für Variablen als auch für Statusvariablen.
Ich würde also gerne das Beschreiben der Variable für Statusvariablen verhindern (da das dann anders lösen würde und die Warnung dann nicht im Log auftaucht).
Die Alternative wäre natürlich der Funktion als Aufrufparameter mit zu übergeben ob die Variable eine Statusvariable ist (aktuell würde das aufrufende Skript dies wissen), wollte aber gerne, das die Funktion das selbst entscheiden kann.
Die Statusvariablen die ich aktuell verwende haben leider (wie auch andere Variablen kein Actionsscript, daher kann das nicht als Kriterium genommen werden.
Gruß Thomas

Im Ident steht, ob es eine Statusvariable ist.

1 „Gefällt mir“

Ah, danke
mit IPS_GetObject gehts:

ObjectIsReadOnly	boolean	TRUE, wenn das Objekt schreibgeschützt ist. (Wird zur Zeit nur für Status Variablen benutzt)

Gruß Thomas

Es gibt auch Scripte welche Ihre Variablen mit Idents versehen… das ist kein Kriterium.
@Thomas :
Schau mal hier:

Index: ObjectIsReadOnly

TRUE, wenn das Objekt schreibgeschützt ist. (Wird zur Zeit nur für Status Variablen benutzt)

Michael
PS: 5ms zu spät :rofl: