X-Git-Url: http://wagnertech.de/gitweb/gitweb.cgi/mfinanz.git/blobdiff_plain/039226c384a9d9ff36ae4f624ef9d39173e0bb0e..1870f11e7915b768e83e18f8491f1e13d0702ead:/SL/Controller/Inventory.pm diff --git a/SL/Controller/Inventory.pm b/SL/Controller/Inventory.pm index 10f01f8e7..3f406ee48 100644 --- a/SL/Controller/Inventory.pm +++ b/SL/Controller/Inventory.pm @@ -49,7 +49,7 @@ sub action_stock { parts => $self->part, dst_bin => $self->bin, dst_wh => $self->warehouse, - qty => $::form->format_amount(\%::myconfig, $::form->{qty}), + qty => $::form->parse_amount(\%::myconfig, $::form->{qty}), unit => $self->unit, transfer_type => 'stock', chargenumber => $::form->{chargenumber}, @@ -58,6 +58,7 @@ sub action_stock { }); if ($::form->{write_default_bin}) { + $self->part->load; # onhand is calculated in between. don't mess that up $self->part->bin($self->bin); $self->part->warehouse($self->warehouse); $self->part->save; @@ -122,7 +123,7 @@ sub _check_warehouses { } sub init_warehouses { - SL::DB::Manager::Warehouse->get_all; + SL::DB::Manager::Warehouse->get_all(query => [ or => [ invalid => 0, invalid => undef ]]); } sub init_units { @@ -149,8 +150,8 @@ sub set_target_from_part { sub sanitize_target { my ($self) = @_; - $self->warehouse(SL::DB::Manager::Warehouse->get_first) if !$self->warehouse || !$self->warehouse->id; - $self->bin ($self->warehouse->bins->[0]) if !$self->bin || !$self->bin->id; + $self->warehouse($self->warehouses->[0]) if !$self->warehouse || !$self->warehouse->id; + $self->bin ($self->warehouse->bins->[0]) if !$self->bin || !$self->bin->id; } sub load_part_from_form {