From c65e8fcc568f54001e277a8d7d8d2bd21cf80f4d Mon Sep 17 00:00:00 2001 From: "Martin Helmling mh@waldpark.octosoft.eu" Date: Tue, 19 Apr 2016 13:11:13 +0200 Subject: [PATCH] Verkauf/Rechnungen/Massenerstellung: keine Zahlungsbedingungen MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Falls im Lieferschein keine Zahlungsbedingungen gesetzt sind, (normalerweise nicht) wird die des Kunden für die Rechnung eingesetzt --- SL/DB/Invoice.pm | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/SL/DB/Invoice.pm b/SL/DB/Invoice.pm index 84349e191..847a8fab8 100644 --- a/SL/DB/Invoice.pm +++ b/SL/DB/Invoice.pm @@ -162,9 +162,10 @@ sub new_from { } my $terms = $source->can('payment_id') ? $source->payment_terms : undef; + $terms = $source->customer->payment_terms if !defined $terms && $source->customer; my %args = ( map({ ( $_ => $source->$_ ) } qw(customer_id taxincluded shippingpoint shipvia notes intnotes salesman_id cusordnumber ordnumber department_id - cp_id language_id taxzone_id globalproject_id transaction_description currency_id delivery_term_id payment_id), @columns), + cp_id language_id taxzone_id globalproject_id transaction_description currency_id delivery_term_id), @columns), transdate => DateTime->today_local, gldate => DateTime->today_local, duedate => $terms ? $terms->calc_date(reference_date => DateTime->today_local) : DateTime->today_local, @@ -175,6 +176,8 @@ sub new_from { employee_id => (SL::DB::Manager::Employee->current || SL::DB::Employee->new(id => $source->employee_id))->id, ); + $args{payment_id} = ( $terms ? $terms->id : $source->payment_id); + if ($source->type =~ /_order$/) { $args{deliverydate} = $source->reqdate; $args{orddate} = $source->transdate; -- 2.20.1