From b68373ae429408fb5291c6dbe5e7bebe27e40e5f Mon Sep 17 00:00:00 2001 From: Lucas Gass Date: Thu, 11 Jul 2024 17:17:29 +0000 Subject: [PATCH] Bug 37316: Treat empty string barcodes as undef To test: 1.Add the following to MarcItemFieldsToOrder: homebranch: 949$a holdingbranch: 949$b itype: 949$y nonpublic_note: 949$x public_note: 949$z loc: 949$c ccode: 949$8 notforloan: 949$7 uri: 949$u copyno: 949$t price: 949$g|949$j replacementprice: 949$v itemcallnumber: 949$o quantity: 949$k budget_code: 949$l coded_location_qualifier: 949$f enumchron: 949$h 2. Add the following to MarcFieldsToOrder: price: 949$g quantity: 949$k budget_code: 949$l discount: 949$m sort1: 949$n sort2: 949$q 3. Acquisitions > Find a vendor 4. Create a new basket -> Add to basket -> From new file 5. Use the file uplodaded in this bug report. 6. Set format to MARCXML and stage for import. 7. Add staged files to basket 8. Select all, make sure you add an item type, and choose 'Do not look for matching records' 9. Save and kaboom. 10. APPLY PATCH and restart_all 11. Follow the steps again, this time no kaboom. Signed-off-by: Martin Renvoize Signed-off-by: Katrin Fischer --- Koha/Item.pm | 3 +++ 1 file changed, 3 insertions(+) diff --git a/Koha/Item.pm b/Koha/Item.pm index 91c15b22d5..247fae7cde 100644 --- a/Koha/Item.pm +++ b/Koha/Item.pm @@ -98,6 +98,9 @@ sub store { $self->itype($self->biblio->biblioitem->itemtype); } + # Ensure barcode is either defined or undef + $self->barcode(undef) if $self->barcode eq ''; + $self->barcode( C4::Circulation::barcodedecode( $self->barcode ) ); my $today = dt_from_string; -- 2.39.5