Brauche php Hilfe (IP-Symcon 3.4)

Hallo Leute,
Damit ein Laie ein Bauteil an einen beliebigen funktionierenden Bus umstecken kann, ich wollte gern den Datenbus ermitteln, an dem eine beliebige Instanz (z.B. DS2413) angeschlossen ist. So könnte könnte auch der Laie das Bauteil an einen funktionierenden Bus umstecken.

Mein 30. Versuch:
<


* Listenelement
```<?
							$bauteil = 51331 /*[INSTANZENSUCHE\test]*/;





						if (isset ($_IPS['aufrufer']))
						{
							$bauteil = $_IPS['aufrufer'];
							setvalue(30534 /*[INSTANZENSUCHE\test]*/   , ($bauteil));}
							else

						{
								$bauteil=getvalue(30534);
						}

$i=0;
							
@IPS_DisconnectInstance($bauteil );
 
						
Do {




$alleInstanzen = IPS_GetInstanceListByModuleType(1); // nur I/O Instanzen auflisten
//print_r($alleInstanzen);
$i=0;
$bauteil=((IPS_GetInstanceListByModuleType(1)[$i]));
echo $bauteil;
If (@OW_RequestStatus($bauteil)==false)
{
$datenbus=IPS_GetInstanceListByModuleType(1)[$i];
@$Object=IPS_GetObject($datenbus);
@    @$name=$Object[ObjectName];

echo @$name."  ist der falsche Datenbus"."\n";}else{
$datenbus=IPS_GetInstanceListByModuleType(1)[$i];
@$Object=IPS_GetObject($datenbus);
@    @$name=$Object[ObjectName];}

echo @$name."  ist der richtige Datenbus"."\n";
$i++;
}
while(($i>11));

?>

<?
$bauteil = 51331 /*[INSTANZENSUCHE\test]*/;





						if (isset ($_IPS['aufrufer']))
						{
							$bauteil = $_IPS['aufrufer'];
							setvalue(30534 /*[INSTANZENSUCHE\test]*/   , ($bauteil));}
							else

						{
								$bauteil=getvalue(30534);
						}

$i=0;
							
@IPS_DisconnectInstance($bauteil );
 
						
Do {




$alleInstanzen = IPS_GetInstanceListByModuleType(1); // nur I/O Instanzen auflisten
//print_r($alleInstanzen);
$i=0;
$bauteil=((IPS_GetInstanceListByModuleType(1)[$i]));
echo $bauteil;
If (@OW_RequestStatus($bauteil)==false)
{
$datenbus=IPS_GetInstanceListByModuleType(1)[$i];
@$Object=IPS_GetObject($datenbus);
@    @$name=$Object[ObjectName];

echo @$name."  ist der falsche Datenbus"."\n";}else{
$datenbus=IPS_GetInstanceListByModuleType(1)[$i];
@$Object=IPS_GetObject($datenbus);
@    @$name=$Object[ObjectName];}

echo @$name."  ist der richtige Datenbus"."\n";
$i++;
}
while(($i>11));>
Grüße Jens

Moin,
Scripte mit dem </> Zeichen oben in einen Post einbinden dann bleibt die Formatierung erhalten.

Ralf

Danke :slight_smile:
Grüße Jens

Physikalische Baumansicht in der Konsole öffnen, Schnellfilter die gewünschte InstanzID eingeben und fertig.
Das funktionierte auch in der 3.4 Konsole.
Michael