From 03688c1557a42e17bff85f01aa7af6cef66a70a1 Mon Sep 17 00:00:00 2001 From: einhverfr Date: Wed, 14 May 2008 21:16:26 +0000 Subject: ar_ap_summary_fix now handles transactions with negative ammounts properly. git-svn-id: https://ledger-smb.svn.sourceforge.net/svnroot/ledger-smb/branches/1.2@2143 4979c152-3d1c-0410-bac9-87ea11338e46 --- Changelog | 6 ++++ doc/release_notes | 5 ++- sql/fixes/ar_ap_summary_fix_1.2.14.sql | 56 ++++++++++++++++++++++++++-------- 3 files changed, 53 insertions(+), 14 deletions(-) diff --git a/Changelog b/Changelog index a7f41845..dddd0754 100644 --- a/Changelog +++ b/Changelog @@ -1,3 +1,9 @@ +Changelog for 1.2.14 +* Fixed double escaping of tex under some circumstances (Seneca) +* Added fix for bad summary information in AR/AP transactions (1800065, +1800069, Chris T) +* Fixed posting issue behind AR/AP transaction report anomilies (Chris T) + Changelog for 1.2.13 * Fixed all known implicit cast issues with PostgreSQL 8.3 (Chris T) * Fixed Vendor Info Incorrectly Escaped in Check Printing Module(1844159, diff --git a/doc/release_notes b/doc/release_notes index 50f417d8..60a88644 100644 --- a/doc/release_notes +++ b/doc/release_notes @@ -1,5 +1,5 @@ RELEASE NOTES -LedgerSMB 1.2.13 +LedgerSMB 1.2.14 @@ -117,6 +117,9 @@ known shipping information. There is a fix for this in the sql/fixes directory. LedgerSMB's database structure does not handle certain areas properly regarding recurring transactions. A fix for this issue is in the sql/fixes directory. +3.5: AR/AP Transactions +LedgerSMB from 1.2.0 through 1.2.13 had a bug which saved incorrect summary information for AR and AP transactions (but not invoices). A fix for this has been included in sql/fixes and new transactions are not affected as of 1.2.14. + 4: Differences between LedgerSMB and SQL-Ledger(TM) 4.1: Login name restrictions diff --git a/sql/fixes/ar_ap_summary_fix_1.2.14.sql b/sql/fixes/ar_ap_summary_fix_1.2.14.sql index f4a86bee..5f8bbdc5 100644 --- a/sql/fixes/ar_ap_summary_fix_1.2.14.sql +++ b/sql/fixes/ar_ap_summary_fix_1.2.14.sql @@ -2,30 +2,60 @@ BEGIN; UPDATE ap SET netamount = - (select sum(amount) from acc_trans - where trans_id = ap.id - AND ((chart_id IN (select id from chart where link = 'AP') - AND amount > 0) - OR (chart_id IN - (select id from chart where link like '%tax%') + CASE WHEN amount > 0 THEN -1 * + (select sum(amount) from acc_trans + where trans_id = ap.id + AND ((chart_id IN (select id from chart where link = 'AP') + AND amount > 0) + OR (chart_id IN + (select id from chart where link like '%tax%') + ) + ) + ) + ELSE + -1 * + (select sum(amount) from acc_trans + where trans_id = ap.id + AND ((chart_id IN + (select id from chart where link = 'AP') + AND amount < 0) + OR (chart_id IN + (select id from chart + where link like '%tax%') + ) ) ) - ) + END WHERE netamount IS NULL; update ap set datepaid = NULL where paid = 0; UPDATE ar -SET netamount = -1 * - (select sum(amount) from acc_trans - where trans_id = ar.id - AND ((chart_id IN (select id from chart where link = 'AR') - AND amount < 0) +SET netamount = + CASE WHEN amount > 0 THEN -1 * + (select sum(amount) from acc_trans + where trans_id = ar.id + AND ((chart_id IN + (select id from chart where link = 'AR') + AND amount < 0) + OR (chart_id IN + (select id from chart + where link like '%tax%') + ) + ) + ) + ELSE + (select sum(amount) from acc_trans + where trans_id = ar.id + AND ((chart_id IN (select id from chart + where link = 'AR') + AND amount > 0) OR (chart_id IN (select id from chart where link like '%tax%') + ) ) ) - ) + END WHERE netamount IS NULL; update ar set datepaid = NULL where paid = 0; -- cgit v1.2.3