Openbravo Issue Tracking System - Openbravo ERP
View Issue Details
0036795Openbravo ERP07. Sales managementpublic2017-09-04 11:492017-09-05 18:16
ngarcia 
markmm82 
urgentmajoralways
closedfixed 
5
 
3.0PR17Q1.43.0PR17Q1.4 
aferraz
Core
No
0036795: Amounts in Invoice lines and taxes are rounded to price precision instead of standard precision in Create Lines From process
Amounts in Invoice lines and taxes are rounded to price precision instead of standard precision in Create Lines From process

In CreateFrom class, the price precision is used for rounding amounts instead of standard precision
Change the Format.xml to accept 3 decimals in prices

As System Admin role:
   Set Price Precision of EUR currency to 3

   Create a new sales price list, do not set it as Price Includes Tax
   Add 4 products to it with the following prices:
      101.15
      176.715
      8.33
      35.105

   Create a Sales Order
   Set the previously created price list
   Add the previously created 5 products (one unit of each, 2 units of the one with 101.15 price)
   Complete it
   Set its Invoice Terms as Immediate

   Create a Sales Invoice header
   Set the previously created price list
   Click on Create Lines From
   Add the 4 lines of the sales order with a price different from 0

   Check the total net amount (422.45) does not match with the sum of the Line Net Amount values in invoice lines (202.30 + 176.72 + 8.33 + 35.11 = 422.46)
      
   Check through database that the linenetamt is not rounded to standard precision but to priceprecision
No tags attached.
blocks defect 0036776 closed markmm82 Amounts in Invoice lines and taxes are rounded to price precision instead of standard precision in Create Lines From process 
Issue History
2017-09-05 16:41aferrazTypedefect => backport
2017-09-05 16:41aferrazTarget Version => 3.0PR17Q1.4
2017-09-05 18:01hgbotCheckin
2017-09-05 18:01hgbotNote Added: 0098842
2017-09-05 18:01hgbotStatusscheduled => resolved
2017-09-05 18:01hgbotResolutionopen => fixed
2017-09-05 18:01hgbotFixed in SCM revisionhttp://code.openbravo.com/erp/devel/pi/rev/ef2a84e698c4c76bef4f8ef984d4055c64b6d862 [^] => http://code.openbravo.com/erp/backports/3.0PR17Q1.4/rev/5f13acc66fa2392a012644f4120bb94b593c31ca [^]
2017-09-05 18:01hgbotCheckin
2017-09-05 18:01hgbotNote Added: 0098843
2017-09-05 18:02hgbotCheckin
2017-09-05 18:02hgbotNote Added: 0098844
2017-09-05 18:16aferrazReview Assigned To => aferraz
2017-09-05 18:16aferrazNote Added: 0098848
2017-09-05 18:16aferrazStatusresolved => closed
2017-09-05 18:16aferrazFixed in Version => 3.0PR17Q1.4

Notes
(0098842)
hgbot   
2017-09-05 18:01   
Repository: erp/backports/3.0PR17Q1.4
Changeset: 5f13acc66fa2392a012644f4120bb94b593c31ca
Author: Mark <markmm82 <at> gmail.com>
Date: Mon Sep 04 12:44:00 2017 -0400
URL: http://code.openbravo.com/erp/backports/3.0PR17Q1.4/rev/5f13acc66fa2392a012644f4120bb94b593c31ca [^]

Fixes issue 36795: Amounts in invoice lines and taxes rounded to price precision
instead of standard precision in Create Lines From process.

In CreateFrom class, the price precision was used for rounding amounts instead of
standard precision and it was causing differences with totals when invoices were
created from orders or shipments.

Now all prices are rounded with the price precision of it currency and amounts
with standard precision.

---
M src/org/openbravo/erpCommon/ad_actionButton/CreateFrom.java
M src/org/openbravo/erpCommon/ad_actionButton/CreateFrom_Invoice_data.xsql
---
(0098843)
hgbot   
2017-09-05 18:01   
Repository: erp/backports/3.0PR17Q1.4
Changeset: ce3d9bbdbb1f335d00b3d08ead714c9dc1a4c5c5
Author: Alvaro Ferraz <alvaro.ferraz <at> openbravo.com>
Date: Tue Sep 05 12:37:04 2017 +0200
URL: http://code.openbravo.com/erp/backports/3.0PR17Q1.4/rev/ce3d9bbdbb1f335d00b3d08ead714c9dc1a4c5c5 [^]

Related to issue 36795: Code review improvements

Retrieve currency standard precision instead of price precision in selectFromPO, selectFromPOUpdate, selectFromPOUpdateSOTrx and selectPriceList methods.
Do not round price actual with price precision when calculating line net amount.
Remove unused priceprecision variable.
Use data variable to retrieve currency standard precision when creating invoice from order and dataAux variable when creating invoice from receipt/shipment.

---
M src/org/openbravo/erpCommon/ad_actionButton/CreateFrom.java
M src/org/openbravo/erpCommon/ad_actionButton/CreateFrom_Invoice_data.xsql
---
(0098844)
hgbot   
2017-09-05 18:02   
Repository: erp/backports/3.0PR17Q1.4
Changeset: ec92e5fa99eb989b51ac4d767e8a97686e06bb66
Author: Alvaro Ferraz <alvaro.ferraz <at> openbravo.com>
Date: Tue Sep 05 18:01:14 2017 +0200
URL: http://code.openbravo.com/erp/backports/3.0PR17Q1.4/rev/ec92e5fa99eb989b51ac4d767e8a97686e06bb66 [^]

Related to issue 36795: Avoid Net Price calculation outside trigger in case PIT

---
M src/org/openbravo/erpCommon/ad_actionButton/CreateFrom.java
---
(0098848)
aferraz   
2017-09-05 18:16   
Code review + Testing OK