my $reference_account = $self->reference_account;
croak "can't find reference account (link = AR/AP) for invoice" unless ref $reference_account;
- my $memo = $params{'memo'} || '';
- my $source = $params{'source'} || '';
+ my $memo = $params{memo} // '';
+ my $source = $params{source} // '';
my $rounded_params_amount = _round( $params{amount} ); # / $exchangerate);
my $fx_gain_loss_amount = 0; # for fx_gain and fx_loss
if ( $datev_check ) {
my $datev = SL::DATEV->new(
- exporttype => DATEV_ET_BUCHUNGEN,
- format => DATEV_FORMAT_KNE,
dbh => $db->dbh,
trans_id => $self->{id},
);
- $datev->clean_temporary_directories;
- $datev->export;
+ $datev->generate_datev_data;
if ($datev->errors) {
# this exception should be caught by with_transaction, which handles the rollback
if ( $open_amount && # invoice amount not 0
$self->skonto_date && # check whether skonto applies
( abs(abs($self->amount_less_skonto) - abs($bt->amount)) < 0.01 ||
- ( $bt->transaction_code eq "191" && abs($self->amount_less_skonto) < abs($bt->amount) )) &&
+ ( abs($self->amount_less_skonto) < abs($bt->amount) )) &&
$self->check_skonto_configuration) {
if ( $self->within_skonto_period($bt->transdate) ) {
push(@options, { payment_type => 'without_skonto', display => t8('without skonto') });