[jboss-jira] [JBoss JIRA] Commented: (JBRULES-2597) Decision table only supports "." as decimal seperator
Lars R�ckemann (JIRA)
jira-events at lists.jboss.org
Wed Jul 28 09:18:33 EDT 2010
[ https://jira.jboss.org/browse/JBRULES-2597?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12541556#action_12541556 ]
Lars R�ckemann commented on JBRULES-2597:
-----------------------------------------
In the meantime I've created a workaround which is working pretty fine for me.
I added an additional Property "DecimalPointIsComma" to my localized excel sheet and modified class DefaultRuleSheetListener as follows:
In method nextDataCell() I changed the last else if block to check if the new property is set and change the cell value accordingly:
[ ... ]
} else if ( actionType.type == ActionType.CONDITION || actionType.type == ActionType.ACTION ) {
/**
* Lars Rueckemann: fix for localized excel version using "," as decimal seperator
* Please specify Property: "DecimalPointIsComma = true"
*/
if(RuleSheetParserUtil.isStringMeaningTrue((String)getProperties().get("DecimalPointIsComma")) &&
actionType.type == ActionType.ACTION) {
actionType.addCellValue( column, value.replace(',', '.'));
} else {
actionType.addCellValue( column, value );
}
}
[ ... ]
> Decision table only supports "." as decimal seperator
> -----------------------------------------------------
>
> Key: JBRULES-2597
> URL: https://jira.jboss.org/browse/JBRULES-2597
> Project: Drools
> Issue Type: Bug
> Security Level: Public(Everyone can see)
> Components: drools-decisiontables
> Affects Versions: 5.0.1.FINAL
> Environment: localized version of Excel with decimal seperator set to "," instead of "." (German locale settings)
> Windows XP Pro
> MsOffice 2007 - Spreadsheet saved in MsOffice 97 .xls format
> Reporter: Lars R�ckemann
> Assignee: Mark Proctor
> Attachments: TEST.xls
>
>
> In the german locale "," is used as decimal seperator.
> When using a "," in a localized spreadsheet drools does not parse this as a number but tries to read two arguments instead.
> Attached sheet has the following Rule Compilation error:
> The method set(String, Object) in the type RegelErgebnis is not applicable for the arguments (String, int, int)
> This error comes from coulumn G of the spreadsheet when trying to execute action: ergebnis.set(String, Object);
> This fails as $param is read as two int values instead of in Object.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
More information about the jboss-jira
mailing list