details:   /erp/devel/pi/rev/9c69b2d3bb13
changeset: 7412:9c69b2d3bb13
user:      Mikel Irurita <mikel.irurita <at> openbravo.com>
date:      Fri May 21 15:56:56 2010 +0200
summary:   Payment Method -> Financial Account callout

diffstat:

 src-db/database/sourcedata/AD_CALLOUT.xml                                |  10 
+
 src-db/database/sourcedata/AD_COLUMN.xml                                 |   4 
+
 src-db/database/sourcedata/AD_MODEL_OBJECT.xml                           |  12 
+
 src-db/database/sourcedata/AD_MODEL_OBJECT_MAPPING.xml                   |  10 
+
 src/org/openbravo/erpCommon/ad_callouts/SE_PaymentMethod_FinAccount.java |  77 
++++++++++
 5 files changed, 113 insertions(+), 0 deletions(-)

diffs (178 lines):

diff -r 16ddc9180940 -r 9c69b2d3bb13 src-db/database/sourcedata/AD_CALLOUT.xml
--- a/src-db/database/sourcedata/AD_CALLOUT.xml Fri May 21 10:04:20 2010 +0200
+++ b/src-db/database/sourcedata/AD_CALLOUT.xml Fri May 21 15:56:56 2010 +0200
@@ -776,6 +776,16 @@
 <!--20FE1F365075451E95AE901650183CC7-->  
<AD_MODULE_ID><![CDATA[0]]></AD_MODULE_ID>
 <!--20FE1F365075451E95AE901650183CC7--></AD_CALLOUT>
 
+<!--3262C8E4D91F40339AD1EF086C00F1E3--><AD_CALLOUT>
+<!--3262C8E4D91F40339AD1EF086C00F1E3-->  
<AD_CALLOUT_ID><![CDATA[3262C8E4D91F40339AD1EF086C00F1E3]]></AD_CALLOUT_ID>
+<!--3262C8E4D91F40339AD1EF086C00F1E3-->  
<AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
+<!--3262C8E4D91F40339AD1EF086C00F1E3-->  <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
+<!--3262C8E4D91F40339AD1EF086C00F1E3-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
+<!--3262C8E4D91F40339AD1EF086C00F1E3-->  
<NAME><![CDATA[SE_PaymentMethod_FinAccount]]></NAME>
+<!--3262C8E4D91F40339AD1EF086C00F1E3-->  <DESCRIPTION><![CDATA[This callout 
filters the Financial Accounts for selected Payment Method.]]></DESCRIPTION>
+<!--3262C8E4D91F40339AD1EF086C00F1E3-->  
<AD_MODULE_ID><![CDATA[0]]></AD_MODULE_ID>
+<!--3262C8E4D91F40339AD1EF086C00F1E3--></AD_CALLOUT>
+
 <!--3585710F23F244D9B179A28D18242583--><AD_CALLOUT>
 <!--3585710F23F244D9B179A28D18242583-->  
<AD_CALLOUT_ID><![CDATA[3585710F23F244D9B179A28D18242583]]></AD_CALLOUT_ID>
 <!--3585710F23F244D9B179A28D18242583-->  
<AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
diff -r 16ddc9180940 -r 9c69b2d3bb13 src-db/database/sourcedata/AD_COLUMN.xml
--- a/src-db/database/sourcedata/AD_COLUMN.xml  Fri May 21 10:04:20 2010 +0200
+++ b/src-db/database/sourcedata/AD_COLUMN.xml  Fri May 21 15:56:56 2010 +0200
@@ -290825,6 +290825,7 @@
 <!--7DC34559B3F1B45BE040007F0100784A-->  
<ISSESSIONATTR><![CDATA[N]]></ISSESSIONATTR>
 <!--7DC34559B3F1B45BE040007F0100784A-->  
<ISSECONDARYKEY><![CDATA[N]]></ISSECONDARYKEY>
 <!--7DC34559B3F1B45BE040007F0100784A-->  
<ISDESENCRYPTABLE><![CDATA[N]]></ISDESENCRYPTABLE>
+<!--7DC34559B3F1B45BE040007F0100784A-->  
<AD_CALLOUT_ID><![CDATA[3262C8E4D91F40339AD1EF086C00F1E3]]></AD_CALLOUT_ID>
 <!--7DC34559B3F1B45BE040007F0100784A-->  
<DEVELOPMENTSTATUS><![CDATA[RE]]></DEVELOPMENTSTATUS>
 <!--7DC34559B3F1B45BE040007F0100784A-->  
<AD_MODULE_ID><![CDATA[0]]></AD_MODULE_ID>
 <!--7DC34559B3F1B45BE040007F0100784A-->  <POSITION><![CDATA[15]]></POSITION>
@@ -291020,6 +291021,7 @@
 <!--7DC34559B410B45BE040007F0100784A-->  
<ISSESSIONATTR><![CDATA[N]]></ISSESSIONATTR>
 <!--7DC34559B410B45BE040007F0100784A-->  
<ISSECONDARYKEY><![CDATA[N]]></ISSECONDARYKEY>
 <!--7DC34559B410B45BE040007F0100784A-->  
<ISDESENCRYPTABLE><![CDATA[N]]></ISDESENCRYPTABLE>
+<!--7DC34559B410B45BE040007F0100784A-->  
<AD_CALLOUT_ID><![CDATA[3262C8E4D91F40339AD1EF086C00F1E3]]></AD_CALLOUT_ID>
 <!--7DC34559B410B45BE040007F0100784A-->  
<DEVELOPMENTSTATUS><![CDATA[RE]]></DEVELOPMENTSTATUS>
 <!--7DC34559B410B45BE040007F0100784A-->  
<AD_MODULE_ID><![CDATA[0]]></AD_MODULE_ID>
 <!--7DC34559B410B45BE040007F0100784A-->  <POSITION><![CDATA[17]]></POSITION>
@@ -299760,6 +299762,7 @@
 <!--828EE0AE802D5FA1E040007F010067C7-->  
<ISSESSIONATTR><![CDATA[N]]></ISSESSIONATTR>
 <!--828EE0AE802D5FA1E040007F010067C7-->  
<ISSECONDARYKEY><![CDATA[N]]></ISSECONDARYKEY>
 <!--828EE0AE802D5FA1E040007F010067C7-->  
<ISDESENCRYPTABLE><![CDATA[N]]></ISDESENCRYPTABLE>
+<!--828EE0AE802D5FA1E040007F010067C7-->  
<AD_CALLOUT_ID><![CDATA[3262C8E4D91F40339AD1EF086C00F1E3]]></AD_CALLOUT_ID>
 <!--828EE0AE802D5FA1E040007F010067C7-->  
<DEVELOPMENTSTATUS><![CDATA[RE]]></DEVELOPMENTSTATUS>
 <!--828EE0AE802D5FA1E040007F010067C7-->  
<AD_MODULE_ID><![CDATA[0]]></AD_MODULE_ID>
 <!--828EE0AE802D5FA1E040007F010067C7-->  <POSITION><![CDATA[78]]></POSITION>
@@ -299792,6 +299795,7 @@
 <!--828EE0AE802E5FA1E040007F010067C7-->  
<ISSESSIONATTR><![CDATA[N]]></ISSESSIONATTR>
 <!--828EE0AE802E5FA1E040007F010067C7-->  
<ISSECONDARYKEY><![CDATA[N]]></ISSECONDARYKEY>
 <!--828EE0AE802E5FA1E040007F010067C7-->  
<ISDESENCRYPTABLE><![CDATA[N]]></ISDESENCRYPTABLE>
+<!--828EE0AE802E5FA1E040007F010067C7-->  
<AD_CALLOUT_ID><![CDATA[3262C8E4D91F40339AD1EF086C00F1E3]]></AD_CALLOUT_ID>
 <!--828EE0AE802E5FA1E040007F010067C7-->  
<DEVELOPMENTSTATUS><![CDATA[RE]]></DEVELOPMENTSTATUS>
 <!--828EE0AE802E5FA1E040007F010067C7-->  
<AD_MODULE_ID><![CDATA[0]]></AD_MODULE_ID>
 <!--828EE0AE802E5FA1E040007F010067C7-->  <POSITION><![CDATA[79]]></POSITION>
diff -r 16ddc9180940 -r 9c69b2d3bb13 
src-db/database/sourcedata/AD_MODEL_OBJECT.xml
--- a/src-db/database/sourcedata/AD_MODEL_OBJECT.xml    Fri May 21 10:04:20 
2010 +0200
+++ b/src-db/database/sourcedata/AD_MODEL_OBJECT.xml    Fri May 21 15:56:56 
2010 +0200
@@ -15587,6 +15587,18 @@
 <!--3F874173A01B43C0ACEA29111CE98ECE-->  <SEQNO><![CDATA[40]]></SEQNO>
 <!--3F874173A01B43C0ACEA29111CE98ECE--></AD_MODEL_OBJECT>
 
+<!--405CB5D0FE124E4BBB9A6DC13A9F28EA--><AD_MODEL_OBJECT>
+<!--405CB5D0FE124E4BBB9A6DC13A9F28EA-->  
<AD_MODEL_OBJECT_ID><![CDATA[405CB5D0FE124E4BBB9A6DC13A9F28EA]]></AD_MODEL_OBJECT_ID>
+<!--405CB5D0FE124E4BBB9A6DC13A9F28EA-->  
<AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
+<!--405CB5D0FE124E4BBB9A6DC13A9F28EA-->  <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
+<!--405CB5D0FE124E4BBB9A6DC13A9F28EA-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
+<!--405CB5D0FE124E4BBB9A6DC13A9F28EA-->  <ACTION><![CDATA[C]]></ACTION>
+<!--405CB5D0FE124E4BBB9A6DC13A9F28EA-->  
<CLASSNAME><![CDATA[org.openbravo.erpCommon.ad_callouts.SE_PaymentMethod_FinAccount]]></CLASSNAME>
+<!--405CB5D0FE124E4BBB9A6DC13A9F28EA-->  <ISDEFAULT><![CDATA[Y]]></ISDEFAULT>
+<!--405CB5D0FE124E4BBB9A6DC13A9F28EA-->  
<AD_CALLOUT_ID><![CDATA[3262C8E4D91F40339AD1EF086C00F1E3]]></AD_CALLOUT_ID>
+<!--405CB5D0FE124E4BBB9A6DC13A9F28EA-->  
<OBJECT_TYPE><![CDATA[S]]></OBJECT_TYPE>
+<!--405CB5D0FE124E4BBB9A6DC13A9F28EA--></AD_MODEL_OBJECT>
+
 <!--40C9C50E51CF446C83AF1F4562D93FD3--><AD_MODEL_OBJECT>
 <!--40C9C50E51CF446C83AF1F4562D93FD3-->  
<AD_MODEL_OBJECT_ID><![CDATA[40C9C50E51CF446C83AF1F4562D93FD3]]></AD_MODEL_OBJECT_ID>
 <!--40C9C50E51CF446C83AF1F4562D93FD3-->  
<AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
diff -r 16ddc9180940 -r 9c69b2d3bb13 
src-db/database/sourcedata/AD_MODEL_OBJECT_MAPPING.xml
--- a/src-db/database/sourcedata/AD_MODEL_OBJECT_MAPPING.xml    Fri May 21 
10:04:20 2010 +0200
+++ b/src-db/database/sourcedata/AD_MODEL_OBJECT_MAPPING.xml    Fri May 21 
15:56:56 2010 +0200
@@ -26250,6 +26250,16 @@
 <!--DF6BD3A8D6814A42A31B029036E3CAD0-->  <ISDEFAULT><![CDATA[Y]]></ISDEFAULT>
 <!--DF6BD3A8D6814A42A31B029036E3CAD0--></AD_MODEL_OBJECT_MAPPING>
 
+<!--E19F9A46454B4FCAA900720764E10CF7--><AD_MODEL_OBJECT_MAPPING>
+<!--E19F9A46454B4FCAA900720764E10CF7-->  
<AD_MODEL_OBJECT_MAPPING_ID><![CDATA[E19F9A46454B4FCAA900720764E10CF7]]></AD_MODEL_OBJECT_MAPPING_ID>
+<!--E19F9A46454B4FCAA900720764E10CF7-->  
<AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
+<!--E19F9A46454B4FCAA900720764E10CF7-->  <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
+<!--E19F9A46454B4FCAA900720764E10CF7-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
+<!--E19F9A46454B4FCAA900720764E10CF7-->  
<AD_MODEL_OBJECT_ID><![CDATA[405CB5D0FE124E4BBB9A6DC13A9F28EA]]></AD_MODEL_OBJECT_ID>
+<!--E19F9A46454B4FCAA900720764E10CF7-->  
<MAPPINGNAME><![CDATA[/ad_callouts/SE_PaymentMethod_FinAccount.html]]></MAPPINGNAME>
+<!--E19F9A46454B4FCAA900720764E10CF7-->  <ISDEFAULT><![CDATA[Y]]></ISDEFAULT>
+<!--E19F9A46454B4FCAA900720764E10CF7--></AD_MODEL_OBJECT_MAPPING>
+
 <!--E1A4739BE84F4651830C6C78A48A7757--><AD_MODEL_OBJECT_MAPPING>
 <!--E1A4739BE84F4651830C6C78A48A7757-->  
<AD_MODEL_OBJECT_MAPPING_ID><![CDATA[E1A4739BE84F4651830C6C78A48A7757]]></AD_MODEL_OBJECT_MAPPING_ID>
 <!--E1A4739BE84F4651830C6C78A48A7757-->  
<AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
diff -r 16ddc9180940 -r 9c69b2d3bb13 
src/org/openbravo/erpCommon/ad_callouts/SE_PaymentMethod_FinAccount.java
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/src/org/openbravo/erpCommon/ad_callouts/SE_PaymentMethod_FinAccount.java  
Fri May 21 15:56:56 2010 +0200
@@ -0,0 +1,77 @@
+/*
+ *************************************************************************
+ * The contents of this file are subject to the Openbravo  Public  License
+ * 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
+ * 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) 2010 Openbravo SLU
+ * All Rights Reserved.
+ * Contributor(s):  ______________________________________.
+ ************************************************************************
+ */
+package org.openbravo.erpCommon.ad_callouts;
+
+import javax.servlet.ServletException;
+
+import org.hibernate.criterion.Expression;
+import org.openbravo.base.filter.IsIDFilter;
+import org.openbravo.dal.core.OBContext;
+import org.openbravo.dal.service.OBCriteria;
+import org.openbravo.dal.service.OBDal;
+import org.openbravo.model.financialmgmt.payment.FIN_FinancialAccount;
+import org.openbravo.model.financialmgmt.payment.FIN_PaymentMethod;
+import org.openbravo.model.financialmgmt.payment.FinAccPaymentMethod;
+
+public class SE_PaymentMethod_FinAccount extends SimpleCallout {
+
+  private static final long serialVersionUID = 1L;
+
+  @Override
+  protected void execute(CalloutInfo info) throws ServletException {
+
+    String srtPaymentMethodId = 
info.getStringParameter("inpfinPaymentmethodId",
+        IsIDFilter.instance);
+    String srtPOPaymentMethodId = 
info.getStringParameter("inppoPaymentmethodId",
+        IsIDFilter.instance);
+
+    String tabId = info.getTabId();
+    boolean isVendorTab = "224".equals(tabId);
+    String srtOrgId = info.getStringParameter("inpadOrgId", 
IsIDFilter.instance);
+
+    FIN_PaymentMethod paymentMethod = 
OBDal.getInstance().get(FIN_PaymentMethod.class,
+        isVendorTab ? srtPOPaymentMethodId : srtPaymentMethodId);
+
+    info.addSelect(isVendorTab ? "inppoFinancialAccountId" : 
"inpfinFinancialAccountId");
+
+    // No Payment Method selected
+    if (srtPaymentMethodId.isEmpty() && srtPOPaymentMethodId.isEmpty()) {
+      OBCriteria<FIN_FinancialAccount> obc = 
OBDal.getInstance().createCriteria(
+          FIN_FinancialAccount.class);
+      obc.add(Expression.in("organization.id", OBContext.getOBContext()
+          .getOrganizationStructureProvider().getNaturalTree(srtOrgId)));
+      obc.setFilterOnReadableOrganization(false);
+      for (FIN_FinancialAccount acc : obc.list()) {
+        info.addSelectResult(acc.getId(), acc.getIdentifier());
+      }
+
+    } else {
+      OBCriteria<FinAccPaymentMethod> obc = OBDal.getInstance().createCriteria(
+          FinAccPaymentMethod.class);
+      obc.add(Expression.eq(FinAccPaymentMethod.PROPERTY_PAYMENTMETHOD, 
paymentMethod));
+
+      for (FinAccPaymentMethod accPm : obc.list()) {
+        info.addSelectResult(accPm.getAccount().getId(), 
accPm.getAccount().getIdentifier());
+      }
+    }
+
+    info.endSelect();
+
+  }
+}

------------------------------------------------------------------------------

_______________________________________________
Openbravo-commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/openbravo-commits

Reply via email to