Nur dann steuern aufsummieren, wenn ein Steuerbetrag da ist und ein Steuerkonto ...
authorMoritz Bunkus <m.bunkus@linet-services.de>
Fri, 28 Jan 2011 12:15:09 +0000 (13:15 +0100)
committerMoritz Bunkus <m.bunkus@linet-services.de>
Fri, 28 Jan 2011 12:15:09 +0000 (13:15 +0100)
SL/DB/Helper/PriceTaxCalculator.pm

index 63dde45..a2d3381 100644 (file)
@@ -109,8 +109,12 @@ sub _calculate_item {
     $tax_amount = $linetotal * $tax_rate;
   }
 
-  $data->{taxes}->{ $taxkey->tax->chart_id } ||= 0;
-  $data->{taxes}->{ $taxkey->tax->chart_id }  += $tax_amount;
+  if ($taxkey->tax->chart_id) {
+    $data->{taxes}->{ $taxkey->tax->chart_id } ||= 0;
+    $data->{taxes}->{ $taxkey->tax->chart_id }  += $tax_amount;
+  } elsif ($tax_amount) {
+    die "tax_amount != 0 but no chart_id for taxkey " . $taxkey->id . " tax " . $taxkey->tax->id;
+  }
 
   $self->netamount($self->netamount + $sellprice * $item->qty / $item->price_factor);