Browse Source

Bug 20811: (QA follow-up) Prevent calling AddItemBatchFromMarc and ModBiblioMarc without biblionumber

If you use -update but do not find matches (or did not want to match), you
should not call those routines. We should warn and skip this record.

Adding a warn at the start that the choice of options may not be smart.
Note that this needs further attention somewhere else. You could mix
-update with -insert for instance and still see some problems. (May depend
on items with unique barcode etc.)

Test plan:
Run -update without match or isbn.
Or run -update -isbn with a non-matching ISBN.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
18.11.x
Marcel de Rooy 6 years ago
committed by Nick Clemens
parent
commit
15b865c6ee
  1. 5
      misc/migration_tools/bulkmarcimport.pl

5
misc/migration_tools/bulkmarcimport.pl

@ -100,6 +100,9 @@ if ($version || ($input_marc_file eq '')) {
pod2usage( -verbose => 2 );
exit;
}
if( $update && ( !$match || $isbn_check ) ) {
warn "Using -update without -match or -isbn seems to be useless.\n";
}
if(defined $localcust) { #local customize module
if(!-e $localcust) {
@ -473,7 +476,9 @@ RECORD: while ( ) {
printlog( { id => $id || $originalid || $biblionumber, op => "insert", status => "ok" } ) if ($logfile);
}
} else {
warn "WARNING: Updating record ".($id||$originalid)." failed";
printlog( { id => $id || $originalid || $biblionumber, op => "update", status => "warning : not in database" } ) if ($logfile);
next RECORD;
}
}
eval { ( $itemnumbers_ref, $errors_ref ) = AddItemBatchFromMarc( $record, $biblionumber, $biblioitemnumber, '' ); };

Loading…
Cancel
Save