details:   https://code.openbravo.com/erp/devel/pi/rev/ada3076fc7dd
changeset: 15555:ada3076fc7dd
user:      Javier Etxarri <javier.echarri <at> openbravo.com>
date:      Tue Feb 21 17:08:53 2012 +0100
summary:   issue 13912,issue 19783: The process 'Create Lines from'
of the Goods Shipment window shows incorrect data

details:   https://code.openbravo.com/erp/devel/pi/rev/33175c6c534f
changeset: 15556:33175c6c534f
user:      Javier Etxarri <javier.echarri <at> openbravo.com>
date:      Tue Feb 21 17:14:13 2012 +0100
summary:   Fixes issue 19783: When running "Generate Receipt from Invoice" 
process,
associated matched invoice entry is created twice.
The problem was that to solve the issue 13912 it was created some code 
duplicated and it did not work properly. Now this code has been deleted and 
changed the combo query for proper behaviour

diffstat:

 src-db/database/model/functions/M_INOUT_POST.xml                          |  
41 ----------
 src/org/openbravo/erpCommon/ad_actionButton/CreateFrom_Shipment_data.xsql |  
22 ++--
 2 files changed, 11 insertions(+), 52 deletions(-)

diffs (118 lines):

diff -r bf93295465ca -r 33175c6c534f 
src-db/database/model/functions/M_INOUT_POST.xml
--- a/src-db/database/model/functions/M_INOUT_POST.xml  Tue Feb 21 16:38:02 
2012 +0100
+++ b/src-db/database/model/functions/M_INOUT_POST.xml  Tue Feb 21 17:14:13 
2012 +0100
@@ -516,47 +516,6 @@
             END IF;
           END IF;
           -- Close Shipment
-          --Entry in Match Invoices
-          FOR Cur_MILines IN
-                (SELECT sl.AD_Client_ID,
-                  sl.AD_Org_ID,
-                  il.C_InvoiceLine_ID,
-                  sl.M_InOutLine_ID,
-                  sl.M_Product_ID,
-                  sl.M_AttributeSetInstance_ID,
-                  sl.MovementQty,
-                  il.QTYINVOICED,
-                  i.DateAcct,
-                  il.IsDescription
-                FROM M_INOUTLINE sl,
-                  C_INVOICE i,
-                  C_INVOICELINE il
-                WHERE sl.M_InOutLine_ID=il.M_InOutLine_ID
-                  AND sl.M_InOut_ID=Cur_InOut.M_InOut_ID
-                  AND i.C_INVOICE_ID = il.C_INVOICE_ID
-                )
-              LOOP
-                --Ad_Sequence_Next('M_MatchInv', Cur_MILines.AD_Org_ID, 
v_MatchInv_ID) ;
-                -- The min qty. Modified by Ismael Ciordia
-                v_Qty:=Cur_MILines.MovementQty;
-              --  v_ResultStr:='InsertMatchPO ' || v_MatchPO_ID;
-                INSERT
-                INTO M_MATCHINV
-                  (
-                    M_MATCHINV_ID, AD_CLIENT_ID, AD_ORG_ID, ISACTIVE,
-                    CREATED, CREATEDBY, UPDATED, UPDATEDBY,
-                    M_INOUTLINE_ID, C_INVOICELINE_ID, M_PRODUCT_ID, DATETRX,
-                    QTY, PROCESSING, PROCESSED, POSTED
-                  )
-                  VALUES
-                  (
-                    GET_UUID(), Cur_MILines.AD_Client_ID, 
Cur_MILines.AD_Org_ID, 'Y',
-                    now(), v_User, now(), v_User,
-                    Cur_MILines.M_InOutLine_ID, Cur_MILines.C_InvoiceLine_ID, 
Cur_MILines.M_Product_ID, Cur_MILines.DateAcct,
-                    v_Qty, 'N', 'Y', 'N'
-                  )
-                  ;
-              END LOOP;
           v_ResultStr:='CloseShipment';
           UPDATE M_INOUT
             SET Processed='Y',
diff -r bf93295465ca -r 33175c6c534f 
src/org/openbravo/erpCommon/ad_actionButton/CreateFrom_Shipment_data.xsql
--- a/src/org/openbravo/erpCommon/ad_actionButton/CreateFrom_Shipment_data.xsql 
Tue Feb 21 16:38:02 2012 +0100
+++ b/src/org/openbravo/erpCommon/ad_actionButton/CreateFrom_Shipment_data.xsql 
Tue Feb 21 17:14:13 2012 +0100
@@ -296,10 +296,10 @@
     <Sql>
       <![CDATA[
         SELECT i.C_Invoice_ID, Ad_Column_Identifier(TO_CHAR('C_Invoice'), 
TO_CHAR(i.C_Invoice_ID), TO_CHAR(?)) AS NAME, 
-        l.QtyInvoiced-SUM(COALESCE(mi.Qty,0)) AS QTY, l.C_UOM_ID,uom.UOMSymbol,
+        l.QtyInvoiced-SUM(COALESCE(mi.MOVEMENTQTY,0)) AS QTY, 
l.C_UOM_ID,uom.UOMSymbol,
         l.M_Product_ID,p.NAME AS RELATION_NAME, l.C_InvoiceLine_ID,l.Line, 
l.C_OrderLine_ID, l.C_InvoiceLine_ID AS ID, 
         l.DESCRIPTION AS DESCRIPTION
-        FROM C_INVOICELINE l left join  M_MATCHINV mi  on 
l.C_InvoiceLine_ID=mi.C_InvoiceLine_ID,
+        FROM C_INVOICELINE l left join M_INOUTLINE mi on l.M_INOUTLINE_ID = 
mi.M_INOUTLINE_ID,
         C_INVOICE i, C_UOM uom,  M_PRODUCT p
         WHERE i.C_INVOICE_ID = l.C_INVOICE_ID 
         AND i.AD_Client_ID IN ('1') 
@@ -309,7 +309,7 @@
         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
-        HAVING (l.QtyInvoiced-SUM(COALESCE(mi.Qty,0))) <> 0 
+        HAVING (l.QtyInvoiced-SUM(COALESCE(mi.MOVEMENTQTY,0))) <> 0 
         ORDER BY NAME, l.Line
       ]]>
     </Sql>
@@ -353,11 +353,11 @@
         WHERE i.AD_Client_ID IN ('1') 
         AND i.AD_Org_ID IN ('1')
         AND i.C_BPartner_ID = ?
-        AND EXISTS (SELECT 1 
-                     FROM C_INVOICELINE l left join M_MATCHINV mi on 
l.C_InvoiceLine_ID=mi.C_InvoiceLine_ID
-                      WHERE l.C_INVOICE_ID = i.C_INVOICE_ID 
-                      GROUP BY l.QtyInvoiced, l.C_InvoiceLine_ID 
-                      HAVING (l.QtyInvoiced-SUM(COALESCE(mi.Qty,0))) <> 0 ) 
+        AND EXISTS (SELECT 1                      
+                FROM C_INVOICELINE l LEFT JOIN M_INOUTLINE MI ON 
l.M_INOUTLINE_ID = MI.M_INOUTLINE_ID                        
+                WHERE l.C_INVOICE_ID = i.C_INVOICE_ID                
+                GROUP BY l.C_InvoiceLine_ID ,l.QtyInvoiced                
+                HAVING (l.QtyInvoiced-SUM(COALESCE(mi.MOVEMENTQTY,0))) <> 0 ) 
         ORDER BY NAME
       ]]>
     </Sql>
@@ -435,13 +435,13 @@
     <SqlMethodComment></SqlMethodComment>
     <Sql>
       <![CDATA[
-      SELECT l.QtyInvoiced-SUM(COALESCE(mi.Qty,0)) AS ID, 
l.C_UOM_ID,uom.UOMSymbol,
+      SELECT l.QtyInvoiced-SUM(COALESCE(mi.MOVEMENTQTY,0)) AS ID, 
l.C_UOM_ID,uom.UOMSymbol,
       l.M_Product_ID,p.NAME, l.C_InvoiceLine_ID,l.Line, l.C_OrderLine_ID, 
COALESCE(uom1.BREAKDOWN, 'N') AS BREAKDOWN, 
       MAX(mu.C_UOM_ID) AS C_UOM_ID_Conversion, MAX(uom1.STDPRECISION) AS 
STDPRECISION, l.QUANTITYORDER, l.M_Product_UOM_ID,
       l.M_ATTRIBUTESETINSTANCE_ID, l.ad_org_id, l.DESCRIPTION AS DESCRIPTION
       FROM C_INVOICELINE l left join  M_Product_UOM mu on l.M_Product_UOM_ID = 
mu.M_Product_UOM_ID 
                            left join C_UOM uom1 on mu.C_UOM_ID = uom1.C_UOM_ID 
-                           left join M_MATCHINV mi on 
l.C_InvoiceLine_ID=mi.C_InvoiceLine_ID,
+                           left join M_INOUTLINE mi on 
l.M_INOUTLINE_ID=mi.M_INOUTLINE_ID,
       C_UOM uom,  M_PRODUCT p, C_INVOICE i
       WHERE l.C_UOM_ID=uom.C_UOM_ID
       AND i.c_invoice_id = l.c_invoice_id
@@ -450,7 +450,7 @@
       GROUP BY l.QtyInvoiced,
       l.C_UOM_ID,uom.UOMSymbol,l.M_Product_ID,p.NAME, 
l.C_InvoiceLine_ID,l.Line,l.C_OrderLine_ID, 
       uom1.BREAKDOWN, l.QUANTITYORDER, l.M_Product_UOM_ID, 
l.M_ATTRIBUTESETINSTANCE_ID, l.ad_org_id, l.DESCRIPTION
-      HAVING l.QtyInvoiced-SUM(COALESCE(mi.Qty,0))<>0
+      HAVING l.QtyInvoiced-SUM(COALESCE(mi.MOVEMENTQTY,0))<>0
       ORDER BY l.Line
       ]]>
     </Sql>

------------------------------------------------------------------------------
Keep Your Developer Skills Current with LearnDevNow!
The most comprehensive online learning library for Microsoft developers
is just $99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, MVC3,
Metro Style Apps, more. Free future releases when you subscribe now!
http://p.sf.net/sfu/learndevnow-d2d
_______________________________________________
Openbravo-commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/openbravo-commits

Reply via email to