]> wagnertech.de Git - kivitendo-erp.git/commitdiff
Finanzübersicht: »einmalige« Periodizität bei wiederkehrenden Rechnung gefixt
authorMoritz Bunkus <m.bunkus@linet-services.de>
Thu, 21 Jun 2018 11:20:35 +0000 (13:20 +0200)
committerMoritz Bunkus <m.bunkus@linet-services.de>
Thu, 21 Jun 2018 11:23:47 +0000 (13:23 +0200)
Die Finanzübersicht nutzt die Funktion
`SL::DB::PeriodicInvoicesConfig::calculate_invoice_dates`, um jedes
Ausführungsdatum innerhalb eines Zeitraumes zu berechnen. Dort wurde
»einmalig« fälschlicherweise wie »jeden Monat wiederholen«
behandelt. Dadurch tauchten die solche wiederkehrenden Rechnungen in
der Finanzübersicht in jedem Monat auf, sofern die Konfiguration noch
aktiv ist.

Beim eigentlichen Erzeugen der wiederkehrenden Rechnungen hingegen war
das deshalb kein Problem, weil so eine Konfiguration direkt nach dem
ersten Erzeugen der Rechnung auf inaktiv gesetzt wird.

SL/DB/PeriodicInvoicesConfig.pm

index 26ce3363169b558acef67d4c780b846760542744..081be3577924f9e103a30c9ed8a158c7dc332031 100644 (file)
@@ -96,6 +96,10 @@ sub calculate_invoice_dates {
   $start_date    = max($start_date, $params{start_date}) if $params{start_date};
   $end_date      = min($end_date,   $params{end_date})   if $params{end_date};
 
+  if ($self->periodicity eq 'o') {
+    return ($cur_date >= $start_date) && ($cur_date <= $end_date) ? ($cur_date) : ();
+  }
+
   my @dates;
 
   while ($cur_date <= $end_date) {