Icon View Incident Report

Serious Serious
Reported By: Ivan Sine
Reported On: 7/9/2001
For: Version 2.09 Build 1
# 813 SQL ABS Function Causing Truncation of Floating-Point and BCD Numbers

ABS function "sometimes" returns wrong results.

Qty * ABS(UnitPrice) Quantity_ABS_UnitPrice (full sql below)

57 * ABS($1.78) returns $57 (should be $101.74)

SELECT ARInv.InvoiceDate, Customer.CustomerName, 
       ARInv.InvoiceNo, ARInv.Description, 
       ARInvDet.Quantity, Item.ItemDescription, 
       ARInvDet.UnitPrice, Salesman.FirstName, 
       Salesman.LastName, ARInv.SalesmanID, 
       Item.StandardCost, Item.ItemTypeID, 
       Quantity * ABS(UnitPrice) Quantity_ABS_UnitPrice, 
       Quantity * standardcost Quantity_standardcost
FROM "ARInv.DAT" ARInv
      INNER JOIN "ARInvDet.DAT" ARInvDet ON 
     (ARInvDet.ARInvoiceID = ARInv.ARInvoiceID)
      INNER JOIN "Customer.DAT" Customer ON 
     (Customer.CustomerID = ARInv.CustomerID)
      INNER JOIN "Salesman.DAT" Salesman ON 
     (Salesman.SalesmanID = ARInv.SalesmanID)
      INNER JOIN "Item.DAT" Item ON 
     (Item.ItemID = ARInvDet.ItemID)
WHERE 
      ( ARInv.InvoiceDate BETWEEN '4/1/2001' AND '6/1/2001' )
       AND ( Item.ItemTypeID <> 8042 )
ORDER BY ARInv.SalesmanID, ARInv.InvoiceDate



Resolution Resolution
Fixed Problem on 7/9/2001 in version 2.11 build 1
Image