-sub transfer_stock_update_part {
- $main::lxdebug->enter_sub();
-
- my $form = $main::form;
- my %myconfig = %main::myconfig;
- my $locale = $main::locale;
-
- $form->{trans_type} = 'stock';
- $form->{qty} = $form->parse_amount(\%myconfig, $form->{qty});
-
- if (!$form->{partnumber} && !$form->{description} && !$form->{ean}) {
- delete @{$form}{qw(parts_id partunit ean)};
- transfer_warehouse_selection();
-
- } elsif (($form->{partnumber} && ($form->{partnumber} ne $form->{old_partnumber})) || $form->{description} || $form->{ean}) {
-
-# $form->{no_services} = 1; # services may now be transfered. fix for Bug 1383.
- $form->{no_assemblies} = 0; # assemblies duerfen eingelagert werden (z.B. bei retouren)
-
- my $parts = Common->retrieve_parts(\%myconfig, $form, 'description', 1);
-
- if (!scalar @{ $parts }) {
- new_item(action => "transfer_stock_update_part");
- } elsif (scalar @{ $parts } == 1) {
- @{$form}{qw(parts_id partnumber description ean warehouse_id bin_id)} = @{$parts->[0]}{qw(id partnumber description ean warehouse_id bin_id)};
- transfer_stock_get_partunit();
- transfer_warehouse_selection();
-
- } else {
- select_part('transfer_stock_part_selected', @{ $parts });
- }
-
- } else {
- transfer_stock_get_partunit();
- transfer_warehouse_selection();
- }
-
- $main::lxdebug->leave_sub();
-}
-