Hi, Can anyone help me get the code right to read from a previous lines shelfkey($L[13] to compare. This is what I'm using now which does not work " if($Sortbyshelfkey{$f}[13] eq $_($Sortbyshelfkey{$f}[13])) "

What i'm trying to do is since this code sorts by shelfkey then by item number, i want it to print the shelfkey once with all the item numbers with the same shelfkey under it

G15.A4.115
3005112
3114112
9655221


$data_file="youthbooksc.txt";
open(DAT, $data_file);
@L=();
%Sortbyshelfkey=();
while(<DAT>)
{
chomp;
@L=split(/\|/, $_);
if($. > 1)
{
@{$Sortbyshelfkey{$L[13]}}=@L;
@{$Sortbyshelfkey{$L[18]}}=@L;
}
}
foreach my $f (sort keys %Sortbyshelfkey)
{
if($Sortbyshelfkey{$f}[13] eq $_($Sortbyshelfkey{$f}[13])) #LOOK HERE!!
{
print "\t $Sortbyshelfkey{$f}[18] $Sortbyshelfkey{$f}[19] $Sortbyshelfkey{$f}[20] $Sortbyshelfkey{$f}[21] $Sortbyshelfkey{$f}[22] $Sortbyshelfkey{$f}[23] $Sortbyshelfkey{$f}[24] $Sortbyshelfkey{$f}[24] $Sortbyshelfkey{$f}[25]\n";
}
else{
print "Call # $Sortbyshelfkey{$f}[13] \n";
print "\t $Sortbyshelfkey{$f}[18] $Sortbyshelfkey{$f}[19] $Sortbyshelfkey{$f}[20] $Sortbyshelfkey{$f}[21] $Sortbyshelfkey{$f}[22] $Sortbyshelfkey{$f}[23] $Sortbyshelfkey{$f}[24] $Sortbyshelfkey{$f}[24] $Sortbyshelfkey{$f}[25]\n";
}

}