[HGVOL] Merged to PI
authorMartin Taal <martin.taal@openbravo.com>
Fri, 04 Sep 2015 09:30:06 +0200
changeset 28494 82269ada63ec
parent 28493 42a25d9e7504
child 28495 b7e392b19794
[HGVOL] Merged to PI
modules/org.openbravo.advpaymentmngt/build/classes/org/openbravo/advpaymentmngt/modulescript/AlertsForWrongInvoices.class
modules/org.openbravo.advpaymentmngt/build/classes/org/openbravo/advpaymentmngt/modulescript/AlertsForWrongInvoicesData.class
modules/org.openbravo.advpaymentmngt/build/classes/org/openbravo/advpaymentmngt/modulescript/AlertsForWrongOrders.class
modules/org.openbravo.advpaymentmngt/build/classes/org/openbravo/advpaymentmngt/modulescript/AlertsForWrongOrdersData.class
modules/org.openbravo.advpaymentmngt/build/classes/org/openbravo/advpaymentmngt/modulescript/CreateAccountingConfiguration.class
modules/org.openbravo.advpaymentmngt/build/classes/org/openbravo/advpaymentmngt/modulescript/CreateDocumentNoSequence.class
modules/org.openbravo.advpaymentmngt/build/classes/org/openbravo/advpaymentmngt/modulescript/DeleteWrongTransactions.class
modules/org.openbravo.advpaymentmngt/build/classes/org/openbravo/advpaymentmngt/modulescript/InitializeAPRMReadyPreference.class
modules/org.openbravo.advpaymentmngt/build/classes/org/openbravo/advpaymentmngt/modulescript/Issue28591UpdatePSD.class
modules/org.openbravo.advpaymentmngt/build/classes/org/openbravo/advpaymentmngt/modulescript/LinkCreditPayments.class
modules/org.openbravo.advpaymentmngt/build/classes/org/openbravo/advpaymentmngt/modulescript/UpdateCustomerBalance.class
modules/org.openbravo.advpaymentmngt/build/classes/org/openbravo/advpaymentmngt/modulescript/UpdateGeneratedUsedCreditColumns.class
modules/org.openbravo.advpaymentmngt/build/classes/org/openbravo/advpaymentmngt/modulescript/UpdateMatchedDocument.class
modules/org.openbravo.advpaymentmngt/build/classes/org/openbravo/advpaymentmngt/modulescript/UpdatePaymentScheduledetail.class
modules/org.openbravo.advpaymentmngt/build/classes/org/openbravo/advpaymentmngt/modulescript/UpdateReconciliationProcessButtonValue.class
modules/org.openbravo.advpaymentmngt/build/classes/org/openbravo/advpaymentmngt/modulescript/UpdateReconciliationStatementProcessedValue.class
modules/org.openbravo.advpaymentmngt/build/classes/org/openbravo/advpaymentmngt/modulescript/UpdateRecordId2Value.class
modules/org.openbravo.advpaymentmngt/build/classes/org/openbravo/advpaymentmngt/modulescript/UpdateTransactionBPExchangeRate.class
modules/org.openbravo.advpaymentmngt/build/classes/org/openbravo/advpaymentmngt/modulescript/UpdateTransactionTypeTransactionTab.class
modules/org.openbravo.advpaymentmngt/build/classes/org/openbravo/advpaymentmngt/modulescript/WrongPaymentsFromJournalLine.class
modules/org.openbravo.advpaymentmngt/src-db/database/sourcedata/AD_MODULE.xml
modules/org.openbravo.advpaymentmngt/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
modules/org.openbravo.advpaymentmngt/src-util/modulescript/src/org/openbravo/advpaymentmngt/modulescript/AlertsForWrongInvoices.java
modules/org.openbravo.advpaymentmngt/src-util/modulescript/src/org/openbravo/advpaymentmngt/modulescript/AlertsForWrongInvoices_data.xsql
modules/org.openbravo.advpaymentmngt/src-util/modulescript/src/org/openbravo/advpaymentmngt/modulescript/AlertsForWrongOrders.java
modules/org.openbravo.advpaymentmngt/src-util/modulescript/src/org/openbravo/advpaymentmngt/modulescript/AlertsForWrongOrders_data.xsql
modules/org.openbravo.advpaymentmngt/src-util/modulescript/src/org/openbravo/advpaymentmngt/modulescript/CreateAccountingConfiguration.java
modules/org.openbravo.advpaymentmngt/src-util/modulescript/src/org/openbravo/advpaymentmngt/modulescript/CreateDocumentNoSequence.java
modules/org.openbravo.advpaymentmngt/src-util/modulescript/src/org/openbravo/advpaymentmngt/modulescript/DeleteWrongTransactions.java
modules/org.openbravo.advpaymentmngt/src-util/modulescript/src/org/openbravo/advpaymentmngt/modulescript/InitializeAPRMReadyPreference.java
modules/org.openbravo.advpaymentmngt/src-util/modulescript/src/org/openbravo/advpaymentmngt/modulescript/Issue28591UpdatePSD.java
modules/org.openbravo.advpaymentmngt/src-util/modulescript/src/org/openbravo/advpaymentmngt/modulescript/LinkCreditPayments.java
modules/org.openbravo.advpaymentmngt/src-util/modulescript/src/org/openbravo/advpaymentmngt/modulescript/UpdateCustomerBalance.java
modules/org.openbravo.advpaymentmngt/src-util/modulescript/src/org/openbravo/advpaymentmngt/modulescript/UpdateGeneratedUsedCreditColumns.java
modules/org.openbravo.advpaymentmngt/src-util/modulescript/src/org/openbravo/advpaymentmngt/modulescript/UpdateMatchedDocument.java
modules/org.openbravo.advpaymentmngt/src-util/modulescript/src/org/openbravo/advpaymentmngt/modulescript/UpdatePaymentProcessedValue.java
modules/org.openbravo.advpaymentmngt/src-util/modulescript/src/org/openbravo/advpaymentmngt/modulescript/UpdatePaymentScheduledetail.java
modules/org.openbravo.advpaymentmngt/src-util/modulescript/src/org/openbravo/advpaymentmngt/modulescript/UpdateReconciliationProcessButtonValue.java
modules/org.openbravo.advpaymentmngt/src-util/modulescript/src/org/openbravo/advpaymentmngt/modulescript/UpdateReconciliationStatementProcessedValue.java
modules/org.openbravo.advpaymentmngt/src-util/modulescript/src/org/openbravo/advpaymentmngt/modulescript/UpdateRecordId2Value.java
modules/org.openbravo.advpaymentmngt/src-util/modulescript/src/org/openbravo/advpaymentmngt/modulescript/UpdateTransactionBPExchangeRate.java
modules/org.openbravo.advpaymentmngt/src-util/modulescript/src/org/openbravo/advpaymentmngt/modulescript/UpdateTransactionTypeTransactionTab.java
modules/org.openbravo.advpaymentmngt/src-util/modulescript/src/org/openbravo/advpaymentmngt/modulescript/WrongPaymentsFromJournalLine.java
modules/org.openbravo.advpaymentmngt/src-util/modulescript/src/src/org/openbravo/advpaymentmngt/modulescript/AlertsForWrongInvoicesData.java
modules/org.openbravo.advpaymentmngt/src-util/modulescript/src/src/org/openbravo/advpaymentmngt/modulescript/AlertsForWrongOrdersData.java
modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/filterexpression/TransactionAddPaymentDefaultValues.java
modules/org.openbravo.apachejdbcconnectionpool/src-db/database/sourcedata/AD_MODULE.xml
modules/org.openbravo.apachejdbcconnectionpool/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
modules/org.openbravo.base.weld/src-db/database/sourcedata/AD_MODULE.xml
modules/org.openbravo.base.weld/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
modules/org.openbravo.client.application/src-db/database/model/triggers/OBUIAPP_AD_FIELD_MOD_TRG.xml
modules/org.openbravo.client.application/src-db/database/model/triggers/OBUIAPP_MENU_PARAM_MOD_TRG.xml
modules/org.openbravo.client.application/src-db/database/model/triggers/OBUIAPP_PARAMETER_MOD_TRG.xml
modules/org.openbravo.client.application/src-db/database/sourcedata/AD_MODULE.xml
modules/org.openbravo.client.application/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
modules/org.openbravo.client.application/src/org/openbravo/client/application/report/BaseReportActionHandler.java
modules/org.openbravo.client.htmlwidget/src-db/database/sourcedata/AD_MODULE.xml
modules/org.openbravo.client.htmlwidget/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
modules/org.openbravo.client.kernel/src-db/database/model/triggers/OBCLKER_TEMPLATE_DEPEND_TRG.xml
modules/org.openbravo.client.kernel/src-db/database/sourcedata/AD_MODULE.xml
modules/org.openbravo.client.kernel/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
modules/org.openbravo.client.kernel/src/org/openbravo/client/kernel/StaticResourceComponent.java
modules/org.openbravo.client.kernel/src/org/openbravo/client/kernel/StyleSheetResourceComponent.java
modules/org.openbravo.client.kernel/src/org/openbravo/client/kernel/reference/CharacteristicsUIDefinition.java
modules/org.openbravo.client.myob/src-db/database/model/triggers/OBKMO_WIDGET_CLASS_MOD_TRG.xml
modules/org.openbravo.client.myob/src-db/database/model/triggers/OBKMO_WIDGET_URL_MOD_TRG.xml
modules/org.openbravo.client.myob/src-db/database/sourcedata/AD_MODULE.xml
modules/org.openbravo.client.myob/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
modules/org.openbravo.client.querylist/src-db/database/sourcedata/AD_MODULE.xml
modules/org.openbravo.client.querylist/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
modules/org.openbravo.client.widgets/src-db/database/sourcedata/AD_MODULE.xml
modules/org.openbravo.client.widgets/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
modules/org.openbravo.financial.paymentreport/src-db/database/sourcedata/AD_MODULE.xml
modules/org.openbravo.financial.paymentreport/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
modules/org.openbravo.reports.ordersawaitingdelivery/src-db/database/sourcedata/AD_MODULE.xml
modules/org.openbravo.reports.ordersawaitingdelivery/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
modules/org.openbravo.service.datasource/src-db/database/model/triggers/OBSERDS_DATASOURCE_FIELD_TRG.xml
modules/org.openbravo.service.datasource/src-db/database/sourcedata/AD_MODULE.xml
modules/org.openbravo.service.datasource/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
modules/org.openbravo.service.integration.google/src-db/database/sourcedata/AD_MODULE.xml
modules/org.openbravo.service.integration.google/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
modules/org.openbravo.service.integration.openid/src-db/database/sourcedata/AD_MODULE.xml
modules/org.openbravo.service.integration.openid/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
modules/org.openbravo.service.json/src-db/database/sourcedata/AD_MODULE.xml
modules/org.openbravo.service.json/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
modules/org.openbravo.userinterface.selector/build/classes/org/openbravo/userinterface/selector/UpdateLanguageColumn.class
modules/org.openbravo.userinterface.selector/src-db/database/model/triggers/OBUISEL_SELECTOR_FLD_MOD_TRG.xml
modules/org.openbravo.userinterface.selector/src-db/database/model/triggers/OBUISEL_SELECTOR_TRL_TRG.xml
modules/org.openbravo.userinterface.selector/src-db/database/sourcedata/AD_MODULE.xml
modules/org.openbravo.userinterface.selector/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
modules/org.openbravo.userinterface.selector/src-util/modulescript/src/org/openbravo/userinterface/selector/UpdateLanguageColumn.java
modules/org.openbravo.userinterface.selector/web/org.openbravo.userinterface.selector/test/selector_prototype.html
modules/org.openbravo.userinterface.skin.250to300Comp/build/classes/org/openbravo/userinterface/skin/s250to300Comp/modulescript/DefaultSkin.class
modules/org.openbravo.userinterface.skin.250to300Comp/build/classes/org/openbravo/userinterface/skin/s250to300Comp/modulescript/DefaultSkinData.class
modules/org.openbravo.userinterface.skin.250to300Comp/src-db/database/sourcedata/AD_MODULE.xml
modules/org.openbravo.userinterface.skin.250to300Comp/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
modules/org.openbravo.userinterface.skin.250to300Comp/src-util/modulescript/src/org/openbravo/userinterface/skin/s250to300Comp/modulescript/DefaultSkin.java
modules/org.openbravo.userinterface.skin.250to300Comp/src-util/modulescript/src/org/openbravo/userinterface/skin/s250to300Comp/modulescript/DefaultSkin_data.xsql
modules/org.openbravo.userinterface.skin.250to300Comp/src-util/modulescript/src/src/org/openbravo/userinterface/skin/s250to300Comp/modulescript/DefaultSkinData.java
modules/org.openbravo.userinterface.smartclient/src-db/database/sourcedata/AD_MODULE.xml
modules/org.openbravo.userinterface.smartclient/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
modules/org.openbravo.userinterface.smartclient/web/org.openbravo.userinterface.smartclient/test/DataSource.js
modules/org.openbravo.userinterface.smartclient/web/org.openbravo.userinterface.smartclient/test/Product_Edition.html
modules/org.openbravo.userinterface.smartclient/web/org.openbravo.userinterface.smartclient/test/column_search_grid.html
modules/org.openbravo.userinterface.smartclient/web/org.openbravo.userinterface.smartclient/test/customgrid.html
modules/org.openbravo.userinterface.smartclient/web/org.openbravo.userinterface.smartclient/test/date.html
modules/org.openbravo.userinterface.smartclient/web/org.openbravo.userinterface.smartclient/test/date_test_type.html
modules/org.openbravo.userinterface.smartclient/web/org.openbravo.userinterface.smartclient/test/dragdrop-test.html
modules/org.openbravo.userinterface.smartclient/web/org.openbravo.userinterface.smartclient/test/grid-display.html
modules/org.openbravo.userinterface.smartclient/web/org.openbravo.userinterface.smartclient/test/helloworld.html
modules/org.openbravo.userinterface.smartclient/web/org.openbravo.userinterface.smartclient/test/images/Large1.png
modules/org.openbravo.userinterface.smartclient/web/org.openbravo.userinterface.smartclient/test/images/Large2.png
modules/org.openbravo.userinterface.smartclient/web/org.openbravo.userinterface.smartclient/test/images/Large3.png
modules/org.openbravo.userinterface.smartclient/web/org.openbravo.userinterface.smartclient/test/images/Large4.png
modules/org.openbravo.userinterface.smartclient/web/org.openbravo.userinterface.smartclient/test/images/Short1.png
modules/org.openbravo.userinterface.smartclient/web/org.openbravo.userinterface.smartclient/test/images/Short2.png
modules/org.openbravo.userinterface.smartclient/web/org.openbravo.userinterface.smartclient/test/images/Short3.png
modules/org.openbravo.userinterface.smartclient/web/org.openbravo.userinterface.smartclient/test/images/Short4.png
modules/org.openbravo.userinterface.smartclient/web/org.openbravo.userinterface.smartclient/test/images/Short5.png
modules/org.openbravo.userinterface.smartclient/web/org.openbravo.userinterface.smartclient/test/images/Short6.png
modules/org.openbravo.userinterface.smartclient/web/org.openbravo.userinterface.smartclient/test/images/Trash-closed.png
modules/org.openbravo.userinterface.smartclient/web/org.openbravo.userinterface.smartclient/test/images/Trash-opened.png
modules/org.openbravo.userinterface.smartclient/web/org.openbravo.userinterface.smartclient/test/layout.html
modules/org.openbravo.userinterface.smartclient/web/org.openbravo.userinterface.smartclient/test/layout2.html
modules/org.openbravo.userinterface.smartclient/web/org.openbravo.userinterface.smartclient/test/master-detail-edit.html
modules/org.openbravo.userinterface.smartclient/web/org.openbravo.userinterface.smartclient/test/master-detail-form.html
modules/org.openbravo.userinterface.smartclient/web/org.openbravo.userinterface.smartclient/test/master-detail-view.html
modules/org.openbravo.userinterface.smartclient/web/org.openbravo.userinterface.smartclient/test/master-detail-view2.html
modules/org.openbravo.userinterface.smartclient/web/org.openbravo.userinterface.smartclient/test/messagebar.html
modules/org.openbravo.userinterface.smartclient/web/org.openbravo.userinterface.smartclient/test/number.html
modules/org.openbravo.userinterface.smartclient/web/org.openbravo.userinterface.smartclient/test/number_test_type.html
modules/org.openbravo.userinterface.smartclient/web/org.openbravo.userinterface.smartclient/test/ob_grid_widgets.js
modules/org.openbravo.userinterface.smartclient/web/org.openbravo.userinterface.smartclient/test/ob_widgets.js
modules/org.openbravo.userinterface.smartclient/web/org.openbravo.userinterface.smartclient/test/product_search_grid.html
modules/org.openbravo.userinterface.smartclient/web/org.openbravo.userinterface.smartclient/test/static_ob.html
modules/org.openbravo.userinterface.smartclient/web/org.openbravo.userinterface.smartclient/test/tabs-classicob.html
modules/org.openbravo.userinterface.smartclient/web/org.openbravo.userinterface.smartclient/test/test-grid.html
modules/org.openbravo.userinterface.smartclient/web/org.openbravo.userinterface.smartclient/test/yahoo_datasource.html
modules/org.openbravo.utility.cleanup.log/src-db/database/sourcedata/AD_MODULE.xml
modules/org.openbravo.utility.cleanup.log/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
modules/org.openbravo.v3.datasets/build/classes/org/openbravo/v3/datasets/SetDefaultRole.class
modules/org.openbravo.v3.datasets/src-db/database/sourcedata/AD_MODULE.xml
modules/org.openbravo.v3.datasets/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
modules/org.openbravo.v3.datasets/src-util/modulescript/src/org/openbravo/v3/datasets/SetDefaultRole.java
modules/org.openbravo.v3.framework/src-db/database/sourcedata/AD_MODULE.xml
modules/org.openbravo.v3.framework/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
modules/org.openbravo.v3/src-db/database/sourcedata/AD_MODULE.xml
modules/org.openbravo.v3/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml
referencedata/standard/Financial_Alerts.xml
src-core/src/org/openbravo/base/ConfigParameters.java
src-core/src/org/openbravo/base/HttpBaseServlet.java
src-db/database/model/functions/AD_COLUMN_IDENTIFIER_REF_SQL.xml
src-db/database/model/functions/AD_COLUMN_IDENTIFIER_SQL.xml
src-db/database/model/functions/AD_GETTAB_FROM_TABLE.xml
src-db/database/model/functions/AD_GET_NODE_TREE_BYLEVEL.xml
src-db/database/model/functions/AD_ORG_READY.xml
src-db/database/model/functions/AD_TABLE_IMPORT.xml
src-db/database/model/functions/AD_TAB_COPY.xml
src-db/database/model/functions/AD_TAB_IMPORT.xml
src-db/database/model/functions/M_INVENTORY_LISTCREATE.xml
src-db/database/model/prescript-PostgreSql.sql
src-db/database/model/triggers/AD_EP_PROCEDURES_MOD_TRG.xml
src-db/database/model/triggers/AD_EXTENSION_POINT_MOD_TRG.xml
src-db/database/model/triggers/AD_MENU_TRG.xml
src-db/database/model/triggers/AD_MODULE_TRG.xml
src-db/database/model/triggers/AD_MODULE_TRG2.xml
src-db/database/model/triggers/AD_ORG_TRG.xml
src-db/database/sourcedata/AD_CALLOUT.xml
src-db/database/sourcedata/AD_COLUMN.xml
src-db/database/sourcedata/AD_DATASET.xml
src-db/database/sourcedata/AD_DATASET_TABLE.xml
src-db/database/sourcedata/AD_ELEMENT.xml
src-db/database/sourcedata/AD_FIELD.xml
src-db/database/sourcedata/AD_MODEL_OBJECT.xml
src-db/database/sourcedata/AD_MODEL_OBJECT_MAPPING.xml
src-db/database/sourcedata/AD_MODULE.xml
src-util/modulescript/build/classes/org/openbravo/modulescript/AdminFlagOnCreateDefaults.class
src-util/modulescript/build/classes/org/openbravo/modulescript/AlertMASequenceProduct.class
src-util/modulescript/build/classes/org/openbravo/modulescript/CheckCoreVersionData.class
src-util/modulescript/build/classes/org/openbravo/modulescript/ConvertImages.class
src-util/modulescript/build/classes/org/openbravo/modulescript/CreateCostAdjustmentAcctConf.class
src-util/modulescript/build/classes/org/openbravo/modulescript/CreateDoctypeTemplate.class
src-util/modulescript/build/classes/org/openbravo/modulescript/CreateLandedCostAcctConf.class
src-util/modulescript/build/classes/org/openbravo/modulescript/CreateLandedCostCostAcctConf.class
src-util/modulescript/build/classes/org/openbravo/modulescript/CreateLineForSequenceProduct.class
src-util/modulescript/build/classes/org/openbravo/modulescript/DeleteDuplicateCommissionDetail.class
src-util/modulescript/build/classes/org/openbravo/modulescript/DeleteDuplicateMatchInvoice.class
src-util/modulescript/build/classes/org/openbravo/modulescript/DeleteInventoryLines.class
src-util/modulescript/build/classes/org/openbravo/modulescript/DeleteRedundantTranslations.class
src-util/modulescript/build/classes/org/openbravo/modulescript/FixLedgerInMultiJournal.class
src-util/modulescript/build/classes/org/openbravo/modulescript/HBFix.class
src-util/modulescript/build/classes/org/openbravo/modulescript/InitializeAcctDimensionsInClient.class
src-util/modulescript/build/classes/org/openbravo/modulescript/InitializeAlertStatus.class
src-util/modulescript/build/classes/org/openbravo/modulescript/InitializeBPCurrency.class
src-util/modulescript/build/classes/org/openbravo/modulescript/InitializeCostingMigrationPreference.class
src-util/modulescript/build/classes/org/openbravo/modulescript/InitializeGeneralLedgerOrganization.class
src-util/modulescript/build/classes/org/openbravo/modulescript/InitializeIsPaymentPaid.class
src-util/modulescript/build/classes/org/openbravo/modulescript/InitializeOnHandWarehouse.class
src-util/modulescript/build/classes/org/openbravo/modulescript/InitializeReservationColumnsForStorageDetail.class
src-util/modulescript/build/classes/org/openbravo/modulescript/Issue21640WrongMatchInvAccounting.class
src-util/modulescript/build/classes/org/openbravo/modulescript/Issue26826_Org_AllowPeriodControl.class
src-util/modulescript/build/classes/org/openbravo/modulescript/PaymentZeroAmount.class
src-util/modulescript/build/classes/org/openbravo/modulescript/TruncInvoiceDate.class
src-util/modulescript/build/classes/org/openbravo/modulescript/UniqueValidCombination.class
src-util/modulescript/build/classes/org/openbravo/modulescript/UpdateADClientInfo.class
src-util/modulescript/build/classes/org/openbravo/modulescript/UpdateADTrees.class
src-util/modulescript/build/classes/org/openbravo/modulescript/UpdateBpPaymentLine.class
src-util/modulescript/build/classes/org/openbravo/modulescript/UpdateCostingRuleDateTo.class
src-util/modulescript/build/classes/org/openbravo/modulescript/UpdateCostingRulesWhenNotCalculatedCosts.class
src-util/modulescript/build/classes/org/openbravo/modulescript/UpdateDueDate.class
src-util/modulescript/build/classes/org/openbravo/modulescript/UpdateEmailPasswords.class
src-util/modulescript/build/classes/org/openbravo/modulescript/UpdateFactAcctDescription.class
src-util/modulescript/build/classes/org/openbravo/modulescript/UpdateFinancialAccountAccounts.class
src-util/modulescript/build/classes/org/openbravo/modulescript/UpdateGrandTotal.class
src-util/modulescript/build/classes/org/openbravo/modulescript/UpdateMTransactionCostingStatus.class
src-util/modulescript/build/classes/org/openbravo/modulescript/UpdateOpenClosePeriodsButton.class
src-util/modulescript/build/classes/org/openbravo/modulescript/UpdatePaymentBPClientDimension.class
src-util/modulescript/build/classes/org/openbravo/modulescript/UpdatePaymentPlan.class
src-util/modulescript/build/classes/org/openbravo/modulescript/UpdateProcessGoodsJavaDocAction.class
src-util/modulescript/build/classes/org/openbravo/modulescript/UpdateProductChValueOrg.class
src-util/modulescript/build/classes/org/openbravo/modulescript/UpdateProductPrice.class
src-util/modulescript/build/classes/org/openbravo/modulescript/UpdateRequestProcessOrg.class
src-util/modulescript/build/classes/org/openbravo/modulescript/UpdateRequestProcessOrgData.class
src-util/modulescript/build/classes/org/openbravo/modulescript/UpdateReservationQtys.class
src-util/modulescript/build/classes/org/openbravo/modulescript/UpdateReversalDocumentTypes.class
src-util/modulescript/build/classes/org/openbravo/modulescript/UpdateVariantImage.class
src-util/modulescript/build/classes/org/openbravo/modulescript/UpgradeToPocEmail.class
src-util/modulescript/src/org/openbravo/modulescript/AdminFlagOnCreateDefaults.java
src-util/modulescript/src/org/openbravo/modulescript/AlertMASequenceProduct.java
src-util/modulescript/src/org/openbravo/modulescript/CheckCoreVersion_Data.xsql
src-util/modulescript/src/org/openbravo/modulescript/ConvertImages.java
src-util/modulescript/src/org/openbravo/modulescript/CreateCostAdjustmentAcctConf.java
src-util/modulescript/src/org/openbravo/modulescript/CreateDoctypeTemplate.java
src-util/modulescript/src/org/openbravo/modulescript/CreateLandedCostAcctConf.java
src-util/modulescript/src/org/openbravo/modulescript/CreateLandedCostCostAcctConf.java
src-util/modulescript/src/org/openbravo/modulescript/CreateLineForSequenceProduct.java
src-util/modulescript/src/org/openbravo/modulescript/DeleteDuplicateCommissionDetail.java
src-util/modulescript/src/org/openbravo/modulescript/DeleteDuplicateMatchInvoice.java
src-util/modulescript/src/org/openbravo/modulescript/DeleteInventoryLines.java
src-util/modulescript/src/org/openbravo/modulescript/DeleteRedundantTranslations.java
src-util/modulescript/src/org/openbravo/modulescript/FixLedgerInMultiJournal.java
src-util/modulescript/src/org/openbravo/modulescript/HBFix.java
src-util/modulescript/src/org/openbravo/modulescript/InitializeAcctDimensionsInClient.java
src-util/modulescript/src/org/openbravo/modulescript/InitializeAlertStatus.java
src-util/modulescript/src/org/openbravo/modulescript/InitializeBPCurrency.java
src-util/modulescript/src/org/openbravo/modulescript/InitializeCostingMigrationPreference.java
src-util/modulescript/src/org/openbravo/modulescript/InitializeGeneralLedgerOrganization.java
src-util/modulescript/src/org/openbravo/modulescript/InitializeIsPaymentPaid.java
src-util/modulescript/src/org/openbravo/modulescript/InitializeOnHandWarehouse.java
src-util/modulescript/src/org/openbravo/modulescript/InitializeReservationColumnsForStorageDetail.java
src-util/modulescript/src/org/openbravo/modulescript/Issue21640WrongMatchInvAccounting.java
src-util/modulescript/src/org/openbravo/modulescript/Issue26826_Org_AllowPeriodControl.java
src-util/modulescript/src/org/openbravo/modulescript/PaymentZeroAmount.java
src-util/modulescript/src/org/openbravo/modulescript/TruncInvoiceDate.java
src-util/modulescript/src/org/openbravo/modulescript/UniqueValidCombination.java
src-util/modulescript/src/org/openbravo/modulescript/UpdateADClientInfo.java
src-util/modulescript/src/org/openbravo/modulescript/UpdateADTrees.java
src-util/modulescript/src/org/openbravo/modulescript/UpdateBpPaymentLine.java
src-util/modulescript/src/org/openbravo/modulescript/UpdateCostingRuleDateTo.java
src-util/modulescript/src/org/openbravo/modulescript/UpdateCostingRulesWhenNotCalculatedCosts.java
src-util/modulescript/src/org/openbravo/modulescript/UpdateDueDate.java
src-util/modulescript/src/org/openbravo/modulescript/UpdateEmailPasswords.java
src-util/modulescript/src/org/openbravo/modulescript/UpdateFactAcctDescription.java
src-util/modulescript/src/org/openbravo/modulescript/UpdateFinancialAccountAccounts.java
src-util/modulescript/src/org/openbravo/modulescript/UpdateGrandTotal.java
src-util/modulescript/src/org/openbravo/modulescript/UpdateMTransactionCostingStatus.java
src-util/modulescript/src/org/openbravo/modulescript/UpdateOpenClosePeriodsButton.java
src-util/modulescript/src/org/openbravo/modulescript/UpdatePaymentBPClientDimension.java
src-util/modulescript/src/org/openbravo/modulescript/UpdatePaymentPlan.java
src-util/modulescript/src/org/openbravo/modulescript/UpdateProcessGoodsJavaDocAction.java
src-util/modulescript/src/org/openbravo/modulescript/UpdateProductChValueOrg.java
src-util/modulescript/src/org/openbravo/modulescript/UpdateProductPrice.java
src-util/modulescript/src/org/openbravo/modulescript/UpdateRequestProcessOrg.java
src-util/modulescript/src/org/openbravo/modulescript/UpdateRequestProcessOrg_data.xsql
src-util/modulescript/src/org/openbravo/modulescript/UpdateReservationQtys.java
src-util/modulescript/src/org/openbravo/modulescript/UpdateReversalDocumentTypes.java
src-util/modulescript/src/org/openbravo/modulescript/UpdateVariantImage.java
src-util/modulescript/src/org/openbravo/modulescript/UpgradeToPocEmail.java
src/org/openbravo/erpCommon/ad_actionButton/CreateFrom.java
src/org/openbravo/erpCommon/ad_callouts/SE_Invoice_TaxDate.java
src/org/openbravo/erpCommon/ad_reports/ReportInvoiceDiscountJR.java
src/org/openbravo/erpCommon/ad_reports/ReportInvoiceDiscount_data.xsql
src/org/openbravo/erpCommon/obps/ActivationKey.java
src/org/openbravo/financial/ResetAccounting.java
Binary file modules/org.openbravo.advpaymentmngt/build/classes/org/openbravo/advpaymentmngt/modulescript/AlertsForWrongInvoices.class has changed
Binary file modules/org.openbravo.advpaymentmngt/build/classes/org/openbravo/advpaymentmngt/modulescript/AlertsForWrongInvoicesData.class has changed
Binary file modules/org.openbravo.advpaymentmngt/build/classes/org/openbravo/advpaymentmngt/modulescript/AlertsForWrongOrders.class has changed
Binary file modules/org.openbravo.advpaymentmngt/build/classes/org/openbravo/advpaymentmngt/modulescript/AlertsForWrongOrdersData.class has changed
Binary file modules/org.openbravo.advpaymentmngt/build/classes/org/openbravo/advpaymentmngt/modulescript/CreateAccountingConfiguration.class has changed
Binary file modules/org.openbravo.advpaymentmngt/build/classes/org/openbravo/advpaymentmngt/modulescript/CreateDocumentNoSequence.class has changed
Binary file modules/org.openbravo.advpaymentmngt/build/classes/org/openbravo/advpaymentmngt/modulescript/DeleteWrongTransactions.class has changed
Binary file modules/org.openbravo.advpaymentmngt/build/classes/org/openbravo/advpaymentmngt/modulescript/InitializeAPRMReadyPreference.class has changed
Binary file modules/org.openbravo.advpaymentmngt/build/classes/org/openbravo/advpaymentmngt/modulescript/Issue28591UpdatePSD.class has changed
Binary file modules/org.openbravo.advpaymentmngt/build/classes/org/openbravo/advpaymentmngt/modulescript/LinkCreditPayments.class has changed
Binary file modules/org.openbravo.advpaymentmngt/build/classes/org/openbravo/advpaymentmngt/modulescript/UpdateCustomerBalance.class has changed
Binary file modules/org.openbravo.advpaymentmngt/build/classes/org/openbravo/advpaymentmngt/modulescript/UpdateGeneratedUsedCreditColumns.class has changed
Binary file modules/org.openbravo.advpaymentmngt/build/classes/org/openbravo/advpaymentmngt/modulescript/UpdateMatchedDocument.class has changed
Binary file modules/org.openbravo.advpaymentmngt/build/classes/org/openbravo/advpaymentmngt/modulescript/UpdatePaymentScheduledetail.class has changed
Binary file modules/org.openbravo.advpaymentmngt/build/classes/org/openbravo/advpaymentmngt/modulescript/UpdateReconciliationProcessButtonValue.class has changed
Binary file modules/org.openbravo.advpaymentmngt/build/classes/org/openbravo/advpaymentmngt/modulescript/UpdateReconciliationStatementProcessedValue.class has changed
Binary file modules/org.openbravo.advpaymentmngt/build/classes/org/openbravo/advpaymentmngt/modulescript/UpdateRecordId2Value.class has changed
Binary file modules/org.openbravo.advpaymentmngt/build/classes/org/openbravo/advpaymentmngt/modulescript/UpdateTransactionBPExchangeRate.class has changed
Binary file modules/org.openbravo.advpaymentmngt/build/classes/org/openbravo/advpaymentmngt/modulescript/UpdateTransactionTypeTransactionTab.class has changed
Binary file modules/org.openbravo.advpaymentmngt/build/classes/org/openbravo/advpaymentmngt/modulescript/WrongPaymentsFromJournalLine.class has changed
--- a/modules/org.openbravo.advpaymentmngt/src-db/database/sourcedata/AD_MODULE.xml	Wed Aug 26 23:27:42 2015 +0200
+++ b/modules/org.openbravo.advpaymentmngt/src-db/database/sourcedata/AD_MODULE.xml	Fri Sep 04 09:30:06 2015 +0200
@@ -6,7 +6,7 @@
 <!--A918E3331C404B889D69AA9BFAFB23AC-->  <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
 <!--A918E3331C404B889D69AA9BFAFB23AC-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--A918E3331C404B889D69AA9BFAFB23AC-->  <NAME><![CDATA[Advanced Payables and Receivables Mngmt]]></NAME>
-<!--A918E3331C404B889D69AA9BFAFB23AC-->  <VERSION><![CDATA[3.0.27413]]></VERSION>
+<!--A918E3331C404B889D69AA9BFAFB23AC-->  <VERSION><![CDATA[3.0.27515]]></VERSION>
 <!--A918E3331C404B889D69AA9BFAFB23AC-->  <DESCRIPTION><![CDATA[Managing your finances with an ERP does not have to be difficult. Enjoy a radically improved user experience that combines the power of an enterprise grade financial application with the simplicity and ease of a web 2.0 personal accounting service.]]></DESCRIPTION>
 <!--A918E3331C404B889D69AA9BFAFB23AC-->  <HELP><![CDATA[Advanced Payables and Receivables Management simplifies and automates the business processes around the management of financial accounts, from the receipt and issue of payment, to the reconciliation of those events with bank statements.
 If you would like to help shape this module you are welcome to take part in the forum discussions or register feature requests or issues in the corresponding (Forum and Bug Tracking) sections in the Advanced Payables and Receivable project in the OB Forge.]]></HELP>
--- a/modules/org.openbravo.advpaymentmngt/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml	Wed Aug 26 23:27:42 2015 +0200
+++ b/modules/org.openbravo.advpaymentmngt/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml	Fri Sep 04 09:30:06 2015 +0200
@@ -7,7 +7,7 @@
 <!--89326AE95DAD449D85DFAB2C5B1C6683-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--89326AE95DAD449D85DFAB2C5B1C6683-->  <AD_MODULE_ID><![CDATA[A918E3331C404B889D69AA9BFAFB23AC]]></AD_MODULE_ID>
 <!--89326AE95DAD449D85DFAB2C5B1C6683-->  <AD_DEPENDENT_MODULE_ID><![CDATA[5EB4F15C80684ACA904756BDC12ADBE5]]></AD_DEPENDENT_MODULE_ID>
-<!--89326AE95DAD449D85DFAB2C5B1C6683-->  <STARTVERSION><![CDATA[2.1.27413]]></STARTVERSION>
+<!--89326AE95DAD449D85DFAB2C5B1C6683-->  <STARTVERSION><![CDATA[2.1.27515]]></STARTVERSION>
 <!--89326AE95DAD449D85DFAB2C5B1C6683-->  <ISINCLUDED><![CDATA[N]]></ISINCLUDED>
 <!--89326AE95DAD449D85DFAB2C5B1C6683-->  <DEPENDANT_MODULE_NAME><![CDATA[User Interface Selector]]></DEPENDANT_MODULE_NAME>
 <!--89326AE95DAD449D85DFAB2C5B1C6683-->  <DEPENDENCY_ENFORCEMENT><![CDATA[MAJOR]]></DEPENDENCY_ENFORCEMENT>
@@ -21,7 +21,7 @@
 <!--B97FC854C6DD41E692161585645A900F-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--B97FC854C6DD41E692161585645A900F-->  <AD_MODULE_ID><![CDATA[A918E3331C404B889D69AA9BFAFB23AC]]></AD_MODULE_ID>
 <!--B97FC854C6DD41E692161585645A900F-->  <AD_DEPENDENT_MODULE_ID><![CDATA[0]]></AD_DEPENDENT_MODULE_ID>
-<!--B97FC854C6DD41E692161585645A900F-->  <STARTVERSION><![CDATA[3.0.27413]]></STARTVERSION>
+<!--B97FC854C6DD41E692161585645A900F-->  <STARTVERSION><![CDATA[3.0.27515]]></STARTVERSION>
 <!--B97FC854C6DD41E692161585645A900F-->  <ISINCLUDED><![CDATA[N]]></ISINCLUDED>
 <!--B97FC854C6DD41E692161585645A900F-->  <DEPENDANT_MODULE_NAME><![CDATA[core]]></DEPENDANT_MODULE_NAME>
 <!--B97FC854C6DD41E692161585645A900F-->  <DEPENDENCY_ENFORCEMENT><![CDATA[MAJOR]]></DEPENDENCY_ENFORCEMENT>
--- a/modules/org.openbravo.advpaymentmngt/src-util/modulescript/src/org/openbravo/advpaymentmngt/modulescript/AlertsForWrongInvoices.java	Wed Aug 26 23:27:42 2015 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,97 +0,0 @@
-/* 
- *************************************************************************
- * 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) 2011-2015 Openbravo SLU
- * All Rights Reserved.
- * Contributor(s):  ______________________________________.
- *************************************************************************
- */
-package org.openbravo.advpaymentmngt.modulescript;
-
-import javax.servlet.ServletException;
-
-import org.openbravo.database.ConnectionProvider;
-import org.openbravo.modulescript.ModuleScript;
-
-public class AlertsForWrongInvoices extends ModuleScript {
-  
-  final static private String ALERT_RULE_SQL = "select distinct ad_column_identifier('c_invoice', fin_payment_schedule.c_invoice_id, 'en_US') as record_id, fin_payment_schedule.c_invoice_id  as referencekey_id, 0 as ad_role_id, null as ad_user_id, 'This invoice needs to be reactivated and processed again due to wrong payment info.' as description, 'Y' as isActive, fin_payment_schedule.ad_org_id, fin_payment_schedule.ad_client_id, now() as created, 0 as createdBy, now() as updated, 0 as updatedBy from fin_payment_schedule, fin_payment_scheduledetail where fin_payment_schedule.fin_payment_schedule_id = fin_payment_scheduledetail.fin_payment_schedule_invoice and fin_payment_scheduledetail.iscanceled = 'N' group by fin_payment_schedule.ad_org_id, fin_payment_schedule.ad_client_id, fin_payment_schedule.fin_payment_schedule_id, fin_payment_schedule.c_invoice_id, fin_payment_schedule.amount having fin_payment_schedule.amount <> sum(fin_payment_scheduledetail.amount + coalesce(fin_payment_scheduledetail.writeoffamt,0)) order by 1";
-
-  @Override
-  // Inserting Alerts for invoices which needs to be recalculated/processed
-  public void execute() {
-    try {      
-      ConnectionProvider cp = getConnectionProvider();
-      boolean isAlertsForWrongInvoicesExecuted = AlertsForWrongInvoicesData.isAlertsForWrongInvoicesExecuted(cp);
-      if (!isAlertsForWrongInvoicesExecuted) {
-        AlertsForWrongInvoicesData[] data = AlertsForWrongInvoicesData.select(cp);
-        for (AlertsForWrongInvoicesData wrongInvoice : data) {
-          createAlert(cp, wrongInvoice);
-        }
-        
-        // Fix sql for all the alert rules created not taking in account voided payments
-        AlertsForWrongInvoicesData[] oldAlertRules = AlertsForWrongInvoicesData.selectOldAlertRules(cp);
-        for (AlertsForWrongInvoicesData alertRule : oldAlertRules) {
-          // Check if exist any alert created using the wrong sql query. In that case fix the alert
-          AlertsForWrongInvoicesData[] oldAlerts = AlertsForWrongInvoicesData.selectVoidAlerts(cp, alertRule.adAlertruleId);
-          for (AlertsForWrongInvoicesData alert : oldAlerts) {
-            AlertsForWrongInvoicesData.updateAlertStatus(cp, "SOLVED", "Y", alert.adAlertId);
-          }
-          AlertsForWrongInvoicesData.updateAlertRuleSql(cp, ALERT_RULE_SQL, alertRule.adAlertruleId);
-        }
-        AlertsForWrongInvoicesData.createPreference(cp); 
-      }
-      
-    } catch (Exception e) {
-      handleError(e);
-    }
-  }
-  
-  private void createAlert(ConnectionProvider cp, AlertsForWrongInvoicesData wrongInvoice)
-      throws ServletException {
-    final String SALES_INVOICE_WINDOW = "167";
-    final String PURCHASE_INVOICE_WINDOW = "183";
-    final String SALES_INVOICE_TAB = "263";
-    final String PURCHASE_INVOICE_TAB = "290";
-    String ALERT_RULE = "Wrong purchase invoice. Wrong amount in payment plan detail";
-    String WindowInvoiceId = PURCHASE_INVOICE_TAB;
-    String strTabId = PURCHASE_INVOICE_TAB;
-    if ("Y".equals(wrongInvoice.issotrx)) {
-      strTabId = SALES_INVOICE_TAB;
-      WindowInvoiceId = SALES_INVOICE_WINDOW;
-      ALERT_RULE = "Wrong sales invoice. Wrong amount in payment plan detail";
-    }
-    String strName = "Invoice: '" + wrongInvoice.invoice
-        + "' needs to be reactivated and processed again due to wrong payment info.";
-    String oldAlertRuleId = AlertsForWrongInvoicesData.getAlertRuleId(cp, ALERT_RULE,
-        wrongInvoice.adClientId);
-    if (!AlertsForWrongInvoicesData.existsAlert(cp, oldAlertRuleId, wrongInvoice.cInvoiceId)) {
-      if (!AlertsForWrongInvoicesData.existsAlertRule(cp, ALERT_RULE, wrongInvoice.adClientId)) {
-        AlertsForWrongInvoicesData.insertAlertRule(cp, wrongInvoice.adClientId, ALERT_RULE,
-            strTabId, ALERT_RULE_SQL);
-        AlertsForWrongInvoicesData[] roles = AlertsForWrongInvoicesData.getRoleId(cp,
-            WindowInvoiceId, wrongInvoice.adClientId);
-        for (AlertsForWrongInvoicesData role : roles) {
-          AlertsForWrongInvoicesData.insertAlertRecipient(cp, wrongInvoice.adClientId,
-              wrongInvoice.adOrgId,
-              AlertsForWrongInvoicesData.getAlertRuleId(cp, ALERT_RULE, wrongInvoice.adClientId),
-              role.adRoleId);
-        }
-      }
-      String alertRuleId = AlertsForWrongInvoicesData.getAlertRuleId(cp, ALERT_RULE,
-          wrongInvoice.adClientId);
-      AlertsForWrongInvoicesData.insertAlert(cp, wrongInvoice.adClientId, wrongInvoice.adOrgId,
-          strName, alertRuleId, wrongInvoice.invoice, wrongInvoice.cInvoiceId);
-    }
-  }
-}
--- a/modules/org.openbravo.advpaymentmngt/src-util/modulescript/src/org/openbravo/advpaymentmngt/modulescript/AlertsForWrongInvoices_data.xsql	Wed Aug 26 23:27:42 2015 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,210 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-<!--
- ************************************************************************************
- * Copyright (C) 2011 - 2015 Openbravo S.L.U.
- * Licensed under the Openbravo Commercial License version 1.0
- * You may obtain a copy of the License at http://www.openbravo.com/legal/obcl.html
- * or in the legal folder of this module distribution.
- ************************************************************************************
--->
-<SqlClass name="AlertsForWrongInvoicesData" package="org.openbravo.advpaymentmngt.modulescript">
-   <SqlClassComment></SqlClassComment>
-   <SqlMethod name="select" type="preparedStatement" return="multiple">
-    <SqlMethodComment></SqlMethodComment>
-    <Sql>
-      <![CDATA[
-      select distinct fin_payment_schedule.ad_client_id, ad_column_identifier('c_invoice', fin_payment_schedule.c_invoice_id, 'en_US') as invoice, 
-      fin_payment_schedule.c_invoice_id, fin_payment_schedule.ad_org_id, c_invoice.issotrx, '' as ad_role_id, '' as ad_alertrule_id, '' as ad_alert_id
-      from c_invoice, fin_payment_schedule, fin_payment_scheduledetail
-      where c_invoice.c_invoice_id = fin_payment_schedule.c_invoice_id 
-      and fin_payment_schedule.fin_payment_schedule_id = fin_payment_scheduledetail.fin_payment_schedule_invoice
-      and fin_payment_scheduledetail.iscanceled = 'N'
-      group by fin_payment_schedule.ad_client_id, fin_payment_schedule.ad_org_id, c_invoice.issotrx, fin_payment_schedule.fin_payment_schedule_id, fin_payment_schedule.c_invoice_id, fin_payment_schedule.amount
-      having fin_payment_schedule.amount <> sum(fin_payment_scheduledetail.amount + coalesce(fin_payment_scheduledetail.writeoffamt,0))
-      order by 1, 2
-      ]]>
-    </Sql>
-  </SqlMethod>
-  <SqlMethod name="selectVoidAlerts" type="preparedStatement" return="multiple">
-    <SqlMethodComment>Identify alerts created not taking in account the void payment functionality.</SqlMethodComment>
-    <Sql>
-      <![CDATA[
-      select distinct fin_payment_schedule.c_invoice_id, ad_alert.ad_alert_id
-      from fin_payment_schedule, fin_payment_scheduledetail, ad_alert
-      where fin_payment_schedule.fin_payment_schedule_id = fin_payment_scheduledetail.fin_payment_schedule_invoice
-            and ad_alert.referencekey_id = fin_payment_schedule.c_invoice_id
-      and exists (select 1
-                  from fin_payment_scheduledetail psd
-                  where psd.fin_payment_scheduledetail_id = fin_payment_scheduledetail.fin_payment_scheduledetail_id
-                        and psd.iscanceled = 'Y')
-      and ad_alert.ad_alertrule_id = ?
-      group by fin_payment_schedule.fin_payment_schedule_id, fin_payment_schedule.c_invoice_id, fin_payment_schedule.amount, ad_alert.ad_alert_id
-      having fin_payment_schedule.amount <> sum(fin_payment_scheduledetail.amount + coalesce(fin_payment_scheduledetail.writeoffamt,0))
-      ]]>
-    </Sql>
-    <Parameter name="alertRuleId"/>
-  </SqlMethod>  
-  <SqlMethod name="existsAlertRule" type="preparedStatement" return="boolean">
-    <SqlMethodComment></SqlMethodComment>
-    <Sql><![CDATA[
-       SELECT COUNT(*) AS EXISTING
-       FROM AD_ALERTRULE
-       WHERE NAME = ?
-         AND AD_CLIENT_ID = ?
-      ]]>
-    </Sql>
-    <Parameter name="alertRule"/>
-    <Parameter name="client"/>
-  </SqlMethod>
-  <SqlMethod name="existsAlert" type="preparedStatement" return="boolean">
-    <SqlMethodComment></SqlMethodComment>
-    <Sql><![CDATA[
-       SELECT COUNT(*) AS EXISTING
-       FROM AD_ALERT
-       WHERE AD_ALERTRULE_ID = ?
-       AND REFERENCEKEY_ID = ?
-       AND ISFIXED = 'N'
-      ]]>
-    </Sql>
-    <Parameter name="alertRule"/>
-    <Parameter name="invoice"/>
-  </SqlMethod>
-  <SqlMethod name="getAlertRuleId" type="preparedStatement" return="string">
-    <SqlMethodComment></SqlMethodComment>
-    <Sql><![CDATA[
-       SELECT MAX(ad_alertrule_id) AS name
-       FROM AD_ALERTRULE
-       WHERE NAME LIKE ?
-         AND ISACTIVE = 'Y'
-         AND AD_CLIENT_ID = ?
-      ]]></Sql>
-    <Parameter name="name"/>
-    <Parameter name="client"/>
-  </SqlMethod>
-  <SqlMethod name="selectOldAlertRules" type="preparedStatement" return="multiple">
-    <SqlMethodComment></SqlMethodComment>
-    <Sql><![CDATA[
-       SELECT ad_alertrule_id
-       FROM AD_ALERTRULE
-       WHERE (name = 'Wrong purchase invoice. Wrong amount in payment plan detail' OR
-              name = 'Wrong sales invoice. Wrong amount in payment plan detail')
-         AND ISACTIVE = 'Y'
-         AND lower(SQL) not like '%iscanceled%'
-      ]]></Sql>
-  </SqlMethod>
-  <SqlMethod name="getRoleId" type="preparedStatement" return="multiple">
-    <SqlMethodComment></SqlMethodComment>
-    <Sql><![CDATA[
-       SELECT distinct ad_role_id
-       FROM ad_window_access
-       WHERE ad_window_id = ?
-       AND AD_CLIENT_ID = ?
-         AND ISACTIVE = 'Y'
-      ]]></Sql>
-    <Parameter name="window"/>
-    <Parameter name="clientId"/>
-  </SqlMethod>
-  <SqlMethod name="insertAlertRule" type="preparedStatement" return="rowcount">
-    <SqlMethodComment></SqlMethodComment>
-    <Sql><![CDATA[
-      INSERT INTO AD_ALERTRULE (
-        AD_ALERTRULE_ID, AD_CLIENT_ID, AD_ORG_ID,ISACTIVE,
-        CREATED, CREATEDBY,  UPDATED, UPDATEDBY,
-        NAME, AD_TAB_ID, FILTERCLAUSE, TYPE,
-        SQL
-      ) VALUES (
-        get_uuid(), ?, '0', 'Y',
-        now(), '100', now(), '100',
-        ?, ?, '', 'D',
-        ?
-      )
-    ]]></Sql>
-    <Parameter name="clientId"/>
-    <Parameter name="name"/>
-    <Parameter name="tabId"/>
-    <Parameter name="sql"/>
-  </SqlMethod>
-  <SqlMethod name="insertAlert" type="preparedStatement" return="rowcount">
-    <SqlMethodComment></SqlMethodComment>
-    <Sql><![CDATA[
-      INSERT INTO AD_Alert (
-        AD_Alert_ID, AD_Client_ID, AD_Org_ID, IsActive,
-        Created, CreatedBy, Updated, UpdatedBy,
-        Description, AD_AlertRule_ID, Record_Id, Referencekey_ID
-      ) VALUES (
-        get_uuid(), ?, ?, 'Y',
-        NOW(), '0', NOW(), '0',
-        ?, ?, ?, ?)
-      ]]>
-    </Sql>
-    <Parameter name="client"/>
-    <Parameter name="org"/>
-    <Parameter name="description" />
-    <Parameter name="adAlertRuleId" />
-    <Parameter name="recordId" />
-    <Parameter name="referencekey_id" />
-  </SqlMethod>
-  <SqlMethod name="insertAlertRecipient" type="preparedStatement" return="rowcount">
-    <SqlMethodComment></SqlMethodComment>
-    <Sql><![CDATA[
-    INSERT INTO ad_alertrecipient(
-            ad_user_id, ad_client_id, ad_org_id, isactive, created, createdby, 
-            updated, updatedby, ad_alertrecipient_id, ad_alertrule_id, ad_role_id, 
-            sendemail)
-    VALUES (null, ?, ?, 'Y', now(), '100', 
-            now(), '100', get_uuid(), ?, ?, 
-            'N')
-      ]]>
-    </Sql>
-    <Parameter name="client"/>
-    <Parameter name="org"/>
-    <Parameter name="adAlertRuleId" />
-    <Parameter name="role" />
-  </SqlMethod>
-  <SqlMethod name="updateAlertRuleSql" type="preparedStatement" return="rowcount">
-    <SqlMethodComment></SqlMethodComment>
-    <Sql><![CDATA[
-      UPDATE ad_alertrule SET SQL = ? WHERE ad_alertrule_id = ?
-      ]]>
-    </Sql>
-    <Parameter name="sql"/>
-    <Parameter name="adAlertRuleId"/>
-  </SqlMethod>
-  <SqlMethod name="updateAlertStatus" type="preparedStatement" return="rowcount">
-    <SqlMethodComment></SqlMethodComment>
-    <Sql><![CDATA[
-      UPDATE ad_alert SET status = ?, isfixed = ? WHERE ad_alert_id = ?
-      ]]>
-    </Sql>
-    <Parameter name="status"/>
-    <Parameter name="isfixed"/>
-    <Parameter name="alertId"/>
-  </SqlMethod>
-  <SqlMethod name="isAlertsForWrongInvoicesExecuted" type="preparedStatement" return="boolean">
-    <SqlMethodComment></SqlMethodComment>
-    <Sql>
-      <![CDATA[
-        SELECT count(*) as exist
-        FROM DUAL
-        WHERE EXISTS (SELECT 1 FROM ad_preference
-                      WHERE attribute = 'AlertsForWrongInvoices')
-      ]]>
-    </Sql>
-  </SqlMethod>
-  <SqlMethod name="createPreference" type="preparedStatement" return="rowcount">
-    <SqlMethodComment></SqlMethodComment>
-    <Sql>
-      <![CDATA[
-        INSERT INTO ad_preference (
-          ad_preference_id, ad_client_id, ad_org_id, isactive,
-          createdby, created, updatedby, updated,
-          attribute
-        ) VALUES (
-          get_uuid(), '0', '0', 'Y',
-          '0', NOW(), '0', NOW(),
-          'AlertsForWrongInvoices'
-        )
-      ]]>
-    </Sql>
-  </SqlMethod>
-</SqlClass>
--- a/modules/org.openbravo.advpaymentmngt/src-util/modulescript/src/org/openbravo/advpaymentmngt/modulescript/AlertsForWrongOrders.java	Wed Aug 26 23:27:42 2015 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,84 +0,0 @@
-/* 
- *************************************************************************
- * 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) 2014 Openbravo SLU
- * All Rights Reserved.
- * Contributor(s):  ______________________________________.
- *************************************************************************
- */
-package org.openbravo.advpaymentmngt.modulescript;
-
-import javax.servlet.ServletException;
-
-import org.openbravo.database.ConnectionProvider;
-import org.openbravo.modulescript.ModuleScript;
-
-public class AlertsForWrongOrders extends ModuleScript {
-  
-  final static private String ALERT_RULE_SQL = "select distinct ad_column_identifier('C_Order', fin_payment_schedule.c_order_id, 'en_US') as record_id, fin_payment_schedule.c_order_id  as referencekey_id, 0 as ad_role_id, null as ad_user_id, 'This order needs to be checked due to wrong payment info.' as description, 'Y' as isActive, fin_payment_schedule.ad_org_id, fin_payment_schedule.ad_client_id, now() as created, 0 as createdBy, now() as updated, 0 as updatedBy from fin_payment_schedule, fin_payment_scheduledetail where fin_payment_schedule.fin_payment_schedule_id = fin_payment_scheduledetail.fin_payment_schedule_order and fin_payment_scheduledetail.iscanceled = 'N' and fin_payment_scheduledetail.fin_payment_detail_id IS NOT NULL group by fin_payment_schedule.ad_org_id, fin_payment_schedule.ad_client_id, fin_payment_schedule.fin_payment_schedule_id, fin_payment_schedule.c_order_id, fin_payment_schedule.paidamt having fin_payment_schedule.paidamt <> sum(fin_payment_scheduledetail.amount + coalesce(fin_payment_scheduledetail.writeoffamt,0)) order by 1";
-  
-  @Override
-  // Inserting Alerts for orders which needs to be recalculated/processed
-  public void execute() {
-    try {
-      ConnectionProvider cp = getConnectionProvider();
-      AlertsForWrongOrdersData[] data = AlertsForWrongOrdersData.select(cp);
-      for (AlertsForWrongOrdersData wrongOrder : data) {
-        createAlert(cp, wrongOrder);
-      }
-     } catch (Exception e) {
-      handleError(e);
-    }
-  }
-
-  private void createAlert(ConnectionProvider cp, AlertsForWrongOrdersData wrongOrder)
-	      throws ServletException {
-	  	final String SALES_ORDER_WINDOW = "143";
-	    final String PURCHASE_ORDER_WINDOW = "181";
-	    final String SALES_ORDER_TAB = "186";
-	    final String PURCHASE_ORDER_TAB = "294";
-	    String WindowOrderId = PURCHASE_ORDER_WINDOW;
-	    String strTabId = PURCHASE_ORDER_TAB;
-	    String ALERT_RULE = "Wrong Purchase Order Payment Plan";
-	    if ("Y".equals(wrongOrder.issotrx)) {
-	      strTabId = SALES_ORDER_TAB;
-	      WindowOrderId = SALES_ORDER_WINDOW;	    
-	      ALERT_RULE = "Wrong Sales Order Payment Plan";
-	    }
-	    String strName = "Order: '" + wrongOrder.orderinfo
-	            + "' needs to be checked due to wrong payment info.";
-	    String oldAlertRuleId = AlertsForWrongOrdersData.getAlertRuleId(cp, ALERT_RULE,
-	            wrongOrder.adClientId);
-	    if (!AlertsForWrongOrdersData.existsAlert(cp, oldAlertRuleId, wrongOrder.cOrderId)) {
-	    if (!AlertsForWrongOrdersData.existsAlertRule(cp, ALERT_RULE, wrongOrder.adClientId)) {
-	    	AlertsForWrongOrdersData.insertAlertRule(cp, wrongOrder.adClientId, ALERT_RULE, strTabId, "");
-	        AlertsForWrongOrdersData[] roles = AlertsForWrongOrdersData.getRoleId(cp,
-	            WindowOrderId, wrongOrder.adClientId);
-	        for (AlertsForWrongOrdersData role : roles) {
-	          AlertsForWrongOrdersData.insertAlertRecipient(cp, wrongOrder.adClientId,
-	              wrongOrder.adOrgId,
-	              AlertsForWrongOrdersData.getAlertRuleId(cp, ALERT_RULE, wrongOrder.adClientId),
-	              role.adRoleId);
-	        }
-	      } else {
-	        AlertsForWrongOrdersData.updateAlertRule(cp, ALERT_RULE, wrongOrder.adClientId);
-	      }
-	    	String alertRuleId = AlertsForWrongOrdersData.getAlertRuleId(cp, ALERT_RULE,
-	            wrongOrder.adClientId);
-	      AlertsForWrongOrdersData.insertAlert(cp, wrongOrder.adClientId, wrongOrder.adOrgId,
-	          strName, alertRuleId, wrongOrder.orderinfo, wrongOrder.cOrderId);
-	    } else {
-              AlertsForWrongOrdersData.updateAlertRule(cp, ALERT_RULE, wrongOrder.adClientId);
-            }
-  	}
-}
--- a/modules/org.openbravo.advpaymentmngt/src-util/modulescript/src/org/openbravo/advpaymentmngt/modulescript/AlertsForWrongOrders_data.xsql	Wed Aug 26 23:27:42 2015 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,148 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-<!--
- ************************************************************************************
- * Copyright (C) 2014-2015 Openbravo S.L.U.
- * Licensed under the Openbravo Commercial License version 1.0
- * You may obtain a copy of the License at http://www.openbravo.com/legal/obcl.html
- * or in the legal folder of this module distribution.
- ************************************************************************************
--->
-<SqlClass name="AlertsForWrongOrdersData" package="org.openbravo.advpaymentmngt.modulescript">
-   <SqlClassComment></SqlClassComment>
-   <SqlMethod name="select" type="preparedStatement" return="multiple">
-    <SqlMethodComment></SqlMethodComment>
-    <Sql>
-      <![CDATA[
-      select distinct fin_payment_schedule.ad_client_id, ad_column_identifier('C_Order', fin_payment_schedule.c_order_id, 'en_US') as orderinfo, 
-      fin_payment_schedule.c_order_id, fin_payment_schedule.ad_org_id,  c_order.issotrx, '' as ad_role_id, '' as ad_alertrule_id, '' as ad_alert_id
-      from c_order, fin_payment_schedule, fin_payment_scheduledetail 
-      where c_order.c_order_id = fin_payment_schedule.c_order_id
-      and fin_payment_schedule.fin_payment_schedule_id = fin_payment_scheduledetail.fin_payment_schedule_order 
-      and fin_payment_scheduledetail.isinvoicepaid = 'Y'
-      and fin_payment_scheduledetail.fin_payment_detail_id IS NOT NULL 
-      group by fin_payment_schedule.ad_org_id, fin_payment_schedule.ad_client_id, c_order.issotrx, fin_payment_schedule.fin_payment_schedule_id, 
-      fin_payment_schedule.c_order_id, fin_payment_schedule.paidamt 
-      having fin_payment_schedule.paidamt <> sum(fin_payment_scheduledetail.amount + coalesce(fin_payment_scheduledetail.writeoffamt,0)) 
-      order by 1, 2
-      ]]>
-    </Sql>
-  </SqlMethod>
-  <SqlMethod name="existsAlertRule" type="preparedStatement" return="boolean">
-    <SqlMethodComment></SqlMethodComment>
-    <Sql><![CDATA[
-       SELECT COUNT(*) AS EXISTING
-       FROM AD_ALERTRULE
-       WHERE NAME = ?
-         AND ISACTIVE = 'Y'
-         AND AD_CLIENT_ID = ?
-      ]]>
-    </Sql>
-    <Parameter name="alertRule"/>
-    <Parameter name="client"/>
-  </SqlMethod>
-  <SqlMethod name="updateAlertRule" type="preparedStatement" return="rowcount">
-    <SqlMethodComment></SqlMethodComment>
-    <Sql>
-      <![CDATA[
-        UPDATE AD_AlertRule
-        SET SQL='', TYPE='E' WHERE NAME = ? AND AD_Client_ID = ?
-      ]]>
-    </Sql>
-    <Parameter name="name"/>
-    <Parameter name="clientId"/>
-  </SqlMethod>
-  <SqlMethod name="existsAlert" type="preparedStatement" return="boolean">
-    <SqlMethodComment></SqlMethodComment>
-    <Sql><![CDATA[
-       SELECT COUNT(*) AS EXISTING
-       FROM AD_ALERT
-       WHERE AD_ALERTRULE_ID = ?
-       AND REFERENCEKEY_ID = ?
-       AND ISFIXED = 'N'
-      ]]>
-    </Sql>
-    <Parameter name="alertRule"/>
-    <Parameter name="order"/>
-  </SqlMethod>
-  <SqlMethod name="getAlertRuleId" type="preparedStatement" return="string">
-    <SqlMethodComment></SqlMethodComment>
-    <Sql><![CDATA[
-       SELECT MAX(ad_alertrule_id) AS name
-       FROM AD_ALERTRULE
-       WHERE NAME LIKE ?
-         AND ISACTIVE = 'Y'
-         AND AD_CLIENT_ID = ?
-      ]]></Sql>
-    <Parameter name="name"/>
-    <Parameter name="client"/>
-  </SqlMethod>  
-  <SqlMethod name="getRoleId" type="preparedStatement" return="multiple">
-    <SqlMethodComment></SqlMethodComment>
-    <Sql><![CDATA[
-       SELECT distinct ad_role_id
-       FROM ad_window_access
-       WHERE ad_window_id = ?
-       AND AD_CLIENT_ID = ?
-         AND ISACTIVE = 'Y'
-      ]]></Sql>
-    <Parameter name="window"/>
-    <Parameter name="clientId"/>
-  </SqlMethod>
-  <SqlMethod name="insertAlertRule" type="preparedStatement" return="rowcount">
-    <SqlMethodComment></SqlMethodComment>
-    <Sql><![CDATA[
-      INSERT INTO AD_ALERTRULE (
-        AD_ALERTRULE_ID, AD_CLIENT_ID, AD_ORG_ID,ISACTIVE,
-        CREATED, CREATEDBY,  UPDATED, UPDATEDBY,
-        NAME, AD_TAB_ID, FILTERCLAUSE, TYPE,
-        SQL
-      ) VALUES (
-        get_uuid(), ?, '0', 'Y',
-        now(), '100', now(), '100',
-        ?, ?, '', 'E',
-        ?
-      )
-    ]]></Sql>
-    <Parameter name="clientId"/>
-    <Parameter name="name"/>
-    <Parameter name="tabId"/>
-    <Parameter name="sql"/>
-  </SqlMethod>
-  <SqlMethod name="insertAlert" type="preparedStatement" return="rowcount">
-    <SqlMethodComment></SqlMethodComment>
-    <Sql><![CDATA[
-      INSERT INTO AD_Alert (
-        AD_Alert_ID, AD_Client_ID, AD_Org_ID, IsActive,
-        Created, CreatedBy, Updated, UpdatedBy,
-        Description, AD_AlertRule_ID, Record_Id, Referencekey_ID
-      ) VALUES (
-        get_uuid(), ?, ?, 'Y',
-        NOW(), '0', NOW(), '0',
-        ?, ?, ?, ?)
-      ]]>
-    </Sql>
-    <Parameter name="client"/>
-    <Parameter name="org"/>
-    <Parameter name="description" />
-    <Parameter name="adAlertRuleId" />
-    <Parameter name="recordId" />
-    <Parameter name="referencekey_id" />
-  </SqlMethod>
-  <SqlMethod name="insertAlertRecipient" type="preparedStatement" return="rowcount">
-    <SqlMethodComment></SqlMethodComment>
-    <Sql><![CDATA[
-    INSERT INTO ad_alertrecipient(
-            ad_user_id, ad_client_id, ad_org_id, isactive, created, createdby, 
-            updated, updatedby, ad_alertrecipient_id, ad_alertrule_id, ad_role_id, 
-            sendemail)
-    VALUES (null, ?, ?, 'Y', now(), '100', 
-            now(), '100', get_uuid(), ?, ?, 
-            'N')
-      ]]>
-    </Sql>
-    <Parameter name="client"/>
-    <Parameter name="org"/>
-    <Parameter name="adAlertRuleId" />
-    <Parameter name="role" />
-  </SqlMethod>  
-</SqlClass>
--- a/modules/org.openbravo.advpaymentmngt/src-util/modulescript/src/org/openbravo/advpaymentmngt/modulescript/CreateAccountingConfiguration.java	Wed Aug 26 23:27:42 2015 +0200
+++ b/modules/org.openbravo.advpaymentmngt/src-util/modulescript/src/org/openbravo/advpaymentmngt/modulescript/CreateAccountingConfiguration.java	Fri Sep 04 09:30:06 2015 +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) 2010-2011 Openbravo SLU
+ * All portions are Copyright (C) 2010-2015 Openbravo SLU
  * All Rights Reserved.
  * Contributor(s):  ______________________________________.
  *************************************************************************
@@ -27,6 +27,8 @@
 
 import org.openbravo.database.ConnectionProvider;
 import org.openbravo.modulescript.ModuleScript;
+import org.openbravo.modulescript.ModuleScriptExecutionLimits;
+import org.openbravo.modulescript.OpenbravoVersion;
 
 public class CreateAccountingConfiguration extends ModuleScript {
   private static final Logger log4j = Logger.getLogger(CreateAccountingConfiguration.class);
@@ -49,6 +51,12 @@
       handleError(e);
     }
   }
+  
+  @Override
+  protected ModuleScriptExecutionLimits getModuleScriptExecutionLimits() {
+    return new ModuleScriptExecutionLimits("A918E3331C404B889D69AA9BFAFB23AC", null, 
+        new OpenbravoVersion(3,0,19579));
+  }
 
   void createAcctSchemaTables(ConnectionProvider cp) throws Exception {
     CreateAccountingConfigurationData[] data = CreateAccountingConfigurationData
--- a/modules/org.openbravo.advpaymentmngt/src-util/modulescript/src/org/openbravo/advpaymentmngt/modulescript/CreateDocumentNoSequence.java	Wed Aug 26 23:27:42 2015 +0200
+++ b/modules/org.openbravo.advpaymentmngt/src-util/modulescript/src/org/openbravo/advpaymentmngt/modulescript/CreateDocumentNoSequence.java	Fri Sep 04 09:30:06 2015 +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) 2010-2011 Openbravo SLU
+ * All portions are Copyright (C) 2010-2015 Openbravo SLU
  * All Rights Reserved.
  * Contributor(s):  ______________________________________.
  *************************************************************************
@@ -27,6 +27,8 @@
 
 import org.openbravo.database.ConnectionProvider;
 import org.openbravo.modulescript.ModuleScript;
+import org.openbravo.modulescript.ModuleScriptExecutionLimits;
+import org.openbravo.modulescript.OpenbravoVersion;
 
 public class CreateDocumentNoSequence extends ModuleScript {
 
@@ -44,4 +46,10 @@
       handleError(e);
     }
   }
+  
+  @Override
+  protected ModuleScriptExecutionLimits getModuleScriptExecutionLimits() {
+    return new ModuleScriptExecutionLimits("A918E3331C404B889D69AA9BFAFB23AC", null, 
+        new OpenbravoVersion(3,0,9091));
+  }
 }
--- a/modules/org.openbravo.advpaymentmngt/src-util/modulescript/src/org/openbravo/advpaymentmngt/modulescript/DeleteWrongTransactions.java	Wed Aug 26 23:27:42 2015 +0200
+++ b/modules/org.openbravo.advpaymentmngt/src-util/modulescript/src/org/openbravo/advpaymentmngt/modulescript/DeleteWrongTransactions.java	Fri Sep 04 09:30:06 2015 +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) 2014 Openbravo SLU
+ * All portions are Copyright (C) 2014-2015 Openbravo SLU
  * All Rights Reserved.
  * Contributor(s):  ______________________________________.
  ************************************************************************
@@ -23,18 +23,20 @@
 import org.openbravo.utils.FormatUtilities;
 import org.openbravo.database.ConnectionProvider;
 import org.openbravo.modulescript.ModuleScript;
+import org.openbravo.modulescript.ModuleScriptExecutionLimits;
+import org.openbravo.modulescript.OpenbravoVersion;
 
 public class DeleteWrongTransactions extends ModuleScript {
 
   @Override
   public void execute() {
-  try {
-    ConnectionProvider cp = getConnectionProvider();
-    Connection conn = cp.getTransactionConnection();
+    try {
+      ConnectionProvider cp = getConnectionProvider();
+      Connection conn = cp.getTransactionConnection();
       try {
-        boolean isDeleteWrongTransactionsExecuted= DeleteWrongTransactionsData.isDeleteWrongTransactionsExecuted(cp);
-        if (!isDeleteWrongTransactionsExecuted){
-          for (DeleteWrongTransactionsData paymentTransaction : DeleteWrongTransactionsData.selectPaymentTransactions(cp)) {    
+        boolean isDeleteWrongTransactionsExecuted = DeleteWrongTransactionsData.isDeleteWrongTransactionsExecuted(cp);
+        if (!isDeleteWrongTransactionsExecuted) {
+          for (DeleteWrongTransactionsData paymentTransaction : DeleteWrongTransactionsData.selectPaymentTransactions(cp)) {
             DeleteWrongTransactionsData.updatePaymentStatus(conn, cp, paymentTransaction.finPaymentId);          
           }
           DeleteWrongTransactionsData.updateWrongTransactions(conn, cp);
@@ -42,14 +44,19 @@
           DeleteWrongTransactionsData.createPreference(conn, cp); 
         } 
         cp.releaseCommitConnection(conn);
- 
       } catch (Exception e) {
-      cp.releaseRollbackConnection(conn);
+        cp.releaseRollbackConnection(conn);
+        handleError(e);
+      }
+    } catch (Exception e) {
       handleError(e);
-      }
- } catch (Exception e) {
-   handleError(e);
- }
-}
+    }
+  }
+  
+  @Override
+  protected ModuleScriptExecutionLimits getModuleScriptExecutionLimits() {
+    return new ModuleScriptExecutionLimits("A918E3331C404B889D69AA9BFAFB23AC", null, 
+        new OpenbravoVersion(3,0,24735));
+  }
 }
 
--- a/modules/org.openbravo.advpaymentmngt/src-util/modulescript/src/org/openbravo/advpaymentmngt/modulescript/InitializeAPRMReadyPreference.java	Wed Aug 26 23:27:42 2015 +0200
+++ b/modules/org.openbravo.advpaymentmngt/src-util/modulescript/src/org/openbravo/advpaymentmngt/modulescript/InitializeAPRMReadyPreference.java	Fri Sep 04 09:30:06 2015 +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) 2011 Openbravo SLU
+ * All portions are Copyright (C) 2011-2015 Openbravo SLU
  * All Rights Reserved.
  * Contributor(s):  ______________________________________.
  *************************************************************************
@@ -21,6 +21,8 @@
 import org.openbravo.database.ConnectionProvider;
 import org.openbravo.modulescript.ModuleScript;
 
+// FIXME: https://issues.openbravo.com/view.php?id=30706
+// APRM process should create preference properly and modulescript should be removed
 public class InitializeAPRMReadyPreference extends ModuleScript {
 
   /**
--- a/modules/org.openbravo.advpaymentmngt/src-util/modulescript/src/org/openbravo/advpaymentmngt/modulescript/Issue28591UpdatePSD.java	Wed Aug 26 23:27:42 2015 +0200
+++ b/modules/org.openbravo.advpaymentmngt/src-util/modulescript/src/org/openbravo/advpaymentmngt/modulescript/Issue28591UpdatePSD.java	Fri Sep 04 09:30:06 2015 +0200
@@ -20,6 +20,9 @@
 
 import org.openbravo.database.ConnectionProvider;
 import org.openbravo.modulescript.ModuleScript;
+import org.openbravo.modulescript.ModuleScriptExecutionLimits;
+import org.openbravo.modulescript.OpenbravoVersion;
+
 import java.math.BigDecimal;
 
 public class Issue28591UpdatePSD extends ModuleScript {
@@ -47,4 +50,10 @@
       handleError(e);
     }
  }
+  
+  @Override
+  protected ModuleScriptExecutionLimits getModuleScriptExecutionLimits() {
+    return new ModuleScriptExecutionLimits("A918E3331C404B889D69AA9BFAFB23AC", new OpenbravoVersion(3,0,22941), 
+        new OpenbravoVersion(3,0,25949));
+  }
 }
\ No newline at end of file
--- a/modules/org.openbravo.advpaymentmngt/src-util/modulescript/src/org/openbravo/advpaymentmngt/modulescript/LinkCreditPayments.java	Wed Aug 26 23:27:42 2015 +0200
+++ b/modules/org.openbravo.advpaymentmngt/src-util/modulescript/src/org/openbravo/advpaymentmngt/modulescript/LinkCreditPayments.java	Fri Sep 04 09:30:06 2015 +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) 2011 Openbravo SLU
+ * All portions are Copyright (C) 2011-2015 Openbravo SLU
  * All Rights Reserved.
  * Contributor(s):  ______________________________________.
  *************************************************************************
@@ -25,6 +25,8 @@
 import org.apache.log4j.Logger;
 import org.openbravo.database.ConnectionProvider;
 import org.openbravo.modulescript.ModuleScript;
+import org.openbravo.modulescript.ModuleScriptExecutionLimits;
+import org.openbravo.modulescript.OpenbravoVersion;
 
 public class LinkCreditPayments extends ModuleScript {
   private static final Logger log4j = Logger.getLogger(LinkCreditPayments.class);
@@ -44,6 +46,12 @@
     }
 
   }
+  
+  @Override
+  protected ModuleScriptExecutionLimits getModuleScriptExecutionLimits() {
+    return new ModuleScriptExecutionLimits("A918E3331C404B889D69AA9BFAFB23AC", null, 
+        new OpenbravoVersion(3,0,15853));
+  }
 
   private void linkCreditPayments(ConnectionProvider cp, String cbPartnerId, String cbPartnerName,
       String isReceipt) throws ServletException {
--- a/modules/org.openbravo.advpaymentmngt/src-util/modulescript/src/org/openbravo/advpaymentmngt/modulescript/UpdateCustomerBalance.java	Wed Aug 26 23:27:42 2015 +0200
+++ b/modules/org.openbravo.advpaymentmngt/src-util/modulescript/src/org/openbravo/advpaymentmngt/modulescript/UpdateCustomerBalance.java	Fri Sep 04 09:30:06 2015 +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) 2011-2014 Openbravo SLU
+ * All portions are Copyright (C) 2011-2015 Openbravo SLU
  * All Rights Reserved.
  * Contributor(s):  ______________________________________.
  *************************************************************************
@@ -20,6 +20,8 @@
 
 import org.openbravo.database.ConnectionProvider;
 import org.openbravo.modulescript.ModuleScript;
+import org.openbravo.modulescript.ModuleScriptExecutionLimits;
+import org.openbravo.modulescript.OpenbravoVersion;
 
 public class UpdateCustomerBalance extends ModuleScript {
 
@@ -53,4 +55,10 @@
       handleError(e);
     }
   }
+  
+  @Override
+  protected ModuleScriptExecutionLimits getModuleScriptExecutionLimits() {
+    return new ModuleScriptExecutionLimits("A918E3331C404B889D69AA9BFAFB23AC", null, 
+        new OpenbravoVersion(3,0,26074));
+  }
 }
--- a/modules/org.openbravo.advpaymentmngt/src-util/modulescript/src/org/openbravo/advpaymentmngt/modulescript/UpdateGeneratedUsedCreditColumns.java	Wed Aug 26 23:27:42 2015 +0200
+++ b/modules/org.openbravo.advpaymentmngt/src-util/modulescript/src/org/openbravo/advpaymentmngt/modulescript/UpdateGeneratedUsedCreditColumns.java	Fri Sep 04 09:30:06 2015 +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) 2010-2011 Openbravo SLU
+ * All portions are Copyright (C) 2010-2015 Openbravo SLU
  * All Rights Reserved.
  * Contributor(s):  ______________________________________.
  *************************************************************************
@@ -27,6 +27,8 @@
 
 import org.openbravo.database.ConnectionProvider;
 import org.openbravo.modulescript.ModuleScript;
+import org.openbravo.modulescript.ModuleScriptExecutionLimits;
+import org.openbravo.modulescript.OpenbravoVersion;
 
 public class UpdateGeneratedUsedCreditColumns extends ModuleScript {
 
@@ -48,4 +50,10 @@
       handleError(e);
     }
   }
+  
+  @Override
+  protected ModuleScriptExecutionLimits getModuleScriptExecutionLimits() {
+    return new ModuleScriptExecutionLimits("A918E3331C404B889D69AA9BFAFB23AC", null, 
+        new OpenbravoVersion(3,0,9091));
+  }
 }
--- a/modules/org.openbravo.advpaymentmngt/src-util/modulescript/src/org/openbravo/advpaymentmngt/modulescript/UpdateMatchedDocument.java	Wed Aug 26 23:27:42 2015 +0200
+++ b/modules/org.openbravo.advpaymentmngt/src-util/modulescript/src/org/openbravo/advpaymentmngt/modulescript/UpdateMatchedDocument.java	Fri Sep 04 09:30:06 2015 +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) 2014 Openbravo SLU
+ * All portions are Copyright (C) 2014-2015 Openbravo SLU
  * All Rights Reserved.
  * Contributor(s):  ______________________________________.
  *************************************************************************
@@ -20,6 +20,8 @@
 
 import org.openbravo.database.ConnectionProvider;
 import org.openbravo.modulescript.ModuleScript;
+import org.openbravo.modulescript.ModuleScriptExecutionLimits;
+import org.openbravo.modulescript.OpenbravoVersion;
 
 public class UpdateMatchedDocument extends ModuleScript {
 
@@ -45,4 +47,10 @@
       handleError(e);
     }
   }
+  
+  @Override
+  protected ModuleScriptExecutionLimits getModuleScriptExecutionLimits() {
+    return new ModuleScriptExecutionLimits("A918E3331C404B889D69AA9BFAFB23AC", null, 
+        new OpenbravoVersion(3,0,24640));
+  }
 }
--- a/modules/org.openbravo.advpaymentmngt/src-util/modulescript/src/org/openbravo/advpaymentmngt/modulescript/UpdatePaymentProcessedValue.java	Wed Aug 26 23:27:42 2015 +0200
+++ b/modules/org.openbravo.advpaymentmngt/src-util/modulescript/src/org/openbravo/advpaymentmngt/modulescript/UpdatePaymentProcessedValue.java	Fri Sep 04 09:30:06 2015 +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) 2012 Openbravo SLU
+ * All portions are Copyright (C) 2012-2015 Openbravo SLU
  * All Rights Reserved.
  * Contributor(s):  ______________________________________.
  *************************************************************************
@@ -20,6 +20,8 @@
 
 import org.openbravo.database.ConnectionProvider;
 import org.openbravo.modulescript.ModuleScript;
+import org.openbravo.modulescript.ModuleScriptExecutionLimits;
+import org.openbravo.modulescript.OpenbravoVersion;
 
 public class UpdatePaymentProcessedValue extends ModuleScript {
 
@@ -32,4 +34,10 @@
       handleError(e);
     }
   }
+  
+  @Override
+  protected ModuleScriptExecutionLimits getModuleScriptExecutionLimits() {
+    return new ModuleScriptExecutionLimits("A918E3331C404B889D69AA9BFAFB23AC", null, 
+        new OpenbravoVersion(3,0,17906));
+  }
 }
--- a/modules/org.openbravo.advpaymentmngt/src-util/modulescript/src/org/openbravo/advpaymentmngt/modulescript/UpdatePaymentScheduledetail.java	Wed Aug 26 23:27:42 2015 +0200
+++ b/modules/org.openbravo.advpaymentmngt/src-util/modulescript/src/org/openbravo/advpaymentmngt/modulescript/UpdatePaymentScheduledetail.java	Fri Sep 04 09:30:06 2015 +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) 2014 Openbravo SLU
+ * All portions are Copyright (C) 2014-2015 Openbravo SLU
  * All Rights Reserved.
  * Contributor(s):  ______________________________________.
  *************************************************************************
@@ -20,6 +20,9 @@
 
 import org.openbravo.database.ConnectionProvider;
 import org.openbravo.modulescript.ModuleScript;
+import org.openbravo.modulescript.ModuleScriptExecutionLimits;
+import org.openbravo.modulescript.OpenbravoVersion;
+
 import java.math.BigDecimal;
 
 public class UpdatePaymentScheduledetail extends ModuleScript {
@@ -42,4 +45,10 @@
       handleError(e);
     }
  }
+  
+  @Override
+  protected ModuleScriptExecutionLimits getModuleScriptExecutionLimits() {
+    return new ModuleScriptExecutionLimits("A918E3331C404B889D69AA9BFAFB23AC", null, 
+        new OpenbravoVersion(3,0,22942));
+  }
 }
\ No newline at end of file
--- a/modules/org.openbravo.advpaymentmngt/src-util/modulescript/src/org/openbravo/advpaymentmngt/modulescript/UpdateReconciliationProcessButtonValue.java	Wed Aug 26 23:27:42 2015 +0200
+++ b/modules/org.openbravo.advpaymentmngt/src-util/modulescript/src/org/openbravo/advpaymentmngt/modulescript/UpdateReconciliationProcessButtonValue.java	Fri Sep 04 09:30:06 2015 +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) 2011 Openbravo SLU
+ * All portions are Copyright (C) 2011-2015 Openbravo SLU
  * All Rights Reserved.
  * Contributor(s):  ______________________________________.
  *************************************************************************
@@ -27,6 +27,8 @@
 
 import org.openbravo.database.ConnectionProvider;
 import org.openbravo.modulescript.ModuleScript;
+import org.openbravo.modulescript.ModuleScriptExecutionLimits;
+import org.openbravo.modulescript.OpenbravoVersion;
 
 public class UpdateReconciliationProcessButtonValue extends ModuleScript {
 
@@ -40,4 +42,10 @@
       handleError(e);
     }
   }
+  
+  @Override
+  protected ModuleScriptExecutionLimits getModuleScriptExecutionLimits() {
+    return new ModuleScriptExecutionLimits("A918E3331C404B889D69AA9BFAFB23AC", null, 
+        new OpenbravoVersion(3,0,14201));
+  }
 }
--- a/modules/org.openbravo.advpaymentmngt/src-util/modulescript/src/org/openbravo/advpaymentmngt/modulescript/UpdateReconciliationStatementProcessedValue.java	Wed Aug 26 23:27:42 2015 +0200
+++ b/modules/org.openbravo.advpaymentmngt/src-util/modulescript/src/org/openbravo/advpaymentmngt/modulescript/UpdateReconciliationStatementProcessedValue.java	Fri Sep 04 09:30:06 2015 +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) 2014 Openbravo SLU
+ * All portions are Copyright (C) 2014-2015 Openbravo SLU
  * All Rights Reserved.
  * Contributor(s):  ______________________________________.
  *************************************************************************
@@ -20,6 +20,8 @@
 
 import org.openbravo.database.ConnectionProvider;
 import org.openbravo.modulescript.ModuleScript;
+import org.openbravo.modulescript.ModuleScriptExecutionLimits;
+import org.openbravo.modulescript.OpenbravoVersion;
 
 public class UpdateReconciliationStatementProcessedValue extends ModuleScript {
   
@@ -36,4 +38,10 @@
       handleError(e);
     }
   }
+  
+  @Override
+  protected ModuleScriptExecutionLimits getModuleScriptExecutionLimits() {
+    return new ModuleScriptExecutionLimits("A918E3331C404B889D69AA9BFAFB23AC", null, 
+        new OpenbravoVersion(3,0,22292));
+  }
 }
--- a/modules/org.openbravo.advpaymentmngt/src-util/modulescript/src/org/openbravo/advpaymentmngt/modulescript/UpdateRecordId2Value.java	Wed Aug 26 23:27:42 2015 +0200
+++ b/modules/org.openbravo.advpaymentmngt/src-util/modulescript/src/org/openbravo/advpaymentmngt/modulescript/UpdateRecordId2Value.java	Fri Sep 04 09:30:06 2015 +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) 2012 Openbravo SLU
+ * All portions are Copyright (C) 2012-2015 Openbravo SLU
  * All Rights Reserved.
  * Contributor(s):  ______________________________________.
  *************************************************************************
@@ -20,6 +20,8 @@
 
 import org.openbravo.database.ConnectionProvider;
 import org.openbravo.modulescript.ModuleScript;
+import org.openbravo.modulescript.ModuleScriptExecutionLimits;
+import org.openbravo.modulescript.OpenbravoVersion;
 
 public class UpdateRecordId2Value extends ModuleScript {
 
@@ -38,4 +40,10 @@
       handleError(e);
     }
   }
+  
+  @Override
+  protected ModuleScriptExecutionLimits getModuleScriptExecutionLimits() {
+    return new ModuleScriptExecutionLimits("A918E3331C404B889D69AA9BFAFB23AC", null, 
+        new OpenbravoVersion(3,0,16524));
+  }
 }
--- a/modules/org.openbravo.advpaymentmngt/src-util/modulescript/src/org/openbravo/advpaymentmngt/modulescript/UpdateTransactionBPExchangeRate.java	Wed Aug 26 23:27:42 2015 +0200
+++ b/modules/org.openbravo.advpaymentmngt/src-util/modulescript/src/org/openbravo/advpaymentmngt/modulescript/UpdateTransactionBPExchangeRate.java	Fri Sep 04 09:30:06 2015 +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) 2012 Openbravo SLU
+ * All portions are Copyright (C) 2012-2015 Openbravo SLU
  * All Rights Reserved.
  * Contributor(s):  ______________________________________.
  *************************************************************************
@@ -20,6 +20,8 @@
 
 import org.openbravo.database.ConnectionProvider;
 import org.openbravo.modulescript.ModuleScript;
+import org.openbravo.modulescript.ModuleScriptExecutionLimits;
+import org.openbravo.modulescript.OpenbravoVersion;
 
 public class UpdateTransactionBPExchangeRate extends ModuleScript {
 
@@ -40,4 +42,10 @@
       handleError(e);
     }
   }
+  
+  @Override
+  protected ModuleScriptExecutionLimits getModuleScriptExecutionLimits() {
+    return new ModuleScriptExecutionLimits("A918E3331C404B889D69AA9BFAFB23AC", null, 
+        new OpenbravoVersion(3,0,22061));
+  }
 }
--- a/modules/org.openbravo.advpaymentmngt/src-util/modulescript/src/org/openbravo/advpaymentmngt/modulescript/UpdateTransactionTypeTransactionTab.java	Wed Aug 26 23:27:42 2015 +0200
+++ b/modules/org.openbravo.advpaymentmngt/src-util/modulescript/src/org/openbravo/advpaymentmngt/modulescript/UpdateTransactionTypeTransactionTab.java	Fri Sep 04 09:30:06 2015 +0200
@@ -20,6 +20,8 @@
 
 import org.openbravo.database.ConnectionProvider;
 import org.openbravo.modulescript.ModuleScript;
+import org.openbravo.modulescript.ModuleScriptExecutionLimits;
+import org.openbravo.modulescript.OpenbravoVersion;
 
 // This modulescript initializes the colum TRXTYPE (Transaction Type) in FIN_FINACC_TRANSACTION TABLE
 public class UpdateTransactionTypeTransactionTab extends ModuleScript {
@@ -38,4 +40,10 @@
       handleError(e);
     }   
   }
+  
+  @Override
+  protected ModuleScriptExecutionLimits getModuleScriptExecutionLimits() {
+    return new ModuleScriptExecutionLimits("A918E3331C404B889D69AA9BFAFB23AC", null, 
+        new OpenbravoVersion(3,0,26174));
+  }
 }
\ No newline at end of file
--- a/modules/org.openbravo.advpaymentmngt/src-util/modulescript/src/org/openbravo/advpaymentmngt/modulescript/WrongPaymentsFromJournalLine.java	Wed Aug 26 23:27:42 2015 +0200
+++ b/modules/org.openbravo.advpaymentmngt/src-util/modulescript/src/org/openbravo/advpaymentmngt/modulescript/WrongPaymentsFromJournalLine.java	Fri Sep 04 09:30:06 2015 +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) 2014 Openbravo SLU
+ * All portions are Copyright (C) 2014-2015 Openbravo SLU
  * All Rights Reserved.
  * Contributor(s):  ______________________________________.
  *************************************************************************
@@ -22,6 +22,8 @@
 
 import org.openbravo.database.ConnectionProvider;
 import org.openbravo.modulescript.ModuleScript;
+import org.openbravo.modulescript.ModuleScriptExecutionLimits;
+import org.openbravo.modulescript.OpenbravoVersion;
 
 public class WrongPaymentsFromJournalLine extends ModuleScript {
   
@@ -40,6 +42,12 @@
       handleError(e);
     }
   }
+  
+  @Override
+  protected ModuleScriptExecutionLimits getModuleScriptExecutionLimits() {
+    return new ModuleScriptExecutionLimits("A918E3331C404B889D69AA9BFAFB23AC", null, 
+        new OpenbravoVersion(3,0,24269));
+  }
 
   private void createAlert(ConnectionProvider cp, WrongPaymentsFromJournalLineData wrongPayment)
 	      throws ServletException {
--- a/modules/org.openbravo.advpaymentmngt/src-util/modulescript/src/src/org/openbravo/advpaymentmngt/modulescript/AlertsForWrongInvoicesData.java	Wed Aug 26 23:27:42 2015 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,689 +0,0 @@
-//Sqlc generated V1.O00-1
-package org.openbravo.advpaymentmngt.modulescript;
-
-import java.sql.*;
-
-import org.apache.log4j.Logger;
-
-import javax.servlet.ServletException;
-
-import org.openbravo.data.FieldProvider;
-import org.openbravo.database.ConnectionProvider;
-import org.openbravo.data.UtilSql;
-import java.util.*;
-
-class AlertsForWrongInvoicesData implements FieldProvider {
-static Logger log4j = Logger.getLogger(AlertsForWrongInvoicesData.class);
-  private String InitRecordNumber="0";
-  public String adClientId;
-  public String invoice;
-  public String cInvoiceId;
-  public String adOrgId;
-  public String issotrx;
-  public String adRoleId;
-  public String adAlertruleId;
-  public String adAlertId;
-
-  public String getInitRecordNumber() {
-    return InitRecordNumber;
-  }
-
-  public String getField(String fieldName) {
-    if (fieldName.equalsIgnoreCase("ad_client_id") || fieldName.equals("adClientId"))
-      return adClientId;
-    else if (fieldName.equalsIgnoreCase("invoice"))
-      return invoice;
-    else if (fieldName.equalsIgnoreCase("c_invoice_id") || fieldName.equals("cInvoiceId"))
-      return cInvoiceId;
-    else if (fieldName.equalsIgnoreCase("ad_org_id") || fieldName.equals("adOrgId"))
-      return adOrgId;
-    else if (fieldName.equalsIgnoreCase("issotrx"))
-      return issotrx;
-    else if (fieldName.equalsIgnoreCase("ad_role_id") || fieldName.equals("adRoleId"))
-      return adRoleId;
-    else if (fieldName.equalsIgnoreCase("ad_alertrule_id") || fieldName.equals("adAlertruleId"))
-      return adAlertruleId;
-    else if (fieldName.equalsIgnoreCase("ad_alert_id") || fieldName.equals("adAlertId"))
-      return adAlertId;
-   else {
-     log4j.debug("Field does not exist: " + fieldName);
-     return null;
-   }
- }
-
-  public static AlertsForWrongInvoicesData[] select(ConnectionProvider connectionProvider)    throws ServletException {
-    return select(connectionProvider, 0, 0);
-  }
-
-  public static AlertsForWrongInvoicesData[] select(ConnectionProvider connectionProvider, int firstRegister, int numberRegisters)    throws ServletException {
-    String strSql = "";
-    strSql = strSql + 
-      "      select distinct fin_payment_schedule.ad_client_id, ad_column_identifier('c_invoice', fin_payment_schedule.c_invoice_id, 'en_US') as invoice, " +
-      "      fin_payment_schedule.c_invoice_id, fin_payment_schedule.ad_org_id, c_invoice.issotrx, '' as ad_role_id, '' as ad_alertrule_id, '' as ad_alert_id" +
-      "      from c_invoice, fin_payment_schedule, fin_payment_scheduledetail" +
-      "      where c_invoice.c_invoice_id = fin_payment_schedule.c_invoice_id " +
-      "      and fin_payment_schedule.fin_payment_schedule_id = fin_payment_scheduledetail.fin_payment_schedule_invoice" +
-      "      and fin_payment_scheduledetail.iscanceled = 'N'" +
-      "      group by fin_payment_schedule.ad_client_id, fin_payment_schedule.ad_org_id, c_invoice.issotrx, fin_payment_schedule.fin_payment_schedule_id, fin_payment_schedule.c_invoice_id, fin_payment_schedule.amount" +
-      "      having fin_payment_schedule.amount <> sum(fin_payment_scheduledetail.amount + coalesce(fin_payment_scheduledetail.writeoffamt,0))" +
-      "      order by 1, 2";
-
-    ResultSet result;
-    Vector<java.lang.Object> vector = new Vector<java.lang.Object>(0);
-    PreparedStatement st = null;
-
-    try {
-    st = connectionProvider.getPreparedStatement(strSql);
-
-      result = st.executeQuery();
-      long countRecord = 0;
-      long countRecordSkip = 1;
-      boolean continueResult = true;
-      while(countRecordSkip < firstRegister && continueResult) {
-        continueResult = result.next();
-        countRecordSkip++;
-      }
-      while(continueResult && result.next()) {
-        countRecord++;
-        AlertsForWrongInvoicesData objectAlertsForWrongInvoicesData = new AlertsForWrongInvoicesData();
-        objectAlertsForWrongInvoicesData.adClientId = UtilSql.getValue(result, "ad_client_id");
-        objectAlertsForWrongInvoicesData.invoice = UtilSql.getValue(result, "invoice");
-        objectAlertsForWrongInvoicesData.cInvoiceId = UtilSql.getValue(result, "c_invoice_id");
-        objectAlertsForWrongInvoicesData.adOrgId = UtilSql.getValue(result, "ad_org_id");
-        objectAlertsForWrongInvoicesData.issotrx = UtilSql.getValue(result, "issotrx");
-        objectAlertsForWrongInvoicesData.adRoleId = UtilSql.getValue(result, "ad_role_id");
-        objectAlertsForWrongInvoicesData.adAlertruleId = UtilSql.getValue(result, "ad_alertrule_id");
-        objectAlertsForWrongInvoicesData.adAlertId = UtilSql.getValue(result, "ad_alert_id");
-        objectAlertsForWrongInvoicesData.InitRecordNumber = Integer.toString(firstRegister);
-        vector.addElement(objectAlertsForWrongInvoicesData);
-        if (countRecord >= numberRegisters && numberRegisters != 0) {
-          continueResult = false;
-        }
-      }
-      result.close();
-    } catch(SQLException e){
-      log4j.error("SQL error in query: " + strSql + "Exception:"+ e);
-      throw new ServletException("@CODE=" + Integer.toString(e.getErrorCode()) + "@" + e.getMessage());
-    } catch(Exception ex){
-      log4j.error("Exception in query: " + strSql + "Exception:"+ ex);
-      throw new ServletException("@CODE=@" + ex.getMessage());
-    } finally {
-      try {
-        connectionProvider.releasePreparedStatement(st);
-      } catch(Exception ignore){
-        ignore.printStackTrace();
-      }
-    }
-    AlertsForWrongInvoicesData objectAlertsForWrongInvoicesData[] = new AlertsForWrongInvoicesData[vector.size()];
-    vector.copyInto(objectAlertsForWrongInvoicesData);
-    return(objectAlertsForWrongInvoicesData);
-  }
-
-/**
-Identify alerts created not taking in account the void payment functionality.
- */
-  public static AlertsForWrongInvoicesData[] selectVoidAlerts(ConnectionProvider connectionProvider, String alertRuleId)    throws ServletException {
-    return selectVoidAlerts(connectionProvider, alertRuleId, 0, 0);
-  }
-
-/**
-Identify alerts created not taking in account the void payment functionality.
- */
-  public static AlertsForWrongInvoicesData[] selectVoidAlerts(ConnectionProvider connectionProvider, String alertRuleId, int firstRegister, int numberRegisters)    throws ServletException {
-    String strSql = "";
-    strSql = strSql + 
-      "      select distinct fin_payment_schedule.c_invoice_id, ad_alert.ad_alert_id" +
-      "      from fin_payment_schedule, fin_payment_scheduledetail, ad_alert" +
-      "      where fin_payment_schedule.fin_payment_schedule_id = fin_payment_scheduledetail.fin_payment_schedule_invoice" +
-      "            and ad_alert.referencekey_id = fin_payment_schedule.c_invoice_id" +
-      "      and exists (select 1" +
-      "                  from fin_payment_scheduledetail psd" +
-      "                  where psd.fin_payment_scheduledetail_id = fin_payment_scheduledetail.fin_payment_scheduledetail_id" +
-      "                        and psd.iscanceled = 'Y')" +
-      "      and ad_alert.ad_alertrule_id = ?" +
-      "      group by fin_payment_schedule.fin_payment_schedule_id, fin_payment_schedule.c_invoice_id, fin_payment_schedule.amount, ad_alert.ad_alert_id" +
-      "      having fin_payment_schedule.amount <> sum(fin_payment_scheduledetail.amount + coalesce(fin_payment_scheduledetail.writeoffamt,0))";
-
-    ResultSet result;
-    Vector<java.lang.Object> vector = new Vector<java.lang.Object>(0);
-    PreparedStatement st = null;
-
-    int iParameter = 0;
-    try {
-    st = connectionProvider.getPreparedStatement(strSql);
-      iParameter++; UtilSql.setValue(st, iParameter, 12, null, alertRuleId);
-
-      result = st.executeQuery();
-      long countRecord = 0;
-      long countRecordSkip = 1;
-      boolean continueResult = true;
-      while(countRecordSkip < firstRegister && continueResult) {
-        continueResult = result.next();
-        countRecordSkip++;
-      }
-      while(continueResult && result.next()) {
-        countRecord++;
-        AlertsForWrongInvoicesData objectAlertsForWrongInvoicesData = new AlertsForWrongInvoicesData();
-        objectAlertsForWrongInvoicesData.cInvoiceId = UtilSql.getValue(result, "c_invoice_id");
-        objectAlertsForWrongInvoicesData.adAlertId = UtilSql.getValue(result, "ad_alert_id");
-        objectAlertsForWrongInvoicesData.InitRecordNumber = Integer.toString(firstRegister);
-        vector.addElement(objectAlertsForWrongInvoicesData);
-        if (countRecord >= numberRegisters && numberRegisters != 0) {
-          continueResult = false;
-        }
-      }
-      result.close();
-    } catch(SQLException e){
-      log4j.error("SQL error in query: " + strSql + "Exception:"+ e);
-      throw new ServletException("@CODE=" + Integer.toString(e.getErrorCode()) + "@" + e.getMessage());
-    } catch(Exception ex){
-      log4j.error("Exception in query: " + strSql + "Exception:"+ ex);
-      throw new ServletException("@CODE=@" + ex.getMessage());
-    } finally {
-      try {
-        connectionProvider.releasePreparedStatement(st);
-      } catch(Exception ignore){
-        ignore.printStackTrace();
-      }
-    }
-    AlertsForWrongInvoicesData objectAlertsForWrongInvoicesData[] = new AlertsForWrongInvoicesData[vector.size()];
-    vector.copyInto(objectAlertsForWrongInvoicesData);
-    return(objectAlertsForWrongInvoicesData);
-  }
-
-  public static boolean existsAlertRule(ConnectionProvider connectionProvider, String alertRule, String client)    throws ServletException {
-    String strSql = "";
-    strSql = strSql + 
-      "       SELECT COUNT(*) AS EXISTING" +
-      "       FROM AD_ALERTRULE" +
-      "       WHERE NAME = ?" +
-      "         AND AD_CLIENT_ID = ?";
-
-    ResultSet result;
-    boolean boolReturn = false;
-    PreparedStatement st = null;
-
-    int iParameter = 0;
-    try {
-    st = connectionProvider.getPreparedStatement(strSql);
-      iParameter++; UtilSql.setValue(st, iParameter, 12, null, alertRule);
-      iParameter++; UtilSql.setValue(st, iParameter, 12, null, client);
-
-      result = st.executeQuery();
-      if(result.next()) {
-        boolReturn = !UtilSql.getValue(result, "existing").equals("0");
-      }
-      result.close();
-    } catch(SQLException e){
-      log4j.error("SQL error in query: " + strSql + "Exception:"+ e);
-      throw new ServletException("@CODE=" + Integer.toString(e.getErrorCode()) + "@" + e.getMessage());
-    } catch(Exception ex){
-      log4j.error("Exception in query: " + strSql + "Exception:"+ ex);
-      throw new ServletException("@CODE=@" + ex.getMessage());
-    } finally {
-      try {
-        connectionProvider.releasePreparedStatement(st);
-      } catch(Exception ignore){
-        ignore.printStackTrace();
-      }
-    }
-    return(boolReturn);
-  }
-
-  public static boolean existsAlert(ConnectionProvider connectionProvider, String alertRule, String invoice)    throws ServletException {
-    String strSql = "";
-    strSql = strSql + 
-      "       SELECT COUNT(*) AS EXISTING" +
-      "       FROM AD_ALERT" +
-      "       WHERE AD_ALERTRULE_ID = ?" +
-      "       AND REFERENCEKEY_ID = ?" +
-      "       AND ISFIXED = 'N'";
-
-    ResultSet result;
-    boolean boolReturn = false;
-    PreparedStatement st = null;
-
-    int iParameter = 0;
-    try {
-    st = connectionProvider.getPreparedStatement(strSql);
-      iParameter++; UtilSql.setValue(st, iParameter, 12, null, alertRule);
-      iParameter++; UtilSql.setValue(st, iParameter, 12, null, invoice);
-
-      result = st.executeQuery();
-      if(result.next()) {
-        boolReturn = !UtilSql.getValue(result, "existing").equals("0");
-      }
-      result.close();
-    } catch(SQLException e){
-      log4j.error("SQL error in query: " + strSql + "Exception:"+ e);
-      throw new ServletException("@CODE=" + Integer.toString(e.getErrorCode()) + "@" + e.getMessage());
-    } catch(Exception ex){
-      log4j.error("Exception in query: " + strSql + "Exception:"+ ex);
-      throw new ServletException("@CODE=@" + ex.getMessage());
-    } finally {
-      try {
-        connectionProvider.releasePreparedStatement(st);
-      } catch(Exception ignore){
-        ignore.printStackTrace();
-      }
-    }
-    return(boolReturn);
-  }
-
-  public static String getAlertRuleId(ConnectionProvider connectionProvider, String name, String client)    throws ServletException {
-    String strSql = "";
-    strSql = strSql + 
-      "       SELECT MAX(ad_alertrule_id) AS name" +
-      "       FROM AD_ALERTRULE" +
-      "       WHERE NAME LIKE ?" +
-      "         AND ISACTIVE = 'Y'" +
-      "         AND AD_CLIENT_ID = ?";
-
-    ResultSet result;
-    String strReturn = null;
-    PreparedStatement st = null;
-
-    int iParameter = 0;
-    try {
-    st = connectionProvider.getPreparedStatement(strSql);
-      iParameter++; UtilSql.setValue(st, iParameter, 12, null, name);
-      iParameter++; UtilSql.setValue(st, iParameter, 12, null, client);
-
-      result = st.executeQuery();
-      if(result.next()) {
-        strReturn = UtilSql.getValue(result, "name");
-      }
-      result.close();
-    } catch(SQLException e){
-      log4j.error("SQL error in query: " + strSql + "Exception:"+ e);
-      throw new ServletException("@CODE=" + Integer.toString(e.getErrorCode()) + "@" + e.getMessage());
-    } catch(Exception ex){
-      log4j.error("Exception in query: " + strSql + "Exception:"+ ex);
-      throw new ServletException("@CODE=@" + ex.getMessage());
-    } finally {
-      try {
-        connectionProvider.releasePreparedStatement(st);
-      } catch(Exception ignore){
-        ignore.printStackTrace();
-      }
-    }
-    return(strReturn);
-  }
-
-  public static AlertsForWrongInvoicesData[] selectOldAlertRules(ConnectionProvider connectionProvider)    throws ServletException {
-    return selectOldAlertRules(connectionProvider, 0, 0);
-  }
-
-  public static AlertsForWrongInvoicesData[] selectOldAlertRules(ConnectionProvider connectionProvider, int firstRegister, int numberRegisters)    throws ServletException {
-    String strSql = "";
-    strSql = strSql + 
-      "       SELECT ad_alertrule_id" +
-      "       FROM AD_ALERTRULE" +
-      "       WHERE (name = 'Wrong purchase invoice. Wrong amount in payment plan detail' OR" +
-      "              name = 'Wrong sales invoice. Wrong amount in payment plan detail')" +
-      "         AND ISACTIVE = 'Y'" +
-      "         AND lower(SQL) not like '%iscanceled%'";
-
-    ResultSet result;
-    Vector<java.lang.Object> vector = new Vector<java.lang.Object>(0);
-    PreparedStatement st = null;
-
-    try {
-    st = connectionProvider.getPreparedStatement(strSql);
-
-      result = st.executeQuery();
-      long countRecord = 0;
-      long countRecordSkip = 1;
-      boolean continueResult = true;
-      while(countRecordSkip < firstRegister && continueResult) {
-        continueResult = result.next();
-        countRecordSkip++;
-      }
-      while(continueResult && result.next()) {
-        countRecord++;
-        AlertsForWrongInvoicesData objectAlertsForWrongInvoicesData = new AlertsForWrongInvoicesData();
-        objectAlertsForWrongInvoicesData.adAlertruleId = UtilSql.getValue(result, "ad_alertrule_id");
-        objectAlertsForWrongInvoicesData.InitRecordNumber = Integer.toString(firstRegister);
-        vector.addElement(objectAlertsForWrongInvoicesData);
-        if (countRecord >= numberRegisters && numberRegisters != 0) {
-          continueResult = false;
-        }
-      }
-      result.close();
-    } catch(SQLException e){
-      log4j.error("SQL error in query: " + strSql + "Exception:"+ e);
-      throw new ServletException("@CODE=" + Integer.toString(e.getErrorCode()) + "@" + e.getMessage());
-    } catch(Exception ex){
-      log4j.error("Exception in query: " + strSql + "Exception:"+ ex);
-      throw new ServletException("@CODE=@" + ex.getMessage());
-    } finally {
-      try {
-        connectionProvider.releasePreparedStatement(st);
-      } catch(Exception ignore){
-        ignore.printStackTrace();
-      }
-    }
-    AlertsForWrongInvoicesData objectAlertsForWrongInvoicesData[] = new AlertsForWrongInvoicesData[vector.size()];
-    vector.copyInto(objectAlertsForWrongInvoicesData);
-    return(objectAlertsForWrongInvoicesData);
-  }
-
-  public static AlertsForWrongInvoicesData[] getRoleId(ConnectionProvider connectionProvider, String window, String clientId)    throws ServletException {
-    return getRoleId(connectionProvider, window, clientId, 0, 0);
-  }
-
-  public static AlertsForWrongInvoicesData[] getRoleId(ConnectionProvider connectionProvider, String window, String clientId, int firstRegister, int numberRegisters)    throws ServletException {
-    String strSql = "";
-    strSql = strSql + 
-      "       SELECT distinct ad_role_id" +
-      "       FROM ad_window_access" +
-      "       WHERE ad_window_id = ?" +
-      "       AND AD_CLIENT_ID = ?" +
-      "         AND ISACTIVE = 'Y'";
-
-    ResultSet result;
-    Vector<java.lang.Object> vector = new Vector<java.lang.Object>(0);
-    PreparedStatement st = null;
-
-    int iParameter = 0;
-    try {
-    st = connectionProvider.getPreparedStatement(strSql);
-      iParameter++; UtilSql.setValue(st, iParameter, 12, null, window);
-      iParameter++; UtilSql.setValue(st, iParameter, 12, null, clientId);
-
-      result = st.executeQuery();
-      long countRecord = 0;
-      long countRecordSkip = 1;
-      boolean continueResult = true;
-      while(countRecordSkip < firstRegister && continueResult) {
-        continueResult = result.next();
-        countRecordSkip++;
-      }
-      while(continueResult && result.next()) {
-        countRecord++;
-        AlertsForWrongInvoicesData objectAlertsForWrongInvoicesData = new AlertsForWrongInvoicesData();
-        objectAlertsForWrongInvoicesData.adRoleId = UtilSql.getValue(result, "ad_role_id");
-        objectAlertsForWrongInvoicesData.InitRecordNumber = Integer.toString(firstRegister);
-        vector.addElement(objectAlertsForWrongInvoicesData);
-        if (countRecord >= numberRegisters && numberRegisters != 0) {
-          continueResult = false;
-        }
-      }
-      result.close();
-    } catch(SQLException e){
-      log4j.error("SQL error in query: " + strSql + "Exception:"+ e);
-      throw new ServletException("@CODE=" + Integer.toString(e.getErrorCode()) + "@" + e.getMessage());
-    } catch(Exception ex){
-      log4j.error("Exception in query: " + strSql + "Exception:"+ ex);
-      throw new ServletException("@CODE=@" + ex.getMessage());
-    } finally {
-      try {
-        connectionProvider.releasePreparedStatement(st);
-      } catch(Exception ignore){
-        ignore.printStackTrace();
-      }
-    }
-    AlertsForWrongInvoicesData objectAlertsForWrongInvoicesData[] = new AlertsForWrongInvoicesData[vector.size()];
-    vector.copyInto(objectAlertsForWrongInvoicesData);
-    return(objectAlertsForWrongInvoicesData);
-  }
-
-  public static int insertAlertRule(ConnectionProvider connectionProvider, String clientId, String name, String tabId, String sql)    throws ServletException {
-    String strSql = "";
-    strSql = strSql + 
-      "      INSERT INTO AD_ALERTRULE (" +
-      "        AD_ALERTRULE_ID, AD_CLIENT_ID, AD_ORG_ID,ISACTIVE," +
-      "        CREATED, CREATEDBY,  UPDATED, UPDATEDBY," +
-      "        NAME, AD_TAB_ID, FILTERCLAUSE, TYPE," +
-      "        SQL" +
-      "      ) VALUES (" +
-      "        get_uuid(), ?, '0', 'Y'," +
-      "        now(), '100', now(), '100'," +
-      "        ?, ?, '', 'D'," +
-      "        ?" +
-      "      )";
-
-    int updateCount = 0;
-    PreparedStatement st = null;
-
-    int iParameter = 0;
-    try {
-    st = connectionProvider.getPreparedStatement(strSql);
-      iParameter++; UtilSql.setValue(st, iParameter, 12, null, clientId);
-      iParameter++; UtilSql.setValue(st, iParameter, 12, null, name);
-      iParameter++; UtilSql.setValue(st, iParameter, 12, null, tabId);
-      iParameter++; UtilSql.setValue(st, iParameter, 12, null, sql);
-
-      updateCount = st.executeUpdate();
-    } catch(SQLException e){
-      log4j.error("SQL error in query: " + strSql + "Exception:"+ e);
-      throw new ServletException("@CODE=" + Integer.toString(e.getErrorCode()) + "@" + e.getMessage());
-    } catch(Exception ex){
-      log4j.error("Exception in query: " + strSql + "Exception:"+ ex);
-      throw new ServletException("@CODE=@" + ex.getMessage());
-    } finally {
-      try {
-        connectionProvider.releasePreparedStatement(st);
-      } catch(Exception ignore){
-        ignore.printStackTrace();
-      }
-    }
-    return(updateCount);
-  }
-
-  public static int insertAlert(ConnectionProvider connectionProvider, String client, String org, String description, String adAlertRuleId, String recordId, String referencekey_id)    throws ServletException {
-    String strSql = "";
-    strSql = strSql + 
-      "      INSERT INTO AD_Alert (" +
-      "        AD_Alert_ID, AD_Client_ID, AD_Org_ID, IsActive," +
-      "        Created, CreatedBy, Updated, UpdatedBy," +
-      "        Description, AD_AlertRule_ID, Record_Id, Referencekey_ID" +
-      "      ) VALUES (" +
-      "        get_uuid(), ?, ?, 'Y'," +
-      "        NOW(), '0', NOW(), '0'," +
-      "        ?, ?, ?, ?)";
-
-    int updateCount = 0;
-    PreparedStatement st = null;
-
-    int iParameter = 0;
-    try {
-    st = connectionProvider.getPreparedStatement(strSql);
-      iParameter++; UtilSql.setValue(st, iParameter, 12, null, client);
-      iParameter++; UtilSql.setValue(st, iParameter, 12, null, org);
-      iParameter++; UtilSql.setValue(st, iParameter, 12, null, description);
-      iParameter++; UtilSql.setValue(st, iParameter, 12, null, adAlertRuleId);
-      iParameter++; UtilSql.setValue(st, iParameter, 12, null, recordId);
-      iParameter++; UtilSql.setValue(st, iParameter, 12, null, referencekey_id);
-
-      updateCount = st.executeUpdate();
-    } catch(SQLException e){
-      log4j.error("SQL error in query: " + strSql + "Exception:"+ e);
-      throw new ServletException("@CODE=" + Integer.toString(e.getErrorCode()) + "@" + e.getMessage());
-    } catch(Exception ex){
-      log4j.error("Exception in query: " + strSql + "Exception:"+ ex);
-      throw new ServletException("@CODE=@" + ex.getMessage());
-    } finally {
-      try {
-        connectionProvider.releasePreparedStatement(st);
-      } catch(Exception ignore){
-        ignore.printStackTrace();
-      }
-    }
-    return(updateCount);
-  }
-
-  public static int insertAlertRecipient(ConnectionProvider connectionProvider, String client, String org, String adAlertRuleId, String role)    throws ServletException {
-    String strSql = "";
-    strSql = strSql + 
-      "    INSERT INTO ad_alertrecipient(" +
-      "            ad_user_id, ad_client_id, ad_org_id, isactive, created, createdby, " +
-      "            updated, updatedby, ad_alertrecipient_id, ad_alertrule_id, ad_role_id, " +
-      "            sendemail)" +
-      "    VALUES (null, ?, ?, 'Y', now(), '100', " +
-      "            now(), '100', get_uuid(), ?, ?, " +
-      "            'N')";
-
-    int updateCount = 0;
-    PreparedStatement st = null;
-
-    int iParameter = 0;
-    try {
-    st = connectionProvider.getPreparedStatement(strSql);
-      iParameter++; UtilSql.setValue(st, iParameter, 12, null, client);
-      iParameter++; UtilSql.setValue(st, iParameter, 12, null, org);
-      iParameter++; UtilSql.setValue(st, iParameter, 12, null, adAlertRuleId);
-      iParameter++; UtilSql.setValue(st, iParameter, 12, null, role);
-
-      updateCount = st.executeUpdate();
-    } catch(SQLException e){
-      log4j.error("SQL error in query: " + strSql + "Exception:"+ e);
-      throw new ServletException("@CODE=" + Integer.toString(e.getErrorCode()) + "@" + e.getMessage());
-    } catch(Exception ex){
-      log4j.error("Exception in query: " + strSql + "Exception:"+ ex);
-      throw new ServletException("@CODE=@" + ex.getMessage());
-    } finally {
-      try {
-        connectionProvider.releasePreparedStatement(st);
-      } catch(Exception ignore){
-        ignore.printStackTrace();
-      }
-    }
-    return(updateCount);
-  }
-
-  public static int updateAlertRuleSql(ConnectionProvider connectionProvider, String sql, String adAlertRuleId)    throws ServletException {
-    String strSql = "";
-    strSql = strSql + 
-      "      UPDATE ad_alertrule SET SQL = ? WHERE ad_alertrule_id = ?";
-
-    int updateCount = 0;
-    PreparedStatement st = null;
-
-    int iParameter = 0;
-    try {
-    st = connectionProvider.getPreparedStatement(strSql);
-      iParameter++; UtilSql.setValue(st, iParameter, 12, null, sql);
-      iParameter++; UtilSql.setValue(st, iParameter, 12, null, adAlertRuleId);
-
-      updateCount = st.executeUpdate();
-    } catch(SQLException e){
-      log4j.error("SQL error in query: " + strSql + "Exception:"+ e);
-      throw new ServletException("@CODE=" + Integer.toString(e.getErrorCode()) + "@" + e.getMessage());
-    } catch(Exception ex){
-      log4j.error("Exception in query: " + strSql + "Exception:"+ ex);
-      throw new ServletException("@CODE=@" + ex.getMessage());
-    } finally {
-      try {
-        connectionProvider.releasePreparedStatement(st);
-      } catch(Exception ignore){
-        ignore.printStackTrace();
-      }
-    }
-    return(updateCount);
-  }
-
-  public static int updateAlertStatus(ConnectionProvider connectionProvider, String status, String isfixed, String alertId)    throws ServletException {
-    String strSql = "";
-    strSql = strSql + 
-      "      UPDATE ad_alert SET status = ?, isfixed = ? WHERE ad_alert_id = ?";
-
-    int updateCount = 0;
-    PreparedStatement st = null;
-
-    int iParameter = 0;
-    try {
-    st = connectionProvider.getPreparedStatement(strSql);
-      iParameter++; UtilSql.setValue(st, iParameter, 12, null, status);
-      iParameter++; UtilSql.setValue(st, iParameter, 12, null, isfixed);
-      iParameter++; UtilSql.setValue(st, iParameter, 12, null, alertId);
-
-      updateCount = st.executeUpdate();
-    } catch(SQLException e){
-      log4j.error("SQL error in query: " + strSql + "Exception:"+ e);
-      throw new ServletException("@CODE=" + Integer.toString(e.getErrorCode()) + "@" + e.getMessage());
-    } catch(Exception ex){
-      log4j.error("Exception in query: " + strSql + "Exception:"+ ex);
-      throw new ServletException("@CODE=@" + ex.getMessage());
-    } finally {
-      try {
-        connectionProvider.releasePreparedStatement(st);
-      } catch(Exception ignore){
-        ignore.printStackTrace();
-      }
-    }
-    return(updateCount);
-  }
-
-  public static boolean isAlertsForWrongInvoicesExecuted(ConnectionProvider connectionProvider)    throws ServletException {
-    String strSql = "";
-    strSql = strSql + 
-      "        SELECT count(*) as exist" +
-      "        FROM DUAL" +
-      "        WHERE EXISTS (SELECT 1 FROM ad_preference" +
-      "                      WHERE attribute = 'AlertsForWrongInvoices')";
-
-    ResultSet result;
-    boolean boolReturn = false;
-    PreparedStatement st = null;
-
-    try {
-    st = connectionProvider.getPreparedStatement(strSql);
-
-      result = st.executeQuery();
-      if(result.next()) {
-        boolReturn = !UtilSql.getValue(result, "exist").equals("0");
-      }
-      result.close();
-    } catch(SQLException e){
-      log4j.error("SQL error in query: " + strSql + "Exception:"+ e);
-      throw new ServletException("@CODE=" + Integer.toString(e.getErrorCode()) + "@" + e.getMessage());
-    } catch(Exception ex){
-      log4j.error("Exception in query: " + strSql + "Exception:"+ ex);
-      throw new ServletException("@CODE=@" + ex.getMessage());
-    } finally {
-      try {
-        connectionProvider.releasePreparedStatement(st);
-      } catch(Exception ignore){
-        ignore.printStackTrace();
-      }
-    }
-    return(boolReturn);
-  }
-
-  public static int createPreference(ConnectionProvider connectionProvider)    throws ServletException {
-    String strSql = "";
-    strSql = strSql + 
-      "        INSERT INTO ad_preference (" +
-      "          ad_preference_id, ad_client_id, ad_org_id, isactive," +
-      "          createdby, created, updatedby, updated," +
-      "          attribute" +
-      "        ) VALUES (" +
-      "          get_uuid(), '0', '0', 'Y'," +
-      "          '0', NOW(), '0', NOW()," +
-      "          'AlertsForWrongInvoices'" +
-      "        )";
-
-    int updateCount = 0;
-    PreparedStatement st = null;
-
-    try {
-    st = connectionProvider.getPreparedStatement(strSql);
-
-      updateCount = st.executeUpdate();
-    } catch(SQLException e){
-      log4j.error("SQL error in query: " + strSql + "Exception:"+ e);
-      throw new ServletException("@CODE=" + Integer.toString(e.getErrorCode()) + "@" + e.getMessage());
-    } catch(Exception ex){
-      log4j.error("Exception in query: " + strSql + "Exception:"+ ex);
-      throw new ServletException("@CODE=@" + ex.getMessage());
-    } finally {
-      try {
-        connectionProvider.releasePreparedStatement(st);
-      } catch(Exception ignore){
-        ignore.printStackTrace();
-      }
-    }
-    return(updateCount);
-  }
-}
--- a/modules/org.openbravo.advpaymentmngt/src-util/modulescript/src/src/org/openbravo/advpaymentmngt/modulescript/AlertsForWrongOrdersData.java	Wed Aug 26 23:27:42 2015 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,459 +0,0 @@
-//Sqlc generated V1.O00-1
-package org.openbravo.advpaymentmngt.modulescript;
-
-import java.sql.*;
-
-import org.apache.log4j.Logger;
-
-import javax.servlet.ServletException;
-
-import org.openbravo.data.FieldProvider;
-import org.openbravo.database.ConnectionProvider;
-import org.openbravo.data.UtilSql;
-import java.util.*;
-
-class AlertsForWrongOrdersData implements FieldProvider {
-static Logger log4j = Logger.getLogger(AlertsForWrongOrdersData.class);
-  private String InitRecordNumber="0";
-  public String adClientId;
-  public String orderinfo;
-  public String cOrderId;
-  public String adOrgId;
-  public String issotrx;
-  public String adRoleId;
-  public String adAlertruleId;
-  public String adAlertId;
-
-  public String getInitRecordNumber() {
-    return InitRecordNumber;
-  }
-
-  public String getField(String fieldName) {
-    if (fieldName.equalsIgnoreCase("ad_client_id") || fieldName.equals("adClientId"))
-      return adClientId;
-    else if (fieldName.equalsIgnoreCase("orderinfo"))
-      return orderinfo;
-    else if (fieldName.equalsIgnoreCase("c_order_id") || fieldName.equals("cOrderId"))
-      return cOrderId;
-    else if (fieldName.equalsIgnoreCase("ad_org_id") || fieldName.equals("adOrgId"))
-      return adOrgId;
-    else if (fieldName.equalsIgnoreCase("issotrx"))
-      return issotrx;
-    else if (fieldName.equalsIgnoreCase("ad_role_id") || fieldName.equals("adRoleId"))
-      return adRoleId;
-    else if (fieldName.equalsIgnoreCase("ad_alertrule_id") || fieldName.equals("adAlertruleId"))
-      return adAlertruleId;
-    else if (fieldName.equalsIgnoreCase("ad_alert_id") || fieldName.equals("adAlertId"))
-      return adAlertId;
-   else {
-     log4j.debug("Field does not exist: " + fieldName);
-     return null;
-   }
- }
-
-  public static AlertsForWrongOrdersData[] select(ConnectionProvider connectionProvider)    throws ServletException {
-    return select(connectionProvider, 0, 0);
-  }
-
-  public static AlertsForWrongOrdersData[] select(ConnectionProvider connectionProvider, int firstRegister, int numberRegisters)    throws ServletException {
-    String strSql = "";
-    strSql = strSql + 
-      "      select distinct fin_payment_schedule.ad_client_id, ad_column_identifier('C_Order', fin_payment_schedule.c_order_id, 'en_US') as orderinfo, " +
-      "      fin_payment_schedule.c_order_id, fin_payment_schedule.ad_org_id,  c_order.issotrx, '' as ad_role_id, '' as ad_alertrule_id, '' as ad_alert_id" +
-      "      from c_order, fin_payment_schedule, fin_payment_scheduledetail " +
-      "      where c_order.c_order_id = fin_payment_schedule.c_order_id" +
-      "      and fin_payment_schedule.fin_payment_schedule_id = fin_payment_scheduledetail.fin_payment_schedule_order " +
-      "      and fin_payment_scheduledetail.isinvoicepaid = 'Y'" +
-      "      and fin_payment_scheduledetail.fin_payment_detail_id IS NOT NULL " +
-      "      group by fin_payment_schedule.ad_org_id, fin_payment_schedule.ad_client_id, c_order.issotrx, fin_payment_schedule.fin_payment_schedule_id, " +
-      "      fin_payment_schedule.c_order_id, fin_payment_schedule.paidamt " +
-      "      having fin_payment_schedule.paidamt <> sum(fin_payment_scheduledetail.amount + coalesce(fin_payment_scheduledetail.writeoffamt,0)) " +
-      "      order by 1, 2";
-
-    ResultSet result;
-    Vector<java.lang.Object> vector = new Vector<java.lang.Object>(0);
-    PreparedStatement st = null;
-
-    try {
-    st = connectionProvider.getPreparedStatement(strSql);
-
-      result = st.executeQuery();
-      long countRecord = 0;
-      long countRecordSkip = 1;
-      boolean continueResult = true;
-      while(countRecordSkip < firstRegister && continueResult) {
-        continueResult = result.next();
-        countRecordSkip++;
-      }
-      while(continueResult && result.next()) {
-        countRecord++;
-        AlertsForWrongOrdersData objectAlertsForWrongOrdersData = new AlertsForWrongOrdersData();
-        objectAlertsForWrongOrdersData.adClientId = UtilSql.getValue(result, "ad_client_id");
-        objectAlertsForWrongOrdersData.orderinfo = UtilSql.getValue(result, "orderinfo");
-        objectAlertsForWrongOrdersData.cOrderId = UtilSql.getValue(result, "c_order_id");
-        objectAlertsForWrongOrdersData.adOrgId = UtilSql.getValue(result, "ad_org_id");
-        objectAlertsForWrongOrdersData.issotrx = UtilSql.getValue(result, "issotrx");
-        objectAlertsForWrongOrdersData.adRoleId = UtilSql.getValue(result, "ad_role_id");
-        objectAlertsForWrongOrdersData.adAlertruleId = UtilSql.getValue(result, "ad_alertrule_id");
-        objectAlertsForWrongOrdersData.adAlertId = UtilSql.getValue(result, "ad_alert_id");
-        objectAlertsForWrongOrdersData.InitRecordNumber = Integer.toString(firstRegister);
-        vector.addElement(objectAlertsForWrongOrdersData);
-        if (countRecord >= numberRegisters && numberRegisters != 0) {
-          continueResult = false;
-        }
-      }
-      result.close();
-    } catch(SQLException e){
-      log4j.error("SQL error in query: " + strSql + "Exception:"+ e);
-      throw new ServletException("@CODE=" + Integer.toString(e.getErrorCode()) + "@" + e.getMessage());
-    } catch(Exception ex){
-      log4j.error("Exception in query: " + strSql + "Exception:"+ ex);
-      throw new ServletException("@CODE=@" + ex.getMessage());
-    } finally {
-      try {
-        connectionProvider.releasePreparedStatement(st);
-      } catch(Exception ignore){
-        ignore.printStackTrace();
-      }
-    }
-    AlertsForWrongOrdersData objectAlertsForWrongOrdersData[] = new AlertsForWrongOrdersData[vector.size()];
-    vector.copyInto(objectAlertsForWrongOrdersData);
-    return(objectAlertsForWrongOrdersData);
-  }
-
-  public static boolean existsAlertRule(ConnectionProvider connectionProvider, String alertRule, String client)    throws ServletException {
-    String strSql = "";
-    strSql = strSql + 
-      "       SELECT COUNT(*) AS EXISTING" +
-      "       FROM AD_ALERTRULE" +
-      "       WHERE NAME = ?" +
-      "         AND ISACTIVE = 'Y'" +
-      "         AND AD_CLIENT_ID = ?";
-
-    ResultSet result;
-    boolean boolReturn = false;
-    PreparedStatement st = null;
-
-    int iParameter = 0;
-    try {
-    st = connectionProvider.getPreparedStatement(strSql);
-      iParameter++; UtilSql.setValue(st, iParameter, 12, null, alertRule);
-      iParameter++; UtilSql.setValue(st, iParameter, 12, null, client);
-
-      result = st.executeQuery();
-      if(result.next()) {
-        boolReturn = !UtilSql.getValue(result, "existing").equals("0");
-      }
-      result.close();
-    } catch(SQLException e){
-      log4j.error("SQL error in query: " + strSql + "Exception:"+ e);
-      throw new ServletException("@CODE=" + Integer.toString(e.getErrorCode()) + "@" + e.getMessage());
-    } catch(Exception ex){
-      log4j.error("Exception in query: " + strSql + "Exception:"+ ex);
-      throw new ServletException("@CODE=@" + ex.getMessage());
-    } finally {
-      try {
-        connectionProvider.releasePreparedStatement(st);
-      } catch(Exception ignore){
-        ignore.printStackTrace();
-      }
-    }
-    return(boolReturn);
-  }
-
-  public static int updateAlertRule(ConnectionProvider connectionProvider, String name, String clientId)    throws ServletException {
-    String strSql = "";
-    strSql = strSql + 
-      "        UPDATE AD_AlertRule" +
-      "        SET SQL='', TYPE='E' WHERE NAME = ? AND AD_Client_ID = ?";
-
-    int updateCount = 0;
-    PreparedStatement st = null;
-
-    int iParameter = 0;
-    try {
-    st = connectionProvider.getPreparedStatement(strSql);
-      iParameter++; UtilSql.setValue(st, iParameter, 12, null, name);
-      iParameter++; UtilSql.setValue(st, iParameter, 12, null, clientId);
-
-      updateCount = st.executeUpdate();
-    } catch(SQLException e){
-      log4j.error("SQL error in query: " + strSql + "Exception:"+ e);
-      throw new ServletException("@CODE=" + Integer.toString(e.getErrorCode()) + "@" + e.getMessage());
-    } catch(Exception ex){
-      log4j.error("Exception in query: " + strSql + "Exception:"+ ex);
-      throw new ServletException("@CODE=@" + ex.getMessage());
-    } finally {
-      try {
-        connectionProvider.releasePreparedStatement(st);
-      } catch(Exception ignore){
-        ignore.printStackTrace();
-      }
-    }
-    return(updateCount);
-  }
-
-  public static boolean existsAlert(ConnectionProvider connectionProvider, String alertRule, String order)    throws ServletException {
-    String strSql = "";
-    strSql = strSql + 
-      "       SELECT COUNT(*) AS EXISTING" +
-      "       FROM AD_ALERT" +
-      "       WHERE AD_ALERTRULE_ID = ?" +
-      "       AND REFERENCEKEY_ID = ?" +
-      "       AND ISFIXED = 'N'";
-
-    ResultSet result;
-    boolean boolReturn = false;
-    PreparedStatement st = null;
-
-    int iParameter = 0;
-    try {
-    st = connectionProvider.getPreparedStatement(strSql);
-      iParameter++; UtilSql.setValue(st, iParameter, 12, null, alertRule);
-      iParameter++; UtilSql.setValue(st, iParameter, 12, null, order);
-
-      result = st.executeQuery();
-      if(result.next()) {
-        boolReturn = !UtilSql.getValue(result, "existing").equals("0");
-      }
-      result.close();
-    } catch(SQLException e){
-      log4j.error("SQL error in query: " + strSql + "Exception:"+ e);
-      throw new ServletException("@CODE=" + Integer.toString(e.getErrorCode()) + "@" + e.getMessage());
-    } catch(Exception ex){
-      log4j.error("Exception in query: " + strSql + "Exception:"+ ex);
-      throw new ServletException("@CODE=@" + ex.getMessage());
-    } finally {
-      try {
-        connectionProvider.releasePreparedStatement(st);
-      } catch(Exception ignore){
-        ignore.printStackTrace();
-      }
-    }
-    return(boolReturn);
-  }
-
-  public static String getAlertRuleId(ConnectionProvider connectionProvider, String name, String client)    throws ServletException {
-    String strSql = "";
-    strSql = strSql + 
-      "       SELECT MAX(ad_alertrule_id) AS name" +
-      "       FROM AD_ALERTRULE" +
-      "       WHERE NAME LIKE ?" +
-      "         AND ISACTIVE = 'Y'" +
-      "         AND AD_CLIENT_ID = ?";
-
-    ResultSet result;
-    String strReturn = null;
-    PreparedStatement st = null;
-
-    int iParameter = 0;
-    try {
-    st = connectionProvider.getPreparedStatement(strSql);
-      iParameter++; UtilSql.setValue(st, iParameter, 12, null, name);
-      iParameter++; UtilSql.setValue(st, iParameter, 12, null, client);
-
-      result = st.executeQuery();
-      if(result.next()) {
-        strReturn = UtilSql.getValue(result, "name");
-      }
-      result.close();
-    } catch(SQLException e){
-      log4j.error("SQL error in query: " + strSql + "Exception:"+ e);
-      throw new ServletException("@CODE=" + Integer.toString(e.getErrorCode()) + "@" + e.getMessage());
-    } catch(Exception ex){
-      log4j.error("Exception in query: " + strSql + "Exception:"+ ex);
-      throw new ServletException("@CODE=@" + ex.getMessage());
-    } finally {
-      try {
-        connectionProvider.releasePreparedStatement(st);
-      } catch(Exception ignore){
-        ignore.printStackTrace();
-      }
-    }
-    return(strReturn);
-  }
-
-  public static AlertsForWrongOrdersData[] getRoleId(ConnectionProvider connectionProvider, String window, String clientId)    throws ServletException {
-    return getRoleId(connectionProvider, window, clientId, 0, 0);
-  }
-
-  public static AlertsForWrongOrdersData[] getRoleId(ConnectionProvider connectionProvider, String window, String clientId, int firstRegister, int numberRegisters)    throws ServletException {
-    String strSql = "";
-    strSql = strSql + 
-      "       SELECT distinct ad_role_id" +
-      "       FROM ad_window_access" +
-      "       WHERE ad_window_id = ?" +
-      "       AND AD_CLIENT_ID = ?" +
-      "         AND ISACTIVE = 'Y'";
-
-    ResultSet result;
-    Vector<java.lang.Object> vector = new Vector<java.lang.Object>(0);
-    PreparedStatement st = null;
-
-    int iParameter = 0;
-    try {
-    st = connectionProvider.getPreparedStatement(strSql);
-      iParameter++; UtilSql.setValue(st, iParameter, 12, null, window);
-      iParameter++; UtilSql.setValue(st, iParameter, 12, null, clientId);
-
-      result = st.executeQuery();
-      long countRecord = 0;
-      long countRecordSkip = 1;
-      boolean continueResult = true;
-      while(countRecordSkip < firstRegister && continueResult) {
-        continueResult = result.next();
-        countRecordSkip++;
-      }
-      while(continueResult && result.next()) {
-        countRecord++;
-        AlertsForWrongOrdersData objectAlertsForWrongOrdersData = new AlertsForWrongOrdersData();
-        objectAlertsForWrongOrdersData.adRoleId = UtilSql.getValue(result, "ad_role_id");
-        objectAlertsForWrongOrdersData.InitRecordNumber = Integer.toString(firstRegister);
-        vector.addElement(objectAlertsForWrongOrdersData);
-        if (countRecord >= numberRegisters && numberRegisters != 0) {
-          continueResult = false;
-        }
-      }
-      result.close();
-    } catch(SQLException e){
-      log4j.error("SQL error in query: " + strSql + "Exception:"+ e);
-      throw new ServletException("@CODE=" + Integer.toString(e.getErrorCode()) + "@" + e.getMessage());
-    } catch(Exception ex){
-      log4j.error("Exception in query: " + strSql + "Exception:"+ ex);
-      throw new ServletException("@CODE=@" + ex.getMessage());
-    } finally {
-      try {
-        connectionProvider.releasePreparedStatement(st);
-      } catch(Exception ignore){
-        ignore.printStackTrace();
-      }
-    }
-    AlertsForWrongOrdersData objectAlertsForWrongOrdersData[] = new AlertsForWrongOrdersData[vector.size()];
-    vector.copyInto(objectAlertsForWrongOrdersData);
-    return(objectAlertsForWrongOrdersData);
-  }
-
-  public static int insertAlertRule(ConnectionProvider connectionProvider, String clientId, String name, String tabId, String sql)    throws ServletException {
-    String strSql = "";
-    strSql = strSql + 
-      "      INSERT INTO AD_ALERTRULE (" +
-      "        AD_ALERTRULE_ID, AD_CLIENT_ID, AD_ORG_ID,ISACTIVE," +
-      "        CREATED, CREATEDBY,  UPDATED, UPDATEDBY," +
-      "        NAME, AD_TAB_ID, FILTERCLAUSE, TYPE," +
-      "        SQL" +
-      "      ) VALUES (" +
-      "        get_uuid(), ?, '0', 'Y'," +
-      "        now(), '100', now(), '100'," +
-      "        ?, ?, '', 'E'," +
-      "        ?" +
-      "      )";
-
-    int updateCount = 0;
-    PreparedStatement st = null;
-
-    int iParameter = 0;
-    try {
-    st = connectionProvider.getPreparedStatement(strSql);
-      iParameter++; UtilSql.setValue(st, iParameter, 12, null, clientId);
-      iParameter++; UtilSql.setValue(st, iParameter, 12, null, name);
-      iParameter++; UtilSql.setValue(st, iParameter, 12, null, tabId);
-      iParameter++; UtilSql.setValue(st, iParameter, 12, null, sql);
-
-      updateCount = st.executeUpdate();
-    } catch(SQLException e){
-      log4j.error("SQL error in query: " + strSql + "Exception:"+ e);
-      throw new ServletException("@CODE=" + Integer.toString(e.getErrorCode()) + "@" + e.getMessage());
-    } catch(Exception ex){
-      log4j.error("Exception in query: " + strSql + "Exception:"+ ex);
-      throw new ServletException("@CODE=@" + ex.getMessage());
-    } finally {
-      try {
-        connectionProvider.releasePreparedStatement(st);
-      } catch(Exception ignore){
-        ignore.printStackTrace();
-      }
-    }
-    return(updateCount);
-  }
-
-  public static int insertAlert(ConnectionProvider connectionProvider, String client, String org, String description, String adAlertRuleId, String recordId, String referencekey_id)    throws ServletException {
-    String strSql = "";
-    strSql = strSql + 
-      "      INSERT INTO AD_Alert (" +
-      "        AD_Alert_ID, AD_Client_ID, AD_Org_ID, IsActive," +
-      "        Created, CreatedBy, Updated, UpdatedBy," +
-      "        Description, AD_AlertRule_ID, Record_Id, Referencekey_ID" +
-      "      ) VALUES (" +
-      "        get_uuid(), ?, ?, 'Y'," +
-      "        NOW(), '0', NOW(), '0'," +
-      "        ?, ?, ?, ?)";
-
-    int updateCount = 0;
-    PreparedStatement st = null;
-
-    int iParameter = 0;
-    try {
-    st = connectionProvider.getPreparedStatement(strSql);
-      iParameter++; UtilSql.setValue(st, iParameter, 12, null, client);
-      iParameter++; UtilSql.setValue(st, iParameter, 12, null, org);
-      iParameter++; UtilSql.setValue(st, iParameter, 12, null, description);
-      iParameter++; UtilSql.setValue(st, iParameter, 12, null, adAlertRuleId);
-      iParameter++; UtilSql.setValue(st, iParameter, 12, null, recordId);
-      iParameter++; UtilSql.setValue(st, iParameter, 12, null, referencekey_id);
-
-      updateCount = st.executeUpdate();
-    } catch(SQLException e){
-      log4j.error("SQL error in query: " + strSql + "Exception:"+ e);
-      throw new ServletException("@CODE=" + Integer.toString(e.getErrorCode()) + "@" + e.getMessage());
-    } catch(Exception ex){
-      log4j.error("Exception in query: " + strSql + "Exception:"+ ex);
-      throw new ServletException("@CODE=@" + ex.getMessage());
-    } finally {
-      try {
-        connectionProvider.releasePreparedStatement(st);
-      } catch(Exception ignore){
-        ignore.printStackTrace();
-      }
-    }
-    return(updateCount);
-  }
-
-  public static int insertAlertRecipient(ConnectionProvider connectionProvider, String client, String org, String adAlertRuleId, String role)    throws ServletException {
-    String strSql = "";
-    strSql = strSql + 
-      "    INSERT INTO ad_alertrecipient(" +
-      "            ad_user_id, ad_client_id, ad_org_id, isactive, created, createdby, " +
-      "            updated, updatedby, ad_alertrecipient_id, ad_alertrule_id, ad_role_id, " +
-      "            sendemail)" +
-      "    VALUES (null, ?, ?, 'Y', now(), '100', " +
-      "            now(), '100', get_uuid(), ?, ?, " +
-      "            'N')";
-
-    int updateCount = 0;
-    PreparedStatement st = null;
-
-    int iParameter = 0;
-    try {
-    st = connectionProvider.getPreparedStatement(strSql);
-      iParameter++; UtilSql.setValue(st, iParameter, 12, null, client);
-      iParameter++; UtilSql.setValue(st, iParameter, 12, null, org);
-      iParameter++; UtilSql.setValue(st, iParameter, 12, null, adAlertRuleId);
-      iParameter++; UtilSql.setValue(st, iParameter, 12, null, role);
-
-      updateCount = st.executeUpdate();
-    } catch(SQLException e){
-      log4j.error("SQL error in query: " + strSql + "Exception:"+ e);
-      throw new ServletException("@CODE=" + Integer.toString(e.getErrorCode()) + "@" + e.getMessage());
-    } catch(Exception ex){
-      log4j.error("Exception in query: " + strSql + "Exception:"+ ex);
-      throw new ServletException("@CODE=@" + ex.getMessage());
-    } finally {
-      try {
-        connectionProvider.releasePreparedStatement(st);
-      } catch(Exception ignore){
-        ignore.printStackTrace();
-      }
-    }
-    return(updateCount);
-  }
-}
--- a/modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/filterexpression/TransactionAddPaymentDefaultValues.java	Wed Aug 26 23:27:42 2015 +0200
+++ b/modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/filterexpression/TransactionAddPaymentDefaultValues.java	Fri Sep 04 09:30:06 2015 +0200
@@ -20,7 +20,6 @@
 
 import java.math.BigDecimal;
 import java.text.ParseException;
-import java.text.SimpleDateFormat;
 import java.util.Date;
 import java.util.Map;
 
@@ -222,8 +221,7 @@
         strTransactionDate = context.getString("inpstatementdate");
       }
       if (strTransactionDate != null) {
-
-        Date date = new SimpleDateFormat("dd-MM-yyyy").parse(strTransactionDate);
+        Date date = OBDateUtils.getDate(strTransactionDate);
         return OBDateUtils.formatDate(date);
       } else {
         return OBDateUtils.formatDate(new Date());
--- a/modules/org.openbravo.apachejdbcconnectionpool/src-db/database/sourcedata/AD_MODULE.xml	Wed Aug 26 23:27:42 2015 +0200
+++ b/modules/org.openbravo.apachejdbcconnectionpool/src-db/database/sourcedata/AD_MODULE.xml	Fri Sep 04 09:30:06 2015 +0200
@@ -6,7 +6,7 @@
 <!--8A098711BB324335A19833286BDB093D-->  <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
 <!--8A098711BB324335A19833286BDB093D-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--8A098711BB324335A19833286BDB093D-->  <NAME><![CDATA[Apache External Connection Pool]]></NAME>
-<!--8A098711BB324335A19833286BDB093D-->  <VERSION><![CDATA[1.0.27413]]></VERSION>
+<!--8A098711BB324335A19833286BDB093D-->  <VERSION><![CDATA[1.0.27515]]></VERSION>
 <!--8A098711BB324335A19833286BDB093D-->  <DESCRIPTION><![CDATA[Apache External Connection Pool]]></DESCRIPTION>
 <!--8A098711BB324335A19833286BDB093D-->  <HELP><![CDATA[This module implements the Apache JDBC Connection Pool (http://wiki.openbravo.com/wiki/Modules:Apache_JDBC_Connection_Pool).]]></HELP>
 <!--8A098711BB324335A19833286BDB093D-->  <TYPE><![CDATA[M]]></TYPE>
--- a/modules/org.openbravo.apachejdbcconnectionpool/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml	Wed Aug 26 23:27:42 2015 +0200
+++ b/modules/org.openbravo.apachejdbcconnectionpool/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml	Fri Sep 04 09:30:06 2015 +0200
@@ -7,7 +7,7 @@
 <!--1467C397BC5F4999A5606F39CD6FF8A4-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--1467C397BC5F4999A5606F39CD6FF8A4-->  <AD_MODULE_ID><![CDATA[8A098711BB324335A19833286BDB093D]]></AD_MODULE_ID>
 <!--1467C397BC5F4999A5606F39CD6FF8A4-->  <AD_DEPENDENT_MODULE_ID><![CDATA[7E48CDD73B7E493A8BED4F7253E7C989]]></AD_DEPENDENT_MODULE_ID>
-<!--1467C397BC5F4999A5606F39CD6FF8A4-->  <STARTVERSION><![CDATA[2.1.27413]]></STARTVERSION>
+<!--1467C397BC5F4999A5606F39CD6FF8A4-->  <STARTVERSION><![CDATA[2.1.27515]]></STARTVERSION>
 <!--1467C397BC5F4999A5606F39CD6FF8A4-->  <ISINCLUDED><![CDATA[N]]></ISINCLUDED>
 <!--1467C397BC5F4999A5606F39CD6FF8A4-->  <DEPENDANT_MODULE_NAME><![CDATA[Openbravo 3.0 Framework]]></DEPENDANT_MODULE_NAME>
 <!--1467C397BC5F4999A5606F39CD6FF8A4-->  <DEPENDENCY_ENFORCEMENT><![CDATA[MAJOR]]></DEPENDENCY_ENFORCEMENT>
--- a/modules/org.openbravo.base.weld/src-db/database/sourcedata/AD_MODULE.xml	Wed Aug 26 23:27:42 2015 +0200
+++ b/modules/org.openbravo.base.weld/src-db/database/sourcedata/AD_MODULE.xml	Fri Sep 04 09:30:06 2015 +0200
@@ -6,7 +6,7 @@
 <!--C70732EA90A14EC0916078B85CC33D2D-->  <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
 <!--C70732EA90A14EC0916078B85CC33D2D-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--C70732EA90A14EC0916078B85CC33D2D-->  <NAME><![CDATA[JBoss Weld]]></NAME>
-<!--C70732EA90A14EC0916078B85CC33D2D-->  <VERSION><![CDATA[1.1.27413]]></VERSION>
+<!--C70732EA90A14EC0916078B85CC33D2D-->  <VERSION><![CDATA[1.1.27515]]></VERSION>
 <!--C70732EA90A14EC0916078B85CC33D2D-->  <DESCRIPTION><![CDATA[JBoss Weld]]></DESCRIPTION>
 <!--C70732EA90A14EC0916078B85CC33D2D-->  <HELP><![CDATA[Provides the JBoss Weld framework: Java Contexts and Dependency Injection for the Java EE platform (CDI). For more information see http://seamframework.org/Weld]]></HELP>
 <!--C70732EA90A14EC0916078B85CC33D2D-->  <URL><![CDATA[http://forge.openbravo.com/projects/weld]]></URL>
--- a/modules/org.openbravo.base.weld/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml	Wed Aug 26 23:27:42 2015 +0200
+++ b/modules/org.openbravo.base.weld/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml	Fri Sep 04 09:30:06 2015 +0200
@@ -7,7 +7,7 @@
 <!--8BDE81545C1A43EAAC4BA3C5ED754DC8-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--8BDE81545C1A43EAAC4BA3C5ED754DC8-->  <AD_MODULE_ID><![CDATA[C70732EA90A14EC0916078B85CC33D2D]]></AD_MODULE_ID>
 <!--8BDE81545C1A43EAAC4BA3C5ED754DC8-->  <AD_DEPENDENT_MODULE_ID><![CDATA[0]]></AD_DEPENDENT_MODULE_ID>
-<!--8BDE81545C1A43EAAC4BA3C5ED754DC8-->  <STARTVERSION><![CDATA[3.0.27413]]></STARTVERSION>
+<!--8BDE81545C1A43EAAC4BA3C5ED754DC8-->  <STARTVERSION><![CDATA[3.0.27515]]></STARTVERSION>
 <!--8BDE81545C1A43EAAC4BA3C5ED754DC8-->  <ISINCLUDED><![CDATA[N]]></ISINCLUDED>
 <!--8BDE81545C1A43EAAC4BA3C5ED754DC8-->  <DEPENDANT_MODULE_NAME><![CDATA[Core]]></DEPENDANT_MODULE_NAME>
 <!--8BDE81545C1A43EAAC4BA3C5ED754DC8-->  <DEPENDENCY_ENFORCEMENT><![CDATA[MAJOR]]></DEPENDENCY_ENFORCEMENT>
--- a/modules/org.openbravo.client.application/src-db/database/model/triggers/OBUIAPP_AD_FIELD_MOD_TRG.xml	Wed Aug 26 23:27:42 2015 +0200
+++ b/modules/org.openbravo.client.application/src-db/database/model/triggers/OBUIAPP_AD_FIELD_MOD_TRG.xml	Fri Sep 04 09:30:06 2015 +0200
@@ -22,7 +22,6 @@
   devTemplate NUMBER;
   devModule   CHAR(1);
   cuerrentModuleID  VARCHAR2(32);
-  vAux NUMBER;
     
 BEGIN
     
--- a/modules/org.openbravo.client.application/src-db/database/model/triggers/OBUIAPP_MENU_PARAM_MOD_TRG.xml	Wed Aug 26 23:27:42 2015 +0200
+++ b/modules/org.openbravo.client.application/src-db/database/model/triggers/OBUIAPP_MENU_PARAM_MOD_TRG.xml	Fri Sep 04 09:30:06 2015 +0200
@@ -20,8 +20,6 @@
 * Contributor(s):  ______________________________________.
 ************************************************************************/
   devTemplate NUMBER;
-  fieldCount NUMBER;
-  selectorCount NUMBER;
   devModule   CHAR(1);
   currentModuleID  VARCHAR2(32);
   vAux NUMBER;
--- a/modules/org.openbravo.client.application/src-db/database/model/triggers/OBUIAPP_PARAMETER_MOD_TRG.xml	Wed Aug 26 23:27:42 2015 +0200
+++ b/modules/org.openbravo.client.application/src-db/database/model/triggers/OBUIAPP_PARAMETER_MOD_TRG.xml	Fri Sep 04 09:30:06 2015 +0200
@@ -20,8 +20,6 @@
 * Contributor(s):  ______________________________________.
 ************************************************************************/
   devTemplate NUMBER;
-  fieldCount NUMBER;
-  selectorCount NUMBER;
   devModule   CHAR(1);
   currentModuleID  VARCHAR2(32);
   vAux NUMBER;
--- a/modules/org.openbravo.client.application/src-db/database/sourcedata/AD_MODULE.xml	Wed Aug 26 23:27:42 2015 +0200
+++ b/modules/org.openbravo.client.application/src-db/database/sourcedata/AD_MODULE.xml	Fri Sep 04 09:30:06 2015 +0200
@@ -6,7 +6,7 @@
 <!--9BA0836A3CD74EE4AB48753A47211BCC-->  <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
 <!--9BA0836A3CD74EE4AB48753A47211BCC-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--9BA0836A3CD74EE4AB48753A47211BCC-->  <NAME><![CDATA[User Interface Application]]></NAME>
-<!--9BA0836A3CD74EE4AB48753A47211BCC-->  <VERSION><![CDATA[2.1.27413]]></VERSION>
+<!--9BA0836A3CD74EE4AB48753A47211BCC-->  <VERSION><![CDATA[2.1.27515]]></VERSION>
 <!--9BA0836A3CD74EE4AB48753A47211BCC-->  <DESCRIPTION><![CDATA[Provides the main application components for the openbravo user interface]]></DESCRIPTION>
 <!--9BA0836A3CD74EE4AB48753A47211BCC-->  <HELP><![CDATA[Provides the main application components for the openbravo user interface. The main layout incorporates a navigation bar and a main view area.]]></HELP>
 <!--9BA0836A3CD74EE4AB48753A47211BCC-->  <URL><![CDATA[http://forge.openbravo.com/projects/clientapplication]]></URL>
--- a/modules/org.openbravo.client.application/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml	Wed Aug 26 23:27:42 2015 +0200
+++ b/modules/org.openbravo.client.application/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml	Fri Sep 04 09:30:06 2015 +0200
@@ -7,7 +7,7 @@
 <!--15D7CE8D95D043189162DBABA54A1F61-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--15D7CE8D95D043189162DBABA54A1F61-->  <AD_MODULE_ID><![CDATA[9BA0836A3CD74EE4AB48753A47211BCC]]></AD_MODULE_ID>
 <!--15D7CE8D95D043189162DBABA54A1F61-->  <AD_DEPENDENT_MODULE_ID><![CDATA[A44B9BA75C354D8FB2E3F7D6EB6BFDC4]]></AD_DEPENDENT_MODULE_ID>
-<!--15D7CE8D95D043189162DBABA54A1F61-->  <STARTVERSION><![CDATA[2.1.27413]]></STARTVERSION>
+<!--15D7CE8D95D043189162DBABA54A1F61-->  <STARTVERSION><![CDATA[2.1.27515]]></STARTVERSION>
 <!--15D7CE8D95D043189162DBABA54A1F61-->  <ISINCLUDED><![CDATA[N]]></ISINCLUDED>
 <!--15D7CE8D95D043189162DBABA54A1F61-->  <DEPENDANT_MODULE_NAME><![CDATA[JSON Datasource]]></DEPENDANT_MODULE_NAME>
 <!--15D7CE8D95D043189162DBABA54A1F61-->  <DEPENDENCY_ENFORCEMENT><![CDATA[MAJOR]]></DEPENDENCY_ENFORCEMENT>
@@ -21,7 +21,7 @@
 <!--60A170212F36499D83B8AD38D01F46B3-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--60A170212F36499D83B8AD38D01F46B3-->  <AD_MODULE_ID><![CDATA[9BA0836A3CD74EE4AB48753A47211BCC]]></AD_MODULE_ID>
 <!--60A170212F36499D83B8AD38D01F46B3-->  <AD_DEPENDENT_MODULE_ID><![CDATA[4B828F4D03264080AA1D2057B13F613C]]></AD_DEPENDENT_MODULE_ID>
-<!--60A170212F36499D83B8AD38D01F46B3-->  <STARTVERSION><![CDATA[2.1.27413]]></STARTVERSION>
+<!--60A170212F36499D83B8AD38D01F46B3-->  <STARTVERSION><![CDATA[2.1.27515]]></STARTVERSION>
 <!--60A170212F36499D83B8AD38D01F46B3-->  <ISINCLUDED><![CDATA[N]]></ISINCLUDED>
 <!--60A170212F36499D83B8AD38D01F46B3-->  <DEPENDANT_MODULE_NAME><![CDATA[User Interface Client Kernel]]></DEPENDANT_MODULE_NAME>
 <!--60A170212F36499D83B8AD38D01F46B3-->  <DEPENDENCY_ENFORCEMENT><![CDATA[MAJOR]]></DEPENDENCY_ENFORCEMENT>
@@ -35,7 +35,7 @@
 <!--824D60CB352E4099B1D8C903CA139DAE-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--824D60CB352E4099B1D8C903CA139DAE-->  <AD_MODULE_ID><![CDATA[9BA0836A3CD74EE4AB48753A47211BCC]]></AD_MODULE_ID>
 <!--824D60CB352E4099B1D8C903CA139DAE-->  <AD_DEPENDENT_MODULE_ID><![CDATA[0]]></AD_DEPENDENT_MODULE_ID>
-<!--824D60CB352E4099B1D8C903CA139DAE-->  <STARTVERSION><![CDATA[3.0.27413]]></STARTVERSION>
+<!--824D60CB352E4099B1D8C903CA139DAE-->  <STARTVERSION><![CDATA[3.0.27515]]></STARTVERSION>
 <!--824D60CB352E4099B1D8C903CA139DAE-->  <ISINCLUDED><![CDATA[N]]></ISINCLUDED>
 <!--824D60CB352E4099B1D8C903CA139DAE-->  <DEPENDANT_MODULE_NAME><![CDATA[core]]></DEPENDANT_MODULE_NAME>
 <!--824D60CB352E4099B1D8C903CA139DAE-->  <DEPENDENCY_ENFORCEMENT><![CDATA[MAJOR]]></DEPENDENCY_ENFORCEMENT>
@@ -49,7 +49,7 @@
 <!--E8FD820AFE3D4FE08C02FC47769026AD-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--E8FD820AFE3D4FE08C02FC47769026AD-->  <AD_MODULE_ID><![CDATA[9BA0836A3CD74EE4AB48753A47211BCC]]></AD_MODULE_ID>
 <!--E8FD820AFE3D4FE08C02FC47769026AD-->  <AD_DEPENDENT_MODULE_ID><![CDATA[EC356CEE3D46416CA1EBEEB9AB82EDB9]]></AD_DEPENDENT_MODULE_ID>
-<!--E8FD820AFE3D4FE08C02FC47769026AD-->  <STARTVERSION><![CDATA[8.1.27413]]></STARTVERSION>
+<!--E8FD820AFE3D4FE08C02FC47769026AD-->  <STARTVERSION><![CDATA[8.1.27515]]></STARTVERSION>
 <!--E8FD820AFE3D4FE08C02FC47769026AD-->  <ISINCLUDED><![CDATA[N]]></ISINCLUDED>
 <!--E8FD820AFE3D4FE08C02FC47769026AD-->  <DEPENDANT_MODULE_NAME><![CDATA[Smartclient]]></DEPENDANT_MODULE_NAME>
 <!--E8FD820AFE3D4FE08C02FC47769026AD-->  <DEPENDENCY_ENFORCEMENT><![CDATA[MAJOR]]></DEPENDENCY_ENFORCEMENT>
--- a/modules/org.openbravo.client.application/src/org/openbravo/client/application/report/BaseReportActionHandler.java	Wed Aug 26 23:27:42 2015 +0200
+++ b/modules/org.openbravo.client.application/src/org/openbravo/client/application/report/BaseReportActionHandler.java	Fri Sep 04 09:30:06 2015 +0200
@@ -247,6 +247,10 @@
       throw new OBException(OBMessageUtils.messageBD("OBUIAPP_NoJRTemplateFound"));
     }
 
+    if (!strJRPath.startsWith("/")) {
+      // Tomcat 8 forces getRealPath to start with a slash
+      strJRPath = "/" + strJRPath;
+    }
     final String jrTemplatePath = DalContextListener.getServletContext().getRealPath(strJRPath);
     HashMap<String, Object> jrParams = new HashMap<String, Object>();
     loadFilterParams(jrParams, report, params);
--- a/modules/org.openbravo.client.htmlwidget/src-db/database/sourcedata/AD_MODULE.xml	Wed Aug 26 23:27:42 2015 +0200
+++ b/modules/org.openbravo.client.htmlwidget/src-db/database/sourcedata/AD_MODULE.xml	Fri Sep 04 09:30:06 2015 +0200
@@ -6,7 +6,7 @@
 <!--D393BE6F22BB44B7B728259B34FC795A-->  <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
 <!--D393BE6F22BB44B7B728259B34FC795A-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--D393BE6F22BB44B7B728259B34FC795A-->  <NAME><![CDATA[HTML Widget]]></NAME>
-<!--D393BE6F22BB44B7B728259B34FC795A-->  <VERSION><![CDATA[1.0.27413]]></VERSION>
+<!--D393BE6F22BB44B7B728259B34FC795A-->  <VERSION><![CDATA[1.0.27515]]></VERSION>
 <!--D393BE6F22BB44B7B728259B34FC795A-->  <DESCRIPTION><![CDATA[Provides the HTML Widget superclass that allows to create widget classes that embed the html code.]]></DESCRIPTION>
 <!--D393BE6F22BB44B7B728259B34FC795A-->  <HELP><![CDATA[With this module you can define your own widget classes just setting up your own html code or the html code provided by third parties.]]></HELP>
 <!--D393BE6F22BB44B7B728259B34FC795A-->  <URL><![CDATA[http://forge.openbravo.com/projects/htmlwidget]]></URL>
--- a/modules/org.openbravo.client.htmlwidget/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml	Wed Aug 26 23:27:42 2015 +0200
+++ b/modules/org.openbravo.client.htmlwidget/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml	Fri Sep 04 09:30:06 2015 +0200
@@ -7,7 +7,7 @@
 <!--DCE798FBC5B648F7A3C81A6941720A57-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--DCE798FBC5B648F7A3C81A6941720A57-->  <AD_MODULE_ID><![CDATA[D393BE6F22BB44B7B728259B34FC795A]]></AD_MODULE_ID>
 <!--DCE798FBC5B648F7A3C81A6941720A57-->  <AD_DEPENDENT_MODULE_ID><![CDATA[2758CD25B2704AF6BBAD10365FC82C06]]></AD_DEPENDENT_MODULE_ID>
-<!--DCE798FBC5B648F7A3C81A6941720A57-->  <STARTVERSION><![CDATA[2.1.27413]]></STARTVERSION>
+<!--DCE798FBC5B648F7A3C81A6941720A57-->  <STARTVERSION><![CDATA[2.1.27515]]></STARTVERSION>
 <!--DCE798FBC5B648F7A3C81A6941720A57-->  <ISINCLUDED><![CDATA[N]]></ISINCLUDED>
 <!--DCE798FBC5B648F7A3C81A6941720A57-->  <DEPENDANT_MODULE_NAME><![CDATA[My Openbravo Tab]]></DEPENDANT_MODULE_NAME>
 <!--DCE798FBC5B648F7A3C81A6941720A57-->  <DEPENDENCY_ENFORCEMENT><![CDATA[MAJOR]]></DEPENDENCY_ENFORCEMENT>
--- a/modules/org.openbravo.client.kernel/src-db/database/model/triggers/OBCLKER_TEMPLATE_DEPEND_TRG.xml	Wed Aug 26 23:27:42 2015 +0200
+++ b/modules/org.openbravo.client.kernel/src-db/database/model/triggers/OBCLKER_TEMPLATE_DEPEND_TRG.xml	Fri Sep 04 09:30:06 2015 +0200
@@ -22,7 +22,6 @@
   devTemplate NUMBER;
   devModule   CHAR(1);
   currentTemplateID  VARCHAR2(32);
-  vAux NUMBER;
 
 BEGIN
     
--- a/modules/org.openbravo.client.kernel/src-db/database/sourcedata/AD_MODULE.xml	Wed Aug 26 23:27:42 2015 +0200
+++ b/modules/org.openbravo.client.kernel/src-db/database/sourcedata/AD_MODULE.xml	Fri Sep 04 09:30:06 2015 +0200
@@ -6,7 +6,7 @@
 <!--4B828F4D03264080AA1D2057B13F613C-->  <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
 <!--4B828F4D03264080AA1D2057B13F613C-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--4B828F4D03264080AA1D2057B13F613C-->  <NAME><![CDATA[User Interface Client Kernel]]></NAME>
-<!--4B828F4D03264080AA1D2057B13F613C-->  <VERSION><![CDATA[2.1.27413]]></VERSION>
+<!--4B828F4D03264080AA1D2057B13F613C-->  <VERSION><![CDATA[2.1.27515]]></VERSION>
 <!--4B828F4D03264080AA1D2057B13F613C-->  <DESCRIPTION><![CDATA[Provides framework functionality for the Openbravo User Interface]]></DESCRIPTION>
 <!--4B828F4D03264080AA1D2057B13F613C-->  <HELP><![CDATA[The user interface client kernel is a generation framework for generating client (browser) components used in Openbravo. Its components are mainly used by other modules to provide customizable and extendable user interfaces.]]></HELP>
 <!--4B828F4D03264080AA1D2057B13F613C-->  <URL><![CDATA[http://forge.openbravo.com/projects/openbravoclientkernel]]></URL>
--- a/modules/org.openbravo.client.kernel/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml	Wed Aug 26 23:27:42 2015 +0200
+++ b/modules/org.openbravo.client.kernel/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml	Fri Sep 04 09:30:06 2015 +0200
@@ -7,7 +7,7 @@
 <!--26B041893E844A53AFA58BC326C4F0D7-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--26B041893E844A53AFA58BC326C4F0D7-->  <AD_MODULE_ID><![CDATA[4B828F4D03264080AA1D2057B13F613C]]></AD_MODULE_ID>
 <!--26B041893E844A53AFA58BC326C4F0D7-->  <AD_DEPENDENT_MODULE_ID><![CDATA[0]]></AD_DEPENDENT_MODULE_ID>
-<!--26B041893E844A53AFA58BC326C4F0D7-->  <STARTVERSION><![CDATA[3.0.27413]]></STARTVERSION>
+<!--26B041893E844A53AFA58BC326C4F0D7-->  <STARTVERSION><![CDATA[3.0.27515]]></STARTVERSION>
 <!--26B041893E844A53AFA58BC326C4F0D7-->  <ISINCLUDED><![CDATA[N]]></ISINCLUDED>
 <!--26B041893E844A53AFA58BC326C4F0D7-->  <DEPENDANT_MODULE_NAME><![CDATA[core]]></DEPENDANT_MODULE_NAME>
 <!--26B041893E844A53AFA58BC326C4F0D7-->  <DEPENDENCY_ENFORCEMENT><![CDATA[MAJOR]]></DEPENDENCY_ENFORCEMENT>
@@ -21,7 +21,7 @@
 <!--3AB045DA35ED4CA58EF7EB5BF04CDE3F-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--3AB045DA35ED4CA58EF7EB5BF04CDE3F-->  <AD_MODULE_ID><![CDATA[4B828F4D03264080AA1D2057B13F613C]]></AD_MODULE_ID>
 <!--3AB045DA35ED4CA58EF7EB5BF04CDE3F-->  <AD_DEPENDENT_MODULE_ID><![CDATA[C70732EA90A14EC0916078B85CC33D2D]]></AD_DEPENDENT_MODULE_ID>
-<!--3AB045DA35ED4CA58EF7EB5BF04CDE3F-->  <STARTVERSION><![CDATA[1.1.27413]]></STARTVERSION>
+<!--3AB045DA35ED4CA58EF7EB5BF04CDE3F-->  <STARTVERSION><![CDATA[1.1.27515]]></STARTVERSION>
 <!--3AB045DA35ED4CA58EF7EB5BF04CDE3F-->  <ISINCLUDED><![CDATA[N]]></ISINCLUDED>
 <!--3AB045DA35ED4CA58EF7EB5BF04CDE3F-->  <DEPENDANT_MODULE_NAME><![CDATA[JBoss Weld]]></DEPENDANT_MODULE_NAME>
 <!--3AB045DA35ED4CA58EF7EB5BF04CDE3F-->  <DEPENDENCY_ENFORCEMENT><![CDATA[MAJOR]]></DEPENDENCY_ENFORCEMENT>
@@ -35,7 +35,7 @@
 <!--D7BA4BB0844942C58DC46B9E23CF8E67-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--D7BA4BB0844942C58DC46B9E23CF8E67-->  <AD_MODULE_ID><![CDATA[4B828F4D03264080AA1D2057B13F613C]]></AD_MODULE_ID>
 <!--D7BA4BB0844942C58DC46B9E23CF8E67-->  <AD_DEPENDENT_MODULE_ID><![CDATA[F8D1B3ECB3474E8DA5C216473C840DF1]]></AD_DEPENDENT_MODULE_ID>
-<!--D7BA4BB0844942C58DC46B9E23CF8E67-->  <STARTVERSION><![CDATA[2.0.27413]]></STARTVERSION>
+<!--D7BA4BB0844942C58DC46B9E23CF8E67-->  <STARTVERSION><![CDATA[2.0.27515]]></STARTVERSION>
 <!--D7BA4BB0844942C58DC46B9E23CF8E67-->  <ISINCLUDED><![CDATA[N]]></ISINCLUDED>
 <!--D7BA4BB0844942C58DC46B9E23CF8E67-->  <DEPENDANT_MODULE_NAME><![CDATA[JSON REST Webservice]]></DEPENDANT_MODULE_NAME>
 <!--D7BA4BB0844942C58DC46B9E23CF8E67-->  <DEPENDENCY_ENFORCEMENT><![CDATA[MAJOR]]></DEPENDENCY_ENFORCEMENT>
--- a/modules/org.openbravo.client.kernel/src/org/openbravo/client/kernel/StaticResourceComponent.java	Wed Aug 26 23:27:42 2015 +0200
+++ b/modules/org.openbravo.client.kernel/src/org/openbravo/client/kernel/StaticResourceComponent.java	Fri Sep 04 09:30:06 2015 +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) 2010-2012 Openbravo SLU
+ * All portions are Copyright (C) 2010-2015 Openbravo SLU
  * All Rights Reserved.
  * Contributor(s):  ______________________________________.
  ************************************************************************
@@ -46,7 +46,7 @@
 public class StaticResourceComponent extends BaseComponent {
   private static final Logger log = Logger.getLogger(StaticResourceComponent.class);
 
-  public static final String GEN_TARGET_LOCATION = "web/js/gen";
+  public static final String GEN_TARGET_LOCATION = "/web/js/gen";
 
   @Inject
   @Any
@@ -107,7 +107,7 @@
       }
 
       StringBuilder result = new StringBuilder();
-      final String scriptPath = getContextUrl() + GEN_TARGET_LOCATION + "/"
+      final String scriptPath = getContextUrl() + GEN_TARGET_LOCATION.substring(1) + "/"
           + getStaticResourceFileName() + ".js";
 
       if (isClassicMode()) {
@@ -194,6 +194,11 @@
                   resourcePath = resourcePath.replaceAll(KernelConstants.SKIN_PARAMETER, skinParam);
                 }
 
+                if (!resourcePath.startsWith("/")) {
+                  // Tomcat 8 forces getRealPath to start with a slash
+                  resourcePath = "/" + resourcePath;
+                }
+
                 try {
                   final File file = new File(context.getRealPath(resourcePath));
                   if (!file.exists() || !file.canRead()) {
@@ -243,9 +248,17 @@
        * 
        * TODO: don't load the ob-debug.js file if not in use
        */
-      if (isInDevelopment() || OBPropertiesProvider.getInstance().getBooleanProperty("test.environment")) {
-        // append a global isDebug var and the causes that provoked the application to enter Debug mode
-        sb.insert(0, String.format("var isDebug = true;\nvar debugCauses = {\n  isInDevelopment: %s,\n  isTestEnvironment: %s\n};\n\n", isInDevelopment(), OBPropertiesProvider.getInstance().getBooleanProperty("test.environment")));
+      if (isInDevelopment()
+          || OBPropertiesProvider.getInstance().getBooleanProperty("test.environment")) {
+        // append a global isDebug var and the causes that provoked the application to enter Debug
+        // mode
+        sb.insert(
+            0,
+            String
+                .format(
+                    "var isDebug = true;\nvar debugCauses = {\n  isInDevelopment: %s,\n  isTestEnvironment: %s\n};\n\n",
+                    isInDevelopment(),
+                    OBPropertiesProvider.getInstance().getBooleanProperty("test.environment")));
       }
       sb.append("if (window.onerror && window.onerror.name === '"
           + KernelConstants.BOOTSTRAP_ERROR_HANDLER_NAME + "') { window.onerror = null; }");
@@ -272,11 +285,12 @@
       output = sb.toString();
     }
     final String md5 = DigestUtils.md5Hex(output);
-    final File dir = new File(context.getRealPath(GEN_TARGET_LOCATION));
+    final String getTargetLocation = context.getRealPath(GEN_TARGET_LOCATION);
+    final File dir = new File(getTargetLocation);
     if (!dir.exists()) {
       dir.mkdir();
     }
-    File outFile = new File(context.getRealPath(GEN_TARGET_LOCATION + "/" + md5 + ".js"));
+    File outFile = new File(getTargetLocation + "/" + md5 + ".js");
     if (!outFile.exists()) {
       try {
         log.debug("Writing file: " + outFile.getAbsolutePath());
--- a/modules/org.openbravo.client.kernel/src/org/openbravo/client/kernel/StyleSheetResourceComponent.java	Wed Aug 26 23:27:42 2015 +0200
+++ b/modules/org.openbravo.client.kernel/src/org/openbravo/client/kernel/StyleSheetResourceComponent.java	Fri Sep 04 09:30:06 2015 +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) 2010-2013 Openbravo SLU
+ * All portions are Copyright (C) 2010-2015 Openbravo SLU
  * All Rights Reserved.
  * Contributor(s):  ______________________________________.
  ************************************************************************
@@ -141,6 +141,10 @@
               if (resourcePath.contains(KernelConstants.SKIN_PARAMETER)) {
                 resourcePath = resourcePath.replaceAll(KernelConstants.SKIN_PARAMETER, skinParam);
               }
+              if (!resourcePath.startsWith("/")) {
+                // Tomcat 8 forces getRealPath to start with a slash
+                resourcePath = "/" + resourcePath;
+              }
 
               try {
                 final String realResourcePath = context.getRealPath(resourcePath);
--- a/modules/org.openbravo.client.kernel/src/org/openbravo/client/kernel/reference/CharacteristicsUIDefinition.java	Wed Aug 26 23:27:42 2015 +0200
+++ b/modules/org.openbravo.client.kernel/src/org/openbravo/client/kernel/reference/CharacteristicsUIDefinition.java	Fri Sep 04 09:30:06 2015 +0200
@@ -67,8 +67,15 @@
       JSONObject jsnobject = new JSONObject(result);
 
       RequestContext rq = RequestContext.get();
-      String columnValue = rq.getRequestParameter("inp"
-          + Sqlc.TransformaNombreColumna(field.getColumn().getDBColumnName()));
+      String fieldId;
+      if (field.getProperty() != null && !field.getProperty().isEmpty()) {
+        fieldId = "inp" + "_propertyField_"
+            + Sqlc.TransformaNombreColumna(field.getName()).replace(" ", "") + "_"
+            + field.getColumn().getDBColumnName();
+      } else {
+        fieldId = "inp" + Sqlc.TransformaNombreColumna(field.getColumn().getDBColumnName());
+      }
+      String columnValue = rq.getRequestParameter(fieldId);
       if (StringUtils.isEmpty(columnValue)) {
         return result;
       }
--- a/modules/org.openbravo.client.myob/src-db/database/model/triggers/OBKMO_WIDGET_CLASS_MOD_TRG.xml	Wed Aug 26 23:27:42 2015 +0200
+++ b/modules/org.openbravo.client.myob/src-db/database/model/triggers/OBKMO_WIDGET_CLASS_MOD_TRG.xml	Fri Sep 04 09:30:06 2015 +0200
@@ -20,8 +20,6 @@
 * Contributor(s):  ______________________________________.
 ************************************************************************/
   devTemplate NUMBER;
-  fieldCount NUMBER;
-  selectorCount NUMBER;
   devModule   CHAR(1);
   currentModuleID  VARCHAR2(32);
   vAux NUMBER;
--- a/modules/org.openbravo.client.myob/src-db/database/model/triggers/OBKMO_WIDGET_URL_MOD_TRG.xml	Wed Aug 26 23:27:42 2015 +0200
+++ b/modules/org.openbravo.client.myob/src-db/database/model/triggers/OBKMO_WIDGET_URL_MOD_TRG.xml	Fri Sep 04 09:30:06 2015 +0200
@@ -20,11 +20,8 @@
 * Contributor(s):  ______________________________________.
 ************************************************************************/
   devTemplate NUMBER;
-  fieldCount NUMBER;
-  selectorCount NUMBER;
   devModule   CHAR(1);
   currentWidgetClassID  VARCHAR2(32);
-  vAux NUMBER;
 
 BEGIN
     
--- a/modules/org.openbravo.client.myob/src-db/database/sourcedata/AD_MODULE.xml	Wed Aug 26 23:27:42 2015 +0200
+++ b/modules/org.openbravo.client.myob/src-db/database/sourcedata/AD_MODULE.xml	Fri Sep 04 09:30:06 2015 +0200
@@ -6,7 +6,7 @@
 <!--2758CD25B2704AF6BBAD10365FC82C06-->  <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
 <!--2758CD25B2704AF6BBAD10365FC82C06-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--2758CD25B2704AF6BBAD10365FC82C06-->  <NAME><![CDATA[Workspace & Widgets]]></NAME>
-<!--2758CD25B2704AF6BBAD10365FC82C06-->  <VERSION><![CDATA[2.1.27413]]></VERSION>
+<!--2758CD25B2704AF6BBAD10365FC82C06-->  <VERSION><![CDATA[2.1.27515]]></VERSION>
 <!--2758CD25B2704AF6BBAD10365FC82C06-->  <DESCRIPTION><![CDATA[Workspace & Widgets]]></DESCRIPTION>
 <!--2758CD25B2704AF6BBAD10365FC82C06-->  <HELP><![CDATA[Provides the infrastructure of workspace tab (formerly My Openbravo)]]></HELP>
 <!--2758CD25B2704AF6BBAD10365FC82C06-->  <URL><![CDATA[http://forge.openbravo.com/projects/myopenbravo]]></URL>
--- a/modules/org.openbravo.client.myob/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml	Wed Aug 26 23:27:42 2015 +0200
+++ b/modules/org.openbravo.client.myob/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml	Fri Sep 04 09:30:06 2015 +0200
@@ -7,7 +7,7 @@
 <!--15F51F03882F444CAB6593B4566DC929-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--15F51F03882F444CAB6593B4566DC929-->  <AD_MODULE_ID><![CDATA[2758CD25B2704AF6BBAD10365FC82C06]]></AD_MODULE_ID>
 <!--15F51F03882F444CAB6593B4566DC929-->  <AD_DEPENDENT_MODULE_ID><![CDATA[9BA0836A3CD74EE4AB48753A47211BCC]]></AD_DEPENDENT_MODULE_ID>
-<!--15F51F03882F444CAB6593B4566DC929-->  <STARTVERSION><![CDATA[2.1.27413]]></STARTVERSION>
+<!--15F51F03882F444CAB6593B4566DC929-->  <STARTVERSION><![CDATA[2.1.27515]]></STARTVERSION>
 <!--15F51F03882F444CAB6593B4566DC929-->  <ISINCLUDED><![CDATA[N]]></ISINCLUDED>
 <!--15F51F03882F444CAB6593B4566DC929-->  <DEPENDANT_MODULE_NAME><![CDATA[User Interface Application]]></DEPENDANT_MODULE_NAME>
 <!--15F51F03882F444CAB6593B4566DC929-->  <DEPENDENCY_ENFORCEMENT><![CDATA[MAJOR]]></DEPENDENCY_ENFORCEMENT>
@@ -21,7 +21,7 @@
 <!--E71B28FC949D481D9F59C17D01E46EF9-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--E71B28FC949D481D9F59C17D01E46EF9-->  <AD_MODULE_ID><![CDATA[2758CD25B2704AF6BBAD10365FC82C06]]></AD_MODULE_ID>
 <!--E71B28FC949D481D9F59C17D01E46EF9-->  <AD_DEPENDENT_MODULE_ID><![CDATA[0]]></AD_DEPENDENT_MODULE_ID>
-<!--E71B28FC949D481D9F59C17D01E46EF9-->  <STARTVERSION><![CDATA[3.0.27413]]></STARTVERSION>
+<!--E71B28FC949D481D9F59C17D01E46EF9-->  <STARTVERSION><![CDATA[3.0.27515]]></STARTVERSION>
 <!--E71B28FC949D481D9F59C17D01E46EF9-->  <ISINCLUDED><![CDATA[N]]></ISINCLUDED>
 <!--E71B28FC949D481D9F59C17D01E46EF9-->  <DEPENDANT_MODULE_NAME><![CDATA[Core]]></DEPENDANT_MODULE_NAME>
 <!--E71B28FC949D481D9F59C17D01E46EF9-->  <DEPENDENCY_ENFORCEMENT><![CDATA[MAJOR]]></DEPENDENCY_ENFORCEMENT>
--- a/modules/org.openbravo.client.querylist/src-db/database/sourcedata/AD_MODULE.xml	Wed Aug 26 23:27:42 2015 +0200
+++ b/modules/org.openbravo.client.querylist/src-db/database/sourcedata/AD_MODULE.xml	Fri Sep 04 09:30:06 2015 +0200
@@ -6,7 +6,7 @@
 <!--0A060B2AF1974E8EAA8DB61388E9AECC-->  <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
 <!--0A060B2AF1974E8EAA8DB61388E9AECC-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--0A060B2AF1974E8EAA8DB61388E9AECC-->  <NAME><![CDATA[Query/List Widget]]></NAME>
-<!--0A060B2AF1974E8EAA8DB61388E9AECC-->  <VERSION><![CDATA[1.0.27413]]></VERSION>
+<!--0A060B2AF1974E8EAA8DB61388E9AECC-->  <VERSION><![CDATA[1.0.27515]]></VERSION>
 <!--0A060B2AF1974E8EAA8DB61388E9AECC-->  <DESCRIPTION><![CDATA[Provides the Query/List superclass widget that allows to create widget classes that prints a grid of data based on a query.]]></DESCRIPTION>
 <!--0A060B2AF1974E8EAA8DB61388E9AECC-->  <HELP><![CDATA[With this module you can define your own widget classes that just with simple Application Dictionary shows a grid of data based on a HQL Query.]]></HELP>
 <!--0A060B2AF1974E8EAA8DB61388E9AECC-->  <URL><![CDATA[http://forge.openbravo.com/projects/querylistwidget]]></URL>
--- a/modules/org.openbravo.client.querylist/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml	Wed Aug 26 23:27:42 2015 +0200
+++ b/modules/org.openbravo.client.querylist/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml	Fri Sep 04 09:30:06 2015 +0200
@@ -7,7 +7,7 @@
 <!--26558497C31140BFAB067BA4BC47D799-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--26558497C31140BFAB067BA4BC47D799-->  <AD_MODULE_ID><![CDATA[0A060B2AF1974E8EAA8DB61388E9AECC]]></AD_MODULE_ID>
 <!--26558497C31140BFAB067BA4BC47D799-->  <AD_DEPENDENT_MODULE_ID><![CDATA[2758CD25B2704AF6BBAD10365FC82C06]]></AD_DEPENDENT_MODULE_ID>
-<!--26558497C31140BFAB067BA4BC47D799-->  <STARTVERSION><![CDATA[2.1.27413]]></STARTVERSION>
+<!--26558497C31140BFAB067BA4BC47D799-->  <STARTVERSION><![CDATA[2.1.27515]]></STARTVERSION>
 <!--26558497C31140BFAB067BA4BC47D799-->  <ISINCLUDED><![CDATA[N]]></ISINCLUDED>
 <!--26558497C31140BFAB067BA4BC47D799-->  <DEPENDANT_MODULE_NAME><![CDATA[My Openbravo Tab]]></DEPENDANT_MODULE_NAME>
 <!--26558497C31140BFAB067BA4BC47D799-->  <DEPENDENCY_ENFORCEMENT><![CDATA[MAJOR]]></DEPENDENCY_ENFORCEMENT>
--- a/modules/org.openbravo.client.widgets/src-db/database/sourcedata/AD_MODULE.xml	Wed Aug 26 23:27:42 2015 +0200
+++ b/modules/org.openbravo.client.widgets/src-db/database/sourcedata/AD_MODULE.xml	Fri Sep 04 09:30:06 2015 +0200
@@ -6,7 +6,7 @@
 <!--FF8080812D842086012D844F3CC0003E-->  <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
 <!--FF8080812D842086012D844F3CC0003E-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--FF8080812D842086012D844F3CC0003E-->  <NAME><![CDATA[Widgets Collection]]></NAME>
-<!--FF8080812D842086012D844F3CC0003E-->  <VERSION><![CDATA[0.0.27413]]></VERSION>
+<!--FF8080812D842086012D844F3CC0003E-->  <VERSION><![CDATA[0.0.27515]]></VERSION>
 <!--FF8080812D842086012D844F3CC0003E-->  <DESCRIPTION><![CDATA[Collection of Workspace Widgets]]></DESCRIPTION>
 <!--FF8080812D842086012D844F3CC0003E-->  <HELP><![CDATA[Collection of Workspace Widgets]]></HELP>
 <!--FF8080812D842086012D844F3CC0003E-->  <URL><![CDATA[http://forge.openbravo.com/projects/widgetscollection]]></URL>
--- a/modules/org.openbravo.client.widgets/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml	Wed Aug 26 23:27:42 2015 +0200
+++ b/modules/org.openbravo.client.widgets/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml	Fri Sep 04 09:30:06 2015 +0200
@@ -7,7 +7,7 @@
 <!--FF8080812D842086012D845002070046-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--FF8080812D842086012D845002070046-->  <AD_MODULE_ID><![CDATA[FF8080812D842086012D844F3CC0003E]]></AD_MODULE_ID>
 <!--FF8080812D842086012D845002070046-->  <AD_DEPENDENT_MODULE_ID><![CDATA[2758CD25B2704AF6BBAD10365FC82C06]]></AD_DEPENDENT_MODULE_ID>
-<!--FF8080812D842086012D845002070046-->  <STARTVERSION><![CDATA[2.1.27413]]></STARTVERSION>
+<!--FF8080812D842086012D845002070046-->  <STARTVERSION><![CDATA[2.1.27515]]></STARTVERSION>
 <!--FF8080812D842086012D845002070046-->  <ISINCLUDED><![CDATA[N]]></ISINCLUDED>
 <!--FF8080812D842086012D845002070046-->  <DEPENDANT_MODULE_NAME><![CDATA[Workspace & Widgets]]></DEPENDANT_MODULE_NAME>
 <!--FF8080812D842086012D845002070046-->  <DEPENDENCY_ENFORCEMENT><![CDATA[MAJOR]]></DEPENDENCY_ENFORCEMENT>
--- a/modules/org.openbravo.financial.paymentreport/src-db/database/sourcedata/AD_MODULE.xml	Wed Aug 26 23:27:42 2015 +0200
+++ b/modules/org.openbravo.financial.paymentreport/src-db/database/sourcedata/AD_MODULE.xml	Fri Sep 04 09:30:06 2015 +0200
@@ -6,7 +6,7 @@
 <!--2A5EE903D7974AC298C0504FBC4501A7-->  <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
 <!--2A5EE903D7974AC298C0504FBC4501A7-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--2A5EE903D7974AC298C0504FBC4501A7-->  <NAME><![CDATA[Payment Report]]></NAME>
-<!--2A5EE903D7974AC298C0504FBC4501A7-->  <VERSION><![CDATA[3.0.27413]]></VERSION>
+<!--2A5EE903D7974AC298C0504FBC4501A7-->  <VERSION><![CDATA[3.0.27515]]></VERSION>
 <!--2A5EE903D7974AC298C0504FBC4501A7-->  <DESCRIPTION><![CDATA[Payment Report]]></DESCRIPTION>
 <!--2A5EE903D7974AC298C0504FBC4501A7-->  <URL><![CDATA[http://forge.openbravo.com/projects/paymentreport]]></URL>
 <!--2A5EE903D7974AC298C0504FBC4501A7-->  <TYPE><![CDATA[M]]></TYPE>
--- a/modules/org.openbravo.financial.paymentreport/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml	Wed Aug 26 23:27:42 2015 +0200
+++ b/modules/org.openbravo.financial.paymentreport/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml	Fri Sep 04 09:30:06 2015 +0200
@@ -7,7 +7,7 @@
 <!--A3B449C4D5FE4D688CC58236FE33B802-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--A3B449C4D5FE4D688CC58236FE33B802-->  <AD_MODULE_ID><![CDATA[2A5EE903D7974AC298C0504FBC4501A7]]></AD_MODULE_ID>
 <!--A3B449C4D5FE4D688CC58236FE33B802-->  <AD_DEPENDENT_MODULE_ID><![CDATA[A918E3331C404B889D69AA9BFAFB23AC]]></AD_DEPENDENT_MODULE_ID>
-<!--A3B449C4D5FE4D688CC58236FE33B802-->  <STARTVERSION><![CDATA[3.0.27413]]></STARTVERSION>
+<!--A3B449C4D5FE4D688CC58236FE33B802-->  <STARTVERSION><![CDATA[3.0.27515]]></STARTVERSION>
 <!--A3B449C4D5FE4D688CC58236FE33B802-->  <ISINCLUDED><![CDATA[N]]></ISINCLUDED>
 <!--A3B449C4D5FE4D688CC58236FE33B802-->  <DEPENDANT_MODULE_NAME><![CDATA[Advanced Payables and Receivables Mngmt]]></DEPENDANT_MODULE_NAME>
 <!--A3B449C4D5FE4D688CC58236FE33B802-->  <DEPENDENCY_ENFORCEMENT><![CDATA[MAJOR]]></DEPENDENCY_ENFORCEMENT>
--- a/modules/org.openbravo.reports.ordersawaitingdelivery/src-db/database/sourcedata/AD_MODULE.xml	Wed Aug 26 23:27:42 2015 +0200
+++ b/modules/org.openbravo.reports.ordersawaitingdelivery/src-db/database/sourcedata/AD_MODULE.xml	Fri Sep 04 09:30:06 2015 +0200
@@ -6,7 +6,7 @@
 <!--3A3A943684D64DEF9EC39F588A656848-->  <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
 <!--3A3A943684D64DEF9EC39F588A656848-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--3A3A943684D64DEF9EC39F588A656848-->  <NAME><![CDATA[Orders Awaiting Delivery]]></NAME>
-<!--3A3A943684D64DEF9EC39F588A656848-->  <VERSION><![CDATA[1.1.27413]]></VERSION>
+<!--3A3A943684D64DEF9EC39F588A656848-->  <VERSION><![CDATA[1.1.27515]]></VERSION>
 <!--3A3A943684D64DEF9EC39F588A656848-->  <DESCRIPTION><![CDATA[Report displaying sales orders not shipped.]]></DESCRIPTION>
 <!--3A3A943684D64DEF9EC39F588A656848-->  <URL><![CDATA[http://forge.openbravo.com/projects/ordersawaitingdlivery]]></URL>
 <!--3A3A943684D64DEF9EC39F588A656848-->  <TYPE><![CDATA[M]]></TYPE>
--- a/modules/org.openbravo.reports.ordersawaitingdelivery/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml	Wed Aug 26 23:27:42 2015 +0200
+++ b/modules/org.openbravo.reports.ordersawaitingdelivery/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml	Fri Sep 04 09:30:06 2015 +0200
@@ -7,7 +7,7 @@
 <!--64060E9EE9EC408BBFFD0CC2DE25C86F-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--64060E9EE9EC408BBFFD0CC2DE25C86F-->  <AD_MODULE_ID><![CDATA[3A3A943684D64DEF9EC39F588A656848]]></AD_MODULE_ID>
 <!--64060E9EE9EC408BBFFD0CC2DE25C86F-->  <AD_DEPENDENT_MODULE_ID><![CDATA[0]]></AD_DEPENDENT_MODULE_ID>
-<!--64060E9EE9EC408BBFFD0CC2DE25C86F-->  <STARTVERSION><![CDATA[3.0.27413]]></STARTVERSION>
+<!--64060E9EE9EC408BBFFD0CC2DE25C86F-->  <STARTVERSION><![CDATA[3.0.27515]]></STARTVERSION>
 <!--64060E9EE9EC408BBFFD0CC2DE25C86F-->  <ISINCLUDED><![CDATA[N]]></ISINCLUDED>
 <!--64060E9EE9EC408BBFFD0CC2DE25C86F-->  <DEPENDANT_MODULE_NAME><![CDATA[core]]></DEPENDANT_MODULE_NAME>
 <!--64060E9EE9EC408BBFFD0CC2DE25C86F-->  <DEPENDENCY_ENFORCEMENT><![CDATA[MAJOR]]></DEPENDENCY_ENFORCEMENT>
--- a/modules/org.openbravo.service.datasource/src-db/database/model/triggers/OBSERDS_DATASOURCE_FIELD_TRG.xml	Wed Aug 26 23:27:42 2015 +0200
+++ b/modules/org.openbravo.service.datasource/src-db/database/model/triggers/OBSERDS_DATASOURCE_FIELD_TRG.xml	Fri Sep 04 09:30:06 2015 +0200
@@ -22,7 +22,6 @@
   devTemplate NUMBER;
   devModule   CHAR(1);
   currentDSID  VARCHAR2(32);
-  vAux NUMBER;
 
 BEGIN
     
--- a/modules/org.openbravo.service.datasource/src-db/database/sourcedata/AD_MODULE.xml	Wed Aug 26 23:27:42 2015 +0200
+++ b/modules/org.openbravo.service.datasource/src-db/database/sourcedata/AD_MODULE.xml	Fri Sep 04 09:30:06 2015 +0200
@@ -6,7 +6,7 @@
 <!--A44B9BA75C354D8FB2E3F7D6EB6BFDC4-->  <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
 <!--A44B9BA75C354D8FB2E3F7D6EB6BFDC4-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--A44B9BA75C354D8FB2E3F7D6EB6BFDC4-->  <NAME><![CDATA[JSON Datasource]]></NAME>
-<!--A44B9BA75C354D8FB2E3F7D6EB6BFDC4-->  <VERSION><![CDATA[2.1.27413]]></VERSION>
+<!--A44B9BA75C354D8FB2E3F7D6EB6BFDC4-->  <VERSION><![CDATA[2.1.27515]]></VERSION>
 <!--A44B9BA75C354D8FB2E3F7D6EB6BFDC4-->  <DESCRIPTION><![CDATA[Provides data source CRUD functionality using JSON as the data format]]></DESCRIPTION>
 <!--A44B9BA75C354D8FB2E3F7D6EB6BFDC4-->  <HELP><![CDATA[This module implements the datasource concept. Datasources play a central role in Smartclient applications. The datasource module automatically creates a datasource for each Openbravo entity. In addition custom data source implementations can be defined.]]></HELP>
 <!--A44B9BA75C354D8FB2E3F7D6EB6BFDC4-->  <URL><![CDATA[http://forge.openbravo.com/projects/datasourceservice]]></URL>
--- a/modules/org.openbravo.service.datasource/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml	Wed Aug 26 23:27:42 2015 +0200
+++ b/modules/org.openbravo.service.datasource/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml	Fri Sep 04 09:30:06 2015 +0200
@@ -7,7 +7,7 @@
 <!--0BA071C783CC4984AC9C03BB7CAA87C7-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--0BA071C783CC4984AC9C03BB7CAA87C7-->  <AD_MODULE_ID><![CDATA[A44B9BA75C354D8FB2E3F7D6EB6BFDC4]]></AD_MODULE_ID>
 <!--0BA071C783CC4984AC9C03BB7CAA87C7-->  <AD_DEPENDENT_MODULE_ID><![CDATA[C70732EA90A14EC0916078B85CC33D2D]]></AD_DEPENDENT_MODULE_ID>
-<!--0BA071C783CC4984AC9C03BB7CAA87C7-->  <STARTVERSION><![CDATA[1.1.27413]]></STARTVERSION>
+<!--0BA071C783CC4984AC9C03BB7CAA87C7-->  <STARTVERSION><![CDATA[1.1.27515]]></STARTVERSION>
 <!--0BA071C783CC4984AC9C03BB7CAA87C7-->  <ISINCLUDED><![CDATA[N]]></ISINCLUDED>
 <!--0BA071C783CC4984AC9C03BB7CAA87C7-->  <DEPENDANT_MODULE_NAME><![CDATA[JBoss Weld]]></DEPENDANT_MODULE_NAME>
 <!--0BA071C783CC4984AC9C03BB7CAA87C7-->  <DEPENDENCY_ENFORCEMENT><![CDATA[MAJOR]]></DEPENDENCY_ENFORCEMENT>
@@ -21,7 +21,7 @@
 <!--3E531F0CD0A54130996F5AF3B6A2D01B-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--3E531F0CD0A54130996F5AF3B6A2D01B-->  <AD_MODULE_ID><![CDATA[A44B9BA75C354D8FB2E3F7D6EB6BFDC4]]></AD_MODULE_ID>
 <!--3E531F0CD0A54130996F5AF3B6A2D01B-->  <AD_DEPENDENT_MODULE_ID><![CDATA[F8D1B3ECB3474E8DA5C216473C840DF1]]></AD_DEPENDENT_MODULE_ID>
-<!--3E531F0CD0A54130996F5AF3B6A2D01B-->  <STARTVERSION><![CDATA[2.0.27413]]></STARTVERSION>
+<!--3E531F0CD0A54130996F5AF3B6A2D01B-->  <STARTVERSION><![CDATA[2.0.27515]]></STARTVERSION>
 <!--3E531F0CD0A54130996F5AF3B6A2D01B-->  <ISINCLUDED><![CDATA[N]]></ISINCLUDED>
 <!--3E531F0CD0A54130996F5AF3B6A2D01B-->  <DEPENDANT_MODULE_NAME><![CDATA[JSON REST Webservice]]></DEPENDANT_MODULE_NAME>
 <!--3E531F0CD0A54130996F5AF3B6A2D01B-->  <DEPENDENCY_ENFORCEMENT><![CDATA[MAJOR]]></DEPENDENCY_ENFORCEMENT>
@@ -35,7 +35,7 @@
 <!--4FCE95802A854F7E8623AFF7C33D13EE-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--4FCE95802A854F7E8623AFF7C33D13EE-->  <AD_MODULE_ID><![CDATA[A44B9BA75C354D8FB2E3F7D6EB6BFDC4]]></AD_MODULE_ID>
 <!--4FCE95802A854F7E8623AFF7C33D13EE-->  <AD_DEPENDENT_MODULE_ID><![CDATA[0]]></AD_DEPENDENT_MODULE_ID>
-<!--4FCE95802A854F7E8623AFF7C33D13EE-->  <STARTVERSION><![CDATA[3.0.27413]]></STARTVERSION>
+<!--4FCE95802A854F7E8623AFF7C33D13EE-->  <STARTVERSION><![CDATA[3.0.27515]]></STARTVERSION>
 <!--4FCE95802A854F7E8623AFF7C33D13EE-->  <ISINCLUDED><![CDATA[N]]></ISINCLUDED>
 <!--4FCE95802A854F7E8623AFF7C33D13EE-->  <DEPENDANT_MODULE_NAME><![CDATA[core]]></DEPENDANT_MODULE_NAME>
 <!--4FCE95802A854F7E8623AFF7C33D13EE-->  <DEPENDENCY_ENFORCEMENT><![CDATA[MAJOR]]></DEPENDENCY_ENFORCEMENT>
@@ -49,7 +49,7 @@
 <!--54AF8B39C55E4E7496902893ECD82786-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--54AF8B39C55E4E7496902893ECD82786-->  <AD_MODULE_ID><![CDATA[A44B9BA75C354D8FB2E3F7D6EB6BFDC4]]></AD_MODULE_ID>
 <!--54AF8B39C55E4E7496902893ECD82786-->  <AD_DEPENDENT_MODULE_ID><![CDATA[4B828F4D03264080AA1D2057B13F613C]]></AD_DEPENDENT_MODULE_ID>
-<!--54AF8B39C55E4E7496902893ECD82786-->  <STARTVERSION><![CDATA[2.1.27413]]></STARTVERSION>
+<!--54AF8B39C55E4E7496902893ECD82786-->  <STARTVERSION><![CDATA[2.1.27515]]></STARTVERSION>
 <!--54AF8B39C55E4E7496902893ECD82786-->  <ISINCLUDED><![CDATA[N]]></ISINCLUDED>
 <!--54AF8B39C55E4E7496902893ECD82786-->  <DEPENDANT_MODULE_NAME><![CDATA[User Interface Client Kernel]]></DEPENDANT_MODULE_NAME>
 <!--54AF8B39C55E4E7496902893ECD82786-->  <DEPENDENCY_ENFORCEMENT><![CDATA[MAJOR]]></DEPENDENCY_ENFORCEMENT>
@@ -63,7 +63,7 @@
 <!--D03C56D8A4E14F45A5466350E05C631F-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--D03C56D8A4E14F45A5466350E05C631F-->  <AD_MODULE_ID><![CDATA[A44B9BA75C354D8FB2E3F7D6EB6BFDC4]]></AD_MODULE_ID>
 <!--D03C56D8A4E14F45A5466350E05C631F-->  <AD_DEPENDENT_MODULE_ID><![CDATA[EC356CEE3D46416CA1EBEEB9AB82EDB9]]></AD_DEPENDENT_MODULE_ID>
-<!--D03C56D8A4E14F45A5466350E05C631F-->  <STARTVERSION><![CDATA[8.1.27413]]></STARTVERSION>
+<!--D03C56D8A4E14F45A5466350E05C631F-->  <STARTVERSION><![CDATA[8.1.27515]]></STARTVERSION>
 <!--D03C56D8A4E14F45A5466350E05C631F-->  <ISINCLUDED><![CDATA[N]]></ISINCLUDED>
 <!--D03C56D8A4E14F45A5466350E05C631F-->  <DEPENDANT_MODULE_NAME><![CDATA[Smartclient]]></DEPENDANT_MODULE_NAME>
 <!--D03C56D8A4E14F45A5466350E05C631F-->  <DEPENDENCY_ENFORCEMENT><![CDATA[MAJOR]]></DEPENDENCY_ENFORCEMENT>
--- a/modules/org.openbravo.service.integration.google/src-db/database/sourcedata/AD_MODULE.xml	Wed Aug 26 23:27:42 2015 +0200
+++ b/modules/org.openbravo.service.integration.google/src-db/database/sourcedata/AD_MODULE.xml	Fri Sep 04 09:30:06 2015 +0200
@@ -6,7 +6,7 @@
 <!--FF8080813129ADA401312CA1222A0005-->  <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
 <!--FF8080813129ADA401312CA1222A0005-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--FF8080813129ADA401312CA1222A0005-->  <NAME><![CDATA[Integration with Google APIs]]></NAME>
-<!--FF8080813129ADA401312CA1222A0005-->  <VERSION><![CDATA[0.1.27413]]></VERSION>
+<!--FF8080813129ADA401312CA1222A0005-->  <VERSION><![CDATA[0.1.27515]]></VERSION>
 <!--FF8080813129ADA401312CA1222A0005-->  <DESCRIPTION><![CDATA[Integration with Google APIs]]></DESCRIPTION>
 <!--FF8080813129ADA401312CA1222A0005-->  <TYPE><![CDATA[M]]></TYPE>
 <!--FF8080813129ADA401312CA1222A0005-->  <LICENSE><![CDATA[Licensed under the Openbravo Public License Version 1.1.
--- a/modules/org.openbravo.service.integration.google/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml	Wed Aug 26 23:27:42 2015 +0200
+++ b/modules/org.openbravo.service.integration.google/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml	Fri Sep 04 09:30:06 2015 +0200
@@ -7,7 +7,7 @@
 <!--FF8080813141B198013141BA0F7D0012-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--FF8080813141B198013141BA0F7D0012-->  <AD_MODULE_ID><![CDATA[FF8080813129ADA401312CA1222A0005]]></AD_MODULE_ID>
 <!--FF8080813141B198013141BA0F7D0012-->  <AD_DEPENDENT_MODULE_ID><![CDATA[FF8080813141B198013141B86DD70003]]></AD_DEPENDENT_MODULE_ID>
-<!--FF8080813141B198013141BA0F7D0012-->  <STARTVERSION><![CDATA[0.1.27413]]></STARTVERSION>
+<!--FF8080813141B198013141BA0F7D0012-->  <STARTVERSION><![CDATA[0.1.27515]]></STARTVERSION>
 <!--FF8080813141B198013141BA0F7D0012-->  <ISINCLUDED><![CDATA[N]]></ISINCLUDED>
 <!--FF8080813141B198013141BA0F7D0012-->  <DEPENDANT_MODULE_NAME><![CDATA[OpenID Service Integration]]></DEPENDANT_MODULE_NAME>
 <!--FF8080813141B198013141BA0F7D0012-->  <DEPENDENCY_ENFORCEMENT><![CDATA[MAJOR]]></DEPENDENCY_ENFORCEMENT>
@@ -21,7 +21,7 @@
 <!--FF8080813151AEE1013151C4ACE6001B-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--FF8080813151AEE1013151C4ACE6001B-->  <AD_MODULE_ID><![CDATA[FF8080813129ADA401312CA1222A0005]]></AD_MODULE_ID>
 <!--FF8080813151AEE1013151C4ACE6001B-->  <AD_DEPENDENT_MODULE_ID><![CDATA[7E48CDD73B7E493A8BED4F7253E7C989]]></AD_DEPENDENT_MODULE_ID>
-<!--FF8080813151AEE1013151C4ACE6001B-->  <STARTVERSION><![CDATA[2.1.27413]]></STARTVERSION>
+<!--FF8080813151AEE1013151C4ACE6001B-->  <STARTVERSION><![CDATA[2.1.27515]]></STARTVERSION>
 <!--FF8080813151AEE1013151C4ACE6001B-->  <ISINCLUDED><![CDATA[N]]></ISINCLUDED>
 <!--FF8080813151AEE1013151C4ACE6001B-->  <DEPENDANT_MODULE_NAME><![CDATA[Openbravo 3.0 Framework]]></DEPENDANT_MODULE_NAME>
 <!--FF8080813151AEE1013151C4ACE6001B-->  <DEPENDENCY_ENFORCEMENT><![CDATA[MAJOR]]></DEPENDENCY_ENFORCEMENT>
--- a/modules/org.openbravo.service.integration.openid/src-db/database/sourcedata/AD_MODULE.xml	Wed Aug 26 23:27:42 2015 +0200
+++ b/modules/org.openbravo.service.integration.openid/src-db/database/sourcedata/AD_MODULE.xml	Fri Sep 04 09:30:06 2015 +0200
@@ -6,7 +6,7 @@
 <!--FF8080813141B198013141B86DD70003-->  <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
 <!--FF8080813141B198013141B86DD70003-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--FF8080813141B198013141B86DD70003-->  <NAME><![CDATA[OpenID Service Integration]]></NAME>
-<!--FF8080813141B198013141B86DD70003-->  <VERSION><![CDATA[0.1.27413]]></VERSION>
+<!--FF8080813141B198013141B86DD70003-->  <VERSION><![CDATA[0.1.27515]]></VERSION>
 <!--FF8080813141B198013141B86DD70003-->  <DESCRIPTION><![CDATA[OpenID Service Integration]]></DESCRIPTION>
 <!--FF8080813141B198013141B86DD70003-->  <TYPE><![CDATA[M]]></TYPE>
 <!--FF8080813141B198013141B86DD70003-->  <LICENSE><![CDATA[Licensed under the Openbravo Public License Version 1.1.
--- a/modules/org.openbravo.service.integration.openid/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml	Wed Aug 26 23:27:42 2015 +0200
+++ b/modules/org.openbravo.service.integration.openid/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml	Fri Sep 04 09:30:06 2015 +0200
@@ -7,7 +7,7 @@
 <!--FF8080813141B198013141B8B21B0006-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--FF8080813141B198013141B8B21B0006-->  <AD_MODULE_ID><![CDATA[FF8080813141B198013141B86DD70003]]></AD_MODULE_ID>
 <!--FF8080813141B198013141B8B21B0006-->  <AD_DEPENDENT_MODULE_ID><![CDATA[0]]></AD_DEPENDENT_MODULE_ID>
-<!--FF8080813141B198013141B8B21B0006-->  <STARTVERSION><![CDATA[3.0.27413]]></STARTVERSION>
+<!--FF8080813141B198013141B8B21B0006-->  <STARTVERSION><![CDATA[3.0.27515]]></STARTVERSION>
 <!--FF8080813141B198013141B8B21B0006-->  <ISINCLUDED><![CDATA[N]]></ISINCLUDED>
 <!--FF8080813141B198013141B8B21B0006-->  <DEPENDANT_MODULE_NAME><![CDATA[Core]]></DEPENDANT_MODULE_NAME>
 <!--FF8080813141B198013141B8B21B0006-->  <DEPENDENCY_ENFORCEMENT><![CDATA[MAJOR]]></DEPENDENCY_ENFORCEMENT>
--- a/modules/org.openbravo.service.json/src-db/database/sourcedata/AD_MODULE.xml	Wed Aug 26 23:27:42 2015 +0200
+++ b/modules/org.openbravo.service.json/src-db/database/sourcedata/AD_MODULE.xml	Fri Sep 04 09:30:06 2015 +0200
@@ -6,7 +6,7 @@
 <!--F8D1B3ECB3474E8DA5C216473C840DF1-->  <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
 <!--F8D1B3ECB3474E8DA5C216473C840DF1-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--F8D1B3ECB3474E8DA5C216473C840DF1-->  <NAME><![CDATA[JSON REST Webservice]]></NAME>
-<!--F8D1B3ECB3474E8DA5C216473C840DF1-->  <VERSION><![CDATA[2.0.27413]]></VERSION>
+<!--F8D1B3ECB3474E8DA5C216473C840DF1-->  <VERSION><![CDATA[2.0.27515]]></VERSION>
 <!--F8D1B3ECB3474E8DA5C216473C840DF1-->  <DESCRIPTION><![CDATA[Provides a JSON REST webservice for CRUD service requests]]></DESCRIPTION>
 <!--F8D1B3ECB3474E8DA5C216473C840DF1-->  <HELP><![CDATA[Provides a JSON REST webservice for CRUD service requests. Both the servlet implementation (receiving HTTP REST requests in JSON) as the backend processing are provided.]]></HELP>
 <!--F8D1B3ECB3474E8DA5C216473C840DF1-->  <URL><![CDATA[http://forge.openbravo.com/projects/openbravojsonrest]]></URL>
--- a/modules/org.openbravo.service.json/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml	Wed Aug 26 23:27:42 2015 +0200
+++ b/modules/org.openbravo.service.json/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml	Fri Sep 04 09:30:06 2015 +0200
@@ -7,7 +7,7 @@
 <!--9E3E7B42DB16405FB794496D309D7044-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--9E3E7B42DB16405FB794496D309D7044-->  <AD_MODULE_ID><![CDATA[F8D1B3ECB3474E8DA5C216473C840DF1]]></AD_MODULE_ID>
 <!--9E3E7B42DB16405FB794496D309D7044-->  <AD_DEPENDENT_MODULE_ID><![CDATA[0]]></AD_DEPENDENT_MODULE_ID>
-<!--9E3E7B42DB16405FB794496D309D7044-->  <STARTVERSION><![CDATA[3.0.27413]]></STARTVERSION>
+<!--9E3E7B42DB16405FB794496D309D7044-->  <STARTVERSION><![CDATA[3.0.27515]]></STARTVERSION>
 <!--9E3E7B42DB16405FB794496D309D7044-->  <ISINCLUDED><![CDATA[N]]></ISINCLUDED>
 <!--9E3E7B42DB16405FB794496D309D7044-->  <DEPENDANT_MODULE_NAME><![CDATA[core]]></DEPENDANT_MODULE_NAME>
 <!--9E3E7B42DB16405FB794496D309D7044-->  <DEPENDENCY_ENFORCEMENT><![CDATA[MAJOR]]></DEPENDENCY_ENFORCEMENT>
Binary file modules/org.openbravo.userinterface.selector/build/classes/org/openbravo/userinterface/selector/UpdateLanguageColumn.class has changed
--- a/modules/org.openbravo.userinterface.selector/src-db/database/model/triggers/OBUISEL_SELECTOR_FLD_MOD_TRG.xml	Wed Aug 26 23:27:42 2015 +0200
+++ b/modules/org.openbravo.userinterface.selector/src-db/database/model/triggers/OBUISEL_SELECTOR_FLD_MOD_TRG.xml	Fri Sep 04 09:30:06 2015 +0200
@@ -20,8 +20,6 @@
 * Contributor(s):  ______________________________________.
 ************************************************************************/
   devTemplate NUMBER;
-  fieldCount NUMBER;
-  selectorCount NUMBER;
   devModule   CHAR(1);
   currentModuleID  VARCHAR2(32);
   vAux NUMBER;
--- a/modules/org.openbravo.userinterface.selector/src-db/database/model/triggers/OBUISEL_SELECTOR_TRL_TRG.xml	Wed Aug 26 23:27:42 2015 +0200
+++ b/modules/org.openbravo.userinterface.selector/src-db/database/model/triggers/OBUISEL_SELECTOR_TRL_TRG.xml	Fri Sep 04 09:30:06 2015 +0200
@@ -19,10 +19,6 @@
 * All Rights Reserved.
 * Contributor(s):  ______________________________________.
 ************************************************************************/
-  devTemplate NUMBER;
-  devModule   CHAR(1);
-  currentModuleID  VARCHAR2(32);
-  vAux NUMBER;
 
 BEGIN
     
--- a/modules/org.openbravo.userinterface.selector/src-db/database/sourcedata/AD_MODULE.xml	Wed Aug 26 23:27:42 2015 +0200
+++ b/modules/org.openbravo.userinterface.selector/src-db/database/sourcedata/AD_MODULE.xml	Fri Sep 04 09:30:06 2015 +0200
@@ -6,7 +6,7 @@
 <!--5EB4F15C80684ACA904756BDC12ADBE5-->  <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
 <!--5EB4F15C80684ACA904756BDC12ADBE5-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--5EB4F15C80684ACA904756BDC12ADBE5-->  <NAME><![CDATA[User Interface Selector]]></NAME>
-<!--5EB4F15C80684ACA904756BDC12ADBE5-->  <VERSION><![CDATA[2.1.27413]]></VERSION>
+<!--5EB4F15C80684ACA904756BDC12ADBE5-->  <VERSION><![CDATA[2.1.27515]]></VERSION>
 <!--5EB4F15C80684ACA904756BDC12ADBE5-->  <DESCRIPTION><![CDATA[Provides a selector with a suggestion box and popup grid window]]></DESCRIPTION>
 <!--5EB4F15C80684ACA904756BDC12ADBE5-->  <HELP><![CDATA[The Openbravo selector provides new selector functionality which is used inside of existing Openbravo forms. The selector is mainly used for supporting foreign key references in the user interface. The selector combines both suggestion box behavior with a popup grid.]]></HELP>
 <!--5EB4F15C80684ACA904756BDC12ADBE5-->  <URL><![CDATA[http://forge.openbravo.com/projects/selector]]></URL>
--- a/modules/org.openbravo.userinterface.selector/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml	Wed Aug 26 23:27:42 2015 +0200
+++ b/modules/org.openbravo.userinterface.selector/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml	Fri Sep 04 09:30:06 2015 +0200
@@ -7,7 +7,7 @@
 <!--38825CAED43941D38CA0C78DB04FCFA0-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--38825CAED43941D38CA0C78DB04FCFA0-->  <AD_MODULE_ID><![CDATA[5EB4F15C80684ACA904756BDC12ADBE5]]></AD_MODULE_ID>
 <!--38825CAED43941D38CA0C78DB04FCFA0-->  <AD_DEPENDENT_MODULE_ID><![CDATA[EC356CEE3D46416CA1EBEEB9AB82EDB9]]></AD_DEPENDENT_MODULE_ID>
-<!--38825CAED43941D38CA0C78DB04FCFA0-->  <STARTVERSION><![CDATA[8.1.27413]]></STARTVERSION>
+<!--38825CAED43941D38CA0C78DB04FCFA0-->  <STARTVERSION><![CDATA[8.1.27515]]></STARTVERSION>
 <!--38825CAED43941D38CA0C78DB04FCFA0-->  <ISINCLUDED><![CDATA[N]]></ISINCLUDED>
 <!--38825CAED43941D38CA0C78DB04FCFA0-->  <DEPENDANT_MODULE_NAME><![CDATA[Smartclient]]></DEPENDANT_MODULE_NAME>
 <!--38825CAED43941D38CA0C78DB04FCFA0-->  <DEPENDENCY_ENFORCEMENT><![CDATA[MAJOR]]></DEPENDENCY_ENFORCEMENT>
@@ -21,7 +21,7 @@
 <!--6DDE7B1A70174242AF82B5022FB89279-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--6DDE7B1A70174242AF82B5022FB89279-->  <AD_MODULE_ID><![CDATA[5EB4F15C80684ACA904756BDC12ADBE5]]></AD_MODULE_ID>
 <!--6DDE7B1A70174242AF82B5022FB89279-->  <AD_DEPENDENT_MODULE_ID><![CDATA[9BA0836A3CD74EE4AB48753A47211BCC]]></AD_DEPENDENT_MODULE_ID>
-<!--6DDE7B1A70174242AF82B5022FB89279-->  <STARTVERSION><![CDATA[2.1.27413]]></STARTVERSION>
+<!--6DDE7B1A70174242AF82B5022FB89279-->  <STARTVERSION><![CDATA[2.1.27515]]></STARTVERSION>
 <!--6DDE7B1A70174242AF82B5022FB89279-->  <ISINCLUDED><![CDATA[N]]></ISINCLUDED>
 <!--6DDE7B1A70174242AF82B5022FB89279-->  <DEPENDANT_MODULE_NAME><![CDATA[User Interface Application]]></DEPENDANT_MODULE_NAME>
 <!--6DDE7B1A70174242AF82B5022FB89279-->  <DEPENDENCY_ENFORCEMENT><![CDATA[MAJOR]]></DEPENDENCY_ENFORCEMENT>
@@ -35,7 +35,7 @@
 <!--94F9CD2CB5EF4467A67475C786C984A7-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--94F9CD2CB5EF4467A67475C786C984A7-->  <AD_MODULE_ID><![CDATA[5EB4F15C80684ACA904756BDC12ADBE5]]></AD_MODULE_ID>
 <!--94F9CD2CB5EF4467A67475C786C984A7-->  <AD_DEPENDENT_MODULE_ID><![CDATA[4B828F4D03264080AA1D2057B13F613C]]></AD_DEPENDENT_MODULE_ID>
-<!--94F9CD2CB5EF4467A67475C786C984A7-->  <STARTVERSION><![CDATA[2.1.27413]]></STARTVERSION>
+<!--94F9CD2CB5EF4467A67475C786C984A7-->  <STARTVERSION><![CDATA[2.1.27515]]></STARTVERSION>
 <!--94F9CD2CB5EF4467A67475C786C984A7-->  <ISINCLUDED><![CDATA[N]]></ISINCLUDED>
 <!--94F9CD2CB5EF4467A67475C786C984A7-->  <DEPENDANT_MODULE_NAME><![CDATA[User Interface Client Kernel]]></DEPENDANT_MODULE_NAME>
 <!--94F9CD2CB5EF4467A67475C786C984A7-->  <DEPENDENCY_ENFORCEMENT><![CDATA[MAJOR]]></DEPENDENCY_ENFORCEMENT>
@@ -49,7 +49,7 @@
 <!--BCCB5A08EC0446DE8BCE191C6BC607A4-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--BCCB5A08EC0446DE8BCE191C6BC607A4-->  <AD_MODULE_ID><![CDATA[5EB4F15C80684ACA904756BDC12ADBE5]]></AD_MODULE_ID>
 <!--BCCB5A08EC0446DE8BCE191C6BC607A4-->  <AD_DEPENDENT_MODULE_ID><![CDATA[C70732EA90A14EC0916078B85CC33D2D]]></AD_DEPENDENT_MODULE_ID>
-<!--BCCB5A08EC0446DE8BCE191C6BC607A4-->  <STARTVERSION><![CDATA[1.1.27413]]></STARTVERSION>
+<!--BCCB5A08EC0446DE8BCE191C6BC607A4-->  <STARTVERSION><![CDATA[1.1.27515]]></STARTVERSION>
 <!--BCCB5A08EC0446DE8BCE191C6BC607A4-->  <ISINCLUDED><![CDATA[N]]></ISINCLUDED>
 <!--BCCB5A08EC0446DE8BCE191C6BC607A4-->  <DEPENDANT_MODULE_NAME><![CDATA[JBoss Weld]]></DEPENDANT_MODULE_NAME>
 <!--BCCB5A08EC0446DE8BCE191C6BC607A4-->  <DEPENDENCY_ENFORCEMENT><![CDATA[MAJOR]]></DEPENDENCY_ENFORCEMENT>
@@ -63,7 +63,7 @@
 <!--C8DAC574B88649D08C9468521B343F12-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--C8DAC574B88649D08C9468521B343F12-->  <AD_MODULE_ID><![CDATA[5EB4F15C80684ACA904756BDC12ADBE5]]></AD_MODULE_ID>
 <!--C8DAC574B88649D08C9468521B343F12-->  <AD_DEPENDENT_MODULE_ID><![CDATA[0]]></AD_DEPENDENT_MODULE_ID>
-<!--C8DAC574B88649D08C9468521B343F12-->  <STARTVERSION><![CDATA[3.0.27413]]></STARTVERSION>
+<!--C8DAC574B88649D08C9468521B343F12-->  <STARTVERSION><![CDATA[3.0.27515]]></STARTVERSION>
 <!--C8DAC574B88649D08C9468521B343F12-->  <ISINCLUDED><![CDATA[N]]></ISINCLUDED>
 <!--C8DAC574B88649D08C9468521B343F12-->  <DEPENDANT_MODULE_NAME><![CDATA[core]]></DEPENDANT_MODULE_NAME>
 <!--C8DAC574B88649D08C9468521B343F12-->  <DEPENDENCY_ENFORCEMENT><![CDATA[MAJOR]]></DEPENDENCY_ENFORCEMENT>
@@ -77,7 +77,7 @@
 <!--F14EB17946BE4724A46F80CB1A47EC70-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--F14EB17946BE4724A46F80CB1A47EC70-->  <AD_MODULE_ID><![CDATA[5EB4F15C80684ACA904756BDC12ADBE5]]></AD_MODULE_ID>
 <!--F14EB17946BE4724A46F80CB1A47EC70-->  <AD_DEPENDENT_MODULE_ID><![CDATA[A44B9BA75C354D8FB2E3F7D6EB6BFDC4]]></AD_DEPENDENT_MODULE_ID>
-<!--F14EB17946BE4724A46F80CB1A47EC70-->  <STARTVERSION><![CDATA[2.1.27413]]></STARTVERSION>
+<!--F14EB17946BE4724A46F80CB1A47EC70-->  <STARTVERSION><![CDATA[2.1.27515]]></STARTVERSION>
 <!--F14EB17946BE4724A46F80CB1A47EC70-->  <ISINCLUDED><![CDATA[N]]></ISINCLUDED>
 <!--F14EB17946BE4724A46F80CB1A47EC70-->  <DEPENDANT_MODULE_NAME><![CDATA[JSON Datasource]]></DEPENDANT_MODULE_NAME>
 <!--F14EB17946BE4724A46F80CB1A47EC70-->  <DEPENDENCY_ENFORCEMENT><![CDATA[MAJOR]]></DEPENDENCY_ENFORCEMENT>
--- a/modules/org.openbravo.userinterface.selector/src-util/modulescript/src/org/openbravo/userinterface/selector/UpdateLanguageColumn.java	Wed Aug 26 23:27:42 2015 +0200
+++ b/modules/org.openbravo.userinterface.selector/src-util/modulescript/src/org/openbravo/userinterface/selector/UpdateLanguageColumn.java	Fri Sep 04 09:30:06 2015 +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) 2010-2011 Openbravo SLU
+ * All portions are Copyright (C) 2010-2015 Openbravo SLU
  * All Rights Reserved.
  * Contributor(s):  ______________________________________.
  ************************************************************************
@@ -23,6 +23,8 @@
 import org.apache.log4j.Logger;
 import org.openbravo.database.ConnectionProvider;
 import org.openbravo.modulescript.ModuleScript;
+import org.openbravo.modulescript.ModuleScriptExecutionLimits;
+import org.openbravo.modulescript.OpenbravoVersion;
 
 public class UpdateLanguageColumn extends ModuleScript {
 
@@ -61,4 +63,10 @@
     }
 
   }
+  
+  @Override
+  protected ModuleScriptExecutionLimits getModuleScriptExecutionLimits() {
+    return new ModuleScriptExecutionLimits("5EB4F15C80684ACA904756BDC12ADBE5", null, 
+        new OpenbravoVersion(2,1,9091));
+  }
 }
\ No newline at end of file
--- a/modules/org.openbravo.userinterface.selector/web/org.openbravo.userinterface.selector/test/selector_prototype.html	Wed Aug 26 23:27:42 2015 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,2014 +0,0 @@
-<html xmlns="http://www.w3.org/1999/xhtml" xmlns:="http://www.w3.org/1999/xhtml" xmlns:="http://www.w3.org/1999/xhtml">
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=utf-8"></meta>
-<title>Product</title>
-
-
-
-
-
-<script language="JavaScript" type="text/javascript">var captureOnClick = true;</script>
-
-<link rel="shortcut icon" href="../../../web/images/favicon.ico" type="image/x-icon"></link>
-<link rel="stylesheet" type="text/css" href="../../../web/skins/ltr/Default/Openbravo_ERP.css" id="paramCSS"></link>
-<link rel="stylesheet" type="text/css" media="print" href="../../../web/skins/ltr/Default/Openbravo_ERP_print.css" id="paramCSS_print"></link>
-
-<script language="JavaScript" type="text/javascript" id="paramDirectory">var baseDirectory = "../../../web/";
-</script>
-<script language="JavaScript" src="../../../web/js/messages.js" type="text/javascript"></script>
-<script language="JavaScript" type="text/javascript" id="paramLanguage">defaultLang="en_US";</script>
-<script language="JavaScript" type="text/javascript" id="confirmOnChanges">var confirmOnChanges = false;</script>
-
-<script language="JavaScript" src="../../../web/js/shortcuts.js" type="text/javascript"></script>
-<script language="JavaScript" src="../../../web/js/utils.js" type="text/javascript"></script>
-<script language="JavaScript" src="../../../web/js/windowKeyboard.js" type="text/javascript"></script>
-<script language="JavaScript" src="../../../web/js/appStatus.js" type="text/javascript"></script>
-<script language="JavaScript" src="../../../web/js/ajax.js" type="text/javascript"></script>
-<script language="JavaScript" src="../../../web/js/default/MessageBox.js" type="text/javascript"></script>
-<script language="JavaScript" src="../../../web/js/searchs.js" type="text/javascript"></script>
-<script language="JavaScript" src="../../../web/js/calculator.js" type="text/javascript"></script>
-<script language="JavaScript" src="../../../web/js/default/DateTextBox.js" type="text/javascript"></script>
-
-<script language="JavaScript" src="../../../web/js/jscalendar/calendar.js" type="text/javascript"></script>
-<script language="JavaScript" src="../../../web/js/default/ValidationTextBox.js" type="text/javascript"></script>
-<script language="JavaScript" src="../../../web/js/jscalendar/lang/calendar-en.js" type="text/javascript"></script>
-
-<script SRC="../../../org.openbravo.client.kernel/OBCLKER_Kernel/StaticResources"></script>
-
-<script language="JavaScript" type="text/javascript">
-function validate(action, form, value) {
-  var frm=document.frmMain;
-  var key = eval("document.frmMain." + frm.inpKeyName.value);
-  return validateClient(action, form, value);
-}
-</script>
-<script language="JavaScript" type="text/javascript" id="selectedColumn">var strShowAudit="N";
-</script>
-<script language="JavaScript" type="text/javascript">function debugSearch(key, text, keyField) {
-  return true;
-}
-
-function reloadComboReloads180(changedField) {
-  submitCommandForm(changedField, false, null, '../../../ad_callouts/ComboReloads' + document.frmMain.inpTabId.value + '.html', 'hiddenFrame', null, null, true);
-  return true;
-}
-
-function validateClient(action, form, value) {
-  var frm=document.frmMain;
-  if (inputValue(frm.inpadClientId)==null || inputValue(frm.inpadClientId)=="") {
-    setWindowElementFocus(frm.inpadClientId);
-    showJSMessage(1);
-    return false;
-  }
-  if (inputValue(frm.inpadOrgId)==null || inputValue(frm.inpadOrgId)=="") {
-    setWindowElementFocus(frm.inpadOrgId);
-    showJSMessage(1);
-    return false;
-  }
-  if (inputValue(frm.inpvalue)==null || inputValue(frm.inpvalue)=="") {
-    setWindowElementFocus(frm.inpvalue);
-    showJSMessage(1);
-    return false;
-  }
-
-  if (inputValue(frm.inpname)==null || inputValue(frm.inpname)=="") {
-    setWindowElementFocus(frm.inpname);
-    showJSMessage(1);
-    return false;
-  }
-
-  if (inputValue(frm.inpmProductCategoryId)==null || inputValue(frm.inpmProductCategoryId)=="") {
-    setWindowElementFocus(frm.inpmProductCategoryId);
-    showJSMessage(1);
-    return false;
-  }
-  if (inputValue(frm.inpcUomId)==null || inputValue(frm.inpcUomId)=="") {
-    setWindowElementFocus(frm.inpcUomId);
-    showJSMessage(1);
-    return false;
-  }
-  if (inputValue(frm.inpproducttype)==null || inputValue(frm.inpproducttype)=="") {
-    setWindowElementFocus(frm.inpproducttype);
-    showJSMessage(1);
-    return false;
-  }
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-  if (inputValue(frm.inpcTaxcategoryId)==null || inputValue(frm.inpcTaxcategoryId)=="") {
-    setWindowElementFocus(frm.inpcTaxcategoryId);
-    showJSMessage(1);
-    return false;
-  }
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-  return true;
-}
-
-function displayLogic() {
-if (inputValue(document.frmMain.inpissummary) == 'N' && inputValue(document.frmMain.inpproducttype) == 'I') {
-displayLogicElement('Weight_inp_td', true);
-displayLogicElement('Weight_inp', true);
-displayLogicElement('Weight_lbl_td', true);
-displayLogicElement('Weight_lbl', true);
-displayLogicElement('Weight_btt', true);
-} else {
-displayLogicElement('Weight_inp_td', false);
-displayLogicElement('Weight_inp', false);
-displayLogicElement('Weight_lbl_td', false);
-displayLogicElement('Weight_lbl', false);
-displayLogicElement('Weight_btt', false);
-}
-if (inputValue(document.frmMain.inpissummary) == 'N' && inputValue(document.frmMain.inpproducttype) == 'I') {
-displayLogicElement('Volume_inp_td', true);
-displayLogicElement('Volume_inp', true);
-displayLogicElement('Volume_lbl_td', true);
-displayLogicElement('Volume_lbl', true);
-displayLogicElement('Volume_btt', true);
-} else {
-displayLogicElement('Volume_inp_td', false);
-displayLogicElement('Volume_inp', false);
-displayLogicElement('Volume_lbl_td', false);
-displayLogicElement('Volume_lbl', false);
-displayLogicElement('Volume_btt', false);
-}
-if (inputValue(document.frmMain.inpissummary) == 'N' && inputValue(document.frmMain.inpproducttype) == 'I') {
-displayLogicElement('ShelfWidth_inp_td', true);
-displayLogicElement('ShelfWidth_inp', true);
-displayLogicElement('ShelfWidth_lbl_td', true);
-displayLogicElement('ShelfWidth_lbl', true);
-displayLogicElement('ShelfWidth_btt', true);
-} else {
-displayLogicElement('ShelfWidth_inp_td', false);
-displayLogicElement('ShelfWidth_inp', false);
-displayLogicElement('ShelfWidth_lbl_td', false);
-displayLogicElement('ShelfWidth_lbl', false);
-displayLogicElement('ShelfWidth_btt', false);
-}
-if (inputValue(document.frmMain.inpissummary) == 'N' && inputValue(document.frmMain.inpproducttype) == 'I') {
-displayLogicElement('ShelfHeight_inp_td', true);
-displayLogicElement('ShelfHeight_inp', true);
-displayLogicElement('ShelfHeight_lbl_td', true);
-displayLogicElement('ShelfHeight_lbl', true);
-displayLogicElement('ShelfHeight_btt', true);
-} else {
-displayLogicElement('ShelfHeight_inp_td', false);
-displayLogicElement('ShelfHeight_inp', false);
-displayLogicElement('ShelfHeight_lbl_td', false);
-displayLogicElement('ShelfHeight_lbl', false);
-displayLogicElement('ShelfHeight_btt', false);
-}
-if (inputValue(document.frmMain.inpissummary) == 'N' && inputValue(document.frmMain.inpproducttype) == 'I') {
-displayLogicElement('ShelfDepth_inp_td', true);
-displayLogicElement('ShelfDepth_inp', true);
-displayLogicElement('ShelfDepth_lbl_td', true);
-displayLogicElement('ShelfDepth_lbl', true);
-displayLogicElement('ShelfDepth_btt', true);
-} else {
-displayLogicElement('ShelfDepth_inp_td', false);
-displayLogicElement('ShelfDepth_inp', false);
-displayLogicElement('ShelfDepth_lbl_td', false);
-displayLogicElement('ShelfDepth_lbl', false);
-displayLogicElement('ShelfDepth_btt', false);
-}
-if (inputValue(document.frmMain.inpissummary) == 'N' && inputValue(document.frmMain.inpproducttype) == 'I') {
-displayLogicElement('UnitsPerPallet_inp_td', true);
-displayLogicElement('UnitsPerPallet_inp', true);
-displayLogicElement('UnitsPerPallet_lbl_td', true);
-displayLogicElement('UnitsPerPallet_lbl', true);
-displayLogicElement('UnitsPerPallet_btt', true);
-} else {
-displayLogicElement('UnitsPerPallet_inp_td', false);
-displayLogicElement('UnitsPerPallet_inp', false);
-displayLogicElement('UnitsPerPallet_lbl_td', false);
-displayLogicElement('UnitsPerPallet_lbl', false);
-displayLogicElement('UnitsPerPallet_btt', false);
-}
-if (inputValue(document.frmMain.inpissummary) == 'N' && inputValue(document.frmMain.inpproducttype) == 'I') {
-displayLogicElement('IsStocked_inp_td', true);
-displayLogicElement('IsStocked_inp', true);
-displayLogicElement('IsStocked_lbl_td', true);
-displayLogicElement('IsStocked_lbl', true);
-} else {
-displayLogicElement('IsStocked_inp_td', false);
-displayLogicElement('IsStocked_inp', false);
-displayLogicElement('IsStocked_lbl_td', false);
-displayLogicElement('IsStocked_lbl', false);
-}
-if (inputValue(document.frmMain.inpproducttype) == 'I') {
-displayLogicElement('Production_inp_td', true);
-displayLogicElement('Production_inp', true);
-displayLogicElement('Production_lbl_td', true);
-displayLogicElement('Production_lbl', true);
-} else {
-displayLogicElement('Production_inp_td', false);
-displayLogicElement('Production_inp', false);
-displayLogicElement('Production_lbl_td', false);
-displayLogicElement('Production_lbl', false);
-}
-if (inputValue(document.frmMain.inpproducttype) == 'I' && inputValue(document.frmMain.inpproduction) == 'Y') {
-displayLogicElement('MA_Processplan_ID_inp_td', true);
-displayLogicElement('MA_Processplan_ID_inp', true);
-displayLogicElement('MA_Processplan_ID_lbl_td', true);
-displayLogicElement('MA_Processplan_ID_lbl', true);
-} else {
-displayLogicElement('MA_Processplan_ID_inp_td', false);
-displayLogicElement('MA_Processplan_ID_inp', false);
-displayLogicElement('MA_Processplan_ID_lbl_td', false);
-displayLogicElement('MA_Processplan_ID_lbl', false);
-}
-if (inputValue(document.frmMain.inpissummary) == 'N' && inputValue(document.frmMain.inpproducttype) == 'I' && (inputValue(document.frmMain.inpisstocked) == 'Y' || inputValue(document.frmMain.inpproduction) == 'Y')) {
-displayLogicElement('M_Locator_ID_inp_td', true);
-displayLogicElement('M_Locator_ID_inp', true);
-displayLogicElement('M_Locator_ID_lbl_td', true);
-displayLogicElement('M_Locator_ID_lbl', true);
-displayLogicElement('M_Locator_ID_btt', true);
-} else {
-displayLogicElement('M_Locator_ID_inp_td', false);
-displayLogicElement('M_Locator_ID_inp', false);
-displayLogicElement('M_Locator_ID_lbl_td', false);
-displayLogicElement('M_Locator_ID_lbl', false);
-displayLogicElement('M_Locator_ID_btt', false);
-}
-if (inputValue(document.frmMain.inpissummary) == 'N' && inputValue(document.frmMain.inpproducttype) == 'I' || inputValue(document.frmMain.inpproducttype) == 'S') {
-displayLogicElement('IsBOM_inp_td', true);
-displayLogicElement('IsBOM_inp', true);
-displayLogicElement('IsBOM_lbl_td', true);
-displayLogicElement('IsBOM_lbl', true);
-} else {
-displayLogicElement('IsBOM_inp_td', false);
-displayLogicElement('IsBOM_inp', false);
-displayLogicElement('IsBOM_lbl_td', false);
-displayLogicElement('IsBOM_lbl', false);
-}
-if (inputValue(document.frmMain.inpissummary) == 'N' && inputValue(document.frmMain.inpisbom) == 'Y') {
-displayLogicElement('IsVerified_inp_td', true);
-displayLogicElement('IsVerified_inp', true);
-displayLogicElement('IsVerified_lbl_td', true);
-displayLogicElement('IsVerified_lbl', true);
-} else {
-displayLogicElement('IsVerified_inp_td', false);
-displayLogicElement('IsVerified_inp', false);
-displayLogicElement('IsVerified_lbl_td', false);
-displayLogicElement('IsVerified_lbl', false);
-}
-if (inputValue(document.frmMain.inpissummary) == 'N' && inputValue(document.frmMain.inpisbom) == 'Y' && inputValue(document.frmMain.inpisverified) == 'N') {
-displayLogicElement('Processing_inp_td', true);
-displayLogicElement('Processing_inp', true);
-} else {
-displayLogicElement('Processing_inp_td', false);
-displayLogicElement('Processing_inp', false);
-}
-if (inputValue(document.frmMain.inpissummary) == 'N' && inputValue(document.frmMain.inpisbom) == 'Y') {
-displayLogicElement('IsInvoicePrintDetails_inp_td', true);
-displayLogicElement('IsInvoicePrintDetails_inp', true);
-displayLogicElement('IsInvoicePrintDetails_lbl_td', true);
-displayLogicElement('IsInvoicePrintDetails_lbl', true);
-} else {
-displayLogicElement('IsInvoicePrintDetails_inp_td', false);
-displayLogicElement('IsInvoicePrintDetails_inp', false);
-displayLogicElement('IsInvoicePrintDetails_lbl_td', false);
-displayLogicElement('IsInvoicePrintDetails_lbl', false);
-}
-if (inputValue(document.frmMain.inpissummary) == 'N' && inputValue(document.frmMain.inpisbom) == 'Y') {
-displayLogicElement('IsPickListPrintDetails_inp_td', true);
-displayLogicElement('IsPickListPrintDetails_inp', true);
-displayLogicElement('IsPickListPrintDetails_lbl_td', true);
-displayLogicElement('IsPickListPrintDetails_lbl', true);
-} else {
-displayLogicElement('IsPickListPrintDetails_inp_td', false);
-displayLogicElement('IsPickListPrintDetails_inp', false);
-displayLogicElement('IsPickListPrintDetails_lbl_td', false);
-displayLogicElement('IsPickListPrintDetails_lbl', false);
-}
-if (inputValue(document.frmMain.inpissummary) == 'N') {
-displayLogicElement('IsPurchased_inp_td', true);
-displayLogicElement('IsPurchased_inp', true);
-displayLogicElement('IsPurchased_lbl_td', true);
-displayLogicElement('IsPurchased_lbl', true);
-} else {
-displayLogicElement('IsPurchased_inp_td', false);
-displayLogicElement('IsPurchased_inp', false);
-displayLogicElement('IsPurchased_lbl_td', false);
-displayLogicElement('IsPurchased_lbl', false);
-}
-if (inputValue(document.frmMain.inpissummary) == 'N') {
-displayLogicElement('IsSold_inp_td', true);
-displayLogicElement('IsSold_inp', true);
-displayLogicElement('IsSold_lbl_td', true);
-displayLogicElement('IsSold_lbl', true);
-} else {
-displayLogicElement('IsSold_inp_td', false);
-displayLogicElement('IsSold_inp', false);
-displayLogicElement('IsSold_lbl_td', false);
-displayLogicElement('IsSold_lbl', false);
-}
-if (inputValue(document.frmMain.inpissold) == 'Y' || inputValue(document.frmMain.inpispurchased) == 'Y' && inputValue(document.frmMain.inpissummary) == 'N') {
-displayLogicElement('C_TaxCategory_ID_inp_td', true);
-displayLogicElement('C_TaxCategory_ID_inp', true);
-displayLogicElement('C_TaxCategory_ID_lbl_td', true);
-displayLogicElement('C_TaxCategory_ID_lbl', true);
-} else {
-displayLogicElement('C_TaxCategory_ID_inp_td', false);
-displayLogicElement('C_TaxCategory_ID_inp', false);
-displayLogicElement('C_TaxCategory_ID_lbl_td', false);
-displayLogicElement('C_TaxCategory_ID_lbl', false);
-}
-if (inputValue(document.frmMain.inpissummary) == 'N') {
-displayLogicElement('Discontinued_inp_td', true);
-displayLogicElement('Discontinued_inp', true);
-displayLogicElement('Discontinued_lbl_td', true);
-displayLogicElement('Discontinued_lbl', true);
-} else {
-displayLogicElement('Discontinued_inp_td', false);
-displayLogicElement('Discontinued_inp', false);
-displayLogicElement('Discontinued_lbl_td', false);
-displayLogicElement('Discontinued_lbl', false);
-}
-if (inputValue(document.frmMain.inpissummary) == 'N' && inputValue(document.frmMain.inpdiscontinued) == 'Y') {
-displayLogicElement('DiscontinuedBy_inp_td', true);
-displayLogicElement('DiscontinuedBy_inp', true);
-displayLogicElement('DiscontinuedBy_lbl_td', true);
-displayLogicElement('DiscontinuedBy_lbl', true);
-displayLogicElement('DiscontinuedBy_btt', true);
-} else {
-displayLogicElement('DiscontinuedBy_inp_td', false);
-displayLogicElement('DiscontinuedBy_inp', false);
-displayLogicElement('DiscontinuedBy_lbl_td', false);
-displayLogicElement('DiscontinuedBy_lbl', false);
-displayLogicElement('DiscontinuedBy_btt', false);
-}
-if (strShowAudit == 'Y') {
-displayLogicElement('Created_inp_td', true);
-displayLogicElement('Created_inp', true);
-displayLogicElement('Created_lbl_td', true);
-displayLogicElement('Created_lbl', true);
-} else {
-displayLogicElement('Created_inp_td', false);
-displayLogicElement('Created_inp', false);
-displayLogicElement('Created_lbl_td', false);
-displayLogicElement('Created_lbl', false);
-}
-if (strShowAudit == 'Y') {
-displayLogicElement('CreatedBy_inp_td', true);
-displayLogicElement('CreatedBy_inp', true);
-displayLogicElement('CreatedBy_lbl_td', true);
-displayLogicElement('CreatedBy_lbl', true);
-} else {
-displayLogicElement('CreatedBy_inp_td', false);
-displayLogicElement('CreatedBy_inp', false);
-displayLogicElement('CreatedBy_lbl_td', false);
-displayLogicElement('CreatedBy_lbl', false);
-}
-if (strShowAudit == 'Y') {
-displayLogicElement('Updated_inp_td', true);
-displayLogicElement('Updated_inp', true);
-displayLogicElement('Updated_lbl_td', true);
-displayLogicElement('Updated_lbl', true);
-} else {
-displayLogicElement('Updated_inp_td', false);
-displayLogicElement('Updated_inp', false);
-displayLogicElement('Updated_lbl_td', false);
-displayLogicElement('Updated_lbl', false);
-}
-if (strShowAudit == 'Y') {
-displayLogicElement('UpdatedBy_inp_td', true);
-displayLogicElement('UpdatedBy_inp', true);
-displayLogicElement('UpdatedBy_lbl_td', true);
-displayLogicElement('UpdatedBy_lbl', true);
-} else {
-displayLogicElement('UpdatedBy_inp_td', false);
-displayLogicElement('UpdatedBy_inp', false);
-displayLogicElement('UpdatedBy_lbl_td', false);
-displayLogicElement('UpdatedBy_lbl', false);
-}
-if ((strShowAudit == 'Y')){
-  displayLogicElement('fldgrp1000100001', true);
-} else {
-  displayLogicElement('fldgrp1000100001', false);
-}
-  return true;
-}
-
-function readOnlyLogic() {
-  readOnlyLogicElement('IsStocked', (inputValue(document.frmMain.inpproducttype) == 'R' || inputValue(document.frmMain.inpproducttype) == 'E' || inputValue(document.frmMain.inpproducttype) == 'O'));
-  readOnlyLogicElement('IsBOM', (inputValue(document.frmMain.inpproducttype) == 'R' || inputValue(document.frmMain.inpproducttype) == 'E' || inputValue(document.frmMain.inpproducttype) == 'O'));
-  return true;
-}
-
-function onloadClient() {
-  var frm=document.frmMain;
-  var key = eval("document.frmMain." + frm.inpKeyName.value);if (inputValue(key)==null || inputValue(key)=="") updateOnChange(frm.inpadClientId);
-if (inputValue(key)==null || inputValue(key)=="") updateOnChange(frm.inpadOrgId);
-keyArray[keyArray.length] = new keyArrayItem("ENTER", "openSearch(null, null, '../../../info/BusinessPartner.html', null, false, 'frmMain', 'inpcBpartnerId', 'inpcBpartnerId_R', inputValue(document.frmMain.inpcBpartnerId_R), 'inpIDValue', inputValue(document.frmMain.inpcBpartnerId), 'WindowID', inputValue(document.frmMain.inpwindowId), 'inpAD_Org_ID', inputValue(document.frmMain.inpadOrgId), 'Command', 'KEY');", "inpcBpartnerId_R", "null");
-if (inputValue(key)==null || inputValue(key)=="") updateOnChange(frm.inpmProductCategoryId);
-if (inputValue(key)==null || inputValue(key)=="") updateOnChange(frm.inpcUomId);
-if (inputValue(key)==null || inputValue(key)=="") updateOnChange(frm.inpsalesrepId);
-if (inputValue(key)==null || inputValue(key)=="") updateOnChange(frm.inpproducttype);
-if (inputValue(key)==null || inputValue(key)=="") updateOnChange(frm.inpmaProcessplanId);
-keyArray[keyArray.length] = new keyArrayItem("ENTER", "openSearch(null, null, '../../../info/Locator.html', null, false, 'frmMain', 'inpmLocatorId', 'inpmLocatorId_R', inputValue(document.frmMain.inpmLocatorId_R), 'inpIDValue', inputValue(document.frmMain.inpmLocatorId), 'WindowID', inputValue(document.frmMain.inpwindowId), 'inpAD_Org_ID', inputValue(document.frmMain.inpadOrgId), 'inpmWarehouseId', inputValue(document.frmMain.inpmWarehouseId), 'Command', 'KEY');", "inpmLocatorId_R", "null");
-if (inputValue(key)==null || inputValue(key)=="") updateOnChange(frm.inpcTaxcategoryId);
-if (inputValue(key)==null || inputValue(key)=="") updateOnChange(frm.inpmAttributesetId);
-keyArray[keyArray.length] = new keyArrayItem("ENTER", "openPAttribute(null, null, '../../../info/AttributeSetInstance.html', null, true, 'frmMain', 'inpmAttributesetinstanceId', 'inpmAttributesetinstanceId_R', inputValue(document.frmMain.inpmAttributesetinstanceId_R), 'inpIDValue', inputValue(document.frmMain.inpmAttributesetinstanceId), 'WindowID', inputValue(document.frmMain.inpwindowId), 'inpKeyValue', inputValue(document.frmMain.inpmAttributesetinstanceId), 'inpwindowId', inputValue(document.frmMain.inpwindowId), 'inpProduct', inputValue(document.frmMain.inpmProductId), 'Command', 'KEY');", "inpmAttributesetinstanceId_R", "null");
-if (inputValue(key)==null || inputValue(key)=="") updateOnChange(frm.inpcosttype);
-  displayLogic();
-  readOnlyLogic();
-  return true;
-}
-
-function setFocusFirstElement() {
-  setWindowElementFocus('Value', 'id');
-}
-</script>
-
-
-<script language="JavaScript" id="scriptOnLoad" type="text/javascript"> function buttonListShorcuts() {
-  keyArray[keyArray.length] = new keyArrayItem("V", "executeWindowButton('Processing_linkBTN');", null, "altKey", false, "onkeydown");
- return true;
-}</script>
-
-<script language="JavaScript" type="text/javascript">
-  function onLoadDo() {
-    this.windowTables = new Array(
-      new windowTableId('client')
-    );
-    setWindowTableParentElement();
-    this.tabsTables = new Array(
-      new tabTableId('tdtopTabs')
-    );
-    setTabTableParentElement();
-    enableShortcuts('edition');
-    setBrowserAutoComplete(false);
-    resizeArea();
-    updateMenuIcon('buttonMenu');
-    try {
-      onloadClient();
-    } catch (e) {}
-    try {
-      setWindowEditing(false);
-    } catch (e) {}
-    setFocusFirstElement();
-    buttonListShorcuts();
-    xx();
-    
-  }
-
-  function onResizeDo() {
-    resizeArea();
-  }
-</script>
-
-</head>
-<body leftmargin="0" topmargin="0" marginwidth="0" marginheight="0" onload="onLoadDo();  " onresize="onResizeDo();" id="paramMessageAlert">
-
-
-
-
-
-
-<form id="form" method="post" action="Product_Relation.html" name="frmMain">
-  <input type="hidden" name="Command"></input>
-  <input type="hidden" name="inpCommandType" value="EDIT" id="paramCommandType"></input>
-  <input type="hidden" name="inpTabId" value="180"></input>
-  <input type="hidden" name="inpParamSessionDate" value="" id="paramSessionDate"></input>
-  <input type="hidden" name="inpLastFieldChanged" id="paramChanged" value=""></input>
-  <input type="hidden" name="inpwindowId" value="140" id="paramWindowId"></input>
-
-  <input type="hidden" name="inpkeyColumnId" value="M_Product_ID"></input>
-  <input type="hidden" name="inpTableId" value="208" id="paramTableId"></input>
-  <input type="hidden" name="inpKeyName" value="inpmProductId"></input>
-  <input type="hidden" name="inpkeyColumnIdInp" value="" id="inpkeyColumnId"></input>
-  <input type="hidden" name="inpKeyReferenceColumnName"></input>
-  <input type="hidden" name="inpTableReferenceId"></input>
-  <input type="hidden" name="inpKeyReferenceId"></input>
-  <input type="hidden" name="inpSecondKey"></input>
-  <input type="hidden" name="inpParentKeyColumn" id="parent" value=""></input>
-
-  <input type="hidden" name="mappingName" id="mapping" value="/Product/Product_Relation.html"></input>
-  <input type="hidden" name="autosave" id="autosave" value="N"></input>
-   
-    
-  
-<input type="hidden" name="inpissotrxtab" id="ISSOTRXTAB" value="Y"></input>
-
-
-
-<input type="hidden" name="inpsExpensetypeId" id="S_ExpenseType_ID" value=""></input>
-
-
-
-<input type="hidden" name="inpsResourceId" id="S_Resource_ID" value=""></input>
-
-
-
-<input type="hidden" name="inpmProductId" id="M_Product_ID" value="1000008"></input>
-
-
-
-<input type="hidden" name="inpsku" id="SKU" value=""></input>
-
-
-
-<input type="hidden" name="inpclassification" id="Classification" value=""></input>
-
-
-
-<input type="hidden" name="inpdocumentnote" id="DocumentNote" value=""></input>
-
-
-
-<input type="hidden" name="inphelp" id="Help" value=""></input>
-
-
-
-<input type="hidden" name="inpversionno" id="VersionNo" value=""></input>
-
-
-
-<input type="hidden" name="inpguaranteedays" id="GuaranteeDays" value=""></input>
-
-
-
-<input type="hidden" name="inpdownloadurl" id="DownloadURL" value=""></input>
-
-
-
-<input type="hidden" name="inpmFreightcategoryId" id="M_FreightCategory_ID" value=""></input>
-
-
-<input type="hidden" name="inpispriceprinted" id="Ispriceprinted" value="Y"></input>
-
-
-
-<input type="hidden" name="inpname2" id="Name2" value=""></input>
-
-
-
-<input type="hidden" name="inpstockMin" id="Stock_Min" value=""></input>
-
-
-
-<input type="hidden" name="inpenforceAttribute" id="Enforce_Attribute" value="N"></input>
-
-
-  <table height="100%" border="0" cellpadding="0" cellspacing="0" id="main">
-    <tr>
-      <td valign="top" id="tdleftTabs"><table cellpadding="0" cellspacing="0" class="Main_ContentPane_LeftTabsBar" id="tdLeftTabsBars">
-  <tr>
-    <td class="Main_LeftTabsBar_bg_body">
-      <table cellpadding="0" cellspacing="0" class="Main_LeftTabsBar">
-        <tr>
-          <td class="Main_LeftTabsBar_bg_top">
-
-          </td>
-        </tr>
-        <tr>
-          <td>
-              <a class="Main_LeftTabsBar_ButtonLeft" href="#" onclick="menuShowHide('buttonMenu');return false;">
-                <img class="Main_LeftTabsBar_ButtonLeft_Icon Main_LeftTabsBar_ButtonLeft_Icon_arrow_hide" src="../../../web/images/blank.gif" border="0" id="buttonMenu"></img>
-              </a>
-          </td>
-        </tr>
-
-        <tr>
-          <td class="Main_LeftTabsBar_bg_separator_cell">
-          </td>
-        </tr>
-        <tr>
-          <td>
-                <div class="Main_LeftTabsBar_ButtonRight_selected">
-                  <img class="Main_LeftTabsBar_ButtonRight_Icon Main_LeftTabsBar_ButtonRight_Icon_edition_selected" alt="Form View" title="Form View" src="../../../web/images/blank.gif" border="0" id="linkButtonEdition"></img>
-                </div>
-
-          </td>
-        </tr>
-        <tr>
-          <td>
-                <a class="Main_LeftTabsBar_ButtonRight" href="#" onClick="submitCommandForm('RELATION', isUserChanges, null, 'Product_Relation.html', '_self', null, true);return false;" id="buttonRelation">
-                  <img class="Main_LeftTabsBar_ButtonRight_Icon Main_LeftTabsBar_ButtonRight_Icon_relation" alt="Grid View" title="Grid View" src="../../../web/images/blank.gif" border="0"></img>
-                </a>
-          </td>
-        </tr>
-
-        <tr>
-          <td class="Main_LeftTabsBar_bg_empty_cell">
-          </td>
-        </tr>
-      </table>
-    </td>
-  </tr>
-  <tr class="Main_LeftTabsBar_bg_empty_cell">
-    <td class="Main_LeftTabsBar_bg_empty_cell">
-
-    </td>
-  </tr>
-</table>
-</td>
-      <td valign="top">
-        <table width="100%" border="0" cellspacing="0" cellpadding="0" class="Main_ContentPane_Left">
-          <tr><td class="Main_NavBar_bg_left" id="tdleftSeparator"></td></tr>
-          <tr><td class="Main_ToolBar_bg_left" valign="top"></td></tr>
-          <tr><td class="Main_Client_bg_left"></td></tr>
-          <tr><td class="Main_Bottom_bg_left"></td></tr>
-
-        </table>
-      </td>
-      <td valign="top">
-        <div class="Main_ContentPane_NavBar" id="tdtopButtons"><table class="Main_ContentPane_NavBar" id="tdtopNavButtons">
-  <tr class="Main_NavBar_bg"><td></td>
-  <td class="Main_NavBar_LeftButton_cell">
-    <a class="Main_NavBar_LeftButton" href="#" onclick="goToPreviousPage(); return false;" border="0" onmouseover="window.status='Go back';return true;" onmouseout="window.status='';return true;" id="buttonBack"><img src="../../../web/images/blank.gif" class="Main_NavBar_LeftButton_Icon Main_NavBar_LeftButton_Icon_back" border="0" alt="Go back" title="Go back"/></a>
-  </td>
-  <td class="Main_NavBar_separator_cell"></td>
-
-  <td class="Main_NavBar_LeftButton_cell">
-    <a class="Main_NavBar_LeftButton" href="#" onClick="submitCommandForm('DEFAULT', false, null, 'Product_Relation.html', '_self', null, true);return false;" border="0" onmouseover="window.status='Reload Current Page';return true;" onmouseout="window.status='';return true;" id="buttonRefresh"><img src="../../../web/images/blank.gif" class="Main_NavBar_LeftButton_Icon Main_NavBar_LeftButton_Icon_refresh" border="0" alt="Reload Current Page" title="Reload Current Page"></a>
-  </td>
-  <td class="Main_NavBar_Breadcrumb_cell"><span class="Main_NavBar_Breadcrumb" id="paramBreadcrumb"><span>Master Data Management  ||  Product</span>
-&nbsp;||&nbsp;
-Product
-</span></td>
-  <td></td>
-  <td class="Main_NavBar_RightButton_cell">
-
-    <a class="Main_NavBar_RightButton" href="#" onclick="about();return false;" border="0" onmouseover="window.status='About';return true;" onmouseout="window.status='';return true;" id="buttonAbout"><img src="../../../web/images/blank.gif" class="Main_NavBar_RightButton_Icon Main_NavBar_RightButton_Icon_about" border="0" alt="About" title="About"></a>
-  </td>
-  <td class="Main_NavBar_separator_cell_small"></td>
-  <td class="Main_NavBar_RightButton_cell">
-    <a class="Main_NavBar_RightButton" href="#" onclick="openHelp(document.frmMain.inpwindowId.value, '../../../ad_help/DisplayHelp.html', 'HELP', false, null, null, 'W', 'Product');return false;" border="0" onmouseover="window.status='Help';return true;" onmouseout="window.status='';return true;" id="buttonHelp"><img src="../../../web/images/blank.gif" class="Main_NavBar_RightButton_Icon Main_NavBar_RightButton_Icon_help" border="0" alt="Help" title="Help"></a>
-  </td>
-  <td class="Main_NavBar_separator_cell"></td>
-  <td class="Main_NavBar_bg_logo_left"></td>
-  <td class="Main_NavBar_bg_logo" width="1" onclick="openNewBrowser('http://www.openbravo.com', 'Openbravo');return false;"><img src="../../../web/images/blank.gif" alt="Openbravo" title="Openbravo" border="0" id="openbravoLogo" class="Main_NavBar_logo"></td>
-
-  <td class="Main_NavBar_bg_logo_right"></td>
-  <td></td>
-  </tr>
-</table></div>
-        <div class="Main_ContentPane_ToolBar" id="paramToolBar"><table class="Main_ContentPane_ToolBar Main_ToolBar_bg" id="tdToolBar">
-<tr>
-<td width="2%" ><a href="#" onClick="submitCommandForm('NEW', true, null, 'Product_Relation.html', '_self', null, true);return false;" class="Main_ToolBar_Button" onMouseOver="window.status='Create a New Record';return true;" onMouseOut="window.status='';return true;" onclick="this.hideFocus=true" onblur="this.hideFocus=false" id="linkButtonNew"><img class="Main_ToolBar_Button_Icon Main_ToolBar_Button_Icon_New" src="../../../web/images/blank.gif" title="Create a New Record" border="0" id="buttonNew"></a></td>
-<td class="Main_ToolBar_Separator_cell" ><img src="../../../web/images/blank.gif" class="Main_ToolBar_Separator"></td>
-<td width="2%" ><a href="#" onClick="submitCommandForm('SAVE_EDIT_RELATION', true, null, 'Product_Relation.html', '_self', true, false);return false;" class="Main_ToolBar_Button" onMouseOver="window.status='Save and Grid';return true;" onMouseOut="window.status='';return true;" onclick="this.hideFocus=true" onblur="this.hideFocus=false" id="linkButtonSave_Relation"><img class="Main_ToolBar_Button_Icon Main_ToolBar_Button_Icon_Save_Relation" src="../../../web/images/blank.gif" title="Save and Grid" border="0" id="buttonSave_Relation"></a></td>
-<td width="2%" ><a href="#" onClick="submitCommandForm('SAVE_EDIT_NEW', true, null, 'Product_Relation.html', '_self', true, false);return false;" class="Main_ToolBar_Button" onMouseOver="window.status='Save and New';return true;" onMouseOut="window.status='';return true;" onclick="this.hideFocus=true" onblur="this.hideFocus=false" id="linkButtonSave_New"><img class="Main_ToolBar_Button_Icon Main_ToolBar_Button_Icon_Save_New" src="../../../web/images/blank.gif" title="Save and New" border="0" id="buttonSave_New"></a></td>
-<td width="2%" ><a href="#" onClick="submitCommandForm('SAVE_EDIT_EDIT', true, null, 'Product_Relation.html', '_self', true, false);return false;" class="Main_ToolBar_Button" onMouseOver="window.status='Save Record';return true;" onMouseOut="window.status='';return true;" onclick="this.hideFocus=true" onblur="this.hideFocus=false" id="linkButtonSave"><img class="Main_ToolBar_Button_Icon Main_ToolBar_Button_Icon_Save" src="../../../web/images/blank.gif" title="Save Record" border="0" id="buttonSave"></a></td>
-<td width="2%" ><a href="#" onClick="submitCommandForm('SAVE_EDIT_NEXT', true, null, 'Product_Relation.html', '_self', true, false);return false;" class="Main_ToolBar_Button" onMouseOver="window.status='Save and Next';return true;" onMouseOut="window.status='';return true;" onclick="this.hideFocus=true" onblur="this.hideFocus=false" id="linkButtonSave_Next"><img class="Main_ToolBar_Button_Icon Main_ToolBar_Button_Icon_Save_Next" src="../../../web/images/blank.gif" title="Save and Next" border="0" id="buttonSave_Next"></a></td>
-<td class="Main_ToolBar_Separator_cell" ><img src="../../../web/images/blank.gif" class="Main_ToolBar_Separator"></td>
-
-<td width="2%" ><a href="#" onClick="submitCommandForm('DELETE', false, null, 'Product_Relation.html', '_self', null, true);return false;" class="Main_ToolBar_Button" onMouseOver="window.status='Delete Record';return true;" onMouseOut="window.status='';return true;" onclick="this.hideFocus=true" onblur="this.hideFocus=false" id="linkButtonDelete"><img class="Main_ToolBar_Button_Icon Main_ToolBar_Button_Icon_Delete" src="../../../web/images/blank.gif" title="Delete Record" border="0" id="buttonDelete"></a></td>
-<td class="Main_ToolBar_Separator_cell" ><img src="../../../web/images/blank.gif" class="Main_ToolBar_Separator"></td>
-<td width="2%" ><a href="#" onClick="windowUndo(document.frmMain);return false;" class="Main_ToolBar_Button" onMouseOver="window.status='Undo';return true;" onMouseOut="window.status='';return true;" onclick="this.hideFocus=true" onblur="this.hideFocus=false" id="linkButtonUndo"><img class="Main_ToolBar_Button_Icon Main_ToolBar_Button_Icon_Undo" src="../../../web/images/blank.gif" title="Undo" border="0" id="buttonUndo"></a></td>
-<td width="2%" ><a href="null" onClick=" openServletNewWindow('DEFAULT', false, '../../../businessUtility/TabAttachments_FS.html?inpKey=' + document.frmMain.inpmProductId.value+'&inpEditable=Y', 'ATTACHMENT', null, true, 600, 700, true);return false;" class="Main_ToolBar_Button" onMouseOver="window.status='Attach a File';return true;" onMouseOut="window.status='';return true;" onclick="this.hideFocus=true" onblur="this.hideFocus=false" id="linkButtonAttachment"><img class="Main_ToolBar_Button_Icon Main_ToolBar_Button_Icon_Attachment" src="../../../web/images/blank.gif" title="Attach a File" border="0" id="buttonAttachment"></a></td>
-<td width="2%" ><a href="#" onClick="openSearchWindow('../../../businessUtility/Buscador.html', 'BUSCADOR', document.frmMain.inpTabId.value, 'Product/Product_Relation.html', document.frmMain.inpwindowId.value, true);return false;" class="Main_ToolBar_Button" onMouseOver="window.status='Search Records';return true;" onMouseOut="window.status='';return true;" onclick="this.hideFocus=true" onblur="this.hideFocus=false" id="linkButtonSearchFiltered"><img class="Main_ToolBar_Button_Icon Main_ToolBar_Button_Icon_SearchFiltered" src="../../../web/images/blank.gif" title="Search Records" border="0" id="buttonSearchFiltered"></a></td>
-<td width="2%" ><a href="#" onClick="changeAuditStatus();return false;" class="Main_ToolBar_Button" onMouseOver="window.status='Show Audit';return true;" onMouseOut="window.status='';return true;" onclick="this.hideFocus=true" onblur="this.hideFocus=false" id="linkButtonAudit"><img class="Main_ToolBar_Button_Icon Main_ToolBar_Button_Icon_Audit" src="../../../web/images/blank.gif" title="Show Audit" border="0" id="buttonAudit"></a></td>
-<td class="Main_ToolBar_Separator_cell" ><img src="../../../web/images/blank.gif" class="Main_ToolBar_Separator"></td>
-<td width="2%" ><a href="#" onClick="submitCommandForm('FIRST', false, null, 'Product_Relation.html', '_self', null, true);return false;" class="Main_ToolBar_Button" onMouseOver="window.status='Go to First Record';return true;" onMouseOut="window.status='';return true;" onclick="this.hideFocus=true" onblur="this.hideFocus=false" id="linkButtonFirst"><img class="Main_ToolBar_Button_Icon Main_ToolBar_Button_Icon_First" src="../../../web/images/blank.gif" title="Go to First Record" border="0" id="buttonFirst"></a></td>
-<td width="2%" ><a href="#" onClick="submitCommandForm('PREVIOUS', false, null, 'Product_Relation.html', '_self', null, true);return false;" class="Main_ToolBar_Button" onMouseOver="window.status='Go Back One Record';return true;" onMouseOut="window.status='';return true;" onclick="this.hideFocus=true" onblur="this.hideFocus=false" id="linkButtonPrevious"><img class="Main_ToolBar_Button_Icon Main_ToolBar_Button_Icon_Previous" src="../../../web/images/blank.gif" title="Go Back One Record" border="0" id="buttonPrevious"></a></td>
-<td width="2%" ><a href="#" onClick="submitCommandForm('NEXT', false, null, 'Product_Relation.html', '_self', null, true);return false;" class="Main_ToolBar_Button" onMouseOver="window.status='Go Forward One Record';return true;" onMouseOut="window.status='';return true;" onclick="this.hideFocus=true" onblur="this.hideFocus=false" id="linkButtonNext"><img class="Main_ToolBar_Button_Icon Main_ToolBar_Button_Icon_Next" src="../../../web/images/blank.gif" title="Go Forward One Record" border="0" id="buttonNext"></a></td>
-<td width="2%" ><a href="#" onClick="submitCommandForm('LAST', false, null, 'Product_Relation.html', '_self', null, true);return false;" class="Main_ToolBar_Button" onMouseOver="window.status='Go to Last Record';return true;" onMouseOut="window.status='';return true;" onclick="this.hideFocus=true" onblur="this.hideFocus=false" id="linkButtonLast"><img class="Main_ToolBar_Button_Icon Main_ToolBar_Button_Icon_Last" src="../../../web/images/blank.gif" title="Go to Last Record" border="0" id="buttonLast"></a></td>
-<td class="Main_ToolBar_Separator_cell" ><img src="../../../web/images/blank.gif" class="Main_ToolBar_Separator"></td>
-<td class="Main_ToolBar_Space"></td>
-<td width="1"><img src="../../../web/images/blank.gif" class="Main_ToolBar_textlabel_bg_left" border="0"></td>
-<td class="Main_ToolBar_textlabel_bg_body"><a class="Main_ToolBar_text_relatedinfo" href="#" onclick="openServletNewWindow('DEFAULT', true, '../../../utility/UsedByLink.html', 'LINKS', null, true, 500, 600, true);">Linked Items</a></td>
-<td class="Main_ToolBar_textlabel_bg_right" width="2%" ><a href="#" onClick="openServletNewWindow('DEFAULT', true, '../../../utility/UsedByLink.html', 'LINKS', null, true, 500, 600, true);return false;" class="Main_ToolBar_Button" onMouseOver="window.status='Linked Items';return true;" onMouseOut="window.status='';return true;" onclick="this.hideFocus=true" onblur="this.hideFocus=false" id="linkButtonRelatedInfo"><img class="Main_ToolBar_Button_Icon Main_ToolBar_Button_Icon_RelatedInfo" src="../../../web/images/blank.gif" title="Linked Items" border="0" id="buttonRelatedInfo"></a></td>
-
-</tr>
-</table>
-</div>
-        <table width="100%" border="0" cellspacing="0" cellpadding="0" class="Main_ContentPane_TabPane" id="tdtopTabs">
-          <tr id="paramParentTabContainer"><td class="tabBackGroundInit"></td></tr>
-          <tr id="paramMainTabContainer"><td class="tabBackGroundInit">
-  <div>
-  <span class="tabTitle">
-    <div class="tabTitle_background">
-      <span class="tabTitle_elements_container">
-
-        <span class="tabTitle_elements_text">Product</span>
-        <span class="tabTitle_elements_separator"><div class="tabTitle_elements_separator_icon"></div></span>
-        <span class="tabTitle_elements_image"><div class="tabTitle_elements_image_normal_icon" id="TabStatusIcon"></div></span>
-      </span>
-    </div>
-  </span>
-</div>
-</td></tr><tr><td class="tabBackGround">
-  <div class="marginLeft">
-
-<div><span class="dojoTabcurrentfirst"><div><span><a class="dojoTabLink" href="#" onclick="return false;" onMouseOver="return true;" onMouseOut="return true;" id="tabname180">Product</a></span></div></span>
-  </div>
-  </div>
-</td>
-</tr>
-          <tr id="paramChildTabContainer"><td class="tabBackGround">
-  <table class="tabTable"><tr>
-    <td valign="top"><span class="tabLeft">&nbsp;</span></td>
-    <td class="tabPaneBackGround"><div class="marginLeft1">
-<span class="dojoTab"><div><a class="dojoTabLink" href="#" onclick="submitCommandForm('TAB', false, null, 'http://vmkubuntu:8880/pi//Product/BillofMaterials_Edition.html', '_self', null, true);return false;" onMouseOver="return true;" onMouseOut="return true;"  id="tabname317">Bill of Materials</a></div></span>
-
-<span class="tabSeparator">&nbsp;</span>
-<span class="dojoTab"><div><a class="dojoTabLink" href="#" onclick="submitCommandForm('TAB', false, null, 'http://vmkubuntu:8880/pi//Product/Substitute_Edition.html', '_self', null, true);return false;" onMouseOver="return true;" onMouseOut="return true;"  id="tabname181">Substitute</a></div></span>
-<span class="tabSeparator">&nbsp;</span>
-<span class="dojoTab"><div><a class="dojoTabLink" href="#" onclick="submitCommandForm('TAB', false, null, 'http://vmkubuntu:8880/pi//Product/Purchasing_Edition.html', '_self', null, true);return false;" onMouseOver="return true;" onMouseOut="return true;"  id="tabname239">Purchasing</a></div></span>
-<span class="tabSeparator">&nbsp;</span>
-<span class="dojoTab"><div><a class="dojoTabLink" href="#" onclick="submitCommandForm('TAB', false, null, 'http://vmkubuntu:8880/pi//Product/Costing_Edition.html', '_self', null, true);return false;" onMouseOver="return true;" onMouseOut="return true;"  id="tabname800057">Costing</a></div></span>
-<span class="tabSeparator">&nbsp;</span>
-<span class="dojoTab"><div><a class="dojoTabLink" href="#" onclick="submitCommandForm('TAB', false, null, 'http://vmkubuntu:8880/pi//Product/OrgSpecific_Edition.html', '_self', null, true);return false;" onMouseOver="return true;" onMouseOut="return true;"  id="tabname800241">Org Specific</a></div></span>
-<span class="tabSeparator">&nbsp;</span>
-<span class="dojoTab"><div><a class="dojoTabLink" href="#" onclick="submitCommandForm('TAB', false, null, 'http://vmkubuntu:8880/pi//Product/Price_Edition.html', '_self', null, true);return false;" onMouseOver="return true;" onMouseOut="return true;"  id="tabname183">Price</a></div></span>
-<span class="tabSeparator">&nbsp;</span>
-<span class="dojoTab"><div><a class="dojoTabLink" href="#" onclick="submitCommandForm('TAB', false, null, 'http://vmkubuntu:8880/pi//Product/UOM_Edition.html', '_self', null, true);return false;" onMouseOver="return true;" onMouseOut="return true;"  id="tabname800000">UOM</a></div></span>
-
-<span class="tabSeparator">&nbsp;</span>
-<span class="dojoTab"><div><a class="dojoTabLink" href="#" onclick="submitCommandForm('TAB', false, null, 'http://vmkubuntu:8880/pi//Product/Accounting_Edition.html', '_self', null, true);return false;" onMouseOver="return true;" onMouseOut="return true;"  id="tabname210">Accounting</a></div></span>
-<span class="tabSeparator">&nbsp;</span>
-<span class="dojoTab"><div><a class="dojoTabLink" href="#" onclick="submitCommandForm('TAB', false, null, 'http://vmkubuntu:8880/pi//Product/Transactions_Edition.html', '_self', null, true);return false;" onMouseOver="return true;" onMouseOut="return true;"  id="tabname289">Transactions</a></div></span>
-<span class="tabSeparator">&nbsp;</span>
-<span class="dojoTab"><div><a class="dojoTabLink" href="#" onclick="submitCommandForm('TAB', false, null, 'http://vmkubuntu:8880/pi//Product/Translation_Edition.html', '_self', null, true);return false;" onMouseOver="return true;" onMouseOut="return true;"  id="tabname235">Translation</a></div></span>
-    </div></td><td valign="top"><span class="tabRight">&nbsp;</span></td>
-  </tr></table>
-</td>
-</tr>
-        </table>
-
-        <div class="Main_ContentPane_Client" style="overflow: auto; display: none;" id="client">
-          <table summary="" id="sectionDetail">
-            <tr>
-              <td>
-                
-                <table cellpadding="0" cellspacing="0" id="messageBoxID" class="MessageBoxHIDDEN">
-  <tbody>
-  <tr class="MessageBox_TopMargin">
-    <td class="MessageBox_LeftMargin"></td>
-    <td></td>
-
-    <td class="MessageBox_RightMargin"></td>
-  </tr>
-  <tr>
-    <td class="MessageBox_LeftMargin"></td>
-    <td>
-
-      <table cellpadding="0" cellspacing="0" class="MessageBox_Container">
-        <tbody>
-        <tr>
-
-          <td class="MessageBox_LeftTrans">
-            <table style="width: 100%; height: 100%" cellpadding="0" cellspacing="0">
-              <tbody>
-              <tr>
-                <td class="MessageBox_TopLeft"></td>
-              </tr>
-              <tr>
-                <td class="MessageBox_Left"></td>
-              </tr>
-
-              </tbody>
-            </table>
-          </td>
-          <td class="MessageBox_bg">
-
-            <table class="MessageBox_Top">
-            <tbody>
-              <tr>
-                <td>
-
-                  <span>
-                  <table cellpadding="0" cellspacing="0" class="MessageBox_Body_ContentCell">
-                    <tbody>
-                    <tr>
-                      <td class="MessageBox_Icon_ContentCell">
-                        <div class="MessageBox_Icon"></div>
-                      </td>
-                      <td style="vertical-align: top;" id="messageBoxIDContent">
-                        <span>
-
-                          <div class="MessageBox_TextTitle" id="messageBoxIDTitle"></div>
-                          <div class="MessageBox_TextDescription" id="messageBoxIDMessage"></div>
-                          <div class="MessageBox_TextSeparator"></div>
-                        </span>
-                      </td>
-                    </tr>
-                    </tbody>
-                  </table>
-                  </span>
-
-                </td>
-              </tr>
-              </tbody>
-            </table>
-
-          </td>
-          <td class="MessageBox_RightTrans">
-            <table style="width: 100%; height: 100%" cellpadding="0" cellspacing="0">
-              <tbody>
-
-              <tr>
-                <td class="MessageBox_TopRight"></td>
-              </tr>
-              <tr>
-                <td class="MessageBox_Right"></td>
-              </tr>
-              </tbody>
-            </table>
-          </td>
-
-        </tr>
-        <tr>
-          <td rowspan="2" class="MessageBox_BottomLeft">
-          </td>
-          <td class="MessageBox_BottomTrans MessageBox_bg">
-          </td>
-          <td rowspan="2" class="MessageBox_BottomRight">
-          </td>
-        </tr>
-
-        <tr>
-          <td class="MessageBox_Bottom">
-          </td>
-        </tr>
-        </tbody>
-      </table>
-
-    </td>
-    <td class="MessageBox_RightMargin"></td>
-
-  </tr>
-  <tr class="MessageBox_BottomMargin">
-    <td class="MessageBox_LeftMargin"></td>
-    <td></td>
-    <td class="MessageBox_RightMargin"></td>
-  </tr>
-  </tbody>
-</table>
-                <table width="100%" cellspacing="0" cellpadding="0" border="0" class="Main_Client_TableEdition">
-
-                  <tr>
-  <td class="TableEdition_OneCell_width"></td>
-  <td class="TableEdition_TwoCells_width"></td>
-  <td class="TableEdition_OneCell_width"></td>
-  <td class="TableEdition_TwoCells_width"></td>
-</tr>
-<tr><td class="TitleCell" id="AD_Image_ID_lbl_td"><span class="LabelText" id="AD_Image_ID_lbl"><span id="lbl::800508">Image</span> </span></td>
-<td colspan="3" class="Image_ContentCell" id="AD_Image_ID_inp_td"><div id="editDiscard">
-<div id="AD_Image_ID_inp">
-  <input type="hidden" name="inpadImageId" id="AD_Image_ID" value="" onchange="logChanges(this);return true;"></input>
-
-  <table id="buttonAD_Image_ID" onclick="openSearch(null, null, '../../../info/ImageInfo.html', null, false, 'frmMain', 'inpadImageId', 'inpadImageId_R', document.frmMain.inpadImageId.value);return false;" onmouseout="window.status='';return true;" onmouseover="window.status='Image';return true;" style="cursor: pointer;">
-    <tr>
-      <td><img src="../../../web/images/blank.gif" border="0" alt="Image" id="AD_Image_ID_R" title="Image" name="inpadImageId_R" class="Image_NotAvailable_medium"></img></td>
-    </tr>
-  </table>
-  
-</div>
-
-</div></td>
-</tr>
-<tr><td class="TitleCell" id="AD_Client_ID_lbl_td"><span class="LabelText" id="AD_Client_ID_lbl"><a class="LabelLink" href="#" onclick="sendDirectLink(document.frmMain, 'AD_Client_ID', document.frmMain.inpmProductId.value, '../../../utility/ReferencedLink.html', document.frmMain.inpadClientId.value, '112', '_self', true);return false;" onmouseover="return true;" onmouseout="return true;"><span id="lbl::1403">Client</span></a> </span></td>
-
-<td class="Combo_ContentCell" id="AD_Client_ID_inp_td"><div id="editDiscard">
-<div id="AD_Client_ID_inp">
-  <select name="inpadClientId" onkeypress="changeToEditingMode('onkeypress');" onchange="changeToEditingMode('onchange', this);logChanges(this);selectCombo(this, '1000000');return true;" class="ComboKeyNoUpdatable Combo_TwoCells_width" id="reportAD_Client_ID_S" readonly="true">
-    
-    <div id="reportAD_Client_ID"><div id="sectionDetail"><option value="1000000" selected><span>SmallBazaar</span></option></div></div>
-  </select>
-</div>
-
-</div></td>
-<td class="TitleCell" id="AD_Org_ID_lbl_td"><span class="LabelText" id="AD_Org_ID_lbl"><a class="LabelLink" href="#" onclick="sendDirectLink(document.frmMain, 'AD_Org_ID', document.frmMain.inpmProductId.value, '../../../utility/ReferencedLink.html', document.frmMain.inpadOrgId.value, '155', '_self', true);return false;" onmouseover="return true;" onmouseout="return true;"><span id="lbl::1404">Organization</span></a> </span></td>
-<td class="Combo_ContentCell" id="AD_Org_ID_inp_td"><div id="editDiscard">
-<div id="AD_Org_ID_inp">
-
-  <select name="inpadOrgId" onkeypress="changeToEditingMode('onkeypress');" onchange="changeToEditingMode('onchange', this);logChanges(this);reloadComboReloads180(this.name);return true;" class="ComboKey Combo_TwoCells_width" id="reportAD_Org_ID_S">
-    
-    <div id="reportAD_Org_ID"><div id="sectionDetail"><option value="0" selected><span>*</span></option>
-
-<option value="1000002"><span>A</span></option>
-
-<option value="1000003"><span>A1</span></option>
-
-<option value="1000004"><span>A2</span></option>
-
-<option value="1000005"><span>B</span></option>
-
-<option value="1000006"><span>B1</span></option>
-
-<option value="1000008"><span>B11</span></option>
-
-<option value="1000009"><span>B12</span></option>
-
-<option value="1000007"><span>B2</span></option>
-
-<option value="1000000"><span>Main</span></option></div></div>
-  </select>
-
-</div>
-
-</div></td>
-</tr>
-<tr><td class="TitleCell" id="Value_lbl_td"><span class="LabelText" id="Value_lbl"><span id="lbl::2011">Search Key</span> </span></td>
-<td colspan="3" class="TextBox_btn_ContentCell" id="Value_inp_td"><div id="editDiscard">
-<div id="Value_inp">
-  <table border="0" cellpadding="0" cellspacing="0">
-    <tr>
-      <td class="TextBox_ContentCell">
-      <table style="border:0px;border-collapse:collapse;">
-
-        <tr>
-          <td style="padding-top: 0px;">
-            <input type="text" id="Value" class="dojoValidateValid required TextBox_OneCell_width" required="true" value="beer" maxlength="40" name="inpvalue" onkeyup="" onkeydown="changeToEditingMode('onkeydown');" onkeypress="changeToEditingMode('onkeypress');" oncut="changeToEditingMode('oncut');" onpaste="changeToEditingMode('onpaste');" oncontextmenu="changeToEditingMode('oncontextmenu');" onchange="validateTextBox(this.id);logChanges(this);return true;"></input>
-          </td>
-        </tr>
-      </table>
-  <span class="TextBox_MsgContainer_span" style="display: none;" id="ValuemissingSpan">
-    <table class="TextBox_MsgContainer_table">
-      <tr class="TextBox_MsgContainer_tr">
-
-        <td class="TextBox_MsgContainer_td"><div class="TextBox_MsgContainer_div"></div></td><td></td>
-      </tr>
-      <tr>
-        <td colspan="2" class="missing"><div class="TextBox_MsgContainer_div2" id="ValuemissingSpanText">* This value is required.</div></td>
-      </tr>
-    </table>
-  </span>
-      </td>
-
-    </tr>
-  </table>
-</div>
-
-</div></td>
-</tr>
-<tr><td class="TitleCell" id="Name_lbl_td"><span class="LabelText" id="Name_lbl"><span id="lbl::1410">Name</span> </span></td>
-<td colspan="3" class="TextBox_btn_ContentCell" id="Name_inp_td"><div id="editDiscard">
-<div id="Name_inp">
-  <table border="0" cellpadding="0" cellspacing="0">
-    <tr>
-
-      <td class="TextBox_ContentCell">
-      <table style="border:0px;border-collapse:collapse;">
-        <tr>
-          <td style="padding-top: 0px;">
-            <input type="text" id="Name" class="dojoValidateValid required TextBox_FiveCells_width" required="true" value="Grand beer" maxlength="60" name="inpname" onkeyup="" onkeydown="changeToEditingMode('onkeydown');" onkeypress="changeToEditingMode('onkeypress');" oncut="changeToEditingMode('oncut');" onpaste="changeToEditingMode('onpaste');" oncontextmenu="changeToEditingMode('oncontextmenu');" onchange="validateTextBox(this.id);logChanges(this);return true;"></input>
-          </td>
-        </tr>
-      </table>
-  <span class="TextBox_MsgContainer_span" style="display: none;" id="NamemissingSpan">
-
-    <table class="TextBox_MsgContainer_table">
-      <tr class="TextBox_MsgContainer_tr">
-        <td class="TextBox_MsgContainer_td"><div class="TextBox_MsgContainer_div"></div></td><td></td>
-      </tr>
-      <tr>
-        <td colspan="2" class="missing"><div class="TextBox_MsgContainer_div2" id="NamemissingSpanText">* This value is required.</div></td>
-      </tr>
-    </table>
-
-  </span>
-      </td>
-    </tr>
-  </table>
-</div>
-
-</div></td>
-</tr>
-<tr><td class="TitleCell" id="Description_lbl_td"><span class="LabelText" id="Description_lbl"><span id="lbl::1411">Description</span> </span></td>
-<td colspan="3" class="TextBox_btn_ContentCell" id="Description_inp_td"><div id="editDiscard">
-<div id="Description_inp">
-
-  <table border="0" cellpadding="0" cellspacing="0">
-    <tr>
-      <td class="TextBox_ContentCell">
-      <table style="border:0px;border-collapse:collapse;">
-        <tr>
-          <td style="padding-top: 0px;">
-            <input type="text" id="Description" class="dojoValidateValid TextBox_FiveCells_width" required="false" value="Grand beer" maxlength="255" name="inpdescription" onkeyup="" onkeydown="changeToEditingMode('onkeydown');" onkeypress="changeToEditingMode('onkeypress');" oncut="changeToEditingMode('oncut');" onpaste="changeToEditingMode('onpaste');" oncontextmenu="changeToEditingMode('oncontextmenu');" onchange="validateTextBox(this.id);logChanges(this);return true;"></input>
-          </td>
-        </tr>
-
-      </table>
-  
-      </td>
-    </tr>
-  </table>
-</div>
-
-</div></td>
-</tr>
-<tr><td class="TitleCell" id="UPC_lbl_td"><span class="LabelText" id="UPC_lbl"><span id="lbl::2304">UPC/EAN</span> </span></td>
-<td class="TextBox_btn_ContentCell" id="UPC_inp_td"><div id="editDiscard">
-<div id="UPC_inp">
-
-  <table border="0" cellpadding="0" cellspacing="0">
-    <tr>
-      <td class="TextBox_ContentCell">
-      <table style="border:0px;border-collapse:collapse;">
-        <tr>
-          <td style="padding-top: 0px;">
-            <input type="text" id="UPC" class="dojoValidateValid TextBox_OneCell_width" required="false" value="" maxlength="30" name="inpupc" onkeyup="" onkeydown="changeToEditingMode('onkeydown');" onkeypress="changeToEditingMode('onkeypress');" oncut="changeToEditingMode('oncut');" onpaste="changeToEditingMode('onpaste');" oncontextmenu="changeToEditingMode('oncontextmenu');" onchange="validateTextBox(this.id);logChanges(this);return true;"></input>
-          </td>
-        </tr>
-
-      </table>
-  
-      </td>
-    </tr>
-  </table>
-</div>
-
-</div></td>
-<td class="TitleCell" id="C_BPartner_ID_lbl_td"><span class="LabelText" id="C_BPartner_ID_lbl"><a class="LabelLink" href="#" onclick="sendDirectLink(document.frmMain, 'C_BPartner_ID', document.frmMain.inpmProductId.value, '../../../utility/ReferencedLink.html', document.frmMain.inpcBpartnerId.value, '291', '_self', true);return false;" onmouseover="return true;" onmouseout="return true;"><span id="lbl::800519">Business Partner</span></a> </span></td>
-<td class="TextBox_btn_ContentCell" id="C_BPartner_ID_inp_td"><div id="editDiscard">
-<div id="C_BPartner_ID_inp"> 
-
-  <table border="0" cellspacing="0" cellpadding="0" summary="" class="">
-    <tr>
-      <td class="TextBox_ContentCell">
-      <table style="border:0px;border-collapse:collapse;">
-        <tr>
-          <td style="padding-top: 0px;">
-            <input type="hidden" name="inpcBpartnerId_LOC" value="" id="C_BPartner_Location_ID_LOC"></input>
-            <input type="hidden" name="inpcBpartnerId_CON" value="" id="AD_User_ID_CON"></input>
-
-<!-- Start of widget -->
-<input type="hidden" name="inpcBpartnerId" id="C_BPartner_ID" value="1000012" onchange="logChanges(this);return true;"></input>
-<script>
-isc.OBSelectorWidget.create({
-    openbravoField : document.getElementById("C_BPartner_ID"),
-    selectorGridFields : [{title: 'Bank', name: 'bankAccount.bank.name'}, {title: 'searchKey', name: 'searchKey'},{title: 'name', name: 'name'},{title: 'taxID', name: 'taxID'},{title: 'businessPartnerCategory', name: 'businessPartnerCategory._identifier'},{title: 'oneTimeTransaction', name: 'oneTimeTransaction'},{title: 'creditUsed', name: 'creditUsed'}],
-    dataSource: isc.RestDataSource.create({dataURL:'../../../org.openbravo.service.datasource/BusinessPartner' , recordXPath: '/response/data', dataFormat: 'json' , operationBindings: [{operationType: 'fetch', dataProtocol: 'getParams'} , {operationType: 'add', dataProtocol: 'postMessage'} , {operationType: 'remove', dataProtocol: 'getParams', requestProperties:{httpMethod: 'DELETE'}} , {operationType: 'update', dataProtocol: 'postMessage', requestProperties:{httpMethod: 'PUT'}} ], requestProperties : { params : { _dataSourceId : 'bpSelectorDS', _extraProperties : 'bankAccount.bank.name' } }, fields:[ {name: 'id' , type: 'text' , hidden: true, primaryKey: true , canSave: false , title: 'id' } , {name: 'client' , type: 'text' , canSave: false , title: 'client' , hidden: true , foreignKey: 'ADClient.id' } , {name: 'client.id' , type: 'text', hidden: true , required: true , canSave: false , valueXPath: 'client/id' , title: 'client' } , {name: 'client._identifier' , type: 'text', hidden: true , required: true , canSave: false , valueXPath: 'client/_identifier' , title: 'client' } , {name: 'organization' , type: 'text' , required: true , title: 'organization' , hidden: true , foreignKey: 'Organization.id' } , {name: 'organization.id' , type: 'text', hidden: true , required: true , valueXPath: 'organization/id' , title: 'organization' } , {name: 'organization._identifier' , type: 'text', hidden: true , required: true , valueXPath: 'organization/_identifier' , title: 'organization' } , {name: 'active' , type: 'boolean' , title: 'active' } , {name: 'creationDate' , type: 'date' , canSave: false , title: 'creationDate' } , {name: 'createdBy' , type: 'text' , canSave: false , title: 'createdBy' , hidden: true , foreignKey: 'ADUser.id' } , {name: 'createdBy.id' , type: 'text', hidden: true , required: true , canSave: false , valueXPath: 'createdBy/id' , title: 'createdBy' } , {name: 'createdBy._identifier' , type: 'text', hidden: true , required: true , canSave: false , valueXPath: 'createdBy/_identifier' , title: 'createdBy' } , {name: 'updated' , type: 'date' , canSave: false , title: 'updated' } , {name: 'updatedBy' , type: 'text' , canSave: false , title: 'updatedBy' , hidden: true , foreignKey: 'ADUser.id' } , {name: 'updatedBy.id' , type: 'text', hidden: true , required: true , canSave: false , valueXPath: 'updatedBy/id' , title: 'updatedBy' } , {name: 'updatedBy._identifier' , type: 'text', hidden: true , required: true , canSave: false , valueXPath: 'updatedBy/_identifier' , title: 'updatedBy' } , {name: 'searchKey' , type: 'text' , required: true , length: 40 , title: 'searchKey' } , {name: 'name' , type: 'text' , required: true , length: 60 , title: 'name' } , {name: 'name2' , type: 'text' , length: 60 , title: 'name2' } , {name: 'description' , type: 'text' , length: 255 , title: 'description' } , {name: 'summaryLevel' , type: 'boolean' , title: 'summaryLevel' } , {name: 'businessPartnerCategory' , type: 'text' , required: true , title: 'businessPartnerCategory' , hidden: true , foreignKey: 'BusinessPartnerCategory.id' } , {name: 'businessPartnerCategory.id' , type: 'text', hidden: true , required: true , valueXPath: 'businessPartnerCategory/id' , title: 'businessPartnerCategory' } , {name: 'businessPartnerCategory._identifier' , type: 'text', hidden: true , required: true , valueXPath: 'businessPartnerCategory/_identifier' , title: 'businessPartnerCategory' } , {name: 'oneTimeTransaction' , type: 'boolean' , title: 'oneTimeTransaction' } , {name: 'potentialCustomer' , type: 'boolean' , title: 'potentialCustomer' } , {name: 'vendor' , type: 'boolean' , title: 'vendor' } , {name: 'customer' , type: 'boolean' , title: 'customer' } , {name: 'employee' , type: 'boolean' , title: 'employee' } , {name: 'isSalesRepresentative' , type: 'boolean' , title: 'isSalesRepresentative' } , {name: 'referenceNo' , type: 'text' , length: 40 , title: 'referenceNo' } , {name: 'dUNS' , type: 'text' , length: 11 , title: 'dUNS' } , {name: 'uRL' , type: 'text' , length: 120 , title: 'uRL' } , {name: 'language' , type: 'text' , title: 'language' , hidden: true , foreignKey: 'ADLanguage.id' } , {name: 'language.id' , type: 'text', hidden: true , valueXPath: 'language/id' , title: 'language' } , {name: 'language._identifier' , type: 'text', hidden: true , valueXPath: 'language/_identifier' , title: 'language' } , {name: 'taxID' , type: 'text' , length: 20 , title: 'taxID' } , {name: 'taxExempt' , type: 'boolean' , title: 'taxExempt' } , {name: 'invoiceSchedule' , type: 'text' , title: 'invoiceSchedule' , hidden: true , foreignKey: 'InvoiceSchedule.id' } , {name: 'invoiceSchedule.id' , type: 'text', hidden: true , valueXPath: 'invoiceSchedule/id' , title: 'invoiceSchedule' } , {name: 'invoiceSchedule._identifier' , type: 'text', hidden: true , valueXPath: 'invoiceSchedule/_identifier' , title: 'invoiceSchedule' } , {name: 'valuation' , type: 'text' , length: 1 , title: 'valuation' } , {name: 'volumeOfSales' , type: 'float' , title: 'volumeOfSales' } , {name: 'noOfEmployees' , type: 'integer' , title: 'noOfEmployees' } , {name: 'nAICSSIC' , type: 'text' , length: 6 , title: 'nAICSSIC' } , {name: 'dateOfFirstSale' , type: 'date' , title: 'dateOfFirstSale' } , {name: 'acquisitionCost' , type: 'float' , title: 'acquisitionCost' } , {name: 'expectedLifetimeRevenue' , type: 'float' , title: 'expectedLifetimeRevenue' } , {name: 'lifetimeRevenueToDate' , type: 'float' , title: 'lifetimeRevenueToDate' } , {name: 'share' , type: 'integer' , title: 'share' } , {name: 'formOfPayment' , type: 'text' , length: 60 , title: 'formOfPayment' , valueMap: [ '3', '2', 'T', 'W', '1', 'P', '5', 'B', 'R', '4', 'C', 'K' ] } , {name: 'creditLimit' , type: 'float' , title: 'creditLimit' } , {name: 'creditUsed' , type: 'float' , canSave: false , title: 'creditUsed' } , {name: 'paymentTerms' , type: 'text' , title: 'paymentTerms' , hidden: true , foreignKey: 'FinancialMgmtPaymentTerm.id' } , {name: 'paymentTerms.id' , type: 'text', hidden: true , valueXPath: 'paymentTerms/id' , title: 'paymentTerms' } , {name: 'paymentTerms._identifier' , type: 'text', hidden: true , valueXPath: 'paymentTerms/_identifier' , title: 'paymentTerms' } , {name: 'priceList' , type: 'text' , title: 'priceList' , hidden: true , foreignKey: 'PricingPriceList.id' } , {name: 'priceList.id' , type: 'text', hidden: true , valueXPath: 'priceList/id' , title: 'priceList' } , {name: 'priceList._identifier' , type: 'text', hidden: true , valueXPath: 'priceList/_identifier' , title: 'priceList' } , {name: 'printDiscount' , type: 'boolean' , title: 'printDiscount' } , {name: 'orderDescription' , type: 'text' , length: 255 , title: 'orderDescription' } , {name: 'orderReference' , type: 'text' , length: 20 , title: 'orderReference' } , {name: 'pOFormOfPayment' , type: 'text' , length: 60 , title: 'pOFormOfPayment' , valueMap: [ '3', '2', 'T', 'W', '1', 'P', '5', 'B', 'R', '4', 'C', 'K' ] } , {name: 'purchasePricelist' , type: 'text' , title: 'purchasePricelist' , hidden: true , foreignKey: 'PricingPriceList.id' } , {name: 'purchasePricelist.id' , type: 'text', hidden: true , valueXPath: 'purchasePricelist/id' , title: 'purchasePricelist' } , {name: 'purchasePricelist._identifier' , type: 'text', hidden: true , valueXPath: 'purchasePricelist/_identifier' , title: 'purchasePricelist' } , {name: 'pOPaymentTerms' , type: 'text' , title: 'pOPaymentTerms' , hidden: true , foreignKey: 'FinancialMgmtPaymentTerm.id' } , {name: 'pOPaymentTerms.id' , type: 'text', hidden: true , valueXPath: 'pOPaymentTerms/id' , title: 'pOPaymentTerms' } , {name: 'pOPaymentTerms._identifier' , type: 'text', hidden: true , valueXPath: 'pOPaymentTerms/_identifier' , title: 'pOPaymentTerms' } , {name: 'numberOfCopies' , type: 'integer' , title: 'numberOfCopies' } , {name: 'greeting' , type: 'text' , title: 'greeting' , hidden: true , foreignKey: 'Greeting.id' } , {name: 'greeting.id' , type: 'text', hidden: true , valueXPath: 'greeting/id' , title: 'greeting' } , {name: 'greeting._identifier' , type: 'text', hidden: true , valueXPath: 'greeting/_identifier' , title: 'greeting' } , {name: 'invoiceTerms' , type: 'text' , length: 60 , title: 'invoiceTerms' , valueMap: [ 'D', 'S', 'N', 'O', 'I' ] } , {name: 'deliveryTerms' , type: 'text' , length: 60 , title: 'deliveryTerms' , valueMap: [ 'A', 'R', 'L', 'O' ] } , {name: 'deliveryMethod' , type: 'text' , length: 60 , title: 'deliveryMethod' , valueMap: [ 'D', 'P', 'S' ] } , {name: 'salesRepresentative' , type: 'text' , title: 'salesRepresentative' , hidden: true , foreignKey: 'BusinessPartner.id' } , {name: 'salesRepresentative.id' , type: 'text', hidden: true , valueXPath: 'salesRepresentative/id' , title: 'salesRepresentative' } , {name: 'salesRepresentative._identifier' , type: 'text', hidden: true , valueXPath: 'salesRepresentative/_identifier' , title: 'salesRepresentative' } , {name: 'partnerParent' , type: 'text' , length: 32 , title: 'partnerParent' } , {name: 'creditStatus' , type: 'text' , length: 60 , title: 'creditStatus' , valueMap: [ 'W', 'S', 'O', 'H', 'X' ] } , {name: 'forcedOrg' , type: 'text' , title: 'forcedOrg' , hidden: true , foreignKey: 'Organization.id' } , {name: 'forcedOrg.id' , type: 'text', hidden: true , valueXPath: 'forcedOrg/id' , title: 'forcedOrg' } , {name: 'forcedOrg._identifier' , type: 'text', hidden: true , valueXPath: 'forcedOrg/_identifier' , title: 'forcedOrg' } , {name: 'pricesShownInOrder' , type: 'boolean' , title: 'pricesShownInOrder' } , {name: 'invoiceGrouping' , type: 'text' , length: 60 , title: 'invoiceGrouping' , valueMap: [ '000000000000000', '000000000010000', '000010000000000' ] } , {name: 'maturityDate1' , type: 'integer' , title: 'maturityDate1' } , {name: 'maturityDate2' , type: 'integer' , title: 'maturityDate2' } , {name: 'maturityDate3' , type: 'integer' , title: 'maturityDate3' } , {name: 'operator' , type: 'boolean' , title: 'operator' } , {name: 'uPCEAN' , type: 'text' , length: 30 , title: 'uPCEAN' } , {name: 'salaryCategory' , type: 'text' , canSave: false , title: 'salaryCategory' , hidden: true , foreignKey: 'SalaryCategory.id' } , {name: 'salaryCategory.id' , type: 'text', hidden: true , canSave: false , valueXPath: 'salaryCategory/id' , title: 'salaryCategory' } , {name: 'salaryCategory._identifier' , type: 'text', hidden: true , canSave: false , valueXPath: 'salaryCategory/_identifier' , title: 'salaryCategory' } , {name: 'invoicePrintformat' , type: 'text' , length: 60 , title: 'invoicePrintformat' , valueMap: [ '3', '2', '1' ] } , {name: 'consumptionDays' , type: 'integer' , title: 'consumptionDays' } , {name: 'bankAccount' , type: 'text' , title: 'bankAccount' , hidden: true , foreignKey: 'BankAccount.id' } , {name: 'bankAccount.id' , type: 'text', hidden: true , valueXPath: 'bankAccount/id' , title: 'bankAccount' } , {name: 'bankAccount._identifier' , type: 'text', hidden: true , valueXPath: 'bankAccount/_identifier' , title: 'bankAccount' } , {name: 'taxCategory' , type: 'text' , title: 'taxCategory' , hidden: true , foreignKey: 'BusinessPartnerTaxCategory.id' } , {name: 'taxCategory.id' , type: 'text', hidden: true , valueXPath: 'taxCategory/id' , title: 'taxCategory' } , {name: 'taxCategory._identifier' , type: 'text', hidden: true , valueXPath: 'taxCategory/_identifier' , title: 'taxCategory' } , {name: 'pOMaturityDate1' , type: 'integer' , title: 'pOMaturityDate1' } , {name: 'pOMaturityDate2' , type: 'integer' , title: 'pOMaturityDate2' } , {name: 'pOMaturityDate3' , type: 'integer' , title: 'pOMaturityDate3' } , {name: 'transactionalBankAccount' , type: 'text' , title: 'transactionalBankAccount' , hidden: true , foreignKey: 'BankAccount.id' } , {name: 'transactionalBankAccount.id' , type: 'text', hidden: true , valueXPath: 'transactionalBankAccount/id' , title: 'transactionalBankAccount' } , {name: 'transactionalBankAccount._identifier' , type: 'text', hidden: true , valueXPath: 'transactionalBankAccount/_identifier' , title: 'transactionalBankAccount' } , {name: 'sOBPTaxCategory' , type: 'text' , title: 'sOBPTaxCategory' , hidden: true , foreignKey: 'BusinessPartnerTaxCategory.id' } , {name: 'sOBPTaxCategory.id' , type: 'text', hidden: true , valueXPath: 'sOBPTaxCategory/id' , title: 'sOBPTaxCategory' } , {name: 'sOBPTaxCategory._identifier' , type: 'text', hidden: true , valueXPath: 'sOBPTaxCategory/_identifier' , title: 'sOBPTaxCategory' } , {name: 'fiscalcode' , type: 'text' , length: 16 , title: 'fiscalcode' } , {name: 'isofiscalcode' , type: 'text' , length: 2 , title: 'isofiscalcode' } , {name: 'bankAccount.bank.name' , type: 'text' , required: true , length: 60 , title: 'bankAccount.bank.name' }]}),
-    whereClause : "",
-    title : "Business Partner Selector"
-});
-</script>
-<!-- End of widget -->
-          </td>
-        </tr>
-      </table>
-
-      </td>
-    </tr>
-  </table>
-</div>
-
-</div></td>
-</tr>
-<tr><td class="TitleCell" id="IsActive_lbl_td"><span class="LabelText" id="IsActive_lbl"><span id="lbl::1405">Active</span> </span></td>
-<td class="Radio_Check_ContentCell" id="IsActive_inp_td"><div id="editDiscard">
-  <div id="IsActive_inp">
-    <span class="Checkbox_container_NOT_Focused"><input type="checkbox" name="inpisactive" id="IsActive" value="Y" onchange="return true;" onclick="changeToEditingMode('force');logChanges(this);return true;" required="true" checked></input></span>
-  </div>
-
-</div></td>
-<td class="TitleCell" id="IsSummary_lbl_td"><span class="LabelText" id="IsSummary_lbl"><span id="lbl::1413">Summary Level</span> </span></td>
-
-<td class="Radio_Check_ContentCell" id="IsSummary_inp_td"><div id="editDiscard">
-  <div id="IsSummary_inp">
-    <span class="Checkbox_container_NOT_Focused"><input type="checkbox" name="inpissummary" id="IsSummary" value="Y" onchange="return true;" onclick="changeToEditingMode('force');logChanges(this);displayLogic();return true;" required="true"></input></span>
-  </div>
-
-</div></td>
-</tr>
-<tr><td class="TitleCell" id="M_Product_Category_ID_lbl_td"><span class="LabelText" id="M_Product_Category_ID_lbl"><a class="LabelLink" href="#" onclick="sendDirectLink(document.frmMain, 'M_Product_Category_ID', document.frmMain.inpmProductId.value, '../../../utility/ReferencedLink.html', document.frmMain.inpmProductCategoryId.value, '209', '_self', true);return false;" onmouseover="return true;" onmouseout="return true;"><span id="lbl::2012">Product Category</span></a> </span></td>
-<td colspan="3" class="Combo_ContentCell" id="M_Product_Category_ID_inp_td"><div id="editDiscard">
-<div id="M_Product_Category_ID_inp">
-  <select name="inpmProductCategoryId" onkeypress="changeToEditingMode('onkeypress');" onchange="changeToEditingMode('onchange', this);logChanges(this);return true;" class="ComboKey Combo_TwoCells_width" id="reportM_Product_Category_ID_S">
-
-    
-    <div id="reportM_Product_Category_ID"><div id="sectionDetail"><option value="1000000"><span>Ceramics</span></option>
-
-<option value="1000002"><span>Clothes</span></option>
-
-<option value="1000005"><span>Discounts</span></option>
-
-<option value="1000003" selected><span>Food</span></option>
-
-<option value="1000006"><span>Heraldry</span></option>
-
-<option value="1000008"><span>Semi-finished products</span></option>
-
-<option value="1000007"><span>Services</span></option>
-
-<option value="1000004"><span>Supplies</span></option>
-
-<option value="1000001"><span>Tools</span></option></div></div>
-  </select>
-</div>
-
-</div></td>
-</tr>
-<tr><td class="TitleCell" id="C_UOM_ID_lbl_td"><span class="LabelText" id="C_UOM_ID_lbl"><a class="LabelLink" href="#" onclick="sendDirectLink(document.frmMain, 'C_UOM_ID', document.frmMain.inpmProductId.value, '../../../utility/ReferencedLink.html', document.frmMain.inpcUomId.value, '146', '_self', true);return false;" onmouseover="return true;" onmouseout="return true;"><span id="lbl::1760">UOM</span></a> </span></td>
-
-<td class="Combo_ContentCell" id="C_UOM_ID_inp_td"><div id="editDiscard">
-<div id="C_UOM_ID_inp">
-  <select name="inpcUomId" onkeypress="changeToEditingMode('onkeypress');" onchange="changeToEditingMode('onchange', this);logChanges(this);return true;" class="ComboKey Combo_TwoCells_width" id="reportC_UOM_ID_S">
-    
-    <div id="reportC_UOM_ID"><div id="sectionDetail"><option value="1000002"><span>Bag</span></option>
-
-<option value="102"><span>Day</span></option>
-
-<option value="101"><span>Hour</span></option>
-
-<option value="1000004"><span>KWh</span></option>
-
-<option value="1000000"><span>Kg</span></option>
-
-<option value="104"><span>Labour day</span></option>
-
-<option value="107"><span>Labour month</span></option>
-
-<option value="1000003"><span>Litre</span></option>
-
-<option value="103"><span>Minutes</span></option>
-
-<option value="106"><span>Month</span></option>
-
-<option value="1000001"><span>Tin</span></option>
-
-<option value="100" selected><span>Unit</span></option>
-
-<option value="105"><span>Week</span></option>
-
-<option value="108"><span>Year</span></option></div></div>
-  </select>
-</div>
-
-</div></td>
-
-<td class="TitleCell" id="SalesRep_ID_lbl_td"><span class="LabelText" id="SalesRep_ID_lbl"><a class="LabelLink" href="#" onclick="sendDirectLink(document.frmMain, 'AD_User_ID', document.frmMain.inpmProductId.value, '../../../utility/ReferencedLink.html', document.frmMain.inpsalesrepId.value, '114', '_self', true);return false;" onmouseover="return true;" onmouseout="return true;"><span id="lbl::3391">Company Agent</span></a> </span></td>
-<td class="Combo_ContentCell" id="SalesRep_ID_inp_td"><div id="editDiscard">
-<div id="SalesRep_ID_inp">
-  <select name="inpsalesrepId" onkeypress="changeToEditingMode('onkeypress');" onchange="changeToEditingMode('onchange', this);logChanges(this);return true;" class="Combo Combo_TwoCells_width" id="reportSalesRep_ID_S">
-    <option value=""></option>
-    <div id="reportSalesRep_ID"><div id="sectionDetail"><option value="1000000"><span>BBAdmin</span></option>
-
-<option value="1000001"><span>BBSalesUser</span></option>
-
-<option value="1000013"><span>Our Sales Agent</span></option></div></div>
-
-  </select>
-</div>
-
-</div></td>
-</tr>
-<tr><td class="TitleCell" id="ProductType_lbl_td"><span class="LabelText" id="ProductType_lbl"><span id="lbl::7795">Product Type</span> </span></td>
-<td colspan="3" class="Combo_ContentCell" id="ProductType_inp_td"><div id="editDiscard">
-<div id="ProductType_inp">
-  <select name="inpproducttype" onkeypress="changeToEditingMode('onkeypress');" onchange="changeToEditingMode('onchange', this);logChanges(this);displayLogic();readOnlyLogic();return true;" class="ComboKey Combo_OneCell_width" id="reportProductType_S">
-    
-    <div id="reportProductType"><div id="sectionDetail"><option value="E"><span>Expense type</span></option>
-
-<option value="I" selected><span>Item</span></option>
-
-<option value="R"><span>Resource</span></option>
-
-<option value="S"><span>Service</span></option></div></div>
-  </select>
-</div>
-
-</div></td>
-</tr>
-<tr><td class="TitleCell" id="Weight_lbl_td"><span class="LabelText" id="Weight_lbl"><span id="lbl::1767">Weight</span> </span></td>
-
-<td class="TextBox_btn_ContentCell" id="Weight_inp_td"><div id="editDiscard">
-<div id="Weight_inp">
-  <table border="0" cellspacing="0" cellpadding="0" summary="" class="">
-    <tr>
-      <td class="TextBox_ContentCell">
-      <table style="border:0px;border-collapse:collapse;">
-        <tr>
-          <td style="padding-top: 0px;">
-            <input type="text" id="Weight" class="dojoValidateValid TextBox_btn_OneCell_width number" required="false" value="0.00" maxlength="22" name="inpweight" onkeyup="" onkeydown="changeToEditingMode('onkeydown'); numberInputEvent('onkeydown', this, event);" onkeypress="changeToEditingMode('onkeypress');" oncut="changeToEditingMode('oncut');" onpaste="changeToEditingMode('onpaste');" oncontextmenu="changeToEditingMode('oncontextmenu');" onchange="logChanges(this); numberInputEvent('onchange', this);  return true;" outputformat="euroEdition" onfocus="numberInputEvent('onfocus', this);" onblur="numberInputEvent('onblur', this);"></input>
-          </td>
-
-        </tr>
-      </table>
-  <span class="TextBox_MsgContainer_span" style="display: none;" id="WeightinvalidSpan">
-    <table class="TextBox_MsgContainer_table">
-      <tr class="TextBox_MsgContainer_tr">
-        <td class="TextBox_MsgContainer_td"><div class="TextBox_MsgContainer_div"></div></td><td></td>
-      </tr>
-      <tr>
-        <td colspan="2" class="invalid"><div class="TextBox_MsgContainer_div2" id="WeightinvalidSpanText">* The value entered is not valid.</div></td>
-
-      </tr>
-    </table>
-  </span>
-  
-      </td>
-      <td class="FieldButton_ContentCell"><a class="FieldButtonLink" href="#" onfocus="setWindowElementFocus(this); window.status='Weight'; return true;" onblur="window.status=''; return true;" onkeypress="this.className='FieldButtonLink_active'; return true;" onkeyup="this.className='FieldButtonLink_focus'; return true;" onclick="calculator('frmMain.inpweight', document.frmMain.inpweight.value, false);return false;">
-  <table class="FieldButton" onmousedown="this.className='FieldButton_active'; return true;" onmouseup="this.className='FieldButton'; return true;" onmouseover="this.className='FieldButton_hover'; window.status='Weight'; return true;" onmouseout="this.className='FieldButton'; window.status=''; return true;" id="WeightlinkCalc">
-    <tr>
-      <td class="FieldButton_bg">
-        <img alt="Weight" class="FieldButton_Icon FieldButton_Icon_Calc" title="Weight" src="../../../web/images/blank.gif" border="0" id="buttonCalc"></img>
-
-      </td>
-    </tr>
-  </table>
-</a>
-</td>
-    </tr>
-  </table>
-</div>
-
-</div></td>
-<td class="TitleCell" id="Volume_lbl_td"><span class="LabelText" id="Volume_lbl"><span id="lbl::1766">Volume</span> </span></td>
-
-<td class="TextBox_btn_ContentCell" id="Volume_inp_td"><div id="editDiscard">
-<div id="Volume_inp">
-  <table border="0" cellspacing="0" cellpadding="0" summary="" class="">
-    <tr>
-      <td class="TextBox_ContentCell">
-      <table style="border:0px;border-collapse:collapse;">
-        <tr>
-          <td style="padding-top: 0px;">
-            <input type="text" id="Volume" class="dojoValidateValid TextBox_btn_OneCell_width number" required="false" value="0.00" maxlength="22" name="inpvolume" onkeyup="" onkeydown="changeToEditingMode('onkeydown'); numberInputEvent('onkeydown', this, event);" onkeypress="changeToEditingMode('onkeypress');" oncut="changeToEditingMode('oncut');" onpaste="changeToEditingMode('onpaste');" oncontextmenu="changeToEditingMode('oncontextmenu');" onchange="logChanges(this); numberInputEvent('onchange', this);  return true;" outputformat="euroEdition" onfocus="numberInputEvent('onfocus', this);" onblur="numberInputEvent('onblur', this);"></input>
-          </td>
-
-        </tr>
-      </table>
-  <span class="TextBox_MsgContainer_span" style="display: none;" id="VolumeinvalidSpan">
-    <table class="TextBox_MsgContainer_table">
-      <tr class="TextBox_MsgContainer_tr">
-        <td class="TextBox_MsgContainer_td"><div class="TextBox_MsgContainer_div"></div></td><td></td>
-      </tr>
-      <tr>
-        <td colspan="2" class="invalid"><div class="TextBox_MsgContainer_div2" id="VolumeinvalidSpanText">* The value entered is not valid.</div></td>
-
-      </tr>
-    </table>
-  </span>
-  
-      </td>
-      <td class="FieldButton_ContentCell"><a class="FieldButtonLink" href="#" onfocus="setWindowElementFocus(this); window.status='Volume'; return true;" onblur="window.status=''; return true;" onkeypress="this.className='FieldButtonLink_active'; return true;" onkeyup="this.className='FieldButtonLink_focus'; return true;" onclick="calculator('frmMain.inpvolume', document.frmMain.inpvolume.value, false);return false;">
-  <table class="FieldButton" onmousedown="this.className='FieldButton_active'; return true;" onmouseup="this.className='FieldButton'; return true;" onmouseover="this.className='FieldButton_hover'; window.status='Volume'; return true;" onmouseout="this.className='FieldButton'; window.status=''; return true;" id="VolumelinkCalc">
-    <tr>
-      <td class="FieldButton_bg">
-        <img alt="Volume" class="FieldButton_Icon FieldButton_Icon_Calc" title="Volume" src="../../../web/images/blank.gif" border="0" id="buttonCalc"></img>
-
-      </td>
-    </tr>
-  </table>
-</a>
-</td>
-    </tr>
-  </table>
-</div>
-
-</div></td>
-</tr>
-<tr><td class="TitleCell" id="ShelfWidth_lbl_td"><span class="LabelText" id="ShelfWidth_lbl"><span id="lbl::2307">Shelf Width</span> </span></td>
-
-<td class="TextBox_btn_ContentCell" id="ShelfWidth_inp_td"><div id="editDiscard">
-<div id="ShelfWidth_inp">
-  <table border="0" cellspacing="0" cellpadding="0" summary="" class="">
-    <tr>
-      <td class="TextBox_ContentCell">
-      <table style="border:0px;border-collapse:collapse;">
-        <tr>
-          <td style="padding-top: 0px;">
-            <input type="text" id="ShelfWidth" class="dojoValidateValid TextBox_btn_OneCell_width number" required="false" value="" maxlength="10" name="inpshelfwidth" onkeyup="" onkeydown="changeToEditingMode('onkeydown'); numberInputEvent('onkeydown', this, event);" onkeypress="changeToEditingMode('onkeypress');" oncut="changeToEditingMode('oncut');" onpaste="changeToEditingMode('onpaste');" oncontextmenu="changeToEditingMode('oncontextmenu');" onchange="logChanges(this); numberInputEvent('onchange', this);  return true;" outputformat="euroEdition" onfocus="numberInputEvent('onfocus', this);" onblur="numberInputEvent('onblur', this);"></input>
-          </td>
-
-        </tr>
-      </table>
-  <span class="TextBox_MsgContainer_span" style="display: none;" id="ShelfWidthinvalidSpan">
-    <table class="TextBox_MsgContainer_table">
-      <tr class="TextBox_MsgContainer_tr">
-        <td class="TextBox_MsgContainer_td"><div class="TextBox_MsgContainer_div"></div></td><td></td>
-      </tr>
-      <tr>
-        <td colspan="2" class="invalid"><div class="TextBox_MsgContainer_div2" id="ShelfWidthinvalidSpanText">* The value entered is not valid.</div></td>
-
-      </tr>
-    </table>
-  </span>
-  
-      </td>
-      <td class="FieldButton_ContentCell"><a class="FieldButtonLink" href="#" onfocus="setWindowElementFocus(this); window.status='Shelf Width'; return true;" onblur="window.status=''; return true;" onkeypress="this.className='FieldButtonLink_active'; return true;" onkeyup="this.className='FieldButtonLink_focus'; return true;" onclick="calculator('frmMain.inpshelfwidth', document.frmMain.inpshelfwidth.value, false);return false;">
-  <table class="FieldButton" onmousedown="this.className='FieldButton_active'; return true;" onmouseup="this.className='FieldButton'; return true;" onmouseover="this.className='FieldButton_hover'; window.status='Shelf Width'; return true;" onmouseout="this.className='FieldButton'; window.status=''; return true;" id="ShelfWidthlinkCalc">
-    <tr>
-      <td class="FieldButton_bg">
-        <img alt="Shelf Width" class="FieldButton_Icon FieldButton_Icon_Calc" title="Shelf Width" src="../../../web/images/blank.gif" border="0" id="buttonCalc"></img>
-
-      </td>
-    </tr>
-  </table>
-</a>
-</td>
-    </tr>
-  </table>
-</div>
-
-</div></td>
-<td class="TitleCell" id="ShelfHeight_lbl_td"><span class="LabelText" id="ShelfHeight_lbl"><span id="lbl::2308">Shelf Height</span> </span></td>
-
-<td class="TextBox_btn_ContentCell" id="ShelfHeight_inp_td"><div id="editDiscard">
-<div id="ShelfHeight_inp">
-  <table border="0" cellspacing="0" cellpadding="0" summary="" class="">
-    <tr>
-      <td class="TextBox_ContentCell">
-      <table style="border:0px;border-collapse:collapse;">
-        <tr>
-          <td style="padding-top: 0px;">
-            <input type="text" id="ShelfHeight" class="dojoValidateValid TextBox_btn_OneCell_width number" required="false" value="" maxlength="10" name="inpshelfheight" onkeyup="" onkeydown="changeToEditingMode('onkeydown'); numberInputEvent('onkeydown', this, event);" onkeypress="changeToEditingMode('onkeypress');" oncut="changeToEditingMode('oncut');" onpaste="changeToEditingMode('onpaste');" oncontextmenu="changeToEditingMode('oncontextmenu');" onchange="logChanges(this); numberInputEvent('onchange', this);  return true;" outputformat="euroEdition" onfocus="numberInputEvent('onfocus', this);" onblur="numberInputEvent('onblur', this);"></input>
-          </td>
-
-        </tr>
-      </table>
-  <span class="TextBox_MsgContainer_span" style="display: none;" id="ShelfHeightinvalidSpan">
-    <table class="TextBox_MsgContainer_table">
-      <tr class="TextBox_MsgContainer_tr">
-        <td class="TextBox_MsgContainer_td"><div class="TextBox_MsgContainer_div"></div></td><td></td>
-      </tr>
-      <tr>
-        <td colspan="2" class="invalid"><div class="TextBox_MsgContainer_div2" id="ShelfHeightinvalidSpanText">* The value entered is not valid.</div></td>
-
-      </tr>
-    </table>
-  </span>
-  
-      </td>
-      <td class="FieldButton_ContentCell"><a class="FieldButtonLink" href="#" onfocus="setWindowElementFocus(this); window.status='Shelf Height'; return true;" onblur="window.status=''; return true;" onkeypress="this.className='FieldButtonLink_active'; return true;" onkeyup="this.className='FieldButtonLink_focus'; return true;" onclick="calculator('frmMain.inpshelfheight', document.frmMain.inpshelfheight.value, false);return false;">
-  <table class="FieldButton" onmousedown="this.className='FieldButton_active'; return true;" onmouseup="this.className='FieldButton'; return true;" onmouseover="this.className='FieldButton_hover'; window.status='Shelf Height'; return true;" onmouseout="this.className='FieldButton'; window.status=''; return true;" id="ShelfHeightlinkCalc">
-    <tr>
-      <td class="FieldButton_bg">
-        <img alt="Shelf Height" class="FieldButton_Icon FieldButton_Icon_Calc" title="Shelf Height" src="../../../web/images/blank.gif" border="0" id="buttonCalc"></img>
-
-      </td>
-    </tr>
-  </table>
-</a>
-</td>
-    </tr>
-  </table>
-</div>
-
-</div></td>
-</tr>
-<tr><td class="TitleCell" id="ShelfDepth_lbl_td"><span class="LabelText" id="ShelfDepth_lbl"><span id="lbl::2309">Shelf Depth</span> </span></td>
-
-<td class="TextBox_btn_ContentCell" id="ShelfDepth_inp_td"><div id="editDiscard">
-<div id="ShelfDepth_inp">
-  <table border="0" cellspacing="0" cellpadding="0" summary="" class="">
-    <tr>
-      <td class="TextBox_ContentCell">
-      <table style="border:0px;border-collapse:collapse;">
-        <tr>
-          <td style="padding-top: 0px;">
-            <input type="text" id="ShelfDepth" class="dojoValidateValid TextBox_btn_OneCell_width number" required="false" value="" maxlength="10" name="inpshelfdepth" onkeyup="" onkeydown="changeToEditingMode('onkeydown'); numberInputEvent('onkeydown', this, event);" onkeypress="changeToEditingMode('onkeypress');" oncut="changeToEditingMode('oncut');" onpaste="changeToEditingMode('onpaste');" oncontextmenu="changeToEditingMode('oncontextmenu');" onchange="logChanges(this); numberInputEvent('onchange', this);  return true;" outputformat="euroEdition" onfocus="numberInputEvent('onfocus', this);" onblur="numberInputEvent('onblur', this);"></input>
-          </td>
-
-        </tr>
-      </table>
-  <span class="TextBox_MsgContainer_span" style="display: none;" id="ShelfDepthinvalidSpan">
-    <table class="TextBox_MsgContainer_table">
-      <tr class="TextBox_MsgContainer_tr">
-        <td class="TextBox_MsgContainer_td"><div class="TextBox_MsgContainer_div"></div></td><td></td>
-      </tr>
-      <tr>
-        <td colspan="2" class="invalid"><div class="TextBox_MsgContainer_div2" id="ShelfDepthinvalidSpanText">* The value entered is not valid.</div></td>
-
-      </tr>
-    </table>
-  </span>
-  
-      </td>
-      <td class="FieldButton_ContentCell"><a class="FieldButtonLink" href="#" onfocus="setWindowElementFocus(this); window.status='Shelf Depth'; return true;" onblur="window.status=''; return true;" onkeypress="this.className='FieldButtonLink_active'; return true;" onkeyup="this.className='FieldButtonLink_focus'; return true;" onclick="calculator('frmMain.inpshelfdepth', document.frmMain.inpshelfdepth.value, false);return false;">
-  <table class="FieldButton" onmousedown="this.className='FieldButton_active'; return true;" onmouseup="this.className='FieldButton'; return true;" onmouseover="this.className='FieldButton_hover'; window.status='Shelf Depth'; return true;" onmouseout="this.className='FieldButton'; window.status=''; return true;" id="ShelfDepthlinkCalc">
-    <tr>
-      <td class="FieldButton_bg">
-        <img alt="Shelf Depth" class="FieldButton_Icon FieldButton_Icon_Calc" title="Shelf Depth" src="../../../web/images/blank.gif" border="0" id="buttonCalc"></img>
-
-      </td>
-    </tr>
-  </table>
-</a>
-</td>
-    </tr>
-  </table>
-</div>
-
-</div></td>
-<td class="TitleCell" id="UnitsPerPallet_lbl_td"><span class="LabelText" id="UnitsPerPallet_lbl"><span id="lbl::2310">Units Per Pallet</span> </span></td>
-
-<td class="TextBox_btn_ContentCell" id="UnitsPerPallet_inp_td"><div id="editDiscard">
-<div id="UnitsPerPallet_inp">
-  <table border="0" cellspacing="0" cellpadding="0" summary="" class="">
-    <tr>
-      <td class="TextBox_ContentCell">
-      <table style="border:0px;border-collapse:collapse;">
-        <tr>
-          <td style="padding-top: 0px;">
-            <input type="text" id="UnitsPerPallet" class="dojoValidateValid TextBox_btn_OneCell_width number" required="false" value="" maxlength="10" name="inpunitsperpallet" onkeyup="" onkeydown="changeToEditingMode('onkeydown'); numberInputEvent('onkeydown', this, event);" onkeypress="changeToEditingMode('onkeypress');" oncut="changeToEditingMode('oncut');" onpaste="changeToEditingMode('onpaste');" oncontextmenu="changeToEditingMode('oncontextmenu');" onchange="logChanges(this); numberInputEvent('onchange', this);  return true;" outputformat="integerEdition" onfocus="numberInputEvent('onfocus', this);" onblur="numberInputEvent('onblur', this);"></input>
-          </td>
-
-        </tr>
-      </table>
-  <span class="TextBox_MsgContainer_span" style="display: none;" id="UnitsPerPalletinvalidSpan">
-    <table class="TextBox_MsgContainer_table">
-      <tr class="TextBox_MsgContainer_tr">
-        <td class="TextBox_MsgContainer_td"><div class="TextBox_MsgContainer_div"></div></td><td></td>
-      </tr>
-      <tr>
-        <td colspan="2" class="invalid"><div class="TextBox_MsgContainer_div2" id="UnitsPerPalletinvalidSpanText">* The value entered is not valid.</div></td>
-
-      </tr>
-    </table>
-  </span>
-  
-      </td>
-      <td class="FieldButton_ContentCell"><a class="FieldButtonLink" href="#" onfocus="setWindowElementFocus(this); window.status='Units Per Pallet'; return true;" onblur="window.status=''; return true;" onkeypress="this.className='FieldButtonLink_active'; return true;" onkeyup="this.className='FieldButtonLink_focus'; return true;" onclick="calculator('frmMain.inpunitsperpallet', document.frmMain.inpunitsperpallet.value, false);return false;">
-  <table class="FieldButton" onmousedown="this.className='FieldButton_active'; return true;" onmouseup="this.className='FieldButton'; return true;" onmouseover="this.className='FieldButton_hover'; window.status='Units Per Pallet'; return true;" onmouseout="this.className='FieldButton'; window.status=''; return true;" id="UnitsPerPalletlinkCalc">
-    <tr>
-      <td class="FieldButton_bg">
-        <img alt="Units Per Pallet" class="FieldButton_Icon FieldButton_Icon_Calc" title="Units Per Pallet" src="../../../web/images/blank.gif" border="0" id="buttonCalc"></img>
-
-      </td>
-    </tr>
-  </table>
-</a>
-</td>
-    </tr>
-  </table>
-</div>
-
-</div></td>
-</tr>
-<tr><td class="TitleCell" id="IsStocked_lbl_td"><span class="LabelText" id="IsStocked_lbl"><span id="lbl::1761">Stocked</span> </span></td>
-
-<td colspan="3" class="Radio_Check_ContentCell" id="IsStocked_inp_td"><div id="editDiscard">
-  <div id="IsStocked_inp">
-    <span class="Checkbox_container_NOT_Focused"><input type="checkbox" name="inpisstocked" id="IsStocked" value="Y" onchange="return true;" onclick="changeToEditingMode('force');logChanges(this);displayLogic();return true;" required="true" checked></input></span>
-  </div>
-
-</div></td>
-</tr>
-<tr><td class="TitleCell" id="Production_lbl_td"><span class="LabelText" id="Production_lbl"><span id="lbl::802080">Production</span> </span></td>
-<td class="Radio_Check_ContentCell" id="Production_inp_td"><div id="editDiscard">
-  <div id="Production_inp">
-    <span class="Checkbox_container_NOT_Focused"><input type="checkbox" name="inpproduction" id="Production" value="Y" onchange="return true;" onclick="changeToEditingMode('force');logChanges(this);displayLogic();return true;" required="true"></input></span>
-
-  </div>
-
-</div></td>
-<td class="TitleCell" id="MA_Processplan_ID_lbl_td"><span class="LabelText" id="MA_Processplan_ID_lbl"><a class="LabelLink" href="#" onclick="sendDirectLink(document.frmMain, 'MA_Processplan_ID', document.frmMain.inpmProductId.value, '../../../utility/ReferencedLink.html', document.frmMain.inpmaProcessplanId.value, '800095', '_self', true);return false;" onmouseover="return true;" onmouseout="return true;"><span id="lbl::802065">Process Plan</span></a> </span></td>
-<td class="Combo_ContentCell" id="MA_Processplan_ID_inp_td"><div id="editDiscard">
-<div id="MA_Processplan_ID_inp">
-  <select name="inpmaProcessplanId" onkeypress="changeToEditingMode('onkeypress');" onchange="changeToEditingMode('onchange', this);logChanges(this);return true;" class="Combo Combo_TwoCells_width" id="reportMA_Processplan_ID_S">
-    <option value=""></option>
-    <div id="reportMA_Processplan_ID"><div id="sectionDetail"></div></div>
-  </select>
-
-</div>
-
-</div></td>
-</tr>
-<tr><td class="TitleCell" id="M_Locator_ID_lbl_td"><span class="LabelText" id="M_Locator_ID_lbl"><a class="LabelLink" href="#" onclick="sendDirectLink(document.frmMain, 'M_Locator_ID', document.frmMain.inpmProductId.value, '../../../utility/ReferencedLink.html', document.frmMain.inpmLocatorId.value, '207', '_self', true);return false;" onmouseover="return true;" onmouseout="return true;"><span id="lbl::9420">Storage Bin</span></a> </span></td>
-<td colspan="3" class="TextBox_btn_ContentCell" id="M_Locator_ID_inp_td"><div id="editDiscard">
-<div id="M_Locator_ID_inp">
-  <input type="hidden" name="inpmLocatorId" id="M_Locator_ID" value="1000000" onchange="logChanges(this);return true;"></input>
-  <table border="0" cellspacing="0" cellpadding="0" summary="" class="">
-    <tr>
-      <td class="TextBox_ContentCell">
-
-      <table style="border:0px;border-collapse:collapse;">
-        <tr>
-          <td style="padding-top: 0px;">
-            
-            <input type="text" class="dojoValidateValid TextBox_btn_TwoCells_width" tabindex="" maxlength="60" name="inpmLocatorId_R" id="M_Locator_ID_R" value="ML1" required="false" onkeydown="changeToEditingMode('onkeydown');" onkeypress="changeToEditingMode('onkeypress');" oncut="changeToEditingMode('oncut');" onpaste="changeToEditingMode('onpaste');" oncontextmenu="changeToEditingMode('oncontextmenu');" onchange="validateTextBox(this.id);"></input>
-          </td>
-        </tr>
-      </table>
-  <span class="TextBox_MsgContainer_span" style="display: none;" id="M_Locator_ID_RmissingSpan">
-    <table class="TextBox_MsgContainer_table">
-
-      <tr class="TextBox_MsgContainer_tr">
-        <td class="TextBox_MsgContainer_td"><div class="TextBox_MsgContainer_div"></div></td><td></td>
-      </tr>
-      <tr>
-        <td colspan="2" class="missing"><div class="TextBox_MsgContainer_div2" id="M_Locator_ID_RmissingSpanText">* This value is required.</div></td>
-      </tr>
-    </table>
-  </span>
-
-      </td>
-      <td class="FieldButton_ContentCell"><a class="FieldButtonLink" href="#" onfocus="setWindowElementFocus(this); window.status='Locator'; return true;" onblur="window.status=''; return true;" onkeypress="this.className='FieldButtonLink_active'; return true;" onkeyup="this.className='FieldButtonLink_focus'; return true;" onclick="openSearch(null, null, '../../../info/Locator.html', null, false, 'frmMain', 'inpmLocatorId', 'inpmLocatorId_R', inputValue(document.frmMain.inpmLocatorId_R), 'inpIDValue', inputValue(document.frmMain.inpmLocatorId), 'WindowID', inputValue(document.frmMain.inpwindowId), 'inpAD_Org_ID', inputValue(document.frmMain.inpadOrgId), 'inpmWarehouseId', inputValue(document.frmMain.inpmWarehouseId));return false;">
-  <table class="FieldButton" onmousedown="this.className='FieldButton_active'; return true;" onmouseup="this.className='FieldButton'; return true;" onmouseover="this.className='FieldButton_hover'; window.status='Locator'; return true;" onmouseout="this.className='FieldButton'; window.status=''; return true;" id="M_Locator_IDlinkLocator">
-    <tr>
-      <td class="FieldButton_bg">
-        <img alt="Locator" class="FieldButton_Icon FieldButton_Icon_Locator" title="Locator" src="../../../web/images/blank.gif" border="0" id="buttonLocator"></img>
-      </td>
-    </tr>
-  </table>
-
-</a>
-</td>
-    </tr>
-  </table>
-</div>
-
-</div></td>
-</tr>
-<tr><td class="TitleCell" id="IsBOM_lbl_td"><span class="LabelText" id="IsBOM_lbl"><span id="lbl::4708">Bill of Materials</span> </span></td>
-<td class="Radio_Check_ContentCell" id="IsBOM_inp_td"><div id="editDiscard">
-  <div id="IsBOM_inp">
-    <span class="Checkbox_container_NOT_Focused"><input type="checkbox" name="inpisbom" id="IsBOM" value="Y" onchange="return true;" onclick="changeToEditingMode('force');logChanges(this);displayLogic();return true;" required="true"></input></span>
-
-  </div>
-
-</div></td>
-<td class="TitleCell" id="IsVerified_lbl_td"><span class="LabelText" id="IsVerified_lbl"><span id="lbl::4711">BOM Verified</span> </span></td>
-<td class="Radio_Check_ContentCell" id="IsVerified_inp_td"><div id="editDiscard">
-  <div id="IsVerified_inp">
-    <span class="Checkbox_container_NOT_Focused"><input type="checkbox" name="inpisverified" id="IsVerified" value="Y" onchange="return true;" onclick="changeToEditingMode('force');return false;" required="true" onclick="return false;" readonly="true"></input></span>
-  </div>
-
-</div></td>
-</tr>
-
-<tr><td class="Button_CenterAlign_ContentCell" id="Processing_inp_td" colspan="4"><div id="editDiscard"><div id="Processing_inp">
-  <input type="hidden" name="inpprocessing" value="N" onchange="logChanges(this);  return true;" id="Processing"></input>
-  <button type="button" id="Processing_linkBTN" class="ButtonLink" onclick="logClick(document.getElementById('Processing')); openServletNewWindow('BUTTONProcessing136', true, 'Product_Edition.html', 'BUTTON', null, true, 600, 900); return false;" onfocus="buttonEvent('onfocus', this); window.status='Verify BOM'; return true;" onblur="buttonEvent('onblur', this);" onkeyup="buttonEvent('onkeyup', this);" onkeydown="buttonEvent('onkeydown', this);" onkeypress="buttonEvent('onkeypress', this);" onmouseup="buttonEvent('onmouseup', this);" onmousedown="buttonEvent('onmousedown', this);" onmouseover="buttonEvent('onmouseover', this); window.status='Verify BOM'; return true;" onmouseout="buttonEvent('onmouseout', this);">
-    <table class="Button">
-      <tr>
-        <td class="Button_left"><img class="Button_Icon Button_Icon_process" alt="Verify BOM" title="Verify BOM" src="../../../web/images/blank.gif" border="0"></img></td>
-        <td class="Button_text" id="Processing_BTNname"><u>V</u>erify BOM</td>
-        <td class="Button_right"></td>
-
-      </tr>
-    </table>
-  </button>
-</div>
-</div></td>
-</tr>
-<tr><td class="TitleCell" id="IsInvoicePrintDetails_lbl_td"><span class="LabelText" id="IsInvoicePrintDetails_lbl"><span id="lbl::4709">Print Details on Invoice</span> </span></td>
-<td class="Radio_Check_ContentCell" id="IsInvoicePrintDetails_inp_td"><div id="editDiscard">
-  <div id="IsInvoicePrintDetails_inp">
-    <span class="Checkbox_container_NOT_Focused"><input type="checkbox" name="inpisinvoiceprintdetails" id="IsInvoicePrintDetails" value="Y" onchange="return true;" onclick="changeToEditingMode('force');logChanges(this);return true;" required="true"></input></span>
-
-  </div>
-
-</div></td>
-<td class="TitleCell" id="IsPickListPrintDetails_lbl_td"><span class="LabelText" id="IsPickListPrintDetails_lbl"><span id="lbl::4710">Print Details on Pick List</span> </span></td>
-<td class="Radio_Check_ContentCell" id="IsPickListPrintDetails_inp_td"><div id="editDiscard">
-  <div id="IsPickListPrintDetails_inp">
-    <span class="Checkbox_container_NOT_Focused"><input type="checkbox" name="inpispicklistprintdetails" id="IsPickListPrintDetails" value="Y" onchange="return true;" onclick="changeToEditingMode('force');logChanges(this);return true;" required="true"></input></span>
-  </div>
-
-</div></td>
-</tr>
-
-<tr><td class="TitleCell" id="IsPurchased_lbl_td"><span class="LabelText" id="IsPurchased_lbl"><span id="lbl::1762">Purchase</span> </span></td>
-<td class="Radio_Check_ContentCell" id="IsPurchased_inp_td"><div id="editDiscard">
-  <div id="IsPurchased_inp">
-    <span class="Checkbox_container_NOT_Focused"><input type="checkbox" name="inpispurchased" id="IsPurchased" value="Y" onchange="return true;" onclick="changeToEditingMode('force');logChanges(this);displayLogic();return true;" required="true" checked></input></span>
-  </div>
-
-</div></td>
-<td class="TitleCell" id="IsSold_lbl_td"><span class="LabelText" id="IsSold_lbl"><span id="lbl::1763">Sale</span> </span></td>
-<td class="Radio_Check_ContentCell" id="IsSold_inp_td"><div id="editDiscard">
-  <div id="IsSold_inp">
-
-    <span class="Checkbox_container_NOT_Focused"><input type="checkbox" name="inpissold" id="IsSold" value="Y" onchange="return true;" onclick="changeToEditingMode('force');logChanges(this);displayLogic();return true;" required="true"></input></span>
-  </div>
-
-</div></td>
-</tr>
-<tr><td class="TitleCell" id="C_TaxCategory_ID_lbl_td"><span class="LabelText" id="C_TaxCategory_ID_lbl"><a class="LabelLink" href="#" onclick="sendDirectLink(document.frmMain, 'C_TaxCategory_ID', document.frmMain.inpmProductId.value, '../../../utility/ReferencedLink.html', document.frmMain.inpcTaxcategoryId.value, '252', '_self', true);return false;" onmouseover="return true;" onmouseout="return true;"><span id="lbl::2019">Tax Category</span></a> </span></td>
-<td colspan="3" class="Combo_ContentCell" id="C_TaxCategory_ID_inp_td"><div id="editDiscard">
-<div id="C_TaxCategory_ID_inp">
-  <select name="inpcTaxcategoryId" onkeypress="changeToEditingMode('onkeypress');" onchange="changeToEditingMode('onchange', this);logChanges(this);return true;" class="ComboKey Combo_TwoCells_width" id="reportC_TaxCategory_ID_S">
-    
-    <div id="reportC_TaxCategory_ID"><div id="sectionDetail"><option value="1000003"><span>Exempt</span></option>
-
-<option value="1000004"><span>Standard VAT + Withholding</span></option>
-
-<option value="1000000" selected><span>VAT 16%</span></option>
-
-<option value="1000002"><span>VAT 4%</span></option>
-
-<option value="1000001"><span>VAT 7%</span></option></div></div>
-  </select>
-</div>
-
-</div></td>
-
-</tr>
-<tr><td class="TitleCell" id="Discontinued_lbl_td"><span class="LabelText" id="Discontinued_lbl"><span id="lbl::2703">Discontinued</span> </span></td>
-<td class="Radio_Check_ContentCell" id="Discontinued_inp_td"><div id="editDiscard">
-  <div id="Discontinued_inp">
-    <span class="Checkbox_container_NOT_Focused"><input type="checkbox" name="inpdiscontinued" id="Discontinued" value="Y" onchange="return true;" onclick="changeToEditingMode('force');logChanges(this);displayLogic();return true;" required="false"></input></span>
-  </div>
-
-</div></td>
-<td class="TitleCell" id="DiscontinuedBy_lbl_td"><span class="LabelText" id="DiscontinuedBy_lbl"><span id="lbl::2704">Discontinued by</span> </span></td>
-<td class="TextBox_btn_ContentCell" id="DiscontinuedBy_inp_td"><div id="editDiscard"><div id="DiscontinuedBy_inp">
-
-  <table border="0" cellspacing="0" cellpadding="0" summary="" class="">
-    <tr>
-      <td class="TextBox_ContentCell">
-      <table style="border:0px;border-collapse:collapse;">
-        <tr>
-          <td style="padding-top: 0px;">
-            <input type="text" id="DiscontinuedBy" class="dojoValidateValid TextBox_btn_OneCell_width" required="false" value="" maxlength="10" name="inpdiscontinuedby" onkeyup="autoCompleteDate(this);" onkeydown="changeToEditingMode('onkeydown');" onkeypress="changeToEditingMode('onkeypress');" oncut="changeToEditingMode('oncut');" onpaste="changeToEditingMode('onpaste');" oncontextmenu="changeToEditingMode('oncontextmenu');" onblur="expandDateYear(this.id);" onchange="validateDateTextBox(this.id);logChanges(this);return true;" displayformat="DD-MM-YYYY" saveformat="DD-MM-YYYY"></input>
-          </td>
-        </tr>
-
-      </table>
-  <span class="TextBox_MsgContainer_span" style="display: none;" id="DiscontinuedByinvalidSpan">
-    <table class="TextBox_MsgContainer_table">
-      <tr class="TextBox_MsgContainer_tr">
-        <td class="TextBox_MsgContainer_td"><div class="TextBox_MsgContainer_div"></div></td><td></td>
-      </tr>
-      <tr>
-        <td colspan="2" class="invalid"><div class="TextBox_MsgContainer_div2" id="DiscontinuedByinvalidSpanText">* The value entered is not valid.</div></td>
-
-      </tr>
-    </table>
-  </span>
-  
-      </td>
-      <td class="FieldButton_ContentCell"><a class="FieldButtonLink" href="#" onfocus="setWindowElementFocus(this); window.status='Discontinued by'; return true;" onblur="window.status=''; return true;" onkeypress="this.className='FieldButtonLink_active'; return true;" onkeyup="this.className='FieldButtonLink_focus'; return true;" onclick="showCalendar('frmMain.inpdiscontinuedby', document.frmMain.inpdiscontinuedby.value, false);return false;">
-  <table class="FieldButton" onmousedown="this.className='FieldButton_active'; return true;" onmouseup="this.className='FieldButton'; return true;" onmouseover="this.className='FieldButton_hover'; window.status='Discontinued by'; return true;" onmouseout="this.className='FieldButton'; window.status=''; return true;" id="DiscontinuedBylinkCalendar">
-    <tr>
-      <td class="FieldButton_bg">
-        <img alt="Discontinued by" class="FieldButton_Icon FieldButton_Icon_Calendar" title="Discontinued by" src="../../../web/images/blank.gif" border="0" id="buttonCalendar"></img>
-
-      </td>
-    </tr>
-  </table>
-</a>
-</td>
-    </tr>
-  </table>
-  
-</div>
-</div></td>
-</tr>
-<tr><td class="TitleCell" id="ImageURL_lbl_td"><span class="LabelText" id="ImageURL_lbl"><span id="lbl::7962">Image URL</span> </span></td>
-
-<td class="TextBox_btn_ContentCell" id="ImageURL_inp_td"><div id="editDiscard">
-<div id="ImageURL_inp">
-  <table border="0" cellpadding="0" cellspacing="0">
-    <tr>
-      <td class="TextBox_ContentCell">
-      <table style="border:0px;border-collapse:collapse;">
-        <tr>
-          <td style="padding-top: 0px;">
-            <input type="text" id="ImageURL" class="dojoValidateValid TextBox_OneCell_width" required="false" value="800011" maxlength="120" name="inpimageurl" onkeyup="" onkeydown="changeToEditingMode('onkeydown');" onkeypress="changeToEditingMode('onkeypress');" oncut="changeToEditingMode('oncut');" onpaste="changeToEditingMode('onpaste');" oncontextmenu="changeToEditingMode('oncontextmenu');" onchange="validateTextBox(this.id);logChanges(this);return true;"></input>
-          </td>
-
-        </tr>
-      </table>
-  
-      </td>
-    </tr>
-  </table>
-</div>
-
-</div></td>
-<td class="TitleCell" id="DescriptionURL_lbl_td"><span class="LabelText" id="DescriptionURL_lbl"><span id="lbl::7963">Description URL</span> </span></td>
-<td class="TextBox_btn_ContentCell" id="DescriptionURL_inp_td"><div id="editDiscard">
-
-<div id="DescriptionURL_inp">
-  <table border="0" cellpadding="0" cellspacing="0">
-    <tr>
-      <td class="TextBox_ContentCell">
-      <table style="border:0px;border-collapse:collapse;">
-        <tr>
-          <td style="padding-top: 0px;">
-            <input type="text" id="DescriptionURL" class="dojoValidateValid TextBox_OneCell_width" required="false" value="" maxlength="120" name="inpdescriptionurl" onkeyup="" onkeydown="changeToEditingMode('onkeydown');" onkeypress="changeToEditingMode('onkeypress');" oncut="changeToEditingMode('oncut');" onpaste="changeToEditingMode('onpaste');" oncontextmenu="changeToEditingMode('oncontextmenu');" onchange="validateTextBox(this.id);logChanges(this);return true;"></input>
-          </td>
-
-        </tr>
-      </table>
-  
-      </td>
-    </tr>
-  </table>
-</div>
-
-</div></td>
-</tr>
-<tr><td class="TitleCell" id="M_AttributeSet_ID_lbl_td"><span class="LabelText" id="M_AttributeSet_ID_lbl"><a class="LabelLink" href="#" onclick="sendDirectLink(document.frmMain, 'M_AttributeSet_ID', document.frmMain.inpmProductId.value, '../../../utility/ReferencedLink.html', document.frmMain.inpmAttributesetId.value, '560', '_self', true);return false;" onmouseover="return true;" onmouseout="return true;"><span id="lbl::8417">Attribute Set</span></a> </span></td>
-
-<td class="Combo_ContentCell" id="M_AttributeSet_ID_inp_td"><div id="editDiscard">
-<div id="M_AttributeSet_ID_inp">
-  <select name="inpmAttributesetId" onkeypress="changeToEditingMode('onkeypress');" onchange="changeToEditingMode('onchange', this);logChanges(this);return true;" class="Combo Combo_TwoCells_width" id="reportM_AttributeSet_ID_S">
-    <option value=""></option>
-    <div id="reportM_AttributeSet_ID"><div id="sectionDetail"><option value="1000004"><span>Color</span></option>
-
-<option value="1000001" selected><span>Lot and expiration</span></option>
-
-<option value="1000002"><span>Series number</span></option>
-
-<option value="1000003"><span>Size</span></option></div></div>
-
-  </select>
-</div>
-
-</div></td>
-<td class="TitleCell" id="M_AttributeSetInstance_ID_lbl_td"><span class="LabelText" id="M_AttributeSetInstance_ID_lbl"><span id="lbl::8418">Attribute Set Value</span> </span></td>
-<td class="TextBox_btn_ContentCell" id="M_AttributeSetInstance_ID_inp_td"><div id="editDiscard">
-<div id="M_AttributeSetInstance_ID_inp">
-  <input type="hidden" name="inpmAttributesetinstanceId" id="M_AttributeSetInstance_ID" value="" onchange="logChanges(this);return true;"></input>
-  <table border="0" cellspacing="0" cellpadding="0" summary="" class="">
-    <tr>
-      <td class="TextBox_ContentCell">
-
-      <table style="border:0px;border-collapse:collapse;">
-        <tr>
-          <td style="padding-top: 0px;">
-            
-            <input type="text" class="dojoValidateValid readonly TextBox_btn_OneCell_width" tabindex="1" maxlength="22" name="inpmAttributesetinstanceId_R" id="M_AttributeSetInstance_ID_R" value="" required="false" onkeydown="changeToEditingMode('onkeydown');" onkeypress="changeToEditingMode('onkeypress');" oncut="changeToEditingMode('oncut');" onpaste="changeToEditingMode('onpaste');" oncontextmenu="changeToEditingMode('oncontextmenu');" onchange="validateTextBox(this.id);" readonly="true"></input>
-          </td>
-        </tr>
-      </table>
-  <span class="TextBox_MsgContainer_span" style="display: none;" id="M_AttributeSetInstance_ID_RmissingSpan">
-    <table class="TextBox_MsgContainer_table">
-
-      <tr class="TextBox_MsgContainer_tr">
-        <td class="TextBox_MsgContainer_td"><div class="TextBox_MsgContainer_div"></div></td><td></td>
-      </tr>
-      <tr>
-        <td colspan="2" class="missing"><div class="TextBox_MsgContainer_div2" id="M_AttributeSetInstance_ID_RmissingSpanText">* This value is required.</div></td>
-      </tr>
-    </table>
-  </span>
-
-      </td>
-      <td class="FieldButton_ContentCell"><a class="FieldButtonLink" href="#" onfocus="setWindowElementFocus(this); window.status='Attribute Set Value'; return true;" onblur="window.status=''; return true;" onkeypress="this.className='FieldButtonLink_active'; return true;" onkeyup="this.className='FieldButtonLink_focus'; return true;" onclick="openPAttribute(null, null, '../../../info/AttributeSetInstance.html', null, true, 'frmMain', 'inpmAttributesetinstanceId', 'inpmAttributesetinstanceId_R', inputValue(document.frmMain.inpmAttributesetinstanceId_R), 'inpIDValue', inputValue(document.frmMain.inpmAttributesetinstanceId), 'WindowID', inputValue(document.frmMain.inpwindowId), 'inpKeyValue', inputValue(document.frmMain.inpmAttributesetinstanceId), 'inpwindowId', inputValue(document.frmMain.inpwindowId), 'inpProduct', inputValue(document.frmMain.inpmProductId));return false;">
-  <table class="FieldButton" onmousedown="this.className='FieldButton_active'; return true;" onmouseup="this.className='FieldButton'; return true;" onmouseover="this.className='FieldButton_hover'; window.status='Attribute Set Value'; return true;" onmouseout="this.className='FieldButton'; window.status=''; return true;" id="M_AttributeSetInstance_IDlinkAttributeSetInstance">
-    <tr>
-      <td class="FieldButton_bg">
-        <img alt="Attribute Set Value" class="FieldButton_Icon FieldButton_Icon_AttributeSetInstance" title="Attribute Set Value" src="../../../web/images/blank.gif" border="0" id="buttonAttributeSetInstance"></img>
-      </td>
-    </tr>
-  </table>
-
-</a>
-</td>
-    </tr>
-  </table>
-</div>
-
-</div></td>
-</tr>
-<tr><td class="TitleCell" id="Costtype_lbl_td"><span class="LabelText" id="Costtype_lbl"><span id="lbl::800781">Cost Type</span> </span></td>
-<td class="Combo_ContentCell" id="Costtype_inp_td"><div id="editDiscard">
-<div id="Costtype_inp">
-  <select name="inpcosttype" onkeypress="changeToEditingMode('onkeypress');" onchange="changeToEditingMode('onchange', this);logChanges(this);return true;" class="Combo Combo_OneCell_width" id="reportCosttype_S">
-
-    <option value=""></option>
-    <div id="reportCosttype"><div id="sectionDetail"><option value="AV" selected><span>Average</span></option>
-
-<option value="ST"><span>Standard</span></option></div></div>
-  </select>
-</div>
-
-</div></td>
-<td class="TitleCell" id="Coststd_lbl_td"><span class="LabelText" id="Coststd_lbl"><span id="lbl::800782">Standard Cost</span> </span></td>
-<td class="TextBox_btn_ContentCell" id="Coststd_inp_td"><div id="editDiscard">
-
-<div id="Coststd_inp">
-  <table border="0" cellspacing="0" cellpadding="0" summary="" class="">
-    <tr>
-      <td class="TextBox_ContentCell">
-      <table style="border:0px;border-collapse:collapse;">
-        <tr>
-          <td style="padding-top: 0px;">
-            <input type="text" id="Coststd" class="dojoValidateValid TextBox_btn_OneCell_width number" required="false" value="" maxlength="6" name="inpcoststd" onkeyup="" onkeydown="changeToEditingMode('onkeydown'); numberInputEvent('onkeydown', this, event);" onkeypress="changeToEditingMode('onkeypress');" oncut="changeToEditingMode('oncut');" onpaste="changeToEditingMode('onpaste');" oncontextmenu="changeToEditingMode('oncontextmenu');" onchange="logChanges(this); numberInputEvent('onchange', this);  return true;" outputformat="euroEdition" onfocus="numberInputEvent('onfocus', this);" onblur="numberInputEvent('onblur', this);"></input>
-          </td>
-
-        </tr>
-      </table>
-  <span class="TextBox_MsgContainer_span" style="display: none;" id="CoststdinvalidSpan">
-    <table class="TextBox_MsgContainer_table">
-      <tr class="TextBox_MsgContainer_tr">
-        <td class="TextBox_MsgContainer_td"><div class="TextBox_MsgContainer_div"></div></td><td></td>
-      </tr>
-      <tr>
-        <td colspan="2" class="invalid"><div class="TextBox_MsgContainer_div2" id="CoststdinvalidSpanText">* The value entered is not valid.</div></td>
-
-      </tr>
-    </table>
-  </span>
-  
-      </td>
-      <td class="FieldButton_ContentCell"><a class="FieldButtonLink" href="#" onfocus="setWindowElementFocus(this); window.status='Standard Cost'; return true;" onblur="window.status=''; return true;" onkeypress="this.className='FieldButtonLink_active'; return true;" onkeyup="this.className='FieldButtonLink_focus'; return true;" onclick="calculator('frmMain.inpcoststd', document.frmMain.inpcoststd.value, false);return false;">
-  <table class="FieldButton" onmousedown="this.className='FieldButton_active'; return true;" onmouseup="this.className='FieldButton'; return true;" onmouseover="this.className='FieldButton_hover'; window.status='Standard Cost'; return true;" onmouseout="this.className='FieldButton'; window.status=''; return true;" id="CoststdlinkCalc">
-    <tr>
-      <td class="FieldButton_bg">
-        <img alt="Standard Cost" class="FieldButton_Icon FieldButton_Icon_Calc" title="Standard Cost" src="../../../web/images/blank.gif" border="0" id="buttonCalc"></img>
-
-      </td>
-    </tr>
-  </table>
-</a>
-</td>
-    </tr>
-  </table>
-</div>
-
-</div></td>
-</tr>
-      <tr><td colspan="4">
-
-      <table border="0" cellspacing="0" cellpadding="0" class="FieldGroup" id="fldgrp1000100001"><tr class="FieldGroup_TopMargin"></tr>
-<tr>
-<td class="FieldGroupTitle_Left"><img src="../../../web/images/blank.gif" class="FieldGroupTitle_Left_bg" border="0/"></img></td><td class="FieldGroupTitle"><span id="fldgrp::1000100001">Audit</span></td><td class="FieldGroupTitle_Right"><img src="../../../web/images/blank.gif" class="FieldGroupTitle_Right_bg" border="0/"></img></td><td class="FieldGroupContent"> </td></tr>
-<tr class="FieldGroup_BottomMargin"></tr></table>      </td></tr>
-<tr><td class="TitleCell" id="Created_lbl_td"><span class="LabelText" id="Created_lbl"><span id="lbl::1406">Created</span> </span></td>
-<td class="TextBox_btn_ContentCell" id="Created_inp_td"><div id="editDiscard"><div id="Created_inp">
-  <table border="0" cellspacing="0" cellpadding="0" summary="" class="TextButton_ContentCell">
-    <tr>
-      <td class="TextBox_ReadOnly_ContentCell">
-
-        <input type="text" id="Created" class="dojoValidateValid readonly TextBox_TwoCells_width" required="false" value="05-10-2009" maxlength="19" name="inpcreated" onkeyup="autoCompleteDate(this);" onkeydown="changeToEditingMode('onkeydown');" onkeypress="changeToEditingMode('onkeypress');" oncut="changeToEditingMode('oncut');" onpaste="changeToEditingMode('onpaste');" oncontextmenu="changeToEditingMode('oncontextmenu');" onchange="validateDateTextBox(this.id);logChanges(this);return true;" displayformat="DD-MM-YYYY %H:%M:%S" saveformat="DD-MM-YYYY %H:%M:%S" readonly="true"></input>
-      </td>
-      <td class="_ContentCell"></td>
-    </tr>
-  </table>
-  <span class="TextBox_MsgContainer_span" style="display: none;" id="CreatedinvalidSpan">
-    <table class="TextBox_MsgContainer_table">
-      <tr class="TextBox_MsgContainer_tr">
-        <td class="TextBox_MsgContainer_td"><div class="TextBox_MsgContainer_div"></div></td><td></td>
-
-      </tr>
-      <tr>
-        <td colspan="2" class="invalid"><div class="TextBox_MsgContainer_div2" id="CreatedinvalidSpanText">* The value entered is not valid.</div></td>
-      </tr>
-    </table>
-  </span>
-  
-</div>
-</div></td>
-<td class="TitleCell" id="CreatedBy_lbl_td"><span class="LabelText" id="CreatedBy_lbl"><span id="lbl::1407">Created By</span> </span></td>
-
-<td class="TextBox_btn_ContentCell" id="CreatedBy_inp_td"><div id="editDiscard">
-<div id="CreatedBy_inp">
-  <input type="hidden" name="inpcreatedby" id="CreatedBy" value="" onchange="logChanges(this);return true;"></input>
-  <table border="0" cellspacing="0" cellpadding="0" summary="" class="TextButton_ContentCell">
-    <tr>
-      <td class="TextBox_ReadOnly_ContentCell">
-      <table style="border:0px;border-collapse:collapse;">
-        <tr>
-          <td style="padding-top: 0px;">
-            
-            <input type="text" class="dojoValidateValid readonly TextBox_TwoCells_width" tabindex="" maxlength="22" name="inpcreatedby_R" id="CreatedBy_R" value="System" required="false" onkeydown="changeToEditingMode('onkeydown');" onkeypress="changeToEditingMode('onkeypress');" oncut="changeToEditingMode('oncut');" onpaste="changeToEditingMode('onpaste');" oncontextmenu="changeToEditingMode('oncontextmenu');" onchange="validateTextBox(this.id);" readonly="true"></input>
-
-          </td>
-        </tr>
-      </table>
-  <span class="TextBox_MsgContainer_span" style="display: none;" id="CreatedBy_RmissingSpan">
-    <table class="TextBox_MsgContainer_table">
-      <tr class="TextBox_MsgContainer_tr">
-        <td class="TextBox_MsgContainer_td"><div class="TextBox_MsgContainer_div"></div></td><td></td>
-      </tr>
-      <tr>
-
-        <td colspan="2" class="missing"><div class="TextBox_MsgContainer_div2" id="CreatedBy_RmissingSpanText">* This value is required.</div></td>
-      </tr>
-    </table>
-  </span>
-      </td>
-      <td class="_ContentCell"></td>
-    </tr>
-  </table>
-
-</div>
-
-</div></td>
-</tr>
-<tr><td class="TitleCell" id="Updated_lbl_td"><span class="LabelText" id="Updated_lbl"><span id="lbl::1408">Updated</span> </span></td>
-<td class="TextBox_btn_ContentCell" id="Updated_inp_td"><div id="editDiscard"><div id="Updated_inp">
-  <table border="0" cellspacing="0" cellpadding="0" summary="" class="TextButton_ContentCell">
-    <tr>
-      <td class="TextBox_ReadOnly_ContentCell">
-        <input type="text" id="Updated" class="dojoValidateValid readonly TextBox_TwoCells_width" required="false" value="05-10-2009" maxlength="19" name="inpupdated" onkeyup="autoCompleteDate(this);" onkeydown="changeToEditingMode('onkeydown');" onkeypress="changeToEditingMode('onkeypress');" oncut="changeToEditingMode('oncut');" onpaste="changeToEditingMode('onpaste');" oncontextmenu="changeToEditingMode('oncontextmenu');" onchange="validateDateTextBox(this.id);logChanges(this);return true;" displayformat="DD-MM-YYYY %H:%M:%S" saveformat="DD-MM-YYYY %H:%M:%S" readonly="true"></input>
-      </td>
-
-      <td class="_ContentCell"></td>
-    </tr>
-  </table>
-  <span class="TextBox_MsgContainer_span" style="display: none;" id="UpdatedinvalidSpan">
-    <table class="TextBox_MsgContainer_table">
-      <tr class="TextBox_MsgContainer_tr">
-        <td class="TextBox_MsgContainer_td"><div class="TextBox_MsgContainer_div"></div></td><td></td>
-      </tr>
-      <tr>
-
-        <td colspan="2" class="invalid"><div class="TextBox_MsgContainer_div2" id="UpdatedinvalidSpanText">* The value entered is not valid.</div></td>
-      </tr>
-    </table>
-  </span>
-  
-</div>
-</div></td>
-<td class="TitleCell" id="UpdatedBy_lbl_td"><span class="LabelText" id="UpdatedBy_lbl"><span id="lbl::1409">Updated By</span> </span></td>
-<td class="TextBox_btn_ContentCell" id="UpdatedBy_inp_td"><div id="editDiscard">
-<div id="UpdatedBy_inp">
-
-  <input type="hidden" name="inpupdatedby" id="UpdatedBy" value="0" onchange="logChanges(this);return true;"></input>
-  <table border="0" cellspacing="0" cellpadding="0" summary="" class="TextButton_ContentCell">
-    <tr>
-      <td class="TextBox_ReadOnly_ContentCell">
-      <table style="border:0px;border-collapse:collapse;">
-        <tr>
-          <td style="padding-top: 0px;">
-            
-            <input type="text" class="dojoValidateValid readonly TextBox_TwoCells_width" tabindex="" maxlength="22" name="inpupdatedby_R" id="UpdatedBy_R" value="System" required="false" onkeydown="changeToEditingMode('onkeydown');" onkeypress="changeToEditingMode('onkeypress');" oncut="changeToEditingMode('oncut');" onpaste="changeToEditingMode('onpaste');" oncontextmenu="changeToEditingMode('oncontextmenu');" onchange="validateTextBox(this.id);" readonly="true"></input>
-          </td>
-
-        </tr>
-      </table>
-  <span class="TextBox_MsgContainer_span" style="display: none;" id="UpdatedBy_RmissingSpan">
-    <table class="TextBox_MsgContainer_table">
-      <tr class="TextBox_MsgContainer_tr">
-        <td class="TextBox_MsgContainer_td"><div class="TextBox_MsgContainer_div"></div></td><td></td>
-      </tr>
-      <tr>
-        <td colspan="2" class="missing"><div class="TextBox_MsgContainer_div2" id="UpdatedBy_RmissingSpanText">* This value is required.</div></td>
-
-      </tr>
-    </table>
-  </span>
-      </td>
-      <td class="_ContentCell"></td>
-    </tr>
-  </table>
-</div>
-
-</div></td>
-
-</tr>
-
-                </table>
-              </td>
-            </tr>
-          </table>
-        </div>
-        <table width="100%" border="0" cellspacing="0" cellpadding="0" class="Menu_ContentPane_Bottom" id="tdbottomSeparator">
-          <tr>
-            <td class="Main_Bottom_bg"><img src="../../../web/images/blank.gif" border="0"></img></td>
-
-          </tr>
-        </table></td>
-      <td valign="top">
-        <table width="100%" border="0" cellspacing="0" cellpadding="0" class="Main_ContentPane_Right" id="tdrightSeparator">
-          <tr><td class="Main_NavBar_bg_right"></td></tr>
-          <tr><td class="Main_ToolBar_bg_right" valign="top"></td></tr>
-          <tr><td class="Main_Client_bg_right"></td></tr>
-          <tr><td class="Main_Bottom_bg_right"></td></tr>
-        </table>
-
-      </td>
-    </tr>
-  </table>
-</form>
-
-
-</body></html>
Binary file modules/org.openbravo.userinterface.skin.250to300Comp/build/classes/org/openbravo/userinterface/skin/s250to300Comp/modulescript/DefaultSkin.class has changed
Binary file modules/org.openbravo.userinterface.skin.250to300Comp/build/classes/org/openbravo/userinterface/skin/s250to300Comp/modulescript/DefaultSkinData.class has changed
--- a/modules/org.openbravo.userinterface.skin.250to300Comp/src-db/database/sourcedata/AD_MODULE.xml	Wed Aug 26 23:27:42 2015 +0200
+++ b/modules/org.openbravo.userinterface.skin.250to300Comp/src-db/database/sourcedata/AD_MODULE.xml	Fri Sep 04 09:30:06 2015 +0200
@@ -6,7 +6,7 @@
 <!--96998CBC42744B3DBEE28AC8095C9335-->  <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
 <!--96998CBC42744B3DBEE28AC8095C9335-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--96998CBC42744B3DBEE28AC8095C9335-->  <NAME><![CDATA[2.50 to 3.00 Compatibility Skin]]></NAME>
-<!--96998CBC42744B3DBEE28AC8095C9335-->  <VERSION><![CDATA[2.0.27413]]></VERSION>
+<!--96998CBC42744B3DBEE28AC8095C9335-->  <VERSION><![CDATA[2.0.27515]]></VERSION>
 <!--96998CBC42744B3DBEE28AC8095C9335-->  <DESCRIPTION><![CDATA[Skin module to proper visualization of classic windows inside the MDI interface]]></DESCRIPTION>
 <!--96998CBC42744B3DBEE28AC8095C9335-->  <HELP><![CDATA[With this skin module the classic windows styles will display in a way more coherent with the new 3.00 styles]]></HELP>
 <!--96998CBC42744B3DBEE28AC8095C9335-->  <URL><![CDATA[www.openbravo.com]]></URL>
--- a/modules/org.openbravo.userinterface.skin.250to300Comp/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml	Wed Aug 26 23:27:42 2015 +0200
+++ b/modules/org.openbravo.userinterface.skin.250to300Comp/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml	Fri Sep 04 09:30:06 2015 +0200
@@ -7,7 +7,7 @@
 <!--39BF75AD9AB3453698BF5DE29E727AA9-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--39BF75AD9AB3453698BF5DE29E727AA9-->  <AD_MODULE_ID><![CDATA[96998CBC42744B3DBEE28AC8095C9335]]></AD_MODULE_ID>
 <!--39BF75AD9AB3453698BF5DE29E727AA9-->  <AD_DEPENDENT_MODULE_ID><![CDATA[0]]></AD_DEPENDENT_MODULE_ID>
-<!--39BF75AD9AB3453698BF5DE29E727AA9-->  <STARTVERSION><![CDATA[3.0.27413]]></STARTVERSION>
+<!--39BF75AD9AB3453698BF5DE29E727AA9-->  <STARTVERSION><![CDATA[3.0.27515]]></STARTVERSION>
 <!--39BF75AD9AB3453698BF5DE29E727AA9-->  <ISINCLUDED><![CDATA[N]]></ISINCLUDED>
 <!--39BF75AD9AB3453698BF5DE29E727AA9-->  <DEPENDANT_MODULE_NAME><![CDATA[core]]></DEPENDANT_MODULE_NAME>
 <!--39BF75AD9AB3453698BF5DE29E727AA9-->  <DEPENDENCY_ENFORCEMENT><![CDATA[MAJOR]]></DEPENDENCY_ENFORCEMENT>
--- a/modules/org.openbravo.userinterface.skin.250to300Comp/src-util/modulescript/src/org/openbravo/userinterface/skin/s250to300Comp/modulescript/DefaultSkin.java	Wed Aug 26 23:27:42 2015 +0200
+++ b/modules/org.openbravo.userinterface.skin.250to300Comp/src-util/modulescript/src/org/openbravo/userinterface/skin/s250to300Comp/modulescript/DefaultSkin.java	Fri Sep 04 09:30:06 2015 +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) 2011 Openbravo SLU
+ * All portions are Copyright (C) 2011-2015 Openbravo SLU
  * All Rights Reserved.
  * Contributor(s):  ______________________________________.
  *************************************************************************
@@ -22,6 +22,8 @@
 
 import org.openbravo.database.ConnectionProvider;
 import org.openbravo.modulescript.ModuleScript;
+import org.openbravo.modulescript.ModuleScriptExecutionLimits;
+import org.openbravo.modulescript.OpenbravoVersion;
 
 public class DefaultSkin extends ModuleScript {
 
@@ -32,15 +34,18 @@
 
       // Change skin to this one in case of installing (not updating) and the
       // used skin is 'Default' one.
-
-      if (!DefaultSkinData.isUpdating(cp)) {
-        String currentSkin = DefaultSkinData.selectCurrentSkin(cp);
-        if ("Default".equals(currentSkin)) {
-          DefaultSkinData.setSkin(cp, "org.openbravo.userinterface.skin.250to300Comp/250to300Comp");
-        }
+      String currentSkin = DefaultSkinData.selectCurrentSkin(cp);
+      if ("Default".equals(currentSkin)) {
+        DefaultSkinData.setSkin(cp, "org.openbravo.userinterface.skin.250to300Comp/250to300Comp");
       }
     } catch (Exception e) {
       handleError(e);
     }
   }
+  
+  @Override
+  protected ModuleScriptExecutionLimits getModuleScriptExecutionLimits() {
+    return new ModuleScriptExecutionLimits("96998CBC42744B3DBEE28AC8095C9335", null, 
+        new OpenbravoVersion(0,0,0));
+  }
 }
--- a/modules/org.openbravo.userinterface.skin.250to300Comp/src-util/modulescript/src/org/openbravo/userinterface/skin/s250to300Comp/modulescript/DefaultSkin_data.xsql	Wed Aug 26 23:27:42 2015 +0200
+++ b/modules/org.openbravo.userinterface.skin.250to300Comp/src-util/modulescript/src/org/openbravo/userinterface/skin/s250to300Comp/modulescript/DefaultSkin_data.xsql	Fri Sep 04 09:30:06 2015 +0200
@@ -12,23 +12,13 @@
  * under the License.
  * The Original Code is Openbravo ERP.
  * The Initial Developer of the Original Code is Openbravo SLU
- * All portions are Copyright (C) 2011 Openbravo SLU
+ * All portions are Copyright (C) 2011-2015 Openbravo SLU
  * All Rights Reserved.
  * Contributor(s):  ______________________________________.
  *************************************************************************
 -->
 <SqlClass name="DefaultSkinData" package="org.openbravo.userinterface.skin.s250to300Comp.modulescript">
-   <SqlMethod name="isUpdating" type="preparedStatement" return="boolean">
-    <Sql>
-      <![CDATA[
-      select count(*) as t
-        from ad_module_dependency
-       where ad_module_id = '96998CBC42744B3DBEE28AC8095C9335'
-      ]]>
-    </Sql>
-  </SqlMethod>
-  
-  <SqlMethod name="selectCurrentSkin" type="preparedStatement" return="string">
+   <SqlMethod name="selectCurrentSkin" type="preparedStatement" return="string">
     <Sql><![CDATA[
        SELECT tad_theme as t
        FROM AD_system
--- a/modules/org.openbravo.userinterface.skin.250to300Comp/src-util/modulescript/src/src/org/openbravo/userinterface/skin/s250to300Comp/modulescript/DefaultSkinData.java	Wed Aug 26 23:27:42 2015 +0200
+++ b/modules/org.openbravo.userinterface.skin.250to300Comp/src-util/modulescript/src/src/org/openbravo/userinterface/skin/s250to300Comp/modulescript/DefaultSkinData.java	Fri Sep 04 09:30:06 2015 +0200
@@ -29,41 +29,6 @@
    }
  }
 
-  public static boolean isUpdating(ConnectionProvider connectionProvider)    throws ServletException {
-    String strSql = "";
-    strSql = strSql + 
-      "      select count(*) as t" +
-      "        from ad_module_dependency" +
-      "       where ad_module_id = '96998CBC42744B3DBEE28AC8095C9335'";
-
-    ResultSet result;
-    boolean boolReturn = false;
-    PreparedStatement st = null;
-
-    try {
-    st = connectionProvider.getPreparedStatement(strSql);
-
-      result = st.executeQuery();
-      if(result.next()) {
-        boolReturn = !UtilSql.getValue(result, "t").equals("0");
-      }
-      result.close();
-    } catch(SQLException e){
-      log4j.error("SQL error in query: " + strSql + "Exception:"+ e);
-      throw new ServletException("@CODE=" + Integer.toString(e.getErrorCode()) + "@" + e.getMessage());
-    } catch(Exception ex){
-      log4j.error("Exception in query: " + strSql + "Exception:"+ ex);
-      throw new ServletException("@CODE=@" + ex.getMessage());
-    } finally {
-      try {
-        connectionProvider.releasePreparedStatement(st);
-      } catch(Exception ignore){
-        ignore.printStackTrace();
-      }
-    }
-    return(boolReturn);
-  }
-
   public static String selectCurrentSkin(ConnectionProvider connectionProvider)    throws ServletException {
     String strSql = "";
     strSql = strSql + 
--- a/modules/org.openbravo.userinterface.smartclient/src-db/database/sourcedata/AD_MODULE.xml	Wed Aug 26 23:27:42 2015 +0200
+++ b/modules/org.openbravo.userinterface.smartclient/src-db/database/sourcedata/AD_MODULE.xml	Fri Sep 04 09:30:06 2015 +0200
@@ -6,7 +6,7 @@
 <!--EC356CEE3D46416CA1EBEEB9AB82EDB9-->  <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
 <!--EC356CEE3D46416CA1EBEEB9AB82EDB9-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--EC356CEE3D46416CA1EBEEB9AB82EDB9-->  <NAME><![CDATA[Smartclient]]></NAME>
-<!--EC356CEE3D46416CA1EBEEB9AB82EDB9-->  <VERSION><![CDATA[8.1.27413]]></VERSION>
+<!--EC356CEE3D46416CA1EBEEB9AB82EDB9-->  <VERSION><![CDATA[8.1.27515]]></VERSION>
 <!--EC356CEE3D46416CA1EBEEB9AB82EDB9-->  <DESCRIPTION><![CDATA[SmartClient libraries for use within Openbravo]]></DESCRIPTION>
 <!--EC356CEE3D46416CA1EBEEB9AB82EDB9-->  <HELP><![CDATA[This module contains the SmartClient libraries for usage by other modules. It also contains some simple test pages to validate that SmartClient is working correctly. Also contains generic Openbravo SmartClient components]]></HELP>
 <!--EC356CEE3D46416CA1EBEEB9AB82EDB9-->  <URL><![CDATA[http://forge.openbravo.com/projects/obsmartclient]]></URL>
--- a/modules/org.openbravo.userinterface.smartclient/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml	Wed Aug 26 23:27:42 2015 +0200
+++ b/modules/org.openbravo.userinterface.smartclient/src-db/database/sourcedata/AD_MODULE_DEPENDENCY.xml	Fri Sep 04 09:30:06 2015 +0200
@@ -7,7 +7,7 @@
 <!--086331E18477496B8AC74D2CFEBD1307-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--086331E18477496B8AC74D2CFEBD1307-->  <AD_MODULE_ID><![CDATA[EC356CEE3D46416CA1EBEEB9AB82EDB9]]></AD_MODULE_ID>
 <!--086331E18477496B8AC74D2CFEBD1307-->  <AD_DEPENDENT_MODULE_ID><![CDATA[0]]></AD_DEPENDENT_MODULE_ID>
-<!--086331E18477496B8AC74D2CFEBD1307-->  <STARTVERSION><![CDATA[3.0.27413]]></STARTVERSION>
+<!--086331E18477496B8AC74D2CFEBD1307-->  <STARTVERSION><![CDATA[3.0.27515]]></STARTVERSION>
 <!--086331E18477496B8AC74D2CFEBD1307-->  <ISINCLUDED><![CDATA[N]]></ISINCLUDED>
 <!--086331E18477496B8AC74D2CFEBD1307-->  <DEPENDANT_MODULE_NAME><![CDATA[core]]></DEPENDANT_MODULE_NAME>
 <!--086331E18477496B8AC74D2CFEBD1307-->  <DEPENDENCY_ENFORCEMENT><![CDATA[MAJOR]]></DEPENDENCY_ENFORCEMENT>
@@ -21,7 +21,7 @@
 <!--DC5D4EF450244482BD2B458DAA496333-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--DC5D4EF450244482BD2B458DAA496333-->  <AD_MODULE_ID><![CDATA[EC356CEE3D46416CA1EBEEB9AB82EDB9]]></AD_MODULE_ID>
 <!--DC5D4EF450244482BD2B458DAA496333-->  <AD_DEPENDENT_MODULE_ID><![CDATA[4B828F4D03264080AA1D2057B13F613C]]></AD_DEPENDENT_MODULE_ID>
-<!--DC5D4EF450244482BD2B458DAA496333-->  <STARTVERSION><![CDATA[2.1.27413]]></STARTVERSION>
+<!--DC5D4EF450244482BD2B458DAA496333-->  <STARTVERSION><![CDATA[2.1.27515]]></STARTVERSION>
 <!--DC5D4EF450244482BD2B458DAA496333-->  <ISINCLUDED><![CDATA[N]]></ISINCLUDED>
 <!--DC5D4EF450244482BD2B458DAA496333-->  <DEPENDANT_MODULE_NAME><![CDATA[User Interface Client Kernel]]></DEPENDANT_MODULE_NAME>
 <!--DC5D4EF450244482BD2B458DAA496333-->  <DEPENDENCY_ENFORCEMENT><![CDATA[MAJOR]]></DEPENDENCY_ENFORCEMENT>
@@ -35,7 +35,7 @@
 <!--F2AF15C0AF5540E393D96BE506E20648-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--F2AF15C0AF5540E393D96BE506E20648-->  <AD_MODULE_ID><![CDATA[EC356CEE3D46416CA1EBEEB9AB82EDB9]]></AD_MODULE_ID>
 <!--F2AF15C0AF5540E393D96BE506E20648-->  <AD_DEPENDENT_MODULE_ID><![CDATA[C70732EA90A14EC0916078B85CC33D2D]]></AD_DEPENDENT_MODULE_ID>
-<!--F2AF15C0AF5540E393D96BE506E20648-->  <STARTVERSION><![CDATA[1.1.27413]]></STARTVERSION>
+<!--F2AF15C0AF5540E393D96BE506E20648-->  <STARTVERSION><![CDATA[1.1.27515]]></STARTVERSION>
 <!--F2AF15C0AF5540E393D96BE506E20648-->  <ISINCLUDED><![CDATA[N]]></ISINCLUDED>
 <!--F2AF15C0AF5540E393D96BE506E20648-->  <DEPENDANT_MODULE_NAME><![CDATA[JBoss Weld]]></DEPENDANT_MODULE_NAME>
 <!--F2AF15C0AF5540E393D96BE506E20648-->  <DEPENDENCY_ENFORCEMENT><![CDATA[MAJOR]]></DEPENDENCY_ENFORCEMENT>
--- a/modules/org.openbravo.userinterface.smartclient/web/org.openbravo.userinterface.smartclient/test/DataSource.js	Wed Aug 26 23:27:42 2015 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,68 +0,0 @@
-/*
- *************************************************************************
- * 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) 2009-2010 Openbravo SLU
- * All Rights Reserved.
- * Contributor(s):  ______________________________________.
- ************************************************************************
- */
-
-isc.DataSource.addClassMethods({
-
-  // locating dataSources
-  dataSourceBaseURL: "../../datasources/",
-
-  get: function (name, callback, context, schemaType) {
-    var ds = this.getDataSource(name, callback, context, schemaType);
-    if (!ds) {
-      this.logWarn("DS IS NOT SET");
-      this.loadSchema(name, callback, context);
-    }
-    return ds;
-  },
-
-  // loadSchema - attempt to load a remote dataSource schema from the server.
-  // This is supported as part of the SmartClient server functionality
-  loadSchema: function (name, callback, context) {
-    this.logWarn("CALLING SERVER '" + name + "' from " + this.dataSourceBaseURL + name);
-
-    isc.RPCManager.sendRequest({
-      evalResult: true,
-      useSimpleHttp: true,
-      httpMethod: "GET",
-      actionURL: this.dataSourceBaseURL + name,
-      callback: this._loadSchemaComplete,
-      clientContext: {
-        dataSource: name,
-        callback: callback,
-        context: context
-      }
-    });
-
-    return null;
-  },
-
-  _loadSchemaComplete: function (rpcResponse, data, rpcRequest) {
-    this.logWarn("LOAD SCHEMA COMPLETE");
-    var clientContext = rpcResponse.clientContext;
-    var name = clientContext.dataSource;
-    var callback = clientContext.callback;
-    var context = clientContext.context;
-    // Now that the dataSource is loaded, we can leverage the
-    // DataSource.getDataSource()
-    // method to make the callback.
-    if (callback) {
-      context.fireCallback(callback, "ds", [data], context);
-    }
-  }
-});
\ No newline at end of file
--- a/modules/org.openbravo.userinterface.smartclient/web/org.openbravo.userinterface.smartclient/test/Product_Edition.html	Wed Aug 26 23:27:42 2015 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,2634 +0,0 @@
-<HTML xmlns:="http://www.w3.org/1999/xhtml">
-<HEAD>
-<META http-equiv="Content-Type" content="text/html; charset=utf-8"></META>
-<TITLE>Product</TITLE>
-<LINK rel="shortcut icon" href="../../../../../web/images/favicon.ico" type="image/x-icon"></LINK>
-<LINK rel="stylesheet" type="text/css" href="../../../../../web/skins/Default/Openbravo_ERP.css" id="paramCSS"></LINK>
-<LINK rel="stylesheet" type="text/css" media="print" href="../../../../../web/skins/Default/Openbravo_ERP_print.css" id="paramCSS_print"></LINK>
-
-<SCRIPT language="JavaScript" type="text/javascript" id="paramDirectory">
-var baseDirectory = "../../../../../web/";
-</SCRIPT>
-<SCRIPT language="JavaScript" src="../../../../../web/js/messages.js" type="text/javascript"></SCRIPT>
-<SCRIPT language="JavaScript" type="text/javascript" id="paramLanguage">
-  defaultLang = "en_US";
-</SCRIPT>
-<SCRIPT language="JavaScript" type="text/javascript" id="confirmOnChanges">var confirmOnChanges = true;</SCRIPT>
-<SCRIPT language="JavaScript" src="../../../../../web/js/shortcuts.js" type="text/javascript"></SCRIPT>
-<SCRIPT language="JavaScript" src="../../../../../web/js/utils.js" type="text/javascript"></SCRIPT>
-<SCRIPT language="JavaScript" src="../../../../../web/js/windowKeyboard.js" type="text/javascript"></SCRIPT>
-<SCRIPT language="JavaScript" src="../../../../../web/js/appStatus.js" type="text/javascript"></SCRIPT>
-<SCRIPT language="JavaScript" src="../../../../../web/js/ajax.js" type="text/javascript"></SCRIPT>
-<SCRIPT language="JavaScript" src="../../../../../web/js/default/MessageBox.js" type="text/javascript"></SCRIPT>
-<script language="JavaScript" src="../../../../../web/js/searchs.js" type="text/javascript"></script>
-<script language="JavaScript" src="../../../../../web/js/calculator.js" type="text/javascript"></script>
-<script language="JavaScript" src="../../../../../web/js/default/DateTextBox.js" type="text/javascript"></script>
-<script language="JavaScript" src="../../../../../web/js/jscalendar/calendar.js" type="text/javascript"></script>
-<script language="JavaScript" src="../../../../../web/js/default/ValidationTextBox.js" type="text/javascript"></script>
-<script language="JavaScript" src="../../../../../web/js/jscalendar/lang/calendar-en.js" type="text/javascript"></script>
-
-<SCRIPT>var isomorphicDir="../web/org.openbravo.userinterface.smartclient/isomorphic/";</SCRIPT>
-<SCRIPT SRC="../../../../../web/org.openbravo.userinterface.smartclient/isomorphic/system/development/ISC_Core.js"></SCRIPT>
-<SCRIPT SRC="../../../../../web/org.openbravo.userinterface.smartclient/isomorphic/system/development/ISC_Foundation.js"></SCRIPT>
-<SCRIPT SRC="../../../../../web/org.openbravo.userinterface.smartclient/isomorphic/system/development/ISC_Containers.js"></SCRIPT>
-<SCRIPT SRC="../../../../../web/org.openbravo.userinterface.smartclient/isomorphic/system/development/ISC_Grids.js"></SCRIPT>
-<SCRIPT SRC="../../../../../web/org.openbravo.userinterface.smartclient/isomorphic/system/development/ISC_Forms.js"></SCRIPT>
-<SCRIPT SRC="../../../../../web/org.openbravo.userinterface.smartclient/isomorphic/system/development/ISC_DataBinding.js"></SCRIPT>
-<SCRIPT SRC="../../../../../web/org.openbravo.userinterface.smartclient/isomorphic/skins/Enterprise/load_skin.js"></SCRIPT>
-
-<SCRIPT language="JavaScript" type="text/javascript">
-function validate(action, form, value) {
-  var frm=document.frmMain;
-  var key = eval("document.frmMain." + frm.inpKeyName.value);
-  return validateClient(action, form, value);
-}
-</SCRIPT>
-<SCRIPT language="JavaScript" type="text/javascript" id="selectedColumn"></SCRIPT>
-<SCRIPT language="JavaScript" type="text/javascript">function debugSearch(key, text, keyField) {
-  return true;
-}
-
-function reloadComboReloads180(changedField) {
-  submitCommandForm(changedField, false, null, '../ad_callouts/ComboReloads' + document.frmMain.inpTabId.value + '.html', 'hiddenFrame', null, null, true);
-  return true;
-}
-
-function val