[ http://issues.apache.org/jira/browse/OFBIZ-430?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12461698 ]
Guido Amarilla commented on OFBIZ-430: -------------------------------------- Just to learn how to debug OFBiz I tried to find where this issue is originated. So I am posting what I found. Excuse me if I am not clear or if writing something very obvious. In ModelScreenAction$SetField.runAction(Map) line: 167 if (!this.fromField.isEmpty()) { newValue = this.fromField.get(context); Gets minimumOrderQuantity from context using current Locale. In case of Spanish a comma ( , ) is used as decimal separator symbol. This is an example Parameters section of context used for testing: ==>[parameters]:[currencyUomId=ARS, productId=R110_14_1, minimumOrderQuantity=10.0, partyId=10003, availableFromDate=2006-05-13 22:24:13.0,................ You can see that the decimal separator is a point ( . ) So newValue gets the string "10.0" later in ModelScreenAction$SetField.runAction(Map) line: 182 newValue = ObjectType.simpleTypeConvert(newValue, this.type, null, locale); newValue gets "100" because "10.0" is converted using the comma as decimal symbol and it is ignored. Then context is filled with these values: ============================== Start stack level 0 ==>[formStringRenderer]:[EMAIL PROTECTED] ==>[null]:[null-field] ==>[titleProperty]:PageTitleEditSupplierProduct ==>[tabButtonItem]:EditSupplierProduct ==>[labelTitleProperty]:ProductSuppliers ==>[defaultCurrencyUomId]:ARS ==>[productId]:R110_14_1 ==>[minimumOrderQuantity]:100.0 <<<<<<<<<<<<----- ERROR! ============================== End stack level 0 : My question is if we change this line from ModelScreenAction$SetField.runAction: Locale locale = UtilMisc.ensureLocale(context.get("locale")); to "en-US" Locale Could it break other services? Stack: Thread [http-0.0.0.0-8443-Processor3] (Suspended) ModelScreenAction$SetField.runAction(Map) line: 169 ModelScreenAction.runSubActions(List, Map) line: 113 ModelScreenWidget$Section.renderWidgetString(Writer, Map, ScreenStringRenderer) line: 235 ModelScreen.renderScreenString(Writer, Map, ScreenStringRenderer) line: 131 ScreenRenderer.render(String, String) line: 102 ScreenRenderer.render(String) line: 87 ScreenWidgetViewHandler.render(String, String, String, String, String, HttpServletRequest, HttpServletResponse) line: 75 RequestHandler.renderView(String, boolean, HttpServletRequest, HttpServletResponse) line: 602 RequestHandler.doRequest(HttpServletRequest, HttpServletResponse, String, GenericValue, GenericDelegator) line: 387 ControlServlet.doGet(HttpServletRequest, HttpServletResponse) line: 178 ControlServlet(HttpServlet).service(HttpServletRequest, HttpServletResponse) line: 595 ControlServlet(HttpServlet).service(ServletRequest, ServletResponse) line: 688 ApplicationFilterChain.internalDoFilter(ServletRequest, ServletResponse) line: 252 ApplicationFilterChain.doFilter(ServletRequest, ServletResponse) line: 173 ContextFilter.doFilter(ServletRequest, ServletResponse, FilterChain) line: 245 ApplicationFilterChain.internalDoFilter(ServletRequest, ServletResponse) line: 202 ApplicationFilterChain.doFilter(ServletRequest, ServletResponse) line: 173 StandardWrapperValve.invoke(Request, Response) line: 213 StandardContextValve.invoke(Request, Response) line: 178 StandardHostValve.invoke(Request, Response) line: 126 ErrorReportValve.invoke(Request, Response) line: 105 StandardEngineValve.invoke(Request, Response) line: 107 AccessLogValve.invoke(Request, Response) line: 541 CoyoteAdapter.service(Request, Response) line: 148 Http11Processor.process(InputStream, OutputStream) line: 869 Http11Protocol$JmxHttp11ConnectionHandler(Http11BaseProtocol$Http11ConnectionHandler).processConnection(TcpConnection, Object[]) line: 664 PoolTcpEndpoint.processSocket(Socket, TcpConnection, Object[]) line: 527 LeaderFollowerWorkerThread.runIt(Object[]) line: 80 ThreadPool$ControlRunnable.run() line: 684 ThreadWithAttributes(Thread).run() line: 595 context Map: ============================== Start stack level 0 ==>[bshInterpreter]:[EMAIL PROTECTED] ============================== End stack level 0 ============================== Start stack level 1 ==>[screens]:[EMAIL PROTECTED] ============================== End stack level 1 ============================== Start stack level 2 ==>[formStringRenderer]:[EMAIL PROTECTED] ==>[null]:[null-field] ==>[titleProperty]:PageTitleEditSupplierProduct ==>[tabButtonItem]:EditSupplierProduct ==>[labelTitleProperty]:ProductSuppliers ==>[defaultCurrencyUomId]:ARS ==>[productId]:R110_14_1 ==>[minimumOrderQuantity]:100.0 ==>[orderBy]:partyId ==>[product]:[GenericEntity:Product][amountUomTypeId,null()][autoCreateKeywords,null()][billOfMaterialLevel,0(java.lang.Long)][brandName,null()][chargeShipping,null()][comments,null()][createdByUserLogin,gamarilla(java.lang.String)][createdDate,2006-05-14 > Incorrect Product Supplier update and delete in some locales > ------------------------------------------------------------ > > Key: OFBIZ-430 > URL: http://issues.apache.org/jira/browse/OFBIZ-430 > Project: Apache OFBiz (The Open for Business Project) > Issue Type: Bug > Components: product > Affects Versions: SVN trunk > Reporter: Guido Amarilla > Assigned To: Jacopo Cappellato > Priority: Minor > > It is an issue with product suppliers. > When trying to modify a supplier product by clicking in the "Update" > button next to each row, it doesn´t get all the supplier´s product > information, and Minimum Order Quantity is being multiplied by 10. > * This happens in several languages, but not in english nor french. > Another problem is that it isn't possible to delete a row, in any of the > affected locales, giving the following error: > *In remove-value a value was not found with the specified valueAcsr: sprod, > not removing > This was confirmed by Jacopo Cappellato who says that it is related to the way > numbers are parsed according to the locale. -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira