From e9d624e651c136d55b4f35e3f5646ac3f5318e40 Mon Sep 17 00:00:00 2001 From: Frank Messerschmidt Date: Mon, 14 Mar 2016 11:30:10 +0100 Subject: [PATCH] Lager/Einlagern: Grund der Einlagerung wird ignoriert MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit - Abfrage der eindeutigen ID des Transfertypes statt der Bezeichnung hinzugefügt - Abfrage nach der eindeutigen ID des Transfertyps erweitert: - ist diese vorhanden so wird sie direkt verwendet - ist sie nicht vorhanden so wird das Transferobjekt über den alten Weg erzeugt und die ID des Transfertyps daraus genommen (letzteres tritt beim auslagern von Lieferscheinen auf) implementiert TICKET #4482 (cherry picked from commit e98edcb3c81a18d52dd90b69c76bebeb45954bca) (cherry-pick von odyn) --- SL/Controller/Inventory.pm | 1 + SL/WH.pm | 12 +++++++++--- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/SL/Controller/Inventory.pm b/SL/Controller/Inventory.pm index e317381f0..e608f14c6 100644 --- a/SL/Controller/Inventory.pm +++ b/SL/Controller/Inventory.pm @@ -411,6 +411,7 @@ sub action_stock { qty => $qty, unit => $self->unit, transfer_type => 'stock', + transfer_type_id => $::form->{transfer_type_id}, chargenumber => $::form->{chargenumber}, bestbefore => $::form->{bestbefore}, ean => $::form->{ean}, diff --git a/SL/WH.pm b/SL/WH.pm index 3c3f65420..48d56e885 100644 --- a/SL/WH.pm +++ b/SL/WH.pm @@ -99,15 +99,21 @@ sub transfer { $direction |= 1 if $src_bin; $direction |= 2 if $dst_bin; - my $transfer_type = $objectify->($transfer, 'transfer_type', 'SL::DB::TransferType', direction => $directions[$direction], - description => $transfer->{transfer_type}); + my $transfer_type_id; + if ($transfer->{transfer_type_id}) { + $transfer_type_id = $transfer->{transfer_type_id}; + } else { + my $transfer_type = $objectify->($transfer, 'transfer_type', 'SL::DB::TransferType', direction => $directions[$direction], + description => $transfer->{transfer_type}); + $transfer_type_id = $transfer_type->id; + } my $stocktaking_qty = $transfer->{stocktaking_qty}; my %params = ( part => $part, employee => $employee, - trans_type => $transfer_type, + trans_type_id => $transfer_type_id, project => $project, trans_id => $trans_id, shippingdate => !$transfer->{shippingdate} || $transfer->{shippingdate} eq 'current_date' -- 2.20.1