我们最近从coldfusion 7迁移到coldfusion 8.我们的一个报告flex应用程序获取cfc查询的返回结果,并在该ArrayCollection中添加一列。它适用于coldfusion 7,但现在,在coldfusion 8中,它将该列视为字符串而不是数字,这会导致负值上的NaN错误。它是数据库中的数字(12,2)NOT NULL。当我把它作为一个数字(var)投射时它适用于Flex,但我不想在我们所有的项目中都这样做...有没有人遇到过这个问题?
答案 0 :(得分:3)
我们实际上昨天也看到了这一点。 CF 7和CF 8是唯一的区别。这样做不起作用:
var num:Number = e.result.MYNUMBERFIELD as Number;
但这样做:
var num:Number = Number(e.result.MYNUMBERFIELD);
我不认为你的循环和制作csv是相关的。我认为这是一个纯粹的CF8问题。我会查看bugbase,看看我是否注意到这样的事情。我们还没有时间进一步研究它。我也对这两种演员方法之间的区别感兴趣。
更新2009-09-24:
在本地至少有一台机器上,ColdFusion 8.0.1的累积热修复3修复了这个问题。您可以在此处获取此修补程序:http://kb2.adobe.com/cps/511/cpsid_51180.html。该页面还包含有关安装此修补程序的说明。
请注意其他任何查看此问题的人:Adobe建议您仅在遇到该页面上列出的一个或多个问题时才将CHF3应用于ColdFusion 8.0.1。如果你在这个问题中遇到问题当然意味着你。