details: https://code.openbravo.com/erp/devel/main/rev/c8135ec9d174 changeset: 23991:c8135ec9d174 user: David Baz Fayos <david.baz <at> openbravo.com> date: Wed Jul 23 14:30:36 2014 +0200 summary: Fixed issue 27121: 'Saved views' now work ok in all cases
details: https://code.openbravo.com/erp/devel/main/rev/0010ef25013e changeset: 23992:0010ef25013e user: Shankar Balachandran <shankar.balachandran <at> openbravo.com> date: Thu Jul 24 16:34:46 2014 +0530 summary: Fixes issue 27175: Unexpected field in Search Product selector escape html in identifier field only if it is present in the selector grid. details: https://code.openbravo.com/erp/devel/main/rev/4d8cba8e936d changeset: 23993:4d8cba8e936d user: Eduardo Argal Guibert <eduardo.argal <at> openbravo.com> date: Wed Jul 23 11:38:46 2014 +0200 summary: Fixes bug 27155: Cannot return the credit to a customer details: https://code.openbravo.com/erp/devel/main/rev/ccbcc520b6ca changeset: 23994:ccbcc520b6ca user: Eduardo Argal Guibert <eduardo.argal <at> openbravo.com> date: Thu Jul 24 18:45:22 2014 +0200 summary: Fixes bug 27182: Wrong source payment selected when refunding details: https://code.openbravo.com/erp/devel/main/rev/740705ed48c4 changeset: 23995:740705ed48c4 user: Asier Lostalé <asier.lostale <at> openbravo.com> date: Wed Jul 23 09:46:04 2014 +0200 summary: fixed bug 27157: multi-requests in summary functions in saved view/grid config details: https://code.openbravo.com/erp/devel/main/rev/6210678c6914 changeset: 23996:6210678c6914 user: Inigo Sanchez <inigo.sanchez <at> openbravo.com> date: Wed Jul 02 13:09:12 2014 +0200 summary: fixed bug 26968: jUnit test cases are failing because execution order in JDK7 Problem is some of these test cases rely the order each test is executed (based on method name) which is not valid anymore. Solved the problem by forcing the required execution order. details: https://code.openbravo.com/erp/devel/main/rev/129f326267f0 changeset: 23997:129f326267f0 user: Inigo Sanchez <inigo.sanchez <at> openbravo.com> date: Mon Jul 21 08:40:58 2014 +0200 summary: related to bug 27107: fixed test cases in TableNameTest details: https://code.openbravo.com/erp/devel/main/rev/9809d2b50161 changeset: 23998:9809d2b50161 user: Inigo Sanchez <inigo.sanchez <at> openbravo.com> date: Mon Jul 21 09:35:59 2014 +0200 summary: related to bug 27107: fixed test cases in DBPrefixTest details: https://code.openbravo.com/erp/devel/main/rev/2723907e60c2 changeset: 23999:2723907e60c2 user: Inigo Sanchez <inigo.sanchez <at> openbravo.com> date: Mon Jul 21 12:35:34 2014 +0200 summary: related to bug 27107: fixed test cases in DynamicEntityTest and other. details: https://code.openbravo.com/erp/devel/main/rev/4e45c4ba0e44 changeset: 24000:4e45c4ba0e44 user: Inigo Sanchez <inigo.sanchez <at> openbravo.com> date: Mon Jul 21 14:15:37 2014 +0200 summary: related to bug 27107: fixed test cases in ReadByNameTest and other. details: https://code.openbravo.com/erp/devel/main/rev/f081d46f6db1 changeset: 24001:f081d46f6db1 user: Inigo Sanchez <inigo.sanchez <at> openbravo.com> date: Tue Jul 22 10:31:55 2014 +0200 summary: related to bug 27107: fixed test cases in PreferenceTest. details: https://code.openbravo.com/erp/devel/main/rev/e19ab87ec574 changeset: 24002:e19ab87ec574 user: Inigo Sanchez <inigo.sanchez <at> openbravo.com> date: Tue Jul 22 16:58:27 2014 +0200 summary: related to bug 27107: fixed test cases in DalTest. details: https://code.openbravo.com/erp/devel/main/rev/988ab2568ee5 changeset: 24003:988ab2568ee5 user: Asier Lostalé <asier.lostale <at> openbravo.com> date: Wed Jul 30 15:31:26 2014 +0200 summary: fixed bug 27233: incorrect combos if selected value is not in 1st page details: https://code.openbravo.com/erp/devel/main/rev/2ddb7343d69e changeset: 24004:2ddb7343d69e user: Asier Lostalé <asier.lostale <at> openbravo.com> date: Wed Jul 30 15:49:15 2014 +0200 summary: fixed bug 27236: Process Definition defaults are not calculated if role inherits access to process from window access setting windowId parameter in defaults request diffstat: modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/actionHandler/AddPaymentActionHandler.java | 10 +- modules/org.openbravo.client.application/web/org.openbravo.client.application/js/grid/ob-view-grid.js | 16 +- modules/org.openbravo.client.application/web/org.openbravo.client.application/js/main/ob-standard-view.js | 1 - modules/org.openbravo.client.application/web/org.openbravo.client.application/js/personalization/ob-manage-views.js | 71 +++---- modules/org.openbravo.client.application/web/org.openbravo.client.application/js/process/ob-parameter-window-view.js | 3 +- modules/org.openbravo.service.datasource/src/org/openbravo/service/datasource/ComboTableDatasourceService.java | 10 +- modules/org.openbravo.userinterface.selector/web/org.openbravo.userinterface.selector/js/ob-selector-item.js | 20 +- src-test/org/openbravo/test/dal/DalQueryTest.java | 46 +++- src-test/org/openbravo/test/dal/DalTest.java | 70 +++++- src-test/org/openbravo/test/dal/DynamicEntityTest.java | 25 ++- src-test/org/openbravo/test/dal/ReadByNameTest.java | 27 ++- src-test/org/openbravo/test/modularity/DBPrefixTest.java | 40 +++- src-test/org/openbravo/test/modularity/TableNameTest.java | 37 +++- src-test/org/openbravo/test/preference/PreferenceTest.java | 90 +++++++-- src-test/org/openbravo/test/security/EntityAccessTest.java | 31 ++- src-test/org/openbravo/test/webservice/WSUpdateTest.java | 38 +++- src-test/org/openbravo/test/xml/EntityXMLImportTestBusinessObject.java | 48 ++++- src-test/org/openbravo/test/xml/UniqueConstraintImportTest.java | 16 +- src/org/openbravo/erpCommon/utility/ComboTableData.java | 53 +++-- 19 files changed, 470 insertions(+), 182 deletions(-) diffs (truncated from 1922 to 300 lines): diff -r f0b7707ee44d -r 2ddb7343d69e modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/actionHandler/AddPaymentActionHandler.java --- a/modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/actionHandler/AddPaymentActionHandler.java Wed Jul 16 17:53:44 2014 +0200 +++ b/modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/actionHandler/AddPaymentActionHandler.java Wed Jul 30 15:49:15 2014 +0200 @@ -172,7 +172,7 @@ || strAction.equals("PPW")) { OBError message = processPayment(payment, strAction, strDifferenceAction, differenceAmount, - exchangeRate); + exchangeRate, jsonparams); JSONObject errorMessage = new JSONObject(); errorMessage.put("severity", message.getType().toLowerCase()); errorMessage.put("title", message.getTitle()); @@ -329,6 +329,7 @@ creditPayment.setDescription(truncateDescription); // Set Used Credit = Amount + Previous used credit introduced by the user creditPayment.setUsedCredit(usedCreditAmt.add(creditPayment.getUsedCredit())); + ; FIN_PaymentProcess.linkCreditPayment(payment, usedCreditAmt, creditPayment); OBDal.getInstance().save(creditPayment); } @@ -468,7 +469,7 @@ } private OBError processPayment(FIN_Payment payment, String strAction, String strDifferenceAction, - BigDecimal refundAmount, BigDecimal exchangeRate) throws Exception { + BigDecimal refundAmount, BigDecimal exchangeRate, JSONObject jsonparams) throws Exception { ConnectionProvider conn = new DalConnectionProvider(true); VariablesSecureApp vars = RequestContext.get().getVariablesSecureApp(); @@ -493,6 +494,11 @@ if (!"Error".equalsIgnoreCase(message.getType())) { message.setMessage(strNewPaymentMessage + " " + message.getMessage()); message.setType(message.getType().toLowerCase()); + } else { + conn = new DalConnectionProvider(true); + OBDal.getInstance().getSession().clear(); + payment = OBDal.getInstance().get(FIN_Payment.class, payment.getId()); + addCredit(payment, jsonparams); } if (!strDifferenceAction.equals("refund")) { return message; diff -r f0b7707ee44d -r 2ddb7343d69e modules/org.openbravo.client.application/web/org.openbravo.client.application/js/grid/ob-view-grid.js --- a/modules/org.openbravo.client.application/web/org.openbravo.client.application/js/grid/ob-view-grid.js Wed Jul 16 17:53:44 2014 +0200 +++ b/modules/org.openbravo.client.application/web/org.openbravo.client.application/js/grid/ob-view-grid.js Wed Jul 30 15:49:15 2014 +0200 @@ -994,7 +994,7 @@ }, setViewState: function (state, settingDefault) { - var localState, i, fld, hasSummaryFunction; + var localState, i, fld, hasSummaryFunction, hasDefaultSavedView; localState = this.evalViewState(state, 'viewState'); @@ -1007,6 +1007,10 @@ return; } + // by default, there are no summary functions + hasSummaryFunction = false; + this.setShowGridSummary(false); + if (this.getDataSource()) { // old versions stored selected records in grid view, this can cause // problems if record is not selected yet @@ -1024,9 +1028,7 @@ delete fld.summaryFunction; } } - this.setShowGridSummary(hasSummaryFunction); } - // remove focus as this results in blur behavior before the // (filter)editor is redrawn with new fields when // doing setviewstate @@ -1061,6 +1063,14 @@ this.Super('setViewState', ['(' + isc.Comm.serialize(localState, false) + ')']); + hasDefaultSavedView = this.view && this.view.standardWindow && this.view.standardWindow.checkIfDefaultSavedView(); + if (hasSummaryFunction && (!settingDefault || !hasDefaultSavedView)) { + // setting summary functions only once, if not causes several requests (see issue #27157) + // it is set when setting saved view, or setting defaults (grid configuration) if there is no saved view + this.recalculateGridSummary(); + this.setShowGridSummary(true); + } + // Focus on the first filterable item if (this.view.isActiveView()) { this.focusInFirstFilterEditor(); diff -r f0b7707ee44d -r 2ddb7343d69e modules/org.openbravo.client.application/web/org.openbravo.client.application/js/main/ob-standard-view.js --- a/modules/org.openbravo.client.application/web/org.openbravo.client.application/js/main/ob-standard-view.js Wed Jul 16 17:53:44 2014 +0200 +++ b/modules/org.openbravo.client.application/web/org.openbravo.client.application/js/main/ob-standard-view.js Wed Jul 30 15:49:15 2014 +0200 @@ -834,7 +834,6 @@ // the logic doesn't pass through the 'setAsActiveView' so the 'prepareFullChildView' should be done // on the tab selection instead. me.prepareFullChildView(childView, childTabDef); - childTabDef.pane.parentTabSet.doHandleClick(); }; childTabDef.pane.destroy = function () { diff -r f0b7707ee44d -r 2ddb7343d69e modules/org.openbravo.client.application/web/org.openbravo.client.application/js/personalization/ob-manage-views.js --- a/modules/org.openbravo.client.application/web/org.openbravo.client.application/js/personalization/ob-manage-views.js Wed Jul 16 17:53:44 2014 +0200 +++ b/modules/org.openbravo.client.application/web/org.openbravo.client.application/js/personalization/ob-manage-views.js Wed Jul 30 15:49:15 2014 +0200 @@ -98,7 +98,7 @@ // ** {{{OB.Personalization.applyViewDefinition}}} ** // Apply a selected view definition to a window OB.Personalization.applyViewDefinition = function (persId, viewDefinition, standardWindow) { - var i, view, viewTabDefinition, showTreeGrid, length = standardWindow.views.length, + var i, view, viewTabDefinition, showTreeGrid, selectedView, length = standardWindow.views.length, windowDefinition = viewDefinition.window; // delete the current form personalization @@ -107,47 +107,13 @@ standardWindow.selectedPersonalizationId = persId; - if (windowDefinition) { - if (windowDefinition.activeTabId) { - for (i = 0; i < length; i++) { - if (standardWindow.views[i].tabId === windowDefinition.activeTabId) { - view = standardWindow.views[i]; - break; - } - } - if (view) { - // force an active view - if (standardWindow.activeView === view) { - standardWindow.activeView = null; - } - view.setAsActiveView(true); - if (windowDefinition.parentTabSetState && view.parentTabSet) { - view.parentTabSet.setState(windowDefinition.parentTabSetState); - view.parentTabSet.setHeight(windowDefinition.parentTabSetHeight); - // in this case the visibility of the top part of the parent view has to be set - // as it can be hidden previously - // https://issues.openbravo.com/view.php?id=18951 - if (view.parentView && !view.parentView.members[0].isVisible() && isc.OBStandardView.STATE_BOTTOM_MAX !== windowDefinition.parentTabSetState) { - view.parentView.members[0].show(); - } - } else if (windowDefinition.childTabSetState && view.childTabSet) { - // in this case the visibility of the top part of the view has to be set - // as it can be hidden previously - // https://issues.openbravo.com/view.php?id=18951 - if (!view.members[0].isVisible() && isc.OBStandardView.STATE_BOTTOM_MAX !== windowDefinition.childTabSetState) { - view.members[0].show(); - } - view.childTabSet.setState(windowDefinition.childTabSetState); - view.childTabSet.setHeight(windowDefinition.childTabSetHeight); - } - } - } - } - // the viewdefinition contains both the global info (form, canDelete, personalizationid) // set the view state for each tab for (i = 0; i < length; i++) { view = standardWindow.views[i]; + if (!selectedView && windowDefinition && windowDefinition.activeTabId && standardWindow.views[i].tabId === windowDefinition.activeTabId) { + selectedView = view; + } viewTabDefinition = viewDefinition[view.tabId]; if (viewTabDefinition) { if (viewTabDefinition.viewMode === 'tree' && view.treeGrid) { @@ -167,6 +133,35 @@ } } } + + if (selectedView) { + if (windowDefinition.parentTabSetState && selectedView.parentTabSet) { + selectedView.parentTabSet.setState(windowDefinition.parentTabSetState); + selectedView.parentTabSet.setHeight(windowDefinition.parentTabSetHeight); + // in this case the visibility of the top part of the parent view has to be set + // as it can be hidden previously + // https://issues.openbravo.com/view.php?id=18951 + if (selectedView.parentView && !selectedView.parentView.members[0].isVisible() && isc.OBStandardView.STATE_BOTTOM_MAX !== windowDefinition.parentTabSetState) { + selectedView.parentView.members[0].show(); + } + } else if (windowDefinition.childTabSetState && selectedView.childTabSet) { + // in this case the visibility of the top part of the view has to be set + // as it can be hidden previously + // https://issues.openbravo.com/view.php?id=18951 + if (!selectedView.members[0].isVisible() && isc.OBStandardView.STATE_BOTTOM_MAX !== windowDefinition.childTabSetState) { + selectedView.members[0].show(); + } + selectedView.childTabSet.setState(windowDefinition.childTabSetState); + selectedView.childTabSet.setHeight(windowDefinition.childTabSetHeight); + } + + // force an active view + if (standardWindow.activeView === selectedView) { + standardWindow.activeView = null; + } + selectedView.setAsActiveView(true); + } + }; // ** {{{OB.Personalization.applyViewDefinitionToView}}} ** diff -r f0b7707ee44d -r 2ddb7343d69e modules/org.openbravo.client.application/web/org.openbravo.client.application/js/process/ob-parameter-window-view.js --- a/modules/org.openbravo.client.application/web/org.openbravo.client.application/js/process/ob-parameter-window-view.js Wed Jul 16 17:53:44 2014 +0200 +++ b/modules/org.openbravo.client.application/web/org.openbravo.client.application/js/process/ob-parameter-window-view.js Wed Jul 30 15:49:15 2014 +0200 @@ -281,7 +281,8 @@ this.Super('initWidget', arguments); params = { - processId: this.processId + processId: this.processId, + windowId: this.windowId }; if (this.sourceView) { diff -r f0b7707ee44d -r 2ddb7343d69e modules/org.openbravo.service.datasource/src/org/openbravo/service/datasource/ComboTableDatasourceService.java --- a/modules/org.openbravo.service.datasource/src/org/openbravo/service/datasource/ComboTableDatasourceService.java Wed Jul 16 17:53:44 2014 +0200 +++ b/modules/org.openbravo.service.datasource/src/org/openbravo/service/datasource/ComboTableDatasourceService.java Wed Jul 30 15:49:15 2014 +0200 @@ -160,8 +160,14 @@ if (!StringUtils.isEmpty(filterString)) { newParameters.put("FILTER_VALUE", filterString); } - fps = comboTableData.select(new DalConnectionProvider(false), newParameters, true, startRow, - endRow); + + boolean optionalFieldNonFirstPage = !column.isMandatory() && startRow > 0 + && StringUtils.isEmpty(filterString); + // non-mandatory fields add a blank record at the beginning of 1st page, this needs to be + // taken into account in subsequent pages + + fps = comboTableData.select(new DalConnectionProvider(false), newParameters, true, startRow + - (optionalFieldNonFirstPage ? 1 : 0), endRow - (optionalFieldNonFirstPage ? 1 : 0)); ArrayList<JSONObject> comboEntries = new ArrayList<JSONObject>(); // If column is mandatory we add an initial blank value in the first page if not filtered diff -r f0b7707ee44d -r 2ddb7343d69e modules/org.openbravo.userinterface.selector/web/org.openbravo.userinterface.selector/js/ob-selector-item.js --- a/modules/org.openbravo.userinterface.selector/web/org.openbravo.userinterface.selector/js/ob-selector-item.js Wed Jul 16 17:53:44 2014 +0200 +++ b/modules/org.openbravo.userinterface.selector/web/org.openbravo.userinterface.selector/js/ob-selector-item.js Wed Jul 30 15:49:15 2014 +0200 @@ -36,7 +36,7 @@ initWidget: function () { var selectorWindow = this, - okButton, cancelButton, operator, i, hasIdentifier; + okButton, cancelButton, operator, i; this.setFilterEditorProperties(this.selectorGridFields); @@ -61,18 +61,18 @@ operator = 'iStartsWith'; } - hasIdentifier = false; for (i = 0; i < this.selectorGridFields.length; i++) { this.selectorGridFields[i].canSort = (this.selectorGridFields[i].canSort === false ? false : true); - this.selectorGridFields[i].escapeHTML = (this.selectorGridFields[i].escapeHTML === false ? false : true); + if (this.selectorGridFields[i].name === OB.Constants.IDENTIFIER) { + this.selectorGridFields[i].escapeHTML = true; + } else { + this.selectorGridFields[i].escapeHTML = (this.selectorGridFields[i].escapeHTML === false ? false : true); + } if (this.selectorGridFields[i].disableFilter) { this.selectorGridFields[i].canFilter = false; } else { this.selectorGridFields[i].canFilter = true; } - if (this.selectorGridFields[i].name === OB.Constants.IDENTIFIER) { - hasIdentifier = true; - } // apply the proper operator for the filter of text fields if (isc.SimpleType.inheritsFrom(this.selectorGridFields[i].type, 'text')) { if (this.selectorGridFields[i].filterEditorProperties.operator) { @@ -86,12 +86,6 @@ } } if (!this.dataSource.fields || !this.dataSource.fields.length || this.dataSource.fields.length === 0) { - if (!hasIdentifier && this.selectorGridFields) { - this.selectorGridFields.push({ - name: OB.Constants.IDENTIFIER, - escapeHTML: true - }); - } this.dataSource.fields = this.selectorGridFields; this.dataSource.init(); } @@ -1163,4 +1157,4 @@ } this.Super('destroy', arguments); } -}); \ No newline at end of file +}); diff -r f0b7707ee44d -r 2ddb7343d69e src-test/org/openbravo/test/dal/DalQueryTest.java --- a/src-test/org/openbravo/test/dal/DalQueryTest.java Wed Jul 16 17:53:44 2014 +0200 +++ b/src-test/org/openbravo/test/dal/DalQueryTest.java Wed Jul 30 15:49:15 2014 +0200 @@ -11,7 +11,7 @@ * under the License. * The Original Code is Openbravo ERP. * The Initial Developer of the Original Code is Openbravo SLU - * All portions are Copyright (C) 2008, 2011 Openbravo SLU + * All portions are Copyright (C) 2008, 2014 Openbravo SLU * All Rights Reserved. * Contributor(s): * Martin Taal <[email protected]>, ------------------------------------------------------------------------------ Infragistics Professional Build stunning WinForms apps today! Reboot your WinForms applications with our WinForms controls. Build a bridge from your legacy apps to the future. http://pubads.g.doubleclick.net/gampad/clk?id=153845071&iu=/4140/ostg.clktrk _______________________________________________ Openbravo-commits mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/openbravo-commits
