details: https://code.openbravo.com/erp/devel/pi/rev/bd84b9b0b7a3 changeset: 17635:bd84b9b0b7a3 user: Javier Etxarri <javier.echarri <at> openbravo.com> date: Thu Aug 09 10:28:06 2012 +0200 summary: Fixes issue 21331: The default tax category is not selected when creating a product or a tax rate
diffstat: src-db/database/sourcedata/AD_CALLOUT.xml | 9 + src-db/database/sourcedata/AD_COLUMN.xml | 2 + 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/SL_TaxCategory_Org.java | 71 ++++++++++ 5 files changed, 104 insertions(+), 0 deletions(-) diffs (155 lines): diff -r 55b1b3b28000 -r bd84b9b0b7a3 src-db/database/sourcedata/AD_CALLOUT.xml --- a/src-db/database/sourcedata/AD_CALLOUT.xml Wed Aug 08 12:12:27 2012 +0200 +++ b/src-db/database/sourcedata/AD_CALLOUT.xml Thu Aug 09 10:28:06 2012 +0200 @@ -741,6 +741,15 @@ <!--20FE1F365075451E95AE901650183CC7--> <AD_MODULE_ID><![CDATA[0]]></AD_MODULE_ID> <!--20FE1F365075451E95AE901650183CC7--></AD_CALLOUT> +<!--2262292E3D6248DBBEA57EC5FD78A09C--><AD_CALLOUT> +<!--2262292E3D6248DBBEA57EC5FD78A09C--> <AD_CALLOUT_ID><![CDATA[2262292E3D6248DBBEA57EC5FD78A09C]]></AD_CALLOUT_ID> +<!--2262292E3D6248DBBEA57EC5FD78A09C--> <AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID> +<!--2262292E3D6248DBBEA57EC5FD78A09C--> <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID> +<!--2262292E3D6248DBBEA57EC5FD78A09C--> <ISACTIVE><![CDATA[Y]]></ISACTIVE> +<!--2262292E3D6248DBBEA57EC5FD78A09C--> <NAME><![CDATA[SL_TaxCategory_Org]]></NAME> +<!--2262292E3D6248DBBEA57EC5FD78A09C--> <AD_MODULE_ID><![CDATA[0]]></AD_MODULE_ID> +<!--2262292E3D6248DBBEA57EC5FD78A09C--></AD_CALLOUT> + <!--2AAFD970BDF2404CA9D645796A998CA2--><AD_CALLOUT> <!--2AAFD970BDF2404CA9D645796A998CA2--> <AD_CALLOUT_ID><![CDATA[2AAFD970BDF2404CA9D645796A998CA2]]></AD_CALLOUT_ID> <!--2AAFD970BDF2404CA9D645796A998CA2--> <AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID> diff -r 55b1b3b28000 -r bd84b9b0b7a3 src-db/database/sourcedata/AD_COLUMN.xml --- a/src-db/database/sourcedata/AD_COLUMN.xml Wed Aug 08 12:12:27 2012 +0200 +++ b/src-db/database/sourcedata/AD_COLUMN.xml Thu Aug 09 10:28:06 2012 +0200 @@ -20469,6 +20469,7 @@ <!--1404--> <ISSESSIONATTR><![CDATA[Y]]></ISSESSIONATTR> <!--1404--> <ISSECONDARYKEY><![CDATA[N]]></ISSECONDARYKEY> <!--1404--> <ISDESENCRYPTABLE><![CDATA[N]]></ISDESENCRYPTABLE> +<!--1404--> <AD_CALLOUT_ID><![CDATA[2262292E3D6248DBBEA57EC5FD78A09C]]></AD_CALLOUT_ID> <!--1404--> <DEVELOPMENTSTATUS><![CDATA[RE]]></DEVELOPMENTSTATUS> <!--1404--> <AD_MODULE_ID><![CDATA[0]]></AD_MODULE_ID> <!--1404--> <POSITION><![CDATA[3]]></POSITION> @@ -31552,6 +31553,7 @@ <!--2242--> <ISSESSIONATTR><![CDATA[Y]]></ISSESSIONATTR> <!--2242--> <ISSECONDARYKEY><![CDATA[N]]></ISSECONDARYKEY> <!--2242--> <ISDESENCRYPTABLE><![CDATA[N]]></ISDESENCRYPTABLE> +<!--2242--> <AD_CALLOUT_ID><![CDATA[2262292E3D6248DBBEA57EC5FD78A09C]]></AD_CALLOUT_ID> <!--2242--> <DEVELOPMENTSTATUS><![CDATA[RE]]></DEVELOPMENTSTATUS> <!--2242--> <AD_MODULE_ID><![CDATA[0]]></AD_MODULE_ID> <!--2242--> <POSITION><![CDATA[3]]></POSITION> diff -r 55b1b3b28000 -r bd84b9b0b7a3 src-db/database/sourcedata/AD_MODEL_OBJECT.xml --- a/src-db/database/sourcedata/AD_MODEL_OBJECT.xml Wed Aug 08 12:12:27 2012 +0200 +++ b/src-db/database/sourcedata/AD_MODEL_OBJECT.xml Thu Aug 09 10:28:06 2012 +0200 @@ -4136,6 +4136,18 @@ <!--C474EE2324390169E040007F010021B2--> <OBJECT_TYPE><![CDATA[S]]></OBJECT_TYPE> <!--C474EE2324390169E040007F010021B2--></AD_MODEL_OBJECT> +<!--C5319374C7F04199A0140FCB2C89FB98--><AD_MODEL_OBJECT> +<!--C5319374C7F04199A0140FCB2C89FB98--> <AD_MODEL_OBJECT_ID><![CDATA[C5319374C7F04199A0140FCB2C89FB98]]></AD_MODEL_OBJECT_ID> +<!--C5319374C7F04199A0140FCB2C89FB98--> <AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID> +<!--C5319374C7F04199A0140FCB2C89FB98--> <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID> +<!--C5319374C7F04199A0140FCB2C89FB98--> <ISACTIVE><![CDATA[Y]]></ISACTIVE> +<!--C5319374C7F04199A0140FCB2C89FB98--> <ACTION><![CDATA[C]]></ACTION> +<!--C5319374C7F04199A0140FCB2C89FB98--> <CLASSNAME><![CDATA[org.openbravo.erpCommon.ad_callouts.SL_TaxCategory_Org]]></CLASSNAME> +<!--C5319374C7F04199A0140FCB2C89FB98--> <ISDEFAULT><![CDATA[Y]]></ISDEFAULT> +<!--C5319374C7F04199A0140FCB2C89FB98--> <AD_CALLOUT_ID><![CDATA[2262292E3D6248DBBEA57EC5FD78A09C]]></AD_CALLOUT_ID> +<!--C5319374C7F04199A0140FCB2C89FB98--> <OBJECT_TYPE><![CDATA[S]]></OBJECT_TYPE> +<!--C5319374C7F04199A0140FCB2C89FB98--></AD_MODEL_OBJECT> + <!--C6459330D866458FABB0A62877F8C948--><AD_MODEL_OBJECT> <!--C6459330D866458FABB0A62877F8C948--> <AD_MODEL_OBJECT_ID><![CDATA[C6459330D866458FABB0A62877F8C948]]></AD_MODEL_OBJECT_ID> <!--C6459330D866458FABB0A62877F8C948--> <AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID> diff -r 55b1b3b28000 -r bd84b9b0b7a3 src-db/database/sourcedata/AD_MODEL_OBJECT_MAPPING.xml --- a/src-db/database/sourcedata/AD_MODEL_OBJECT_MAPPING.xml Wed Aug 08 12:12:27 2012 +0200 +++ b/src-db/database/sourcedata/AD_MODEL_OBJECT_MAPPING.xml Thu Aug 09 10:28:06 2012 +0200 @@ -4040,6 +4040,16 @@ <!--7E8D14B5264C3E6CE040007F01010D94--> <ISDEFAULT><![CDATA[Y]]></ISDEFAULT> <!--7E8D14B5264C3E6CE040007F01010D94--></AD_MODEL_OBJECT_MAPPING> +<!--811F1451DE6C44CE9D09A2F217C4BCD2--><AD_MODEL_OBJECT_MAPPING> +<!--811F1451DE6C44CE9D09A2F217C4BCD2--> <AD_MODEL_OBJECT_MAPPING_ID><![CDATA[811F1451DE6C44CE9D09A2F217C4BCD2]]></AD_MODEL_OBJECT_MAPPING_ID> +<!--811F1451DE6C44CE9D09A2F217C4BCD2--> <AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID> +<!--811F1451DE6C44CE9D09A2F217C4BCD2--> <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID> +<!--811F1451DE6C44CE9D09A2F217C4BCD2--> <ISACTIVE><![CDATA[Y]]></ISACTIVE> +<!--811F1451DE6C44CE9D09A2F217C4BCD2--> <AD_MODEL_OBJECT_ID><![CDATA[C5319374C7F04199A0140FCB2C89FB98]]></AD_MODEL_OBJECT_ID> +<!--811F1451DE6C44CE9D09A2F217C4BCD2--> <MAPPINGNAME><![CDATA[/ad_callouts/SL_TaxCategory_Org.html]]></MAPPINGNAME> +<!--811F1451DE6C44CE9D09A2F217C4BCD2--> <ISDEFAULT><![CDATA[Y]]></ISDEFAULT> +<!--811F1451DE6C44CE9D09A2F217C4BCD2--></AD_MODEL_OBJECT_MAPPING> + <!--81311EAEE5834B99B7DDD85CCA4EB6C9--><AD_MODEL_OBJECT_MAPPING> <!--81311EAEE5834B99B7DDD85CCA4EB6C9--> <AD_MODEL_OBJECT_MAPPING_ID><![CDATA[81311EAEE5834B99B7DDD85CCA4EB6C9]]></AD_MODEL_OBJECT_MAPPING_ID> <!--81311EAEE5834B99B7DDD85CCA4EB6C9--> <AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID> diff -r 55b1b3b28000 -r bd84b9b0b7a3 src/org/openbravo/erpCommon/ad_callouts/SL_TaxCategory_Org.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/org/openbravo/erpCommon/ad_callouts/SL_TaxCategory_Org.java Thu Aug 09 10:28:06 2012 +0200 @@ -0,0 +1,71 @@ +/* + ************************************************************************* + * 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) 2012 Openbravo SLU + * All Rights Reserved. + * Contributor(s): ______________________________________. + ************************************************************************ + */ +package org.openbravo.erpCommon.ad_callouts; + +import java.util.List; + +import javax.servlet.ServletException; + +import org.hibernate.criterion.Restrictions; +import org.openbravo.dal.service.OBCriteria; +import org.openbravo.dal.service.OBDal; +import org.openbravo.dal.service.OBQuery; +import org.openbravo.model.ad.utility.TreeNode; +import org.openbravo.model.common.enterprise.Organization; +import org.openbravo.model.financialmgmt.tax.TaxCategory; + +public class SL_TaxCategory_Org extends SimpleCallout { + + private static final long serialVersionUID = 1L; + + @Override + protected void execute(CalloutInfo info) throws ServletException { + + final String strOrgId = info.getStringParameter("inpadOrgId", null); + + Organization organization = OBDal.getInstance().get(Organization.class, strOrgId); + String taxCategoryId = ""; + String parentOrgId = ""; + String whereClause = "as tn where tn.node = '" + organization.getId() + + "' and tn.client.id = '" + organization.getClient().getId() + "'"; + + while ("".equals(taxCategoryId)) { + whereClause = "as tn where tn.node = '" + organization.getId() + "' and tn.client.id = '" + + organization.getClient().getId() + "'"; + OBCriteria<TaxCategory> taxCategory = OBDal.getInstance().createCriteria(TaxCategory.class); + taxCategory.add(Restrictions.eq(TaxCategory.PROPERTY_ORGANIZATION, organization)); + taxCategory.add(Restrictions.eq(TaxCategory.PROPERTY_DEFAULT, true)); + taxCategory.setMaxResults(1); + List<TaxCategory> listTaxCategory = taxCategory.list(); + TaxCategory taxCategoryObject = (!listTaxCategory.isEmpty() ? listTaxCategory.get(0) : null); + if (taxCategoryObject == null && !"0".equals(organization.getId())) { + OBQuery<TreeNode> query = OBDal.getInstance().createQuery(TreeNode.class, whereClause); + query.setMaxResult(1); + List<TreeNode> listTreeNode = query.list(); + TreeNode treeNode = listTreeNode.get(0); + parentOrgId = treeNode.getReportSet(); + organization = OBDal.getInstance().get(Organization.class, parentOrgId); + } else { + taxCategoryId = taxCategoryObject != null ? taxCategoryObject.getId() : ""; + break; + } + } + info.addResult("inpcTaxcategoryId", taxCategoryId); + } +} ------------------------------------------------------------------------------ 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
