Diese Seite wurde vor mehr als 2 Jahren erstellt und vor über einem Monat zuletzt bearbeitet. Eventuell ist längst ihr Mindesthaltbarkeitsdatum überschritten!
Ein einfaches Skript zum Ablegen einiger Kenndaten in Systemvariablen, zum Erstellen von Ausgaben wie
428 Kanäle in 137 Geräten und 91 CUxD-Kanäle in 6 CUxD-Geräten
Anzahl_Geraete, Typ: IntegerAnzahl_Kanaele, Typ: IntegerAnzahl_CUxD_Geraete, Typ: IntegerAnzahl_CUxD_Kanaele, Typ: IntegerDies ist ein Rohgerüst ohne Fehlerbehandlung. "Works for me", macht was draus.
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() );
}
}
}
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"); }
dom.GetObject("Anzahl_Geraete").State(i_devices);
dom.GetObject("Anzahl_Kanaele").State(i_channels);
dom.GetObject("Anzahl_CUxD_Geraete").State(i_cdevices);
dom.GetObject("Anzahl_CUxD_Kanaele").State(i_cchannels);
string s_typeidx;
string s_typeidx2;
string s_typechecked = "";
integer i_subcount;
foreach (s_typeidx, s_typelist) {
if (s_typechecked.Find(s_typeidx # ", ") == -1) {
i_subcount = 0;
foreach (s_typeidx2, s_typelist) {
if (s_typeidx2 == s_typeidx) {
i_subcount = i_subcount + 1; }
}
s_typechecked = s_typechecked # i_subcount # "x " # s_typeidx # ", ";
}
}