Hallo,
irgendwie kann ich nicht nachvollziehen was hier schiefläuft. Folgendes sub habe ich geschrieben (o, zusammenkopiert)
sub
HMLANRepeaterCfgOG() {
my $rptr = "HMLAN_RepeaterOG";
my $no = 1;
my $sendName = "";
my $recName = "";
my %cfgArr = (
"F15D62" => "Badezimmer_TC",
"Badezimmer_TC" => "F15D62",
"F15D62" => "Badezimmer_FH",
"Badezimmer_FH" => "F15D62",
"F15D62" => "Schlafzimmer_TC",
"Schlafzimmer_TC" => "F15D62",
"F15D62" => "Schlafzimmer_FH_Tuer",
"Schlafzimmer_FH_Tuer" => "F15D62",
"F15D62" => "Schlafzimmer_FH_Fenster",
"Schlafzimmer_FH_Fenster" => "F15D62",
"F15D62" => "Janine_TC",
"Janine_TC" => "F15D62",
"F15D62" => "Janine_FH_Tuer",
"Janine_FH_Tuer" => "F15D62",
"F15D62" => "Janine_FH_Fenster",
"Janine_FH_Fenster" => "F15D62",
"F15D62" => "Janine_TC",
"Vanessa_TC" => "F15D62",
"F15D62" => "Vanessa_FH_Tuer",
"Vanessa_FH_Tuer" => "F15D62",
"F15D62" => "Vanessa_FH_Fenster",
"Vanessa_FH_Fenster" => "F15D62",
"F15D62" => "BadezimmerRolladen",
"BadezimmerRolladen" => "F15D62",);
while ( ($sendName, $recName) = each %cfgArr ) {
Log 1, ">>> $no $sendName $recName";
$no++;
};
}
Dies ergibt dann diesen Log-Eintrag.
2013.07.15 17:31:44.319 1: >>> 1 Vanessa_TC F15D62
2013.07.15 17:31:45.102 1: >>> 2 Schlafzimmer_FH_Tuer F15D62
2013.07.15 17:31:45.102 1: >>> 3 F15D62 BadezimmerRolladen
2013.07.15 17:31:45.102 1: >>> 4 BadezimmerRolladen F15D62
2013.07.15 17:31:45.103 1: >>> 5 Schlafzimmer_TC F15D62
2013.07.15 17:31:45.103 1: >>> 6 Badezimmer_TC F15D62
2013.07.15 17:31:45.103 1: >>> 7 Janine_FH_Tuer F15D62
2013.07.15 17:31:45.107 1: >>> 8 Schlafzimmer_FH_Fenster F15D62
2013.07.15 17:31:45.109 1: >>> 9 Janine_FH_Fenster F15D62
2013.07.15 17:31:45.112 1: >>> 10 Janine_TC F15D62
2013.07.15 17:31:45.113 1: >>> 11 Vanessa_FH_Fenster F15D62
2013.07.15 17:31:45.113 1: >>> 12 Badezimmer_FH F15D62
2013.07.15 17:31:45.113 1: >>> 13 Vanessa_FH_Tuer F15D62
Zum einen nicht volständig, zum anderen sollte das nicht sauber von oben nach unten abgearbeitet werden?
Verzweifelten Dank schon mal.
ciao walter
bei einem assoziativen array kannst du für jeden key (dein index) genau einen wert hinterlegen. wenn du für den gleichen key einen zweiten wert hinterlegst überschreibst du den ersten. die reihenfolge der keys ist nicht definiert.
wenn du mehr als einen wert pro key hinterlegen willst musst du als value etwas verwenden das mehrere elemente halten kann. also eine liste oder ein array. z.b. etwas in der art:
... "F15D62" => ["Badezimmer_TC", "Badezimmer_FH",...],...
gruss
andre
ok, Danke Andre.
ciao walter