X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=SL%2FDATEV.pm;h=49e824b5023a17a3efe32252db9750efc87e4223;hb=3ac44613aaf706c083d74bee399ee445420a5f54;hp=56c3e82d86c8f7808b61920146b207cab13c4d50;hpb=474247d8447c579cfe44d92c97bb17302aff4521;p=kivitendo-erp.git diff --git a/SL/DATEV.pm b/SL/DATEV.pm index 56c3e82d8..49e824b50 100644 --- a/SL/DATEV.pm +++ b/SL/DATEV.pm @@ -330,6 +330,9 @@ sub _get_transactions { my ($notsplitindex); my @errors = (); + $form->{net_gross_differences} = []; + $form->{sum_net_gross_differences} = 0; + $fromto =~ s/transdate/ac\.transdate/g; my $taxkeys = Taxkeys->new(); @@ -535,8 +538,13 @@ sub _get_transactions { $idx++; } - if (abs($absumsatz) >= 0.01) { - push @errors, "Datev-Export fehlgeschlagen! Bei Transaktion $trans->[0]->{trans_id} ($absumsatz, Rundungsfehler $rounding_error)\n"; + $absumsatz = $form->round_amount($absumsatz, 2); + if (abs($absumsatz) >= (0.01 * (1 + scalar @taxed))) { + push @errors, "Datev-Export fehlgeschlagen! Bei Transaktion $trans->[0]->{trans_id} ($absumsatz)\n"; + + } elsif (abs($absumsatz) >= 0.01) { + push @{ $form->{net_gross_differences} }, $absumsatz; + $form->{sum_net_gross_differences} += $absumsatz; } }