details: https://code.openbravo.com/erp/devel/pi/rev/08ae440f4c71 changeset: 18281:08ae440f4c71 user: Sandra Huguet <sandra.huguet <at> openbravo.com> date: Wed Oct 24 16:58:47 2012 +0200 summary: Fixed issue 22027 Renaming accounting schema to general ledger
details: https://code.openbravo.com/erp/devel/pi/rev/804841e22642 changeset: 18282:804841e22642 user: Sandra Huguet <sandra.huguet <at> openbravo.com> date: Thu Oct 25 09:57:52 2012 +0200 summary: merge diffstat: modules/org.openbravo.advpaymentmngt/src-db/database/sourcedata/AD_COLUMN.xml | 8 +- modules/org.openbravo.advpaymentmngt/src-db/database/sourcedata/AD_FIELD.xml | 18 +- modules/org.openbravo.client.application/src/org/openbravo/client/application/event/GeneralLedgerOrganizationHandler.java | 101 +++ modules/org.openbravo.client.application/web/org.openbravo.client.application/js/form/formitem/ob-formitem-fk-filter.js | 16 + modules/org.openbravo.service.json/src/org/openbravo/service/json/DefaultJsonDataService.java | 26 +- src-db/database/model/tables/AD_ORG.xml | 4 + src-db/database/sourcedata/AD_AUXILIARINPUT.xml | 22 + src-db/database/sourcedata/AD_COLUMN.xml | 183 ++++-- src-db/database/sourcedata/AD_ELEMENT.xml | 48 +- src-db/database/sourcedata/AD_FIELD.xml | 255 +++++---- src-db/database/sourcedata/AD_MENU.xml | 4 +- src-db/database/sourcedata/AD_MESSAGE.xml | 11 + src-db/database/sourcedata/AD_PROCESS_PARA.xml | 42 +- src-db/database/sourcedata/AD_TAB.xml | 20 +- src-db/database/sourcedata/AD_TEXTINTERFACES.xml | 66 -- src-db/database/sourcedata/AD_WINDOW.xml | 6 +- src-util/modulescript/build/classes/org/openbravo/modulescript/InitializeGeneralLedgerOrganization.class | 0 src-util/modulescript/build/classes/org/openbravo/modulescript/InitializeGeneralLedgerOrganizationData.class | 0 src-util/modulescript/src/org/openbravo/modulescript/InitializeGeneralLedgerOrganization.java | 42 + src-util/modulescript/src/org/openbravo/modulescript/InitializeGeneralLedgerOrganization_data.xsql | 52 ++ src/org/openbravo/dal/core/DalMappingGenerator.java | 9 +- src/org/openbravo/erpCommon/ad_callouts/SE_Period_Control.java | 4 + src/org/openbravo/erpCommon/ad_callouts/SE_Period_Control_data.xsql | 22 + src/org/openbravo/erpCommon/ad_reports/GeneralAccountingReports.html | 2 +- src/org/openbravo/erpCommon/ad_reports/ReportBudgetGenerateExcel.html | 2 +- src/org/openbravo/erpCommon/ad_reports/ReportGeneralLedger.html | 2 +- src/org/openbravo/erpCommon/ad_reports/ReportGeneralLedgerJournal.html | 2 +- src/org/openbravo/erpCommon/ad_reports/ReportGeneralLedgerJournal.java | 2 +- src/org/openbravo/erpCommon/ad_reports/ReportTrialBalance.html | 2 +- src/org/openbravo/erpCommon/businessUtility/COAUtility.java | 71 +- src/org/openbravo/erpCommon/info/AccountElementValue.html | 2 +- 31 files changed, 677 insertions(+), 367 deletions(-) diffs (truncated from 2138 to 300 lines): diff -r ab39dd401cd5 -r 804841e22642 modules/org.openbravo.advpaymentmngt/src-db/database/sourcedata/AD_COLUMN.xml --- a/modules/org.openbravo.advpaymentmngt/src-db/database/sourcedata/AD_COLUMN.xml Wed Oct 24 14:02:55 2012 +0200 +++ b/modules/org.openbravo.advpaymentmngt/src-db/database/sourcedata/AD_COLUMN.xml Thu Oct 25 09:57:52 2012 +0200 @@ -1342,8 +1342,8 @@ <!--3F41C500ECEB40D09089FEA4C3793F29--> <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID> <!--3F41C500ECEB40D09089FEA4C3793F29--> <ISACTIVE><![CDATA[Y]]></ISACTIVE> <!--3F41C500ECEB40D09089FEA4C3793F29--> <NAME><![CDATA[Accounting Schema]]></NAME> -<!--3F41C500ECEB40D09089FEA4C3793F29--> <DESCRIPTION><![CDATA[The structure used in accounting including costing methods, currencies, and the calendar.]]></DESCRIPTION> -<!--3F41C500ECEB40D09089FEA4C3793F29--> <HELP><![CDATA[An Accounting Schema defines the rules used in accounting such as costing method, currency and calendar]]></HELP> +<!--3F41C500ECEB40D09089FEA4C3793F29--> <DESCRIPTION><![CDATA[The book containing all financial transactions recorded for the legal entity.]]></DESCRIPTION> +<!--3F41C500ECEB40D09089FEA4C3793F29--> <HELP><![CDATA[The book containing all financial transactions recorded for the legal entity.]]></HELP> <!--3F41C500ECEB40D09089FEA4C3793F29--> <COLUMNNAME><![CDATA[C_Acctschema_ID]]></COLUMNNAME> <!--3F41C500ECEB40D09089FEA4C3793F29--> <AD_TABLE_ID><![CDATA[FF80808130BB89090130BB8E3D7E0012]]></AD_TABLE_ID> <!--3F41C500ECEB40D09089FEA4C3793F29--> <AD_REFERENCE_ID><![CDATA[19]]></AD_REFERENCE_ID> @@ -4926,8 +4926,8 @@ <!--96221416E24540059B9BEFEC5F09D3FF--> <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID> <!--96221416E24540059B9BEFEC5F09D3FF--> <ISACTIVE><![CDATA[Y]]></ISACTIVE> <!--96221416E24540059B9BEFEC5F09D3FF--> <NAME><![CDATA[Accounting Schema]]></NAME> -<!--96221416E24540059B9BEFEC5F09D3FF--> <DESCRIPTION><![CDATA[The structure used in accounting including costing methods, currencies, and the calendar.]]></DESCRIPTION> -<!--96221416E24540059B9BEFEC5F09D3FF--> <HELP><![CDATA[An Accounting Schema defines the rules used in accounting such as costing method, currency and calendar]]></HELP> +<!--96221416E24540059B9BEFEC5F09D3FF--> <DESCRIPTION><![CDATA[The book containing all financial transactions recorded for the legal entity.]]></DESCRIPTION> +<!--96221416E24540059B9BEFEC5F09D3FF--> <HELP><![CDATA[The book containing all financial transactions recorded for the legal entity.]]></HELP> <!--96221416E24540059B9BEFEC5F09D3FF--> <COLUMNNAME><![CDATA[C_Acctschema_ID]]></COLUMNNAME> <!--96221416E24540059B9BEFEC5F09D3FF--> <AD_TABLE_ID><![CDATA[1BAA61D216CB4A62838AA785658EE092]]></AD_TABLE_ID> <!--96221416E24540059B9BEFEC5F09D3FF--> <AD_REFERENCE_ID><![CDATA[30]]></AD_REFERENCE_ID> diff -r ab39dd401cd5 -r 804841e22642 modules/org.openbravo.advpaymentmngt/src-db/database/sourcedata/AD_FIELD.xml --- a/modules/org.openbravo.advpaymentmngt/src-db/database/sourcedata/AD_FIELD.xml Wed Oct 24 14:02:55 2012 +0200 +++ b/modules/org.openbravo.advpaymentmngt/src-db/database/sourcedata/AD_FIELD.xml Thu Oct 25 09:57:52 2012 +0200 @@ -143,9 +143,9 @@ <!--0244498E99414EA6A709CD3D5A7951D1--> <AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID> <!--0244498E99414EA6A709CD3D5A7951D1--> <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID> <!--0244498E99414EA6A709CD3D5A7951D1--> <ISACTIVE><![CDATA[Y]]></ISACTIVE> -<!--0244498E99414EA6A709CD3D5A7951D1--> <NAME><![CDATA[Accounting Schema]]></NAME> -<!--0244498E99414EA6A709CD3D5A7951D1--> <DESCRIPTION><![CDATA[The structure used in accounting including costing methods, currencies, and the calendar.]]></DESCRIPTION> -<!--0244498E99414EA6A709CD3D5A7951D1--> <HELP><![CDATA[An Accounting Schema defines the rules used in accounting such as costing method, currency and calendar]]></HELP> +<!--0244498E99414EA6A709CD3D5A7951D1--> <NAME><![CDATA[General Ledger]]></NAME> +<!--0244498E99414EA6A709CD3D5A7951D1--> <DESCRIPTION><![CDATA[The book containing all financial transactions recorded for the legal entity.]]></DESCRIPTION> +<!--0244498E99414EA6A709CD3D5A7951D1--> <HELP><![CDATA[The book containing all financial transactions recorded for the legal entity.]]></HELP> <!--0244498E99414EA6A709CD3D5A7951D1--> <ISCENTRALLYMAINTAINED><![CDATA[Y]]></ISCENTRALLYMAINTAINED> <!--0244498E99414EA6A709CD3D5A7951D1--> <AD_TAB_ID><![CDATA[FF80808130BB89090130BB9A3A2B0043]]></AD_TAB_ID> <!--0244498E99414EA6A709CD3D5A7951D1--> <AD_COLUMN_ID><![CDATA[3F41C500ECEB40D09089FEA4C3793F29]]></AD_COLUMN_ID> @@ -6291,9 +6291,9 @@ <!--804882C210C03922E040007F01004FC0--> <AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID> <!--804882C210C03922E040007F01004FC0--> <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID> <!--804882C210C03922E040007F01004FC0--> <ISACTIVE><![CDATA[Y]]></ISACTIVE> -<!--804882C210C03922E040007F01004FC0--> <NAME><![CDATA[Accounting Schema]]></NAME> -<!--804882C210C03922E040007F01004FC0--> <DESCRIPTION><![CDATA[The structure used in accounting including costing methods, currencies, and the calendar.]]></DESCRIPTION> -<!--804882C210C03922E040007F01004FC0--> <HELP><![CDATA[An Accounting Schema defines the rules used in accounting such as costing method, currency and calendar]]></HELP> +<!--804882C210C03922E040007F01004FC0--> <NAME><![CDATA[General Ledger]]></NAME> +<!--804882C210C03922E040007F01004FC0--> <DESCRIPTION><![CDATA[The book containing all financial transactions recorded for the legal entity.]]></DESCRIPTION> +<!--804882C210C03922E040007F01004FC0--> <HELP><![CDATA[The book containing all financial transactions recorded for the legal entity.]]></HELP> <!--804882C210C03922E040007F01004FC0--> <ISCENTRALLYMAINTAINED><![CDATA[Y]]></ISCENTRALLYMAINTAINED> <!--804882C210C03922E040007F01004FC0--> <AD_TAB_ID><![CDATA[9380E9AFB1074FB98030E5549D7FF346]]></AD_TAB_ID> <!--804882C210C03922E040007F01004FC0--> <AD_COLUMN_ID><![CDATA[804880D7B0EC1126E040007F01004F9E]]></AD_COLUMN_ID> @@ -15150,9 +15150,9 @@ <!--EDD729A0C5F448F0AE9749490A293571--> <AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID> <!--EDD729A0C5F448F0AE9749490A293571--> <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID> <!--EDD729A0C5F448F0AE9749490A293571--> <ISACTIVE><![CDATA[Y]]></ISACTIVE> -<!--EDD729A0C5F448F0AE9749490A293571--> <NAME><![CDATA[Accounting Schema]]></NAME> -<!--EDD729A0C5F448F0AE9749490A293571--> <DESCRIPTION><![CDATA[The structure used in accounting including costing methods, currencies, and the calendar.]]></DESCRIPTION> -<!--EDD729A0C5F448F0AE9749490A293571--> <HELP><![CDATA[An Accounting Schema defines the rules used in accounting such as costing method, currency and calendar]]></HELP> +<!--EDD729A0C5F448F0AE9749490A293571--> <NAME><![CDATA[General Ledger]]></NAME> +<!--EDD729A0C5F448F0AE9749490A293571--> <DESCRIPTION><![CDATA[The book containing all financial transactions recorded for the legal entity.]]></DESCRIPTION> +<!--EDD729A0C5F448F0AE9749490A293571--> <HELP><![CDATA[The book containing all financial transactions recorded for the legal entity.]]></HELP> <!--EDD729A0C5F448F0AE9749490A293571--> <ISCENTRALLYMAINTAINED><![CDATA[Y]]></ISCENTRALLYMAINTAINED> <!--EDD729A0C5F448F0AE9749490A293571--> <AD_TAB_ID><![CDATA[2A9BA5FDA0F8470D881F8EA9DEDCC598]]></AD_TAB_ID> <!--EDD729A0C5F448F0AE9749490A293571--> <AD_COLUMN_ID><![CDATA[96221416E24540059B9BEFEC5F09D3FF]]></AD_COLUMN_ID> diff -r ab39dd401cd5 -r 804841e22642 modules/org.openbravo.client.application/src/org/openbravo/client/application/event/GeneralLedgerOrganizationHandler.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/modules/org.openbravo.client.application/src/org/openbravo/client/application/event/GeneralLedgerOrganizationHandler.java Thu Oct 25 09:57:52 2012 +0200 @@ -0,0 +1,101 @@ +/* + ************************************************************************* + * 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) 2012 Openbravo SLU + * All Rights Reserved. + * Contributor(s): ______________________________________. + ************************************************************************* + */ + +package org.openbravo.client.application.event; + +import java.util.ArrayList; +import java.util.List; + +import javax.enterprise.event.Observes; + +import org.apache.log4j.Logger; +import org.hibernate.criterion.Restrictions; +import org.openbravo.base.model.Entity; +import org.openbravo.base.model.ModelProvider; +import org.openbravo.base.provider.OBProvider; +import org.openbravo.client.kernel.event.EntityPersistenceEventObserver; +import org.openbravo.client.kernel.event.EntityUpdateEvent; +import org.openbravo.dal.service.OBCriteria; +import org.openbravo.dal.service.OBDal; +import org.openbravo.model.common.enterprise.Organization; +import org.openbravo.model.common.enterprise.OrganizationAcctSchema; +import org.openbravo.model.financialmgmt.accounting.coa.AcctSchema; + +public class GeneralLedgerOrganizationHandler extends EntityPersistenceEventObserver { + + private static Entity[] entities = { ModelProvider.getInstance().getEntity( + Organization.ENTITY_NAME) }; + protected Logger logger = Logger.getLogger(this.getClass()); + + @Override + protected Entity[] getObservedEntities() { + return entities; + } + + public void onSave(@Observes + EntityUpdateEvent event) { + if (!isValidEvent(event)) { + return; + } + + final Organization organization = (Organization) event.getTargetInstance(); + if (organization != null) { + final AcctSchema generalLedger = organization.getGeneralLedger(); + + OBCriteria<OrganizationAcctSchema> orgSchema = OBDal.getInstance().createCriteria( + OrganizationAcctSchema.class); + orgSchema.setFilterOnReadableOrganization(false); + orgSchema.setFilterOnActive(false); + orgSchema.add(Restrictions.eq(OrganizationAcctSchema.PROPERTY_ORGANIZATION, organization)); + List<OrganizationAcctSchema> orgSchemalist = orgSchema.list(); + ArrayList<String> idlist = new ArrayList<String>(); + + boolean exist = false; + + for (OrganizationAcctSchema oas : orgSchemalist) { + idlist.add(oas.getId()); + } + for (String ids : idlist) { + OrganizationAcctSchema orgAcctSchema = OBDal.getInstance().get( + OrganizationAcctSchema.class, ids); + if (generalLedger != null + && generalLedger.getId() == orgAcctSchema.getAccountingSchema().getId()) { + orgAcctSchema.setActive(true); + exist = true; + continue; + } + if (orgAcctSchema.getOrganizationClosingList().size() == 0) { + OBDal.getInstance().remove(orgAcctSchema); + } else { + orgAcctSchema.setActive(false); + OBDal.getInstance().save(orgAcctSchema); + } + } + + if ((generalLedger != null) && !exist) { + final OrganizationAcctSchema orgAcctSchema = OBProvider.getInstance().get( + OrganizationAcctSchema.class); + orgAcctSchema.setOrganization(organization); + orgAcctSchema.setAccountingSchema(generalLedger); + OBDal.getInstance().save(orgAcctSchema); + } + + } + } +} diff -r ab39dd401cd5 -r 804841e22642 modules/org.openbravo.client.application/web/org.openbravo.client.application/js/form/formitem/ob-formitem-fk-filter.js --- a/modules/org.openbravo.client.application/web/org.openbravo.client.application/js/form/formitem/ob-formitem-fk-filter.js Wed Oct 24 14:02:55 2012 +0200 +++ b/modules/org.openbravo.client.application/web/org.openbravo.client.application/js/form/formitem/ob-formitem-fk-filter.js Thu Oct 25 09:57:52 2012 +0200 @@ -27,6 +27,7 @@ allowExpressions: false, showOptionsFromDataSource: true, selectOnFocus: false, + validateOnExit: true, multiple: true, multipleAppearance: 'picklist', @@ -140,6 +141,21 @@ this.multipleValueSeparator = ' or '; }, + // note: can't override changed as it is used by the filter editor + // itself, see the RecordEditor source code and the changed event + change: function (form, item, value, oldValue) { + this._hasChanged = true; + this.Super('change', arguments); + }, + + blur: function () { + if (this._hasChanged) { + this.form.grid.performAction(); + } + delete this._hasChanged; + this.Super('blur', arguments); + }, + // overridden otherwise the picklist fields from the grid field // are being used getPickListFields: function () { diff -r ab39dd401cd5 -r 804841e22642 modules/org.openbravo.service.json/src/org/openbravo/service/json/DefaultJsonDataService.java --- a/modules/org.openbravo.service.json/src/org/openbravo/service/json/DefaultJsonDataService.java Wed Oct 24 14:02:55 2012 +0200 +++ b/modules/org.openbravo.service.json/src/org/openbravo/service/json/DefaultJsonDataService.java Thu Oct 25 09:57:52 2012 +0200 @@ -18,6 +18,7 @@ */ package org.openbravo.service.json; +import java.sql.BatchUpdateException; import java.util.ArrayList; import java.util.Collections; import java.util.List; @@ -546,6 +547,19 @@ } OBDal.getInstance().flush(); + // business event handlers can change the data + // flush again before refreshing, refreshing can + // potentially remove any in-memory changes + int countFlushes = 0; + while (OBDal.getInstance().getSession().isDirty()) { + OBDal.getInstance().flush(); + countFlushes++; + // arbitrary point to give up... + if (countFlushes > 100) { + throw new OBException("Infinite loop in flushing when persisting json: " + content); + } + } + // refresh the objects from the db as they can have changed for (BaseOBObject bob : bobs) { OBDal.getInstance().getSession().refresh(bob); @@ -584,9 +598,15 @@ jsonResult.put(JsonConstants.RESPONSE_RESPONSE, jsonResponse); return jsonResult.toString(); } - } catch (Exception e) { - log.error(e.getMessage(), e); - return JsonUtils.convertExceptionToJson(e); + } catch (Throwable t) { + Throwable localThrowable = t; + if (localThrowable.getCause() instanceof BatchUpdateException) { + final BatchUpdateException batchException = (BatchUpdateException) localThrowable + .getCause(); + localThrowable = batchException.getNextException(); + } + log.error(localThrowable.getMessage(), localThrowable); + return JsonUtils.convertExceptionToJson(localThrowable); } } diff -r ab39dd401cd5 -r 804841e22642 src-db/database/model/tables/AD_ORG.xml --- a/src-db/database/model/tables/AD_ORG.xml Wed Oct 24 14:02:55 2012 +0200 +++ b/src-db/database/model/tables/AD_ORG.xml Thu Oct 25 09:57:52 2012 +0200 @@ -69,6 +69,10 @@ <default/> <onCreateDefault/> </column> + <column name="C_ACCTSCHEMA_ID" primaryKey="false" required="false" type="VARCHAR" size="32" autoIncrement="false"> + <default/> + <onCreateDefault/> + </column> <foreign-key foreignTable="AD_CLIENT" name="AD_ORG_AD_CLIENT"> <reference local="AD_CLIENT_ID" foreign="AD_CLIENT_ID"/> </foreign-key> diff -r ab39dd401cd5 -r 804841e22642 src-db/database/sourcedata/AD_AUXILIARINPUT.xml --- a/src-db/database/sourcedata/AD_AUXILIARINPUT.xml Wed Oct 24 14:02:55 2012 +0200 +++ b/src-db/database/sourcedata/AD_AUXILIARINPUT.xml Thu Oct 25 09:57:52 2012 +0200 @@ -650,6 +650,17 @@ <!--01379E71C9E342A28AD3A60B5D499362--> <AD_MODULE_ID><![CDATA[0]]></AD_MODULE_ID> <!--01379E71C9E342A28AD3A60B5D499362--></AD_AUXILIARINPUT> +<!--022E77136C554D3A9A23E95A724E7BC1--><AD_AUXILIARINPUT> +<!--022E77136C554D3A9A23E95A724E7BC1--> <AD_AUXILIARINPUT_ID><![CDATA[022E77136C554D3A9A23E95A724E7BC1]]></AD_AUXILIARINPUT_ID> +<!--022E77136C554D3A9A23E95A724E7BC1--> <AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID> +<!--022E77136C554D3A9A23E95A724E7BC1--> <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID> +<!--022E77136C554D3A9A23E95A724E7BC1--> <ISACTIVE><![CDATA[Y]]></ISACTIVE> +<!--022E77136C554D3A9A23E95A724E7BC1--> <AD_TAB_ID><![CDATA[143]]></AD_TAB_ID> +<!--022E77136C554D3A9A23E95A724E7BC1--> <NAME><![CDATA[IsOrgLegalEntiy]]></NAME> +<!--022E77136C554D3A9A23E95A724E7BC1--> <CODE><![CDATA[@SQL=SELECT ISLEGALENTITY FROM AD_ORGTYPE OT, AD_ORG O WHERE OT.AD_ORGTYPE_ID = O.AD_ORGTYPE_ID AND O.AD_ORG_ID=@AD_ORG_ID@]]></CODE> +<!--022E77136C554D3A9A23E95A724E7BC1--> <AD_MODULE_ID><![CDATA[0]]></AD_MODULE_ID> +<!--022E77136C554D3A9A23E95A724E7BC1--></AD_AUXILIARINPUT> + <!--02C232776AB84E3A9E37F823074A1534--><AD_AUXILIARINPUT> <!--02C232776AB84E3A9E37F823074A1534--> <AD_AUXILIARINPUT_ID><![CDATA[02C232776AB84E3A9E37F823074A1534]]></AD_AUXILIARINPUT_ID> <!--02C232776AB84E3A9E37F823074A1534--> <AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID> @@ -995,6 +1006,17 @@ <!--311FF34B6C9A40DAA123A90701A28404--> <AD_MODULE_ID><![CDATA[0]]></AD_MODULE_ID> <!--311FF34B6C9A40DAA123A90701A28404--></AD_AUXILIARINPUT> +<!--31D7570D861245E89A3708B9275E466C--><AD_AUXILIARINPUT> +<!--31D7570D861245E89A3708B9275E466C--> <AD_AUXILIARINPUT_ID><![CDATA[31D7570D861245E89A3708B9275E466C]]></AD_AUXILIARINPUT_ID> +<!--31D7570D861245E89A3708B9275E466C--> <AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID> +<!--31D7570D861245E89A3708B9275E466C--> <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID> +<!--31D7570D861245E89A3708B9275E466C--> <ISACTIVE><![CDATA[Y]]></ISACTIVE> +<!--31D7570D861245E89A3708B9275E466C--> <AD_TAB_ID><![CDATA[143]]></AD_TAB_ID> ------------------------------------------------------------------------------ Everyone hates slow websites. So do we. Make your web apps faster with AppDynamics Download AppDynamics Lite for free today: http://p.sf.net/sfu/appdyn_sfd2d_oct _______________________________________________ Openbravo-commits mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/openbravo-commits
