- ($self->{terms_netto}, $self->{terms_skonto}, $self->{percent_skonto},
- $self->{payment_terms}, $self->{payment_description}) =
- selectrow_query($self, $dbh, $query, $self->{payment_id});
-
- if ($transdate eq "") {
- if ($self->{invdate}) {
- $transdate = $self->{invdate};
- } else {
- $transdate = $self->{transdate};
- }
- }
-
- $query =
- qq|SELECT ?::date + ?::integer AS netto_date, ?::date + ?::integer AS skonto_date | .
- qq|FROM payment_terms|;
- ($self->{netto_date}, $self->{skonto_date}) =
- selectrow_query($self, $dbh, $query, $transdate, $self->{terms_netto}, $transdate, $self->{terms_skonto});
+ $self->{$_} = $terms->$_ for qw(terms_netto terms_skonto percent_skonto);
+ $self->{payment_terms} = $terms->description_long;
+ $self->{payment_description} = $terms->description;
+ $self->{netto_date} = $terms->calc_date(reference_date => $transdate, due_date => $due_date, terms => 'net')->to_kivitendo;
+ $self->{skonto_date} = $terms->calc_date(reference_date => $transdate, due_date => $due_date, terms => 'discount')->to_kivitendo;