diff --git a/acqui/finishreceive.pl b/acqui/finishreceive.pl index c43d858ad8..8cf8d4fa5a 100755 --- a/acqui/finishreceive.pl +++ b/acqui/finishreceive.pl @@ -58,9 +58,8 @@ my $cnt=0; my $error_url_str; if ($quantityrec > $origquantityrec ) { - my @items_err ; foreach my $bc (@barcode) { - my $itemRecord = TransformKohaToMarc({ + my $item_hash = { "items.replacementprice" => $replacement, "items.price" => $cost, "items.booksellerid" => $supplierid, @@ -71,13 +70,16 @@ if ($quantityrec > $origquantityrec ) { "items.itype" => $itemtype[$cnt], "items.location" => $location[$cnt], "items.enumchron" => $enumchron[$cnt], # FIXME : No integration here with serials module. - "items.loan" => 0, }); + "items.loan" => 0, + }; + $item_hash->{'items.cn_source'} = C4::Context->preference('DefaultClassificationSource') if(C4::Context->preference('DefaultClassificationSource') ); + # FIXME : cn_sort is populated by Items::_set_derived_columns_for_add , which is never called with AddItemFromMarc . Bug 2403 + my $itemRecord = TransformKohaToMarc($item_hash); $cnt++; - my $item_hash = TransformMarcToKoha(undef,$itemRecord,'','items'); - # FIXME: possible race condition here. duplicate barcode check should happen in AddItem, but for now we have to do it here. + $item_hash = TransformMarcToKoha(undef,$itemRecord,'','items'); + # FIXME: possible race condition. duplicate barcode check should happen in AddItem, but for now we have to do it here. my %err = CheckItemPreSave($item_hash); if(%err) { - push @items_err, \%err; for my $err_cnd (keys %err) { $error_url_str .= "&error=" . $err_cnd . "&error_param=" . $err{$err_cnd}; }