details: https://code.openbravo.com/erp/devel/pi/rev/eb3fdc5cecf2
changeset: 15939:eb3fdc5cecf2
user: Javier Etxarri <javier.echarri <at> openbravo.com>
date: Thu Mar 29 12:30:20 2012 +0200
summary: Issue 19836: Purchase Invoices do not take into account tax rate:
Alternate Tax Base Amount.
Now the Generate invoice from Receipt process take into account the value of
tax base amount of the lines. Apart from that I have added one coalesce to
value co.taxbaseamt if it has null value
diffstat:
src-db/database/model/functions/M_INOUT_CREATEINVOICE.xml | 13
++++++++-
src/org/openbravo/erpCommon/ad_actionButton/CreateFrom_Invoice_data.xsql | 2
+-
2 files changed, 12 insertions(+), 3 deletions(-)
diffs (56 lines):
diff -r a18b8dd9b8c4 -r eb3fdc5cecf2
src-db/database/model/functions/M_INOUT_CREATEINVOICE.xml
--- a/src-db/database/model/functions/M_INOUT_CREATEINVOICE.xml Thu Mar 29
12:12:17 2012 +0200
+++ b/src-db/database/model/functions/M_INOUT_CREATEINVOICE.xml Thu Mar 29
12:30:20 2012 +0200
@@ -93,6 +93,7 @@
v_PriceActual NUMBER;
v_PriceLimit NUMBER;
--
+ v_taxBaseAmt NUMBER;
v_LineNetAmt NUMBER;
v_TotalNet NUMBER;
-- v_Offer_ID varchar2(32);
@@ -256,6 +257,14 @@
v_c_Tax_ID
FROM C_ORDERLINE
WHERE C_OrderLine_ID=CUR_ShipmentLines.C_OrderLine_ID;
+
+ -- Get Tax Base Amount
+ SELECT COALESCE(co.taxbaseamt,0) *
C_DIVIDE((l.MovementQty-SUM(COALESCE(mi.Qty,0))),COALESCE(co.qtyordered,1)) as
taxbaseamt
+ INTO v_taxBaseAmt
+ FROM M_INOUTLINE l left join M_MATCHINV mi on
l.M_InOutLine_ID=mi.M_InOutLine_ID
+ left join C_ORDERLINE co ON co.C_ORDERLINE_ID=l.C_ORDERLINE_ID
+ WHERE l.m_inoutline_id=CUR_ShipmentLines.m_inoutline_id
+ GROUP BY co.taxbaseamt,l.MovementQty,co.qtyordered;
ELSE
v_ResultStr:='GettingPrice-PList';
SELECT COALESCE(MAX(PriceList), 0),
@@ -290,7 +299,7 @@
PriceActual, PriceLimit, LineNetAmt, C_Charge_ID,
ChargeAmt, C_UOM_ID,
C_Tax_ID, --MODIFIED BY F.IRIAZABAL
- QuantityOrder, M_Product_Uom_ID, PriceStd
+ QuantityOrder, M_Product_Uom_ID, PriceStd, taxbaseamt
)
VALUES
(
@@ -301,7 +310,7 @@
v_PriceActual, v_PriceLimit, v_LineNetAmt, NULL,
0, v_C_UOM_ID,
v_C_Tax_ID, --MODIFIED BY F.IRIAZABAL
- CUR_ShipmentLines.QuantityOrder,
CUR_ShipmentLines.M_Product_Uom_ID, v_PriceActual
+ CUR_ShipmentLines.QuantityOrder,
CUR_ShipmentLines.M_Product_Uom_ID, v_PriceActual,v_taxBaseAmt
)
;
v_TotalNet:=v_TotalNet + v_LineNetAmt;
diff -r a18b8dd9b8c4 -r eb3fdc5cecf2
src/org/openbravo/erpCommon/ad_actionButton/CreateFrom_Invoice_data.xsql
--- a/src/org/openbravo/erpCommon/ad_actionButton/CreateFrom_Invoice_data.xsql
Thu Mar 29 12:12:17 2012 +0200
+++ b/src/org/openbravo/erpCommon/ad_actionButton/CreateFrom_Invoice_data.xsql
Thu Mar 29 12:30:20 2012 +0200
@@ -484,7 +484,7 @@
<![CDATA[
SELECT (l.MovementQty-SUM(COALESCE(mi.Qty,0))) AS ID,
l.C_UOM_ID,uom.UOMSymbol, l.M_Product_ID,p.NAME, l.M_InOutLine_ID,l.Line,
l.C_OrderLine_ID, max(uom.STDPRECISION) as stdprecision, l.Description,
l.quantityOrder*C_DIVIDE((l.MovementQty-SUM(COALESCE(mi.Qty,0))),l.MovementQty)
as quantityOrder,
- l.M_Product_UOM_ID, l.M_ATTRIBUTESETINSTANCE_ID, l.ad_org_id,
co.taxbaseamt *
C_DIVIDE((l.MovementQty-SUM(COALESCE(mi.Qty,0))),COALESCE(co.qtyordered,1)) as
taxbaseamt
+ l.M_Product_UOM_ID, l.M_ATTRIBUTESETINSTANCE_ID, l.ad_org_id,
COALESCE(co.taxbaseamt,0) *
C_DIVIDE((l.MovementQty-SUM(COALESCE(mi.Qty,0))),COALESCE(co.qtyordered,1)) as
taxbaseamt
FROM M_INOUTLINE l left join M_MATCHINV mi on
l.M_InOutLine_ID=mi.M_InOutLine_ID
left join C_ORDERLINE co ON co.C_ORDERLINE_ID=l.C_ORDERLINE_ID,
C_UOM uom, M_PRODUCT p
------------------------------------------------------------------------------
This SF email is sponsosred by:
Try Windows Azure free for 90 days Click Here
http://p.sf.net/sfu/sfd2d-msazure
_______________________________________________
Openbravo-commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/openbravo-commits