Projekt

Allgemein

Profil

« Zurück | Weiter » 

Revision 927ec727

Von Jan Büren vor mehr als 3 Jahren hinzugefügt

  • ID 927ec7273b39dffbd1cb91062fed46c60d9be47f
  • Vorgänger f89dda62
  • Nachfolger ebde433e

Lieferscheine neue Funktion Zurücklagern

Belege die nicht älter als das Zurücklagerungs-Intervall sind
können wieder "entlagert" werden.

Lieferschein die ausgelagert sind, wurden bisher strikter
als Rechnungen behandelt. Ein Zurücklagern war nur über
die Lagerkorrektur möglich.

Unterschiede anzeigen:

SL/DO.pm
649 649
  return $rc;
650 650
}
651 651

  
652
sub delete_transfers {
653
  $main::lxdebug->enter_sub();
654

  
655
  my ($self)   = @_;
656

  
657
  my $myconfig = \%main::myconfig;
658
  my $form     = $main::form;
659

  
660
  my $rc = SL::DB::Order->new->db->with_transaction(sub {
661

  
662
    my $do = SL::DB::DeliveryOrder->new(id => $form->{id})->load;
663
    die "No valid delivery order found" unless ref $do eq 'SL::DB::DeliveryOrder';
664

  
665
    my $dt = DateTime->today->subtract(days => $::instance_conf->get_undo_transfer_interval);
666
    croak "Wrong call. Please check undoing interval" unless DateTime->compare($do->itime, $dt) == 1;
667

  
668
    foreach my $doi (@{ $do->orderitems }) {
669
      foreach my $dois (@{ $doi->delivery_order_stock_entries}) {
670
        $dois->inventory->delete;
671
        $dois->delete;
672
      }
673
    }
674
    $do->update_attributes(delivered => 0);
675

  
676
    1;
677
  });
678

  
679
  $main::lxdebug->leave_sub();
680

  
681
  return $rc;
682
}
683

  
652 684
sub retrieve {
653 685
  $main::lxdebug->enter_sub();
654 686

  

Auch abrufbar als: Unified diff