From: Sven Schöling Date: Wed, 15 Feb 2012 15:17:36 +0000 (+0100) Subject: GuV/BWA Splitfaktor richtig coalescen. X-Git-Tag: release-2.7.0beta2~3 X-Git-Url: http://wagnertech.de/git?a=commitdiff_plain;h=f7866adf1844e79ada8df88c703b0ec9a39c5657;p=kivitendo-erp.git GuV/BWA Splitfaktor richtig coalescen. Nach Bug 1190 werden IST Versteuerte Zahlungseingänge auf die komplette Rechnung verteilt. Bei Hauptbuch buchungen gibt es keine Rechnung dazu und diese buchungen fielen unter den Tisch, oder (schlimmer) erzeugen einen Division by Zero Fehler. Commit d934ce3611 hat ein COALESCE eingeführt um die by-Zero Fehler abzufangen, aber der Nenner 1 führt zu utopischen Rechnungswerten. Dieser Patch behebt das. --- diff --git a/SL/RP.pm b/SL/RP.pm index 82102f66e..bbfb09866 100644 --- a/SL/RP.pm +++ b/SL/RP.pm @@ -516,12 +516,12 @@ sub get_accounts_g { if ($form->{method} eq 'cash') { $query = qq| - SELECT SUM( ac.amount * + SELECT SUM( ac.amount * CASE WHEN COALESCE((SELECT amount FROM ar WHERE id = ac.trans_id and amount != 0 ), 0) != 0 THEN (SELECT SUM(acc.amount) * -1 FROM acc_trans acc INNER JOIN chart c ON (acc.chart_id = c.id AND c.link LIKE '%AR_paid%') WHERE 1=1 $inwhere AND acc.trans_id = ac.trans_id) - / COALESCE((SELECT amount FROM ar WHERE id = ac.trans_id and amount != 0 ), 1) + / (SELECT amount FROM ar WHERE id = ac.trans_id and amount != 0 ) ELSE 1 END ) AS amount, c.$category FROM acc_trans ac LEFT JOIN chart c ON (c.id = ac.chart_id)