« Zurück zu Produkt

Dokumentation

IPS_GetObjectIDByIdent

Benötigt: IP-Symcon >= 2.5

 int IPS_GetObjectIDByIdent (string $ObjektIdent, int $ÜbergeordneteID) 

Parameterliste

ObjektIdent

Zu suchender ObjektIdentifikator

ÜbergeordneteID

Objekt, in dessen direkten Unterobjekten gesucht werden soll

Rückgabewert

ID des gefundenen Objekts, sonst FALSE

Beschreibung

Die Funktion versucht die ID des Objekts mit dem Identifikator ObjektIdent, dessen übergeordnetes Objekt die ID ÜbergeordneteID besitzt, zu ermitteln. Falls ein solches Objekt gefunden wurde, wird dessen ID zurückgegeben, andernfalls FALSE.

Warning

Der Parameter "ObjektIdent" darf kein Leerstring ("") sein.

Warning

__Unterschied zu IPS_GetObjectIDByName:__ Da ObjektIdents innerhalb einer Ebene in IP-Symcon eindeutig sind, wird entweder eine einzelne ID zurückgegeben oder eine Warnung generiert.

Warning

Sollte der Ident nicht gefunden werden, generiert diese Funktion eine Warnung. Es muss der @ Operator genutzt werden, falls diese Meldung unterdrückt werden soll. Die genau Funktionsweise dieses Operators kann dem PHP Handbuch entnommen werden.

Beispiel

//Diese Funktion kann als Ersatz für IPS_StatusVariableExists verwendet werden. 
//Beispiel für IPS_StatusVariableExists($id, "StatusVariable");
echo !(@IPS_GetObjectIDByIdent("StatusVariable", $id) === false);

//Ferner kann diese Funktion auch ein Ersatz für IPS_GetStatusVariableID darstellen. 
//Beispiel für IPS_GetStatusVariableID($id, "StatusVariable");
echo IPS_GetObjectIDByIdent("StatusVariable", $id);
        
        
$id = IPS_GetObjectIDByIdent($VariableIdent, $InstanceID);        
$v = IPS_GetVariable($id);

// Array ab 4.0
$sv = Array(
    "VariableID" => $id,
    "VariableIdent" => $VariableIdent,
    "VariableName" => "N/A",
    "VariablePosition" => 0,
    "VariableProfile" => $v['VariableProfile'],
    "VariableType" => $v['VariableType'],
    "VariableHasAction" => ($v['VariableAction'] > 0),
    "VariableUseAction" => ($v['VariableAction'] > 0)
);

// Array bis 3.4
$sv = Array(
    "VariableID" => $id,
    "VariableIdent" => $VariableIdent,
    "VariableName" => "N/A",
    "VariablePosition" => 0,
    "VariableProfile" => $v['VariableProfile'],
    "VariableType" => $v['VariableValue']['ValueType'],
    "VariableHasAction" => ($v['VariableAction'] > 0),
    "VariableUseAction" => ($v['VariableAction'] > 0)
);
Haben Sie noch Fragen?