From: Moritz Bunkus Date: Wed, 10 Oct 2007 13:32:40 +0000 (+0000) Subject: Deutliche Beschleunigung der USTVA-Berechnung durch Einschränkung der betrachteten... X-Git-Tag: release-2.6.0beta1~478 X-Git-Url: http://wagnertech.de/git?a=commitdiff_plain;h=dbfa733e42a95481ab6231334321c6a82ce68064;p=kivitendo-erp.git Deutliche Beschleunigung der USTVA-Berechnung durch Einschränkung der betrachteten Datensätze aus acc_trans. --- diff --git a/SL/USTVA.pm b/SL/USTVA.pm index 61a64818b..b10fea637 100644 --- a/SL/USTVA.pm +++ b/SL/USTVA.pm @@ -796,6 +796,21 @@ sub get_accounts_ustva { $ARwhere .= " AND acc.transdate <= '$todate'"; } + my $acc_trans_where = '1=1'; + if ($fromdate || $todate) { + $acc_trans_where = "ac.trans_id IN (SELECT DISTINCT trans_id FROM acc_trans WHERE "; + + if ($fromdate) { + $acc_trans_where .= "transdate >= '$fromdate'"; + } + if ($todate) { + $acc_trans_where .= " AND " if ($fromdate); + $acc_trans_where .= "transdate <= '$todate'"; + } + + $acc_trans_where .= ")"; + } + ############################################ # Method eq 'cash' = IST Versteuerung ############################################ @@ -843,9 +858,7 @@ sub get_accounts_ustva { ) ) WHERE - 1=1 - -- Here no where, please. All Transactions ever should be - -- testet if they are paied in the USTVA report period. + $acc_trans_where GROUP BY tk.pos_ustva |;