From: dbs Date: Sat, 23 Feb 2008 01:34:49 +0000 (+0000) Subject: And check for duplicate IDs in the main loop, just like miker asked X-Git-Url: https://old-git.evergreen-ils.org/?a=commitdiff_plain;h=40340c98e5699a9be81ca0e9b6515b9ed1396387;p=Evergreen.git And check for duplicate IDs in the main loop, just like miker asked git-svn-id: svn://svn.open-ils.org/ILS/trunk@8830 dcc99617-32d9-48b4-a31d-7c20da2025e4 --- diff --git a/Open-ILS/src/extras/import/marc2bre.pl b/Open-ILS/src/extras/import/marc2bre.pl index 9d8014ddef..b6c658b3d7 100755 --- a/Open-ILS/src/extras/import/marc2bre.pl +++ b/Open-ILS/src/extras/import/marc2bre.pl @@ -149,6 +149,7 @@ while ( try { $rec = $batch->next } otherwise { $rec = -1 } ) { $id =~ s/\D+//gso; } + $id = '' if (exists $dontuse_id{$id}); } if (!$id) { @@ -168,7 +169,7 @@ while ( try { $rec = $batch->next } otherwise { $rec = -1 } ) { my $tcn; ($rec, $tcn) = preprocess($rec, $id); - $tcn->add_subfields(c => $id); + $tcn->add_subfields(c => $id); $rec->delete_field( $_ ) for ($rec->field($id_field)); $rec->append_fields( $tcn ); @@ -214,12 +215,14 @@ sub preprocess { my $rec = shift; my $id = shift; - my ($source, $value) = ('','',''); + my ($source, $value) = ('',''); + + $id = '' if (exists $dontuse_id{$id}); if (!$id) { my $f = $rec->field('001'); $id = $f->data if ($f); - $id = '' if (exists $dontuse_id{$id}); + $id = '' if (exists $dontuse_id{$id}); } if (!$id || exists $dontuse_id{$source.$id}) {