Erzeugnisse fertigen, kann auch Dienstleistungen verbrauchen
authorJan Büren <jan@kivitendo.de>
Mon, 26 Jul 2021 08:55:24 +0000 (10:55 +0200)
committerJan Büren <jan@kivitendo.de>
Mon, 26 Jul 2021 08:55:24 +0000 (10:55 +0200)
Einstellbar in der Mandantenkonfiguration

SL/Helper/Inventory.pm
doc/changelog

index c6830af..da28bac 100644 (file)
@@ -214,7 +214,8 @@ sub allocate_for_assembly {
   my $part = $params{part} or Carp::croak('allocate needs a part');
   my $qty  = $params{qty}  or Carp::croak('allocate needs a qty');
   my $wh   = $params{warehouse};
   my $part = $params{part} or Carp::croak('allocate needs a part');
   my $qty  = $params{qty}  or Carp::croak('allocate needs a qty');
   my $wh   = $params{warehouse};
-  my $wh_strict = $::instance_conf->get_produce_assembly_same_warehouse;
+  my $wh_strict       = $::instance_conf->get_produce_assembly_same_warehouse;
+  my $consume_service = $::instance_conf->get_produce_assembly_transfer_service;
 
   Carp::croak('not an assembly')       unless $part->is_assembly;
   Carp::croak('No warehouse selected') if $wh_strict && !$wh;
 
   Carp::croak('not an assembly')       unless $part->is_assembly;
   Carp::croak('No warehouse selected') if $wh_strict && !$wh;
@@ -222,7 +223,7 @@ sub allocate_for_assembly {
   my %parts_to_allocate;
 
   for my $assembly ($part->assemblies) {
   my %parts_to_allocate;
 
   for my $assembly ($part->assemblies) {
-    next if $assembly->part->type eq 'service' && 1;
+    next if $assembly->part->type eq 'service' && !$consume_service;
     $parts_to_allocate{ $assembly->part->id } //= 0;
     $parts_to_allocate{ $assembly->part->id } += $assembly->qty * $qty;
   }
     $parts_to_allocate{ $assembly->part->id } //= 0;
     $parts_to_allocate{ $assembly->part->id } += $assembly->qty * $qty;
   }
index b9ffb40..8165151 100644 (file)
@@ -10,9 +10,12 @@ Mittelgroße neue Features:
 
 Kleinere neue Features und Detailverbesserungen:
 
 
 Kleinere neue Features und Detailverbesserungen:
 
-- Erzeugnisse können jetzt auf Lagerteile aus anderem Lagern zurückgreifen
+- Erzeugnis fertigen, kann jetzt auf Lagerteile aus anderem Lagern zurückgreifen
   und die Fertigung liefert keinen Fehler mehr. Einstellbar in der
   Mandantenkonfiguration.
   und die Fertigung liefert keinen Fehler mehr. Einstellbar in der
   Mandantenkonfiguration.
+- Erzeugnisse fertigen, kann auch Dienstleistungen verbrauchen, falls
+  diese ein Erzeugnisbestandteil sind. Standardmäßíg deaktiviert.
+  Aktivierbar in der Mandantenkonfiguration (Bereich Lager).
 - API- Änderung Erzeugnis fertigen nutzt jetzt SL/Helper/Inventory.pm
 - Falls der Mandant zu jeder Buchung einen Beleg hinzufügen möchte,
   und dies in der Mandantenkonfiguration einstellt, dann öffnet sich nach
 - API- Änderung Erzeugnis fertigen nutzt jetzt SL/Helper/Inventory.pm
 - Falls der Mandant zu jeder Buchung einen Beleg hinzufügen möchte,
   und dies in der Mandantenkonfiguration einstellt, dann öffnet sich nach