details:   https://code.openbravo.com/erp/devel/pi/rev/52159cbc5ef4
changeset: 23978:52159cbc5ef4
user:      Víctor Martínez Romanos <victor.martinez <at> openbravo.com>
date:      Thu Jul 03 13:45:02 2014 +0200
summary:   Fixed bug 26717 Fixed bug 26918: Cash VAT error when creating orders 
automatically

Set Order Header Cash VAT flag automatically based on the order line tax 
definition through the C_ORDERLINE_TRG trigger (as we do for invoices).
This way we force any process that creates Orders to properly set the 
C_Order.IsCashVAT

details:   https://code.openbravo.com/erp/devel/pi/rev/8e3618710571
changeset: 23979:8e3618710571
user:      Víctor Martínez Romanos <victor.martinez <at> openbravo.com>
date:      Thu Jul 03 13:51:48 2014 +0200
summary:   Fixed issue 26397: Cash VAT for orders and invoices based also on 
location

Cash VAT regime is only allowed for transactions inside the same country.
In case the Organization's and Business Partner's countries are different, the 
document's Cash VAT flag (for orders and invoices) is forced to be unchecked.
This is controlled through several callouts at Invoice's/Order's header on the 
Organization and Business Partner Location columns.

diffstat:

 src-db/database/model/triggers/C_ORDERLINE_TRG.xml                       |  30 
+++-
 src-db/database/sourcedata/AD_CALLOUT.xml                                |  18 
++
 src-db/database/sourcedata/AD_COLUMN.xml                                 |   2 
+
 src-db/database/sourcedata/AD_MODEL_OBJECT.xml                           |  24 
++
 src-db/database/sourcedata/AD_MODEL_OBJECT_MAPPING.xml                   |  20 
++
 src/org/openbravo/erpCommon/ad_callouts/SE_Invoice_BPartner.java         |  20 
--
 src/org/openbravo/erpCommon/ad_callouts/SE_Invoice_BPartnerLocation.java |  44 
++++
 src/org/openbravo/erpCommon/ad_callouts/SE_Invoice_Organization.java     |  19 
+-
 src/org/openbravo/erpCommon/ad_callouts/SE_Order_BPartner.java           |  16 
-
 src/org/openbravo/erpCommon/ad_callouts/SE_Order_BPartnerLocation.java   |  44 
++++
 src/org/openbravo/erpCommon/ad_callouts/SE_Order_Organization.java       |  16 
+-
 src/org/openbravo/erpCommon/utility/CashVATUtil.java                     |  90 
++++++++++
 12 files changed, 285 insertions(+), 58 deletions(-)

diffs (truncated from 545 to 300 lines):

diff -r a6e993bb78a3 -r 8e3618710571 
src-db/database/model/triggers/C_ORDERLINE_TRG.xml
--- a/src-db/database/model/triggers/C_ORDERLINE_TRG.xml        Fri Jul 04 
08:11:23 2014 +0200
+++ b/src-db/database/model/triggers/C_ORDERLINE_TRG.xml        Thu Jul 03 
13:51:48 2014 +0200
@@ -43,7 +43,10 @@
   xTaxAmt NUMBER:=0;
   v_reservation_id    VARCHAR2(32);
   v_prereservedqty    NUMBER;
-    
+  v_IsWithholding_Tax C_Tax.IsWithholdingTax%TYPE;
+  v_IsCashVAT_Tax C_Tax.IsCashVAT%TYPE;
+  v_IsCashVAT_Order C_Order.IsCashVAT%TYPE;
+  v_Rate_Tax C_Tax.Rate%TYPE;
 BEGIN
     
     IF AD_isTriggerEnabled()='N' THEN RETURN;
@@ -178,6 +181,31 @@
     END IF;
  END IF;
 
+ -- Update C_Order.IsCashVAT flag from the line tax rate.
+ -- We do it this way to force any process that creates Orders to properly set 
the C_Order.IsCashVAT
+ -- If a user manually changes the tax rate when entering a line, the order's 
header IsCash VAT may change
+ -- This will just work for not withholding tax rates
+ IF (INSERTING OR UPDATING) THEN
+  IF (:NEW.C_TAX_ID IS NOT NULL) THEN
+   SELECT COALESCE(iswithholdingtax, 'N'), COALESCE(IsCashVAT, 'N'), 
COALESCE(rate, 0)
+   INTO v_IsWithholding_Tax, v_IsCashVAT_Tax, v_Rate_Tax
+   FROM C_Tax
+   WHERE C_Tax_ID=:NEW.C_Tax_ID;
+
+   IF (v_IsWithholding_Tax='N' AND v_Rate_Tax<>0) THEN
+    SELECT COALESCE(IsCashVAT, 'N')
+    INTO v_IsCashVAT_Order
+    FROM C_Order
+    WHERE C_Order_ID=:NEW.C_Order_ID;
+
+    IF (v_IsCashVAT_Tax <> v_IsCashVAT_Order) THEN
+      UPDATE C_Order
+      SET IsCashVAT = v_IsCashVAT_Tax
+      WHERE C_Order_ID=:NEW.C_Order_ID;
+    END IF;
+   END IF;
+  END IF;
+ END IF;
 
 END C_ORDERLINE_TRG
 ]]></body>
diff -r a6e993bb78a3 -r 8e3618710571 src-db/database/sourcedata/AD_CALLOUT.xml
--- a/src-db/database/sourcedata/AD_CALLOUT.xml Fri Jul 04 08:11:23 2014 +0200
+++ b/src-db/database/sourcedata/AD_CALLOUT.xml Thu Jul 03 13:51:48 2014 +0200
@@ -1064,6 +1064,15 @@
 <!--B7913B8983F94C7AA8D871F657D9DD32-->  
<AD_MODULE_ID><![CDATA[0]]></AD_MODULE_ID>
 <!--B7913B8983F94C7AA8D871F657D9DD32--></AD_CALLOUT>
 
+<!--B95E999B9C554E399A20B41D11657FDE--><AD_CALLOUT>
+<!--B95E999B9C554E399A20B41D11657FDE-->  
<AD_CALLOUT_ID><![CDATA[B95E999B9C554E399A20B41D11657FDE]]></AD_CALLOUT_ID>
+<!--B95E999B9C554E399A20B41D11657FDE-->  
<AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
+<!--B95E999B9C554E399A20B41D11657FDE-->  <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
+<!--B95E999B9C554E399A20B41D11657FDE-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
+<!--B95E999B9C554E399A20B41D11657FDE-->  
<NAME><![CDATA[SE_Order_BPartnerLocation]]></NAME>
+<!--B95E999B9C554E399A20B41D11657FDE-->  
<AD_MODULE_ID><![CDATA[0]]></AD_MODULE_ID>
+<!--B95E999B9C554E399A20B41D11657FDE--></AD_CALLOUT>
+
 <!--BE4B8516395242B5BC072CDEAAD86163--><AD_CALLOUT>
 <!--BE4B8516395242B5BC072CDEAAD86163-->  
<AD_CALLOUT_ID><![CDATA[BE4B8516395242B5BC072CDEAAD86163]]></AD_CALLOUT_ID>
 <!--BE4B8516395242B5BC072CDEAAD86163-->  
<AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
@@ -1222,6 +1231,15 @@
 <!--FABEBED69FEF49F8993F3FDA911FD94B-->  
<AD_MODULE_ID><![CDATA[0]]></AD_MODULE_ID>
 <!--FABEBED69FEF49F8993F3FDA911FD94B--></AD_CALLOUT>
 
+<!--FC0299E01341446C93A678644867E57A--><AD_CALLOUT>
+<!--FC0299E01341446C93A678644867E57A-->  
<AD_CALLOUT_ID><![CDATA[FC0299E01341446C93A678644867E57A]]></AD_CALLOUT_ID>
+<!--FC0299E01341446C93A678644867E57A-->  
<AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
+<!--FC0299E01341446C93A678644867E57A-->  <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
+<!--FC0299E01341446C93A678644867E57A-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
+<!--FC0299E01341446C93A678644867E57A-->  
<NAME><![CDATA[SE_Invoice_BPartnerLocation]]></NAME>
+<!--FC0299E01341446C93A678644867E57A-->  
<AD_MODULE_ID><![CDATA[0]]></AD_MODULE_ID>
+<!--FC0299E01341446C93A678644867E57A--></AD_CALLOUT>
+
 <!--FF8080813141FBE30131420735D80013--><AD_CALLOUT>
 <!--FF8080813141FBE30131420735D80013-->  
<AD_CALLOUT_ID><![CDATA[FF8080813141FBE30131420735D80013]]></AD_CALLOUT_ID>
 <!--FF8080813141FBE30131420735D80013-->  
<AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
diff -r a6e993bb78a3 -r 8e3618710571 src-db/database/sourcedata/AD_COLUMN.xml
--- a/src-db/database/sourcedata/AD_COLUMN.xml  Fri Jul 04 08:11:23 2014 +0200
+++ b/src-db/database/sourcedata/AD_COLUMN.xml  Thu Jul 03 13:51:48 2014 +0200
@@ -53289,6 +53289,7 @@
 <!--3400-->  <ISSESSIONATTR><![CDATA[Y]]></ISSESSIONATTR>
 <!--3400-->  <ISSECONDARYKEY><![CDATA[N]]></ISSECONDARYKEY>
 <!--3400-->  <ISDESENCRYPTABLE><![CDATA[N]]></ISDESENCRYPTABLE>
+<!--3400-->  
<AD_CALLOUT_ID><![CDATA[B95E999B9C554E399A20B41D11657FDE]]></AD_CALLOUT_ID>
 <!--3400-->  <DEVELOPMENTSTATUS><![CDATA[RE]]></DEVELOPMENTSTATUS>
 <!--3400-->  <AD_MODULE_ID><![CDATA[0]]></AD_MODULE_ID>
 <!--3400-->  <POSITION><![CDATA[29]]></POSITION>
@@ -55362,6 +55363,7 @@
 <!--3501-->  <ISSESSIONATTR><![CDATA[N]]></ISSESSIONATTR>
 <!--3501-->  <ISSECONDARYKEY><![CDATA[N]]></ISSECONDARYKEY>
 <!--3501-->  <ISDESENCRYPTABLE><![CDATA[N]]></ISDESENCRYPTABLE>
+<!--3501-->  
<AD_CALLOUT_ID><![CDATA[FC0299E01341446C93A678644867E57A]]></AD_CALLOUT_ID>
 <!--3501-->  <DEVELOPMENTSTATUS><![CDATA[RE]]></DEVELOPMENTSTATUS>
 <!--3501-->  <AD_MODULE_ID><![CDATA[0]]></AD_MODULE_ID>
 <!--3501-->  <POSITION><![CDATA[26]]></POSITION>
diff -r a6e993bb78a3 -r 8e3618710571 
src-db/database/sourcedata/AD_MODEL_OBJECT.xml
--- a/src-db/database/sourcedata/AD_MODEL_OBJECT.xml    Fri Jul 04 08:11:23 
2014 +0200
+++ b/src-db/database/sourcedata/AD_MODEL_OBJECT.xml    Thu Jul 03 13:51:48 
2014 +0200
@@ -3137,6 +3137,18 @@
 <!--18DA249486964F65818793F51AF50058-->  
<LOADONSTARTUP><![CDATA[1]]></LOADONSTARTUP>
 <!--18DA249486964F65818793F51AF50058--></AD_MODEL_OBJECT>
 
+<!--1AECDB5E63714D1AABF3F122EE0CE32B--><AD_MODEL_OBJECT>
+<!--1AECDB5E63714D1AABF3F122EE0CE32B-->  
<AD_MODEL_OBJECT_ID><![CDATA[1AECDB5E63714D1AABF3F122EE0CE32B]]></AD_MODEL_OBJECT_ID>
+<!--1AECDB5E63714D1AABF3F122EE0CE32B-->  
<AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
+<!--1AECDB5E63714D1AABF3F122EE0CE32B-->  <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
+<!--1AECDB5E63714D1AABF3F122EE0CE32B-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
+<!--1AECDB5E63714D1AABF3F122EE0CE32B-->  <ACTION><![CDATA[C]]></ACTION>
+<!--1AECDB5E63714D1AABF3F122EE0CE32B-->  
<CLASSNAME><![CDATA[org.openbravo.erpCommon.ad_callouts.SE_Order_BPartnerLocation]]></CLASSNAME>
+<!--1AECDB5E63714D1AABF3F122EE0CE32B-->  <ISDEFAULT><![CDATA[Y]]></ISDEFAULT>
+<!--1AECDB5E63714D1AABF3F122EE0CE32B-->  
<AD_CALLOUT_ID><![CDATA[B95E999B9C554E399A20B41D11657FDE]]></AD_CALLOUT_ID>
+<!--1AECDB5E63714D1AABF3F122EE0CE32B-->  
<OBJECT_TYPE><![CDATA[S]]></OBJECT_TYPE>
+<!--1AECDB5E63714D1AABF3F122EE0CE32B--></AD_MODEL_OBJECT>
+
 <!--1B072001F3FC44F2B657EABA9DB630B0--><AD_MODEL_OBJECT>
 <!--1B072001F3FC44F2B657EABA9DB630B0-->  
<AD_MODEL_OBJECT_ID><![CDATA[1B072001F3FC44F2B657EABA9DB630B0]]></AD_MODEL_OBJECT_ID>
 <!--1B072001F3FC44F2B657EABA9DB630B0-->  
<AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
@@ -4425,6 +4437,18 @@
 <!--CA84D1D58D6D4C5495F9FDE7549336E4-->  
<OBJECT_TYPE><![CDATA[S]]></OBJECT_TYPE>
 <!--CA84D1D58D6D4C5495F9FDE7549336E4--></AD_MODEL_OBJECT>
 
+<!--CAAAA90670104BCD810F4B26F18E88B3--><AD_MODEL_OBJECT>
+<!--CAAAA90670104BCD810F4B26F18E88B3-->  
<AD_MODEL_OBJECT_ID><![CDATA[CAAAA90670104BCD810F4B26F18E88B3]]></AD_MODEL_OBJECT_ID>
+<!--CAAAA90670104BCD810F4B26F18E88B3-->  
<AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
+<!--CAAAA90670104BCD810F4B26F18E88B3-->  <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
+<!--CAAAA90670104BCD810F4B26F18E88B3-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
+<!--CAAAA90670104BCD810F4B26F18E88B3-->  <ACTION><![CDATA[C]]></ACTION>
+<!--CAAAA90670104BCD810F4B26F18E88B3-->  
<CLASSNAME><![CDATA[org.openbravo.erpCommon.ad_callouts.SE_Invoice_BPartnerLocation]]></CLASSNAME>
+<!--CAAAA90670104BCD810F4B26F18E88B3-->  <ISDEFAULT><![CDATA[Y]]></ISDEFAULT>
+<!--CAAAA90670104BCD810F4B26F18E88B3-->  
<AD_CALLOUT_ID><![CDATA[FC0299E01341446C93A678644867E57A]]></AD_CALLOUT_ID>
+<!--CAAAA90670104BCD810F4B26F18E88B3-->  
<OBJECT_TYPE><![CDATA[S]]></OBJECT_TYPE>
+<!--CAAAA90670104BCD810F4B26F18E88B3--></AD_MODEL_OBJECT>
+
 <!--CB0093CB5B33AA24E040007F010049A5--><AD_MODEL_OBJECT>
 <!--CB0093CB5B33AA24E040007F010049A5-->  
<AD_MODEL_OBJECT_ID><![CDATA[CB0093CB5B33AA24E040007F010049A5]]></AD_MODEL_OBJECT_ID>
 <!--CB0093CB5B33AA24E040007F010049A5-->  
<AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
diff -r a6e993bb78a3 -r 8e3618710571 
src-db/database/sourcedata/AD_MODEL_OBJECT_MAPPING.xml
--- a/src-db/database/sourcedata/AD_MODEL_OBJECT_MAPPING.xml    Fri Jul 04 
08:11:23 2014 +0200
+++ b/src-db/database/sourcedata/AD_MODEL_OBJECT_MAPPING.xml    Thu Jul 03 
13:51:48 2014 +0200
@@ -3460,6 +3460,16 @@
 <!--11D29682D4164031AE2912177808D8C3-->  <ISDEFAULT><![CDATA[Y]]></ISDEFAULT>
 <!--11D29682D4164031AE2912177808D8C3--></AD_MODEL_OBJECT_MAPPING>
 
+<!--12A6F34375294329B5A4D5ABBD37F92D--><AD_MODEL_OBJECT_MAPPING>
+<!--12A6F34375294329B5A4D5ABBD37F92D-->  
<AD_MODEL_OBJECT_MAPPING_ID><![CDATA[12A6F34375294329B5A4D5ABBD37F92D]]></AD_MODEL_OBJECT_MAPPING_ID>
+<!--12A6F34375294329B5A4D5ABBD37F92D-->  
<AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
+<!--12A6F34375294329B5A4D5ABBD37F92D-->  <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
+<!--12A6F34375294329B5A4D5ABBD37F92D-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
+<!--12A6F34375294329B5A4D5ABBD37F92D-->  
<AD_MODEL_OBJECT_ID><![CDATA[CAAAA90670104BCD810F4B26F18E88B3]]></AD_MODEL_OBJECT_ID>
+<!--12A6F34375294329B5A4D5ABBD37F92D-->  
<MAPPINGNAME><![CDATA[/ad_callouts/SE_Invoice_BPartnerLocation.html]]></MAPPINGNAME>
+<!--12A6F34375294329B5A4D5ABBD37F92D-->  <ISDEFAULT><![CDATA[Y]]></ISDEFAULT>
+<!--12A6F34375294329B5A4D5ABBD37F92D--></AD_MODEL_OBJECT_MAPPING>
+
 <!--14A924200D704BCC91E961DA19A53A0F--><AD_MODEL_OBJECT_MAPPING>
 <!--14A924200D704BCC91E961DA19A53A0F-->  
<AD_MODEL_OBJECT_MAPPING_ID><![CDATA[14A924200D704BCC91E961DA19A53A0F]]></AD_MODEL_OBJECT_MAPPING_ID>
 <!--14A924200D704BCC91E961DA19A53A0F-->  
<AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
@@ -4510,6 +4520,16 @@
 <!--ECFF3164398E4819B8C42E24423A0C28-->  <ISDEFAULT><![CDATA[Y]]></ISDEFAULT>
 <!--ECFF3164398E4819B8C42E24423A0C28--></AD_MODEL_OBJECT_MAPPING>
 
+<!--ED19E5BB486D49AE9DF8BA70B40429FE--><AD_MODEL_OBJECT_MAPPING>
+<!--ED19E5BB486D49AE9DF8BA70B40429FE-->  
<AD_MODEL_OBJECT_MAPPING_ID><![CDATA[ED19E5BB486D49AE9DF8BA70B40429FE]]></AD_MODEL_OBJECT_MAPPING_ID>
+<!--ED19E5BB486D49AE9DF8BA70B40429FE-->  
<AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
+<!--ED19E5BB486D49AE9DF8BA70B40429FE-->  <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
+<!--ED19E5BB486D49AE9DF8BA70B40429FE-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
+<!--ED19E5BB486D49AE9DF8BA70B40429FE-->  
<AD_MODEL_OBJECT_ID><![CDATA[1AECDB5E63714D1AABF3F122EE0CE32B]]></AD_MODEL_OBJECT_ID>
+<!--ED19E5BB486D49AE9DF8BA70B40429FE-->  
<MAPPINGNAME><![CDATA[/ad_callouts/SE_Order_BPartnerLocation.html]]></MAPPINGNAME>
+<!--ED19E5BB486D49AE9DF8BA70B40429FE-->  <ISDEFAULT><![CDATA[Y]]></ISDEFAULT>
+<!--ED19E5BB486D49AE9DF8BA70B40429FE--></AD_MODEL_OBJECT_MAPPING>
+
 <!--F0CEBAD8008D47149DE9E34EE519CC5A--><AD_MODEL_OBJECT_MAPPING>
 <!--F0CEBAD8008D47149DE9E34EE519CC5A-->  
<AD_MODEL_OBJECT_MAPPING_ID><![CDATA[F0CEBAD8008D47149DE9E34EE519CC5A]]></AD_MODEL_OBJECT_MAPPING_ID>
 <!--F0CEBAD8008D47149DE9E34EE519CC5A-->  
<AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
diff -r a6e993bb78a3 -r 8e3618710571 
src/org/openbravo/erpCommon/ad_callouts/SE_Invoice_BPartner.java
--- a/src/org/openbravo/erpCommon/ad_callouts/SE_Invoice_BPartner.java  Fri Jul 
04 08:11:23 2014 +0200
+++ b/src/org/openbravo/erpCommon/ad_callouts/SE_Invoice_BPartner.java  Thu Jul 
03 13:51:48 2014 +0200
@@ -27,7 +27,6 @@
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 
-import org.apache.commons.lang.StringUtils;
 import org.hibernate.criterion.Restrictions;
 import org.openbravo.advpaymentmngt.utility.FIN_Utility;
 import org.openbravo.base.secureApp.HttpSecureAppServlet;
@@ -37,7 +36,6 @@
 import org.openbravo.dal.service.OBDal;
 import org.openbravo.data.FieldProvider;
 import org.openbravo.erpCommon.businessUtility.BpartnerMiscData;
-import org.openbravo.erpCommon.utility.CashVATUtil;
 import org.openbravo.erpCommon.utility.ComboTableData;
 import org.openbravo.erpCommon.utility.OBMessageUtils;
 import org.openbravo.erpCommon.utility.Utility;
@@ -332,24 +330,6 @@
 
       resultado.append(", new Array('MESSAGE', \"" + message + "\")");
 
-      // Cash VAT
-      // Purchase flow only (from Business Partner OR organization) "double 
cash"
-      if (StringUtils.equals("N", strIsSOTrx)) {
-        final String bpCashVAT = 
CashVATUtil.getBusinessPartnerIsCashVAT(strBPartner);
-        resultado.append(", \nnew Array(\"");
-        resultado.append("inpiscashvat");
-        resultado.append("\", \"");
-        if (StringUtils.equals("Y", bpCashVAT)) {
-          resultado.append("Y");
-        } else {
-          final String orgCashVAT = 
CashVATUtil.getOrganizationIsCashVAT(strOrgId);
-          final String orgDoubleCash = 
CashVATUtil.getOrganizationIsDoubleCash(strOrgId);
-          resultado.append(StringUtils.equals("Y", orgCashVAT)
-              && StringUtils.equals("Y", orgDoubleCash) ? "Y" : "N");
-        }
-        resultado.append("\")");
-      }
-
       resultado.append(");");
     }
     xmlDocument.setParameter("array", resultado.toString());
diff -r a6e993bb78a3 -r 8e3618710571 
src/org/openbravo/erpCommon/ad_callouts/SE_Invoice_BPartnerLocation.java
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/src/org/openbravo/erpCommon/ad_callouts/SE_Invoice_BPartnerLocation.java  
Thu Jul 03 13:51:48 2014 +0200
@@ -0,0 +1,44 @@
+/*
+ *************************************************************************
+ * The contents of this file are subject to the Openbravo  Public  License
+ * Version  1.1  (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 
+ * 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) 2014 Openbravo SLU 
+ * All Rights Reserved. 
+ * Contributor(s):  ______________________________________.
+ ************************************************************************
+ */
+
+package org.openbravo.erpCommon.ad_callouts;
+
+import javax.servlet.ServletException;
+
+import org.openbravo.base.filter.IsIDFilter;
+import org.openbravo.base.filter.RequestFilter;
+import org.openbravo.base.filter.ValueListFilter;
+import org.openbravo.erpCommon.utility.CashVATUtil;
+
+public class SE_Invoice_BPartnerLocation extends SimpleCallout {
+  private static final long serialVersionUID = 1L;
+  private static final RequestFilter filterYesNo = new ValueListFilter("Y", 
"N");
+
+  @Override
+  protected void execute(CalloutInfo info) throws ServletException {
+    final String strinpissotrx = info.getStringParameter("inpissotrx", 
filterYesNo);
+    final String strOrgId = info.getStringParameter("inpadOrgId", 
IsIDFilter.instance);
+    final String strBPartnerId = info.getStringParameter("inpcBpartnerId", 
IsIDFilter.instance);
+    final String strBPartnerLocationId = 
info.getStringParameter("inpcBpartnerLocationId",
+        IsIDFilter.instance);
+
+    info.addResult("inpiscashvat",
+        CashVATUtil.isCashVAT(strinpissotrx, strOrgId, strBPartnerId, 
strBPartnerLocationId));
+  }
+}
diff -r a6e993bb78a3 -r 8e3618710571 
src/org/openbravo/erpCommon/ad_callouts/SE_Invoice_Organization.java
--- a/src/org/openbravo/erpCommon/ad_callouts/SE_Invoice_Organization.java      
Fri Jul 04 08:11:23 2014 +0200
+++ b/src/org/openbravo/erpCommon/ad_callouts/SE_Invoice_Organization.java      
Thu Jul 03 13:51:48 2014 +0200
@@ -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-2014 Openbravo SLU 
  * All Rights Reserved. 
  * Contributor(s):  ______________________________________.
  ************************************************************************
@@ -21,7 +21,6 @@
 
 import javax.servlet.ServletException;
 
-import org.apache.commons.lang.StringUtils;
 import org.openbravo.base.filter.IsIDFilter;
 import org.openbravo.base.filter.RequestFilter;
 import org.openbravo.base.filter.ValueListFilter;
@@ -34,16 +33,12 @@
   @Override
   protected void execute(CalloutInfo info) throws ServletException {
     final String strinpissotrx = info.getStringParameter("inpissotrx", 
filterYesNo);
+    final String strOrgId = info.getStringParameter("inpadOrgId", 
IsIDFilter.instance);
+    final String strBPartnerId = info.getStringParameter("inpcBpartnerId", 
IsIDFilter.instance);
+    final String strBPartnerLocationId = 
info.getStringParameter("inpcBpartnerLocationId",
+        IsIDFilter.instance);
 

------------------------------------------------------------------------------
Open source business process management suite built on Java and Eclipse
Turn processes into business applications with Bonita BPM Community Edition
Quickly connect people, data, and systems into organized workflows
Winner of BOSSIE, CODIE, OW2 and Gartner awards
http://p.sf.net/sfu/Bonitasoft
_______________________________________________
Openbravo-commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/openbravo-commits

Reply via email to