Bug 19350 - Holds without link in 773 trigger SQL::Abstract::puke
authorDobrica Pavlinusic <dpavlin@rot13.org>
Wed, 20 Sep 2017 14:01:16 +0000 (16:01 +0200)
committerJonathan Druart <jonathan.druart@bugs.koha-community.org>
Tue, 3 Oct 2017 15:16:49 +0000 (12:16 -0300)
Test:
1. find bibio without items which has something in field 773
   (for us, it's article) but doesn't have 0 or 9 (host item entry)
2. click on hold in left menu
3. verify application error
4. apply patch and verify that it works

Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
C4/Items.pm

index 0b6a77e..b64aa60 100644 (file)
@@ -1341,7 +1341,12 @@ sub get_hostitemnumbers_of {
 
     foreach my $hostfield ( $marcrecord->field($tag) ) {
         my $hostbiblionumber = $hostfield->subfield($biblio_s);
+        next unless $hostbiblionumber; # have tag, don't have $biblio_s subfield
         my $linkeditemnumber = $hostfield->subfield($item_s);
+        if ( ! $linkeditemnumber ) {
+            warn "ERROR biblionumber $biblionumber has 773^0, but doesn't have 9";
+            next;
+        }
         my $is_from_biblio = Koha::Items->search({ itemnumber => $linkeditemnumber, biblionumber => $hostbiblionumber });
         push @returnhostitemnumbers, $linkeditemnumber
           if $is_from_biblio;