3 #use warnings; FIXME - Bug 2505
5 # find Koha's Perl modules
6 # test carefully before changing this
8 eval { require "$FindBin::Bin/../../kohalib.pl" };
11 use MARC
::File
::XML
(BinaryEncoding
=>"utf8");
13 use C4
::AuthoritiesMarc
;
15 MARC
::File
::XML
::default_record_format
("UNIMARCAUTH");
16 my $dbh = C4
::Context
->dbh;
17 my $rq= $dbh->prepare(qq|
21 my $filename= shift @ARGV;
23 #ATTENTION : Mettre la base en utf8 auparavant.
24 #BEWARE : Set database into utf8 before.
25 while (my ($authid)=$rq->fetchrow){
26 open my $fileoutput, '>:encoding(UTF-8)', "./$filename/$authid.xml" or die "unable to open $filename";
27 my $record=AUTHgetauthority
($dbh,$authid);
28 if (! utf8
::is_utf8
($record)) {
29 utf8
::decode
($record);
32 # if (C4::Context->preference('marcflavour') eq "UNIMARC"){
33 $record->leader(' nac 22 1u 4500');
34 my $string=$1 if $time=~m/([0-9\-]+)/;
36 $string = sprintf("%-*s",26, $string);
37 substr($string,9,6,"frey50");
38 unless ($record->subfield(100,"a")){
39 $record->insert_fields_ordered(MARC
::Field
->new(100,"","","a"=>$string));
41 unless ($record->subfield('001')){
42 $record->insert_fields_ordered(MARC
::Field
->new('001',$authid));
45 # $record->encoding( 'UTF-8' );
47 print {$fileoutput} $record->as_xml();