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

View Issue DetailsJump to Notes ] Issue History ] Print ]
ID
0036399
TypeCategorySeverityReproducibilityDate SubmittedLast Update
backport[Openbravo ERP] 09. Financial managementminorN/A2017-07-04 08:332017-07-11 10:12
ReportercaristuView Statuspublic 
Assigned Tocollazoandy4 
PriorityhighResolutionfixedFixed in Version3.0PR17Q1.3
StatusclosedFix in branchFixed in SCM revision7e6814346805
ProjectionnoneETAnoneTarget Version3.0PR17Q1.3
OSAnyDatabaseAnyJava version
OS VersionDatabase versionAnt version
Product VersionSCM revision 
Review Assigned Toaferraz
Web browser
ModulesCore
Regression level
Regression date
Regression introduced in release
Regression introduced by commit
Triggers an Emergency PackNo
Summary

0036399: Avoid casting to Object when adding numeric results from a SimpleCallout

DescriptionAvoid casting to Object when adding numeric values from a SimpleCallout. Before the callout refactor project (see 0032366), to set the value of a quantity it was possible to do the following:

String strHasSecondaryUOM = SLOrderProductData.hasSecondaryUOM(this, strMProductID);
info.addResult("inphasseconduom", (Object) strHasSecondaryUOM);

With the previous API, this avoided to send the value of a String surrounded by quotes. Thus, the value was finally being interpreted as a numeric value.

With the changes introduced in the mentioned project the API is more compact and it is not necessary to surround the strings between quotes to specify a string value. Therefore such castings should not be done as the type of the values is managed internally with a JSONObject.

The callouts affected by this internal change are:

- src/org/openbravo/erpCommon/ad_callouts/SL_InOutLine_Product.java
- src/org/openbravo/erpCommon/ad_callouts/SL_Movement_Product.java
- src/org/openbravo/erpCommon/ad_callouts/SL_Inventory_Product.java
Steps To Reproduce- Login as System Admin Role
- Mark as displayed = Yes fields
  - Window: Goods Receipt/ Shipment, Tab: Lines, Fields: Order Quantity, Order Uom
  - Window: Goods Movement, Tab: Lines, Fields: Order Quantity, Order Uom
- Window: Physical Inventory, Tab: Lines, Fields: Order Quantity, Order Uom
- Logout
- Login as QA Testing Admin.
- Create a new Product "Test Product".
- Assign second UOM as Kilogram to "Test Product" in the UOM Tab
- Create a Goods Receipt
- Add a line and select the Test Product, enter Movement Quantity 1
- Realize that Order Uom and Order Quantity fields are not displayed.
- Save Record and Refresh (as Display Logic does not work)
- Realize that Order Uom and Order Quantity fields are displayed.

Note that the display logic is not working because of the fact that the display logic condition is expecting a numeric value. But a string is being sent:

info.addResult("inphasseconduom", (Object) strHasSecondaryUOM);
Proposed SolutionReplace the castings to Object in the mentioned callouts by sending the corresponding numeric value when it applies. For example

Instead of:

info.addResult("inphasseconduom", (Object) strHasSecondaryUOM);

Use:

info.addResult("inphasseconduom", Integer.parseInt(strHasSecondaryUOM));
TagsNo tags attached.
Attached Files

- Relationships Relation Graph ] Dependency Graph ]
blocks defect 0036392 closedcollazoandy4 Avoid casting to Object when adding numeric results from a SimpleCallout 

-  Notes
(0097978)
hgbot (developer)
2017-07-10 13:34

Repository: erp/backports/3.0PR17Q1.3
Changeset: 7e6814346805992e9c14c27507450ae09fc4b44f
Author: Armaignac <collazoandy4 <at> gmail.com>
Date: Mon Jul 10 12:49:45 2017 +0200
URL: http://code.openbravo.com/erp/backports/3.0PR17Q1.3/rev/7e6814346805992e9c14c27507450ae09fc4b44f [^]

Fixes issue 36399: Avoid casting when adding numeric results in SimpleCallout

The casting to Object was replace by a integer conversion, sending the
corresponding numeric value when it applies.

---
M src/org/openbravo/erpCommon/ad_callouts/SL_InOutLine_Product.java
M src/org/openbravo/erpCommon/ad_callouts/SL_Inventory_Product.java
M src/org/openbravo/erpCommon/ad_callouts/SL_Movement_Product.java
---
(0098003)
hgbot (developer)
2017-07-11 10:11

Repository: erp/backports/3.0PR17Q1.3
Changeset: 9766745887a24c04a29180e01c47613f8c4dcefb
Author: Armaignac <collazoandy4 <at> gmail.com>
Date: Mon Jul 10 15:08:05 2017 -0400
URL: http://code.openbravo.com/erp/backports/3.0PR17Q1.3/rev/9766745887a24c04a29180e01c47613f8c4dcefb [^]

Related to issue 36399: Hide secondUOM fields if product doesn't have secondUOM

When a product with a second UOM was selected the associated fields are shown,
but not hidden when the product is change and doesn't have a second UOM because
the has_second_uom var is not updated with the corresponding value according
to the product selection.

The value of has_second_uom var is updated according to the product selection
in the result for a correct use in display logic function.

---
M src/org/openbravo/erpCommon/ad_callouts/SL_InOutLine_Product.java
---
(0098005)
aferraz (developer)
2017-07-11 10:12

Code review + Testing OK

- Issue History
Date Modified Username Field Change
2017-07-04 12:15 aferraz Type defect => backport
2017-07-04 12:15 aferraz Target Version => 3.0PR17Q1.3
2017-07-10 13:34 hgbot Checkin
2017-07-10 13:34 hgbot Note Added: 0097978
2017-07-10 13:34 hgbot Status scheduled => resolved
2017-07-10 13:34 hgbot Resolution open => fixed
2017-07-10 13:34 hgbot Fixed in SCM revision => http://code.openbravo.com/erp/backports/3.0PR17Q1.3/rev/7e6814346805992e9c14c27507450ae09fc4b44f [^]
2017-07-11 10:11 hgbot Checkin
2017-07-11 10:11 hgbot Note Added: 0098003
2017-07-11 10:12 aferraz Review Assigned To => aferraz
2017-07-11 10:12 aferraz Note Added: 0098005
2017-07-11 10:12 aferraz Status resolved => closed
2017-07-11 10:12 aferraz Fixed in Version => 3.0PR17Q1.3


Copyright © 2000 - 2009 MantisBT Group
Powered by Mantis Bugtracker