From a86dff79241710afff8cb68bb8174129c30b31d5 Mon Sep 17 00:00:00 2001 From: Colin Campbell Date: Mon, 1 Apr 2019 12:16:51 +0100 Subject: [PATCH] Bug 22611: Correction for call to get create_item in EDI.pm There was a typo in the addition of a call to effective_create_items causing processing to abort after adding a single copy. This patch reverts to using the C4::Context call as used for the first copy created, the intended call to effective_create_items is a wrapper around that as the field in the basket is guaranteed to be null (its not set when we call AddBasket). Being consistent and explicit in what we call should guard against future changes in dependencies exposing the logic flaw Added some comments to make logical flow of code clearer Signed-off-by: Liz Rea Signed-off-by: Katrin Fischer Signed-off-by: Nick Clemens (cherry picked from commit f6bc67e851722451a970d085f51fb11fb03e21b3) Signed-off-by: Martin Renvoize (cherry picked from commit 4a2e88549505afbf28c2e0236f81012789262496) Signed-off-by: Lucas Gass --- Koha/EDI.pm | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/Koha/EDI.pm b/Koha/EDI.pm index 80123537cf..1793a30981 100644 --- a/Koha/EDI.pm +++ b/Koha/EDI.pm @@ -558,6 +558,8 @@ sub quote_item { my $schema = Koha::Database->new()->schema(); my $logger = Log::Log4perl->get_logger(); + # $basketno is the return from AddBasket in the calling routine + # So this call should not fail unless that has my $basket = Koha::Acquisition::Baskets->find( $basketno ); unless ( $basket ) { $logger->error('Skipping order creation no valid basketno'); @@ -808,7 +810,9 @@ sub quote_item { ); } - if ( $basket->effective_create_item eq 'ordering' ) { + # Do not use the basket level value as it is always NULL + # See calling subs call to AddBasket + if ( C4::Context->preference('AcqCreateItem') eq 'ordering' ) { my $new_item = { notforloan => -1, cn_sort => q{}, -- 2.20.1