Bug 29697: Fix t/db_dependent/Exporter/Record.t
authorJonathan Druart <jonathan.druart@bugs.koha-community.org>
Mon, 25 Jul 2022 12:26:27 +0000 (14:26 +0200)
committerTomas Cohen Arazi <tomascohen@theke.io>
Mon, 25 Jul 2022 12:30:35 +0000 (09:30 -0300)
Not sure about the warn, we shouldn't need it as we are raising an
exception. But better (for now) than introducing regressions.

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
C4/Record.pm
Koha/Biblio/Metadata.pm
Koha/Exporter/Record.pm

index 3de35a2..69a60f3 100644 (file)
@@ -460,7 +460,10 @@ sub marcrecord2csv {
     # Getting the record
     my $biblio = Koha::Biblios->find($biblionumber);
     return unless $biblio;
-    my $record = $biblio->metadata->record({ embed_items => 1, itemnumbers => $itemnumbers });
+    my $record = eval {
+        $biblio->metadata->record(
+            { embed_items => 1, itemnumbers => $itemnumbers } );
+    };
     return unless $record;
     # Getting the framework
     my $frameworkcode = $biblio->frameworkcode;
index ad45179..78361ab 100644 (file)
@@ -111,6 +111,7 @@ sub record {
         my $marcxml_error = $@;
         chomp $marcxml_error;
         unless ($record) {
+            warn $marcxml_error;
             Koha::Exceptions::Metadata::Invalid->throw(
                 id             => $self->id,
                 biblionumber   => $self->biblionumber,
index 1716e9c..e678c36 100644 (file)
@@ -127,10 +127,14 @@ sub _get_biblio_for_export {
     return if $@ or not defined $record;
 
     if ($export_items) {
-        C4::Biblio::EmbedItemsInMarcBiblio({
-            marc_record  => $record,
-            biblionumber => $biblionumber,
-            item_numbers => $itemnumbers });
+        Koha::Biblio::Metadata->record(
+            {
+                record       => $record,
+                embed_items  => 1,
+                biblionumber => $biblionumber,
+                item_numbers => $itemnumbers,
+            }
+        );
         if ($only_export_items_for_branches && @$only_export_items_for_branches) {
             my %export_items_for_branches = map { $_ => 1 } @$only_export_items_for_branches;
             my ( $homebranchfield, $homebranchsubfield ) = GetMarcFromKohaField( 'items.homebranch' );