From 12f8b0bc883fc8e02bbbb8dfe8535c617554493c Mon Sep 17 00:00:00 2001 From: Srdjan Jankovic Date: Fri, 27 Jan 2012 15:19:25 +1300 Subject: [PATCH] bug_7231: Call GetMarcPrice() in acqui/neworderempty.pl for staged imports --- acqui/neworderempty.pl | 26 ++++---------------------- 1 files changed, 4 insertions(+), 22 deletions(-) diff --git a/acqui/neworderempty.pl b/acqui/neworderempty.pl index 459dfe8..5ca0d64 100755 --- a/acqui/neworderempty.pl +++ b/acqui/neworderempty.pl @@ -80,7 +80,7 @@ use C4::Dates; use C4::Bookseller qw/ GetBookSellerFromId /; use C4::Acquisition; use C4::Suggestions; # GetSuggestion -use C4::Biblio; # GetBiblioData +use C4::Biblio; # GetBiblioData GetMarcPrice use C4::Output; use C4::Input; use C4::Koha; @@ -121,6 +121,7 @@ my ( $template, $loggedinuser, $cookie ) = get_template_and_user( } ); +my $marcflavour = C4::Context->preference('marcflavour'); my $basket = GetBasket($basketno); my $contract = &GetContract($basket->{contractnumber}); @@ -154,26 +155,7 @@ if ( $ordernumber eq '' and defined $params->{'breedingid'}){ $params->{'frameworkcode'} or $params->{'frameworkcode'} = ""; ( $biblionumber, $bibitemnum ) = AddBiblio( $marcrecord, $params->{'frameworkcode'} ); # get the price if there is one. - # filter by storing only the 1st number - # we suppose the currency is correct, as we have no possibilities to get it. - if ($marcrecord->subfield("345","d")) { - $listprice = $marcrecord->subfield("345","d"); - if ($listprice =~ /^([\d\.,]*)/) { - $listprice = $1; - $listprice =~ s/,/\./; - } else { - $listprice = 0; - } - } - elsif ($marcrecord->subfield("010","d")) { - $listprice = $marcrecord->subfield("010","d"); - if ($listprice =~ /^([\d\.,]*)/) { - $listprice = $1; - $listprice =~ s/,/\./; - } else { - $listprice = 0; - } - } + $listprice = GetMarcPrice($marcrecord, $marcflavour); SetImportRecordStatus($params->{'breedingid'}, 'imported'); } @@ -429,7 +411,7 @@ sub MARCfindbreeding { } } # fix the unimarc 100 coded field (with unicode information) - if (C4::Context->preference('marcflavour') eq 'UNIMARC' && $record->subfield(100,'a')) { + if ($marcflavour eq 'UNIMARC' && $record->subfield(100,'a')) { my $f100a=$record->subfield(100,'a'); my $f100 = $record->field(100); my $f100temp = $f100->as_string; -- 1.6.5