[Koha-patches] [PATCH] [SIGNED-OFF] BZ6076: acqui pdf error when marcxml wrong
Christophe Croullebois
christophe.croullebois at biblibre.com
Fri Aug 5 11:57:32 CEST 2011
From: Jonathan Druart <jonathan.druart at biblibre.com>
when marcxml is wrong the PDF is not generated. There is a Perl error
because
the biblio can't be retrieved.
This can be workarounded with a eval when decoding the marc
Signed-off-by: Christophe Croullebois <christophe.croullebois at biblibre.com>
---
acqui/basketgroup.pl | 11 +++++++----
1 files changed, 7 insertions(+), 4 deletions(-)
diff --git a/acqui/basketgroup.pl b/acqui/basketgroup.pl
index 08356f8..e65fab4 100755
--- a/acqui/basketgroup.pl
+++ b/acqui/basketgroup.pl
@@ -226,10 +226,13 @@ sub printbasketgrouppdf{
push(@ba_orders, \@ba_order);
# Editor Number
my $en;
- if (C4::Context->preference("marcflavour") eq 'UNIMARC') {
- $en = MARC::Record::new_from_xml($ord->{marcxml},'UTF-8')->subfield('345',"b");
- } elsif (C4::Context->preference("marcflavour") eq 'MARC21') {
- $en = MARC::Record::new_from_xml($ord->{marcxml},'UTF-8')->subfield('037',"a");
+ my $marcrecord=eval{MARC::Record::new_from_xml( $ord->{marcxml},'UTF-8' )};
+ if ($marcrecord){
+ if ( C4::Context->preference("marcflavour") eq 'UNIMARC' ) {
+ $en = $marcrecord->subfield( '345', "b" );
+ } elsif ( C4::Context->preference("marcflavour") eq 'MARC21' ) {
+ $en = $marcrecord->subfield( '037', "a" );
+ }
}
if($en){
push(@ba_order, $en);
--
1.7.0.4
More information about the Koha-patches
mailing list