details:   https://code.openbravo.com/erp/devel/pi/rev/ea1e6b9dbf58
changeset: 17869:ea1e6b9dbf58
user:      Javier Etxarri <javier.echarri <at> openbravo.com>
date:      Mon Sep 03 15:25:27 2012 +0200
summary:   Fixes issue 21333: Error creating an invoice
line of a product with 'price adjustment' and price 0

details:   https://code.openbravo.com/erp/devel/pi/rev/2b345d66a957
changeset: 17870:2b345d66a957
user:      Javier Etxarri <javier.echarri <at> openbravo.com>
date:      Tue Sep 04 10:38:42 2012 +0200
summary:   Fixes issue 21503: The create lines from pop-up of Goods Receipt
do not show the value of the attribute in invoice line

details:   https://code.openbravo.com/erp/devel/pi/rev/772c1d37becd
changeset: 17871:772c1d37becd
user:      Javier Etxarri <javier.echarri <at> openbravo.com>
date:      Tue Sep 04 13:46:25 2012 +0200
summary:   Fixes issue 21492: "Insert Orphan Line"
functionality is not properly working when using PIT pricelist

details:   https://code.openbravo.com/erp/devel/pi/rev/d3ec564f609b
changeset: 17872:d3ec564f609b
user:      Javier Etxarri <javier.echarri <at> openbravo.com>
date:      Tue Sep 04 16:50:12 2012 +0200
summary:   Fixes issue 21543: Generate Invoice from Receipt shows all price 
lists

details:   https://code.openbravo.com/erp/devel/pi/rev/19529696b806
changeset: 17873:19529696b806
user:      Javier Etxarri <javier.echarri <at> openbravo.com>
date:      Thu Sep 06 16:17:21 2012 +0200
summary:   Fixes issue 21562: SE_Order_BPartner callout needs to be adapted
as Business Partner selector has been changed

details:   https://code.openbravo.com/erp/devel/pi/rev/5d92fcb2d39f
changeset: 17874:5d92fcb2d39f
user:      Javier Etxarri <javier.echarri <at> openbravo.com>
date:      Fri Sep 07 10:41:55 2012 +0200
summary:   FIxes issue 21575: The function m_inout_create can create a number 
with a big qty of decimals

diffstat:

 src-db/database/model/functions/M_GET_OFFER_STD_PRICE.xml                 |   
7 +-
 src-db/database/model/functions/M_INOUT_CREATE.xml                        |   
6 +-
 src-db/database/sourcedata/AD_PROCESS_PARA.xml                            |   
1 +
 src-db/database/sourcedata/AD_VAL_RULE.xml                                |  
12 +
 src/org/openbravo/erpCommon/ad_actionButton/CreateFrom_Shipment_data.xsql |  
13 +-
 src/org/openbravo/erpCommon/ad_actionButton/RMInsertOrphanLine.java       |   
9 +
 src/org/openbravo/erpCommon/ad_callouts/SE_Order_BPartner.java            |  
71 +---------
 7 files changed, 48 insertions(+), 71 deletions(-)

diffs (260 lines):

diff -r 37976c35e0cb -r 5d92fcb2d39f 
src-db/database/model/functions/M_GET_OFFER_STD_PRICE.xml
--- a/src-db/database/model/functions/M_GET_OFFER_STD_PRICE.xml Fri Sep 07 
11:03:34 2012 +0200
+++ b/src-db/database/model/functions/M_GET_OFFER_STD_PRICE.xml Fri Sep 07 
10:41:55 2012 +0200
@@ -29,9 +29,11 @@
   v_Discount NUMBER;
 BEGIN
   v_Price := p_PriceActual;
+
   IF v_Price IS NULL THEN
     v_Price := 0;
   END IF;
+
   IF p_Offer_ID IS NOT NULL THEN
     SELECT FIXED,
       COALESCE(ADDAMT, 0),
@@ -41,10 +43,13 @@
       v_Discount
     FROM M_OFFER
     WHERE M_OFFER_ID = p_Offer_ID;
+
     IF v_Fixed IS NOT NULL THEN
       v_Price := v_Fixed;
+    ELSIF (v_Discount = 100) THEN
+      v_Price := v_AddAmt;
     ELSE
-      v_Price := v_AddAmt +(p_PriceActual/(1-v_Discount/100)) ;
+      v_Price := v_AddAmt + (p_PriceActual/(1-v_Discount/100));
     END IF;
   END IF;
   RETURN v_Price;
diff -r 37976c35e0cb -r 5d92fcb2d39f 
src-db/database/model/functions/M_INOUT_CREATE.xml
--- a/src-db/database/model/functions/M_INOUT_CREATE.xml        Fri Sep 07 
11:03:34 2012 +0200
+++ b/src-db/database/model/functions/M_INOUT_CREATE.xml        Fri Sep 07 
10:41:55 2012 +0200
@@ -60,6 +60,7 @@
   v_ResultStr VARCHAR2(2000):='';
   v_result NUMBER(1):=1;
   v_PostResult NUMBER;
+  v_stdPrecision NUMBER:=2;
   v_logLines NUMBER:=0;
   v_isWholeLog BOOLEAN := true;
   v_Message VARCHAR2(2000):='';
@@ -364,14 +365,15 @@
                 --MODIFIED BY F.IRIAZABAL
                 v_QtyOrder:=0;
                 IF(ol.M_Product_UOM_ID IS NOT NULL) THEN
-                  SELECT M_PRODUCT_UOM.C_UOM_ID INTO v_ProductUOM
+                  SELECT M_PRODUCT_UOM.C_UOM_ID, C_UOM.stdprecision
+                  INTO v_ProductUOM, v_stdPrecision
                   FROM M_PRODUCT_UOM, C_UOM
                   WHERE M_PRODUCT_UOM.C_UOM_ID=C_UOM.C_UOM_ID
                     AND M_Product_UOM_ID=ol.M_Product_UOM_ID;
                   IF(ol.QtyDelivered=0) THEN
                     v_QtyOrder:=ol.QuantityOrder;
                   ELSIF(v_ProductUOM IS NOT NULL) THEN
-                    v_QtyOrder:=ol.QuantityOrder*v_Qty/ol.QtyOrdered;
+                    
v_QtyOrder:=ROUND(ol.QuantityOrder*v_Qty/ol.QtyOrdered,v_stdPrecision);
                     --v_QtyOrder:=C_Uom_Convert(v_Qty, ol.C_UOM_ID, 
v_ProductUOM, 'Y') ;
                   ELSE
                     v_QtyOrder:=NULL;
diff -r 37976c35e0cb -r 5d92fcb2d39f 
src-db/database/sourcedata/AD_PROCESS_PARA.xml
--- a/src-db/database/sourcedata/AD_PROCESS_PARA.xml    Fri Sep 07 11:03:34 
2012 +0200
+++ b/src-db/database/sourcedata/AD_PROCESS_PARA.xml    Fri Sep 07 10:41:55 
2012 +0200
@@ -741,6 +741,7 @@
 <!--183-->  <AD_PROCESS_ID><![CDATA[154]]></AD_PROCESS_ID>
 <!--183-->  <SEQNO><![CDATA[10]]></SEQNO>
 <!--183-->  <AD_REFERENCE_ID><![CDATA[19]]></AD_REFERENCE_ID>
+<!--183-->  
<AD_VAL_RULE_ID><![CDATA[26D8602C48004E1182B46310DF7015AE]]></AD_VAL_RULE_ID>
 <!--183-->  <COLUMNNAME><![CDATA[M_PriceList_Version_ID]]></COLUMNNAME>
 <!--183-->  <ISCENTRALLYMAINTAINED><![CDATA[Y]]></ISCENTRALLYMAINTAINED>
 <!--183-->  <FIELDLENGTH><![CDATA[0]]></FIELDLENGTH>
diff -r 37976c35e0cb -r 5d92fcb2d39f src-db/database/sourcedata/AD_VAL_RULE.xml
--- a/src-db/database/sourcedata/AD_VAL_RULE.xml        Fri Sep 07 11:03:34 
2012 +0200
+++ b/src-db/database/sourcedata/AD_VAL_RULE.xml        Fri Sep 07 10:41:55 
2012 +0200
@@ -1268,6 +1268,18 @@
 <!--16C9E72407D94B93968D1E81F32D537D-->  
<AD_MODULE_ID><![CDATA[0]]></AD_MODULE_ID>
 <!--16C9E72407D94B93968D1E81F32D537D--></AD_VAL_RULE>
 
+<!--26D8602C48004E1182B46310DF7015AE--><AD_VAL_RULE>
+<!--26D8602C48004E1182B46310DF7015AE-->  
<AD_VAL_RULE_ID><![CDATA[26D8602C48004E1182B46310DF7015AE]]></AD_VAL_RULE_ID>
+<!--26D8602C48004E1182B46310DF7015AE-->  
<AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
+<!--26D8602C48004E1182B46310DF7015AE-->  <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
+<!--26D8602C48004E1182B46310DF7015AE-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
+<!--26D8602C48004E1182B46310DF7015AE-->  <NAME><![CDATA[Price List Version 
IsSotrx]]></NAME>
+<!--26D8602C48004E1182B46310DF7015AE-->  <DESCRIPTION><![CDATA[Price List 
Version IsSotrx]]></DESCRIPTION>
+<!--26D8602C48004E1182B46310DF7015AE-->  <TYPE><![CDATA[S]]></TYPE>
+<!--26D8602C48004E1182B46310DF7015AE-->  <CODE><![CDATA[M_PriceList_version_id 
in (select M_PriceList_version_id from M_PriceList_version lv left join 
M_PriceList l on l.M_PriceList_id = lv.M_PriceList_id where l.issopricelist = 
@isSOTrx@ and ad_isorgincluded(@AD_ORG_ID@,l.ad_org_id,@AD_CLIENT_ID@) <> 
-1)]]></CODE>
+<!--26D8602C48004E1182B46310DF7015AE-->  
<AD_MODULE_ID><![CDATA[0]]></AD_MODULE_ID>
+<!--26D8602C48004E1182B46310DF7015AE--></AD_VAL_RULE>
+
 <!--299FA667CF374AC5ACC74739C3251134--><AD_VAL_RULE>
 <!--299FA667CF374AC5ACC74739C3251134-->  
<AD_VAL_RULE_ID><![CDATA[299FA667CF374AC5ACC74739C3251134]]></AD_VAL_RULE_ID>
 <!--299FA667CF374AC5ACC74739C3251134-->  
<AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
diff -r 37976c35e0cb -r 5d92fcb2d39f 
src/org/openbravo/erpCommon/ad_actionButton/CreateFrom_Shipment_data.xsql
--- a/src/org/openbravo/erpCommon/ad_actionButton/CreateFrom_Shipment_data.xsql 
Fri Sep 07 11:03:34 2012 +0200
+++ b/src/org/openbravo/erpCommon/ad_actionButton/CreateFrom_Shipment_data.xsql 
Fri Sep 07 10:41:55 2012 +0200
@@ -279,7 +279,8 @@
         AND C_UOM_CONVERSION.C_UOM_TO_ID = (SELECT C_UOM.C_UOM_ID FROM 
M_PRODUCT_UOM, C_UOM WHERE M_PRODUCT_UOM_ID = l.M_PRODUCT_UOM_ID AND 
M_PRODUCT_UOM.C_UOM_ID = C_UOM.C_UOM_ID))))
         as SECQTY, l.M_PRODUCT_UOM_ID as SEC_PRODUCT_UOM_ID,
         (SELECT C_UOM.NAME FROM M_PRODUCT_UOM, C_UOM WHERE M_PRODUCT_UOM_ID = 
l.M_PRODUCT_UOM_ID AND M_PRODUCT_UOM.C_UOM_ID = C_UOM.C_UOM_ID) as SECUOMSYMBOL,
-        COALESCE(l.M_PRODUCT_UOM_ID,null,'0') as HAVESEC,'' as HAVESECUOM,'' 
AS LOCATOR
+        COALESCE(l.M_PRODUCT_UOM_ID,null,'0') as HAVESEC,'' as HAVESECUOM,'' 
AS LOCATOR,l.M_ATTRIBUTESETINSTANCE_ID AS M_ATTRIBUTESETINSTANCE_ID,
+        (SELECT M_ATTRIBUTESETINSTANCE.DESCRIPTION FROM M_ATTRIBUTESETINSTANCE 
WHERE l.M_ATTRIBUTESETINSTANCE_ID = 
M_ATTRIBUTESETINSTANCE.M_ATTRIBUTESETINSTANCE_ID) as ATTRIBUTESETINSTANCENAME
         FROM C_INVOICELINE l left join  M_MATCHINV mi  on 
l.C_InvoiceLine_ID=mi.C_InvoiceLine_ID,
         C_INVOICE i, C_UOM uom,  M_PRODUCT p
         WHERE i.C_INVOICE_ID = l.C_INVOICE_ID 
@@ -291,7 +292,7 @@
         AND l.M_Product_ID=p.M_Product_ID 
         AND l.C_Invoice_ID = ? 
         GROUP BY i.C_Invoice_ID, i.DocumentNo, DateInvoiced, GrandTotal, 
l.QtyInvoiced, 
-        l.C_UOM_ID,uom.UOMSymbol,l.M_Product_ID,p.NAME, 
l.C_InvoiceLine_ID,l.Line,l.C_OrderLine_ID, l.DESCRIPTION,l.QUANTITYORDER, 
l.M_PRODUCT_UOM_ID
+        l.C_UOM_ID,uom.UOMSymbol,l.M_Product_ID,p.NAME, 
l.C_InvoiceLine_ID,l.Line,l.C_OrderLine_ID, l.DESCRIPTION,l.QUANTITYORDER, 
l.M_PRODUCT_UOM_ID,l.M_ATTRIBUTESETINSTANCE_ID
         HAVING (l.QtyInvoiced-SUM(COALESCE(mi.Qty,0))) <> 0 
         ORDER BY NAME, l.Line
       ]]>
@@ -396,7 +397,10 @@
         AND C_UOM_CONVERSION.C_UOM_TO_ID = (SELECT C_UOM.C_UOM_ID FROM 
M_PRODUCT_UOM, C_UOM WHERE M_PRODUCT_UOM_ID = l.M_PRODUCT_UOM_ID AND 
M_PRODUCT_UOM.C_UOM_ID = C_UOM.C_UOM_ID)))) 
         as SECQTY, l.M_PRODUCT_UOM_ID as SEC_PRODUCT_UOM_ID,
         (SELECT C_UOM.NAME FROM M_PRODUCT_UOM, C_UOM WHERE M_PRODUCT_UOM_ID = 
l.M_PRODUCT_UOM_ID AND M_PRODUCT_UOM.C_UOM_ID = C_UOM.C_UOM_ID) as SECUOMSYMBOL,
-        COALESCE(l.M_PRODUCT_UOM_ID,null,'0') as HAVESEC,'' as HAVESECUOM,'' 
AS LOCATOR
+        COALESCE(l.M_PRODUCT_UOM_ID,null,'0') as HAVESEC,'' as HAVESECUOM,'' 
AS LOCATOR,
+        l.M_ATTRIBUTESETINSTANCE_ID AS M_ATTRIBUTESETINSTANCE_ID,
+        (SELECT M_ATTRIBUTESETINSTANCE.DESCRIPTION FROM M_ATTRIBUTESETINSTANCE 
+        WHERE l.M_ATTRIBUTESETINSTANCE_ID = 
M_ATTRIBUTESETINSTANCE.M_ATTRIBUTESETINSTANCE_ID) as ATTRIBUTESETINSTANCENAME
         FROM C_UOM uom left join C_UOM_TRL uomt on uom.C_UOM_ID = uomt.C_UOM_ID
                                                AND uomt.AD_Language  = ?,
              C_INVOICELINE l left join M_MATCHINV mi on 
l.C_InvoiceLine_ID=mi.C_InvoiceLine_ID,
@@ -410,7 +414,8 @@
         AND l.M_Product_ID=p.M_Product_ID 
         AND l.C_Invoice_ID = ? 
         GROUP BY i.C_Invoice_ID, i.DocumentNo, DateInvoiced, GrandTotal, 
l.QtyInvoiced, 
-        l.C_UOM_ID,uom.UOMSymbol, uomt.UOMSymbol,l.M_Product_ID,p.NAME, 
l.C_InvoiceLine_ID,l.Line,l.C_OrderLine_ID, l.DESCRIPTION, l.QUANTITYORDER, 
l.M_PRODUCT_UOM_ID
+        l.C_UOM_ID,uom.UOMSymbol, uomt.UOMSymbol,l.M_Product_ID,p.NAME, 
l.C_InvoiceLine_ID,l.Line,l.C_OrderLine_ID, 
+        l.DESCRIPTION, l.QUANTITYORDER, 
l.M_PRODUCT_UOM_ID,l.M_ATTRIBUTESETINSTANCE_ID
         HAVING (l.QtyInvoiced-SUM(COALESCE(mi.Qty,0))) <> 0 
         ORDER BY NAME, l.Line
       ]]>
diff -r 37976c35e0cb -r 5d92fcb2d39f 
src/org/openbravo/erpCommon/ad_actionButton/RMInsertOrphanLine.java
--- a/src/org/openbravo/erpCommon/ad_actionButton/RMInsertOrphanLine.java       
Fri Sep 07 11:03:34 2012 +0200
+++ b/src/org/openbravo/erpCommon/ad_actionButton/RMInsertOrphanLine.java       
Fri Sep 07 10:41:55 2012 +0200
@@ -86,12 +86,21 @@
         newOrderLine.setListPrice(productPrice.getListPrice());
         newOrderLine.setPriceLimit(productPrice.getPriceLimit());
         newOrderLine.setStandardPrice(productPrice.getStandardPrice());
+        if (order.getPriceList().isPriceIncludesTax()) {
+          newOrderLine.setGrossUnitPrice(productPrice.getStandardPrice());
+          
newOrderLine.setLineGrossAmount(productPrice.getStandardPrice().multiply(returnedQty)
+              .negate());
+        }
       } else {
         BigDecimal unitPrice = new BigDecimal(strUnitPrice);
         newOrderLine.setUnitPrice(unitPrice);
         newOrderLine.setListPrice(unitPrice);
         newOrderLine.setPriceLimit(unitPrice);
         newOrderLine.setStandardPrice(unitPrice);
+        if (order.getPriceList().isPriceIncludesTax()) {
+          newOrderLine.setGrossUnitPrice(unitPrice);
+          
newOrderLine.setLineGrossAmount(unitPrice.multiply(returnedQty).negate());
+        }
       }
       // tax
       TaxRate tax = null;
diff -r 37976c35e0cb -r 5d92fcb2d39f 
src/org/openbravo/erpCommon/ad_callouts/SE_Order_BPartner.java
--- a/src/org/openbravo/erpCommon/ad_callouts/SE_Order_BPartner.java    Fri Sep 
07 11:03:34 2012 +0200
+++ b/src/org/openbravo/erpCommon/ad_callouts/SE_Order_BPartner.java    Fri Sep 
07 10:41:55 2012 +0200
@@ -103,38 +103,12 @@
     // BPartner Location
 
     FieldProvider[] tdv = null;
-    int nLocations = 0;
-    try {
-      ComboTableData comboTableData = new ComboTableData(info.vars, this, 
"TABLEDIR",
-          "C_BPartner_Location_ID", "", "C_BPartner Location - Ship To", 
Utility.getContext(this,
-              info.vars, "#AccessibleOrgTree", info.getWindowId()), 
Utility.getContext(this,
-              info.vars, "#User_Client", info.getWindowId()), 0);
-      Utility.fillSQLParameters(this, info.vars, null, comboTableData, 
info.getWindowId(), "");
-      tdv = comboTableData.select(false);
-      nLocations = tdv.length;
-      comboTableData = null;
-    } catch (Exception ex) {
-      throw new ServletException(ex);
+
+    String strLocation = info.vars.getStringParameter("inpcBpartnerId_LOC");
+    if (strLocation != null) {
+      info.addResult("inpcBpartnerLocationId", strLocation);
     }
 
-    String strLocation = info.vars.getStringParameter("inpcBpartnerId_LOC");
-    if (tdv != null && tdv.length > 0) {
-      info.addSelect("inpcBpartnerLocationId");
-      if (strLocation.isEmpty()) {
-        // If no location is provided, the first one is selected
-        info.addSelectResult(tdv[0].getField("id"), tdv[0].getField("name"), 
true);
-        for (int i = 1; i < tdv.length; i++) {
-          info.addSelectResult(tdv[i].getField("id"), tdv[i].getField("name"), 
false);
-        }
-      } else {
-        // If a location is provided, it is selected
-        for (int i = 0; i < tdv.length; i++) {
-          info.addSelectResult(tdv[i].getField("id"), tdv[i].getField("name"), 
tdv[i]
-              .getField("id").equalsIgnoreCase(strLocation));
-        }
-      }
-      info.endSelect();
-    }
     // Warehouses
 
     FieldProvider[] td = null;
@@ -243,38 +217,11 @@
     }
 
     // Bill to
-    FieldProvider[] tlv = null;
-    try {
-      ComboTableData comboTableData = new ComboTableData(info.vars, this, 
"TABLE", "",
-          "C_BPartner Location", "C_BPartner Location - Bill To", 
Utility.getContext(this,
-              info.vars, "#AccessibleOrgTree", info.getWindowId()), 
Utility.getContext(this,
-              info.vars, "#User_Client", info.getWindowId()), 0);
-      Utility.fillSQLParameters(this, info.vars, null, comboTableData, 
info.getWindowId(), "");
-      tlv = comboTableData.select(false);
-      comboTableData = null;
-    } catch (Exception ex) {
-      throw new ServletException(ex);
+
+    if (strLocation != null) {
+      info.addResult("inpbilltoId", strLocation);
     }
 
-    if (tlv != null && tlv.length > 0) {
-      info.addSelect("inpbilltoId");
-      if (strLocation.isEmpty()) {
-        // If no location is provided, the first one is selected
-        info.addSelectResult(tlv[0].getField("id"), tlv[0].getField("name"), 
true);
-        for (int i = 0; i < tlv.length; i++) {
-          info.addSelectResult(tlv[i].getField("id"), tlv[i].getField("name"), 
false);
-        }
-      } else {
-        // If a location is provided, it is selected
-        for (int i = 0; i < tlv.length; i++) {
-          info.addSelectResult(tlv[i].getField("id"), tlv[i].getField("name"), 
tlv[i]
-              .getField("id").equalsIgnoreCase(strLocation));
-        }
-      }
-      info.endSelect();
-    } else {
-      info.addResult("inpbilltoId", null);
-    }
     // Payment rule
 
     info.addResult("inppaymentrule", strPaymentrule);
@@ -366,10 +313,6 @@
 
     StringBuilder message = new StringBuilder();
 
-    if (nLocations == 0) {
-      message.append(Utility.messageBD(this, "NoBPLocation", 
info.vars.getLanguage()));
-    }
-
     if (data != null && data.length > 0
         && new BigDecimal(data[0].creditavailable).compareTo(BigDecimal.ZERO) 
< 0
         && strIsSOTrx.equals("Y")) {

------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
_______________________________________________
Openbravo-commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/openbravo-commits

Reply via email to