Bugzilla – Attachment 21525 Details for
Bug 6201
BibTeX export does not incude MARC21 main entry
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Add fields 1xxx to marc2bibtex
Bug-6201-Add-fields-1xx-to-marc2bibtex.patch (text/plain), 2.61 KB, created by
Blou
on 2013-09-27 20:41:58 UTC
(
hide
)
Description:
Add fields 1xxx to marc2bibtex
Filename:
MIME Type:
Creator:
Blou
Created:
2013-09-27 20:41:58 UTC
Size:
2.61 KB
patch
obsolete
>From 99fc1e61bbe854140f58ca6320aeda1e6b3d9290 Mon Sep 17 00:00:00 2001 >From: Blou <philippe.blouin@inlibro.com> >Date: Thu, 26 Sep 2013 15:45:32 -0400 >Subject: [PATCH] Bug 6201 - Add fields 1xx to marc2bibtex > >Modified Record::marc2bibtex to varlidate fields 100,110 and 111 in non-Unimarc flavours. > >Test plan: >1)Search any books in the OPAC with a main entry (1XX in MARC21, 700-720 in Unimarc) >2)Export the record in the bibtex format >==>The output won't contains the main entry. >3)Apply the patch \n4)Export the record >==>The record will contain the main entry >--- > C4/Record.pm | 36 +++++++++++++----------------------- > 1 file changed, 13 insertions(+), 23 deletions(-) > >diff --git a/C4/Record.pm b/C4/Record.pm >index be1912c..bb830b0 100644 >--- a/C4/Record.pm >+++ b/C4/Record.pm >@@ -651,33 +651,23 @@ sub marc2bibtex { > > # Authors > my $author; >- my @texauthors; >- my ( $mintag, $maxtag, $fields_filter ); >- if ( $marcflavour eq "UNIMARC" ) { >- $mintag = "700"; >- $maxtag = "712"; >- $fields_filter = '7..'; >- } >- else { >- $mintag = "700"; >- $maxtag = "720"; >- $fields_filter = '7..'; >- } >- foreach my $field ( $record->field($fields_filter) ) { >- next unless $field->tag() >= $mintag && $field->tag() <= $maxtag; >+ my @texauthors; >+ my @authorFields = ('100','110','111','700','710','711'); >+ @authorFields = ('700','701','702','710','711','721') if ( $marcflavour eq "UNIMARC" ); >+ >+ foreach my $field ( @authorFields ) { > # author formatted surname, firstname > my $texauthor = ''; > if ( $marcflavour eq "UNIMARC" ) { >- $texauthor = join ', ', >- ( $field->subfield('a'), $field->subfield('b') ); >- } >- else { >- $texauthor = $field->subfield('a'); >- } >- push @texauthors, $texauthor if $texauthor; >+ $texauthor = join ', ', >+ ( $record->subfield($field,"a"), $record->subfield($field,"b") ); >+ } else { >+ $texauthor = $record->subfield($field,"a"); >+ } >+ push @texauthors, $texauthor if $texauthor; > } > $author = join ' and ', @texauthors; >- >+ > # Defining the conversion hash according to the marcflavour > my %bh; > if ( $marcflavour eq "UNIMARC" ) { >@@ -726,7 +716,7 @@ sub marc2bibtex { > } > > $tex .= "\@book{"; >- $tex .= join(",\n", $id, map { $bh{$_} ? qq(\t$_ = "$bh{$_}") : () } keys %bh); >+ $tex .= join(",\n", $id, map { $bh{$_} ? qq(\t$_ = {$bh{$_}}) : () } keys %bh); > $tex .= "\n}\n"; > > return $tex; >-- >1.7.10.4 >
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
|
Splinter Review
Attachments on
bug 6201
:
21503
|
21504
|
21511
|
21525
|
21571
|
21604