From c13d4faff7a1afb5f6459c80b80b34476b856cda Mon Sep 17 00:00:00 2001 From: Christophe Croullebois Date: Wed, 7 Dec 2011 11:54:29 +0100 Subject: [PATCH] Bug 7329: Items onloan are deleted when undoing import into catalog this patch checks the "on loan" and "reserved" status before deleting item, and do noting in this case, so the record can't be deleted due to existing item. Signed-off-by: Katrin Fischer --- C4/ImportBatch.pm | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/C4/ImportBatch.pm b/C4/ImportBatch.pm index 5bf79bf369..c133b5d721 100644 --- a/C4/ImportBatch.pm +++ b/C4/ImportBatch.pm @@ -715,13 +715,18 @@ sub BatchRevertItems { $sth->bind_param(1, $import_record_id); $sth->execute(); while (my $row = $sth->fetchrow_hashref()) { - DelItem($dbh, $biblionumber, $row->{'itemnumber'}); - my $updsth = $dbh->prepare("UPDATE import_items SET status = ? WHERE import_items_id = ?"); - $updsth->bind_param(1, 'reverted'); - $updsth->bind_param(2, $row->{'import_items_id'}); - $updsth->execute(); - $updsth->finish(); - $num_items_deleted++; + my $error = DelItemCheck($dbh, $biblionumber, $row->{'itemnumber'}); + if ($error == 1){ + my $updsth = $dbh->prepare("UPDATE import_items SET status = ? WHERE import_items_id = ?"); + $updsth->bind_param(1, 'reverted'); + $updsth->bind_param(2, $row->{'import_items_id'}); + $updsth->execute(); + $updsth->finish(); + $num_items_deleted++; + } + else { + next; + } } $sth->finish(); return $num_items_deleted; -- 2.39.5