Hi:
 
I have used MARC::Record for several years now.  I finally have hit a snag in 
processing MARC records.  Our MARC records have several 035 fields.  I want to 
delete all of the 035s except for the 1st one.  I have tried several things to 
accomplish this task without any luck.  I have tried to delete all the 035s and 
then add back the one 035 that I want to keep.  I have discovered that 
$record->delete_field(@m035) deletes all the 035s EXCEPT for the last one.  
Here is my code:
 
while (my $record = $batch->next()) {
   my @m035 = $record->field('035');
   
   foreach ( $record->fields() ) {
      if (@m035) {
         $record->delete_field(@m035);
         }
      print $record->as_formatted(),"\n\n";
   }
 
Am I doing something wrong in trying to delete all the 035s?
 
All suggestions are greatly appreciated!
 
Michael
 
Michael L. Bowden
Harrisburg Area Community College
[EMAIL PROTECTED]
 

 

Harrisburg Area Community College

Reply via email to