Anonymous | Login
Project:
RSS
  
News | My View | View Issues | Roadmap | Summary

View Issue DetailsJump to Notes ] Issue History ] Print ]
ID
0020397
TypeCategorySeverityReproducibilityDate SubmittedLast Update
defect[Openbravo ERP] A. Platformcriticalalways2012-05-03 03:252012-05-10 18:20
ReporterdbazView Statuspublic 
Assigned Todbaz 
PriorityimmediateResolutionfixedFixed in Version3.0MP12
StatusclosedFix in branchpiFixed in SCM revision612a3d1f8607
ProjectionnoneETAnoneTarget Version
OSAnyDatabaseAnyJava version
OS VersionDatabase versionAnt version
Product VersionSCM revision 
Review Assigned To
Web browser
ModulesCore
Regression level
Regression date
Regression introduced in release
Regression introduced by commit
Triggers an Emergency PackNo
Summary

0020397: API broken at test 2967

Descriptionhttp://builds.openbravo.com/job/int-api/2967/ [^]

The change is needed to upgrade to Smartclient 8.3d in order to let some particular grids run properly

---------------------------------

Needed changes in code:

Javascript handling the json: replace the "." by OB.Constants.FIELDSEPARATOR
example:
  name. + OB.Constants.IDENTIFIER;
turns into
  name + OB.Constants.FIELDSEPARATOR + OB.Constants.IDENTIFIER;

Java returning the json: replace the "." by DalUtil.FIELDSEPARATOR (import org.openbravo.dal.core.DalUtil)
example:
  key + "." + + JsonConstants.IDENTIFIER
turns into
  key + DalUtil.FIELDSEPARATOR + JsonConstants.IDENTIFIER

---------------------------------

Here is the discussion with Isomorphic about why change is needed:
http://forums.smartclient.com/showthread.php?p=84881#post84881 [^]

This particular API break, is due that from now on we use "$" instead of ".". This new separator is also set in the new FIELDSEPARATOR variables, so if you use them, the separator used at the end is transparent for the developer
Steps To Reproduce.
TagsNo tags attached.
Attached Files

- Relationships Relation Graph ] Dependency Graph ]
related to design defect 0020297 closeddbaz [SC Upgrade] name and searchkey empty in product selector popup 

-  Notes
(0048320)
iciordia (manager)
2012-05-03 12:54

Please let's do a in detail risk analysis before moving forward.

Thanks,

Ismael
(0048321)
iperdomo (developer)
2012-05-03 13:01

This change breaks Web POS. Check all occurrences of "._identifier".

$ ack '\._identifier' modules --js

modules/org.openbravo.userinterface.smartclient/web/org.openbravo.userinterface.smartclient/test/ob_widgets.js
203: ident = grid.getSelectedRecord()._identifier;

modules/org.openbravo.userinterface.smartclient/web/org.openbravo.userinterface.smartclient/test/ob_grid_widgets.js
207: ident = grid.getSelectedRecord()._identifier;

modules/org.openbravo.retail.posterminal/web/org.openbravo.retail.posterminal/js/model/order.js
232: productidentifier: p.get('product')._identifier,

modules/org.openbravo.retail.posterminal/web/org.openbravo.retail.posterminal/js/components/editline.js
139: me.editlinename.text(data.product._identifier);

modules/org.openbravo.retail.posterminal/web/org.openbravo.retail.posterminal/js/components/searchbps.js
45: filter._identifier = '%i' + OB.UTIL.escapeRegExp(me.bpname.val());

modules/org.openbravo.retail.posterminal/web/org.openbravo.retail.posterminal/js/components/terminal.js
27: name = this.terminal.get('terminal')._identifier;
28: clientname = this.terminal.get('terminal')['client._identifier'];
29: orgname = this.terminal.get('terminal')['organization._identifier'];
32: pricelistname = this.terminal.get('pricelist')._identifier;
33: currencyname = this.terminal.get('pricelist')['currency._identifier'];
36: locationname = this.terminal.get('location')._identifier;

modules/org.openbravo.retail.posterminal/web/org.openbravo.retail.posterminal/js/components/listproducts.js
45: model.get('product')._identifier
66: this.titleProd.text(category.get('category')._identifier);

modules/org.openbravo.retail.posterminal/web/org.openbravo.retail.posterminal/js/components/searchproducts.js
56: model.get('category')._identifier
74: filter.product._identifier = '%i' + OB.UTIL.escapeRegExp(me.productname.val());
106: model.get('product')._identifier

modules/org.openbravo.retail.posterminal/web/org.openbravo.retail.posterminal/js/components/listcategories.js
45: model.get('category')._identifier
(0048325)
iperdomo (developer)
2012-05-03 13:14

In the case of Web POS, we just need to change 3 lines, but is a potentially *major* API change in modules using the old notation.
(0048528)
shuehner (administrator)
2012-05-09 21:24

Accepted offline by ICI after doing risk analysis.
Only a few modules are affected and module owners will be contacted to help them adapt to the change.
(0048529)
hgbot (developer)
2012-05-09 21:27

Repository: erp/devel/api-checks
Changeset: 612a3d1f860735d066f51cc957f5962f00543bb7
Author: David Baz Fayos <david.baz <at> openbravo.com>
Date: Wed May 09 21:26:58 2012 +0200
URL: http://code.openbravo.com/erp/devel/api-checks/rev/612a3d1f860735d066f51cc957f5962f00543bb7 [^]

Fixed issue 20397: API Change. Modified DalUtil.FIELDSEPARATOR constant

---
M java/reference/java.japi.gz
---

- Issue History
Date Modified Username Field Change
2012-05-03 03:25 dbaz New Issue
2012-05-03 03:25 dbaz Assigned To => dbaz
2012-05-03 03:25 dbaz Modules => Core
2012-05-03 03:25 dbaz Relationship added related to 0020297
2012-05-03 03:32 dbaz Description Updated View Revisions
2012-05-03 03:32 dbaz Assigned To dbaz => iciordia
2012-05-03 12:54 iciordia Note Added: 0048320
2012-05-03 13:01 iperdomo Note Added: 0048321
2012-05-03 13:14 iperdomo Note Added: 0048325
2012-05-09 21:24 shuehner Note Added: 0048528
2012-05-09 21:24 shuehner Status new => scheduled
2012-05-09 21:24 shuehner Assigned To iciordia => dbaz
2012-05-09 21:24 shuehner fix_in_branch => pi
2012-05-09 21:27 hgbot Checkin
2012-05-09 21:27 hgbot Note Added: 0048529
2012-05-09 21:27 hgbot Status scheduled => resolved
2012-05-09 21:27 hgbot Resolution open => fixed
2012-05-09 21:27 hgbot Fixed in SCM revision => http://code.openbravo.com/erp/devel/api-checks/rev/612a3d1f860735d066f51cc957f5962f00543bb7 [^]
2012-05-10 18:20 dbaz Status resolved => closed
2012-05-10 18:20 dbaz Fixed in Version => 3.0MP12


Copyright © 2000 - 2009 MantisBT Group
Powered by Mantis Bugtracker