Issue #23570:fix rounding of tax
[xtuple] / foundation-database / public / functions / calcsalesorderamt.sql
index 5e792f3..3c6d188 100644 (file)
@@ -40,8 +40,11 @@ BEGIN
     AND (coitem_status != 'X');
 
   IF (pType IN ('T', 'B', 'X')) THEN
-    SELECT COALESCE(ROUND(SUM(taxdetail_tax), 2), 0.0) INTO _tax
-    FROM calculateTaxDetailSummary('S', pCoheadid, 'T');
+    SELECT SUM(tax) INTO _tax
+    FROM (SELECT COALESCE(ROUND(SUM(taxdetail_tax), 2), 0.0) AS tax
+          FROM tax
+               JOIN calculateTaxDetailSummary('S', pCoheadid, 'T')ON (taxdetail_tax_id=tax_id)
+          GROUP BY tax_id) AS data;
   END IF;
 
   IF (pType IN ('T', 'B', 'C')) THEN