Openbravo Issue Tracking System - Openbravo ERP
View Issue Details
0036739Openbravo ERPA. Platformpublic2017-08-28 14:552017-08-30 10:40
JONHM 
caristu 
highmajoralways
closedfixed 
5
 
3.0PR17Q2.33.0PR17Q2.3 
alostale
Core
Production - Confirmed Stable
2017-06-21
https://code.openbravo.com/erp/devel/pi/rev/bdca94625dbf67b7e9dbf54f7535f6f22b499b14 [^]
No
0036739: Error displaying in selector picklist a field based in a non-primitive derived property
An error is thrown when using a selector that is configured to display a field in the picklist which is based in a non-primitive derived property, i.e., a property resolved through property navigation which points to a reference.
- As System Administrator
1) Open window "Reference" and select 'Product (by Price and Warehouse)'
2) Switch to [Defined Selector] tab and then to [Defined Selector Field] subtab
3) Create a new record:
  Name: Product2
  Property: productPrice.product
  Show in picklist: YES

- As F&B International Group Admin
4) Open "Sales Order" window and create a new record from 'Alimentos y Supermercados, S.A' bussiness partner
5) Create a new line and open the 'Product' selector picklist

--> It shows the following error in the log:
ERROR org.openbravo.service.json.DefaultJsonDataService - java.lang.NullPointerException
    at org.openbravo.service.json.DataToJsonConverter.toJsonObject(DataToJsonConverter.java:219)
    at org.openbravo.service.json.DataToJsonConverter.toJsonObjects(DataToJsonConverter.java:144)
    at org.openbravo.service.json.DefaultJsonDataService.fetch(DefaultJsonDataService.java:301)
    at org.openbravo.service.datasource.DefaultDataSourceService.fetch(DefaultDataSourceService.java:85)
    at org.openbravo.service.datasource.DefaultDataSourceService.fetch(DefaultDataSourceService.java:78)
    at org.openbravo.service.datasource.DataSourceServlet.doFetch(DataSourceServlet.java:285)
    at org.openbravo.service.datasource.DataSourceServlet.doPost(DataSourceServlet.java:843)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:650)
        ...

No tags attached.
blocks defect 0036728 closed caristu Error displaying in selector picklist a field based in a non-primitive derived property 
Issue History
2017-08-29 13:12caristuTypedefect => backport
2017-08-29 13:12caristuTarget Version => 3.0PR17Q2.3
2017-08-29 13:50hgbotCheckin
2017-08-29 13:50hgbotNote Added: 0098701
2017-08-29 13:50hgbotStatusscheduled => resolved
2017-08-29 13:50hgbotResolutionopen => fixed
2017-08-29 13:50hgbotFixed in SCM revisionhttp://code.openbravo.com/erp/devel/pi/rev/2174cbb90a5a77d9ee8d3d0140a14bbda8093223 [^] => http://code.openbravo.com/erp/backports/3.0PR17Q2.3/rev/8fdd44373f60c6c6653caae025fb2d808224684f [^]
2017-08-29 13:50caristuReview Assigned To => alostale
2017-08-29 13:50caristuSummaryError displaying in selector picklist a field based a non-primitive derived property => Error displaying in selector picklist a field based in a non-primitive derived property
2017-08-29 13:51caristuRegression levelPackaging and release => Production - Confirmed Stable
2017-08-29 14:36caristuDescription Updatedbug_revision_view_page.php?rev_id=15745#r15745
2017-08-29 14:36caristuSteps to Reproduce Updatedbug_revision_view_page.php?rev_id=15747#r15747
2017-08-30 10:40alostaleNote Added: 0098726
2017-08-30 10:40alostaleStatusresolved => closed
2017-08-30 10:40alostaleFixed in Version => 3.0PR17Q2.3

Notes
(0098701)
hgbot   
2017-08-29 13:50   
Repository: erp/backports/3.0PR17Q2.3
Changeset: 8fdd44373f60c6c6653caae025fb2d808224684f
Author: Carlos Aristu <carlos.aristu <at> openbravo.com>
Date: Tue Aug 29 13:25:09 2017 +0200
URL: http://code.openbravo.com/erp/backports/3.0PR17Q2.3/rev/8fdd44373f60c6c6653caae025fb2d808224684f [^]

fixes bug 36739: Can't use fields based on some properties in selector picklist

With the fix for issue 0036268 the selector fields based on derived properties that are shown in the picklist are sent as 'extra properties' in order to calculate them properly.

The problem is that the fix was not complete when the derived properties were not primitive. In that case the DataToJsonConverter class was not calculating properly the referenced property.

Now that kind of properties are calculated properly.

---
M modules/org.openbravo.service.json/src/org/openbravo/service/json/DataToJsonConverter.java
---
(0098726)
alostale   
2017-08-30 10:40   
reviewed + tested