$hshFoo{$keyNew} = $strFile; # Ex: # $hshFoo{"203000"} = "203000.xml"; #### ####################### # here is the code... sub get_hshAgg { my $self = shift; return %{$self->{hshAgg}}; } sub set_hshAgg { my $self = shift; my %hshToAgg = shift; $self->{hshAgg} = \%hshToAgg; } sub run { my $self = Foo->new(@_); my %hshToAgg = (); my $class; ( $class, %hshToAgg ) = @_; $self->set_id($intID); $self->set_hshAgg(%hshToAgg); use Data::Dumper; print Dumper \%hshToAgg; # OUTPUT: THIS WORKS! #$VAR1 = { # '2030000' => '2030000.XML', # '2030001' => '2030001.XML', # '2030002' => '2030002.XML' # }; print "After instantiation\n"); my %hshTest = $self->get_hshAgg(); print Dumper \%hshTest; # OUTPUT: THIS DOES NOT WORK! #$VAR1 = { # '2030000' => undef # }; }