Revision 3c1ceacd
Von Moritz Bunkus vor etwa 17 Jahren hinzugefügt
SL/DO.pm | ||
---|---|---|
# save printed, emailed, queued
|
||
$form->save_status($dbh);
|
||
|
||
$self->close_order_if_delivered('do_id' => $form->{id},
|
||
'type' => $form->{type} eq 'sales_delivery_order' ? 'sales' : 'purchase',
|
||
'dbh' => $dbh,);
|
||
$self->mark_order_if_delivered('do_id' => $form->{id},
|
||
'type' => $form->{type} eq 'sales_delivery_order' ? 'sales' : 'purchase',
|
||
'dbh' => $dbh,);
|
||
|
||
my $rc = $dbh->commit();
|
||
|
||
... | ... | |
return $rc;
|
||
}
|
||
|
||
sub close_order_if_delivered {
|
||
sub mark_order_if_delivered {
|
||
$main::lxdebug->enter_sub();
|
||
|
||
my $self = shift;
|
||
... | ... | |
$main::lxdebug->leave_sub();
|
||
}
|
||
|
||
sub close_orders {
|
||
$main::lxdebug->enter_sub();
|
||
|
||
my $self = shift;
|
||
my %params = @_;
|
||
|
||
Common::check_params(\%params, qw(ids));
|
||
|
||
if (('ARRAY' ne ref $params{ids}) || !scalar @{ $params{ids} }) {
|
||
$main::lxdebug->leave_sub();
|
||
return;
|
||
}
|
||
|
||
my $myconfig = \%main::myconfig;
|
||
my $form = $main::form;
|
||
|
||
my $dbh = $params{dbh} || $form->get_standard_dbh($myconfig);
|
||
|
||
my $query = qq|UPDATE delivery_orders SET closed = TRUE WHERE id IN (| . join(', ', ('?') x scalar(@{ $params{ids} })) . qq|)|;
|
||
|
||
do_query($form, $dbh, $query, map { conv_i($_) } @{ $params{ids} });
|
||
|
||
$dbh->commit() unless ($params{dbh});
|
||
|
||
$main::lxdebug->leave_sub();
|
||
}
|
||
|
||
sub delete {
|
||
$main::lxdebug->enter_sub();
|
||
|
Auch abrufbar als: Unified diff
------------------------------------------------------------------------
r7135 | mbunkus | 2008-06-20 10:56:08 +0200 (Fri, 20 Jun 2008) | 1 line
Wenn eine Rechnung aus einem oder mehreren Lieferscheinen erstellt wird, so wird beim Buchen der Rechnung automatisch alle Lieferscheine als geschlossen markiert, aus denen die Rechnung erstellt wurde.
------------------------------------------------------------------------