Projekt

Allgemein

Profil

« Zurück | Weiter » 

Revision 90e0cc0b

Von Moritz Bunkus vor mehr als 4 Jahren hinzugefügt

  • ID 90e0cc0b89799a206063f9d095b328e13cc73025
  • Vorgänger d9ff130d
  • Nachfolger 140c3988

Skontovorschläge: ungültige Steuer-Zeilen aus acc_trans ignorieren

Buchungen in acc_trans, die das Steuer-Konto ansprechen (also eines,
bei dem chart_link AR_tax oder AP_tax enthält), haben oftmals eine
ungültige Kombination aus taxkey & tax_id (ungültig im Sinne von:
diese Kombination gibt's in der Tabelle tax nicht).

Für Skontoberechnung sind solche Zeilen aber irrelevant. Also sie
einfach überspringen und nicht sterben.

Unterschiede anzeigen:

SL/DB/Helper/Payment.pm
483 483
  foreach my $transaction (@{ $self->transactions }) {
484 484
    # find all transactions with an AR_amount or AP_amount link
485 485
    my $tax = SL::DB::Manager::Tax->get_first( where => [taxkey => $transaction->taxkey, id => $transaction->tax_id ]);
486

  
487
    # acc_trans entries for the taxes (chart_link == A[RP]_tax) often
488
    # have combinations of taxkey & tax_id that don't exist in
489
    # tax. Those must be skipped.
490
    next if !$tax && ($transaction->chart_link !~ m{A[RP]_amount});
491

  
486 492
    croak "no tax for taxkey " . $transaction->{taxkey} unless ref $tax;
487 493

  
488 494
    $transaction->{chartlinks} = { map { $_ => 1 } split(m/:/, $transaction->chart_link) };

Auch abrufbar als: Unified diff