Mal sehen ob ich den Anlernknopf finde.... steht wie üblich nicht in der Anleitung...
![Mr. Green :mrgreen:](./images/smilies/icon_mrgreen.gif)
![Mr. Green :mrgreen:](./images/smilies/icon_mrgreen.gif)
![Mr. Green :mrgreen:](./images/smilies/icon_mrgreen.gif)
Volkmar
..und ich dachte immer, wired-Komponenten lernen sich automatisch an???
Moderator: Co-Administratoren
Hi,teddy278 hat geschrieben: - ausgeblendete Geräte/Kanäle werden gar nicht/unvollständig aufgelistet
Hi,teddy278 hat geschrieben: Ich fürchte nicht. Zumal ich alle Geräte ausgeblendet habe, die ich auch in der Inventur nicht unbedingt sehen will.![]()
Code: Alles auswählen
string s_device;
object o_device;
integer i_devices = 0;
string s_channel;
object o_channel;
integer i_channels = 0;
string s_typelist = "";
string s_temp;
foreach(s_device, dom.GetObject(ID_DEVICES).EnumUsedIDs()) {
var o_device = dom.GetObject(s_device);
if ((o_device.Address() != "BidCoS-Wir") && (o_device.Address() != "BidCoS-RF")) {
i_devices = i_devices + 1;
s_temp = i_devices.ToString();
if (i_devices < 10) { s_temp = " " # s_temp; }
if (i_devices < 100) { s_temp = " " # s_temp; }
WriteLine (s_temp # " " # o_device.Address () # " " # o_device.HssType () # " (" # o_device.Name() # ")");
s_typelist = s_typelist # o_device.HssType () # "\t";
foreach(s_channel, o_device.Channels().EnumUsedIDs()) {
i_channels = i_channels + 1;
o_channel = dom.GetObject(s_channel);
s_temp = " :" # o_channel.Address().StrValueByIndex(":",1);
WriteLine(s_temp # " " # o_channel.Name() );
}
}
}
WriteLine("--------------------------------------------");
WriteLine(i_channels # " Kanäle in " # i_devices # " Geräten:");
string s_typeidx;
string s_typeidx2;
string s_typechecked = "";
integer i_subcount;
foreach (s_typeidx, s_typelist) {
! EnergyStar 13.10.2010 vvv
! den Suchstring um ein Komma und ein Leerzeichen erweitern um kein Teilstringproblem zu bekommen
if (s_typechecked.Find(s_typeidx # ", ") == -1) {
! EnergyStar 13.10.2010 ^^^
i_subcount = 0;
foreach (s_typeidx2, s_typelist) {
if (s_typeidx2 == s_typeidx) {
i_subcount = i_subcount + 1; }
}
! EnergyStar 13.10.2010 vvv
! immer ein Komma und ein Leerzeichen anfügen
s_typechecked = s_typechecked # i_subcount # "x " # s_typeidx # ", ";
! EnergyStar 13.10.2010 ^^^
}
}
! EnergyStar 13.10.2010 vvv
! überflüssiges Komma und Leerzeichen am Ende entfernen
WriteLine (s_typechecked.Substr(0, s_typechecked.Length() - 2));
! EnergyStar 13.10.2010 ^^^
WriteLine("--------------------------------------------");
Code: Alles auswählen
string s_device;
object o_device;
integer i_devices = 0;
integer i_cdevices = 0;
string s_channel;
object o_channel;
integer i_channels = 0;
integer i_cchannels = 0;
string s_typelist = "";
string s_temp;
foreach(s_device, dom.GetObject(ID_DEVICES).EnumUsedIDs()) {
var o_device = dom.GetObject(s_device);
boolean is_cux = o_device.Address().Substr(0,3) == "CUX";
if ((o_device.Address() != "BidCoS-Wir") && (o_device.Address() != "BidCoS-RF")) {
if (is_cux) {
i_cdevices = i_cdevices + 1;
s_temp = i_cdevices.ToString();
} else {
i_devices = i_devices + 1;
s_temp = i_devices.ToString();
}
if (i_devices < 10) { s_temp = " " # s_temp; }
if (i_devices < 100) { s_temp = " " # s_temp; }
if (is_cux) { s_temp = "C" # s_temp; }
else { s_temp = " " # s_temp; }
WriteLine(s_temp # " " # o_device.Address() # " " # o_device.HssType() # " (" # o_device.Name() # ")");
if (is_cux) { s_typelist = s_typelist # o_device.Address().Substr(0,5) # "\t"; }
else { s_typelist = s_typelist # o_device.HssType() # "\t"; }
foreach(s_channel, o_device.Channels().EnumUsedIDs()) {
if (is_cux) { i_cchannels = i_cchannels + 1; }
else { i_channels = i_channels + 1; }
o_channel = dom.GetObject(s_channel);
s_temp = " :" # o_channel.Address().StrValueByIndex(":",1);
WriteLine(s_temp # " " # o_channel.Name() );
}
}
}
WriteLine("--------------------------------------------");
Write(i_channels # " Kanäle in " # i_devices # " Geräten");
if (i_cdevices > 0) { Write(" und "#i_cchannels # " CUxD-Kanäle in " # i_cdevices # " CUxD-Geräten"); }
WriteLine(":");
string s_typeidx;
string s_typeidx2;
string s_typechecked = "";
integer i_subcount;
foreach (s_typeidx, s_typelist) {
! EnergyStar 13.10.2010 vvv
! den Suchstring um ein Komma und ein Leerzeichen erweitern um kein Teilstringproblem zu bekommen
if (s_typechecked.Find(s_typeidx # ", ") == -1) {
! EnergyStar 13.10.2010 ^^^
i_subcount = 0;
foreach (s_typeidx2, s_typelist) {
if (s_typeidx2 == s_typeidx) {
i_subcount = i_subcount + 1; }
}
! EnergyStar 13.10.2010 vvv
! immer ein Komma und ein Leerzeichen anfügen
s_typechecked = s_typechecked # i_subcount # "x " # s_typeidx # ", ";
! EnergyStar 13.10.2010 ^^^
}
}
! EnergyStar 13.10.2010 vvv
! überflüssiges Komma und Leerzeichen am Ende entfernen
WriteLine(s_typechecked.Substr(0, s_typechecked.Length() - 2));
! EnergyStar 13.10.2010 ^^^
WriteLine("--------------------------------------------");