Openbravo Issue Tracking System - Openbravo ERP
View Issue Details
0028379Openbravo ERPA. Platformpublic2014-12-10 16:212015-01-07 10:10
Production - Confirmed Stable
3.0MP29 [^]
0028379: Unexpected behavior after setting some fields from a process definition
Unexpected behavior after setting some fields from a process definition
1) Install the attached module which contains a process definition for the Goods Receipt window.
2) Go to the [Goods Receipt window]. Create a new record in the header. Go to the [Lines] tab and create a new record, leaving the "Storage Bin" field empty.
3) Click on the button that invokes the process definition (EM_Suptest_Process). A parameter window will appear to select a value that will be used to set the Storage Bin field for the line.
4) The process ends successfully and the value for the Storage Bin is displayed in grid view for the line and also is stored properly in the database.
5) Open the record in the [Lines tab] in form view. Notice that the UI detects changes in the record an now the Storage bin field appears empty.
6) This behavior is not happening with other type of fields, like Description.
No tags attached.
related to defect 0028382 acknowledged platform Clear value button for selectors is not working properly in grid view 
caused by feature request 00244033.0MP29 closed AugustoMauch When the grid calls the datasource, it should not retrieve the properties that are not shown in the grid. 
causes defect 00289853.0PR15Q1.2 closed AugustoMauch It is not possible to freeze a column 
? (8,004) 2014-12-10 16:28
Issue History
2014-12-10 16:21caristuNew Issue
2014-12-10 16:21caristuAssigned To => AugustoMauch
2014-12-10 16:21caristuModules => Core
2014-12-10 16:21caristuTriggers an Emergency Pack => No
2014-12-10 16:25caristuIssue Monitored: networkb
2014-12-10 16:28caristuSteps to Reproduce Updatedbug_revision_view_page.php?rev_id=7236#r7236
2014-12-10 16:28caristuFile Added:
2014-12-11 08:46alostaleRelationship addedrelated to 0028382
2014-12-11 08:47alostaleAssigned ToAugustoMauch => inigosanchez
2014-12-11 11:34alostaleAssigned Toinigosanchez => NaroaIriarte
2014-12-23 09:35NaroaIriarteAssigned ToNaroaIriarte => AugustoMauch
2014-12-24 11:03AugustoMauchRegression level => Production - Confirmed Stable
2014-12-24 11:03AugustoMauchRegression date => 2013-10-07
2014-12-24 11:03AugustoMauchRegression introduced in release => 3.0MP29
2014-12-24 11:03AugustoMauchRegression introduced by commit => [^]
2014-12-24 11:03AugustoMauchIssue Monitored: dbaz
2014-12-24 11:03AugustoMauchReview Assigned To => dbaz
2014-12-24 11:14hgbotCheckin
2014-12-24 11:14hgbotNote Added: 0072813
2014-12-24 11:14hgbotStatusnew => resolved
2014-12-24 11:14hgbotResolutionopen => fixed
2014-12-24 11:14hgbotFixed in SCM revision => [^]
2014-12-24 15:09dbazNote Added: 0072822
2014-12-24 15:09dbazStatusresolved => closed
2014-12-24 15:09dbazFixed in Version => 3.0PR15Q1
2014-12-30 23:28hudsonbotCheckin
2014-12-30 23:28hudsonbotNote Added: 0073266
2015-01-07 10:10alostaleRelationship addedcaused by 0024403
2015-02-19 10:34AugustoMauchRelationship addedcauses 0028985

2014-12-24 11:14   
Repository: erp/devel/pi
Changeset: 2cf47120feefbfbdb46ca2293391308230850860
Author: Augusto Mauch <augusto.mauch <at>>
Date: Wed Dec 24 11:11:43 2014 +0100
URL: [^]

Fixes issue 28379: Value from field is not lost after setting it with a process

This issue was caused from a bug in the OBViewGrid.processFICReturn function. There was some code that meant to save in the grid the value of fields that were not being shown in the grid, and that therefore were not returned by the datasource when the grid was loaded. The faulty condition to check if the value of the field was present in the grid was the following:

  if (field && !this.getRecord(rowNum)[]) {

This condition is not proper because it does not check if the field is visible in the grid or not. This condition will evaluate to true if the value of that field is null, even if the field is being shown in the grid. Due to this when the value of the Storage Bin field was erased, its new null value was stored in the list of edited values of the grid, and this value took precedence over the Storage Bin value picked in the process.

To fix this, the condition has been improved to check if the field is actually being shown in the grid.

M modules/org.openbravo.client.application/web/org.openbravo.client.application/js/grid/ob-view-grid.js
2014-12-24 15:09   
Reviewed @ changeset 25596 - 2cf47120feef
2014-12-30 23:28   
A changeset related to this issue has been promoted main and to the
Central Repository, after passing a series of tests.

Promotion changeset: [^]
Maturity status: Test