Hi, It seems to me that C4/ImportBatch.pm: my $old_marc = MARC::Record->new_from_xml(StripNonXmlChars($oldxml), 'UTF-8', $rowref->{'encoding'}, $marc_type); Is calling MARC::Record->new_from_xml with the wrong number of parameters and $marc_type is ignored it should be either: MARC::Record->new_from_xml(StripNonXmlChars($oldxml), 'UTF-8', $marc_type); or: MARC::Record->new_from_xml(StripNonXmlChars($oldxml),$rowref->{'encoding'} , $marc_type);
Yes, that's wrong, it must be $rowref->{'encoding'} , $marc_type
I tried to import a MARCXML file encoded in ISO-8859-1. I set the correct encoding in the form but no records were imported and I have this message in logfile: bib-1.iso88591.marcxml: :15: parser error : Input is not proper UTF-8, indicate encoding ! Bytes: 0xE0 0x20 0x6D 0x6F <subfield code="a">�</subfield> The error is located in C4::ImportBatch::RecordsFromMARCXMLFile MARC::File::XML::decode seems to ignore the encoding passed in parameters.