details: https://code.openbravo.com/erp/devel/pi/rev/31fa39bf2c6a changeset: 28269:31fa39bf2c6a user: Atul Gaware <atul.gaware <at> openbravo.com> date: Mon Jan 18 23:55:32 2016 +0530 summary: Fixes Issue 31788:In a Purchase Order window the Price turns to 0 using a price list including taxes under some circumstancies
In case of Tax included Price List, Create PO Lines action handler now sets Gross Standard Price = Gross Base Unit Price with proper value so that during m_promotion_calculate if there exists any price adjustments, price needs to be re-calculated in the order line. Earlier as gross std price was set to zero, Gross Unit Price, Line Gross Amount of the line was set to 0.. diffstat: src/org/openbravo/common/actionhandler/OrderCreatePOLines.java | 11 ++++++--- 1 files changed, 7 insertions(+), 4 deletions(-) diffs (45 lines): diff -r 4d04e9933ae6 -r 31fa39bf2c6a src/org/openbravo/common/actionhandler/OrderCreatePOLines.java --- a/src/org/openbravo/common/actionhandler/OrderCreatePOLines.java Tue Jan 19 17:46:10 2016 +0100 +++ b/src/org/openbravo/common/actionhandler/OrderCreatePOLines.java Mon Jan 18 23:55:32 2016 +0530 @@ -11,7 +11,7 @@ * under the License. * The Original Code is Openbravo ERP. * The Initial Developer of the Original Code is Openbravo SLU - * All portions are Copyright (C) 2013 Openbravo SLU + * All portions are Copyright (C) 2013-2016 Openbravo SLU * All Rights Reserved. * Contributor(s): ______________________________________. ************************************************************************ @@ -154,7 +154,7 @@ newOrderLine.setTax(tax); // Price - BigDecimal unitPrice, netPrice, grossPrice, stdPrice, limitPrice, grossAmt, netListPrice, grossListPrice; + BigDecimal unitPrice, netPrice, grossPrice, stdPrice, limitPrice, grossAmt, netListPrice, grossListPrice, grossStdPrice; stdPrice = BigDecimal.ZERO; final int pricePrecision = order.getCurrency().getPricePrecision().intValue(); final int stdPrecision = order.getCurrency().getStandardPrecision().intValue(); @@ -168,11 +168,12 @@ netPrice = FinancialUtils.calculateNetFromGross(tax.getId(), grossAmt, pricePrecision, grossAmt, qtyOrdered); limitPrice = netPrice; - stdPrice = netPrice; + // selected line standard price is Gross Std Price in this case + grossStdPrice = unitPrice; netListPrice = netPrice; } else { netPrice = unitPrice; - grossListPrice = grossAmt = grossPrice = BigDecimal.ZERO; + grossListPrice = grossAmt = grossPrice = grossStdPrice = BigDecimal.ZERO; } newOrderLine.setUnitPrice(netPrice); @@ -181,6 +182,8 @@ newOrderLine.setGrossListPrice(grossListPrice); newOrderLine.setPriceLimit(limitPrice); newOrderLine.setStandardPrice(stdPrice); + // Set Base Gross Unit Price thats is Gross Standard Price + newOrderLine.setBaseGrossUnitPrice(grossStdPrice); newOrderLine.setLineNetAmount(netPrice.multiply(qtyOrdered).setScale(stdPrecision, BigDecimal.ROUND_HALF_UP)); newOrderLine.setLineGrossAmount(grossAmt); ------------------------------------------------------------------------------ Site24x7 APM Insight: Get Deep Visibility into Application Performance APM + Mobile APM + RUM: Monitor 3 App instances at just $35/Month Monitor end-to-end web transactions and take corrective actions now Troubleshoot faster and improve end-user experience. Signup Now! http://pubads.g.doubleclick.net/gampad/clk?id=267308311&iu=/4140 _______________________________________________ Openbravo-commits mailing list Openbravo-commits@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/openbravo-commits