my $flag_RibbonTabSource = 0; my $flag_RibbonPanelSource = 0; my $Ribbon_Name = ''; my $Ribbon_UID = ''; my $Ribbon_SourceRef_UID = ''; my $Ribbon_SourceRef_PanelID = ''; my @RibbonPanelSourceReference_UID = (); my @RibbonPanelSourceReference_PenelID = (); my %RibbonTabSource=(); my %RibbonPanelSource=(); # dann werden in einer Schleife Werte ausgelesen und entsprechend den nachfolgenden Variablen zugewiesen. ... $Ribbon_SourceRef_UID = get_xml_tag_subvalue_string($_,"UID"); push(@RibbonPanelSourceReference_UID, $Ribbon_SourceRef_UID); $Ribbon_SourceRef_PanelID = get_xml_tag_subvalue_string($_,"PanelID"); push(@RibbonPanelSourceReference_PenelID, $Ribbon_SourceRef_PanelID); # dann möchte ich den Hashes zusammenbauen ... if (!defined($RibbonTabSource{$Ribbon_UID})){ # einbinden der zugehörigen Tabs my %tmp_TabSource = (); $tmp_TabSource{'Name'} = $Ribbon_Name; $tmp_TabSource{'UID'} = @RibbonPanelSourceReference_UID; $tmp_TabSource{'PenelID'} = @RibbonPanelSourceReference_PenelID; $RibbonTabSource{$Ribbon_UID}=%tmp_TabSource; } else { print "*** RibbonTabSource - ".$Ribbon_UID." mehrfach !!!!\n"; }