Revision 49ed7902
Von Bernd Bleßmann vor etwa 2 Jahren hinzugefügt
SL/BackgroundJob/MassRecordCreationAndPrinting.pm | ||
---|---|---|
53 | 53 |
eval { |
54 | 54 |
my $sales_delivery_order = SL::DB::DeliveryOrder->new(id => $delivery_order_id)->load; |
55 | 55 |
$number = $sales_delivery_order->donumber; |
56 |
|
|
57 |
# Only process open delivery orders. In this list should only be open |
|
58 |
# delivery orders, but if the background job is restarted (for what |
|
59 |
# reason so ever), a new creation of invoices for delivery orders which |
|
60 |
# are closed now can be triggered. |
|
61 |
# Prevent this. |
|
62 |
if ($sales_delivery_order->closed) { |
|
63 |
die "Delivery Order already closed!\n"; |
|
64 |
} |
|
65 |
|
|
56 | 66 |
my %conversion_params = $data->{transdate} ? ('attributes' => { transdate => $data->{transdate} }) : (); |
57 | 67 |
my $invoice = $sales_delivery_order->convert_to_invoice(%conversion_params); |
58 | 68 |
|
Auch abrufbar als: Unified diff
Massenerstellen von RG aus LS: geschlossene LS nicht (erneut) verarbeiten
Auch bei dem Weg über den Hintergrund-Job. Wenn nämlich der Task-Server
beschäftigt ist, kann der Benutzer auf dei Idee kommen, den ganzen
Prozeß nochmal zu starten. Dann laufen mehrere Jobs nacheinander,
die dann jeweils Rechnungen aus den gleichen LS erzeugen.