Modul auf Fehlerhaft setzen / Variablenänderungen bearbeiten

Hi,

ich schreibe derzeit ein Modul, und habe dabei 2 Fragen:

  • [li]Modul als Fehlerhaft markieren
    [/li]Wie kann ich in Delphi eine Instanz meines Moduls in IPS als Fehlerhaft markieren (z.B., wenn Voraussetzungen nicht erfüllt sind) und diesen Status auch wieder zurücknehmen?

    [li]Variablen änderbar machen und darauf reagieren
    [/li]In IPS selbst kann man Variablen ein Skript zuordnen, welches bei einer Variablenänderung aufgerufen wird. Wie funktioniert das innerhalb von Delphi? Wie kann ich eine „Standard“-Aktion implementieren?

Gruss
Coyote

  1. Das machen normalerweise die I/O Module. Aber du kannst es explizit auch machen, wenn du es für dein Modul brauchst.

SetStatus(IS_EBASE); //für Fehler
SetStatus(IS_INACTIVE); //für Grau/Inaktiv
SetStatus(IS_ACTIVE); //alles toll!

  1. Das machst du direkt über die StatusVariablen und ActionHandler. Dann integriert sich das auch wunderbar in das WebFront, ohne dass der User etwas tun muss.

... in der Definition ...
procedure SwitchHandler(StatusVariable: TIPSStatusVariable; Value: Variant);

... im Constructor ....
 RegisterVariable('StatusVariable', _('Status'), vtBoolean, GetDefaultProfile(dpSwitch), 1);
 RegisterActionHandler('StatusVariable', SwitchHandler);

... im Code ....
procedure TIPSFS20.SwitchHandler(StatusVariable: TIPSStatusVariable; Value: Variant);
begin
 SwitchMode(Value);
end;

paresy

Danke - da habe ich wieder was zum tüffteln :wink: