Project: 	
  | View Issue Details[ Jump to Notes ] | [ Issue History ] [ Print ] | |||||||
| ID | ||||||||
| 0019712 | ||||||||
| Type | Category | Severity | Reproducibility | Date Submitted | Last Update | |||
| defect | [Openbravo ERP] A. Platform | minor | always | 2012-02-09 16:05 | 2012-03-02 15:37 | |||
| Reporter | VictorVillar | View Status | public | |||||
| Assigned To | AugustoMauch | |||||||
| Priority | high | Resolution | fixed | Fixed in Version | ||||
| Status | closed | Fix in branch | Fixed in SCM revision | 26012ec9699f | ||||
| Projection | none | ETA | none | Target Version | ||||
| OS | Any | Database | Any | Java version | ||||
| OS Version | Database version | Ant version | ||||||
| Product Version | SCM revision | |||||||
| Merge Request Status | ||||||||
| Review Assigned To | ||||||||
| OBNetwork customer | No | |||||||
| Web browser | ||||||||
| Modules | Core | |||||||
| Support ticket | ||||||||
| Regression level | ||||||||
| Regression date | ||||||||
| Regression introduced in release | ||||||||
| Regression introduced by commit | ||||||||
| Triggers an Emergency Pack | No | |||||||
| Summary | 0019712: It should not generate a property name with a key words | |||||||
| Description | If the user creates a column, for instance name: Default, the system creates a property with this name, but is the same as a reserved word for Javascript. An error messages appear in log file, because one fields use a display logic with this property. This example has been discovered due to the Human Capital Management module.  | |||||||
| Steps To Reproduce | the Human capital management module has a column called: Default, and the DB name: Isdefault, in the table HCMC_Contact.  Then the 'Make default' field has a display logic defined: @Isdefault@='N', so it is using this property, and the property uses the same reserved name in javascript. we check the log file, and we can see this error: " 92295e8 2012-02-09 11:49:57,953 [http-8080-11] ERROR org.openbravo.client.kernel.ComponentGenerator - Error parsing component View >>>>>>> Issues found in javascript <<<<<<<<< Human Capital Management Common.View:261:408: Expected an identifier and instead saw 'default' (a reserved word). >> offending code: {id: '3AE00E40575F11DEA0C3E7AD063433B2', title: 'Make Default', obManualURL: '/org.openbravo.hcm.commonEmployeeManagerView/Contact3ADEB662575F11DEAF7CB722376EC9B9_Edition.html', command: 'BUTTONMakedefaultB9CF97C70EB84448B34A8316C997E96A', property: 'makeDefaultContact', processId: 'B9CF97C70EB84448B34A8316C997E96A', modal: false, displayIf: function(form, currentValues, context) { return (currentValues.default === false); }, autosave: true } ],"  | |||||||
| Tags | No tags attached. | |||||||
| Attached Files | ||||||||
		  Relationships		[ Relation Graph ] 
		[ Dependency Graph ] 
			 | 
|
  		Notes	 | 
|
| 
				(0044972) iperdomo (viewer) 2012-02-09 16:51  | 
	
		Perhaps we need to implement the expression generation using a getValue() function, instead of context.property. getValue(object, property) { return object[property]; } getValue(context, 'default') instead of context.default  | 
| 
				(0045147) hgbot (developer) 2012-02-15 13:31  | 
	
		Repository: erp/devel/pi Changeset: 26012ec9699fae395f9d12f8126973a5f90c505f Author: Augusto Mauch <augusto.mauch <at> openbravo.com> Date: Wed Feb 15 13:29:57 2012 +0100 URL: http://code.openbravo.com/erp/devel/pi/rev/26012ec9699fae395f9d12f8126973a5f90c505f [^] Fixes issue 19712: Square bracket notation used for displaylogic --- M modules/org.openbravo.client.application/src/org/openbravo/client/application/DynamicExpressionParser.java M modules/org.openbravo.client.application/web/org.openbravo.client.application/js/utilities/ob-utilities.js ---  | 
| 
				(0045150) AugustoMauch (administrator) 2012-02-15 13:39  | 
	
		Now, when creating the javascript code for the display logics, the square brackets notation will be used.  Before the fix, the displaylogic @IsCustomer@ === 'Y' was translated to currentValues.customer === true. Now, it is going to be translated to OB.Utilities.getValue(currentValues,'customer') === true. This prevents an error when using a reserved javascript word as a property name.  | 
| 
				(0045151) AugustoMauch (administrator) 2012-02-15 13:41  | 
	
		Test plan: - Check that displaylogics keep working. I think the fix is not risky. Dot and square bracket notations are equivalent, so if a.b works, a['b'] is going to work.  | 
| 
				(0045277) iperdomo (viewer) 2012-02-20 13:20  | 
	
		Tested on pi @ rev e5b1fd6ab7c6 - Using System Administrator role - Added a display logic to the Mapping tab of AD Implementation window @IsDefault@ = 'Y' - Check that the display logic works - Check that JSLint doesn't complain about language keywords  | 
| 
				(0045856) hudsonbot (viewer) 2012-03-02 15:37  | 
	
		A changeset related to this issue has been promoted main and to the Central Repository, after passing a series of tests. Promotion changeset: https://code.openbravo.com/erp/devel/main/rev/544d64e0c159 [^] Maturity status: Test  | 
  Issue History	 | 
|||
| Date Modified | Username | Field | Change | 
| 2012-02-09 16:05 | VictorVillar | New Issue | |
| 2012-02-09 16:05 | VictorVillar | Assigned To | => iperdomo | 
| 2012-02-09 16:05 | VictorVillar | Modules | => Core | 
| 2012-02-09 16:05 | VictorVillar | OBNetwork customer | => No | 
| 2012-02-09 16:06 | VictorVillar | Issue Monitored: networkb | |
| 2012-02-09 16:42 | iperdomo | Assigned To | iperdomo => AugustoMauch | 
| 2012-02-09 16:51 | iperdomo | Note Added: 0044972 | |
| 2012-02-15 13:31 | hgbot | Checkin | |
| 2012-02-15 13:31 | hgbot | Note Added: 0045147 | |
| 2012-02-15 13:31 | hgbot | Status | new => resolved | 
| 2012-02-15 13:31 | hgbot | Resolution | open => fixed | 
| 2012-02-15 13:31 | hgbot | Fixed in SCM revision | => http://code.openbravo.com/erp/devel/pi/rev/26012ec9699fae395f9d12f8126973a5f90c505f [^] | 
| 2012-02-15 13:39 | AugustoMauch | Note Added: 0045150 | |
| 2012-02-15 13:41 | AugustoMauch | Note Added: 0045151 | |
| 2012-02-20 13:20 | iperdomo | Note Added: 0045277 | |
| 2012-02-20 13:20 | iperdomo | Status | resolved => closed | 
| 2012-03-02 15:37 | hudsonbot | Checkin | |
| 2012-03-02 15:37 | hudsonbot | Note Added: 0045856 | |
| Copyright © 2000 - 2009 MantisBT Group |