From 9227f81db26d209ffab778bf9520798f6cbf7f0e Mon Sep 17 00:00:00 2001 From: "Martin Helmling martin.helmling@octosoft.eu" Date: Thu, 21 Jul 2016 10:07:00 +0200 Subject: [PATCH] =?utf8?q?Fertigen=20ohne=20Pr=C3=BCfung=20nach=20Bestand(?= =?utf8?q?2)?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Das Prüfen ob Lager das "Standard-Lager für Auslagern ohne Prüfung auf Bestand" ist genügt nicht, es können Bauteile dieses Lager auch als Standardlager haben --- SL/WH.pm | 9 ++++++--- doc/changelog | 2 +- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/SL/WH.pm b/SL/WH.pm index 29643dc16..f363ae50e 100644 --- a/SL/WH.pm +++ b/SL/WH.pm @@ -211,11 +211,15 @@ sub transfer_assembly { my $partsQTY = $hash_ref->{qty} * $params{qty}; # benötigte teile * anzahl erzeugnisse my $currentPart_ID = $hash_ref->{parts_id}; + my $currentPart_WH_ID = $use_default_warehouse && $hash_ref->{warehouse_id} ? $hash_ref->{warehouse_id} : $params{dst_warehouse_id}; + my $no_check = 0; + # Prüfen ob Erzeugnis-Teile Standardlager haben. if ($use_default_warehouse && ! $hash_ref->{warehouse_id}) { # Prüfen ob in Mandantenkonfiguration ein Standardlager aktiviert isti. if ($::instance_conf->get_transfer_default_ignore_onhand) { - $hash_ref->{warehouse_id} = $::instance_conf->get_warehouse_id_ignore_onhand; + $currentPart_WH_ID = $::instance_conf->get_warehouse_id_ignore_onhand; + $no_check = 1; } else { $kannNichtFertigen .= "Kein Standardlager: " . " Die Ware " . $self->get_part_description(parts_id => $currentPart_ID) . @@ -224,12 +228,11 @@ sub transfer_assembly { next; } } - my $currentPart_WH_ID = $use_default_warehouse ? $hash_ref->{warehouse_id} : $params{dst_warehouse_id}; my $warehouse_info = $self->get_basic_warehouse_info('id'=> $currentPart_WH_ID); my $warehouse_desc = $warehouse_info->{"warehouse_description"}; # Fertigen ohne Prüfung nach Bestand - if ($currentPart_WH_ID == $::instance_conf->get_warehouse_id_ignore_onhand) { + if ($no_check) { my $temppart_bin_id = $::instance_conf->get_bin_id_ignore_onhand; my $temppart_chargenumber = ""; my $temppart_bestbefore = localtime(); diff --git a/doc/changelog b/doc/changelog index ce90104ec..b8ab55241 100644 --- a/doc/changelog +++ b/doc/changelog @@ -10,7 +10,7 @@ kleinere neue Features und Detailverbesserungen: Statt das Ziellager des Erzeugnisses zu Verwenden, wird nun zur Prüfung der Fertigung das Standardlager der einzelnen Bestandteile verwendet. Hat das Bestandteil kein Standardlager, so wird das "Standard-Lager für Auslagern ohne Prüfung auf Bestand" - verwendeti und ohne Prüfung ausgelagert. Ist dieses nicht gesetzt, wird eine Fehlermeldung erzeugt. + verwendet und ohne Prüfung ausgelagert. Ist dieses nicht gesetzt, wird eine Fehlermeldung erzeugt. - Neues Recht "Verknüpfte Belege", standardmäßig erlaubt. Betrifft alle Belege und die Projektstammdaten -- 2.20.1