IPS_GetChildrenIDs ... Reihenfolge der Children

Hallo,
ich teste gerade meine Scripts mit der Version 4 … dabei bin ich auf ein Problem gestoßen:

Die Reihenfolge der Children bei der Abfrage über die Funktion IPS_GetChildrenIDs ist anders als wie im Objektbaum gezeigt. Da ich bisher in einem meiner Scripts auf die Reihenfolge, wie im Objektbaum gezeigt, gebaut habe falle ich jetzt auf die Nase …,
Kann mir da jemand einen Tip geben?

Gruß, Michael

Moin…

…selbes Problem hatte ich auch. Hier mein Thema:

IPS_GetChildrenIDs sortiert wie im Objektbaum?!

Ich habe es so gelöst:


	function zwave_shutter_central_up($shutter_katID)
      {
			foreach(IPS_GetChildrenIDs($shutter_katID) as $objectID){
    		$object = IPS_GetObject($objectID);
    		$objectList[$object["ObjectPosition"]] = $object["ObjectID"];
    		ksort($objectList);
			}
         foreach ($objectList as $ID){
			$intensityID = IPS_GetVariableIDByName('Intensity',$ID);
			$intensity = GetValue($intensityID);
 			if ($intensity <= 96){
				@ZW_SwitchMode($ID,true);
      		IPS_Sleep(250);
    			}
         }
      }



Der interessante Teil für dich ist $objectList… bzw. ksort($objectList).

Gruß,
Peter

Die IP-Symcon 3.4 liefert die Children immer nach ObjektID sortiert. Nie so wie im Baum… :slight_smile:
Falls doch… purer Zufall… den wir nie beabsichtigt haben.

paresy

So, habe jetzt meine Scripts angepasst => läuft.
Besten Dank für die schnellen Hinweise.

Ja, da habe ich wohl in der Vergangenheit nicht sauber programmiert und zufällig hat es gepasst … da hat der Umstieg auf 4.x auch programmiertechnisch sein Gutes.

Wenden wir uns der nächsten Baustelle zu: Das Kommunizieren mit der CCU2 klappt nicht mehr: wenn ich den Konfigurator öffne schmiert IPS ab … der Konfigurator für das LAN Interface funktioniert problemlos ???

Gruß Michael