SelfTests check_summe_stornobuchungen optimiert
authorJan Büren <jan@kivitendo-premium.de>
Sun, 8 Jan 2017 16:03:22 +0000 (17:03 +0100)
committerJan Büren <jan@kivitendo-premium.de>
Sun, 8 Jan 2017 16:03:22 +0000 (17:03 +0100)
Die Summenprüfung der Stornobuchungen muss
auch über den Jahreswechsel hinaus Buchungen berücksichtigen.

SL/BackgroundJob/SelfTest/Transactions.pm

index d75a9a9..f0d6da9 100644 (file)
@@ -206,14 +206,12 @@ sub check_summe_stornobuchungen {
 
   my $query = qq|
     select sum(amount) from ar a JOIN customer c ON (a.customer_id = c.id)
-    WHERE storno is true
-      AND a.transdate >= ? and a.transdate <= ?|;
+    WHERE a.id in (SELECT id from ap where storno is true AND a.transdate >= ? and a.transdate <= ?)|;
   my ($summe_stornobuchungen_ar) = selectfirst_array_query($::form, $self->dbh, $query, $self->fromdate, $self->todate);
 
   $query = qq|
     select sum(amount) from ap a JOIN vendor c ON (a.vendor_id = c.id)
-    WHERE storno is true
-      AND a.transdate >= ? and a.transdate <= ?|;
+    WHERE a.id in (SELECT id from ap where storno is true AND a.transdate >= ? and a.transdate <= ?)|;
   my ($summe_stornobuchungen_ap) = selectfirst_array_query($::form, $self->dbh, $query, $self->fromdate, $self->todate);
 
   $self->tester->ok($summe_stornobuchungen_ap == 0, 'Summe aller Einkaufsrechnungen (stornos + stornierte) soll 0 sein');