From 7e8e040c64016d0e83b817bdbe5f1bb8260318b2 Mon Sep 17 00:00:00 2001 From: Colin Campbell Date: Thu, 25 Feb 2021 10:59:24 +0000 Subject: [PATCH] Bug 27793: Store FTX free text in vendor note This is important for proquest ordering to distinguish types of material. FTX segment from quote is stored as vendor note. Contents of vendornote are included in the order FTX segment. Signed-off-by: Kyle M Hall Signed-off-by: Jonathan Druart (cherry picked from commit 33c8d6f175bf5c5f2a2f08db9e95d363027c276a) Signed-off-by: Victor Grousset/tuxayo --- Koha/EDI.pm | 6 ++++-- Koha/Edifact/Order.pm | 16 ++++++++++------ 2 files changed, 14 insertions(+), 8 deletions(-) diff --git a/Koha/EDI.pm b/Koha/EDI.pm index 92461bdfc1..0f18cf5605 100644 --- a/Koha/EDI.pm +++ b/Koha/EDI.pm @@ -685,7 +685,7 @@ sub quote_item { quantity => $order_quantity, quantityreceived => 0, order_vendornote => q{}, - order_internalnote => $order_note, + order_internalnote => q{}, replacementprice => $price, rrp_tax_included => $price, rrp_tax_excluded => $price, @@ -724,7 +724,9 @@ sub quote_item { $txt .= $si; ++$occ; } - $order_hash->{order_vendornote} = $txt; + } + if ($order_note) { + $order_hash->{order_vendornote} = $order_note; } if ( $item->internal_notes() ) { diff --git a/Koha/Edifact/Order.pm b/Koha/Edifact/Order.pm index 3093a7acf3..6e2ef290e0 100644 --- a/Koha/Edifact/Order.pm +++ b/Koha/Edifact/Order.pm @@ -413,10 +413,6 @@ sub order_line { } my $budget = GetBudget( $orderline->budget_id ); my $ol_fields = { budget_code => $budget->{budget_code}, }; - if ( $orderline->order_vendornote ) { - $ol_fields->{servicing_instruction} = $orderline->order_vendornote; - chomp $ol_fields->{servicing_instruction}; - } my $item_fields = []; for my $item (@items) { @@ -439,8 +435,16 @@ sub order_line { # TBD what if #items exceeds quantity - # FTX free text for current orderline TBD - # dont really have a special instructions field to encode here + # FTX free text for current orderline + # Pass vendor note in FTX free text segment + if ( $orderline->order_vendornote ) { + my $vendornote = $orderline->order_vendornote; + chomp $vendornote; + my $ftx = 'FTX+LIN+++'; + $ftx .= $vendornote; + $ftx .= $seg_terminator; + $self->add_seg($ftx); + } # Encode notes here # PRI-CUX-DTM unit price on which order is placed : optional # Coutts read this as 0.00 if not present -- 2.39.5