Board logo

标题: 字典或者交叉索引的索引值问题 [打印本页]

作者: lifetruth    时间: 2012-1-29 14:47     标题: 字典或者交叉索引的索引值问题

索引值不使用另一个索引,而是变量或者常量,则引用不到值。
是使用不当还是使用错误?
作者: lifetruth    时间: 2012-1-29 17:20

例如inx_day.@DAY_NAME{9}取值为空,索引值为9的项是存在的。
inx_day.@DAY_NAME{$DAY_T}能取到值,其中DAY_T是个分组索引。
作者: admin    时间: 2012-1-30 12:38

可能是由于数值类型,不一致造成的。inx_day.@DAY_NAME{9} 里的9,会自动转换成Integer实例,而$DAY_T,可能不是Integer实例,所以出现$DAY_T可以,9不可以的问题。

解决办法:
取得$DAY_T的类型,并使9转换成同类型实例。具体方法是,加一个文本对象,设公式,=($DAY_T).getClass()   取得 $DAY_T的类型,比如是 BigDecimal,那么,你也 需要把9改成这个类型的实例,如:
=inx_day.@DAY_NAME{new BigDecimal(9)}
作者: lifetruth    时间: 2012-1-30 14:32

确实是类型问题。已经处理掉,谢谢!
另有一个问题,创建数据集时如何定义各字段类型,因为我的sql语句相对复杂,很多字段都是统计,不是原始字段。
有些整数类型字段可以直接定义成int类型,而非缺省的BigDecimal。例如上面问题里的场景,索引项直接定义成整数类型。
帮助文档里没找到数据集创建时如何定义字段类型。




欢迎光临 杰表技术论坛 (http://jatools.com/) Powered by Discuz! 6.1.0