Lines 257-266
sub export {
Link Here
|
257 |
if ( $format eq 'iso2709' ) { |
257 |
if ( $format eq 'iso2709' ) { |
258 |
my $encoding_validator = sub { |
258 |
my $encoding_validator = sub { |
259 |
my ( $record, $record_type ) = @_; |
259 |
my ( $record, $record_type ) = @_; |
260 |
my $errorcount_on_decode = |
260 |
my @decoding_warnings = |
261 |
eval { scalar( MARC::File::USMARC->decode( $record->as_usmarc )->warnings() ) }; |
261 |
eval { MARC::File::USMARC->decode( $record->as_usmarc )->warnings() }; |
262 |
if ( $errorcount_on_decode || $@ ) { |
262 |
my $error = $@; |
263 |
my $msg = "$record_type could not be USMARC decoded/encoded. " . ( $@ // '' ); |
263 |
if ( $error || @decoding_warnings ) { |
|
|
264 |
my ( $id_tag, $id_code ) = GetMarcFromKohaField( 'biblio.biblionumber', '' ); |
265 |
my $field = $record->field($id_tag); |
266 |
my $msg = "$record_type"; |
267 |
if ($field) { |
268 |
$msg .= " " . $field->is_control_field ? $field->data : $field->subfield($id_code); |
269 |
} |
270 |
my $warnings = join(', ', @decoding_warnings); |
271 |
$msg .= " could not be USMARC decoded/encoded. " . ( $error // $warnings ); |
264 |
chomp $msg; |
272 |
chomp $msg; |
265 |
Koha::Logger->get->warn($msg); |
273 |
Koha::Logger->get->warn($msg); |
266 |
return 0; |
274 |
return 0; |
267 |
- |
|
|