details:   /erp/devel/pi/rev/bef45fc2f631
changeset: 7027:bef45fc2f631
user:      Eduardo Argal Guibert <eduardo.argal <at> openbravo.com>
date:      Tue Apr 13 23:40:08 2010 +0200
summary:   Fixes bug 0012962: Invoice and orders business partner callouts

details:   /erp/devel/pi/rev/81522f10575a
changeset: 7028:81522f10575a
user:      Eduardo Argal Guibert <eduardo.argal <at> openbravo.com>
date:      Tue Apr 13 23:47:16 2010 +0200
summary:   Fixes bug 0012963: Some procedures are not loading payment method

diffstat:

 src-db/database/model/functions/C_GENERATEPOFROMPROJECT.xml        |   7 +-
 src-db/database/model/functions/C_GENERATESOFROMPROJECT.xml        |   7 +-
 src-db/database/model/functions/C_GENERATESOFROMPROJECTORDER.xml   |   8 ++-
 src-db/database/model/functions/C_GENERATESOFROMPROJECTPHASE.xml   |  12 +++-
 src-db/database/model/functions/C_INVOICE_CREATE.xml               |  10 ++--
 src-db/database/model/functions/C_INVOICE_POST.xml                 |   4 +-
 src/org/openbravo/erpCommon/ad_callouts/SE_Invoice_BPartner.java   |  20 
++++++---
 src/org/openbravo/erpCommon/ad_callouts/SE_Order_BPartner.java     |  21 
+++++----
 src/org/openbravo/erpCommon/businessUtility/BpartnerMisc_data.xsql |  15 +++---
 9 files changed, 62 insertions(+), 42 deletions(-)

diffs (truncated from 364 to 300 lines):

diff -r fb76578923df -r 81522f10575a 
src-db/database/model/functions/C_GENERATEPOFROMPROJECT.xml
--- a/src-db/database/model/functions/C_GENERATEPOFROMPROJECT.xml       Tue Apr 
13 20:56:39 2010 +0200
+++ b/src-db/database/model/functions/C_GENERATEPOFROMPROJECT.xml       Tue Apr 
13 23:47:16 2010 +0200
@@ -100,7 +100,8 @@
           P.POREFERENCE,
           P.SALESREP_ID,
           P.CREATETEMPPRICELIST,
-          P.DESCRIPTION
+          P.DESCRIPTION,
+          COALESCE(P.FIN_PAYMENTMETHOD_ID, BP.PO_PAYMENTMETHOD_ID) as 
FIN_PAYMENTMETHOD_ID
         FROM C_PROJECT P,
           C_PROJECT_VENDOR V,
           C_BPARTNER BP,
@@ -165,7 +166,7 @@
             ISTAXINCLUDED, POSTED, PROCESSING, SALESREP_ID,
             BILLTO_ID, POREFERENCE, C_CAMPAIGN_ID, C_PROJECT_ID,
             AD_USER_ID, COPYFROM, C_INCOTERMS_ID, INCOTERMSDESCRIPTION,
-            DATEPROMISED, DESCRIPTION
+            DATEPROMISED, DESCRIPTION, FIN_PAYMENTMETHOD_ID
           )
           VALUES
           (
@@ -179,7 +180,7 @@
              'N', 'N', 'N', Cur_SO.SALESREP_ID,
             v_BillTo_ID, Cur_SO.POREFERENCE, Cur_SO.C_CAMPAIGN_ID, 
Cur_SO.C_PROJECT_ID,
             NULL, 'N', Cur_SO.C_INCOTERMS_ID, Cur_SO.INCOTERMS_DESCRIPTION,
-            TRUNC(now(), 'DD'), Cur_SO.DESCRIPTION
+            TRUNC(now(), 'DD'), Cur_SO.DESCRIPTION, Cur_SO.FIN_PAYMENTMETHOD_ID
           )
           ;
 
diff -r fb76578923df -r 81522f10575a 
src-db/database/model/functions/C_GENERATESOFROMPROJECT.xml
--- a/src-db/database/model/functions/C_GENERATESOFROMPROJECT.xml       Tue Apr 
13 20:56:39 2010 +0200
+++ b/src-db/database/model/functions/C_GENERATESOFROMPROJECT.xml       Tue Apr 
13 23:47:16 2010 +0200
@@ -25,6 +25,7 @@
   v_Result NUMBER:=1; -- 0=failure
   v_Record_ID VARCHAR2(32);
   v_AD_User_ID VARCHAR2(32);
+  v_fin_paymentmethod_id C_BPARTNER.FIN_PAYMENTMETHOD_ID%TYPE;
   TYPE RECORD IS REF CURSOR;
     Cur_Parameter RECORD;
     v_C_Order_ID VARCHAR2(32);
@@ -112,7 +113,7 @@
           v_Billto_ID := C_GetBPLocationID(Cur_SO.C_BPartner_ID, 'B') ;
         END IF;
 
-        SELECT InvoiceRule INTO v_InvoiceRule
+        SELECT InvoiceRule, fin_paymentmethod_id INTO v_InvoiceRule, 
v_fin_paymentmethod_id
         FROM C_BPARTNER
         WHERE C_BPartner_ID = Cur_SO.C_BPARTNER_ID;
         IF (v_InvoiceRule IS NULL) THEN
@@ -141,7 +142,7 @@
             TOTALLINES, GRANDTOTAL, M_WAREHOUSE_ID, M_PRICELIST_ID,
             ISTAXINCLUDED, POSTED, PROCESSING, SALESREP_ID,
             BILLTO_ID, C_CAMPAIGN_ID, C_PROJECT_ID, AD_USER_ID,
-            COPYFROM, DATEPROMISED
+            COPYFROM, DATEPROMISED, FIN_PAYMENTMETHOD_ID
           )
           VALUES
           (
@@ -154,7 +155,7 @@
             0, 0, Cur_SO.M_WAREHOUSE_ID, Cur_SO.M_PRICELIST_ID,
              'N', 'N', 'N', Cur_SO.SALESREP_ID,
             v_Billto_ID, Cur_SO.C_CAMPAIGN_ID, Cur_SO.C_PROJECT_ID, 
Cur_SO.AD_User_ID,
-             'N', TRUNC(now(), 'DD')
+             'N', TRUNC(now(), 'DD'), COALESCE(Cur_SO.FIN_PAYMENTMETHOD_ID, 
v_fin_paymentmethod_id)
           )
           ;
 
diff -r fb76578923df -r 81522f10575a 
src-db/database/model/functions/C_GENERATESOFROMPROJECTORDER.xml
--- a/src-db/database/model/functions/C_GENERATESOFROMPROJECTORDER.xml  Tue Apr 
13 20:56:39 2010 +0200
+++ b/src-db/database/model/functions/C_GENERATESOFROMPROJECTORDER.xml  Tue Apr 
13 23:47:16 2010 +0200
@@ -26,6 +26,7 @@
   v_Record_ID VARCHAR2(32);
   v_AD_User_ID VARCHAR2(32);
   v_M_PriceList_ID2 VARCHAR2(32);
+  v_fin_paymentmethod_id C_BPARTNER.FIN_PAYMENTMETHOD_ID%TYPE;
   TYPE RECORD IS REF CURSOR;
     Cur_Parameter RECORD;
     v_C_Order_ID VARCHAR2(32);
@@ -89,6 +90,9 @@
         INTO v_M_PriceList_ID2
         FROM M_PRICELIST_VERSION
         WHERE M_PriceList_Version_ID=Cur_SO.M_PRICELIST_VERSION_ID;
+        SELECT fin_paymentmethod_id INTO v_fin_paymentmethod_id
+        FROM C_BPARTNER
+        WHERE C_BPartner_ID = Cur_SO.C_BPARTNER_ID;
         v_ResultStr:='DocumentNo - ' || v_DocumentNo || ' m_pricelist_id - ' 
|| COALESCE(Cur_SO.m_pricelist_id, v_M_Pricelist_ID2);
           INSERT
           INTO C_ORDER
@@ -102,7 +106,7 @@
               TOTALLINES, GRANDTOTAL, M_WAREHOUSE_ID, M_PRICELIST_ID,
               ISTAXINCLUDED, POSTED, PROCESSING, SALESREP_ID,
               BILLTO_ID, C_CAMPAIGN_ID, C_PROJECT_ID, AD_USER_ID,
-              COPYFROM, DATEPROMISED
+              COPYFROM, DATEPROMISED, FIN_PAYMENTMETHOD_ID
             )
             VALUES
             (
@@ -115,7 +119,7 @@
               0, 0, Cur_SO.M_WAREHOUSE_ID, COALESCE(Cur_SO.M_PRICELIST_ID, 
v_M_PriceList_ID2),
                'N', 'N', 'N', Cur_SO.SALESREP_ID,
               Cur_SO.BILLTO_ID, Cur_SO.C_CAMPAIGN_ID, Cur_SO.C_PROJECT_ID, 
Cur_SO.AD_User_ID,
-               'N', TRUNC(now(), 'DD')
+               'N', TRUNC(now(), 'DD'), COALESCE(Cur_SO.FIN_PAYMENTMETHOD_ID, 
v_fin_paymentmethod_id)
             )
             ;
           FOR SOLINES IN
diff -r fb76578923df -r 81522f10575a 
src-db/database/model/functions/C_GENERATESOFROMPROJECTPHASE.xml
--- a/src-db/database/model/functions/C_GENERATESOFROMPROJECTPHASE.xml  Tue Apr 
13 20:56:39 2010 +0200
+++ b/src-db/database/model/functions/C_GENERATESOFROMPROJECTPHASE.xml  Tue Apr 
13 23:47:16 2010 +0200
@@ -25,6 +25,7 @@
   v_Result NUMBER:=1; -- 0=failure
   v_Record_ID VARCHAR2(32);
   v_AD_User_ID VARCHAR2(32);
+  v_fin_paymentmethod_id C_BPARTNER.FIN_PAYMENTMETHOD_ID%TYPE;
   TYPE RECORD IS REF CURSOR;
     Cur_Parameter RECORD;
     v_C_Order_ID VARCHAR2(32);
@@ -77,7 +78,8 @@
         SELECT P.C_BPARTNER_ID, P.C_BPARTNER_LOCATION_ID, P.M_PRICELIST_ID, 
PL.NAME AS PRICE_LIST_NAME,
           P.C_CURRENCY_ID, P.PAYMENTRULE, P.C_PAYMENTTERM_ID, 
P.M_WAREHOUSE_ID, P.SALESREP_ID,
           P.BILLTO_ID, P.C_CAMPAIGN_ID, P.C_PROJECT_ID, P.AD_USER_ID, 
P.DESCRIPTION, P.PROJECTSTATUS,
-          PP.NAME AS PHASE_NAME, PP.AD_CLIENT_ID, PP.AD_ORG_ID, 
OI.C_LOCATION_ID AS ORGLOCATIONID
+          PP.NAME AS PHASE_NAME, PP.AD_CLIENT_ID, PP.AD_ORG_ID, 
OI.C_LOCATION_ID AS ORGLOCATIONID,
+          P.FIN_PAYMENTMETHOD_ID
         FROM C_PROJECT P,
           C_PROJECTPHASE PP,
           M_PRICELIST PL,
@@ -117,7 +119,7 @@
           v_Billto_ID := C_GetBPLocationID(Cur_SO.C_BPartner_ID, 'B') ;
         END IF;
 
-        SELECT InvoiceRule INTO v_InvoiceRule
+        SELECT InvoiceRule, FIN_PAYMENTMETHOD_ID INTO v_InvoiceRule, 
v_fin_paymentmethod_id
         FROM C_BPARTNER
         WHERE C_BPartner_ID = Cur_SO.C_BPARTNER_ID;
         IF (v_InvoiceRule IS NULL) THEN
@@ -148,7 +150,7 @@
             TOTALLINES, GRANDTOTAL, M_WAREHOUSE_ID, M_PRICELIST_ID,
             ISTAXINCLUDED, POSTED, PROCESSING, SALESREP_ID,
             BILLTO_ID, C_CAMPAIGN_ID, C_PROJECT_ID, AD_USER_ID,
-            COPYFROM, DATEPROMISED, DESCRIPTION
+            COPYFROM, DATEPROMISED, DESCRIPTION, FIN_PAYMENTMETHOD_ID
           )
           VALUES
           (
@@ -161,7 +163,9 @@
             0, 0, Cur_SO.M_WAREHOUSE_ID, Cur_SO.M_PRICELIST_ID,
              'N', 'N', 'N', Cur_SO.SALESREP_ID,
             v_Billto_ID, Cur_SO.C_CAMPAIGN_ID, Cur_SO.C_PROJECT_ID, 
Cur_SO.AD_User_ID,
-             'N', TRUNC(now(), 'DD'), Cur_SO.PHASE_NAME || ' - ' || 
COALESCE(TO_CHAR(Cur_SO.DESCRIPTION),'')
+             'N', TRUNC(now(), 'DD'), Cur_SO.PHASE_NAME || ' - ' || 
COALESCE(TO_CHAR(Cur_SO.DESCRIPTION),''), 
+             COALESCE(Cur_SO.FIN_PAYMENTMETHOD_ID, v_fin_paymentmethod_id)
+             
           );
 
         UPDATE C_PROJECTPHASE
diff -r fb76578923df -r 81522f10575a 
src-db/database/model/functions/C_INVOICE_CREATE.xml
--- a/src-db/database/model/functions/C_INVOICE_CREATE.xml      Tue Apr 13 
20:56:39 2010 +0200
+++ b/src-db/database/model/functions/C_INVOICE_CREATE.xml      Tue Apr 13 
23:47:16 2010 +0200
@@ -404,7 +404,7 @@
                   DateOrdered, IsDiscountPrinted, C_Currency_ID, PaymentRule,
                   C_Charge_ID, ChargeAmt, IsSelfService, TotalLines,
                   GrandTotal, M_PriceList_ID, C_Campaign_ID, C_Project_ID,
-                  C_Activity_ID, AD_OrgTrx_ID, User1_ID, User2_ID
+                  C_Activity_ID, AD_OrgTrx_ID, User1_ID, User2_ID, 
fin_paymentmethod_id
                 )
                 VALUES
                 (
@@ -420,7 +420,7 @@
                   Cur_Order.PaymentRule, Cur_Order.C_Charge_ID, 
Cur_Order.ChargeAmt, Cur_Order.IsSelfService,
                   0, 0, Cur_Order.M_PriceList_ID, Cur_Order.C_Campaign_ID,
                   Cur_Order.C_Project_ID, Cur_Order.C_Activity_ID, 
Cur_Order.AD_OrgTrx_ID, Cur_Order.User1_ID,
-                  Cur_Order.User2_ID
+                  Cur_Order.User2_ID, Cur_Order.fin_paymentmethod_id
                 )
                 ;
               --
@@ -677,7 +677,7 @@
                 sh.movementDate,
                 ol.PriceStd,
                 ol.m_attributesetinstance_id,
-                ol.taxbaseamt
+                ol.taxbaseamt, o.fin_paymentmethod_id
               FROM M_INOUT sh,
                 M_INOUTLINE sl,
                 C_ORDER o,
@@ -924,7 +924,7 @@
                       PaymentRule, C_Charge_ID, ChargeAmt, IsSelfService,
                       TotalLines, GrandTotal, M_PriceList_ID, C_Campaign_ID,
                       C_Project_ID, C_Activity_ID, AD_OrgTrx_ID, User1_ID,
-                      User2_ID
+                      User2_ID, fin_paymentmethod_id
                     )
                     VALUES
                     (
@@ -940,7 +940,7 @@
                       Cur_InvoiceSchedule.PaymentRule, NULL, 0, 'N',
                       0, 0, Cur_InvoiceSchedule.M_PriceList_ID, 
Cur_InvoiceSchedule.C_Campaign_ID,
                       Cur_InvoiceSchedule.C_Project_ID, 
Cur_InvoiceSchedule.C_Activity_ID, Cur_InvoiceSchedule.AD_OrgTrx_ID, 
Cur_InvoiceSchedule.User1_ID,
-                      Cur_InvoiceSchedule.User2_ID
+                      Cur_InvoiceSchedule.User2_ID, 
Cur_InvoiceSchedule.fin_paymentmethod_id
                     )
                     ;
                   --
diff -r fb76578923df -r 81522f10575a 
src-db/database/model/functions/C_INVOICE_POST.xml
--- a/src-db/database/model/functions/C_INVOICE_POST.xml        Tue Apr 13 
20:56:39 2010 +0200
+++ b/src-db/database/model/functions/C_INVOICE_POST.xml        Tue Apr 13 
23:47:16 2010 +0200
@@ -454,7 +454,7 @@
               C_Currency_ID, PaymentRule, C_Charge_ID, ChargeAmt,
               TotalLines, GrandTotal, M_PriceList_ID, C_Campaign_ID,
               C_Project_ID, C_Activity_ID, AD_OrgTrx_ID, User1_ID,
-              User2_ID
+              User2_ID, fin_paymentmethod_id
             )
           SELECT v_RInvoice_ID, C_Order_ID, AD_Client_ID, AD_Org_ID,
             IsActive, now(), UpdatedBy, now(),
@@ -467,7 +467,7 @@
             C_Currency_ID, PaymentRule, C_Charge_ID, ChargeAmt * -1,
             TotalLines * -1, GrandTotal * -1, M_PriceList_ID, C_Campaign_ID,
             C_Project_ID, C_Activity_ID, AD_OrgTrx_ID, User1_ID,
-            User2_ID
+            User2_ID, fin_paymentmethod_id
           FROM C_INVOICE
           WHERE C_Invoice_ID=v_Record_ID;
           -- Create Reversed invoice relation
diff -r fb76578923df -r 81522f10575a 
src/org/openbravo/erpCommon/ad_callouts/SE_Invoice_BPartner.java
--- a/src/org/openbravo/erpCommon/ad_callouts/SE_Invoice_BPartner.java  Tue Apr 
13 20:56:39 2010 +0200
+++ b/src/org/openbravo/erpCommon/ad_callouts/SE_Invoice_BPartner.java  Tue Apr 
13 23:47:16 2010 +0200
@@ -4,15 +4,15 @@
  * Version  1.0  (the  "License"),  being   the  Mozilla   Public  License
  * Version 1.1  with a permitted attribution clause; you may not  use this
  * file except in compliance with the License. You  may  obtain  a copy of
- * the License at http://www.openbravo.com/legal/license.html 
+ * the License at http://www.openbravo.com/legal/license.html
  * Software distributed under the License  is  distributed  on  an "AS IS"
  * basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the
  * License for the specific  language  governing  rights  and  limitations
- * under the License. 
- * The Original Code is Openbravo ERP. 
- * The Initial Developer of the Original Code is Openbravo SLU 
- * All portions are Copyright (C) 2001-2009 Openbravo SLU 
- * All Rights Reserved. 
+ * under the License.
+ * The Original Code is Openbravo ERP.
+ * The Initial Developer of the Original Code is Openbravo SLU
+ * All portions are Copyright (C) 2001-2009 Openbravo SLU
+ * All Rights Reserved.
  * Contributor(s):  ______________________________________.
  ************************************************************************
  */
@@ -102,6 +102,11 @@
       else if (strPaymentRule.equals("S") || strPaymentRule.equals("U") && 
strIsSOTrx.equals("Y"))
         strPaymentRule = "P";
       resultado.append("new Array(\"inppaymentrule\", \"" + strPaymentRule + 
"\"),");
+      String strFinPaymentMethodId = (strIsSOTrx.equals("Y") ? 
data[0].finPaymentmethodId
+          : data[0].poPaymentmethodId);
+      if (!"".equals(strFinPaymentMethodId))
+        resultado
+            .append("new Array(\"inpfinPaymentmethodId\", \"" + 
strFinPaymentMethodId + "\"),");
       String PaymentTerm = (strIsSOTrx.equals("Y") ? data[0].cPaymenttermId
           : data[0].poPaymenttermId);
       resultado.append("new Array(\"inpcPaymenttermId\", \"" + PaymentTerm + 
"\"),");
@@ -219,7 +224,8 @@
       resultado
           .append("new Array(\"inpisdiscountprinted\", \"" + 
data[0].isdiscountprinted + "\")");
       if (data != null && data.length > 0
-          && new 
BigDecimal(data[0].creditavailable).compareTo(BigDecimal.ZERO) < 0 && 
strIsSOTrx.equals("Y")) {
+          && new 
BigDecimal(data[0].creditavailable).compareTo(BigDecimal.ZERO) < 0
+          && strIsSOTrx.equals("Y")) {
         String creditLimitExceed = "" + 
Double.parseDouble(data[0].creditavailable) * -1;
         resultado.append(", new Array('MESSAGE', \""
             + Utility.messageBD(this, "CreditLimitOver", vars.getLanguage()) + 
creditLimitExceed
diff -r fb76578923df -r 81522f10575a 
src/org/openbravo/erpCommon/ad_callouts/SE_Order_BPartner.java
--- a/src/org/openbravo/erpCommon/ad_callouts/SE_Order_BPartner.java    Tue Apr 
13 20:56:39 2010 +0200
+++ b/src/org/openbravo/erpCommon/ad_callouts/SE_Order_BPartner.java    Tue Apr 
13 23:47:16 2010 +0200
@@ -4,15 +4,15 @@
  * Version  1.0  (the  "License"),  being   the  Mozilla   Public  License
  * Version 1.1  with a permitted attribution clause; you may not  use this
  * file except in compliance with the License. You  may  obtain  a copy of
- * the License at http://www.openbravo.com/legal/license.html 
+ * the License at http://www.openbravo.com/legal/license.html
  * Software distributed under the License  is  distributed  on  an "AS IS"
  * basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the
  * License for the specific  language  governing  rights  and  limitations
- * under the License. 
- * The Original Code is Openbravo ERP. 
- * The Initial Developer of the Original Code is Openbravo SLU 
- * All portions are Copyright (C) 2001-2009 Openbravo SLU 
- * All Rights Reserved. 
+ * under the License.
+ * The Original Code is Openbravo ERP.
+ * The Initial Developer of the Original Code is Openbravo SLU
+ * All portions are Copyright (C) 2001-2009 Openbravo SLU
+ * All Rights Reserved.
  * Contributor(s):  ______________________________________.
  ************************************************************************
  */
@@ -91,8 +91,8 @@

------------------------------------------------------------------------------
Download Intel&#174; Parallel Studio Eval
Try the new software tools for yourself. Speed compiling, find bugs
proactively, and fine-tune applications for parallel performance.
See why Intel Parallel Studio got high marks during beta.
http://p.sf.net/sfu/intel-sw-dev
_______________________________________________
Openbravo-commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/openbravo-commits

Reply via email to